:root{--bg:#f4f7fb;--panel:#fff;--text:#10233f;--muted:#6b7b91;--line:#dce4ef;--primary:#0b5bd3;--primary2:#0847a6;--good:#0a8f5b;--warn:#c98100;--bad:#c83434;--shadow:0 8px 24px rgba(18,43,76,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select{font:inherit}.hidden{display:none!important}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#eef5ff,#f8fafc)}.auth-card{width:min(460px,100%);background:white;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--shadow)}.brand-mark{width:54px;height:54px;border-radius:14px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:28px;font-weight:800}.brand-mark.sm{width:38px;height:38px;border-radius:10px;font-size:20px}.auth-card h1{margin:18px 0 4px}.muted,.hint{color:var(--muted)}.hint{font-size:13px;margin:4px 0}.stack{display:grid;gap:14px;margin-top:25px}label{display:grid;gap:6px;font-size:13px;font-weight:650;color:#334762}input,select{width:100%;border:1px solid #cad5e3;border-radius:9px;padding:10px 11px;background:#fff;color:var(--text);outline:none}input:focus,select:focus{border-color:#75a7ef;box-shadow:0 0 0 3px #e8f1ff}.btn{border:1px solid #cbd6e5;background:#fff;color:#173554;padding:9px 13px;border-radius:9px;cursor:pointer;font-weight:650}.btn:hover{background:#f4f7fb}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary2)}.btn.small{padding:7px 10px;font-size:13px}.btn.big{padding:13px 18px}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:#0d213b;color:white;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;padding:22px 18px;border-bottom:1px solid #203752}.brand strong{display:block}.brand span{display:block;color:#a9b8ca;font-size:12px;margin-top:2px}.sidebar nav{padding:14px 10px;display:grid;gap:5px}.sidebar nav button{border:0;background:transparent;color:#c8d4e3;text-align:left;padding:11px 12px;border-radius:8px;cursor:pointer}.sidebar nav button:hover,.sidebar nav button.active{background:#173756;color:#fff}.side-footer{margin-top:auto;padding:16px 18px;border-top:1px solid #203752;color:#aebdd0;font-size:12px;display:grid;gap:8px}.link-btn{border:0;background:none;color:#8fc0ff;text-align:left;padding:0;cursor:pointer}.main{min-width:0;padding:0 28px 40px}.topbar{height:92px;display:flex;align-items:center;justify-content:space-between}.topbar h1{font-size:26px;margin:0}.topbar p{margin:5px 0 0;color:var(--muted);font-size:13px}.env-badge{font-size:12px;font-weight:800;letter-spacing:.06em;padding:7px 10px;border-radius:999px;background:#fff2ce;color:#8a6500;border:1px solid #efd98f}.view{display:none}.view.active{display:block}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:18px;box-shadow:0 2px 8px rgba(20,42,70,.03)}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{display:block;font-size:27px;margin-top:7px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:16px;box-shadow:0 2px 8px rgba(20,42,70,.03)}.panel.narrow{max-width:900px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-head h3{margin:0;font-size:17px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:#66788f;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:10px;border-bottom:1px solid var(--line)}td{padding:11px 10px;border-bottom:1px solid #edf1f6;vertical-align:middle}.num{text-align:right}.mono{font-family:Consolas,monospace}.search{max-width:380px;margin-bottom:12px}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:750;background:#eef3f9;color:#496178}.badge.s5{background:#e4f7ef;color:#08724b}.badge.s6,.badge.s7{background:#ffecec;color:#a52e2e}.badge.s3,.badge.s4{background:#fff3d9;color:#8a6100}.row-actions{display:flex;gap:6px;justify-content:flex-end}.icon-btn{border:0;background:transparent;font-size:24px;cursor:pointer;color:#6e7c90}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px 15px}.span2{grid-column:1/-1}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.grid2{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}.total-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:9px}.total-panel span,.total-panel small{color:var(--muted)}.total-panel strong{font-size:34px}.reference-box{margin-top:16px;border-top:1px solid var(--line);padding-top:15px}.lines input,.lines select{min-width:90px;padding:7px}.lines .detail{min-width:220px}.status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.status-item{background:#f7f9fc;border:1px solid #e5ebf3;border-radius:10px;padding:12px}.status-item span{display:block;color:var(--muted);font-size:11px}.status-item strong{display:block;margin-top:5px;font-size:13px}.upload-box{display:flex;align-items:end;gap:10px;margin-top:15px;padding:14px;background:#f7f9fc;border:1px dashed #cbd7e6;border-radius:10px}.upload-box label{flex:1}dialog{border:0;border-radius:16px;padding:0;box-shadow:0 20px 70px rgba(0,0,0,.25);width:min(760px,94vw)}dialog::backdrop{background:rgba(9,20,35,.5)}.dialog-card{padding:20px}.dialog-card.wide{width:min(900px,94vw)}.process-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}pre{background:#0c1727;color:#d7e6f8;padding:14px;border-radius:10px;max-height:360px;overflow:auto;white-space:pre-wrap;font-size:12px}.toast{position:fixed;right:20px;top:20px;z-index:1000;max-width:420px;padding:12px 15px;border-radius:9px;background:#15314e;color:#fff;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-8px);transition:.2s}.toast.show{opacity:1;transform:none}.toast.bad{background:#9e2f2f}.message{margin-top:12px;color:#a33535;font-size:13px}@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.total-panel{align-items:flex-start}.status-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar nav{grid-template-columns:1fr 1fr}.side-footer{display:none}.main{padding:0 12px 28px}.topbar{height:80px}.cards,.form-grid,.status-grid{grid-template-columns:1fr}.span2{grid-column:auto}}

.inline-field{display:flex;gap:8px;align-items:center}.inline-field input{flex:1}.catalog-results{display:flex;flex-direction:column;gap:6px;margin-top:8px;max-height:220px;overflow:auto}.catalog-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:9px 10px;border:1px solid #d7e0ec;background:#fff;border-radius:8px;text-align:left;cursor:pointer}.catalog-option:hover{background:#f4f8ff;border-color:#9dbbeb}.catalog-option span{font-size:12px;color:#52657c}label small{display:block;margin-top:4px;color:#6b7c91;font-size:11px;font-weight:400}
.top-actions{display:flex;align-items:center;gap:12px}.company-switch{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);font-weight:700}.company-switch select{min-width:260px;padding:8px 10px}.admin-create{padding:16px;margin:0 0 16px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px}.danger-text{color:var(--bad)}
@media(max-width:760px){.top-actions{gap:6px}.company-switch{display:none!important}}
.error-cell{color:#b42318;background:#fff4f2;font-weight:600}

.plan-panel{border-left:4px solid var(--primary)}.plan-available strong{font-size:22px;color:var(--primary)}.plan-ok{color:var(--good)}.plan-stop{color:var(--bad)}.plan-warning{grid-column:1/-1;background:#fff7e6;border-color:#f0d99f}.plan-badge{white-space:nowrap;background:#edf5ff;color:#174a8b;border:1px solid #c9dcf6;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:750}.plan-badge.blocked{background:#fff0f0;color:#a52e2e;border-color:#efcaca}.btn:disabled{opacity:.55;cursor:not-allowed;background:#8aa5c7!important;border-color:#8aa5c7!important}

/* FIX13 - Emisión fiscal */
.lines td{vertical-align:top}.lines td small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.line-invalid{background:#fff5f5}.field-error{color:var(--bad)!important;font-weight:650}.exon-toggle{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px}.exon-toggle input{width:auto}.exon-rate{display:block;margin-top:5px;color:var(--good);font-size:12px}.exon-details td{background:#f8fbff;padding:12px 14px}.exon-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px}.exon-summary{margin-top:10px;padding:9px 11px;background:#eef6ff;border:1px solid #d2e4fb;border-radius:8px;color:#38506e;font-size:12px}.exon-summary strong{color:var(--text)}@media(max-width:1200px){.exon-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:760px){.exon-grid{grid-template-columns:1fr}}

/* FIX14: buscador CAByS en cada linea de factura */
.cabys-line{min-width:260px}.cabys-line .inline-field{align-items:stretch}.cabys-line .cabys-search{margin-top:6px;min-width:220px}.line-cabys-results{max-height:180px;min-width:300px}.line-cabys-results .catalog-option{font-size:11px}
/* FIX15: el IVA es determinado automaticamente por el CAByS oficial. */
.tax-auto{border:1px solid #cbd5e1;border-radius:8px;padding:9px 11px;background:#f8fafc;display:flex;flex-direction:column;gap:2px}.tax-auto.ok{border-color:#86efac;background:#f0fdf4}.tax-auto.pending{border-color:#fde68a;background:#fffbeb;color:#854d0e}.tax-auto.compact{min-width:125px;padding:7px 9px}.tax-auto.compact strong{font-size:13px}.tax-auto.compact small{font-size:10px}

/* FIX16 - Mi catalogo CAByS por actividad */
.catalog-suggestion-head{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:8px 0;flex-wrap:wrap}
.catalog-option.selectable{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.catalog-option.selectable input{width:auto;margin-top:3px}
.catalog-result-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin:5px 0}
.cabys-my-select{width:100%;margin:5px 0;font-size:.82rem}

.payment-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(180px,1fr) minmax(160px,.8fr) 42px;gap:12px;align-items:end;margin:10px 0;padding:12px;border:1px solid #dde4ec;border-radius:12px;background:#fff}.payment-row label{display:flex;flex-direction:column;gap:6px}.payment-row .icon-btn{align-self:end;height:38px}.form-grid textarea{width:100%;resize:vertical;min-height:74px}.hidden{display:none!important}@media(max-width:900px){.payment-row{grid-template-columns:1fr}}

.client-picker{display:grid;gap:7px}.client-actions{display:flex;gap:7px;flex-wrap:wrap}.client-actions .btn{width:auto}.client-picker select{width:100%}
.compact-details{margin-top:12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe;overflow:hidden}.compact-details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;font-weight:750;color:#233b5b}.compact-details>summary::-webkit-details-marker{display:none}.compact-details>summary:after{content:'+';font-size:20px;color:var(--primary)}.compact-details[open]>summary:after{content:'−'}.compact-details>summary small{font-weight:500;color:var(--muted);font-size:11px}.compact-details-body{padding:12px 13px;border-top:1px solid var(--line);background:#fff}.collapsible-panel{padding:0;overflow:hidden}.collapsible-panel>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px}.collapsible-panel>summary::-webkit-details-marker{display:none}.collapsible-panel>summary h3{margin:0;font-size:17px}.collapse-indicator{font-size:12px;color:var(--primary);font-weight:700}.collapsible-panel-body{padding:0 18px 18px;border-top:1px solid var(--line)}.payment-head{margin:12px 0 0}.collapsible-panel[open] .collapse-indicator{color:var(--muted)}@media(max-width:760px){.compact-details>summary{align-items:flex-start;flex-direction:column}.collapsible-panel>summary{align-items:flex-start}}


/* FIX24 - Puesta en marcha obligatoria y alertas de certificado */
.cert-alert{margin-top:8px;padding:9px 12px;border-radius:10px;background:#fff4d6;color:#7a4d00;border:1px solid #f0d08a;font-size:13px;font-weight:750;display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}.cert-alert.critical{background:#fff0f0;color:#a52e2e;border-color:#efcaca}.cert-alert-action{border:0;border-radius:8px;padding:7px 11px;background:#0b6f6b;color:#fff;font-weight:800;cursor:pointer}.cert-alert-action:hover{filter:brightness(.94)}.cert-alert-contact{font-size:12px;font-weight:700;opacity:.9}.setup-dialog{width:min(980px,96vw);max-height:94vh}.setup-card{max-height:92vh;overflow:auto}.setup-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:14px}.setup-title h2{margin:4px 0}.setup-kicker{font-size:11px;letter-spacing:.12em;font-weight:850;color:var(--primary)}.setup-step-badge{background:#eaf3ff;color:#14529d;border:1px solid #c8ddf8;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:750;white-space:nowrap}.setup-section{padding:18px 0;border-bottom:1px solid #edf1f6}.setup-section h3{margin:0 0 12px}.setup-section:last-child{border-bottom:0}.setup-choice{background:#f7faff;border:1px solid #dce8f7;border-radius:12px;padding:14px}.setup-message{margin-top:10px}.setup-message.bad{color:var(--bad);font-weight:650}.setup-message.good{color:var(--good);font-weight:650}.setup-final{background:#f8fbff;margin:12px -20px -20px;padding:18px 20px;border-radius:0 0 16px 16px}.setup-dialog::backdrop{background:rgba(5,15,30,.68)}


/* FIX49 - Facturas emitidas: filtros + acciones por fila */
.issued-head-panel{padding:20px}.issued-search-bar{display:grid;grid-template-columns:minmax(280px,2fr) repeat(2,minmax(150px,.8fr)) auto auto;gap:12px;align-items:end}.issued-search-main input{font-size:14px}.issued-advanced{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}.issued-table-panel{padding:0;overflow:visible}.issued-table-panel .table-wrap{overflow:visible auto}.issued-table th{white-space:nowrap;padding:12px 10px}.issued-table td{padding:12px 10px}.issued-table td small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.issued-consecutive{max-width:170px;overflow:hidden;text-overflow:ellipsis}.issued-count{padding:12px 16px}.issued-icon{min-width:46px;height:38px;border-radius:8px;border:1px solid #cbd6e5;display:inline-grid;place-items:center;font-weight:800;cursor:pointer;padding:0 8px}.issued-icon.navy{background:#132f5d;color:#fff;border-color:#132f5d}.issued-icon.neutral{background:#e7eaf0;color:#526175}.issued-icon.pdf-action{font-size:11px}.issued-icon.danger-action{font-size:24px;color:#fff}.issued-icon.more-action{font-size:24px;line-height:1;list-style:none}.row-menu{position:relative;display:inline-block}.row-menu summary{list-style:none}.row-menu summary::-webkit-details-marker{display:none}.row-menu-pop{position:absolute;z-index:40;top:44px;left:0;min-width:210px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px rgba(20,42,70,.18);display:grid;gap:3px}.row-menu-pop.right{left:auto;right:0}.row-menu-pop button{border:0;background:#fff;text-align:left;padding:9px 10px;border-radius:7px;color:#173554;cursor:pointer}.row-menu-pop button:hover{background:#eef4fc}.row-menu-pop button:disabled{opacity:.45;cursor:not-allowed}.badge.s5{background:#e7f8ec;color:#18783b;border:1px solid #bfe8ca}.badge.s6{background:#fff0f0;color:#b42318;border:1px solid #f0caca}
@media(max-width:1200px){.issued-search-bar{grid-template-columns:1fr 1fr 1fr}.issued-search-main{grid-column:1/-1}.issued-advanced{grid-template-columns:repeat(2,1fr)}.issued-table-panel .table-wrap{overflow:auto}.issued-table{min-width:1250px}}
@media(max-width:760px){.issued-search-bar,.issued-advanced{grid-template-columns:1fr}.issued-search-main{grid-column:auto}.issued-table{min-width:1180px}}

.issued-tools{margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f8fbff;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.issued-tools .hint{margin:4px 0 0}.issued-tools .row-actions{display:flex;gap:8px;flex-wrap:wrap}

/* FIX67 - Renovacion visual y navegacion lateral desplegable */
:root{
  --bg:#f2f5f9;
  --panel:#ffffff;
  --text:#16263b;
  --muted:#718096;
  --line:#e2e8f0;
  --primary:#1767c0;
  --primary2:#0f4f97;
  --good:#16805a;
  --warn:#b7791f;
  --bad:#c2414b;
  --sidebar:#10263d;
  --sidebar2:#0b1e32;
  --sidebarText:#d9e5f1;
  --shadow:0 10px 30px rgba(23,43,77,.07);
}
body{background:linear-gradient(180deg,#f7f9fc 0,#f2f5f9 260px);letter-spacing:.002em}
.app-shell{grid-template-columns:272px 1fr}
.sidebar{background:linear-gradient(180deg,var(--sidebar) 0,var(--sidebar2) 100%);box-shadow:10px 0 30px rgba(10,26,44,.06);z-index:50}
.brand{padding:24px 18px 21px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand .brand-mark{background:linear-gradient(145deg,#2f80d4,#1767c0);box-shadow:0 8px 22px rgba(30,112,198,.28)}
.brand strong{font-size:15px;letter-spacing:.055em}.brand span{color:#9fb1c4;font-size:11px;letter-spacing:.03em}
.nav-accordion{padding:14px 12px!important;display:flex!important;flex-direction:column;gap:7px!important;overflow:auto}
.nav-home,.nav-group summary,.nav-group-body button{width:100%;display:flex;align-items:center;gap:10px;border:0;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}
.nav-home{padding:11px 12px!important;border-radius:10px!important;color:var(--sidebarText)!important;background:transparent!important;font-weight:700}
.nav-home:hover,.nav-home.active{background:rgba(65,139,216,.18)!important;color:#fff!important}
.nav-icon{width:22px;display:inline-grid;place-items:center;font-size:14px;opacity:.94}
.nav-group{border-radius:12px;overflow:hidden;background:transparent}
.nav-group>summary{list-style:none;justify-content:space-between;padding:11px 12px;color:#b9cadb;border-radius:10px;font-size:12px;font-weight:800;letter-spacing:.025em;user-select:none}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary:hover{background:rgba(255,255,255,.05);color:#fff}
.nav-group-title{display:flex;align-items:center;gap:10px}
.nav-chevron{font-size:16px;transition:transform .18s ease;color:#7690a9}.nav-group[open] .nav-chevron{transform:rotate(180deg)}
.nav-group-body{display:grid;gap:3px;padding:3px 5px 7px 11px}
.sidebar .nav-group-body button{padding:9px 11px!important;border-radius:9px!important;background:transparent!important;color:#aebfd0!important;font-size:13px}
.sidebar .nav-group-body button:hover{background:rgba(255,255,255,.06)!important;color:#fff!important;transform:translateX(1px)}
.sidebar .nav-group-body button.active{background:linear-gradient(90deg,rgba(38,123,205,.32),rgba(38,123,205,.14))!important;color:#fff!important;font-weight:750;box-shadow:inset 3px 0 0 #4ca0ef}
.nav-dot{width:5px;height:5px;border-radius:50%;background:#6f8da9;flex:0 0 auto}.sidebar .nav-group-body button.active .nav-dot{background:#69b7ff;box-shadow:0 0 0 3px rgba(105,183,255,.12)}
.nav-admin-group{margin-top:4px;border-top:1px solid rgba(255,255,255,.07);padding-top:6px}
.side-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.08);padding:15px 18px}.side-footer #userLabel{font-weight:650;color:#d1deeb}.link-btn{color:#8bc2fa}
.main{padding:0 34px 44px}
.topbar{height:104px}.topbar h1{font-size:28px;letter-spacing:-.025em;color:#182b43}.topbar p{font-size:13px;color:#7b899d}
.panel,.stat{border-color:#e4eaf1;box-shadow:var(--shadow)}
.panel{border-radius:16px;padding:20px}.stat{border-radius:15px;padding:19px}.stat strong{font-size:28px;letter-spacing:-.025em}
.panel-head h3{font-size:17px;color:#1b304b}.panel-head{margin-bottom:16px}
.btn{border-radius:10px;padding:9px 14px;border-color:#d5dee9;box-shadow:0 1px 1px rgba(20,42,70,.02)}.btn:hover{background:#f5f8fb;border-color:#c5d3e1}.btn.primary{background:linear-gradient(180deg,#2375c9,#1767b8);border-color:#1767b8;box-shadow:0 6px 14px rgba(23,103,184,.18)}.btn.primary:hover{background:linear-gradient(180deg,#1f6dbd,#105aab)}
input,select,textarea{border-color:#d7e0ea;border-radius:10px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{border-color:#75a9dc;box-shadow:0 0 0 3px rgba(61,137,207,.11)}
table{font-size:13px}th{background:#f8fafc;color:#6b7c8f;padding:11px 10px}td{padding:12px 10px}.table-wrap{border-radius:10px}
.badge{padding:5px 9px;font-weight:800;border:1px solid transparent}.badge.s5{background:#eaf7f1;color:#176a4c;border-color:#ccebdc}.badge.s6,.badge.s7{background:#fff0f1;color:#a6313d;border-color:#f2cfd3}.badge.s3,.badge.s4{background:#fff7e5;color:#8a620e;border-color:#f0dfb8}
.issued-tools{background:linear-gradient(180deg,#f9fbfd,#f5f8fb);border-radius:14px}.issued-head-panel{background:linear-gradient(180deg,#fff,#fbfcfe)}
.toast{border-radius:12px;background:#183c5e;box-shadow:0 14px 34px rgba(18,48,76,.22)}
.auth-shell{background:radial-gradient(circle at 20% 20%,#e4f0fc,transparent 35%),linear-gradient(135deg,#f4f8fc,#edf3f9)}.auth-card{border-radius:22px;box-shadow:0 22px 55px rgba(18,43,76,.12)}
@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.nav-accordion{display:flex!important}.nav-group-body{padding-left:7px}.main{padding:0 14px 30px}.topbar{height:auto;padding:18px 0}.topbar h1{font-size:23px}}

/* FIX68 - identidad visual por empresa */
.logo-settings-card{display:flex;gap:18px;align-items:center;padding:18px;margin:0 0 20px;border:1px solid var(--line,#d9e1ea);border-radius:16px;background:linear-gradient(135deg,#f8fbff 0%,#ffffff 100%);box-shadow:0 8px 22px rgba(18,45,78,.05)}
.logo-preview-box{width:150px;height:105px;border:1px dashed #b9c6d6;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto;color:#77869a;font-weight:700}
.logo-preview-box img{max-width:138px;max-height:93px;object-fit:contain;display:block}.logo-settings-copy{flex:1;min-width:0}.logo-settings-copy>strong{font-size:16px}.actions.compact{margin-top:10px;gap:8px}.hidden{display:none!important}
@media(max-width:720px){.logo-settings-card{align-items:stretch;flex-direction:column}.logo-preview-box{width:100%;height:120px}}

/* FIX71 - Tipografia profesional y legibilidad mejorada */
:root{
  --font-ui:"Aptos","Segoe UI Variable","Segoe UI",Arial,sans-serif;
}
html{font-size:16px}
body{font-family:var(--font-ui);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:var(--font-ui);font-size:14px;line-height:1.35}
label{font-size:14px;line-height:1.35;font-weight:700;color:#2f4661}
.hint,.muted{font-size:13px;line-height:1.45}
label small{font-size:12px;line-height:1.4}
.topbar h1{font-size:31px;font-weight:750;letter-spacing:-.028em}
.topbar p{font-size:14px;line-height:1.45}
.panel-head h3{font-size:18px;font-weight:750}
.panel h2,.panel h3{line-height:1.25}
.btn{font-size:14px;font-weight:700;line-height:1.25;padding:10px 15px}
.btn.small{font-size:13px;padding:8px 11px}
.btn.big{font-size:15px;padding:14px 19px}
.brand strong{font-size:16px}.brand span{font-size:12px}
.nav-home,.nav-group>summary{font-size:13px}
.sidebar .nav-group-body button{font-size:14px;line-height:1.35;padding:10px 11px!important}
.side-footer{font-size:13px}
input,select,textarea{padding:11px 12px}
table{font-size:14px;line-height:1.4}
th{font-size:12px;font-weight:800;letter-spacing:.045em;padding:12px 11px}
td{padding:13px 11px}
.issued-table td small{font-size:12px;line-height:1.35}
.badge{font-size:12px;line-height:1.25}
.stat span{font-size:13px}.stat strong{font-size:29px}
.total-panel span,.total-panel small{font-size:13px}.total-panel strong{font-size:36px}
.status-item span{font-size:12px}.status-item strong{font-size:14px}
.exon-summary,.exon-rate,.exon-toggle{font-size:13px}
.toast,.message{font-size:14px;line-height:1.45}
pre{font-size:13px;line-height:1.45}
@media(max-width:760px){body{font-size:14px}.topbar h1{font-size:26px}.sidebar .nav-group-body button{font-size:14px}}


/* FIX72 - navegacion superior desplegable y dashboard de ancho completo */
.app-shell{display:block;min-height:100vh;background:linear-gradient(180deg,#f5f8fc 0,#f3f6fa 260px)}
.sidebar{display:none!important}
.app-header{position:sticky;top:0;z-index:300;background:#fff;box-shadow:0 5px 22px rgba(16,35,63,.09)}
.app-header-primary{min-height:76px;background:linear-gradient(90deg,#152f55 0%,#1d3d6c 58%,#17355e 100%);color:#fff;display:grid;grid-template-columns:minmax(210px,280px) minmax(260px,1fr) auto;align-items:center;gap:24px;padding:12px 30px}
.app-brand-horizontal{display:flex;align-items:center;gap:11px}.app-brand-horizontal .brand-mark{background:linear-gradient(145deg,#2d8ee6,#1767c0);box-shadow:0 7px 18px rgba(0,0,0,.18)}
.app-brand-copy strong{display:block;font-size:16px;letter-spacing:.06em}.app-brand-copy span{display:block;font-size:12px;color:#bfd0e4;margin-top:2px}
.active-company-header{min-width:0;padding-left:20px;border-left:1px solid rgba(255,255,255,.18)}.active-company-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:#9fb7d3;margin-bottom:2px}.active-company-header strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:18px;font-weight:750}.active-company-header small{display:block;color:#bfd0e4;font-size:11px;margin-top:2px}
.header-account{display:flex;align-items:center;justify-content:flex-end;gap:12px}.header-user-copy{min-width:120px;max-width:220px;text-align:right}.header-user-copy span{display:block;font-size:13px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-user-copy small{display:block;color:#b9cce1;font-size:11px;margin-top:2px}.header-logout{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.07);color:#fff;border-radius:8px;padding:8px 12px;cursor:pointer;font-weight:700}.header-logout:hover{background:rgba(255,255,255,.14)}
.app-header .company-switch{display:flex;align-items:center;gap:7px;color:#dce8f6;font-size:11px;font-weight:700}.app-header .company-switch select{width:210px;max-width:22vw;padding:7px 9px;background:#fff;color:#163453;border-radius:8px;font-size:12px}.app-header .env-badge{background:#fff3c8;border-color:#e6ce78;color:#7d5c00;white-space:nowrap}
.top-nav{height:50px;display:flex;align-items:stretch;gap:0;padding:0 24px;background:#fff;border-bottom:1px solid #dfe6ef;overflow:visible}
.top-nav .nav-home,.top-nav .nav-group>summary{height:50px;width:auto!important;padding:0 14px!important;border-radius:0!important;background:#fff!important;color:#1d3048!important;font-size:13px!important;font-weight:750!important;white-space:nowrap;border:0;display:flex;align-items:center;gap:7px;cursor:pointer}
.top-nav .nav-home:hover,.top-nav .nav-home.active,.top-nav .nav-group>summary:hover{background:#f5f8fc!important;color:#0f5cab!important;box-shadow:inset 0 -3px 0 #2b79c2}
.top-nav .nav-group{position:relative;overflow:visible;border-radius:0;margin:0;border:0;padding:0;background:transparent}
.top-nav .nav-group>summary{list-style:none;justify-content:flex-start}.top-nav .nav-group>summary::-webkit-details-marker{display:none}.top-nav .nav-chevron{font-size:12px;color:#8193a8;margin-left:1px;transition:transform .16s}.top-nav .nav-group[open] .nav-chevron{transform:rotate(180deg)}
.top-nav .nav-group-body{position:absolute;top:50px;left:0;min-width:245px;padding:8px;background:#fff;border:1px solid #d9e2ec;border-top:0;box-shadow:0 14px 30px rgba(20,45,76,.16);display:grid;gap:0;z-index:500}
.top-nav .nav-group-body button{width:100%!important;border:0;background:#fff!important;color:#263d58!important;text-align:left;padding:10px 12px!important;border-radius:6px!important;font-size:13px!important;font-weight:600!important;cursor:pointer;border-bottom:1px dotted #d7dee8!important;transform:none!important}
.top-nav .nav-group-body button:last-child{border-bottom:0!important}.top-nav .nav-group-body button:hover,.top-nav .nav-group-body button.active{background:#f1f6fb!important;color:#0d5eac!important}.top-nav .nav-group:has(.nav-group-body button.active)>summary{color:#0f5cab!important;box-shadow:inset 0 -3px 0 #2b79c2}
.top-nav .nav-icon{width:auto;font-size:15px}.top-nav .nav-admin-group{margin:0;padding:0;border-top:0}
.main{width:100%;max-width:none;padding:0 30px 46px}.topbar{height:auto;min-height:92px;padding:20px 0 16px;align-items:flex-end;border-bottom:0}.topbar h1{font-size:28px}.topbar p{margin-top:4px}
.dashboard-welcome{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 24px;margin-bottom:16px;background:linear-gradient(110deg,#fff 0%,#f7fbff 100%);border:1px solid #e0e8f1;border-radius:16px;box-shadow:var(--shadow)}.dashboard-kicker{font-size:11px;font-weight:850;letter-spacing:.1em;color:#4e79a6}.dashboard-welcome h2{font-size:23px;margin:4px 0 3px;color:#173454}.dashboard-welcome p{margin:0}.dashboard-quick-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.dashboard-cards{grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px}.dashboard-cards .stat{min-height:112px;display:flex;flex-direction:column;justify-content:center}.dashboard-cards .stat span{font-size:13px}.dashboard-cards .stat strong{font-size:30px;margin-top:8px}
#view-dashboard .plan-panel,#view-dashboard .panel{margin-bottom:18px}
@media(max-width:1180px){.app-header-primary{grid-template-columns:220px 1fr;gap:12px}.header-account{grid-column:1/-1;justify-content:flex-end;padding-top:7px;border-top:1px solid rgba(255,255,255,.12)}.top-nav{overflow-x:auto;overflow-y:visible}.dashboard-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-header{position:relative}.app-header-primary{display:flex;flex-wrap:wrap;padding:13px 14px}.active-company-header{order:3;width:100%;padding:10px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.15)}.header-account{width:100%;justify-content:space-between;flex-wrap:wrap}.header-user-copy{text-align:left}.app-header .company-switch{width:100%}.app-header .company-switch select{max-width:none;flex:1}.top-nav{padding:0 6px;height:48px}.top-nav .nav-home,.top-nav .nav-group>summary{height:48px;padding:0 10px!important}.top-nav .nav-group-body{top:48px;position:fixed;left:8px;right:8px;min-width:0}.main{padding:0 14px 30px}.dashboard-welcome{align-items:flex-start;flex-direction:column}.dashboard-quick-actions{justify-content:flex-start}.dashboard-cards{grid-template-columns:1fr}.topbar{min-height:78px;padding-top:16px}}

/* FIX73 - Cierre visual: tipografia e iconografia mas grandes */
html{font-size:17px}
body{font-size:16px;line-height:1.5}
button,input,select,textarea{font-size:15px;line-height:1.4}
label{font-size:15px;line-height:1.4}
.hint,.muted{font-size:14px;line-height:1.5}
label small{font-size:13px}

/* Cabecera */
.app-brand-copy strong{font-size:18px}
.app-brand-copy span{font-size:13px}
.active-company-kicker{font-size:11px}
.active-company-header strong{font-size:20px}
.active-company-header small{font-size:13px}
.header-user-copy span{font-size:14px}
.header-user-copy small{font-size:12px}
.header-logout{font-size:14px;padding:9px 14px}
.app-header .company-switch{font-size:12px}
.app-header .company-switch select{font-size:13px}

/* Menu superior */
.top-nav{height:56px}
.top-nav .nav-home,.top-nav .nav-group>summary{height:56px;font-size:15px!important;font-weight:800!important;padding:0 17px!important;gap:9px}
.top-nav .nav-icon{font-size:20px;line-height:1}
.top-nav .nav-chevron{font-size:14px}
.top-nav .nav-group-body{top:56px;min-width:270px;padding:9px}
.top-nav .nav-group-body button{font-size:15px!important;line-height:1.4;padding:12px 14px!important}

/* Titulos y contenido */
.topbar h1{font-size:32px}
.topbar p{font-size:15px}
.panel-head h3{font-size:20px}
.btn{font-size:15px;padding:11px 16px}
.btn.small{font-size:14px;padding:9px 12px}
.btn.big{font-size:16px;padding:14px 20px}
input,select,textarea{padding:12px 13px}
table{font-size:15px}
th{font-size:13px;padding:13px 12px}
td{padding:14px 12px}
.badge{font-size:13px;padding:5px 9px}
.icon-btn{font-size:28px}
.issued-icon{font-size:14px;min-width:42px;min-height:38px}

/* Dashboard */
.dashboard-kicker{font-size:12px}
.dashboard-welcome h2{font-size:26px}
.dashboard-welcome p{font-size:15px}
.dashboard-cards .stat span{font-size:14px}
.dashboard-cards .stat strong{font-size:33px}
.stat span{font-size:14px}.stat strong{font-size:32px}
.total-panel span,.total-panel small{font-size:14px}.total-panel strong{font-size:39px}

@media(max-width:760px){
  html{font-size:16px}
  body{font-size:15px}
  .top-nav{height:52px}
  .top-nav .nav-home,.top-nav .nav-group>summary{height:52px;font-size:14px!important;padding:0 12px!important}
  .top-nav .nav-icon{font-size:18px}
  .top-nav .nav-group-body{top:52px}
  .top-nav .nav-group-body button{font-size:14px!important}
  .topbar h1{font-size:28px}
}

/* FIX74 - identidad visual aprobada: dashboard ejecutivo, soporte y navegacion superior TRICONTA */
:root{
  --tr-navy:#061f42;
  --tr-navy-2:#0b2d59;
  --tr-teal:#08a58d;
  --tr-teal-soft:#e5f7f3;
  --tr-gold:#eba315;
  --tr-gold-soft:#fff5dd;
  --tr-orange:#f26a3d;
  --tr-orange-soft:#fff0ea;
  --tr-blue:#176ed1;
  --tr-blue-soft:#eaf3ff;
  --tr-purple:#7352d7;
  --tr-purple-soft:#f1edff;
  --tr-green:#098a6c;
  --tr-surface:#ffffff;
  --tr-bg:#f7f9fc;
  --tr-border:#e3e8ef;
  --tr-text:#142a46;
  --tr-muted:#66788f;
  --tr-shadow:0 8px 26px rgba(15,42,74,.08);
}
body{background:var(--tr-bg);color:var(--tr-text);font-family:Aptos,"Segoe UI Variable","Segoe UI",Arial,sans-serif}
.app-shell{background:var(--tr-bg)}
.app-header{position:sticky;top:0;z-index:400;background:var(--tr-navy);box-shadow:0 4px 18px rgba(1,20,47,.20)}
.app-header-primary{min-height:88px;background:linear-gradient(100deg,#041a38 0%,#072650 60%,#071e40 100%);grid-template-columns:minmax(255px,330px) minmax(340px,1fr) auto;padding:12px 28px;border-bottom:1px solid rgba(255,255,255,.14)}
.app-brand-horizontal{cursor:pointer;display:flex;align-items:center;gap:13px;min-width:0}
.triconta-symbol{position:relative;width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#12b8a0,#087a80);box-shadow:inset -10px -8px 0 rgba(0,47,70,.30),0 7px 18px rgba(0,0,0,.18)}
.triconta-symbol:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#071f43;right:-2px;top:-1px;border:5px solid #fff;box-sizing:border-box}
.triconta-symbol span{position:absolute;left:8px;bottom:6px;width:22px;height:7px;background:#071f43;border-radius:8px 50% 50% 8px;transform:rotate(28deg)}
.app-brand-copy strong{font-size:25px;font-weight:850;letter-spacing:.025em;line-height:1;color:#fff}.app-brand-copy strong em{font-style:normal;color:var(--tr-gold);font-weight:900}.app-brand-copy span{font-size:12px;letter-spacing:.08em;color:#d9e6f6;margin-top:5px;font-weight:700}
.active-company-header{border-left:0;padding-left:0;text-align:center}.active-company-kicker{display:none}.active-company-header strong{font-size:23px;font-weight:820;letter-spacing:.01em;color:#fff}.active-company-header small{font-size:12px;color:#d5e0ef;margin-top:4px}
.header-account{gap:10px}.header-user-copy{min-width:96px;text-align:left}.header-user-copy span{font-size:14px;color:#fff}.header-user-copy small{font-size:12px;color:#c6d5e8}.user-avatar{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#13ad95,#07807b);font-size:16px;font-weight:850;color:#fff;box-shadow:0 4px 14px rgba(2,19,43,.22)}
.header-notification{position:relative;width:42px;height:42px;border:0;background:transparent;color:#fff;border-radius:50%;cursor:pointer;padding:8px}.header-notification:hover{background:rgba(255,255,255,.09)}.header-notification svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notification-badge{position:absolute;right:0;top:0;min-width:19px;height:19px;border-radius:10px;background:#f6c64f;color:#493300;font-size:11px;font-weight:900;display:grid;place-items:center;border:2px solid #071f43;padding:0 3px}
.header-logout{border:0;background:transparent;padding:10px 7px;font-size:13px}.header-logout:hover{background:rgba(255,255,255,.08)}
.app-header .env-badge{font-size:11px;padding:5px 8px;border-radius:14px;background:#fff1bf;border:1px solid #f0d477;color:#6b5100}.app-header .company-switch{font-size:11px}.app-header .company-switch select{font-size:12px;max-width:180px}

.top-nav{height:72px;background:linear-gradient(90deg,#08234a,#0a2d5a);border-bottom:0;padding:0 26px;align-items:stretch;box-shadow:0 3px 8px rgba(8,34,70,.12)}
.top-nav .nav-home,.top-nav .nav-group>summary{height:72px!important;background:transparent!important;color:#fff!important;border-right:1px solid rgba(255,255,255,.10)!important;padding:0 25px!important;font-size:16px!important;font-weight:760!important;gap:11px;transition:background .18s,color .18s,box-shadow .18s}
.top-nav .nav-home{min-width:82px!important}.top-nav .nav-home-label{font-size:0}.top-nav .nav-home-label:after{content:""}.top-nav .nav-home:hover,.top-nav .nav-home.active,.top-nav .nav-group>summary:hover{background:rgba(255,255,255,.035)!important;color:#fff!important;box-shadow:inset 0 -4px 0 var(--tr-teal)}
.top-nav .nav-group:has(.nav-group-body button.active)>summary{color:#fff!important;box-shadow:inset 0 -4px 0 var(--tr-teal);background:rgba(255,255,255,.035)!important}
.top-nav .nav-svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 27px}.top-nav .nav-home .nav-svg{width:27px;height:27px}.top-nav .nav-chevron{font-size:15px;color:#dbe6f4}.top-nav .nav-group-body{top:72px;min-width:285px;padding:8px 16px 10px;background:#fff;border:1px solid #d8e0ea;border-top:0;border-radius:0 0 5px 5px;box-shadow:0 15px 34px rgba(7,31,65,.18)}
.top-nav .nav-group-body button{font-size:15px!important;font-weight:520!important;color:#263a53!important;padding:13px 4px!important;border-radius:0!important;border-bottom:1px dotted #ccd5df!important}.top-nav .nav-group-body button:hover,.top-nav .nav-group-body button.active{background:#f6f9fc!important;color:#057f79!important;padding-left:9px!important}

.main{padding:0 34px 34px;max-width:none}.topbar{min-height:88px;padding:18px 0 12px}.topbar h1{font-size:30px}.topbar p{font-size:15px;color:var(--tr-muted)}
body.dashboard-mode .topbar{display:none}
body.dashboard-mode .main{padding-top:0}
#view-dashboard{padding-top:24px}
.dashboard-intro-row{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin:0 2px 22px}.dashboard-intro-row h2{font-size:26px;line-height:1.15;margin:0;color:#102a4d;font-weight:820}.dashboard-intro-row p{font-size:15px;color:var(--tr-muted);margin:6px 0 0}.dashboard-period-tools{display:flex;align-items:center;gap:11px}.period-kicker{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:8px;background:#e5f6f1;color:#087463;font-size:14px;font-weight:750}.period-select{display:inline-flex;align-items:center;height:40px;min-width:150px;padding:0 16px;border:1px solid #dfe5ec;border-radius:8px;background:#fff;font-size:14px;font-weight:650;color:#263b56}.dashboard-filter-btn{height:40px!important;padding:0 15px!important;background:#fff!important;color:#24405f!important;border:1px solid #dfe5ec!important}
.dashboard-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:18px;margin-bottom:18px}.dashboard-metric-card{appearance:none;text-align:left;border:1px solid var(--tr-border);background:#fff;border-radius:13px;padding:18px 18px 14px;min-height:145px;display:grid;grid-template-columns:78px 1fr;gap:15px;align-items:start;box-shadow:var(--tr-shadow);cursor:pointer;transition:transform .15s,box-shadow .15s}.dashboard-metric-card:hover{transform:translateY(-2px);box-shadow:0 12px 31px rgba(15,42,74,.12)}.metric-icon{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:800}.metric-docs .metric-icon{background:var(--tr-teal-soft);color:var(--tr-teal)}.metric-income .metric-icon{background:var(--tr-gold-soft);color:#d98f00}.metric-purchases .metric-icon{background:var(--tr-orange-soft);color:var(--tr-orange)}.metric-receivable .metric-icon{background:var(--tr-blue-soft);color:var(--tr-blue)}.metric-copy{display:flex;flex-direction:column;min-width:0}.metric-copy small{font-size:14px;font-style:normal;font-weight:760;color:#19324e}.metric-copy strong{font-size:27px;line-height:1.15;margin:7px 0 2px;color:#0a916f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-purchases .metric-copy strong{color:#ef552f}.metric-receivable .metric-copy strong{color:#0c54af}.metric-copy em{font-size:13px;font-style:normal;color:#697c92;margin-top:2px}.metric-copy b{font-size:13px;color:#087a75;margin-top:12px;font-weight:700}.info-dot{font-style:normal;display:inline-grid;place-items:center;width:16px;height:16px;border:1px solid #91a2b5;border-radius:50%;font-size:10px;color:#71849a;margin-left:3px}
.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(310px,.95fr) minmax(300px,.95fr);gap:18px;margin-bottom:18px}.dashboard-card{background:#fff;border:1px solid var(--tr-border);border-radius:13px;box-shadow:var(--tr-shadow);overflow:hidden}.dashboard-card-head{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 8px}.dashboard-card-head h3{font-size:16px;margin:0;font-weight:800;color:#1d3048}.chart-legend{display:flex;gap:16px;font-size:12px;font-weight:650;color:#53677e}.chart-legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:20px;height:5px;border-radius:5px;display:inline-block}.legend-dot.income{background:var(--tr-teal)}.legend-dot.purchases{background:var(--tr-gold)}
.dashboard-chart-wrap{height:285px;padding:0 12px 12px}.dashboard-chart{width:100%;height:100%;overflow:visible}.chart-grid-line{stroke:#dce3eb;stroke-width:1}.chart-axis-label{fill:#687a90;font-size:12px;font-family:Aptos,"Segoe UI",Arial,sans-serif}.chart-line{fill:none;stroke-width:2.4;vector-effect:non-scaling-stroke}.chart-income{stroke:var(--tr-teal)}.chart-purchases{stroke:var(--tr-gold)}.chart-point-income{fill:var(--tr-teal)}.chart-point-purchases{fill:#f09c00}
.monthly-summary{padding:0 16px 16px}.monthly-summary>div{min-height:48px;display:grid;grid-template-columns:33px 1fr auto;align-items:center;gap:9px;border:1px solid #e4e9ef;border-bottom:0;padding:7px 10px}.monthly-summary>div:first-child{border-radius:7px 7px 0 0}.monthly-summary>div:last-child{border-bottom:1px solid #e4e9ef;border-radius:0 0 7px 7px}.monthly-summary>div>span:not(.sum-icon){font-size:13px;color:#425873}.monthly-summary strong{font-size:13px;color:#1b2e47}.monthly-summary .positive{color:#07896d}.monthly-summary .negative{color:#ef542f}.monthly-summary .blue-value{color:#1357b4}.sum-icon{width:26px;height:26px;border-radius:6px;display:grid;place-items:center;font-size:14px;font-weight:800}.sum-icon.teal{background:#e4f7f4;color:#079b88}.sum-icon.green{background:#e8f8f0;color:#078965}.sum-icon.orange{background:#fff0ea;color:#ee6440}.sum-icon.blue{background:#eaf3ff;color:#1668c5}.sum-icon.gold{background:#fff5df;color:#d78e00}
.activity-content{padding:0 16px 16px;min-height:285px}.activity-empty{min-height:255px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.activity-doc-icon{width:70px;height:70px;border-radius:14px;background:#f5f7fa;border:1px solid #e1e6ed;display:grid;place-items:center;font-size:28px;color:#0b9d83;margin-bottom:14px}.activity-empty strong{font-size:15px}.activity-empty p{max-width:235px;margin:6px auto 16px;font-size:13px;color:#66798f;line-height:1.5}.activity-list{display:grid;gap:7px}.activity-list button{border:1px solid #e4e9ef;background:#fff;border-radius:8px;padding:10px;display:grid;grid-template-columns:18px 1fr auto;gap:8px;text-align:left;align-items:center;cursor:pointer}.activity-list button:hover{background:#f7fafc}.activity-list span strong{display:block;font-size:12px}.activity-list span small{display:block;color:#78899b;font-size:11px;margin-top:2px}.activity-list b{font-size:12px}.activity-status{font-size:12px}.activity-status.s5{color:#089679}.activity-status.s6,.activity-status.s7{color:#e34d31}.activity-all{margin-top:12px;width:100%}
.dashboard-bottom-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,.95fr);gap:18px;margin-bottom:18px}.quick-actions-card{padding-bottom:16px}.quick-action-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;padding:0 16px}.quick-action{min-height:94px;border:1px solid #e1e7ee;border-radius:11px;background:#fff;display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center;text-align:left;padding:12px;cursor:pointer;transition:transform .14s,background .14s}.quick-action:hover{transform:translateY(-2px);background:#fbfcfe}.qa-icon{width:48px;height:48px;border-radius:10px;display:grid;place-items:center;font-size:24px;font-weight:800}.qa-teal .qa-icon{background:#e7f7f4;color:#058b79}.qa-gold .qa-icon{background:#fff6e1;color:#d88b00}.qa-purple .qa-icon{background:#f0edff;color:#6c4bd4}.qa-green .qa-icon{background:#e9f8f3;color:#087c63}.qa-blue .qa-icon{background:#eaf3ff;color:#1767c5}.quick-action strong{display:block;font-size:13px;color:#19304c}.quick-action small{display:block;font-size:11px;color:#6a7b8f;line-height:1.4;margin-top:4px}
.support-card{min-height:178px;border-radius:12px;background:linear-gradient(135deg,#075d68 0%,#054f67 48%,#073760 100%);color:#fff;padding:24px 20px;display:grid;grid-template-columns:88px 1fr;gap:15px;align-items:center;box-shadow:0 12px 28px rgba(4,48,81,.20)}.support-headset{position:relative;width:78px;height:78px;border-radius:50%;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center}.support-headset:before{content:"";width:38px;height:34px;border:4px solid #fff;border-bottom:0;border-radius:22px 22px 8px 8px;box-sizing:border-box}.support-headset:after{content:"";position:absolute;width:10px;height:18px;border:4px solid #fff;border-left:0;border-radius:0 8px 8px 0;right:15px;bottom:20px}.support-copy strong{display:block;font-size:16px}.support-copy p{font-size:12px;line-height:1.55;color:#e2eef2;margin:6px 0 12px}.support-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.support-button{min-height:36px;padding:0 10px;border-radius:6px;font-weight:800;font-size:12px;cursor:pointer;transition:.15s}.support-button.primary-support{grid-column:1/-1;border:0;background:#fff;color:#15324e;box-shadow:0 3px 8px rgba(0,0,0,.16)}.support-button.primary-support:hover{background:#f4fbfa}.support-button.outline-support{border:1px solid rgba(255,255,255,.52);background:rgba(255,255,255,.06);color:#fff}.support-button.outline-support:hover{background:rgba(255,255,255,.14)}.support-dialog-card{width:min(780px,94vw)}.support-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.support-guide-grid button{border:1px solid #dfe6ee;background:#fff;border-radius:10px;padding:15px;text-align:left;cursor:pointer}.support-guide-grid button:hover{background:#f6fafc;border-color:#9bcfc9}.support-guide-grid strong{display:block;color:#17324f;font-size:15px}.support-guide-grid span{display:block;color:#66798f;font-size:13px;line-height:1.45;margin-top:5px}.support-faq-list{display:grid;gap:8px}.support-faq-list details{border:1px solid #dfe6ee;border-radius:9px;background:#fff;padding:0 14px}.support-faq-list summary{cursor:pointer;font-weight:760;color:#17324f;padding:13px 0}.support-faq-list p{margin:0 0 14px;color:#52677e;font-size:14px;line-height:1.55}
.dashboard-technical-strip{display:grid;grid-template-columns:1.3fr 1fr;gap:18px}.dashboard-technical-strip .panel{margin:0!important;box-shadow:var(--tr-shadow);border-radius:12px}.dashboard-technical-strip .status-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}

/* Footer visual similar al concepto aprobado */
.app-shell:after{content:"TRICONTA FE © 2026   |   Todos los derechos reservados                                      Versión FIX74                                      Conexión segura  ●";display:block;background:#061f42;color:#cbd8e8;min-height:54px;padding:17px 34px;font-size:12px;letter-spacing:.01em;white-space:pre;overflow:hidden}

@media(max-width:1450px){.top-nav .nav-home,.top-nav .nav-group>summary{padding:0 16px!important;font-size:15px!important}.dashboard-main-grid{grid-template-columns:minmax(0,1.8fr) minmax(290px,.9fr)}.dashboard-activity-card{grid-column:1/-1}.dashboard-metric-grid{grid-template-columns:repeat(2,1fr)}.quick-action-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1080px){.app-header-primary{grid-template-columns:220px 1fr}.header-account{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.10);padding-top:8px}.top-nav{overflow-x:auto;overflow-y:visible}.dashboard-main-grid,.dashboard-bottom-grid,.dashboard-technical-strip{grid-template-columns:1fr}.dashboard-activity-card{grid-column:auto}.quick-action-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.app-header-primary{display:flex;flex-wrap:wrap;padding:12px 14px}.app-brand-copy strong{font-size:20px}.active-company-header{width:100%;order:3;text-align:left;border-top:1px solid rgba(255,255,255,.12);padding-top:8px}.active-company-header strong{font-size:18px}.header-account{width:100%;justify-content:flex-start;flex-wrap:wrap}.top-nav{height:60px;padding:0 4px}.top-nav .nav-home,.top-nav .nav-group>summary{height:60px!important;padding:0 12px!important;font-size:14px!important}.top-nav .nav-svg{width:23px;height:23px}.top-nav .nav-group-body{top:60px;position:fixed;left:8px;right:8px;min-width:0}.main{padding:0 14px 24px}.dashboard-intro-row{flex-direction:column}.dashboard-period-tools{width:100%;flex-wrap:wrap}.dashboard-metric-grid{grid-template-columns:1fr}.dashboard-metric-card{grid-template-columns:64px 1fr}.metric-icon{width:58px;height:58px}.dashboard-main-grid{grid-template-columns:1fr}.quick-action-grid{grid-template-columns:1fr}.support-card{grid-template-columns:70px 1fr}.support-headset{width:62px;height:62px}.support-actions{grid-template-columns:1fr}.support-button.primary-support{grid-column:auto}.support-guide-grid{grid-template-columns:1fr}.dashboard-technical-strip .status-grid{grid-template-columns:1fr 1fr}.app-shell:after{white-space:normal;line-height:1.5;padding:16px}}

/* FIX75 - Sistema visual uniforme de modulos internos. Dashboard FIX74 se conserva sin cambios. */
:root{
  --module-accent:#089c86;
  --module-accent-dark:#067563;
  --module-accent-soft:#e9f8f4;
  --module-navy:#0a2a51;
  --module-blue:#176fd2;
  --module-orange:#f59b19;
  --module-red:#e45432;
  --module-purple:#7256d9;
  --module-card:#fff;
  --module-border:#dfe7ef;
  --module-bg:#f6f8fb;
  --module-text:#122943;
  --module-muted:#6b7d92;
  --module-shadow:0 10px 28px rgba(18,49,83,.08);
}

/* No modificar el dashboard aprobado: los siguientes estilos solo aplican a modulos internos. */
.view:not(#view-dashboard){color:var(--module-text)}
.view:not(#view-dashboard)>.panel,
.view:not(#view-dashboard)>.grid2>.panel,
.view:not(#view-dashboard)>details.panel{
  border:1px solid var(--module-border);
  border-radius:16px;
  background:var(--module-card);
  box-shadow:var(--module-shadow);
}
.view:not(#view-dashboard) .panel{border-color:var(--module-border);border-radius:16px;box-shadow:var(--module-shadow)}
.view:not(#view-dashboard) .panel-head{gap:18px;align-items:center;margin-bottom:18px}
.view:not(#view-dashboard) .panel-head h3{font-size:21px;font-weight:820;letter-spacing:-.01em;color:var(--module-navy);margin:0}
.view:not(#view-dashboard) .panel-head p{font-size:14px;color:var(--module-muted);margin:4px 0 0}
.view:not(#view-dashboard) label{font-size:15px;font-weight:760;color:#1a3553;gap:7px}
.view:not(#view-dashboard) label small{font-size:13px;font-weight:500;color:var(--module-muted)}
.view:not(#view-dashboard) input,
.view:not(#view-dashboard) select,
.view:not(#view-dashboard) textarea{
  min-height:46px;
  border:1px solid #ccd9e6;
  border-radius:10px;
  background:#fff;
  color:#102a47;
  font-size:15.5px;
  padding:11px 13px;
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.view:not(#view-dashboard) textarea{min-height:92px}
.view:not(#view-dashboard) input:focus,
.view:not(#view-dashboard) select:focus,
.view:not(#view-dashboard) textarea:focus{
  outline:none;
  border-color:#43b7a6;
  box-shadow:0 0 0 4px rgba(8,156,134,.10);
}
.view:not(#view-dashboard) .btn{
  min-height:42px;
  border-radius:9px;
  padding:10px 15px;
  font-size:14.5px;
  font-weight:760;
  border:1px solid #cfdbe7;
  background:#fff;
  color:#173754;
  box-shadow:none;
  transition:transform .12s,box-shadow .12s,border-color .12s,background .12s;
}
.view:not(#view-dashboard) .btn:hover{transform:translateY(-1px);border-color:#9fb5c9;background:#f9fbfd;box-shadow:0 5px 13px rgba(20,52,86,.08)}
.view:not(#view-dashboard) .btn.primary{
  border-color:var(--module-accent);
  background:linear-gradient(135deg,#0ca78f,#078c78);
  color:#fff;
  box-shadow:0 7px 16px rgba(8,156,134,.20);
}
.view:not(#view-dashboard) .btn.primary:hover{background:linear-gradient(135deg,#0db39a,#07836f);box-shadow:0 9px 20px rgba(8,156,134,.26)}
.view:not(#view-dashboard) .btn.big{min-height:49px;padding:12px 21px;font-size:16px}
.view:not(#view-dashboard) .btn.small{min-height:36px;padding:7px 11px;font-size:13.5px}
.view:not(#view-dashboard) .hint,.view:not(#view-dashboard) .muted{font-size:13.5px;color:var(--module-muted)}
.view:not(#view-dashboard) .search{min-height:48px;border-radius:11px;margin-bottom:15px;padding-left:15px}
.view:not(#view-dashboard) .table-wrap{border:1px solid #e1e8ef;border-radius:12px;overflow:auto;background:#fff}
.view:not(#view-dashboard) table{font-size:14.5px;border-collapse:separate;border-spacing:0}
.view:not(#view-dashboard) th{font-size:12.5px;font-weight:820;letter-spacing:.025em;text-transform:uppercase;color:#63768d;background:#f4f7fa;padding:13px 12px;border-bottom:1px solid #dfe7ee}
.view:not(#view-dashboard) td{padding:13px 12px;border-bottom:1px solid #edf1f5;color:#1d3856;vertical-align:middle}
.view:not(#view-dashboard) tbody tr:last-child td{border-bottom:0}
.view:not(#view-dashboard) tbody tr:hover td{background:#fbfdfd}
.view:not(#view-dashboard) .badge{border-radius:999px;font-weight:780;padding:5px 9px}
.view:not(#view-dashboard) .reference-box{border-radius:12px;background:#f7fafc;border-color:#dce6ef;padding:14px}
.view:not(#view-dashboard) .actions{gap:10px}
.view:not(#view-dashboard) .row-actions{gap:8px}
.view:not(#view-dashboard) dialog .dialog-card{border-radius:18px;border:1px solid var(--module-border);box-shadow:0 24px 70px rgba(7,32,62,.24)}

/* Facturador: pantalla principal de trabajo */
#view-emitir{--module-accent:#079b84;display:none}
#view-emitir.active{display:block}
#view-emitir>.grid2{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:18px;
  align-items:start;
}
#view-emitir>.grid2>.panel:first-child{padding:22px}
#view-emitir>.grid2>.panel:first-child .panel-head{padding-bottom:14px;border-bottom:1px solid #edf1f5;margin-bottom:18px}
#view-emitir .form-grid{gap:15px 18px}
#view-emitir .client-picker{gap:8px}
#view-emitir .client-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
#view-emitir .compact-details{
  margin-top:12px;
  border:1px solid #dfe7ef;
  border-radius:11px;
  background:#fbfcfe;
  overflow:hidden;
}
#view-emitir .compact-details>summary{min-height:48px;padding:0 14px;font-size:14.5px;font-weight:760;color:#173653;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}
#view-emitir .compact-details>summary:hover{background:#f5faf9}
#view-emitir .compact-details[open]>summary{background:var(--module-accent-soft);color:#066f60}
#view-emitir .compact-details-body{padding:15px;border-top:1px solid #e2ebe9;background:#fff}
#view-emitir .total-panel{
  position:sticky;
  top:166px;
  min-height:330px;
  padding:22px;
  background:linear-gradient(180deg,#fbfffe 0%,#f4fbf9 100%);
  border-color:#cfe8e2;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  text-align:left;
}
#view-emitir .total-panel:before{content:"Resumen del comprobante";font-size:19px;font-weight:830;color:var(--module-navy);margin-bottom:30px}
#view-emitir .total-panel>span{font-size:12px!important;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#6d8195}
#view-emitir .total-panel>strong{font-size:39px!important;line-height:1.15;margin:8px 0 17px;color:#07365b}
#view-emitir .total-panel>small:not(.hint){display:block;padding:9px 0;border-top:1px solid #dceae7;font-size:14px!important;color:#647a8e}
#view-emitir .total-panel .hint{margin-top:18px;padding:13px;border-radius:10px;background:#fff7e6;border:1px solid #f1d99f;color:#80601c;line-height:1.45}
#view-emitir>.panel:not(.final-submit-panel),#view-emitir>details.panel{padding:20px;margin-top:16px}
#view-emitir>.panel>.panel-head h3,#view-emitir>details.panel h3{font-size:19px}
#view-emitir .lines th{background:#f3f7fa}
#view-emitir .lines td{vertical-align:top}
#view-emitir .lines input,#view-emitir .lines select{min-height:39px;font-size:13.5px;padding:8px 9px}
#view-emitir .lines .detail{margin-top:7px}
#view-emitir .tax-auto{border-radius:9px;padding:8px 9px}
#view-emitir .collapsible-panel{overflow:hidden}
#view-emitir .collapsible-panel>summary{padding:18px 20px;background:#fff;cursor:pointer}
#view-emitir .collapsible-panel[open]>summary{background:#f7fbfa;border-bottom:1px solid #e4ecea}
#view-emitir .collapsible-panel-body{padding:18px 20px}
#view-emitir .payment-row{border:1px solid #e0e8ef;border-radius:11px;background:#fbfcfd;padding:13px}
#view-emitir .final-submit-panel{
  margin-top:16px;
  padding:17px 20px!important;
  border-color:#cce6e0!important;
  background:linear-gradient(100deg,#f7fcfb 0%,#ffffff 65%)!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
#view-emitir .final-submit-panel strong{font-size:18px;color:#123251}
#view-emitir .final-submit-panel p{margin:5px 0 0;max-width:800px}
#view-emitir #finalDocButton{min-width:185px}
#view-emitir .plan-badge{border-radius:999px;padding:7px 11px;background:#eef8ff;border:1px solid #cfe5f5;color:#246289;font-weight:780}

/* Emitidos y recepción: mismos encabezados y barras de herramientas */
#view-comprobantes .issued-head-panel,#view-recibidos>.panel:first-child{padding:22px}
#view-comprobantes .issued-tools,#view-recibidos .received-tools{border:1px solid #dfe7ef;border-radius:12px;background:#f8fafc;padding:14px 15px;margin:14px 0}
#view-comprobantes .issued-search-bar,#view-recibidos .issued-search-bar{border:1px solid #e1e8ef;border-radius:12px;background:#fbfcfd;padding:13px;gap:12px}

/* Catálogos y configuración */
#view-clientes>.panel,#view-productos>.panel,#view-empresa>.panel,#view-hacienda>.panel,#view-auditoria>.panel,#view-admin>.panel,#view-saas>.panel,#view-mantenimiento>.panel,#view-recibidos>.panel{padding:22px;margin-bottom:18px}
#view-clientes .panel-head,#view-productos .panel-head,#view-empresa .panel-head,#view-hacienda .panel-head,#view-auditoria .panel-head,#view-admin .panel-head,#view-saas .panel-head,#view-mantenimiento .panel-head{padding-bottom:14px;border-bottom:1px solid #edf1f5}
#view-productos>.panel:first-child{border-top:4px solid var(--module-purple)}
#view-productos>.panel:nth-child(2){border-top:4px solid var(--module-accent)}
#view-clientes>.panel{border-top:4px solid #2876cf}
#view-recibidos>.panel:first-child{border-top:4px solid #ef9c1a}
#view-empresa>.panel{border-top:4px solid var(--module-accent)}
#view-hacienda>.panel{border-top:4px solid #176fd2}
#view-auditoria>.panel,#view-mantenimiento>.panel{border-top:4px solid #67778a}
#view-admin>.panel{border-top:4px solid #0b2d59}

@media(max-width:1180px){
  #view-emitir>.grid2{grid-template-columns:1fr}
  #view-emitir .total-panel{position:relative;top:auto;min-height:0}
  #view-emitir .total-panel:before{margin-bottom:15px}
}
@media(max-width:760px){
  .view:not(#view-dashboard)>.panel,.view:not(#view-dashboard)>.grid2>.panel,.view:not(#view-dashboard)>details.panel{border-radius:13px}
  #view-emitir>.grid2>.panel:first-child,#view-clientes>.panel,#view-productos>.panel,#view-empresa>.panel,#view-hacienda>.panel,#view-auditoria>.panel,#view-admin>.panel,#view-saas>.panel,#view-mantenimiento>.panel,#view-recibidos>.panel{padding:15px}
  #view-emitir .final-submit-panel{align-items:stretch;flex-direction:column}
  #view-emitir #finalDocButton{width:100%}
}

/* FIX76 - Facturador visual premium basado en la maqueta aprobada. Dashboard FIX74 intacto. */
#view-emitir{--emit-teal:#079b84;--emit-teal-dark:#067a69;--emit-navy:#0a2d56;--emit-soft:#eef9f7;--emit-border:#dce6ed;--emit-muted:#687d92}
#view-emitir .emit-workspace-head{display:grid;grid-template-columns:minmax(320px,1fr) minmax(360px,520px) auto;align-items:center;gap:22px;margin:0 0 18px;padding:0 2px}
#view-emitir .emit-title-wrap{display:flex;align-items:center;gap:14px}.emit-title-icon{width:48px;height:48px;border-radius:12px;background:#e7f8f4;color:var(--emit-teal);display:grid;place-items:center;font-size:28px;font-weight:900}.emit-title-wrap h2{margin:0;color:var(--emit-navy);font-size:30px;line-height:1.05}.emit-title-wrap p{margin:6px 0 0;color:var(--emit-muted);font-size:15px}
#view-emitir .emit-company-card{position:relative;border:1px solid var(--emit-border);border-radius:14px;background:#fff;padding:12px 46px 12px 18px;box-shadow:0 5px 18px rgba(18,48,78,.07);display:grid;gap:3px}.emit-company-card small{font-size:12px;font-weight:800;color:#118a76;padding-left:15px}.emit-company-card strong{font-size:18px;color:#173552}.emit-company-card>span:last-child{font-size:13px;color:#6d8092}.company-status-dot{position:absolute;left:18px;top:16px;width:9px;height:9px;border-radius:50%;background:#14a88e}.emit-preview-btn{min-height:46px;padding:0 20px;font-size:15px;font-weight:800;border-radius:10px;background:#fff}
#view-emitir>.emit-grid{grid-template-columns:minmax(0,1fr) 330px;gap:20px}.emit-main-card{border-radius:16px!important;padding:20px!important;box-shadow:0 8px 28px rgba(16,43,72,.08)!important}.emit-main-card .panel-head h3{font-size:21px!important}.emit-main-card .hint{font-size:13.5px}
#view-emitir .form-grid{grid-template-columns:1.05fr 1.35fr;gap:16px 18px}#view-emitir label{font-size:14px;font-weight:760;color:#203c5c}#view-emitir input,#view-emitir select,#view-emitir textarea{font-size:15px;min-height:44px;border-radius:9px;border-color:#cad8e5;padding:10px 12px}#view-emitir input:focus,#view-emitir select:focus,#view-emitir textarea:focus{border-color:#63b8aa;box-shadow:0 0 0 3px rgba(7,155,132,.12)}
#view-emitir .client-actions .btn{min-height:40px;font-size:14px;border-color:#9bd6cc;color:#077664;background:#fbfffe}#view-emitir .client-actions .btn:hover{background:#eefaf7}
#view-emitir .compact-details{border-radius:10px;border-color:#dce6ed;background:#fff}#view-emitir .compact-details>summary{min-height:52px;font-size:15px;padding:0 15px}#view-emitir .compact-details>summary:before{content:'▣';color:var(--emit-teal);font-size:18px;margin-right:8px}#view-emitir .compact-details>summary span:first-child{margin-right:auto}
#view-emitir .emit-side-stack{display:grid;gap:14px;align-self:start;position:sticky;top:166px}.emit-side-stack .panel{margin:0}.emit-side-stack .total-panel{position:relative;top:auto;min-height:0;display:block;padding:20px;border-radius:15px;background:#fff;border:1px solid var(--emit-border);box-shadow:0 8px 28px rgba(16,43,72,.08)}#view-emitir .total-panel:before{content:none}.emit-side-stack .total-panel>h3{margin:0 0 18px;font-size:19px;color:var(--emit-navy)}.emit-total-box{background:linear-gradient(135deg,#f2fbf9,#edf8f6);border:1px solid #a9ddd3;border-radius:10px;padding:16px 16px 14px;margin-bottom:14px}.emit-total-box span{display:block;color:#274866;font-size:12px;font-weight:850;letter-spacing:.02em}.emit-total-box strong{display:block;color:#082f56;font-size:34px!important;margin:8px 0 0!important}.emit-total-row{display:flex;align-items:center;justify-content:space-between;padding:8px 2px;color:#677b91;font-size:14px}.emit-total-row b{color:#183653;font-size:14px}.emit-total-final{margin-top:6px;padding:11px 12px;border-radius:8px;background:#e9f8f5;color:#087b68;font-size:17px;font-weight:850}.emit-total-final b{font-size:20px;color:#07816d}.emit-warning{margin-top:16px;display:flex;gap:10px;align-items:flex-start;padding:13px;border-radius:9px;background:#fff7e9;border:1px solid #f2d595;color:#765819;font-size:13px;line-height:1.45}.emit-warning:first-letter{color:#f0a113}.emit-tax-legacy{display:none!important}
#view-emitir .emit-meta-panel{padding:16px;border-radius:15px;background:#fff;border:1px solid var(--emit-border);box-shadow:0 8px 24px rgba(16,43,72,.06)}.emit-meta-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #e8eef3;font-size:13px}.emit-meta-row span{font-weight:800;color:#27415f}.emit-meta-row b{color:#0b9179;font-size:12px}.emit-meta-panel label{margin-top:10px}.emit-meta-panel input{min-height:42px}
#view-emitir .emit-detail-card{padding:18px!important;border-radius:15px!important}.emit-detail-card .panel-head{margin-bottom:12px}.emit-detail-card .panel-head h3{font-size:20px!important}.emit-add-line{background:linear-gradient(135deg,#0aa28a,#078f79)!important;border-color:#078f79!important;box-shadow:0 5px 12px rgba(7,143,121,.18)}
#view-emitir .lines{font-size:14px}#view-emitir .lines th{background:#f1f6f8;color:#2e4c69;font-size:11.5px;padding:12px 10px}#view-emitir .lines td{padding:10px 8px;background:#fff}#view-emitir .lines input,#view-emitir .lines select{min-height:42px;font-size:14px;padding:8px 9px}.tax-auto.pending{background:#fff8e7;border-color:#efd391}.tax-auto.ok{background:#edf9f5;border-color:#b8dfd6}.exon-toggle{font-size:14px}
#view-emitir #pagosDetails{border-radius:15px!important}#view-emitir #pagosDetails>summary h3{font-size:20px}#view-emitir #pagosDetails>summary .hint{font-size:13.5px}.payment-head .btn{border-color:#8dd0c4;color:#087963;background:#f9fffd}
#view-emitir .final-submit-panel{border:0!important;border-top:1px solid #dce6ed!important;border-radius:0!important;background:#fff!important;box-shadow:0 -8px 24px rgba(8,38,68,.06)!important;position:sticky;bottom:0;z-index:25;margin:18px -34px -34px!important;padding:14px 34px!important}.emit-final-actions{display:flex;align-items:center;gap:12px}.emit-final-actions .btn{min-width:150px;font-size:15px}.emit-send-btn{min-width:220px!important;background:linear-gradient(135deg,#0aa48c,#078b76)!important;border-color:#078b76!important;box-shadow:0 6px 16px rgba(7,139,118,.22)}
#view-emitir .plan-badge{background:#eef8ff;border-color:#c8e2f5;font-size:12px;color:#286286}
@media(max-width:1350px){#view-emitir .emit-workspace-head{grid-template-columns:1fr 1fr}.emit-preview-btn{grid-column:2;justify-self:end}.emit-title-wrap{grid-row:1/3}.emit-company-card{grid-column:2}#view-emitir>.emit-grid{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:1080px){#view-emitir .emit-workspace-head{grid-template-columns:1fr}.emit-title-wrap,.emit-company-card,.emit-preview-btn{grid-column:auto;grid-row:auto}.emit-preview-btn{justify-self:start}#view-emitir>.emit-grid{grid-template-columns:1fr}.emit-side-stack{position:relative;top:auto;grid-template-columns:1fr 1fr}.emit-side-stack .total-panel,.emit-side-stack .emit-meta-panel{height:100%}#view-emitir .form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){#view-emitir .emit-title-wrap h2{font-size:25px}#view-emitir .emit-company-card{padding-right:18px}#view-emitir .form-grid{grid-template-columns:1fr}.emit-side-stack{grid-template-columns:1fr}#view-emitir .final-submit-panel{position:relative;margin:16px 0 0!important;padding:16px!important}.emit-final-actions{width:100%;flex-direction:column}.emit-final-actions .btn{width:100%}}


/* FIX77 - Calculadora de monto final con IVA incluido por linea */
.line-total-calc-btn{margin-top:7px;width:100%;border:1px solid #9edfd3;background:#eefaf7;color:#087d6a;border-radius:8px;padding:7px 8px;font:700 12px/1.1 inherit;cursor:pointer;white-space:nowrap;transition:.16s ease}
.line-total-calc-btn:hover{background:#ddf5ef;border-color:#57c5b3;transform:translateY(-1px)}
.iva-incluido-dialog{width:min(560px,calc(100vw - 32px))}
.iva-calc-intro{padding:14px 16px;border-radius:12px;background:linear-gradient(135deg,#effaf7,#f7fbff);border:1px solid #d6eee9}
.iva-calc-intro strong{font-size:16px;color:#08284a}
.iva-incluido-dialog label{font-weight:700;color:#0b2b4d;gap:8px}
.iva-incluido-dialog #ivaIncluidoMonto{font-size:22px;font-weight:800;padding:14px 16px;text-align:right;color:#062c52}
.iva-calc-preview{display:grid;gap:8px}
.iva-calc-preview>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:7px 0;border-bottom:1px solid #e8eef3}
.iva-calc-preview>div:last-child{border-bottom:0}
.iva-calc-preview span{color:#61758a}
.iva-calc-preview strong{color:#08284a;font-size:15px}
.iva-calc-preview .iva-calc-final{margin-top:4px;padding:12px;border-radius:9px;background:#eaf8f4}
.iva-calc-preview .iva-calc-final span,.iva-calc-preview .iva-calc-final strong{color:#07836e;font-weight:800;font-size:17px}
.iva-calc-note{border-left:4px solid #10a58d}

/* FIX82 - Factura Electronica de Compra */
.purchase-cabys-badge{display:inline-flex;align-items:center;padding:6px 10px;margin-bottom:6px;border-radius:10px;background:#eaf8f4;color:#087f6d;font-weight:700;font-size:12px}
#docProveedorWrap:not(.hidden){display:flex;flex-direction:column}

/* FIX83 - Inicio de sesión alineado con la identidad visual TRICONTA FE */
.auth-shell-premium{
  min-height:100vh;
  padding:32px;
  background:
    radial-gradient(circle at 16% 12%,rgba(16,163,139,.10),transparent 32%),
    radial-gradient(circle at 88% 18%,rgba(30,93,166,.12),transparent 34%),
    linear-gradient(135deg,#eef4f9 0%,#f7f9fc 56%,#edf4f8 100%);
}
.auth-stage{
  width:min(1180px,100%);
  min-height:650px;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(410px,.85fr);
  overflow:hidden;
  border:1px solid rgba(7,38,80,.10);
  border-radius:28px;
  box-shadow:0 30px 80px rgba(3,26,58,.17);
  background:#fff;
}
.auth-brand-panel{
  position:relative;
  display:flex;
  flex-direction:column;
  padding:46px 52px 36px;
  color:#fff;
  background:
    radial-gradient(circle at 80% 20%,rgba(17,184,155,.20),transparent 30%),
    linear-gradient(145deg,#041a38 0%,#072650 58%,#0a315e 100%);
}
.auth-brand-panel:after{
  content:"";
  position:absolute;
  width:320px;height:320px;
  right:-110px;bottom:-130px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:50%;
  box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018);
}
.auth-brand-lockup{display:flex;align-items:center;gap:14px;position:relative;z-index:1}
.auth-symbol{width:54px;height:54px;flex:0 0 54px}
.auth-brand-copy strong{display:block;color:#fff;font-size:25px;font-weight:850;letter-spacing:.035em;line-height:1}
.auth-brand-copy strong em{color:#ffb21c;font-style:normal}
.auth-brand-copy span{display:block;color:#c8d8e9;font-size:11px;font-weight:750;letter-spacing:.11em;margin-top:6px}
.auth-brand-content{margin:auto 0;max-width:610px;position:relative;z-index:1;padding:50px 0}
.auth-kicker{display:inline-block;color:#12b59b;font-size:12px;font-weight:850;letter-spacing:.14em}
.auth-brand-content h1{font-size:42px;line-height:1.12;letter-spacing:-.035em;margin:14px 0 18px;color:#fff;max-width:600px}
.auth-brand-content p{font-size:17px;line-height:1.65;color:#c9d7e7;max-width:560px;margin:0 0 30px}
.auth-feature-list{display:grid;gap:13px;font-size:15px;font-weight:650;color:#edf7ff}
.auth-feature-list div{display:flex;align-items:center;gap:11px}
.auth-feature-list span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:rgba(15,184,153,.16);color:#28d0b3;border:1px solid rgba(40,208,179,.35);font-weight:900}
.auth-brand-footer{position:relative;z-index:1;color:#8eabc7;font-size:12px;letter-spacing:.06em}
.auth-card-premium{
  width:auto;
  border:0;
  border-radius:0;
  box-shadow:none;
  padding:64px 58px 42px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#fff;
}
.auth-mobile-brand{display:none}
.auth-form-head{margin-bottom:8px}
.auth-form-head h2{font-size:34px;line-height:1.15;margin:10px 0 8px;color:#071f3f;letter-spacing:-.03em}
.auth-form-head p{font-size:15px;color:#6f8096;margin:0 0 20px}
.auth-form{gap:18px;margin-top:12px}
.auth-form label{font-size:14px;font-weight:780;color:#173554;gap:8px}
.auth-form input{
  min-height:52px;
  border:1px solid #cfdbe8;
  border-radius:12px;
  padding:13px 15px;
  font-size:15px;
  background:#f8fbfe;
  transition:.18s ease;
}
.auth-form input:focus{background:#fff;border-color:#11a68f;box-shadow:0 0 0 4px rgba(17,166,143,.10)}
.auth-submit{
  min-height:52px;
  margin-top:4px;
  border-radius:12px!important;
  border-color:#0a9d87!important;
  background:linear-gradient(135deg,#0aa58c,#07826f)!important;
  box-shadow:0 10px 24px rgba(8,143,121,.22);
  font-size:16px!important;
  font-weight:820!important;
}
.auth-submit:hover{background:linear-gradient(135deg,#0bb397,#087765)!important;transform:translateY(-1px)}
.auth-message{min-height:22px;margin-top:14px;font-size:13px}
.auth-security{margin-top:28px;padding-top:18px;border-top:1px solid #e6edf4;color:#73859a;font-size:12px;display:flex;align-items:center;gap:8px}
.auth-security span{color:#0aa58c;font-size:17px}
@media(max-width:920px){
  .auth-shell-premium{padding:20px}
  .auth-stage{grid-template-columns:1fr;max-width:560px;min-height:0}
  .auth-brand-panel{display:none}
  .auth-card-premium{padding:38px 34px 30px}
  .auth-mobile-brand{display:flex;align-items:center;gap:12px;margin-bottom:38px;padding-bottom:24px;border-bottom:1px solid #e8eef5}
  .auth-mobile-brand .auth-brand-copy strong{color:#072650;font-size:22px}
  .auth-mobile-brand .auth-brand-copy span{color:#6d8197}
}
@media(max-width:540px){
  .auth-shell-premium{padding:0;background:#fff}
  .auth-stage{border:0;border-radius:0;box-shadow:none;min-height:100vh}
  .auth-card-premium{padding:28px 22px}
  .auth-form-head h2{font-size:30px}
}
/* FIX84 - Facturación programada por cliente */
.scheduled-summary{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}.scheduled-summary span{background:#eef8f6;border:1px solid #cbece5;border-radius:12px;padding:10px 14px;color:#0f5960}.scheduled-summary strong{font-size:1.15rem;margin-right:4px}.scheduled-table input,.scheduled-table select{min-width:96px;padding:9px 10px;border:1px solid #d8e3ec;border-radius:8px;background:#fff}.scheduled-table td:first-child{min-width:220px}.scheduled-table td:nth-child(2){min-width:180px}.scheduled-table td:nth-child(3){min-width:150px}.table-sub{display:block;color:#708197;margin-top:4px}.input-short{width:72px!important;min-width:72px!important}.switch-line{white-space:nowrap}

/* FIX87 - buscador CAByS dentro de Facturación programada */
.fp-cabys-cell{min-width:310px}.fp-cabys-field{display:flex;gap:6px;align-items:center}.fp-cabys-field input{min-width:170px}.fp-cabys-search{margin-top:6px}.fp-cabys-results{max-height:190px;overflow:auto;margin-top:6px}.fp-cabys-results .catalog-option{width:100%;text-align:left}

/* FIX88 - Inventario opcional */
.inventory-enable-setting{display:flex!important;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid #d9e5e7;border-radius:16px;background:#f7fbfb}.inventory-enable-setting span{display:flex;flex-direction:column;gap:4px}.inventory-enable-setting input{width:22px;height:22px;accent-color:#138a85}.inventory-shell{display:grid;gap:18px}.inventory-head{align-items:center}.inventory-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.inventory-stats>div{background:#fff;border:1px solid #e3eaed;border-radius:16px;padding:18px 20px;box-shadow:0 6px 18px rgba(12,38,50,.05)}.inventory-stats small{display:block;color:#65737e;margin-bottom:7px}.inventory-stats strong{font-size:1.55rem;color:#123747}.inventory-panel{padding:18px}.inventory-toolbar{display:flex;gap:12px;margin-bottom:14px}.inventory-toolbar input{flex:1}.inventory-toolbar select{min-width:170px}.inventory-status,.inventory-move{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:700}.inventory-status.ok,.inventory-move.in{background:#e7f7f2;color:#087568}.inventory-status.low,.inventory-move.out{background:#fff0ea;color:#a94424}.empty-row{text-align:center;color:#6d7b84;padding:28px!important}@media(max-width:900px){.inventory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-toolbar{flex-direction:column}}@media(max-width:540px){.inventory-stats{grid-template-columns:1fr}}

/* FIX89 - salida segura del primer inicio para SuperAdministrador */
.setup-title-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.setup-back-profile{white-space:nowrap;border-color:#0f766e;color:#0f766e;background:#fff}.setup-back-profile:hover{background:#ecfdf5}@media(max-width:760px){.setup-title-actions{align-items:stretch;width:100%}.setup-back-profile{width:100%}}

/* FIX98 - Cuentas por pagar / cobrar */
.accounts-shell{display:grid;gap:18px}.accounts-tabs{display:flex;gap:10px;flex-wrap:wrap}.table-sub{display:block;margin-top:3px;color:var(--muted,#64748b);font-size:.78rem}.account-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-weight:700;font-size:.78rem;border:1px solid #d6e0ea;background:#f8fafc;color:#334155}.account-status.pendiente{background:#fff7e8;border-color:#f1cc86;color:#8a5a00}.account-status.parcial{background:#eaf7f5;border-color:#9ed9d1;color:#087c72}.account-status.pagada{background:#edf9f2;border-color:#9fd9b5;color:#197447}


/* FIX102 - Punto de venta */
.pos-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;background:linear-gradient(135deg,#071d3a,#0c315a);color:#fff;border:0}.pos-head .hint{color:#d5e7f4}.pos-head .section-kicker{color:#38c8b3}.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.pos-sale-card{min-height:620px}.pos-scan-row{display:grid;grid-template-columns:minmax(260px,1.2fr) auto minmax(220px,.8fr);gap:12px;align-items:end;margin-bottom:14px}.pos-scan-main input{font-size:1.2rem;font-weight:700;letter-spacing:.04em;border:2px solid #16a394;background:#f7fffd}.pos-product-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin:10px 0 18px;max-height:190px;overflow:auto}.pos-product-tile{text-align:left;border:1px solid #d8e5ee;background:#fff;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px;cursor:pointer;box-shadow:0 2px 8px rgba(7,29,58,.06)}.pos-product-tile:hover{border-color:#159f91;box-shadow:0 5px 14px rgba(15,115,108,.13)}.pos-product-tile strong{color:#092348}.pos-product-tile span,.pos-product-tile small{color:#62758b}.pos-cart input{min-width:90px}.pos-checkout-card{position:sticky;top:132px;background:#fbfdff}.pos-checkout-card>label{display:block;margin:12px 0}.pos-total-row,.pos-grand-total,.pos-change{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e0e9f0}.pos-grand-total{margin:8px 0 14px;padding:18px 14px;background:#071d3a;color:#fff;border-radius:12px;border:0}.pos-grand-total strong{font-size:1.7rem}.pos-change{background:#eaf9f5;color:#087c70;border:1px solid #b9e9df;border-radius:10px;padding:14px;margin:12px 0}.pos-change strong{font-size:1.35rem}.pos-pay-btn{width:100%;margin:10px 0}.hidden{display:none!important}@media(max-width:1050px){.pos-layout{grid-template-columns:1fr}.pos-checkout-card{position:static}.pos-scan-row{grid-template-columns:1fr}.pos-product-results{max-height:260px}}

/* FIX104 - parámetros modulares por empresa */
.parameter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 16px}.parameter-toggle{display:flex!important;align-items:center;justify-content:space-between;gap:15px;border:1px solid #dfe7ef;border-radius:11px;padding:14px;background:#fff;min-height:78px}.parameter-toggle span{display:grid;gap:4px}.parameter-toggle strong{color:#173552;font-size:14px}.parameter-toggle small{color:#687b8f;font-size:12px;line-height:1.35}.parameter-toggle input{width:20px;height:20px;accent-color:#0a9b89}.parameter-payment-panel{margin-top:12px;padding:16px}.parameter-payments{display:flex;gap:14px;flex-wrap:wrap}.parameter-payments label{display:flex!important;align-items:center;gap:6px;font-weight:700;color:#2d4660}.parameter-payments input{width:18px;height:18px;accent-color:#0a9b89}@media(max-width:760px){.parameter-grid{grid-template-columns:1fr}}

/* FIX117: catálogo CAByS oficial como búsqueda primaria en Emitir comprobante */
.cabys-official-label{display:block;margin-bottom:6px;color:#0b3558;font-size:.78rem}.cabys-desc-btn{margin-top:5px}.cabys-saved-details{margin-top:7px}.cabys-saved-details summary{cursor:pointer;color:#60758a;font-size:.76rem;font-weight:700}

/* FIX118 - pagos mixtos en factura y Punto de Venta */
.pos-payments-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 8px}.pos-payments-title>div{display:flex;flex-direction:column;gap:2px}.pos-payments-title small{color:#65788c}.pos-payments-box{display:flex;flex-direction:column;gap:8px}.pos-payment-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(110px,.9fr) minmax(110px,.75fr) 38px;gap:8px;align-items:end;padding:10px;border:1px solid #dbe6ee;border-radius:10px;background:#fff}.pos-payment-row label{display:flex;flex-direction:column;gap:5px;margin:0}.pos-payment-row input,.pos-payment-row select{width:100%}.pos-payment-summary{font-size:.88rem;color:#556b80;background:#f4f8fb;border:1px solid #dce7ef;border-radius:9px;padding:9px 10px;margin:8px 0 4px}.payment-ok{color:#087c70;font-weight:700}.payment-pending,.payment-over{color:#b45c19;font-weight:700}@media(max-width:1050px){.pos-payment-row{grid-template-columns:1fr 1fr}.pos-payment-row .icon-btn{align-self:end}}
