@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f6f8f7;--panel:#fff;--ink:#192d2a;--muted:#758681;--line:#e3ebe7;--accent:#078b77;--accent-dark:#006f60;--soft:#e9f6f1;--sidebar:#102522;--warn:#cb8a1e;--danger:#cf5a52;--shadow:0 16px 48px rgba(21,57,47,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}.hidden{display:none!important}.shell{display:flex;min-height:100vh}.sidebar{width:252px;background:var(--sidebar);color:#e7f4ef;display:flex;flex-direction:column;padding:29px 17px 22px;position:sticky;top:0;height:100vh;flex-shrink:0}.brand{display:flex;gap:11px;align-items:center;padding:0 11px 43px;font-family:Manrope,sans-serif}.brand strong{display:block;font-size:15px;letter-spacing:-.04em}.brand span{font-size:11px;color:#81a69d}.brand-mark{width:44px;height:44px;border-radius:14px;background:#0e9f89;color:white;display:grid;place-items:center;font-size:30px;box-shadow:0 8px 20px #004b3f55}.brand-mark.small{width:35px;height:35px;font-size:24px;border-radius:11px}.sidebar-label,.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em}.sidebar-label{color:#658f83;margin:0 12px 16px}nav{display:grid;gap:5px}nav button{border:0;background:none;color:#9ebdb4;display:flex;gap:13px;align-items:center;text-align:left;padding:12px 14px;border-radius:9px;font-size:13px;font-weight:700}nav button span{font-size:18px;width:20px;text-align:center}nav button:hover,nav button.active{background:#205047;color:#fff}.sidebar-bottom{margin-top:auto}.sidebar-note{border:1px solid #315b50;border-radius:12px;padding:15px;font-size:12px;font-weight:700}.sidebar-note .sub{display:block;color:#85aa9f;font-size:11px;font-weight:400;line-height:1.5;margin:7px 0 0 17px}.pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:#4ce2ac;margin-right:8px;box-shadow:0 0 0 4px #4ce2ac22}.logout{border:0;color:#9bbab0;background:none;padding:17px 12px;font-size:12px}.main{flex:1;min-width:0}.topbar{height:112px;background:#fff;border-bottom:1px solid var(--line);padding:26px 42px;display:flex;justify-content:space-between;align-items:center}.eyebrow{color:var(--accent)}.topbar h1{font:800 25px Manrope,sans-serif;letter-spacing:-.05em;margin:8px 0 0}.top-actions{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:12px}.primary,.secondary,.danger-btn{border-radius:9px;border:1px solid transparent;padding:11px 16px;font-size:12px;font-weight:800;transition:.15s}.primary{color:#fff;background:var(--accent)}.primary:hover{background:var(--accent-dark)}.secondary{background:#fff;border-color:var(--line);color:var(--ink)}.secondary:hover{background:var(--bg)}.danger-btn{background:#fff3f1;color:var(--danger)}.content{padding:34px 42px 70px;max-width:1500px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:25px;gap:20px}.intro h2{font:800 23px Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 8px}.intro p{color:var(--muted);font-size:13px;margin:0}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:27px}.kpi,.panel,.account-card,.empty{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 10px #14372d05}.kpi{padding:21px 22px}.kpi-label{font-size:11px;font-weight:700;color:var(--muted)}.kpi-value{font:800 29px Manrope,sans-serif;letter-spacing:-.06em;margin:12px 0 3px}.kpi-foot{font-size:11px;color:var(--accent)}.kpi-icon{float:right;color:var(--accent);background:var(--soft);padding:8px;border-radius:9px}.section-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.panel{padding:23px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.panel-title h3{font:800 15px Manrope,sans-serif;margin:0}.text-link{color:var(--accent);border:0;background:none;font-weight:800;font-size:11px}.account-list,.recent-list{display:grid;gap:10px}.account-row,.recent-row{display:flex;align-items:center;gap:13px;padding:13px;border:1px solid var(--line);border-radius:10px}.avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--soft);color:var(--accent);font-weight:800}.account-row strong,.recent-row strong{display:block;font-size:12px}.account-row small,.recent-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.row-spacer{flex:1}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;background:#f6f0e4;color:var(--warn)}.badge.ok{background:#e6f7ed;color:#168257}.badge.neutral{background:#edf1f0;color:#72847e}.empty{padding:48px 25px;text-align:center;color:var(--muted)}.empty-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:var(--soft);color:var(--accent);font-size:27px;margin:0 auto 18px}.empty h3{color:var(--ink);font:800 16px Manrope,sans-serif}.empty p{font-size:12px;line-height:1.6}.accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:16px}.account-card{padding:20px}.account-card-head{display:flex;align-items:flex-start;gap:12px}.account-card h3{font:800 15px Manrope,sans-serif;margin:0 0 5px}.account-card p{color:var(--muted);font-size:11px;margin:0}.account-meta{display:grid;grid-template-columns:1fr 1fr;gap:13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin:19px 0}.account-meta span{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.account-meta strong{font-size:11px;overflow-wrap:anywhere}.card-actions{display:flex;gap:7px;flex-wrap:wrap}.card-actions button{font-size:11px;padding:8px 10px}.filter-bar{display:flex;gap:9px;margin-bottom:17px}.filter-bar select{min-width:230px}.filter-bar select,.search,input,select{border:1px solid #dbe6e1;background:#fff;color:var(--ink);border-radius:8px;padding:10px 12px;outline:none}.filter-bar select:focus,.search:focus,input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0898801d}.inbox{display:grid;grid-template-columns:330px 1fr;border:1px solid var(--line);border-radius:14px;background:#fff;min-height:550px;overflow:hidden}.inbox-list{border-right:1px solid var(--line)}.inbox-heading{padding:17px 19px;border-bottom:1px solid var(--line);font-size:12px;font-weight:800}.conv-item{width:100%;display:flex;gap:11px;text-align:left;border:0;border-bottom:1px solid var(--line);background:#fff;padding:15px}.conv-item:hover,.conv-item.active{background:#f0f8f5}.conv-item strong{font-size:12px}.conv-item small{display:block;color:var(--muted);margin:5px 0;font-size:10px}.conv-item p{font-size:11px;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}.chat{display:flex;flex-direction:column;min-width:0}.chat-header{padding:17px 21px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.chat-header strong{font-size:13px}.chat-header small{font-size:10px;color:var(--muted)}.messages{flex:1;padding:23px;display:flex;flex-direction:column;gap:13px;overflow:auto;max-height:510px;background:#fbfdfc}.bubble{max-width:75%;align-self:flex-start;background:white;border:1px solid var(--line);border-radius:13px 13px 13px 3px;padding:11px 13px;font-size:12px;line-height:1.5}.bubble.out{align-self:flex-end;background:#def4ea;border-color:#c9eadb;border-radius:13px 13px 3px 13px}.bubble time{display:block;color:var(--muted);font-size:9px;margin-top:5px}.composer{display:flex;gap:9px;padding:15px;border-top:1px solid var(--line)}.composer input{flex:1}.placeholder{display:grid;place-items:center;color:var(--muted);font-size:12px;min-height:300px}.modal-backdrop{position:fixed;inset:0;background:#071c18b8;display:grid;place-items:center;padding:20px;z-index:10}.modal{background:#fff;width:min(630px,100%);max-height:95vh;overflow:auto;border-radius:16px;padding:25px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.modal h2{font:800 19px Manrope,sans-serif;letter-spacing:-.04em;margin:6px 0 0}.icon-btn{font-size:25px;background:none;border:0;color:var(--muted)}form label{display:block;font-size:11px;font-weight:800;margin-bottom:15px}form input,form select{display:block;width:100%;margin-top:7px;font-size:12px;font-weight:500}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.hint{font-size:11px;color:var(--muted);line-height:1.5}.form-error{color:var(--danger);font-size:11px;min-height:13px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.login-screen{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 10% 10%,#1b5548,#102522 55%,#081c18);padding:20px}.login-card{width:min(400px,100%);background:white;border-radius:18px;padding:34px;box-shadow:var(--shadow)}.login-card h1{font:800 22px Manrope,sans-serif;letter-spacing:-.05em;margin:22px 0 7px}.login-card p{color:var(--muted);font-size:12px;line-height:1.6;margin-bottom:25px}.full{width:100%;margin:4px 0 12px}.toast{position:fixed;right:25px;bottom:25px;background:var(--sidebar);color:#fff;padding:13px 17px;border-radius:10px;font-size:12px;z-index:20}.setup{padding:16px;background:#eef7f3;border:1px solid #d7eae1;border-radius:10px;font-size:12px;line-height:1.8}.setup code{background:#fff;padding:2px 5px;border-radius:4px;overflow-wrap:anywhere}.muted{color:var(--muted)}@media(max-width:1000px){.kpis{grid-template-columns:repeat(2,1fr)}.section-grid{grid-template-columns:1fr}.sidebar{width:205px}.topbar{padding:23px}.content{padding:25px}}@media(max-width:700px){.shell{display:block}.sidebar{position:static;height:auto;width:100%;padding:14px}.brand{padding:0 0 10px}.sidebar-label,.sidebar-bottom{display:none}nav{display:flex;overflow:auto}nav button{white-space:nowrap;padding:9px}.topbar{height:auto;padding:20px;align-items:flex-start}.top-actions #clock{display:none}.content{padding:18px}.kpis{grid-template-columns:1fr 1fr;gap:9px}.kpi{padding:16px}.inbox{grid-template-columns:1fr}.inbox-list{max-height:260px;overflow:auto;border-right:0;border-bottom:1px solid var(--line)}.form-grid{grid-template-columns:1fr}.intro{align-items:flex-start}.top-actions .primary{font-size:10px}}
:root{color-scheme:light}textarea{font:inherit;width:100%;display:block;margin-top:7px;border:1px solid #dbe6e1;background:#fff;color:var(--ink);border-radius:8px;padding:10px 12px;outline:none;resize:vertical;font-size:12px;font-weight:500}textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0898801d}.check-label{display:flex;align-items:center;gap:8px}.check-label input{width:auto;margin:0}.mode-select{font-size:11px;padding:7px 8px;max-width:160px}.chat-header{gap:15px;align-items:center}.chat-heading{display:grid;gap:4px}.chat-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.chat-actions button{font-size:10px;padding:8px 9px}.error-strip{background:#fff2ef;color:#a74038;border:1px solid #f2d3cd;padding:9px 12px;font-size:11px}.agent-form{max-width:700px}.agent-form textarea{min-height:150px}.mcp-tools{display:grid;gap:7px;margin-top:15px}.mcp-tool{padding:10px;border:1px solid var(--line);border-radius:8px;font-size:11px}.mcp-tool strong{display:block;font-size:12px;margin-bottom:3px}.mcp-tool small{color:var(--muted)}.channel-chip{display:inline-block;padding:3px 7px;background:var(--soft);color:var(--accent-dark);border-radius:5px;font-size:9px;font-weight:800;margin-right:5px}.guide-steps{line-height:1.7;color:var(--muted);font-size:12px}.guide-steps li{margin-bottom:6px}.status-inline{font-size:10px;font-weight:800;color:var(--accent)}
.run-history{border-top:1px solid var(--line);padding:9px 20px;font-size:11px;color:var(--muted)}.run-history summary{cursor:pointer;font-weight:700;color:var(--ink)}.run-row{display:flex;gap:9px;flex-wrap:wrap;border-top:1px solid var(--line);padding:8px 0}.run-row:first-of-type{margin-top:8px}.run-row strong{color:var(--ink)}.run-row small{flex-basis:100%;overflow-wrap:anywhere}
.pause-strip{background:#fff8e8;border-bottom:1px solid #f1dfb3;color:#8a6215;padding:9px 20px;font-size:11px;font-weight:700}.composer-note{margin:0;padding:7px 16px 0;color:var(--muted);font-size:10px}.message-source{display:block;font-size:9px;font-weight:800;color:var(--accent-dark);margin-bottom:4px}.account-id{font-size:10px;color:var(--muted);margin:-8px 0 15px;overflow-wrap:anywhere}.account-id code{color:var(--ink)}.api-settings{max-width:800px;margin-top:17px}.api-settings p{font-size:12px;line-height:1.6}.api-settings code{overflow-wrap:anywhere}.api-key-result{margin-top:14px;background:#eef7f3;padding:12px;border-radius:8px;font:11px monospace;overflow-wrap:anywhere}
.setup-page{min-height:100vh;background:radial-gradient(circle at top left,#d8eee5,#f6f8f7 55%);padding:36px 18px;display:grid;place-items:center}.setup-card{background:white;width:min(690px,100%);padding:32px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.setup-card .brand-mark{margin-bottom:25px}.setup-card h1{font:800 25px Manrope,sans-serif;letter-spacing:-.04em;margin:9px 0}.setup-card>p{font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:20px}.setup-status{background:var(--soft);color:var(--accent-dark);border-radius:8px;padding:11px 13px;font-size:12px;font-weight:800;margin-bottom:22px}.setup-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.setup-back{display:inline-block;margin-top:22px;color:var(--accent);font-size:11px;font-weight:800}.setup-card .check-label{margin-top:9px}
.storage-link{display:inline-block;text-decoration:none;margin-top:4px}

.account-tools{border:1px solid var(--line);border-radius:10px;padding:14px;margin:5px 0 18px}.account-tools legend{font-size:12px;font-weight:700}.account-tools .check-label{display:flex;gap:8px;align-items:center}.account-tools input{width:auto;margin:0}

.account-agent-summary{margin:0 0 22px}

.account-agent-summary{overflow-wrap:anywhere;margin-bottom:12px}.account-id{margin-top:0}#provider-model-status,#account-model-status{margin-top:9px}

.configured-models{margin-bottom:28px}.configured-models h3,#provider-editor h3{margin:0 0 16px}.provider-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.provider-summary h4{margin:0;font-size:15px}.provider-summary .saved-model{overflow-wrap:anywhere;font-size:12px;line-height:1.6;flex:1}.provider-summary{display:flex;flex-direction:column;align-items:flex-start}.provider-summary button{margin-top:8px}.model-table-scroll{overflow-x:auto}.model-assignments table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.model-assignments th,.model-assignments td{padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top}.model-assignments td{overflow-wrap:anywhere;min-width:110px;max-width:320px}.model-assignments th{color:var(--muted);font-size:11px}.model-warning{display:block;color:#a74038;font-size:11px;margin-top:6px}#provider-editor{scroll-margin-top:24px}

/* Campañas */
nav .nav-link{color:#9ebdb4;display:flex;gap:13px;align-items:center;padding:12px 14px;border-radius:9px;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
nav .nav-link span{font-size:18px;width:20px;text-align:center}
nav .nav-link:hover,nav .nav-link:focus-visible{background:#205047;color:#fff}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.camp-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:start}
.camp-form select{width:100%;max-width:100%;box-sizing:border-box}
.camp-form textarea{min-height:90px}
.camp-channels{display:grid;gap:8px;margin:-4px 0 18px}
.camp-channel{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:12px}
.camp-channel small,.camp-card small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.camp-channel>div:last-child{text-align:right;max-width:55%}
.camp-channel.is-off{background:#fafbfa}
.camp-reason{overflow-wrap:anywhere}
.camp-file-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.camp-file-label{display:inline-block;margin:0;cursor:pointer;font-size:12px}
.camp-file-label:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.camp-counter{text-align:right;margin:-8px 0 8px}
.camp-preview{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}
.camp-preview h4{margin:0 0 12px;font-size:14px}
.camp-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
.camp-totals div{border:1px solid var(--line);border-radius:10px;padding:9px;text-align:center}
.camp-totals strong{display:block;font-size:20px;font-family:Manrope,sans-serif}
.camp-totals span{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase}
.camp-totals .is-good strong{color:#168257}.camp-totals .is-bad strong{color:var(--danger)}
.camp-preview details{border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin-bottom:8px;font-size:12px}
.camp-preview summary{cursor:pointer;font-weight:700}
.camp-items{list-style:none;margin:8px 0 0;padding:0;max-height:200px;overflow:auto}
.camp-items li{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-top:1px solid var(--line)}
.camp-items small{color:var(--muted);text-align:right}
.camp-confirm{background:#fff8e8;border:1px solid #f1dfb3;border-radius:10px;padding:12px 14px;margin-top:12px;font-size:12px;line-height:1.5}
.camp-confirm p{margin:0 0 8px}
.camp-card{border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:12px}
.camp-card.is-selected{border-color:var(--accent)}
.camp-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.camp-excerpt{font-size:12px;color:var(--muted);margin:10px 0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.camp-excerpt.full{display:block;color:var(--ink);white-space:pre-wrap}
.camp-progress{height:8px;border-radius:99px;background:#edf1f0;overflow:hidden;margin:10px 0}
.camp-progress span{display:block;height:100%;background:var(--accent);transition:width .3s}
.camp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.camp-chip{border-radius:99px;padding:3px 9px;font-size:10px;font-weight:800;background:#f6f0e4;color:var(--warn)}
.camp-chip.tone-ok{background:#e6f7ed;color:#168257}.camp-chip.tone-neutral{background:#edf1f0;color:#72847e}
.camp-detail{margin-top:22px}
.camp-actions{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 14px}
.camp-table-wrap{overflow:auto}
.camp-table{width:100%;border-collapse:collapse;font-size:12px}
.camp-table th{text-align:left;color:var(--muted);font-size:10px;text-transform:uppercase;padding:8px;border-bottom:1px solid var(--line)}
.camp-table td:first-child,.camp-table td:last-child{white-space:nowrap;overflow-wrap:normal}
.camp-table .text-link{white-space:nowrap}
.camp-table td{padding:8px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;vertical-align:top}
.camp-pager{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.camp-pager button:disabled,.camp-confirm button:disabled,.camp-preview button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1000px){.camp-layout{grid-template-columns:1fr}}
@media(max-width:700px){.camp-totals{grid-template-columns:repeat(2,1fr)}nav .nav-link{padding:9px}.camp-channel{flex-direction:column}.camp-channel>div:last-child{text-align:left;max-width:none}}
