:root{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#182b30;background:#f5f5ef;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0;display:flex;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #d6ddd6;background:#fff;color:#243d40;border-radius:10px;padding:10px 16px}button:hover{background:#eaf0e7}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #80a76b;outline-offset:3px}input,textarea,select{background:#fff;border:1px solid #d6ddd6;border-radius:10px;padding:12px;color:inherit;min-width:0}textarea{resize:vertical}aside{width:240px;background:#173b38;color:#f4f7ed;padding:40px 24px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{color:inherit;text-decoration:none;letter-spacing:-1.8px;font-size:30px;font-weight:750}.brand span{font-weight:350}.brand i{display:inline-block;width:7px;height:7px;background:#cde5a3;border-radius:50%;margin-left:5px}.caption{font-size:10px;letter-spacing:2px;color:#b4c7ba;margin:6px 0 48px}nav{display:grid;gap:10px}.nav{border:0;background:transparent;color:#c5d6cd;text-align:left;display:flex;gap:14px;padding:14px 12px}.nav.active,.nav:hover{background:#2b5048;color:#e5f2d2}.aside-bottom{margin-top:auto;font-size:13px;color:#d1dfd3}.aside-bottom p{font-size:12px;color:#a5bcb0}.dot{display:inline-block;width:7px;height:7px;background:#cde5a3;border-radius:50%;margin-right:6px}main{margin-left:240px;padding:38px 48px;width:calc(100% - 240px);max-width:1500px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:#657f73;margin:0 0 10px}h1{font-size:32px;letter-spacing:-1px;margin:0;font-weight:550}h2{font-size:22px;letter-spacing:-.5px;font-weight:550;margin:12px 0}p{color:#64756e}.badge{font-size:12px;border:1px solid #ccd8c6;border-radius:99px;padding:6px 12px;white-space:nowrap}.chat-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-top p{font-size:14px}.subtle{background:none;border:0;font-size:12px}.primary{background:#254e43;color:#fff;border-color:#254e43}.primary:hover{background:#356957}.welcome{text-align:center;padding:50px 10px}.spark{font-size:40px;color:#507155}.welcome h2{font-size:30px}.suggestions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:28px 0}.suggestions button{background:#fdfef9;font-size:13px}#messages{min-height:340px;max-height:55vh;overflow:auto;padding:10px 4px;scroll-behavior:smooth}.message{margin:16px 0;max-width:90%;white-space:pre-wrap;overflow-wrap:anywhere;padding:18px 20px;border-radius:16px;background:#fff;border:1px solid #e5e9df}.message.user{margin-left:auto;background:#e4ecd9;border:0}.message.receipt{background:#e5f0e6;font-size:13px}.message.notice{background:#fff0da}.message-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#627565;margin-bottom:8px}.copy{display:block;margin-top:12px;font-size:12px;padding:5px 10px}#chat-form{display:flex;align-items:flex-end;gap:10px;background:white;border:1px solid #d7dfd2;border-radius:16px;padding:12px;margin-top:16px}#prompt{flex:1;border:0;padding:8px;max-height:200px}.fine{font-size:11px;color:#6b7b70}#working{font-size:13px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}.toolbar form{display:flex;gap:8px;flex:1}.toolbar p{font-size:13px;margin:4px 0}.toolbar h2{margin:0}.toolbar label{font-size:12px}#days{width:75px;display:block}#search{width:100%;max-width:380px}.list{display:grid;gap:10px}.contact-row{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid #e0e5db;padding:20px;border-radius:12px;width:100%;text-align:left}.contact-row:hover{background:#f9fbf4}.contact-row h3{margin:0;font-size:16px;font-weight:600}.contact-row p{margin:4px 0;font-size:13px}.contact-row .status{font-size:12px;border-radius:6px;background:#eef1e8;padding:5px 9px;white-space:nowrap}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px;font-size:12px}.empty{padding:40px;text-align:center;color:#60776a}dialog{border:1px solid #d2dacb;border-radius:18px;padding:30px;width:min(510px,calc(100% - 32px));max-height:88vh;color:#203c34;background:#fafbf6;box-shadow:0 25px 100px #122c3433}dialog::backdrop{background:#0d282c80}dialog h2{padding-right:20px}dialog label{display:block;margin:15px 0 8px;font-size:13px}dialog input,dialog textarea{display:block;width:100%;margin-top:5px}.close{float:right;border:0;background:none;font-size:23px;padding:0 5px}.action-stack{display:grid;gap:10px}.action-stack label{margin:3px 0 -6px}dl{margin:20px 0;overflow-wrap:anywhere}dt{font-size:11px;color:#6b7b70;margin-top:14px}dd{margin:3px 0;font-size:14px;white-space:pre-wrap}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}#error{background:#ffe8d6;padding:12px;border-radius:8px;margin-bottom:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:800px){aside{width:76px;padding:25px 12px}.brand{font-size:20px;letter-spacing:-1px}.brand span,.brand i,.caption,.nav span,.aside-bottom{display:none}.nav{font-size:23px;justify-content:center;padding:12px 5px}nav{margin-top:35px}main{margin-left:76px;width:calc(100% - 76px);padding:25px 20px}h1{font-size:25px}header{align-items:flex-start}.chat-top{align-items:flex-start}#messages{min-height:300px}.badge{font-size:10px}.contact-row{padding:15px}.contact-row .status{white-space:normal}}@media(max-width:480px){main{padding:20px 12px}.chat-top{display:block}.badge{display:none}h1{font-size:23px}.welcome{padding:25px 0}.welcome h2{font-size:25px}#chat-form{gap:4px;padding:7px}#send{padding:10px}#prompt{width:100px}.contact-row{align-items:flex-start}.toolbar form{flex-basis:100%}.pagination{gap:8px}.pagination button{padding:8px}.message{max-width:100%}}

.history-entry{border-top:1px solid #d6ddd6;padding:14px 0}.history-entry h4{margin:0;font-size:14px}.history-text{white-space:pre-wrap;overflow-wrap:anywhere;color:#243d40}.history-entry button{font-size:12px}#entry-type{width:100%}

#op-filter{display:block;max-width:220px}#op-stage{width:100%}#op-form-error{color:#9c3921}#op-ask{margin-top:12px}

.agenda-row{padding:20px;border:1px solid #e0e5db;border-radius:12px;background:#fff;display:flex;gap:18px;align-items:center;justify-content:space-between}.agenda-row h3{font-size:16px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.agenda-row p{font-size:13px;margin:6px 0}.agenda-actions{display:flex;gap:8px;flex-wrap:wrap}.agenda-actions button{font-size:12px}#agenda-view{display:block}#op-task,#op-agenda{margin-top:10px}#task-error{color:#9c3921}@media(max-width:800px){.agenda-row{display:block}.agenda-actions{margin-top:12px}}

#csv-dialog{width:min(760px,calc(100% - 32px))}.csv-row{border-top:1px solid #d6ddd6;padding:12px 0}.csv-row label{display:flex;gap:10px;align-items:flex-start}.csv-row input[type=checkbox]{width:auto;margin-top:5px}.csv-row p{font-size:13px;margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.csv-row-error,#csv-error{color:#a32c20}.csv-warning{color:#77531f}#csv-import{margin-top:16px}#csv-file{margin-bottom:12px}

/* Separación entre etiquetas, controles y acciones. */
.toolbar label{display:flex;flex-direction:column;gap:8px;min-width:0}
.toolbar label input,.toolbar label select{margin-top:0}
.chat-top{flex-wrap:wrap;gap:12px 20px;margin-bottom:18px}
.chat-top p{flex:1 1 260px;margin:0}
#conversation-title-form{justify-content:flex-start;align-items:flex-end;gap:12px 16px;padding:18px 0 22px;margin-bottom:12px;border-bottom:1px solid #e0e5db}
#conversation-title-form label{flex:1 1 300px;max-width:520px;font-size:13px}
#conversation-title{width:100%}
#conversation-save-status{flex-basis:100%;font-size:12px;color:#64756e;overflow-wrap:anywhere}
dialog input,dialog textarea{margin-top:8px}
dialog label>select{display:block;width:100%;margin-top:8px}
.action-stack label{margin:6px 0 0}
#conversation-list{display:grid;gap:10px;margin-top:20px}
@media(max-width:600px){
 #conversation-title-form label{flex-basis:100%;max-width:none}
 .chat-top{display:flex;gap:10px 12px}
 .chat-top p{flex-basis:100%}
 #conversation-title-form{padding-top:12px}
}

/* Inicio: jerarquía clara y espacio entre bloques. */
.home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}
.home-stat{padding:20px;background:#eaf0e3;border:1px solid #dce5d5;border-radius:14px;display:flex;flex-direction:column;gap:12px}
.home-stat span{font-size:13px;color:#4d6657}.home-stat strong{font-size:32px;font-weight:550;line-height:1.2}
.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
.home-card{padding:24px;background:#fafbf6;border:1px solid #dfe5d8;border-radius:16px;min-width:0}
.home-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.home-card-heading h2{font-size:20px;margin:0}.home-card-heading button,.home-item button{font-size:12px}
.home-item{display:block;width:100%;padding:16px 0;border:0;border-top:1px solid #e0e5db;text-align:left;border-radius:0;background:transparent;overflow-wrap:anywhere}
.home-item h3{font-size:15px;font-weight:600;margin:0 0 8px}.home-item p{font-size:13px;margin:6px 0}.home-item button{margin-top:8px}
.home-link{padding:16px 10px}.home-hint,.home-empty{font-size:13px;margin:0 0 20px}.home-empty{padding:16px 0;color:#64756e}
#home-error{padding:16px;background:#fff0da;border-radius:12px}
@media(max-width:1100px){.home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.home-grid{grid-template-columns:1fr}}
@media(max-width:480px){.home-stats{gap:10px}.home-stat{padding:14px}.home-stat strong{font-size:26px}.home-card{padding:18px}.home-grid{gap:18px}}

.settings-form{max-width:760px;display:grid;gap:24px;padding:28px;background:#fafbf6;border:1px solid #dfe5d8;border-radius:16px}.settings-form label{display:flex;flex-direction:column;gap:10px;font-size:13px}.settings-form input,.settings-form textarea,.settings-form select{width:100%}.settings-form p{margin:0}.settings-actions{display:flex;flex-wrap:wrap;gap:12px}#settings-confirm-error{color:#a32c20}@media(max-width:480px){.settings-form{padding:18px;gap:20px}}

#draft-dialog{width:min(720px,calc(100% - 32px))}.draft-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.draft-row p{overflow-wrap:anywhere;white-space:pre-wrap}.draft-row>div{min-width:0}.history-entry button+button{margin-left:10px}#draft-message{font-size:13px}aside{overflow-y:auto}.aside-bottom{padding-top:24px}

#communication-dialog{width:min(660px,calc(100% - 32px))}#communication-error{color:#a32c20}#communication-form hr{margin:24px 0}#communication-more{margin-bottom:20px}
#account-bar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid #d6ddd6;font-size:13px}#access-error{color:#8b3424}#owner form{margin-bottom:28px}body:has(#access-form)>main{margin:0 auto;width:min(100%,960px)}
