:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f7f7;--bg-main:#f3f7f7;--surface:#fff;--surface-2:#e9f1f1;--surface-hover:#f7fbfb;--line:#cfe0de;--line-2:#b7cfcc;--ink:#0f2e36;--ink-2:#3d5c63;--muted:#6f8a8f;--accent:#2a7f7f;--accent-2:#5bafa8;--accent-dim:#2a7f7f59;--accent-soft:#2a7f7f1f;--accent-ink:#fff;--track:#d6e4e2;--ring-core:#fff;--ring-glow:none;--gold:#c9a24b;--gold-soft:#f1e4bf;--gold-ink:#7a5c12;--ok:#2e9e6b;--ok-soft:#ddf2e7;--ok-ink:#1f7a50;--warn:#d9932c;--warn-soft:#fbebd3;--warn-ink:#8a5a10;--crit:#c8463f;--crit-soft:#f8dcda;--crit-ink:#a3322c;--sidebar-bg:#0a3a47;--sidebar-ink:#b9d6d4;--sidebar-ink-active:#fff;--sidebar-accent:#7ec8c3;--sidebar-line:#ffffff14;--logo-bg:#0f4c5c;--logo-ring:#5bafa8;--logo-arc:#d0ebe7;--logo-arc2:#7ec8c3;--card-bg:var(--surface);--card-shadow:0 1px 2px #0a3a470f, 0 6px 20px -14px #0a3a4740;--radius:12px;--radius-sm:8px;--font:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, Menlo, monospace;--dur:.16s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a1518;--bg-main:radial-gradient(ellipse at top left, #2a7f7f0f 0%, transparent 50%), #0a1518;--surface:#1e2d34a6;--surface-2:#24373fbf;--surface-hover:#2a4048cc;--line:#7ec8c31a;--line-2:#7ec8c32e;--ink:#f4f7f9;--ink-2:#c8d6da;--muted:#6b8088;--accent:#5bafa8;--accent-2:#7ec8c3;--accent-dim:#5bafa847;--accent-soft:#5bafa81f;--accent-ink:#0a1518;--track:#7ec8c31a;--ring-core:#0f1d21;--ring-glow:0 0 22px #5bafa84d;--gold:#e5c26a;--gold-soft:#e5c26a29;--gold-ink:#e5c26a;--ok:#2e9e6b;--ok-soft:#2e9e6b2e;--ok-ink:#5bcea0;--warn:#d9932c;--warn-soft:#d9932c2e;--warn-ink:#ffd08a;--crit:#c8463f;--crit-soft:#c8463f2e;--crit-ink:#ff8a80;--sidebar-bg:#081012;--sidebar-ink:#ffffff8c;--sidebar-ink-active:#5bafa8;--sidebar-accent:#5bafa8;--sidebar-line:#7ec8c314;--logo-bg:#0f4c5c;--logo-ring:#5bafa8;--logo-arc:#d0ebe7;--logo-arc2:#7ec8c3;--card-bg:#1e2d34a6;--card-shadow:0 1px 0 #ffffff0a inset, 0 10px 28px #0006}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.shell{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);width:228px;height:100vh;color:var(--sidebar-ink);border-right:1px solid var(--sidebar-line);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid var(--sidebar-line);align-items:center;gap:12px;padding:18px 16px 16px;display:flex}.sidebar-brand .name{color:#fff;letter-spacing:-.01em;font-size:17px;font-weight:800;line-height:1.1}.sidebar-brand .sub{color:var(--sidebar-accent);margin-top:2px;font-size:11px}.sidebar-group{letter-spacing:.12em;text-transform:uppercase;color:var(--sidebar-ink);opacity:.7;padding:14px 20px 4px;font-size:10.5px}.nav-item{border-radius:var(--radius-sm);color:var(--sidebar-ink);transition:background var(--dur);border-left:3px solid #0000;align-items:center;gap:8px;margin:1px 8px;padding:8px 14px;font-size:13px;display:flex}.nav-item:hover{color:#fff;background:#ffffff0f}.nav-item.active{color:var(--sidebar-ink-active);border-left-color:var(--sidebar-accent);background:#ffffff14;font-weight:600}.nav-item .cnt{opacity:.7;font-size:11px;font-family:var(--font-mono);margin-left:auto}.nav-item .dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.sidebar-footer{border-top:1px solid var(--sidebar-line);flex-direction:column;gap:8px;margin-top:auto;padding:12px 14px 16px;font-size:11px;display:flex}.main{background:var(--bg-main);flex:1;min-width:0;padding:26px 32px 60px}@media (width<=860px){.shell{flex-direction:column}.sidebar{width:auto;height:auto;position:static}.main{padding:16px}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px;display:flex}.page-header>div:first-child{flex:1;min-width:0}.crumbs{color:var(--muted);margin-bottom:4px;font-size:12px}.crumbs a:hover{color:var(--accent)}.crumbs b{color:var(--ink);font-weight:600}.page-title{letter-spacing:-.02em;font-size:20px;font-weight:800}.page-sub{color:var(--muted);font-size:12.5px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn{border-radius:var(--radius-sm);border:1px solid var(--line-2);background:var(--surface);color:var(--ink);transition:background var(--dur), border-color var(--dur);align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.btn:hover{background:var(--surface-hover);border-color:var(--accent)}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:#0000}.btn-primary:hover{filter:brightness(1.06);background:var(--accent)}.btn-ghost{color:var(--accent);background:0 0;border-color:#0000;padding:4px 8px}.btn-ghost:hover{background:var(--accent-soft)}.btn-danger{color:var(--crit)}.btn-danger:hover{background:var(--crit-soft);border-color:var(--crit)}.btn-sm{padding:4px 9px;font-size:12px}.seg{border:1px solid var(--line-2);border-radius:999px;display:inline-flex;overflow:hidden}.seg button{color:var(--muted);padding:4px 11px;font-size:12px}.seg button.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.card,.panel,.kpi{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--card-shadow)}.panel{min-width:0;padding:14px 16px}.panel-title{color:var(--ink-2);justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:12.5px;font-weight:700;display:flex}.panel-title a,.panel-title button{color:var(--accent);font-size:11.5px;font-weight:500}.kpi{cursor:pointer;transition:border-color var(--dur), transform var(--dur);text-align:left;width:100%;padding:12px 14px;position:relative}.kpi:hover{border-color:var(--accent);transform:translateY(-1px)}.kpi .l{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10.5px}.kpi .v{color:var(--accent);font-size:26px;font-weight:700;line-height:1.15;font-family:var(--font-mono);margin-top:2px}.kpi .d{color:var(--muted);margin-top:2px;font-size:11.5px}.kpi .go{color:var(--muted);font-size:10.5px;position:absolute;top:11px;right:12px}.kpi.crit .v{color:var(--crit)}.kpi.warn .v{color:var(--warn)}.kpi.neutral .v{color:var(--ink)}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (width<=1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}.ring{--size:56px;--thick:7px;width:var(--size);height:var(--size);box-shadow:var(--ring-glow);border-radius:50%;flex:none;position:relative}.ring:after{content:"";inset:var(--thick);background:var(--ring-core);border-radius:50%;position:absolute}.ring>span{font-family:var(--font-mono);font-weight:700;font-size:calc(var(--size) * .2);z-index:1;color:var(--ink);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring.big{--size:128px;--thick:12px}.fr-row{border-bottom:1px dashed var(--line);text-align:left;grid-template-columns:56px 1fr auto auto;align-items:center;gap:12px;width:100%;padding:8px 0;display:grid}.fr-row:last-child{border-bottom:0}.fr-row:hover .fr-name{color:var(--accent)}.fr-name{font-size:13px;font-weight:600}.fr-meta{color:var(--muted);font-size:11.5px}.fr-meta .w{color:var(--warn);font-weight:600}.fr-meta .c{color:var(--crit);font-weight:600}.arrow{color:var(--muted);font-size:14px}.bars{align-items:flex-end;gap:4px;height:84px;padding-top:4px;display:flex}.bars .col{flex-direction:column;flex:1;justify-content:flex-end;height:100%;display:flex;position:relative}.bars .b{background:var(--accent-dim);border-radius:3px 3px 0 0;width:100%;min-height:2px;position:relative}.bars .b .h{background:var(--accent);border-radius:3px 3px 0 0;position:absolute;bottom:0;left:0;right:0}.bars .col.now .b{outline:2px solid var(--gold);outline-offset:-2px}.bars-x{color:var(--muted);gap:4px;margin-top:4px;font-size:10px;display:flex}.bars-x span{text-align:center;flex:1}.bars-x span.now{color:var(--gold);font-weight:700}.load-row{border-bottom:1px dashed var(--line);text-align:left;grid-template-columns:110px 1fr;align-items:center;gap:10px;width:100%;padding:6px 0;display:grid}.load-row:last-child{border-bottom:0}.load-row .n{font-size:12.5px;font-weight:600}.track{background:var(--track);border-radius:4px;height:8px;overflow:hidden}.track>b{background:var(--accent);height:100%;display:block}.load-row .m{color:var(--muted);margin-top:2px;font-size:11px}.pill{border:1px solid var(--line-2);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11px;line-height:1.5;display:inline-flex}.pill.ok{border-color:var(--ok);color:var(--ok-ink);background:var(--ok-soft)}.pill.warn{border-color:var(--warn);color:var(--warn-ink);background:var(--warn-soft)}.pill.crit{border-color:var(--crit);color:var(--crit-ink);background:var(--crit-soft)}.pill.accent{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.pill.gold{border-color:var(--gold);color:var(--gold-ink);background:var(--gold-soft)}.pill.muted{color:var(--muted)}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.dot.ok{background:var(--ok)}.dot.warn{background:var(--warn)}.dot.crit{background:var(--crit)}.dot.na{background:var(--line-2)}.dot.accent{background:var(--accent)}.dot.gold{background:var(--gold)}.grid-2{grid-template-columns:1.35fr 1fr;gap:14px;min-width:0;display:grid}.grid-hero{grid-template-columns:180px 1fr;gap:14px;margin-bottom:14px;display:grid}.stack{flex-direction:column;gap:14px;min-width:0;display:flex}.hdr-cards{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px;display:grid}.hdr-card{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 12px;font-size:12.5px}.hdr-card .k{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px;display:block}@media (width<=1000px){.grid-2,.grid-hero{grid-template-columns:1fr}.hdr-cards{grid-template-columns:repeat(2,1fr)}}.gantt{font-size:12px;overflow-x:auto}.gantt-inner{grid-template-columns:var(--label-w,220px) 1fr;min-width:calc(var(--label-w,220px) + var(--weeks) * var(--week-w,40px));display:grid}.gantt-labels{z-index:2;background:var(--card-bg);border-right:1px solid var(--line);position:sticky;left:0}.gantt-labels .lbl{border-bottom:1px dashed var(--line);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;height:32px;padding:0 10px 0 4px;display:flex;overflow:hidden}.gantt-labels .lbl button{text-align:left;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);flex:1;font-weight:500;overflow:hidden}.gantt-labels .lbl button:hover{color:var(--accent)}.gantt-labels .lbl .pct{font-family:var(--font-mono);color:var(--muted);font-size:11px}.gantt-labels .lbl.group,.gantt-body .row.group{letter-spacing:.1em;text-transform:uppercase;height:26px;color:var(--accent);border-bottom:0;font-size:10.5px;font-weight:700}.gantt-labels .lbl.head,.gantt-body .row.head{border-bottom:1px solid var(--line);height:38px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.gantt-body{position:relative}.gantt-body .row{border-bottom:1px dashed var(--line);background-image:repeating-linear-gradient(90deg, transparent 0, transparent calc(var(--week-w,40px) - 1px), var(--line) calc(var(--week-w,40px) - 1px), var(--line) var(--week-w,40px));height:32px;position:relative}.gantt-body .row.head{grid-template-columns:repeat(var(--weeks), var(--week-w,40px));background-image:none;align-items:end;display:grid}.gantt-body .row.head .wk{text-align:center;font-family:var(--font-mono);border-left:1px solid var(--line);padding-bottom:4px;font-size:10px}.gantt-body .row.head .wk.now{color:var(--gold);font-weight:700}.gantt-body .row.head .mo{color:var(--ink-2);text-transform:none;letter-spacing:0;border-left:1px solid var(--line-2);height:14px;padding-left:6px;font-size:10.5px;font-weight:700;line-height:14px;position:absolute;top:4px}.gbar{background:var(--accent-dim);cursor:pointer;border:0;border-radius:4px;height:14px;padding:0;position:absolute;top:9px;overflow:hidden}.gbar>i{background:var(--accent);position:absolute;top:0;bottom:0;left:0}.gbar.crit{background:var(--crit-soft)}.gbar.crit>i{background:var(--crit)}.gbar.warn{background:var(--warn-soft)}.gbar.warn>i{background:var(--warn)}.gbar.done,.gbar.done>i{background:var(--accent)}.gbar.base{background:repeating-linear-gradient(45deg, var(--accent-dim) 0 4px, transparent 4px 8px);border:1px dashed var(--accent-dim)}.gbar:hover{filter:brightness(1.08)}.gms{background:var(--gold);cursor:pointer;border:0;border-radius:3px;width:14px;height:14px;position:absolute;top:9px;transform:translate(-7px)rotate(45deg)}.gms.done{background:var(--accent)}.gms.late{background:var(--crit)}.gms.base{border:2px solid var(--gold);background:0 0}.today-line{background:var(--gold);opacity:.9;pointer-events:none;z-index:1;width:2px;position:absolute;top:0;bottom:0}.today-line:before{content:"hoy";color:var(--gold);text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:700;position:absolute;top:-18px;left:4px}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;margin-top:8px;font-size:11px;display:flex}.legend span{align-items:center;gap:5px;display:inline-flex}.atable{border-collapse:collapse;width:100%;font-size:12.5px}.atable th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:left;border-bottom:1px solid var(--line-2);padding:6px 8px;font-size:10.5px;font-weight:700}.atable td{border-bottom:1px dashed var(--line);vertical-align:middle;padding:4px 8px}.atable tr.group td{border-bottom:1px solid var(--line-2);background:0 0;padding:12px 8px 6px}.atable tr.group .gname{color:var(--accent);align-items:center;gap:8px;font-weight:700;display:inline-flex}.atable tr.group .gname:hover{text-decoration:underline}.atable tr.done td{opacity:.6}.atable tr.done .txt{text-decoration:line-through}.atable .txt{background:0 0;border:1px solid #0000;border-radius:4px;width:100%;min-width:260px;padding:3px 6px}.atable .txt:hover,.atable select:hover,.atable input[type=date]:hover{border-color:var(--line-2)}.atable .txt:focus,.atable select:focus,.atable input:focus{border-color:var(--accent);background:var(--surface);outline:none}.atable select,.atable input[type=date]{color:var(--ink);background:0 0;border:1px solid #0000;border-radius:4px;padding:3px 4px;font-size:12px}.atable input[type=date]{font-family:var(--font-mono);width:128px}.atable input[type=date].late{color:var(--crit);font-weight:600}.atable input[type=date].soon{color:var(--warn);font-weight:600}.atable .chk{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.atable .rowbtn{opacity:0;color:var(--muted);padding:2px 6px}.atable tr:hover .rowbtn{opacity:1}.atable .rowbtn:hover{color:var(--crit)}.atable .rowbtn.edit{opacity:.45;font-size:13px}.atable tr:hover .rowbtn.edit{opacity:1}.atable .rowbtn.edit:hover{color:var(--accent)}.atable .rowbtn.ok{opacity:1;color:var(--accent);font-size:11.5px;font-weight:600}.atable .rowbtn.ok:hover{color:var(--accent);text-decoration:underline}.atable .txt.ro{cursor:default;white-space:normal;border-color:#0000;width:auto;max-width:100%;display:inline}.atable .subline>span,.atable .subline.note b,.atable .subline.note>span,.atable .subline.note .txt{color:var(--warn-ink)}.atable .add{color:var(--accent);padding:6px 8px;font-size:12px;font-weight:600}.atable .add:hover{text-decoration:underline}.atable .resp-sel{max-width:150px}.atable .datebtn{font-family:var(--font-mono);white-space:nowrap;color:var(--ink);border:1px solid #0000;border-radius:4px;padding:3px 6px;font-size:12px}.atable .datebtn:hover{border-color:var(--line-2)}.atable .datebtn.late{color:var(--crit);font-weight:600}.atable .datebtn.soon{color:var(--warn);font-weight:600}.atable .estado-cell{align-items:center;gap:6px;display:inline-flex}.atable .estado-cell select{max-width:120px}.atable input[type=date]{width:120px}.table-wrap{overflow-x:auto}.empty{text-align:center;color:var(--muted);padding:28px;font-size:13px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;font-size:12.5px;display:flex}.toolbar select,.toolbar input[type=search]{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-sm);color:var(--ink);padding:5px 8px;font-size:12.5px}.toolbar input[type=search]{min-width:200px}.chip{background:var(--accent-soft);color:var(--accent);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.chip button{opacity:.8;font-size:13px;line-height:1}.alert{border-radius:var(--radius-sm);border:1px solid;margin-bottom:12px;padding:10px 14px;font-size:12.5px}.alert.crit{background:var(--crit-soft);color:var(--crit-ink);border-color:var(--crit)}.alert.warn{background:var(--warn-soft);color:var(--warn-ink);border-color:var(--warn)}.alert.ok{background:var(--ok-soft);color:var(--ok-ink);border-color:var(--ok)}.fade-in{animation:fade var(--dur) ease-out}@keyframes fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.inline-input{background:0 0;border:1px solid #0000;border-radius:4px;padding:2px 6px}.inline-input:hover{border-color:var(--line-2)}.inline-input:focus{border-color:var(--accent);background:var(--surface);outline:none}.field{flex-direction:column;gap:3px;font-size:12px;display:flex}.field>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10.5px}.field select,.field input{background:var(--surface);border:1px solid var(--line-2);color:var(--ink);border-radius:6px;padding:5px 8px;font-size:12.5px}.fields{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.theme-toggle{color:var(--sidebar-ink);align-items:center;gap:8px;font-size:12px;display:inline-flex}.theme-toggle .sw{width:34px;height:18px;transition:background var(--dur);background:#ffffff26;border-radius:999px;position:relative}.theme-toggle .sw:after{content:"";width:14px;height:14px;transition:transform var(--dur);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.theme-toggle.dark .sw{background:var(--sidebar-accent)}.theme-toggle.dark .sw:after{background:#0b0e13;transform:translate(16px)}.pend-card{background:var(--accent-soft);border:1px solid var(--accent-dim);min-width:168px;color:var(--accent);text-align:left;cursor:pointer;transition:border-color var(--dur), transform var(--dur);border-radius:10px;align-items:center;gap:10px;padding:7px 12px;display:inline-flex}.pend-card:hover{border-color:var(--accent);transform:translateY(-1px)}.pend-card .num{font-family:var(--font-mono);font-size:22px;font-weight:700;line-height:1}.pend-card .lbl{color:var(--accent);font-size:11px;line-height:1.25}.pend-card .lbl b{font-size:11.5px;font-weight:700;display:block}.pend-card .lbl .u{color:var(--warn-ink);font-weight:600}.pend-card .lbl .v{color:var(--crit-ink);font-weight:600}.atable .subline{align-items:center;gap:6px;margin:0 0 2px 6px;font-size:11.5px;display:flex}.atable .subline b{white-space:nowrap;font-weight:700}.atable .subline.warn b{color:var(--warn-ink)}.atable .subline .txt{min-width:200px;color:var(--warn-ink);padding:1px 6px;font-size:11.5px}.atable .subline .txt::placeholder{color:var(--muted);font-style:italic}.dollar{background:var(--gold-soft);width:18px;height:18px;color:var(--gold-ink);border:1px solid var(--gold);font-family:var(--font-mono);vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;margin-left:8px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.dollar:hover{filter:brightness(.95)}.atable .rowbtn.plus-costo{opacity:1;color:var(--gold-ink);margin-left:6px;font-size:11.5px;font-weight:600}.atable .rowbtn.plus-costo:hover{color:var(--gold-ink);text-decoration:underline}.ctable th.r,.ctable td.r{text-align:right}.ctable tr.vencido td.r{color:var(--crit)}.ctable tr.total td{border-top:1px solid var(--line-2);border-bottom:0;font-weight:700}.seg{flex-wrap:wrap}.ctable{min-width:720px}.ctable th:first-child,.ctable td:first-child{min-width:190px}.ctable th:nth-child(2),.ctable td:nth-child(2){min-width:110px}.ctable td:nth-child(8) .pill{text-overflow:ellipsis;max-width:112px;overflow:hidden}.ctable th:last-child,.ctable td:last-child{width:34px}.ctable td:last-child .rowbtn{margin:0}.ctable td.partida .ubic{color:var(--muted);margin-top:2px;font-size:11.5px;line-height:1.35}.ctable td.partida .ubic a{color:var(--muted)}.ctable td.partida .ubic a:hover{color:var(--accent)}.ctable th:nth-child(7),.ctable td:nth-child(7){white-space:nowrap}.modal-back{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:60;background:#04080c8c;justify-content:center;align-items:flex-start;padding:6vh 16px 24px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line-2);border-radius:12px;width:100%;max-width:560px;overflow:hidden;box-shadow:0 24px 60px #00000061}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.modal-title{font-size:15px;font-weight:600}.modal-sub{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.45}.modal-body{padding:16px 18px}.modal-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 18px 16px;display:flex}.mgrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.modal .field{flex-direction:column;gap:5px;display:flex}.modal .field>span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px}.modal input,.modal select{border:1px solid var(--line-2);color:var(--ink);background:0 0;border-radius:6px;width:100%;padding:8px 10px;font-family:inherit;font-size:13px}.modal input:focus,.modal select:focus{border-color:var(--accent);outline:none}.modal .num-big{font-family:var(--font-mono);color:var(--gold-ink);border-color:var(--gold);font-size:16px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip-btn,.chips .chip{all:unset}.chips .chip{cursor:pointer;color:var(--muted);border:1px solid var(--line-2);border-radius:999px;padding:5px 14px;font-size:12.5px}.chips .chip:hover{border-color:var(--accent);color:var(--ink)}.chips .chip.on{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:600}.share{display:inline-block;position:relative}.share-menu{z-index:50;background:var(--surface);border:1px solid var(--line-2);border-radius:10px;min-width:268px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 18px 44px #00000057}.share-menu button{text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;width:100%;color:var(--ink);background:0 0;padding:10px 14px;font-family:inherit;display:block}.share-menu button:last-child{border-bottom:0}.share-menu button:hover{background:var(--accent-soft)}.share-menu b{font-size:13px;font-weight:600;display:block}.share-menu span{color:var(--muted);margin-top:2px;font-size:11.5px;display:block}.share-aviso{z-index:50;white-space:nowrap;background:var(--surface);border:1px solid var(--accent);color:var(--ink);border-radius:8px;padding:8px 12px;font-size:12px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #0000004d}.print-head{display:none}@media print{@page{size:A4 portrait;margin:14mm 12mm 16mm}html,body{background:#fff!important}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.sidebar,.toolbar,.page-actions,.share,.add,.rowbtn,.alert,.page-header{display:none!important}.shell{display:block!important}html,body,#root,.shell,.main,.fade-in{background:0 0!important}.main{padding:0!important;overflow:visible!important}.panel,.atable,.table-wrap{box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;border:0!important;padding:0!important;overflow:visible!important}.atable input[type=checkbox]{display:none!important}.atable th:first-child,.atable tr:not(.group) td:first-child{width:0!important;padding:0!important}.atable th:nth-child(2),.atable td:nth-child(2){width:auto!important}.atable .txt,.atable .txt.ro{width:auto!important;min-width:0!important}.atable th:nth-child(3),.atable td:nth-child(3){width:110px!important}.atable th:nth-child(4),.atable td:nth-child(4),.atable th:nth-child(5),.atable td:nth-child(5){width:60px!important}.atable th:last-child,.atable tr:not(.group) td:last-child{display:none!important}.print-head{border-bottom:1.5px solid #0a3a47;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:8px;display:flex!important}.print-head .ph-title{color:#0a3a47;font-size:15px;font-weight:700}.print-head .ph-sub{color:#444;margin-top:2px;font-size:11px}.atable{color:#111;width:100%;font-size:10.5pt}.atable th{color:#555;letter-spacing:.04em;border-bottom:1px solid #999;font-size:8.5pt}.atable td{color:#111;border-bottom:1px solid #ddd;padding:5px 6px}.atable tr{break-inside:avoid}.atable tr.group td{color:#0a3a47;border-bottom:1px solid #9cc;font-weight:700;background:#eef6f6!important}.atable .txt,.atable .txt.ro{color:#111!important;background:0 0!important;border:0!important}.atable select,.atable input[type=date]{appearance:none;color:#111!important;background:0 0!important;border:0!important;padding:0!important}.atable .datebtn{color:#111!important;background:0 0!important;border:0!important;padding:0!important}.atable input[type=checkbox]{filter:grayscale()}.pill{color:#333!important;background:0 0!important;border:1px solid #999!important}.pill.crit{color:#b3261e!important;border-color:#b3261e!important}.pill.warn{color:#a66300!important;border-color:#a66300!important}.dollar{color:#a66300!important;background:0 0!important;border-color:#a66300!important}.subline,.subline *,.empty{color:#555!important}}.login-gate{background:var(--sidebar-bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:360px;padding:40px 36px 36px;display:flex;box-shadow:0 20px 60px #00000059}.login-card h1{letter-spacing:-.02em;color:var(--ink);margin:-4px 0 0;font-size:22px;font-weight:800}.login-card p{color:var(--muted);margin:-8px 0 4px;font-size:13px}.login-card input[type=password]{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-sm);width:100%;color:var(--ink);text-align:center;letter-spacing:.1em;padding:10px 14px;font-size:14px}.login-card input[type=password]:focus{border-color:var(--accent);outline:none}.login-card .btn{justify-content:center;width:100%;padding:10px;font-size:14px}.login-error{color:var(--crit);margin:-8px 0;font-size:12.5px;font-weight:600}
