:root{--bg:#07100d;--panel:#0d1713;--panel2:#111f19;--line:#1e3328;--text:#eafff2;--muted:#7e9689;--green:#4cff91;--green2:#24d875;--red:#ff6f79;--amber:#ffd578;--blue:#6db5ff;--shadow:0 20px 60px rgba(0,0,0,.28)}*{box-sizing:border-box}html,body{margin:0;background:radial-gradient(circle at 80% 0,rgba(76,255,145,.07),transparent 34%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:28px 20px;border-right:1px solid var(--line);background:rgba(5,13,10,.9);backdrop-filter:blur(16px);display:flex;flex-direction:column}.brand-lockup{display:flex;gap:12px;align-items:center;padding:0 8px 30px}.brand-lockup strong,.brand-lockup small{display:block}.brand-lockup strong{font-size:14px;letter-spacing:.09em}.brand-lockup small{margin-top:3px;color:var(--green);font:700 9px/1.2 ui-monospace,monospace;letter-spacing:.22em}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(76,255,145,.35);border-radius:14px;background:linear-gradient(145deg,rgba(76,255,145,.18),rgba(76,255,145,.04));color:var(--green);font-weight:900}.sidebar nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:12px;color:#8da298;text-decoration:none;font-size:13px}.nav-item.active{color:#eafff2;background:linear-gradient(90deg,rgba(76,255,145,.14),rgba(76,255,145,.03));box-shadow:inset 2px 0 var(--green)}.nav-item>span{color:var(--green)}.nav-item.disabled{opacity:.45}.nav-caption{margin:22px 12px 4px;color:#52665b;font:800 9px ui-monospace,monospace;letter-spacing:.16em}.protection-card{margin-top:auto;display:flex;gap:11px;align-items:center;padding:14px;border:1px solid rgba(76,255,145,.12);border-radius:14px;background:rgba(76,255,145,.045)}.protection-card strong,.protection-card small{display:block}.protection-card strong{font-size:12px}.protection-card small{margin-top:3px;color:var(--muted);font-size:10px}.shield-dot{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#052111;background:var(--green);font-weight:900}.workspace{min-width:0;padding:28px clamp(22px,4vw,58px) 60px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;max-width:1700px;margin:0 auto 24px}.eyebrow{margin:0 0 6px;color:var(--green);font:700 10px/1 ui-monospace,monospace;letter-spacing:.2em}.topbar h1{margin:0;font-size:clamp(28px,3vw,38px);letter-spacing:-.04em}.lead{margin:8px 0 0;color:var(--muted);font-size:13px}.topbar-actions{display:flex;gap:10px;align-items:center}.live-pill{display:flex;gap:8px;align-items:center;padding:9px 13px;border:1px solid var(--line);border-radius:999px;color:#b7c9c0;background:rgba(255,255,255,.025);font-size:11px}.live-pill>span{width:7px;height:7px;border-radius:50%;background:var(--amber)}.live-pill.connected>span{background:var(--green);box-shadow:0 0 0 4px rgba(76,255,145,.1),0 0 14px var(--green)}.live-pill.error>span{background:var(--red)}.ghost-btn,.btn,.mini{border:1px solid var(--line);background:#132119;color:var(--text);cursor:pointer}.ghost-btn{padding:9px 13px;border-radius:10px}.stats-grid{max-width:1700px;margin:0 auto 14px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.stats-grid article{padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,rgba(16,34,25,.92),rgba(9,20,15,.92));box-shadow:inset 0 1px rgba(255,255,255,.02)}.stats-grid small{display:block;color:var(--muted);font:800 9px ui-monospace,monospace;letter-spacing:.08em}.stats-grid strong{display:block;margin-top:8px;font-size:24px}.panel{border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(16,34,25,.9),rgba(9,20,15,.92));box-shadow:var(--shadow)}.toolbar-panel{max-width:1700px;margin:0 auto 14px;padding:13px;display:flex;justify-content:space-between;gap:12px;align-items:center}.toolbar-main,.toolbar-actions,.row-actions,.pagination,.modal-actions{display:flex;gap:8px;align-items:center}.search-box{display:flex;align-items:center;gap:9px;min-width:360px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:#0a1510}.search-box span{color:var(--green)}.search-box input{width:100%;padding:10px 0;border:0;outline:0;background:transparent;color:var(--text)}.input{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:#0a1510;color:var(--text);outline:0}.input.compact{width:auto;min-width:120px}.btn{padding:10px 13px;border-radius:10px;font-weight:750}.btn:hover,.mini:hover,.ghost-btn:hover{border-color:rgba(76,255,145,.45);background:#173123}.btn.subtle{color:#9db1a6;background:#0d1813}.btn.full{width:100%;margin-top:10px}.file-btn{position:relative;overflow:hidden}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.tmx-grid{max-width:1700px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:14px;align-items:start}.table-panel{min-width:0;overflow:hidden}.table-headbar{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 14px;border-bottom:1px solid var(--line)}.table-headbar strong,.table-headbar small{display:block}.table-headbar small{margin-top:3px;color:var(--muted);font-size:10px}.mini{padding:7px 9px;border-radius:8px;font-size:10px}.mini.danger{color:#ff9ba1;border-color:rgba(255,111,121,.25)}.table-wrap{overflow:auto;max-height:calc(100vh - 330px)}table{width:100%;border-collapse:collapse;min-width:1080px}th{position:sticky;top:0;z-index:2;padding:10px 11px;text-align:left;background:#101d17;color:#758a7f;font:800 9px ui-monospace,monospace;letter-spacing:.07em;border-bottom:1px solid var(--line)}td{padding:9px 11px;border-bottom:1px solid rgba(255,255,255,.045);font-size:12px;white-space:nowrap}tbody tr:hover{background:rgba(76,255,145,.035)}td.password{font-family:ui-monospace,monospace;color:#acc0b6}.status-badge,.service-chip{display:inline-flex;align-items:center;padding:4px 7px;border:1px solid var(--line);border-radius:999px;font-size:9px}.status-badge[data-state="ACTIVO"]{color:#9cc9ff;border-color:rgba(109,181,255,.28);background:rgba(109,181,255,.08)}.status-badge[data-state="PENDIENTE"]{color:#ffe29d;border-color:rgba(255,213,120,.28);background:rgba(255,213,120,.08)}.status-badge[data-state="DISPONIBLE"]{color:#ffbd7d;border-color:rgba(255,158,80,.28)}.status-badge[data-state="MALA C MAIL"]{color:#ff999f;border-color:rgba(255,111,121,.28)}.status-badge[data-state="NO E"]{color:#ffbd7d;border-color:rgba(255,158,80,.28)}.empty{text-align:center;color:var(--muted);padding:42px}.pagination{justify-content:flex-end;padding:11px 13px;border-top:1px solid var(--line)}.pagination span{color:var(--muted);font-size:10px}.side-actions{display:grid;gap:12px;position:sticky;top:20px}.action-card{padding:13px}.card-heading small,.card-heading strong{display:block}.card-heading small{color:var(--green);font:800 9px ui-monospace,monospace;letter-spacing:.12em}.card-heading strong{margin-top:4px;font-size:15px}.service-grid,.state-grid{display:grid;gap:7px;margin-top:12px}.service-grid label{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#0c1712;font-size:11px}.state-grid{grid-template-columns:1fr 1fr}.state-grid button{padding:8px;border:1px solid var(--line);border-radius:8px;background:#0c1712;color:var(--text);font-size:9px;cursor:pointer}.state-grid button:hover{border-color:rgba(76,255,145,.4)}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.67);backdrop-filter:blur(5px)}.modal-card{position:relative;width:min(620px,96vw);padding:22px;border:1px solid var(--line);border-radius:18px;background:#0b1711;box-shadow:0 30px 100px rgba(0,0,0,.5)}.modal-card.small{width:min(480px,96vw)}.modal-card h2{margin:4px 0 7px}.modal-card p{color:var(--muted);font-size:12px}.modal-card textarea{width:100%;min-height:230px;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:11px;background:#08120e;color:var(--text);resize:vertical}.modal-card .input{margin-top:9px}.modal-actions{justify-content:flex-end;margin-top:12px}.modal-x{position:absolute;right:14px;top:12px;border:0;background:transparent;color:#81968b;font-size:25px;cursor:pointer}.toast{position:fixed;right:20px;bottom:20px;z-index:80;max-width:420px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#102019;color:var(--text);box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.18s}.toast.show{opacity:1;transform:none}.toast.error{border-color:rgba(255,111,121,.38);color:#ffc1c5}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(390px,95vw);padding:28px;border:1px solid var(--line);border-radius:20px;background:#0c1812;box-shadow:var(--shadow)}.login-card h1{margin:6px 0 18px}.login-card .input{margin-bottom:9px}.login-error{margin-bottom:10px;padding:9px;border:1px solid rgba(255,111,121,.3);border-radius:9px;color:#ffc1c5;font-size:11px}@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(3,1fr)}.tmx-grid{grid-template-columns:1fr}.side-actions{position:static;grid-template-columns:repeat(3,1fr)}.table-wrap{max-height:60vh}}@media(max-width:800px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:14px 16px;flex-direction:row;align-items:center;gap:12px}.brand-lockup{padding:0}.brand-lockup span:last-child,.protection-card,.nav-caption,.nav-item.disabled{display:none}.sidebar nav{display:block}.nav-item{padding:9px 12px}.workspace{padding:20px 12px 35px}.topbar{align-items:flex-start}.stats-grid{grid-template-columns:repeat(2,1fr)}.toolbar-panel{align-items:stretch;flex-direction:column}.toolbar-main,.toolbar-actions{flex-wrap:wrap}.search-box{min-width:100%;width:100%}.side-actions{grid-template-columns:1fr}.table-wrap{max-height:58vh}.topbar-actions{flex-direction:column;align-items:flex-end}}

/* v1.1 - TMX interaction closer to desktop gestor */
.toolbar-panel{display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:wrap}
.primary-actions{flex:0 0 auto}
.toolbar-main{display:flex;align-items:center;gap:7px;flex:1 1 650px;min-width:480px}
.inline-label{white-space:nowrap;color:#c4d1ca;font-size:10px}
.search-input{min-width:190px;flex:1 1 260px}
.date-input{width:105px;min-width:105px}
.state-filter{width:130px;min-width:130px}
.toolbar-tail{display:flex;align-items:center;gap:8px;margin-left:auto}
.loading-label{font-size:10px;font-weight:800;color:#ffb347;white-space:nowrap}
.available-btn{padding:10px 12px;border:1px solid #ff9e50;border-radius:8px;background:#0b1510;color:#ff9e50;font-weight:900;font-size:10px;cursor:pointer;white-space:nowrap}
.available-btn:hover{background:rgba(255,158,80,.08)}
.clickable-stat{cursor:pointer}.clickable-stat:hover{border-color:rgba(255,158,80,.45)}
.service-grid button{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#0c1712;color:var(--text);text-align:left;font-weight:750;cursor:pointer}
.service-grid button:hover{background:#12251a;border-color:rgba(76,255,145,.35)}
.service-grid button.active{background:rgba(76,255,145,.13);border-color:rgba(76,255,145,.6);box-shadow:inset 2px 0 var(--green)}
.selected-row{background:rgba(76,255,145,.09)!important;box-shadow:inset 3px 0 var(--green)}
.record-row{cursor:pointer}
.dirigidos-cell{cursor:text;min-width:160px}
.dirigidos-editor{width:100%;min-width:150px;padding:5px 7px;border:1px solid rgba(76,255,145,.55);border-radius:6px;background:#08120e;color:var(--text);outline:none}
.helper-card{padding:13px}.helper-card small{color:var(--green);font:800 9px ui-monospace,monospace;letter-spacing:.12em}.helper-card p{margin:8px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
@media(max-width:1350px){.toolbar-main{order:3;flex-basis:100%;min-width:0}.toolbar-tail{margin-left:auto}}
@media(max-width:800px){.toolbar-main{min-width:0;display:grid;grid-template-columns:auto 1fr}.search-input{min-width:0}.toolbar-tail{width:100%;margin-left:0;justify-content:flex-end}.primary-actions{flex-wrap:wrap}.inline-label{font-size:9px}.date-input,.state-filter{width:100%;min-width:0}}

/* v1.2 - compact desktop-style TMX */
:root{--state-activo:#1B6DFF;--state-pendiente:#FFD700;--state-disponible:#FF8C00;--state-mala:#FF1E1E;--state-noe:#FF7A1A;--state-na:#9E9E9E;--state-bloqueados:#111111}
.app-shell{grid-template-columns:184px minmax(0,1fr)}
.sidebar{padding:18px 12px}.brand-lockup{padding:0 5px 18px;gap:9px}.brand-mark{width:34px;height:34px;border-radius:10px}.nav-item{padding:10px 10px}.protection-card{padding:10px}.protection-card small{display:none}
.workspace{padding:10px 12px 26px;max-width:none;width:100%}
.connection-row{height:30px;display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:7px}
.live-pill{padding:6px 10px;font-size:9px}.ghost-btn{padding:6px 10px;font-size:10px}
.stats-grid,.toolbar-panel,.tmx-grid{max-width:none;width:100%}
.stats-grid{margin:0 0 8px;gap:7px}.stats-grid article{padding:8px 11px;border-radius:10px;min-height:58px}.stats-grid small{font-size:8px}.stats-grid strong{margin-top:4px;font-size:21px}
.stats-grid article[data-state-card="ACTIVO"]{border-color:rgba(27,109,255,.50);box-shadow:inset 3px 0 var(--state-activo)}
.stats-grid article[data-state-card="ACTIVO"] strong{color:#79adff}
.stats-grid article[data-state-card="PENDIENTE"]{border-color:rgba(255,215,0,.40);box-shadow:inset 3px 0 var(--state-pendiente)}
.stats-grid article[data-state-card="PENDIENTE"] strong{color:var(--state-pendiente)}
.stats-grid article[data-state-card="DISPONIBLE"]{border-color:rgba(255,140,0,.46);box-shadow:inset 3px 0 var(--state-disponible)}
.stats-grid article[data-state-card="DISPONIBLE"] strong{color:var(--state-disponible)}
.stats-grid article[data-state-card="MALA C MAIL"]{border-color:rgba(255,30,30,.42);box-shadow:inset 3px 0 var(--state-mala)}
.stats-grid article[data-state-card="MALA C MAIL"] strong{color:#ff6464}
.stats-grid article[data-state-card="NO E"]{border-color:rgba(255,122,26,.44);box-shadow:inset 3px 0 var(--state-noe)}
.stats-grid article[data-state-card="NO E"] strong{color:var(--state-noe)}
.stats-grid article[data-state-card="TOTAL"]{border-color:rgba(76,255,145,.25);box-shadow:inset 3px 0 var(--green)}
.stats-grid article[data-state-card="TOTAL"] strong{color:var(--green)}
.toolbar-panel{margin:0 0 8px;padding:7px 8px;border-radius:11px;gap:7px}.btn{padding:8px 10px;border-radius:8px;font-size:10px}.toolbar-main{gap:5px;flex:1 1 620px}.inline-label{font-size:9px}.input{padding:8px 9px;border-radius:8px;font-size:10px}.search-input{min-width:180px}.date-input{width:90px;min-width:90px}.state-filter{width:115px;min-width:115px}.available-btn{padding:8px 9px;font-size:9px}.icon-only{width:34px;padding-left:0;padding-right:0}.loading-label{font-size:9px}
.tmx-grid{grid-template-columns:minmax(0,1fr) 238px;gap:8px}.panel{border-radius:11px}.table-headbar{padding:7px 9px}.compact-headbar{min-height:39px}.table-headbar strong{font-size:11px}.table-headbar small{font-size:9px}.head-hint{margin-left:auto;color:#60756a;font-size:9px;white-space:nowrap}
.table-wrap{max-height:calc(100vh - 190px);min-height:520px;overflow:auto;position:relative}table{min-width:940px}th{padding:8px 9px;font-size:8px}td{padding:7px 9px;font-size:11px}.record-row{cursor:default;user-select:none}.record-row td:first-child{width:46px;color:#73877c}.selected-row{background:rgba(76,255,145,.12)!important;box-shadow:inset 3px 0 var(--green)}.selected-row td{border-bottom-color:rgba(76,255,145,.12)}
.status-badge{font-weight:800;border-width:1px}.status-badge[data-state="ACTIVO"]{color:#fff;background:var(--state-activo);border-color:var(--state-activo)}.status-badge[data-state="PENDIENTE"]{color:#111;background:var(--state-pendiente);border-color:var(--state-pendiente)}.status-badge[data-state="DISPONIBLE"]{color:#111;background:var(--state-disponible);border-color:var(--state-disponible)}.status-badge[data-state="MALA C MAIL"]{color:#fff;background:var(--state-mala);border-color:var(--state-mala)}.status-badge[data-state="NO E"]{color:#111;background:var(--state-noe);border-color:var(--state-noe)}.status-badge[data-state="NA"]{color:#fff;background:var(--state-na);border-color:var(--state-na)}.status-badge[data-state="BLOQUEADOS"]{color:#fff;background:var(--state-bloqueados);border-color:#333}.status-badge[data-state="NONE"]{color:#d4dfd9;background:#17241e;border-color:#32453b}
.side-actions{gap:8px;top:8px}.action-card{padding:9px}.card-heading small{font-size:8px}.card-heading strong{font-size:12px}.service-grid,.state-grid{gap:5px;margin-top:8px}.service-grid button{padding:8px 9px;border-radius:7px;font-size:10px}.state-grid button{padding:8px 5px;font-size:8px;font-weight:800}
.state-grid button[data-state="ACTIVO"]{background:var(--state-activo);border-color:var(--state-activo);color:#fff}.state-grid button[data-state="PENDIENTE"]{background:var(--state-pendiente);border-color:var(--state-pendiente);color:#111}.state-grid button[data-state="DISPONIBLE"]{background:var(--state-disponible);border-color:var(--state-disponible);color:#111}.state-grid button[data-state="MALA C MAIL"]{background:var(--state-mala);border-color:var(--state-mala);color:#fff}.state-grid button[data-state="NO E"]{background:var(--state-noe);border-color:var(--state-noe);color:#111}.state-grid button[data-state="NA"]{background:var(--state-na);border-color:var(--state-na);color:#fff}.state-grid button[data-state="BLOQUEADOS"]{background:var(--state-bloqueados);border-color:#333;color:#fff}.state-grid button:hover{filter:brightness(1.12);transform:translateY(-1px)}
.progress-loader{position:sticky;bottom:8px;width:max-content;margin:8px auto;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#0b1711;color:var(--green);font-size:9px;box-shadow:var(--shadow)}
.context-menu{position:fixed;z-index:120;width:190px;padding:5px;border:1px solid #294537;border-radius:9px;background:#0b1511;box-shadow:0 16px 45px rgba(0,0,0,.55)}.context-menu[hidden]{display:none}.context-menu button{display:block;width:100%;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#dcebe3;text-align:left;font-size:10px;cursor:pointer}.context-menu button:hover{background:#173123}.context-menu button.danger{color:#ff8f96}.context-menu button.danger:hover{background:rgba(255,30,30,.12)}.context-separator{height:1px;margin:4px 3px;background:#20362b}
@media(max-width:1350px){.app-shell{grid-template-columns:158px minmax(0,1fr)}.tmx-grid{grid-template-columns:minmax(0,1fr) 215px}.toolbar-main{order:initial;flex-basis:auto;min-width:420px}.head-hint{display:none}}
@media(max-width:1000px){.tmx-grid{grid-template-columns:1fr}.side-actions{position:static;grid-template-columns:1fr 1fr}.table-wrap{max-height:62vh;min-height:420px}}
@media(max-width:800px){.app-shell{display:block}.workspace{padding:8px}.connection-row{margin-bottom:5px}.stats-grid{grid-template-columns:repeat(3,1fr)}.toolbar-main{order:3;min-width:0;flex-basis:100%}.side-actions{grid-template-columns:1fr}.table-wrap{min-height:360px}.sidebar{padding:9px 10px}}

/* v1.3 - readability + denser desktop workflow */
.toolbar-panel{padding:9px 10px;gap:9px}
.primary-actions{gap:7px}
.btn{padding:10px 13px;font-size:12px;border-radius:9px}
.toolbar-main{flex:0 1 auto;min-width:0;gap:6px}
.inline-label{font-size:10px}
.search-input{flex:0 0 clamp(260px,28vw,470px);width:clamp(260px,28vw,470px);min-width:260px}
.date-input{width:100px;min-width:100px}
.state-filter{width:132px;min-width:132px}
.input{font-size:12px;padding:9px 10px}
.toolbar-tail{margin-left:auto;gap:8px}
.loading-label,.available-btn{font-size:10px}.available-btn{padding:9px 11px}

.tmx-grid{grid-template-columns:minmax(0,1fr) 252px;gap:10px}
.table-headbar{padding:9px 11px}.table-headbar strong{font-size:13px}.table-headbar small{font-size:10px}.head-hint{font-size:10px}
.table-wrap{max-height:calc(100vh - 202px)}
table{min-width:1020px}
th{padding:10px 11px;font-size:9.5px}
td{padding:10px 11px;font-size:14px;line-height:1.2}
td.password{font-size:13.5px}
.record-row td:first-child{width:48px;font-size:12px}
.status-badge,.service-chip{padding:5px 8px;font-size:10px}
.dirigidos-cell{min-width:190px}
.dirigidos-editor{min-width:180px;padding:7px 9px;font-size:14px}

.action-card{padding:11px}.card-heading small{font-size:9px}.card-heading strong{font-size:14px}
.service-grid,.state-grid{gap:7px;margin-top:9px}
.service-grid button{padding:10px 11px;font-size:12px}
.state-grid{grid-template-columns:1fr}
.state-grid button{width:100%;padding:10px 11px;font-size:10.5px;text-align:center}

.context-menu{width:205px}.context-menu button{padding:9px 11px;font-size:11px}

@media(max-width:1450px){
  .search-input{flex-basis:320px;width:320px;min-width:220px}
  .tmx-grid{grid-template-columns:minmax(0,1fr) 235px}
  td{font-size:13px;padding:9px 10px}
}
@media(max-width:1150px){
  .toolbar-main{order:3;flex:1 1 100%;width:100%}
  .search-input{flex:1 1 300px;width:auto}
  .tmx-grid{grid-template-columns:1fr}
  .side-actions{position:static;grid-template-columns:1fr 1fr}
  .state-grid{grid-template-columns:1fr}
}

/* v1.4 - stronger headers + state-colored row index */
thead th{
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  color:#e7f3ec!important;
  text-transform:none!important;
  padding:12px 11px!important;
  background:#102219!important;
  border-bottom:1px solid #294337!important;
}
thead th:first-child{width:52px;text-align:center}
.row-index{
  width:52px!important;
  min-width:52px!important;
  text-align:center!important;
  font-size:13px!important;
  font-weight:800!important;
  color:#fff!important;
  border-right:1px solid rgba(255,255,255,.04)!important;
}
.row-index[data-state="ACTIVO"]{background:var(--state-activo)!important}
.row-index[data-state="PENDIENTE"]{background:var(--state-pendiente)!important;color:#111!important}
.row-index[data-state="DISPONIBLE"]{background:var(--state-disponible)!important;color:#111!important}
.row-index[data-state="MALA C MAIL"]{background:var(--state-mala)!important}
.row-index[data-state="NO E"]{background:var(--state-noe)!important;color:#111!important}
.row-index[data-state="NA"]{background:var(--state-na)!important}
.row-index[data-state="BLOQUEADOS"]{background:var(--state-bloqueados)!important}
.row-index[data-state="NONE"]{background:#1e2a24!important;color:#dce7e1!important}
.record-row.selected-row .row-index{box-shadow:inset 0 0 0 2px rgba(255,255,255,.48)}
.context-menu .muted-action{color:#a9bdb2}

/* v1.5 - neutral graphite UI, viewport-fit layout, dark scrollbars and progressive TODOS */
:root{
  --bg:#111214;
  --panel:#181a1d;
  --panel2:#1d2024;
  --line:#30343a;
  --text:#f0f2f4;
  --muted:#9aa0a8;
  --green:#46e58a;
  --green2:#31c978;
  --shadow:0 16px 44px rgba(0,0,0,.32);
}
html,body{height:100%;background:#111214;color:var(--text)}
body{overflow:hidden}
.app-shell{height:100vh;min-height:0;background:#111214}
.sidebar{background:#151719;border-right-color:#2b2e33;backdrop-filter:none}
.brand-mark{background:#202328;border-color:#363a40;color:#e7eaee}
.brand-lockup small,.nav-item>span,.card-heading small{color:#aeb4bc}
.nav-item.active{background:#22252a;color:#fff;box-shadow:inset 3px 0 #8e959e}
.protection-card{background:#1d2024;border-color:#30343a}
.shield-dot{background:#4de58d;color:#111}

.workspace{
  height:100vh;
  min-height:0;
  padding:8px 10px 8px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.connection-row{flex:0 0 auto;height:27px;margin-bottom:5px}
.live-pill{background:#1b1e22;border-color:#30343a}
.panel,.toolbar-panel,.table-panel,.action-card{background:#181a1d;border-color:#30343a;box-shadow:none}
.toolbar-panel{flex:0 0 auto;margin-bottom:6px;background:#1a1c20}
.input,.service-grid button,.state-grid button{background:#16181b;border-color:#32363c}
.btn,.ghost-btn,.mini{background:#23262b;border-color:#363a40;color:#f2f3f5}
.btn:hover,.mini:hover,.ghost-btn:hover,.service-grid button:hover{background:#2b2f35;border-color:#555b64}
.available-btn{background:#191b1e}

.stats-strip{
  flex:0 0 auto;
  width:100%;
  min-height:39px;
  margin:0 0 6px;
  padding:8px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:1px solid #2e3237;
  border-radius:8px;
  background:#17191c;
  white-space:nowrap;
  overflow:hidden;
}
.stats-title{color:#ffd400;font-size:13px}
.stat-inline{display:inline-flex;align-items:center;gap:7px;color:#f3f3f3;font-size:12px;font-weight:800}
.stat-inline b{font-weight:900}
.stat-inline strong{font-size:13px;font-weight:950}
.stats-strip>i{width:1px;height:18px;background:#4b4f55;flex:0 0 1px}
.stat-button{border:0;background:transparent;padding:0;cursor:pointer;font:inherit}
.stat-button:hover b{text-decoration:underline}
[data-stat-color="ACTIVO"]{color:#2b7cff}
[data-stat-color="PENDIENTE"]{color:#ffe000}
[data-stat-color="DISPONIBLE"]{color:#ff9200}
[data-stat-color="NONE"]{color:#ff5b9f}
[data-stat-color="MALA C MAIL"]{color:#ff2d2d}
[data-stat-color="NO E"]{color:#ff7b19}
[data-stat-color="TOTAL"]{color:#36e697}

.tmx-grid{
  flex:1 1 auto;
  min-height:0;
  height:auto;
  grid-template-columns:minmax(0,1fr) 246px;
  gap:8px;
  align-items:stretch;
}
.table-panel{
  height:100%;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.table-headbar{flex:0 0 auto;background:#1b1d21;border-bottom-color:#30343a}
.table-wrap{
  flex:1 1 auto;
  min-height:0!important;
  max-height:none!important;
  height:auto;
  overflow:auto;
  background:#151719;
  scrollbar-width:thin;
  scrollbar-color:#666b73 #202328;
}
.side-actions{
  height:100%;
  min-height:0;
  align-content:start;
  overflow:auto;
  scrollbar-width:thin;
  scrollbar-color:#666b73 #202328;
}
table{background:#151719}
thead th{background:#202328!important;border-bottom-color:#393d43!important;color:#f3f4f5!important}
td{border-bottom-color:#292c31}
tbody tr:hover{background:#202328}
td.password{color:#d5d8dc}
.status-badge[data-state="NONE"]{background:#292c31;border-color:#3b3f45;color:#e0e2e5}
.row-index[data-state="NONE"]{background:#30343a!important;color:#f0f1f2!important}
.selected-row{background:#29313a!important;box-shadow:inset 3px 0 #7ca6d8!important}
.selected-row td{border-bottom-color:#36414d}
.dirigidos-editor{background:#202328;border-color:#707780;color:#fff}
.context-menu{background:#202328;border-color:#444950}
.context-menu button{color:#f1f2f4}
.context-menu button:hover{background:#30343a}
.context-separator{background:#40444a}
.modal-card{background:#1d2024;border-color:#3b3f45}
.modal-card textarea{background:#151719;border-color:#363a40}
.toast{background:#23262b;border-color:#41464d}
.progress-loader{background:#25282d;border-color:#454a51;color:#e7eaee}

/* Dark scrollbars everywhere, including Chromium/Edge on Windows. */
*::-webkit-scrollbar{width:11px;height:11px}
*::-webkit-scrollbar-track{background:#202328}
*::-webkit-scrollbar-thumb{background:#61666e;border:2px solid #202328;border-radius:999px}
*::-webkit-scrollbar-thumb:hover{background:#7a8089}
*::-webkit-scrollbar-corner{background:#202328}

@media(max-width:1450px){
  .stats-title{font-size:11px}.stat-inline{font-size:10.5px}.stat-inline strong{font-size:11.5px}
  .stats-strip{gap:7px;padding-inline:9px}
  .tmx-grid{grid-template-columns:minmax(0,1fr) 225px}
}
@media(max-width:1150px){
  body{overflow:auto}.app-shell{height:auto;min-height:100vh}.workspace{height:auto;min-height:100vh;overflow:visible}
  .stats-strip{overflow-x:auto;justify-content:flex-start}.stats-strip>i{margin:0 5px}
  .tmx-grid{display:grid;height:auto}.table-wrap{height:62vh!important;min-height:420px!important}
  .side-actions{height:auto;overflow:visible}
}

/* v1.7 - ultra-compact horizontal clickable stats */
.stats-cards-compact{
  flex:0 0 auto;display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));
  gap:6px;margin:0 0 6px;
}
.stat-card-mini{
  min-width:0;height:36px;padding:0 10px;
  border:1px solid #34383e;border-left:3px solid #626871;border-radius:8px;
  background:#1a1c20;color:#f4f5f6;text-align:left;
  display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;
  box-shadow:none;
}
button.stat-card-mini{font:inherit;cursor:pointer}
.stat-card-mini small{font-size:11px;font-weight:850;letter-spacing:.05em;color:#c4c8ce;white-space:nowrap}
.stat-card-mini strong{font-size:19px;line-height:1;font-weight:900}
.stat-card-mini[data-card-state="ACTIVO"]{border-left-color:#2b7cff}.stat-card-mini[data-card-state="ACTIVO"] strong{color:#5594ff}
.stat-card-mini[data-card-state="PENDIENTE"]{border-left-color:#ffe000}.stat-card-mini[data-card-state="PENDIENTE"] strong{color:#ffe000}
.stat-card-mini[data-card-state="DISPONIBLE"]{border-left-color:#ff9200}.stat-card-mini[data-card-state="DISPONIBLE"] strong{color:#ff9c18}
.stat-card-mini[data-card-state="NONE"]{border-left-color:#a97094}.stat-card-mini[data-card-state="NONE"] strong{color:#d28fbc}
.stat-card-mini[data-card-state="MALA C MAIL"]{border-left-color:#ff2d2d}.stat-card-mini[data-card-state="MALA C MAIL"] strong{color:#ff5454}
.stat-card-mini[data-card-state="NO E"]{border-left-color:#ff7b19}.stat-card-mini[data-card-state="NO E"] strong{color:#ff8a30}
.stat-card-mini[data-card-state="TOTAL"]{border-left-color:#36e697}.stat-card-mini[data-card-state="TOTAL"] strong{color:#53eaa5}
.stat-card-mini.clickable:hover{background:#25282d;border-color:#555b64;transform:translateY(-1px)}
.stat-card-mini.active-filter{outline:1px solid currentColor;background:#262a2f}
.history-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;padding-top:9px;border-top:1px solid #30343a}
.history-btn{padding:9px 8px;border:1px solid #3a3f46;border-radius:7px;background:#24272c;color:#e9ebee;font-size:11px;font-weight:750;cursor:pointer}
.history-btn:hover{background:#30343a}.history-btn:disabled{opacity:.38;cursor:not-allowed}
@media(max-width:1450px){.stats-cards-compact{gap:5px}.stat-card-mini{height:34px;padding:0 8px}.stat-card-mini strong{font-size:17px}.stat-card-mini small{font-size:10px}}
@media(max-width:1100px){.stats-cards-compact{grid-template-columns:repeat(4,1fr)}}

/* v2.1 · selector de fecha compacto en edición */
.date-picker-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:9px}
.date-picker-row label{display:grid;gap:5px;color:#aeb3ba;font-size:11px;font-weight:700}
.date-picker-row label>span{padding-left:2px}
.date-picker-row .date-select{margin-top:0;width:100%;font-size:13px;font-weight:700}


/* v2.5 - identidad visual Perrito Gestor */
.brand-logo{
  width:42px;height:42px;flex:0 0 42px;display:block;object-fit:cover;object-position:center;
  border:1px solid #3b4047;border-radius:12px;background:#121417;
  box-shadow:0 0 0 1px rgba(0,190,255,.08),0 5px 18px rgba(0,0,0,.28);
}
.login-logo{
  width:92px;height:92px;display:block;object-fit:cover;object-position:center;margin:0 auto 12px;
  border:1px solid #39414a;border-radius:22px;background:#11151b;
  box-shadow:0 12px 36px rgba(0,0,0,.38),0 0 28px rgba(0,180,255,.10);
}
.login-card{text-align:center}.login-card .input,.login-card .btn,.login-card .login-note,.login-card .login-error,.login-card .login-config{text-align:left}.login-card .btn{text-align:center}
@media(max-width:800px){.brand-logo{width:36px;height:36px;flex-basis:36px;border-radius:10px}}
