:root{color:#1f2a44;font-family:Inter,Segoe UI,Arial,sans-serif;font-synthesis:none;letter-spacing:0;--background: #F7F9FC;--sidebar: #EEF5FB;--sidebar-active: #CFE6FF;--cards: #FFFFFF;--border: #D8E2EC;--primary-text: #1F2A44;--secondary-text: #64748B;--primary: #4A90E2;--success: #57C785;--warning: #F6C85F;--error: #E96A6A;--info: #74B9FF;--blue: #CFE6FF;--sky: #E7F3FF;--red: #FADADA;--green: #DDF5E6;--yellow: #FFF1CC;--gray: #EEF5FB;--ink: #1F2A44;--muted: #64748B;--line: #D8E2EC;--panel: #FFFFFF;--shadow: 0 16px 38px rgba(31, 42, 68, .075)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--background)}button,input,textarea,select{font:inherit}button{cursor:pointer}.login-page{align-items:center;background:var(--background);display:grid;min-height:100vh;padding:24px}.login-card{background:var(--cards);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);display:grid;gap:10px;justify-self:center;max-width:390px;padding:24px;width:100%}.login-card img{height:44px;width:44px}.login-card h1{color:var(--primary-text);font-size:24px;margin:0}.login-card p,.login-card span{color:var(--secondary-text);font-size:12px;margin:0}.login-card label{display:grid;gap:4px}.login-card input{border:1px solid var(--border);border-radius:8px;min-height:38px;padding:0 10px}.login-card small{background:var(--red);border:1px solid var(--error);border-radius:8px;color:#8b342f;padding:8px}.login-card button{align-items:center;background:var(--primary);border:0;border-radius:8px;color:#fff;display:inline-flex;font-weight:800;gap:7px;justify-content:center;min-height:38px}.shell{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh;background:var(--background)}.sidebar{background:#eef3f6;border-right:1px solid var(--line);align-self:stretch;min-height:100vh;overflow-y:visible;padding:14px;position:sticky;top:0}.brand{align-items:center;background:#fff;border:1px solid #c6dced;border-radius:8px;display:flex;flex-direction:column;gap:9px;justify-content:center;margin-bottom:14px;min-height:118px;padding:17px 14px;text-align:center}.brand img{border-radius:7px;height:48px;object-fit:contain;width:64px}.brand strong,.brand span{display:block}.brand strong{font-size:18px;line-height:1.1}.brand span,.topbar p,.section-title p{color:var(--muted);font-size:11px;margin:0}.nav-list{display:grid;gap:6px}.nav-list details{border:1px solid transparent;border-radius:8px;overflow:hidden}.nav-list details[open]{background:#f9fbfd;border-color:#dce6ee;box-shadow:0 10px 22px #2837460d}.nav-list summary{align-items:center;color:#25394c;cursor:pointer;display:flex;gap:9px;list-style:none;min-height:41px;padding:9px 11px}.nav-list details[open] summary{background:#eaf5ff;border-bottom:1px solid #d7e8f6;color:#28516f}.nav-list summary span{font-size:14px;font-weight:750}.subnav,.config-subnav{display:grid;gap:4px;padding:2px 8px 10px 34px}.config-subnav{gap:4px;padding-left:34px}.subnav button,.config-subnav button{background:transparent;border:0;border-radius:7px;color:#40576b;min-height:32px;overflow:hidden;padding:6px 9px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.subnav button.active,.subnav button:hover,.config-subnav button.active,.config-subnav button:hover{background:var(--blue);color:#28516f}.config-nav-group{display:grid;gap:4px;margin:0;padding:0}.config-nav-group>span{color:#6d8193;font-size:10px;font-weight:850;padding:7px 9px 1px;text-transform:uppercase}.config-nav-group+.config-nav-group{border-top:1px solid #dce7ef;margin-top:4px;padding-top:4px}.workspace{display:grid;grid-template-rows:auto 1fr;min-width:0}.topbar{align-items:center;background:#ffffffeb;border-bottom:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(160px,.55fr) minmax(280px,1fr) auto auto;min-height:72px;padding:12px 18px;position:sticky;top:0;z-index:3}.topbar h1,.section-title h2{font-size:20px;margin:3px 0 0}.topbar p{align-items:center;display:inline-flex;gap:7px}.topbar p img{flex:0 0 22px;height:22px;object-fit:contain;width:22px}.topbar .page-heading{min-width:0}.topbar .company-heading{display:flex;margin:0;max-width:100%;min-width:0;white-space:nowrap}.topbar .company-heading span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search{align-items:center;background:#f8fbfd;border:1px solid #d6e2ec;border-radius:8px;display:flex;gap:8px;min-height:42px;padding:0 12px}.search input{background:transparent;border:0;min-width:0;outline:0;width:100%}.context-pills,.top-actions,.section-title{align-items:center;display:flex;gap:8px}.clean-empty-screen{display:grid;margin:10px;padding:10px}.context-pills span{align-items:center;background:var(--green);border:1px solid #bfdfca;border-radius:999px;color:#275f43;display:inline-flex;font-size:12px;gap:5px;min-height:30px;padding:5px 10px;white-space:nowrap}.top-actions button,.section-title button{align-items:center;background:var(--gray);border:1px solid #d5e0e8;border-radius:8px;color:#30475d;display:inline-flex;height:38px;justify-content:center;width:38px}.content-grid{display:grid;gap:14px;padding:14px}.dashboard-band{background:#fffffff0;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.dashboard-band{display:grid;gap:12px;grid-template-columns:210px minmax(0,1fr) 300px;padding:14px}.section-title{align-items:flex-start;flex-direction:column;justify-content:space-between;min-height:112px}.metric-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(130px,1fr))}.metric{border:1px solid #d8e3eb;border-radius:8px;display:grid;gap:5px;min-height:112px;padding:12px}.tone-0{background:var(--blue)}.tone-1{background:var(--red)}.tone-2{background:var(--green)}.tone-3{background:var(--yellow)}.metric span,.metric small{color:#54697a;font-size:12px}.metric strong{font-size:25px}.metric small{align-items:center;display:flex;gap:5px}.workflow-card{background:#f8fbfd;border:1px solid #dce6ee;border-radius:8px;padding:10px}.workflow-card b{display:block;margin-bottom:8px}.workflow{display:flex;flex-wrap:wrap;gap:7px}.workflow-step{align-items:center;color:#526879;display:flex;gap:6px;font-size:12px}.workflow-step span{background:#fff;border:1px solid #d9e3ec;border-radius:7px;padding:6px 8px}table{border-collapse:collapse;min-width:840px;width:100%}th,td{border:1px solid #dce5ec;font-size:12px;padding:8px;text-align:left}th{background:#f4f8fb;color:#43586b}td{background:#fff;color:#334658}.empty-row td{color:#7b8996;text-align:center}@media(max-width:1320px){.dashboard-band{grid-template-columns:1fr}.section-title{flex-direction:row;min-height:auto}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.topbar{grid-template-columns:1fr;position:relative}}@media(max-width:620px){.content-grid{padding:10px}.metric-grid{grid-template-columns:1fr}}.platform-page{display:grid;gap:12px;padding:14px}.platform-head,.platform-card{background:var(--cards);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.platform-head{align-items:end;display:flex;justify-content:space-between;min-height:92px;padding:16px}.platform-head p{color:var(--secondary-text);font-size:11px;margin:0 0 6px}.platform-head h2{font-size:20px;margin:0}.platform-head button,.platform-form button,.soft-action{align-items:center;background:var(--blue);border:1px solid var(--primary);border-radius:8px;color:#214a73;display:inline-flex;font-weight:800;gap:7px;justify-content:center;min-height:36px;padding:8px 12px}.platform-notice{background:var(--green);border:1px solid #bde3cc;border-radius:8px;color:#236342;font-weight:800;padding:10px 12px}.platform-notice.error{background:#ffe4e4;border-color:#f1b6b6;color:#8b2f2f}.platform-tabs{display:flex;flex-wrap:wrap;gap:8px}.platform-tabs button{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--secondary-text);min-height:34px;padding:7px 11px}.platform-tabs button.active{background:var(--blue);color:var(--primary-text);font-weight:850}.platform-metrics{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(140px,1fr))}.platform-metrics article{background:#fff;border:1px solid var(--border);border-radius:8px;display:grid;gap:8px;min-height:112px;padding:14px}.platform-metrics article:nth-child(1){background:var(--blue)}.platform-metrics article:nth-child(2){background:var(--red)}.platform-metrics article:nth-child(3){background:var(--green)}.platform-metrics article:nth-child(4){background:var(--yellow)}.platform-metrics span{align-items:center;color:var(--secondary-text);display:inline-flex;font-size:12px;gap:6px}.platform-metrics strong{font-size:24px}.platform-card{display:grid;gap:12px;padding:14px}.platform-card h3{align-items:center;display:flex;font-size:15px;gap:7px;margin:0}.platform-title-row{align-items:center;display:flex;gap:10px;justify-content:space-between}.platform-title-row button{align-items:center;background:var(--blue);border:1px solid var(--primary);border-radius:8px;color:#214a73;display:inline-flex;font-weight:800;gap:7px;min-height:34px;padding:7px 11px}.platform-grid{display:grid;gap:12px}.platform-form{display:grid;gap:9px}.platform-form.cols-2{grid-template-columns:220px 160px}.platform-form.cols-3{grid-template-columns:220px 160px 120px}.platform-form.cols-4{grid-template-columns:230px repeat(2,170px) 150px}.platform-form.cols-5{grid-template-columns:150px 220px 1fr 130px 120px}.platform-form.cols-6{grid-template-columns:130px 150px 90px 1fr 130px 120px}.platform-form.cols-7{grid-template-columns:140px 1fr 140px 120px 110px 90px 120px}.platform-form label{display:grid;gap:4px}.platform-form span{color:#53697b;font-size:11px;font-weight:800}.platform-form input,.platform-form select,.platform-card textarea{background:#fbfdff;border:1px solid #cfdae4;border-radius:7px;min-height:36px;padding:7px 9px;width:100%}.platform-form input[type=file]{align-content:center;font-size:11px}.platform-card textarea{min-height:150px}.platform-table{overflow-x:auto}.platform-table table{border-collapse:collapse;min-width:720px;width:100%}.platform-table th{background:#eaf2fb;color:var(--primary-text);font-size:11px;text-align:left}.platform-table th,.platform-table td{border:1px solid var(--border);padding:8px 9px;vertical-align:middle}.platform-table td{background:#fff;color:var(--primary-text);font-size:12px}.platform-actions{display:flex;gap:6px}.platform-actions button,.platform-table button{background:var(--blue);border:1px solid var(--primary);border-radius:7px;color:#214a73;font-size:11px;font-weight:800;min-height:28px;padding:4px 8px}.platform-actions button.danger{background:var(--red);border-color:#e96a6a;color:#7b2525}.platform-badge{background:#eef5fb;border:1px solid var(--border);border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;padding:4px 8px}.platform-badge.activo,.platform-badge.aprobado,.platform-badge.success,.platform-badge.exito,.platform-badge.procesado{background:var(--green);border-color:#bde3cc;color:#236342}.platform-badge.pendiente,.platform-badge.warning,.platform-badge.advertencia,.platform-badge.observado{background:var(--yellow);border-color:#e7c86e;color:#6b5415}.platform-badge.error,.platform-badge.rechazado,.platform-badge.blocked,.platform-badge.bloqueado{background:var(--red);border-color:#efb7b7;color:#793232}.platform-search{align-items:center;background:#fbfdff;border:1px solid #cfdae4;border-radius:8px;display:flex;gap:8px;max-width:420px;min-height:36px;padding:0 10px}.platform-search input{background:transparent;border:0;outline:0;width:100%}.soft-action{justify-self:start}.saas-page{align-content:start;display:grid;font-size:13px;gap:12px}.saas-kpis{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.saas-kpis article{background:#eaf2fb;border:1px solid var(--border);border-radius:8px;display:grid;gap:7px;min-height:82px;padding:12px}.saas-kpis article:nth-child(2){background:var(--green)}.saas-kpis article:nth-child(3){background:var(--yellow)}.saas-kpis span{align-items:center;color:var(--secondary-text);display:inline-flex;font-size:11px;font-weight:800;gap:7px}.saas-kpis strong{color:var(--primary-text);font-size:18px;overflow-wrap:anywhere}.platform-form.saas-form{align-items:stretch;grid-template-columns:repeat(12,minmax(0,1fr)) 150px;grid-template-rows:repeat(2,minmax(64px,auto))}.platform-form.saas-form>label{min-width:0}.platform-form.saas-form>label:nth-of-type(1){grid-column:span 2}.platform-form.saas-form>label:nth-of-type(2){grid-column:span 4}.platform-form.saas-form>label:nth-of-type(3){grid-column:span 3}.platform-form.saas-form>label:nth-of-type(4){grid-column:span 3}.platform-form.saas-form>label:nth-of-type(5){grid-column:span 4}.platform-form.saas-form>label:nth-of-type(6){grid-column:span 2}.platform-form.saas-form>label:nth-of-type(7){grid-column:span 4}.platform-form.saas-form>label:nth-of-type(8){grid-column:span 2}.platform-form.saas-form>button{grid-column:13;grid-row:1 / span 2;height:100%;min-height:82px;transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease}.platform-form.saas-form>button:hover{background:#b9dcff;box-shadow:0 8px 18px #4a90e229;transform:translateY(-1px)}.platform-form.saas-form>button:focus-visible,.platform-actions button:focus-visible,.platform-table button:focus-visible{outline:3px solid rgba(74,144,226,.28);outline-offset:2px}.backup-head{align-items:center;display:flex;justify-content:space-between;min-height:64px}.backup-head p{color:var(--secondary-text);font-size:11px;margin:0 0 4px}.backup-settings{align-items:end;display:grid;gap:8px;grid-template-columns:150px 110px 150px 150px}.backup-settings label{display:grid;gap:4px}.backup-settings span{color:var(--secondary-text);font-size:11px;font-weight:800}.backup-settings input{border:1px solid var(--border);border-radius:8px;min-height:34px;padding:7px 9px}.backup-settings b{align-items:center;background:var(--yellow);border:1px solid #f2bd43;border-radius:8px;display:flex;min-height:34px;padding:0 10px}.backup-settings button{align-items:center;background:var(--blue);border:1px solid #6ba9ef;border-radius:8px;color:#12365d;display:inline-flex;font-weight:850;gap:7px;justify-content:center;min-height:36px}@media(max-width:1180px){.platform-metrics,.platform-form,.platform-form.cols-2,.platform-form.cols-3,.platform-form.cols-4,.platform-form.cols-5,.platform-form.cols-6,.platform-form.cols-7,.platform-form.saas-form,.saas-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-form.saas-form{grid-template-rows:auto}.platform-form.saas-form>label,.platform-form.saas-form>label:nth-of-type(n){grid-column:auto}.platform-form.saas-form>button{grid-column:1 / -1;grid-row:auto;min-height:42px}.backup-head,.backup-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.platform-head{align-items:start;display:grid}.platform-metrics,.platform-form,.platform-form.cols-2,.platform-form.cols-3,.platform-form.cols-4,.platform-form.cols-5,.platform-form.cols-6,.platform-form.cols-7,.platform-form.saas-form,.saas-kpis,.backup-head,.backup-settings{grid-template-columns:1fr}}.sort-head{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:inline-flex;font:inherit;font-weight:700;gap:6px;justify-content:space-between;min-height:18px;padding:0;text-align:left;width:100%}.sort-head span:last-child{color:#4a90e2;font-size:10px;line-height:1}table:not(.print-table):not(.sunat-book-table) tbody tr:nth-child(odd):not(.kardex-group):not(.empty-row)>td:not([colspan]){background:#fff}table:not(.print-table):not(.sunat-book-table) tbody tr:nth-child(2n):not(.kardex-group):not(.empty-row)>td:not([colspan]){background:#eef2f6}table:not(.print-table):not(.sunat-book-table) tbody tr:hover:not(.kardex-group)>td{background:#fff6d8}table:not(.print-table):not(.sunat-book-table) thead th{box-shadow:inset 0 -1px #c8d7e5;position:sticky;top:0;z-index:2}.kardex-group td{background:#cfe6ff!important}td{transition:background-color .12s ease,border-color .12s ease}th{border-bottom-color:#c8d7e5;letter-spacing:.01em;white-space:nowrap}.money-cell,.kardex-card td:nth-child(n+4),.sales-table td:nth-child(6),.finance-card td:nth-child(6),.finance-card td:nth-child(7),.finance-card td:nth-child(8),.finance-card td:nth-child(9),.treasury-card td:nth-child(6),.treasury-card td:nth-child(7),.treasury-card td:nth-child(8),.product-list td:nth-child(7),.stock-openings td:nth-child(5),.stock-openings td:nth-child(6),.stock-openings td:nth-child(7){font-variant-numeric:tabular-nums;text-align:right}.sales-table td:nth-child(7),.agenda-table td:nth-child(6),.finance-card td:nth-child(9),.treasury-card td:nth-child(7),.platform-table td:nth-last-child(2),.plan-table td:nth-child(6),.tax-table td:last-child{color:#1f2a44;font-weight:400;text-align:center}.status-badge,.platform-badge,.engine-status,.agenda-status{align-items:center;border-radius:8px;display:inline-flex;font-size:11px;font-weight:400;justify-content:center;line-height:1;min-height:24px;min-width:86px;padding:6px 9px;text-transform:capitalize}.status-badge.green,.platform-badge.ok,.platform-badge.activo,.platform-badge.aprobado,.engine-status.cerrado,.engine-status.generado,.agenda-status{background:#ddf5e6;border:1px solid #57C785;color:#1b6b3d}.status-badge.yellow,.platform-badge.pendiente,.platform-badge.registrado,.platform-badge.observado{background:#fff1cc;border:1px solid #F6C85F;color:#7a4f06}.status-badge.red,.platform-badge.blocked,.platform-badge.bloqueado,.platform-badge.anulado,.platform-badge.rechazado,.engine-status.anulado{background:#fadada;border:1px solid #E96A6A;color:#8b3030}.status-badge.blue,.platform-badge.info,.engine-status{background:#e7f3ff;border:1px solid #74B9FF;color:#174b78}.sales-table,.agenda-table,.platform-table table,.product-list table,.finance-card table,.treasury-card table,.kardex-card table,.plan-table,.accounting-table,.tax-table{border-color:#d8e2ec;box-shadow:inset 0 0 0 1px #d8e2ec}.row-actions button,.icon-action,.finance-pay{transition:background-color .12s ease,color .12s ease,transform .12s ease}.row-actions,.transaction-actions{gap:4px;white-space:nowrap}.icon-action,.row-actions button{border:1px solid transparent}.row-actions button:hover,.icon-action:hover,.finance-pay:hover{transform:translateY(-1px)}.empty-row td,td[colspan]{background:#fafcfe!important;color:#64748b;font-style:italic}.oort-dialog-host{position:fixed;inset:0;z-index:10000}.oort-dialog-backdrop{position:fixed;inset:0;display:grid;place-items:center;background:#0f1f367a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:18px}.oort-dialog{width:min(520px,100%);background:#fff;border:1px solid #d8e2ec;border-radius:14px;box-shadow:0 24px 60px #1f2a443d;padding:20px;color:#1f2a44}.oort-dialog-info{border-top:5px solid #74b9ff}.oort-dialog-success{border-top:5px solid #57c785}.oort-dialog-warning{border-top:5px solid #f6c85f}.oort-dialog-danger{border-top:5px solid #e96a6a}.oort-dialog-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.oort-dialog-head span,.oort-dialog-message{color:#64748b}.oort-dialog-private-note{margin:-2px 0 8px;color:#64748b;font-size:12px}.oort-dialog-head h2{margin:4px 0 0;font-size:18px}.oort-dialog-message{margin:16px 0;line-height:1.45;white-space:pre-wrap}.oort-dialog-input{width:100%;height:40px;border:1px solid #d8e2ec;border-radius:8px;padding:0 12px;color:#1f2a44;font:inherit;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.oort-dialog-input:focus{border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e229}.oort-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.oort-dialog button{align-items:center;border-radius:8px;cursor:pointer;display:inline-flex;font:inherit;font-weight:800;justify-content:center;min-height:36px;padding:8px 13px}.oort-dialog .btn.subtle{background:#fff;border:1px solid #d8e2ec;color:#4a5b74}.oort-dialog .btn.primary{background:#cfe6ff;border:1px solid #4a90e2;color:#214a73}.oort-dialog .btn.danger{background:#ffe5e5;border:1px solid #e96a6a;color:#7b2525}.oort-dialog button:focus-visible{outline:3px solid rgba(74,144,226,.28);outline-offset:2px}@media(max-width:520px){.oort-dialog{padding:16px}.oort-dialog-head{align-items:center}.oort-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.oort-dialog-actions .btn:only-child{grid-column:1 / -1}}
