:root{--bg:#f4f6f8;--surface:#fff;--surface-2:#eef2f5;--ink:#333638;--muted:#5f6b74;--line:#dce3e9;--brand:#01a8c8;--brand-ink:#fff;--brand-text:#0a7f99;--brand-soft:#e3f5f9;--slate:#3b5773;--slate-ink:#fff;--orange:#fa7202;--gold:var(--brand);--gold-ink:var(--brand-ink);--gold-text:var(--brand-text);--band:#fff;--band-fg:#333638;--band-muted:#7a858e;--band-line:#dce3e9;--band-hover:#eef2f5;--band-on:#3b5773;--ok:#157347;--ok-bg:#e6f4ec;--bad:#b42318;--bad-bg:#fbeae7;--warn:#a35a00;--warn-bg:#fef0e0;--info:#1d56b8;--info-bg:#e8f0fd;--chart-1:#3b5773;--chart-2:#9fb3c4;--grid:#e6ebf0;--f-display:"Inter","Segoe UI",system-ui,sans-serif;--f-body:"Inter","Segoe UI",system-ui,sans-serif;--f-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--fs-2xs:11px;--fs-xs:12px;--fs-sm:13px;--fs-base:14px;--fs-md:16px;--fs-lg:18px;--fs-xl:22px;--fs-2xl:28px;--fs-hero:34px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1419;--surface:#171d24;--surface-2:#1f2731;--ink:#e7ecf2;--muted:#98a5b2;--line:#2b3540;--brand:#2cc3e0;--brand-ink:#0f1419;--brand-text:#5ed3ea;--brand-soft:#123a45;--slate:#8fb0cf;--slate-ink:#0f1419;--band:#0b0f13;--band-fg:#e7ecf2;--band-muted:#8e9aa6;--band-line:#1f2731;--band-hover:#171d24;--band-on:#8fb0cf;--ok:#3cc97e;--ok-bg:#12301f;--bad:#ff6b6b;--bad-bg:#3a1717;--warn:#f2a63b;--warn-bg:#36260e;--info:#78a6ff;--info-bg:#16264a;--chart-1:#8fb0cf;--chart-2:#4a5b75;--grid:#232b38;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1419;--surface:#171d24;--surface-2:#1f2731;--ink:#e7ecf2;--muted:#98a5b2;--line:#2b3540;--brand:#2cc3e0;--brand-ink:#0f1419;--brand-text:#5ed3ea;--brand-soft:#123a45;--slate:#8fb0cf;--slate-ink:#0f1419;--band:#0b0f13;--band-fg:#e7ecf2;--band-muted:#8e9aa6;--band-line:#1f2731;--band-hover:#171d24;--band-on:#8fb0cf;--ok:#3cc97e;--ok-bg:#12301f;--bad:#ff6b6b;--bad-bg:#3a1717;--warn:#f2a63b;--warn-bg:#36260e;--info:#78a6ff;--info-bg:#16264a;--chart-1:#8fb0cf;--chart-2:#4a5b75;--grid:#232b38;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:var(--fs-base)/1.5 var(--f-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{text-wrap:balance;margin:0}h2{font-size:var(--fs-xl);letter-spacing:-.02em;font-weight:800}h3{font-size:var(--fs-md);font-weight:700}.mono,code{font-family:var(--f-mono)}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}button,select,input,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}[hidden]{display:none!important}.band{background:var(--band);color:var(--band-fg);border-bottom:3px solid var(--brand);padding:10px 20px;padding-top:calc(10px + env(safe-area-inset-top,0px));z-index:20;flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;min-width:0;display:flex}.gm-logo{width:92px;height:auto;display:block}.brand h1{font-size:var(--fs-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--ink);font-weight:700}.brand p{font-size:var(--fs-xs);color:var(--band-muted);margin:3px 0 0}.brand .divider{background:var(--band-line);width:1px;height:32px;margin:0 6px}.proto{background:var(--orange);color:#fff;font:600 var(--fs-2xs)/1 var(--f-mono);letter-spacing:.06em;white-space:nowrap;border-radius:3px;padding:5px 7px}.band-right{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-left:auto;display:flex}.clock{font:500 var(--fs-lg)/1 var(--f-mono);color:var(--brand-text);font-variant-numeric:tabular-nums}.clock small{font-size:var(--fs-2xs);color:var(--band-muted);margin-left:5px}.band select{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:6px;padding:6px 8px}.band label{font-size:var(--fs-xs);color:var(--band-muted);align-items:center;gap:6px;display:flex}.emerg{background:var(--bad);color:#fff;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 20px;font-weight:600;display:flex}.emerg button{color:#8c1a10;background:#fff;border:0;border-radius:6px;padding:5px 10px;font-weight:600}.shell{grid-template-columns:224px minmax(0,1fr);min-height:calc(100vh - 60px);display:grid}nav.side{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:14px 10px;display:flex}nav.side .grp{color:var(--band-muted);margin:14px 12px 4px}nav.side button{text-align:left;width:100%;color:var(--ink);font-weight:500;font-size:var(--fs-sm);background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;display:flex}nav.side button:hover{background:var(--surface-2)}nav.side button[aria-current=page]{background:var(--slate);color:var(--slate-ink);box-shadow:inset 3px 0 0 var(--brand)}nav.side button .tor{font:500 var(--fs-2xs) var(--f-mono);opacity:.7}nav.side .locked{font-size:var(--fs-xs);color:var(--muted);padding:4px 12px}main{min-width:0;padding-block:20px 48px;padding-inline:22px}.view-head{flex-wrap:wrap;align-items:flex-end;gap:8px 16px;margin-bottom:16px;display:flex}.view-head p{color:var(--muted);max-width:72ch;margin:2px 0 0}.view-head .spacer{flex:1}.torref{font:500 var(--fs-2xs) var(--f-mono);color:var(--brand-text);white-space:nowrap;border:1px solid;border-radius:3px;padding:2px 6px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0;padding:16px}.panel>h3{margin-bottom:10px}.grid{gap:16px;display:grid}.btn{border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:var(--fs-sm);border-radius:8px;padding:7px 12px}.btn:hover:not(:disabled){border-color:var(--ink)}.btn.primary{background:var(--slate);color:var(--slate-ink);border-color:var(--slate)}.btn.gold{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.btn.danger{color:var(--bad);border-color:var(--bad)}.btn.small{font-size:var(--fs-xs);padding:4px 9px}.btn:disabled{opacity:.4;cursor:not-allowed}.pill{font-size:var(--fs-xs);white-space:nowrap;background:var(--surface-2);color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-weight:600;display:inline-flex}.pill.ok{background:var(--ok-bg);color:var(--ok)}.pill.bad{background:var(--bad-bg);color:var(--bad)}.pill.warn{background:var(--warn-bg);color:var(--warn)}.pill.info{background:var(--info-bg);color:var(--info)}.dot{background:currentColor;border-radius:50%;width:7px;height:7px;display:inline-block}.seg{border:1px solid var(--line);border-radius:6px;display:inline-flex;overflow:hidden}.seg button{background:var(--surface);font-size:var(--fs-xs);color:var(--muted);border:0;padding:4px 10px;font-weight:600}.seg button[aria-pressed=true]{background:var(--slate);color:var(--slate-ink)}.tbl-wrap{border:1px solid var(--line);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}th{text-align:left;font-weight:600;font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--surface-2);white-space:nowrap;padding:8px 10px}td{border-top:1px solid var(--line);vertical-align:top;padding:7px 10px}td.r,th.r{text-align:right}td.c,th.c{text-align:center}td.mono{white-space:nowrap}input[type=text],input[type=number],input[type=search],select,textarea{background:var(--surface);border:1px solid var(--line);border-radius:6px;min-width:0;padding:6px 8px}input:disabled,select:disabled{opacity:.55}.toasts{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:50;flex-direction:column;gap:8px;max-width:min(360px,100vw - 32px);display:flex;position:fixed}.toast{background:var(--slate);color:#fff;font-size:var(--fs-sm);border-radius:8px;padding:10px 14px;box-shadow:0 6px 24px #00000040}.gates-layout{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.samples{flex-direction:column;gap:6px;max-height:430px;padding-right:4px;display:flex;overflow:auto}.sample{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:auto 1fr;gap:2px 10px;padding:8px 10px;display:grid}.sample:hover{border-color:var(--muted)}.sample[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand);background:var(--brand-soft)}.sample .ico{background:var(--surface-2);width:32px;height:32px;font:600 var(--fs-2xs) var(--f-mono);color:var(--muted);border-radius:6px;grid-row:span 2;place-items:center;display:grid}.sample b{font-weight:600}.sample span{font-size:var(--fs-xs);color:var(--muted)}.expect{font:500 var(--fs-2xs) var(--f-mono);text-transform:uppercase;letter-spacing:.04em}.expect.ok{color:var(--ok)}.expect.bad{color:var(--bad)}textarea#raw{width:100%;font:500 var(--fs-xs)/1.4 var(--f-mono);resize:vertical;min-height:56px}.parsed{font-size:var(--fs-sm);grid-template-columns:auto 1fr;gap:2px 12px;margin:8px 0 0;display:grid}.parsed dt{color:var(--muted)}.parsed dd{margin:0;font-weight:500}.gate-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.gate{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex}.gate header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gate header h3{font-size:var(--fs-lg);margin-right:auto;font-weight:800}.lane{background:var(--surface-2);border-radius:8px;height:92px;position:relative;overflow:hidden}.cab{background:var(--ink);border-radius:4px;width:26px;position:absolute;top:10px;bottom:10px}.cab.l{left:14px}.cab.r{right:14px}.led{background:var(--muted);border-radius:2px;width:4px;height:28px;position:absolute;top:16px}.cab.l .led{right:4px}.cab.r .led{left:4px}.flap{background:color-mix(in srgb,var(--chart-1) 35%,transparent);border:1.5px solid var(--chart-1);width:calc(50% - 40px);height:36px;transition:transform .45s cubic-bezier(.3,.7,.2,1);position:absolute;top:28px}.flap.l{transform-origin:0;border-radius:0 6px 6px 0;left:40px}.flap.r{transform-origin:100%;border-radius:6px 0 0 6px;right:40px}.gate.open .flap{transform:scaleX(.08)}.gate.open .led{background:var(--ok);box-shadow:0 0 10px var(--ok)}.gate.denied .led{background:var(--bad);box-shadow:0 0 10px var(--bad)}.gate.alarm .lane{animation:.5s 3 alarm}@keyframes alarm{50%{background:var(--bad-bg)}}.dir{font:600 var(--fs-2xs) var(--f-mono);color:var(--muted);letter-spacing:.08em;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.verdict{background:var(--surface-2);border-radius:8px;min-height:66px;padding:10px 12px}.verdict .big{font-size:var(--fs-xl);letter-spacing:.04em;font-weight:800;line-height:1.1}.verdict.ok{background:var(--ok-bg)}.verdict.ok .big{color:var(--ok)}.verdict.bad{background:var(--bad-bg)}.verdict.bad .big{color:var(--bad)}.verdict.warn{background:var(--warn-bg)}.verdict.warn .big{color:var(--warn)}.verdict p{font-size:var(--fs-sm);margin:2px 0 0}.gate-actions{flex-wrap:wrap;gap:6px;display:flex}.buffer{font-size:var(--fs-sm);background:var(--warn-bg);color:var(--warn);border-radius:8px;padding:8px 10px}.override{font-size:var(--fs-sm);background:var(--warn-bg);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.trace-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.check-grp h4{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:4px;font-weight:700}.check{font-size:var(--fs-sm);gap:6px;padding:3px 0;line-height:1.35;display:flex}.check i{flex:none;width:14px;font-style:normal;font-weight:700}.check.bad i{color:var(--bad)}.check.bad{color:var(--bad)}.flow{font:500 var(--fs-xs) var(--f-mono);color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:12px;display:flex}.flow b{background:var(--surface-2);color:var(--ink);border-radius:3px;padding:2px 6px;font-weight:500}.health{font-size:var(--fs-xs);grid-template-columns:1fr auto;align-items:center;gap:3px 10px;display:grid}details.devices summary{cursor:pointer;font-size:var(--fs-sm);color:var(--muted);font-weight:600}.deskp{margin-top:8px;padding:12px}.kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.kpi .v{font-size:var(--fs-2xl);font-variant-numeric:tabular-nums;margin-top:4px;font-weight:800;line-height:1.1}.kpi .s{font-size:var(--fs-xs);color:var(--muted)}.meter{background:var(--surface-2);border-radius:3px;height:6px;margin-top:8px;overflow:hidden}.meter i{background:var(--gold);height:100%;display:block}.meter.warn i{background:var(--warn)}.meter.bad i{background:var(--bad)}.dash-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-12{grid-column:span 12}svg.chart{width:100%;height:auto;display:block}svg.chart text{fill:var(--muted);font:var(--fs-xs) var(--f-body)}svg.chart .grid{stroke:var(--grid)}.legend{font-size:var(--fs-xs);color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin-top:6px;display:flex}.legend i{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:5px;display:inline-block}.hbar{font-size:var(--fs-sm);grid-template-columns:minmax(0,9.5em) 1fr 3.2em;align-items:center;gap:6px 10px;display:grid}.hbar .track{background:var(--surface-2);border-radius:3px;height:14px;overflow:hidden}.hbar .track i{background:var(--chart-1);border-radius:3px;height:100%;display:block}.filterbar{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:8px 14px;margin-bottom:14px;padding:10px 12px;display:flex}.filterbar .field{margin:0}.filterbar .seg{align-self:center}.filterbar .seg button[aria-pressed=true]{background:var(--brand-soft);color:var(--brand-text)}.ph{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:8px;display:flex}.ph h3{margin:0}.hm{font-size:var(--fs-xs);gap:2px;display:grid}.hm-h{color:var(--muted);text-align:center;font-family:var(--f-mono)}.hm-d{color:var(--muted);font-size:var(--fs-xs);white-space:nowrap;text-overflow:ellipsis;align-self:center;overflow:hidden}.hm-cell{background:color-mix(in srgb,var(--chart-1) calc(var(--p) * 100%),var(--surface-2));height:22px;font-family:var(--f-mono);color:var(--ink);border-radius:3px;justify-content:center;align-items:center;display:flex}.hm-cell.full{outline:2px solid var(--bad);outline-offset:-2px}.hm-cell.na{border:1px dashed var(--line);background:0 0}.dens{display:block}.dens-row{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;border-radius:8px;grid-template-columns:minmax(0,12em) 1fr 7em;align-items:center;gap:6px 10px;padding:6px 8px;display:grid}.dens-row:hover{background:var(--surface-2)}.dens-row.on{background:var(--brand-soft);outline:2px solid var(--brand)}.dens-row.dim{opacity:.5}.dens-row .track{position:relative;overflow:visible}.dens-row .track b{background:var(--ink);width:2px;height:calc(100% + 6px);margin-left:-1px;position:absolute;top:-3px}.dens-row .n{text-align:right}.hbar .n{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.alerts{flex-direction:column;gap:6px;display:flex}.alert{font-size:var(--fs-sm);background:var(--surface-2);border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.alert.bad{background:var(--bad-bg)}.alert.warn{background:var(--warn-bg)}.alert.info{background:var(--info-bg)}.alert b{white-space:nowrap}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 16px;display:grid}.field{font-size:var(--fs-sm);flex-direction:column;gap:4px;display:flex}.field small{color:var(--muted);font-size:var(--fs-xs)}.toggle{font-size:var(--fs-sm);align-items:center;gap:8px;display:flex}.inline-input{width:100%;font-size:var(--fs-sm);padding:4px 6px!important}.band-row{border-bottom:1px solid var(--line);grid-template-columns:4.5em 6.5em minmax(0,1fr) minmax(0,1fr) 2.6em;align-items:end;gap:10px;padding:8px 0;display:grid}.band-row:last-child{border-bottom:0}.prow{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-bottom:10px}.prow.bad{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}.prow-head{cursor:pointer;font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.prow-head .spacer{flex:1}.prow-body{border-top:1px solid var(--line);padding:10px 12px 12px}.chips{flex-wrap:wrap;gap:6px;display:flex}.pill.sim{background:var(--orange);color:#fff;border-color:#0000;font-weight:700}.kpi-btn{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;display:block}.kpi-btn:hover{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.kpi-tbl tr.grp td{background:var(--surface-2);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.hz-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.hz-card{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.hz-t{font-size:var(--fs-xs);margin:6px 0 4px;font-weight:700}.hz{font-size:var(--fs-xs);grid-template-columns:5.5em 1fr 6.5em;align-items:center;gap:4px 8px;display:grid}.hz .track{background:var(--surface-2);border-radius:3px;height:12px;overflow:hidden}.hz .track i{border-radius:3px;height:100%;display:block}.hz .n{text-align:right;font-family:var(--f-mono)}.mixbar{display:block}.mixbar button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:minmax(0,11em) 1fr 6em;align-items:center;gap:6px 10px;padding:3px 4px;display:grid}.mixbar button:hover{background:var(--surface-2)}.mixbar .n{text-align:right}.row-icons{justify-content:flex-end;gap:6px;display:flex}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.linkbtn{font:inherit;color:var(--brand-text);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.linkbtn.bad{color:var(--bad);font-weight:700}table.drill td{white-space:nowrap;font-size:var(--fs-xs)}@media (width<=900px){.hz-grid{grid-template-columns:1fr}}@media print{.nav,header,.filterbar .report-ctl,.toasts{display:none!important}}.sbar{border-radius:3px;gap:2px;height:12px;display:flex;overflow:hidden}.sbar i{height:100%;display:block}.sent{font-size:var(--fs-sm);grid-template-columns:minmax(0,9em) 1fr 3.5em;align-items:center;gap:6px 10px;display:grid}.sent .n{text-align:right}#loungeForm input,#loungeForm select{width:100%;min-width:0}.chip{border:1px solid var(--line);font-size:var(--fs-xs);background:var(--surface-2);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.split-tbl tr.bill-p td{background:var(--info-bg)}.split-tbl tr.bill-q td{background:var(--warn-bg)}.band-row .field{margin:0}.band-row>b{font-size:var(--fs-sm);align-self:center}.band-row>span{font-size:var(--fs-xs);align-self:center}#cAccess td,#cRateTable td{vertical-align:middle}.inv-total td{border-top:2px solid var(--ink);font-weight:700}.arch svg{min-width:860px}.arch svg text{fill:var(--ink);font:var(--fs-xs) var(--f-body)}.arch svg .cap{fill:var(--muted);font:700 var(--fs-2xs) var(--f-body);letter-spacing:.08em;text-transform:uppercase}.arch svg .zone{fill:var(--surface-2);stroke:var(--line)}.arch svg .box{fill:var(--surface);stroke:var(--line)}.arch svg .box.key{stroke:var(--brand);stroke-width:1.5px}.arch svg .edge{stroke:var(--muted);stroke-width:1.3px;fill:none}.arch svg .edge.sec{stroke:var(--gold-text);stroke-dasharray:5 4}.arch svg .sub{fill:var(--muted);font-size:var(--fs-2xs)}.policy{font-size:var(--fs-sm);grid-template-columns:minmax(0,11em) 1fr;gap:6px 12px;margin:0;display:grid}.policy dt{color:var(--muted)}.policy dd{margin:0}.yes{color:var(--ok);font-weight:700}.no{color:var(--muted)}.report-ctl{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pos-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.pos-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.pos-tile{border:1px solid var(--line);background:var(--surface);text-align:left;min-height:84px;font:inherit;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;display:flex}.pos-tile b{font-size:var(--fs-base)}.pos-tile small{color:var(--muted);font-size:var(--fs-xs)}.pos-tile .pos-ico{font-size:var(--fs-lg);color:var(--brand-text);line-height:1}.pos-tile:hover:not(:disabled){border-color:var(--brand)}.pos-tile[aria-pressed=true]{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.pos-tile:disabled{opacity:.4}.tbl-wrap.wide table td{white-space:normal}.tbl-wrap.wide table td.mono{white-space:nowrap}.tk-add{border:1px solid var(--line);border-radius:10px;margin-top:12px;padding:10px 12px}.tk-add .chips{margin:6px 0}.tk-add .chips label{border:1px solid var(--line);font-size:var(--fs-sm);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.tk-add .chips label:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}body.nav-off .shell{grid-template-columns:minmax(0,1fr)}body.nav-off nav.side{display:none}.nav-open{background:var(--surface);border:1px solid var(--line);width:36px;height:36px;font-size:var(--fs-lg);color:var(--ink);border-radius:8px;place-items:center;margin:-8px 0 12px;line-height:1;display:grid}nav.side .nav-close{border:1px solid var(--line);width:28px;height:28px;font-size:var(--fs-md);color:var(--muted);background:0 0;border-radius:6px;align-self:flex-end;place-items:center;margin-bottom:6px;line-height:1;display:grid;justify-content:center!important;padding:0!important}.mx td.mxc{padding:4px}.mx td.mxc button{text-align:left;border:1px solid var(--line);background:var(--surface);width:100%;font:inherit;cursor:pointer;border-radius:8px;padding:6px 8px;line-height:1.3}.mx td.mxc button:hover{border-color:var(--brand)}.mx td.mxc button.on{outline:2px solid var(--brand)}.mx td.mxc button.n{color:var(--muted)}.mx td.mxc small{font-size:var(--fs-2xs);color:var(--muted);display:block}.mx th{white-space:normal}.ptype-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.ptype{text-align:left;border:1px solid var(--line);background:var(--surface);font:inherit;color:inherit;cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:16px;display:flex}.ptype:hover{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.ptype b{font-size:var(--fs-md)}.ptype small{color:var(--muted);font-size:var(--fs-sm)}.ptype-ico{color:var(--brand-text);font-size:22px}.ptype-bar{flex-wrap:wrap;align-items:center;gap:10px;margin:-2px 0 12px;display:flex}.bp-read{border:1px dashed var(--line);background:var(--surface);border-radius:10px;margin-top:10px;padding:10px 12px}.bp-raw{font:500 12px/1.7 var(--f-mono);overflow-wrap:anywhere;background:var(--surface-2);border-radius:6px;margin:6px 0;padding:6px 8px}.bp-raw mark{white-space:nowrap;border-radius:3px;padding:0 2px}.bp-raw mark.ffno{background:var(--info-bg);color:var(--info);outline:1px solid var(--info)}.bp-raw mark.ffst{background:var(--warn-bg);color:var(--warn);outline:1px solid var(--warn)}.bp-raw .sep{color:var(--muted)}@media (width<=700px){.ptype-grid{grid-template-columns:1fr}}.pos-big{min-height:48px;font-size:var(--fs-base);padding:0 20px}.pos-step{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;padding:10px 12px}.pos-step>b{font-size:var(--fs-sm);letter-spacing:.02em}.ticket{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-height:180px;overflow:hidden}.ticket-empty{text-align:center;padding:40px 20px}.ticket-head{background:var(--surface-2);flex-direction:column;gap:4px;padding:16px 18px;display:flex}.ticket-head .big{font-size:var(--fs-2xl);letter-spacing:.04em;font-weight:800;line-height:1.1}.ticket-head.ok{background:var(--ok-bg)}.ticket-head.ok .big{color:var(--ok)}.ticket-head.bad{background:var(--bad-bg)}.ticket-head.bad .big{color:var(--bad)}.ticket-head.warn{background:var(--warn-bg)}.ticket-head.warn .big{color:var(--warn)}.ticket-body{padding:14px 18px}.gatepass{border:1px dashed var(--line);background:var(--surface-2);border-radius:10px;align-items:center;gap:14px;margin-top:10px;padding:10px 12px;display:flex}.gatepass .qr{background:repeating-linear-gradient(0deg,var(--ink) 0 4px,transparent 4px 8px),repeating-linear-gradient(90deg,var(--ink) 0 5px,transparent 5px 9px);background-blend-mode:multiply;opacity:.85;border-radius:6px;flex:none;width:54px;height:54px}.gatepass .code{font-family:var(--mono);font-weight:700;font-size:var(--fs-md);letter-spacing:.04em}.gatepass small{color:var(--muted);font-size:var(--fs-xs);margin-top:2px;display:block}.gatepass.bp .qr{background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 5px,var(--ink) 5px 6px,transparent 6px 9px)}.ticket .checks{border-top:1px solid var(--line);columns:2;column-gap:16px;margin-top:10px;padding-top:8px}.ticket .checks .check{break-inside:avoid}@media (width<=1100px){.pos-grid{grid-template-columns:minmax(0,1fr)}.ticket .checks{columns:1}}@media (width<=760px){.pos-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal-bg{z-index:40;background:#141a2373;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;width:min(720px,100%);max-height:calc(100vh - 32px);padding:20px;overflow:auto;box-shadow:0 20px 60px #0000004d}.icon-btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:6px;place-items:center;width:30px;height:30px;display:inline-grid}.icon-btn:hover{border-color:var(--ink)}.icon-btn svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}@media (width<=1100px){.gates-layout{grid-template-columns:minmax(0,1fr)}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.span-8,.span-7,.span-5,.span-4,.span-6{grid-column:span 12}.trace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.shell{grid-template-columns:minmax(0,1fr)}nav.side{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;gap:4px;padding:8px 16px;position:sticky;top:0;overflow-x:auto}nav.side .grp,nav.side .locked{display:none}nav.side button{white-space:nowrap;width:auto}nav.side button .tor{display:none}main{padding-inline:16px}.gate-row{grid-template-columns:minmax(0,1fr)}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.trace-grid{grid-template-columns:minmax(0,1fr)}.band-right{margin-left:0}.band{position:static}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.num,.kpi .v,td.num,.n{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.kpi .v{letter-spacing:-.01em}body.at-login{overflow:hidden}.login{z-index:200;background:var(--bg);grid-template-columns:minmax(260px,30%) 1fr;display:grid;position:fixed;inset:0;overflow:auto}.login[hidden]{display:none}.login-brand{background:linear-gradient(160deg,var(--slate),#24384d);color:#fff;flex-direction:column;gap:24px;padding:32px 30px;display:flex}.login-logo{background:#fff;border-radius:10px;align-self:flex-start;padding:8px 12px}.login-brand-body{margin-top:auto;margin-bottom:auto}.login-brand h2{color:#fff;font-size:var(--fs-xl);letter-spacing:-.02em;margin:6px 0 8px}.login-brand .sub{color:#ffffff9e;font-size:var(--fs-base);line-height:1.75}.login-points{font-size:var(--fs-sm);color:#ffffffd9;gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.login-points span{background:#ffffff1f;border-radius:6px;place-items:center;width:26px;height:26px;margin-right:10px;display:inline-grid}.login-powered{font-size:var(--fs-xs);color:#ffffff73;margin:0}.eyebrow{font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--brand-text);margin:0;font-weight:700}.eyebrow.light{color:#ffffff8c}.login-main{flex-direction:column;justify-content:center;width:100%;max-width:980px;margin:0 auto;padding:48px 40px;display:flex}.login-main h1{font-size:var(--fs-hero);letter-spacing:-.03em;color:var(--ink);margin:6px 0 8px;font-weight:800;line-height:1.05}.login-main .sub{color:var(--muted);font-size:var(--fs-base);margin:0 0 22px}.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.entry{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:6px;padding:16px 18px;display:flex;box-shadow:0 1px 2px #0000000a}.entry:hover{border-color:var(--brand)}.entry-ico{background:var(--brand-soft);width:34px;height:34px;color:var(--brand-text);border-radius:8px;place-items:center;font-weight:800;display:grid}.entry h3{font-size:var(--fs-md);margin:4px 0 0}.entry p{color:var(--muted);font-size:var(--fs-sm);margin:0}.entry ul{flex-wrap:wrap;gap:6px;margin:4px 0 6px;padding:0;list-style:none;display:flex}.entry li{font-size:var(--fs-xs);background:var(--surface-2);color:var(--muted);border-radius:999px;padding:3px 10px;font-weight:600}.entry-actions{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.login-foot{font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.who{font-size:var(--fs-sm);align-items:center;gap:8px;display:flex}.who b{color:var(--band-fg);font-weight:600}.page-tabs{margin-bottom:14px}.page-tabs button{font-size:var(--fs-sm);padding:6px 14px}.page-tabs button[aria-pressed=true]{background:var(--brand-soft);color:var(--brand-text)}.ga3{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ga3>div{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.ga3 b{font-size:var(--fs-sm)}.ga3 small{color:var(--muted);font-size:var(--fs-xs)}tr.grp-first td{border-top:2px solid var(--line)}@media (width<=900px){.login{grid-template-columns:1fr}.login-brand{padding:20px}.entry-grid,.ga3{grid-template-columns:1fr}}.lg-bar{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px;display:flex}.lg-steps{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:0 0 14px;padding:0;list-style:none;display:grid}@media (width<=900px){.lg-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=520px){.lg-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}.lg-steps button{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;width:100%;height:100%;font:inherit;color:var(--ink);border-radius:10px;align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.lg-steps button:disabled{opacity:.55;cursor:not-allowed}.lg-steps button[aria-current=step]{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 22%,transparent)}.lg-steps .n{background:var(--line);width:22px;height:22px;font:700 12px var(--f-mono);border-radius:50%;flex:none;place-items:center;display:grid}.lg-steps .done .n{background:var(--brand);color:#fff}.lg-steps .warnst .n{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn-line)}.lg-steps b{font-size:var(--fs-sm);display:block}.lg-steps small{color:var(--muted);font-size:var(--fs-xs);line-height:1.3;display:block}.chk-list{flex-wrap:wrap;gap:6px 16px;max-height:140px;padding:4px 0;display:flex;overflow:auto}.chk-list label{font-size:var(--fs-sm);white-space:nowrap;align-items:center;gap:6px;display:flex}.prov-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}@media (width<=900px){.prov-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.prov{text-align:left;border:1px solid var(--line);background:var(--surface);font:inherit;color:inherit;cursor:pointer;border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.prov[aria-pressed=true]{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 22%,transparent)}.prov b{font-size:var(--fs-sm)}.prov small{color:var(--muted);font-size:var(--fs-xs);line-height:1.3}.secret{font-family:var(--f-mono);letter-spacing:.12em}.cap{font:600 var(--fs-xs) var(--f-mono);border:1px solid var(--line);white-space:nowrap;border-radius:6px;padding:1px 6px}.cap.y{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-line)}.cap.n{background:var(--bad-bg);color:var(--bad);border-color:var(--bad-line)}.cap.t{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}.tres{border:1px solid var(--line);border-radius:10px;margin-top:10px;padding:12px}.tres-h{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.sig{border-top:1px solid var(--line);grid-template-columns:26px minmax(0,1fr) auto;align-items:start;gap:2px 10px;padding:8px 0;display:grid}.sig:first-child{border-top:0}.sig .ic{background:var(--line);border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:grid}.sig .ic.ok{background:var(--ok-bg);color:var(--ok)}.sig .ic.bad{background:var(--bad-bg);color:var(--bad)}.sig .ic.warn{background:var(--warn-bg);color:var(--warn)}.sig .ic.na{color:var(--muted)}.sig b{font-size:var(--fs-sm)}.sig .msg{font-size:var(--fs-xs);color:var(--muted);grid-column:2/4}.sig .tag{font:600 var(--fs-xs) var(--f-mono);color:var(--muted)}.lg-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.inl{width:100%;min-width:70px}.ga1>div{border:1px solid var(--line);border-radius:var(--r-card,10px);background:var(--surface);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;display:flex}.ga1 b{font-size:var(--fs-sm)}.ga1 small{color:var(--muted);font-size:var(--fs-xs)}.ga1 input{max-width:220px}.wl-bar{flex-wrap:wrap;align-items:flex-end;gap:10px 16px;margin-bottom:12px;display:flex}.wl-bar .field{min-width:300px}.wl-add{border:1px dashed var(--line);background:var(--surface);border-radius:10px;margin-bottom:12px;padding:12px}.gate-row{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))!important}#liveGrid .panel>h3,#liveGrid .panel h3{text-decoration:underline;-webkit-text-decoration-color:var(--brand);text-decoration-color:var(--brand);text-underline-offset:5px;font-weight:800;text-decoration-thickness:2px}#liveKpis .label{font-weight:800}#ct-tiers #tmTable th:first-child,#ct-tiers #tmTable td:first-child,#ct-tiers #tmTable th:nth-child(6),#ct-tiers #tmTable td:nth-child(6),#ct-tiers #tmTable th:nth-child(9),#ct-tiers #tmTable td:nth-child(9){display:none}#ct-tiers .dash-grid{margin-top:0}#ct-tiers #tmTable select{max-width:190px;min-width:0!important}#ct-tiers #tmTable input[type=text]{max-width:150px;min-width:0!important}.ulg{flex-wrap:wrap;gap:4px;display:flex}.ulg button{font:600 var(--fs-xs) var(--f-mono);border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:6px;padding:2px 7px}.ulg button[aria-pressed=true]{background:var(--brand-soft);color:var(--brand-text);border-color:var(--brand)}.ulg button:disabled{cursor:default}.pb-bars{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:end;gap:6px;height:150px;padding-top:8px;display:grid}.pb-bar{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.pb-bar i{background:var(--brand);border-radius:6px 6px 0 0;width:70%;max-width:46px;min-height:2px;display:block}.pb-bar i.now{background:var(--warn)}.pb-bar b{font:700 var(--fs-xs) var(--f-mono)}.pb-bar small{font:500 var(--fs-xs) var(--f-mono);color:var(--muted)}.filterbar.fb2{border-radius:12px;padding:12px 16px 14px;display:block;box-shadow:0 1px 3px #0000000d}.fb-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fb-ico{border:1px solid var(--line);width:30px;height:30px;color:var(--brand-text);background:var(--brand-soft);border-radius:8px;place-items:center;display:grid}.fb-ico svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linejoin:round;width:15px;height:15px}.fb-title{font-weight:700;font-size:var(--fs-base)}.fb-count{background:var(--brand);color:var(--brand-ink);min-width:22px;height:22px;font:700 var(--fs-xs)/22px var(--f-body);text-align:center;border-radius:999px;padding:0 6px}.fb-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.fb-grp{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:stretch;display:inline-flex;overflow:hidden}.fb-grp>span{font-size:var(--fs-2xs);letter-spacing:.1em;color:var(--muted);border-right:1px solid var(--line);place-items:center;padding:0 10px;font-weight:700;display:grid}.fb-grp button{font-size:var(--fs-xs);color:var(--muted);background:0 0;border:0;padding:5px 11px;font-weight:700}.fb-grp button[aria-pressed=true]{background:var(--slate);color:var(--slate-ink)}.fb-grp b{min-width:26px;font:700 var(--fs-xs) var(--f-mono);border-left:1px solid var(--line);border-right:1px solid var(--line);place-items:center;display:grid}.fb-tools .btn{padding:6px 12px}.fb-tools .btn.fb-apply{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.fb-tools .btn.fb-apply:disabled{opacity:.45}.fb-toggle{font-size:var(--fs-sm);color:var(--muted);background:0 0;border:0;padding:4px 6px;font-weight:600}.fb-body{flex-wrap:wrap;align-items:flex-end;gap:12px 14px;margin-top:12px;display:flex}.fb2.fb-hidden .fb-body{display:none}.fb-body .field{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.09em;color:var(--muted);flex:0 200px;gap:6px;min-width:170px;font-weight:700}.fb-body .field select,.fb-body .field input{border:1px solid var(--line);background:var(--surface);text-transform:none;letter-spacing:0;font-weight:500;font-size:var(--fs-sm);color:var(--ink);border-radius:8px;width:100%;min-height:36px;padding:7px 10px}.fb-body .field input[type=date]{font-family:var(--f-mono)}.fb-body .field.fb-pending select,.fb-body .field.fb-pending input{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.fb-body .seg{align-self:flex-end;min-height:36px}.fb-body .seg button{padding:6px 12px}.fb-tools .report-ctl .fmt{min-height:32px}.kt{border-top:3px solid var(--kt);color:inherit;--kt:var(--brand-text);flex-direction:column;gap:6px;padding:14px 16px 8px;display:flex}.kt>.label{font-size:var(--fs-xs);letter-spacing:.09em}.kt-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.kt-v{font:800 var(--fs-2xl)/1.1 var(--f-mono);color:var(--kt);letter-spacing:-.02em}.kt-cmp{font:500 var(--fs-sm) var(--f-mono);color:var(--muted)}.kt-cmp b{color:var(--ink);font-weight:700}.kt-pill{font:600 var(--fs-xs) var(--f-mono);color:var(--kt);background:color-mix(in srgb,var(--kt) 10%,transparent);border:1px solid color-mix(in srgb,var(--kt) 35%,transparent);border-radius:6px;padding:2px 8px}.kt-abs{font:600 var(--fs-xs) var(--f-mono);color:var(--kt);letter-spacing:.04em}.kt-x{margin-top:-2px}.kt-spark{width:100%;height:auto;color:var(--kt);margin-top:2px;display:block;overflow:visible}.kt-pt{font:600 10px var(--f-mono);fill:var(--ink)}.kt-ax{font:600 9.5px var(--f-mono);fill:var(--muted)}@media (width<=1100px){#pfKpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (width<=640px){#pfKpis{grid-template-columns:minmax(0,1fr)!important}.fb-body .field{flex:100%}}.prow-head{flex-wrap:nowrap}.prow-head>span:first-of-type{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.prow-head .spacer{display:none}.prow-head .btn,.prow-head .pill{white-space:nowrap;flex:none}:root{--sv-forest:#1b3a0a;--sv-deep:#243f10;--sv-mid:#3b6b1a;--sv-bright:#4e8c24;--sv-accent:#6f9d33;--sv-accent-off:#b5c99a;--sv-sage:#8bbd5a;--sv-mint:#c8e6a8;--sv-cream:#eef4e6;--sv-paper:#f5f8f0;--sv-side:linear-gradient(155deg,#4a7c24 0%,#375f18 55%,#2d5114 100%);--bg:#f5f8f0;--surface:#fff;--surface-2:#f8faf5;--surface-end:#fbfcf8;--ink:#1a2d0a;--ink-2:#2a3422;--ink-row:#36442d;--muted:#4e565e;--faint:#5c646d;--label:#7d8873;--line:#dfe7d7;--line-soft:#00000012;--line-input:#c6d0b6c7;--line-ghost:#cad5b7c7;--brand:#6f9d33;--brand-ink:#fff;--brand-text:#4e8c24;--brand-soft:#eef4e6;--slate:#4e8c24;--slate-ink:#fff;--orange:#b8741f;--gold:var(--brand);--gold-ink:var(--brand-ink);--gold-text:var(--brand-text);--band:#fff;--band-fg:#1a2d0a;--band-muted:#87937b;--band-line:#1b3a0a14;--band-hover:#f5f8f0;--band-on:#4e8c24;--ok:#0f7a5f;--ok-bg:#ecf8f3;--ok-line:#bfe5d6;--bad:#a83a2a;--bad-bg:#fdecea;--bad-line:#f5b8b5;--warn:#8a5a0c;--warn-bg:#fef3e2;--warn-line:#edcc96;--info:#0c447c;--info-bg:#e6f1fb;--info-line:#85b7eb;--up:#0f8a6b;--up-soft:#ecf8f3;--up-line:#bfe5d6;--down:#a24736;--down-soft:#fff3ef;--down-line:#f1cdc4;--chart-1:#4e8c24;--chart-2:#b5c99a;--grid:#e6ece0;--f-display:"Inter",system-ui,sans-serif;--f-body:"Inter",system-ui,sans-serif;--f-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--fs-2xs:10px;--fs-xs:11px;--fs-sm:12px;--fs-base:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:22px;--fs-2xl:26px;--fs-hero:34px;--ls-caps:.1em;--ls-tight:-.03em;--r-sm:6px;--r-card:8px;--r-md:10px;--r-ctl:12px;--r-lg:14px;--r-full:999px;--sh-card:inset 0 1px 0 #fffffff0,0 8px 22px #1e2f221a;--sh-hover:0 2px 6px #1b3a0a14,0 16px 40px #1b3a0a24;--sh-modal:0 16px 48px #1b3a0a2e;--card-bg:linear-gradient(180deg,#fff 0%,#fbfcf8 100%);--t-fast:.1s ease-out;--t-mid:.2s ease-out;--neutral-bg:#f5f8ef;--neutral-line:#dce6cf;--th-line:#dfe7d4;--row-hover:#f7faf3;--ghost-ink:#7c8872;--tab-ink:#75826b;--tab-on:#26321f;--ctl-ink:#4a5e3a;--input-hover:#b4c49f;--flat:#5f7148;--flat-soft:#f5f8ef;--flat-line:#dce6cf}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#10150d;--surface:#171e13;--surface-2:#1c2518;--surface-end:#192115;--ink:#e4ecdb;--ink-2:#d6e0cb;--ink-row:#cbd6bf;--muted:#a3ae97;--faint:#98a38c;--label:#8d9881;--line:#2c3825;--line-soft:#ffffff12;--line-input:#38462f;--line-ghost:#38462f;--brand:#7fb043;--brand-ink:#0f1a07;--brand-text:#a6d27a;--brand-soft:#223018;--slate:#7fb043;--slate-ink:#0f1a07;--orange:#e3a24e;--band:#141a10;--band-fg:#e4ecdb;--band-muted:#98a38c;--band-line:#2c3825;--band-hover:#1c2518;--band-on:#a6d27a;--ok:#5fd0a8;--ok-bg:#12302a;--ok-line:#1f5245;--bad:#ff8c78;--bad-bg:#3a1a14;--bad-line:#6a2e23;--warn:#f2b453;--warn-bg:#36280e;--warn-line:#6a4e18;--info:#8fbcf2;--info-bg:#132741;--info-line:#2b4f7a;--up:#5fd0a8;--up-soft:#12302a;--up-line:#1f5245;--down:#ff8c78;--down-soft:#3a1a14;--down-line:#6a2e23;--chart-1:#8bbd5a;--chart-2:#4f6340;--grid:#263020;--sh-card:0 1px 0 #ffffff08 inset,0 8px 22px #00000059;--sh-modal:0 16px 48px #00000080;--card-bg:linear-gradient(180deg,#19210f 0%,#171e13 100%);--neutral-bg:#1c2518;--neutral-line:#2c3825;--th-line:#2c3825;--row-hover:#1c2518;--ghost-ink:#a3ae97;--tab-ink:#98a38c;--tab-on:#e4ecdb;--ctl-ink:#c3cfb6;--input-hover:#4a5a3f;--flat:#b9c7a6;--flat-soft:#1c2518;--flat-line:#2c3825;--sv-side:linear-gradient(155deg,#2f5016 0%,#233d10 55%,#1b300c 100%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#10150d;--surface:#171e13;--surface-2:#1c2518;--surface-end:#192115;--ink:#e4ecdb;--ink-2:#d6e0cb;--ink-row:#cbd6bf;--muted:#a3ae97;--faint:#98a38c;--label:#8d9881;--line:#2c3825;--line-soft:#ffffff12;--line-input:#38462f;--line-ghost:#38462f;--brand:#7fb043;--brand-ink:#0f1a07;--brand-text:#a6d27a;--brand-soft:#223018;--slate:#7fb043;--slate-ink:#0f1a07;--orange:#e3a24e;--band:#141a10;--band-fg:#e4ecdb;--band-muted:#98a38c;--band-line:#2c3825;--band-hover:#1c2518;--band-on:#a6d27a;--ok:#5fd0a8;--ok-bg:#12302a;--ok-line:#1f5245;--bad:#ff8c78;--bad-bg:#3a1a14;--bad-line:#6a2e23;--warn:#f2b453;--warn-bg:#36280e;--warn-line:#6a4e18;--info:#8fbcf2;--info-bg:#132741;--info-line:#2b4f7a;--up:#5fd0a8;--up-soft:#12302a;--up-line:#1f5245;--down:#ff8c78;--down-soft:#3a1a14;--down-line:#6a2e23;--chart-1:#8bbd5a;--chart-2:#4f6340;--grid:#263020;--sh-card:0 1px 0 #ffffff08 inset,0 8px 22px #00000059;--sh-modal:0 16px 48px #00000080;--card-bg:linear-gradient(180deg,#19210f 0%,#171e13 100%);--neutral-bg:#1c2518;--neutral-line:#2c3825;--th-line:#2c3825;--row-hover:#1c2518;--ghost-ink:#a3ae97;--tab-ink:#98a38c;--tab-on:#e4ecdb;--ctl-ink:#c3cfb6;--input-hover:#4a5a3f;--flat:#b9c7a6;--flat-soft:#1c2518;--flat-line:#2c3825;--sv-side:linear-gradient(155deg,#2f5016 0%,#233d10 55%,#1b300c 100%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--ink);font:400 var(--fs-base)/1.5 var(--f-body)}h2{font-size:var(--fs-xl);letter-spacing:var(--ls-tight);color:var(--ink);font-weight:800}h3{font-size:var(--fs-md);color:var(--ink-2);font-weight:700}.view-head p,.muted{color:var(--muted)}.label{font-size:var(--fs-xs);letter-spacing:var(--ls-caps);color:var(--faint);font-weight:700}a,.linkbtn{color:var(--brand-text);font-weight:600}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--sv-mint)}.band{background:var(--band);color:var(--band-fg);border-bottom:1px solid var(--band-line);box-shadow:none}.brand h1{letter-spacing:0;text-transform:none;color:var(--ink-2);font-size:15px;font-weight:700}.brand p{color:var(--band-muted);font-size:var(--fs-sm)}.proto{background:var(--orange);border-radius:var(--r-sm);font-size:var(--fs-2xs)}.clock{color:var(--brand-text);font-size:var(--fs-lg)}.who b{color:var(--ink-2);font-size:var(--fs-base);font-weight:600}.band select{border:1px solid var(--line-input);border-radius:var(--r-ctl);height:30px;font-size:var(--fs-sm)}.shell{grid-template-columns:220px minmax(0,1fr)}nav.side{background:var(--sv-side);border-right:0;gap:2px;padding:12px 8px}nav.side button{border-radius:var(--r-sm);color:#ffffff8c;height:36px;font-size:var(--fs-base);transition:background var(--t-fast),color var(--t-fast);border-left:3px solid #0000;padding:0 12px;font-weight:500}nav.side button:hover{color:#ffffffd9;background:#ffffff12}nav.side button[aria-current=page]{color:#fff;border-left-color:var(--sv-sage);box-shadow:none;background:#ffffff1f}nav.side .grp{color:#ffffff4d;font-size:var(--fs-sm);letter-spacing:.14em}nav.side .nav-close{color:#ffffffbf;background:0 0;border-color:#ffffff40;border-left-width:1px}nav.side .nav-close:hover{color:#fff;background:#ffffff1f}.nav-open{border:1px solid var(--line-ghost);background:var(--surface-end);color:var(--sv-bright);border-radius:var(--r-md)}@media (width<=760px){.shell{grid-template-columns:minmax(0,1fr)}}.seg.page-tabs,#cTabs{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;gap:2px;display:flex}.seg.page-tabs button,#cTabs button{border-radius:var(--r-md) var(--r-md) 0 0;height:38px;color:var(--tab-ink);font-size:var(--fs-base);background:0 0;padding:0 16px;font-weight:500;box-shadow:inset 0 -3px #0000}.seg.page-tabs button:hover,#cTabs button:hover{color:var(--ink-2)}.seg.page-tabs button[aria-pressed=true],#cTabs button[aria-pressed=true]{color:var(--tab-on);box-shadow:inset 0 -3px 0 var(--brand);background:linear-gradient(#6f9d330f 0%,#6f9d3304 100%);font-weight:600}.seg{background:var(--neutral-bg);border:1px solid var(--neutral-line);border-radius:var(--r-card);gap:2px;padding:2px}.seg button{border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-sm);background:0 0;padding:4px 10px;font-weight:400}.seg button:hover{color:var(--ink)}.seg button[aria-pressed=true],.filterbar .seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000000d}.panel,.kpi,.gate,.ticket,.entry,.hz-card,.prow,.pos-tile,.sample{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--sh-card)}.panel{padding:14px 16px}.panel>h3,.ph h3{font-size:var(--fs-md);color:var(--ink-2);font-weight:700}.kpi{padding:14px 15px 10px}.kpi .label{font-size:var(--fs-sm);letter-spacing:.14em;color:var(--faint);font-weight:800}.kpi .v{font:700 var(--fs-2xl)/1 var(--f-mono);letter-spacing:-.06em;color:var(--ink)}.kpi .s{color:var(--muted);font-size:var(--fs-xs)}.kpi-btn:hover,.pos-tile:hover:not(:disabled),.sample:hover,.entry:hover{border-color:var(--sv-sage);box-shadow:var(--sh-hover)}.pos-tile[aria-pressed=true],.sample[aria-pressed=true]{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.kt{--kt:var(--brand-text);border-top:3px solid var(--kt)}.kt.up{--kt:var(--up)}.kt.dn{--kt:var(--down)}.kt.nt{--kt:var(--flat)}.kt-v{font-size:var(--fs-2xl);letter-spacing:-.06em;font-weight:700}.kt-pill{border-radius:9px;padding:0 8px;font-weight:800}.kt.nt .kt-pill{background:var(--flat-soft);border-color:var(--flat-line)}.kt.up .kt-pill{background:var(--up-soft);border-color:var(--up-line)}.kt.dn .kt-pill{background:var(--down-soft);border-color:var(--down-line)}.kt-abs{font-family:var(--f-body);letter-spacing:.1em;font-weight:500}.pos-step{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-card)}.meter{background:var(--neutral-bg)}.btn{border-radius:var(--r-ctl);border:1px solid var(--line-ghost);background:var(--surface-end);min-height:34px;color:var(--ink-2);font-size:var(--fs-sm);transition:border-color var(--t-fast),background var(--t-fast),box-shadow var(--t-fast);justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--sv-sage);background:var(--surface)}.btn.primary,.btn.gold{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:700}.btn.primary:hover:not(:disabled),.btn.gold:hover:not(:disabled){background:var(--sv-bright);border-color:var(--sv-bright)}.btn.danger{color:var(--bad);border-color:var(--bad-line);background:var(--surface)}.btn.danger:hover:not(:disabled){background:var(--bad-bg);border-color:var(--bad)}.btn.small{border-radius:var(--r-sm);min-height:28px;font-size:var(--fs-sm);padding:0 10px}.btn:disabled{opacity:.45}.btn.primary:disabled{background:var(--sv-accent-off);border-color:var(--sv-accent-off);opacity:1}.pos-big{min-height:44px;font-size:var(--fs-base);border-radius:var(--r-ctl)}.icon-btn{border:1px solid var(--line-ghost);background:var(--surface-end);border-radius:var(--r-sm);color:var(--ctl-ink)}.icon-btn:hover{border-color:var(--sv-sage);background:var(--surface)}.icon-btn.danger:hover{border-color:var(--bad);color:var(--bad)}.linkbtn:hover{text-decoration:underline}input[type=text],input[type=number],input[type=search],input[type=date],input[type=tel],select,textarea{background:var(--surface);border:1px solid var(--line-input);min-height:34px;font:500 var(--fs-sm)/1.4 var(--f-body);color:var(--ink);transition:border-color var(--t-fast),box-shadow var(--t-fast);border-radius:11px;padding:0 11px}textarea{padding:8px 11px}input[type=date],input[type=number]{font-family:var(--f-mono);font-size:12.5px;font-weight:400}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--input-hover)}input:focus,select:focus,textarea:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #6f9d332e}.inline-input{border-radius:var(--r-sm)!important;min-height:30px!important}.field{font-size:var(--fs-sm);color:var(--ink-2);font-weight:500}.field small{color:var(--faint);font-size:var(--fs-xs);font-weight:400}input[type=checkbox],input[type=radio]{accent-color:var(--brand)}.tbl-wrap{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface)}table{font-size:var(--fs-sm)}th{font-size:var(--fs-sm);letter-spacing:.05em;text-transform:uppercase;color:var(--faint);background:var(--surface-2);border-bottom:1px solid var(--th-line);padding:7px 10px;font-weight:700;line-height:1.2}td{font-size:var(--fs-sm);color:var(--ink-row);border-top:0;border-bottom:1px solid var(--line-soft);padding:6px 10px;line-height:1.4}td.num,td .num,td.mono,.num{font-family:var(--f-mono)}tbody tr:hover td{background:var(--row-hover)}tr.sel td{background:var(--brand-soft)}tr.hl td{background:var(--warn-bg)}.inv-total td,tr.inv-total td{color:var(--ink);border-top:2px solid var(--sv-mid);font-weight:700}.kpi-tbl tr.grp td{background:var(--surface-2);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--faint)}.kpi-tbl tr[data-drillk]:hover td,.tbl-wrap tr[data-drillch]:hover td{background:var(--brand-soft)}.pill{border:1px solid var(--neutral-line);background:var(--neutral-bg);color:var(--muted);font-size:var(--fs-xs);border-radius:var(--r-full);padding:2px 9px;font-weight:600}.pill.ok{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-line)}.pill.bad{background:var(--bad-bg);color:var(--bad);border-color:var(--bad-line)}.pill.warn{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}.pill.info{background:var(--info-bg);color:var(--info);border-color:var(--info-line)}.pill.brand{background:var(--brand-soft);color:var(--brand-text);border-color:var(--neutral-line)}.pill.sim{background:var(--orange);color:#fff;border-color:#0000}.torref{color:var(--brand-text);border:1px solid var(--neutral-line);background:var(--brand-soft);border-radius:var(--r-sm);font-size:var(--fs-2xs)}.chip,.chips label{border:1px solid var(--line-input);background:var(--surface);border-radius:var(--r-full);font-size:var(--fs-sm)}.tk-add .chips label:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}.chips label:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}.verdict.ok,.ticket-head.ok{background:var(--ok-bg)}.verdict.bad,.ticket-head.bad{background:var(--bad-bg)}.verdict.warn,.ticket-head.warn{background:var(--warn-bg)}.alert{border-radius:var(--r-card);border:1px solid var(--line)}.alert.bad{background:var(--bad-bg);border-color:var(--bad-line)}.alert.warn{background:var(--warn-bg);border-color:var(--warn-line)}.alert.info{background:var(--info-bg);border-color:var(--info-line)}.emerg{background:var(--bad)}.gatepass{border-radius:var(--r-card);background:var(--surface-2);border-color:var(--line)}.ga3>div,.tk-add{border-color:var(--line);border-radius:var(--r-card);background:var(--surface)}.mx td.mxc button{border-radius:var(--r-card);border-color:var(--line)}.mx td.mxc button.y{background:var(--ok-bg)}.mx td.mxc button.y b{color:var(--ok)}.mx td.mxc button.on{outline-color:var(--brand)}.hm-cell{background:color-mix(in srgb,var(--chart-1) calc(var(--p) * 100%),var(--neutral-bg))}.hbar .track,.hz .track,.dens-row .track{background:var(--neutral-bg)}.filterbar.fb2{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--sh-card);padding:10px 12px}.fb-ico{background:var(--neutral-bg);border-color:var(--line);color:var(--sv-accent);border-radius:var(--r-card)}.fb-title{font-size:var(--fs-base);color:var(--ink-2);font-weight:700}.fb-count{background:var(--brand);color:#fff;font-size:var(--fs-sm);min-width:20px;height:20px;line-height:20px}.fb-count[data-n="0"]{background:var(--neutral-bg);color:var(--faint)}.fb-grp{border:1px solid var(--line-input);border-radius:var(--r-ctl);height:34px}.fb-grp>span{font-size:var(--fs-2xs);color:var(--label)}.fb-grp button{font-size:var(--fs-sm);color:var(--ghost-ink);font-weight:500}.fb-grp button[aria-pressed=true]{background:var(--brand);color:#fff;font-weight:600}.fb-tools .btn{border-radius:var(--r-ctl);min-height:34px}.fb-tools .btn.fb-reset{background:var(--surface-end);border-color:var(--line-ghost);color:var(--ghost-ink)}.fb-tools .btn.fb-apply{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:700}.fb-tools .btn.fb-apply:disabled{background:var(--sv-accent-off);border-color:var(--sv-accent-off);opacity:1}.fb-toggle{font-size:var(--fs-sm);color:var(--ghost-ink);border:1px solid var(--line-ghost);background:var(--surface-end);border-radius:11px;height:30px;padding:0 13px;font-weight:600}.fb-body .field{font-size:var(--fs-sm);letter-spacing:.08em;color:var(--label);font-weight:600}.fb-body .field select,.fb-body .field input{border-color:var(--line-input);min-height:32px;font-size:var(--fs-sm);color:var(--ink);border-radius:11px;font-weight:500}.fb-body .field input[type=date]{border-radius:var(--r-ctl);font-size:12.5px}.modal-bg{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1b3a0a47}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-modal);padding:20px 22px}.modal h3{font-size:var(--fs-lg);letter-spacing:-.01em;color:var(--ink);font-weight:800}.toast{color:#f9fbf8;border-radius:var(--r-md);font-size:var(--fs-sm);box-shadow:var(--sh-modal);background:#22352c}.login{background:var(--bg)}.login-brand{background:var(--sv-side)}.login-points span{background:#ffffff1f}.eyebrow{color:var(--brand-text);letter-spacing:.14em;font-size:var(--fs-sm)}.login-main h1{letter-spacing:var(--ls-tight);color:var(--ink);font-weight:800}.entry-ico{background:var(--brand-soft);color:var(--brand-text);border-radius:var(--r-card)}.entry li{background:var(--neutral-bg);border:1px solid var(--neutral-line);color:var(--muted)}svg.chart text{fill:var(--faint);font-size:var(--fs-xs)}.flap{background:color-mix(in srgb,var(--chart-1) 30%,transparent);border-color:var(--chart-1)}.lane{background:var(--surface-2)}.flow b{border-radius:var(--r-sm)}.flow b.on{background:var(--brand);color:#fff}.check.ok i{color:var(--ok)}.check.bad,.check.bad i{color:var(--bad)}.check.skip i{color:var(--warn)}@media print{.band,nav.side{box-shadow:none}}.profile{position:relative}.profile-btn{background:var(--surface);border:1px solid var(--line);font-size:var(--fs-sm);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 4px;display:flex}.profile-btn:hover{border-color:var(--brand)}.profile-av{background:var(--brand);color:#fff;width:28px;height:28px;font:700 12px var(--f-body);border-radius:50%;place-items:center;display:grid}.profile-caret{color:var(--muted);font-size:11px}.profile-menu{background:var(--surface);border:1px solid var(--line);z-index:60;border-radius:10px;flex-direction:column;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #0000001f}.profile-head{border-bottom:1px solid var(--line);font-size:var(--fs-sm);flex-direction:column;margin-bottom:4px;padding:8px 10px 10px;display:flex}.profile-head .muted{font-size:var(--fs-xs)}.profile-menu button{text-align:left;font-size:var(--fs-sm);color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 10px}.profile-menu button:hover{background:var(--brand-soft)}.form-grid{align-items:start}.form-grid+.form-grid,.form-grid+div,.form-grid+.panel{margin-top:14px}.form-grid .field>input,.form-grid .field>select,.form-grid .field>textarea{box-sizing:border-box;width:100%}.modal .field{min-width:0}.fb-toggle{align-items:center;gap:6px;line-height:1;display:inline-flex}.fb-toggle .fb-chev{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.btn .spinner{vertical-align:-2px;border:2px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;margin-right:6px;animation:.7s linear infinite lms-spin;display:inline-block}@keyframes lms-spin{to{transform:rotate(360deg)}}.save-bar{z-index:5;background:var(--surface);border:1px solid var(--line);font-size:var(--fs-sm);border-radius:12px;align-items:center;gap:8px;margin-top:8px;padding:10px 16px;display:flex;position:sticky;bottom:0;box-shadow:0 -6px 18px #1b3a0a14}nav.side .nav-area{flex-direction:column;gap:2px;margin-bottom:6px;display:flex}nav.side .nav-area-btn{letter-spacing:.08em;text-transform:uppercase;font-size:var(--fs-xs)!important;color:#ffffffb3!important;height:32px!important;font-weight:700!important}nav.side .nav-area-btn:hover{color:#fff!important}nav.side .nav-chev{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}nav.side .nav-page{padding-left:22px!important}nav.side .nav-access{opacity:.85;border-radius:6px;flex:none;place-items:center;width:20px;height:20px;display:inline-grid}nav.side .nav-access svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}nav.side .nav-access.approve{color:#bfe3a0}nav.side .nav-access.edit{color:#ffe08a}nav.side .nav-access.view{color:#ffffff8c}@media (width<=900px){nav.side .nav-area{flex-direction:row;margin:0}nav.side .nav-area-btn{display:none!important}nav.side .nav-page{padding-left:12px!important}}nav.side .nav-access-set{flex:none;gap:2px;display:inline-flex}.fb-sheet{top:64px;right:var(--space-6);z-index:9000;border:1px solid var(--border-mid);width:360px;max-height:calc(100vh - 88px);box-shadow:var(--shadow-modal);background:#fff;border-radius:14px;flex-direction:column;display:flex;position:fixed;overflow:hidden}.fb-sheet__head{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);display:flex}.fb-sheet__title{color:var(--text-primary);flex:1;margin:0;font-size:14px;font-weight:700}.fb-sheet__close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;display:flex}.fb-sheet__close:hover{background:var(--paper);color:var(--text-primary)}.fb-sheet__tabs{gap:var(--space-2);padding:0 var(--space-4);border-bottom:1px solid var(--border-light);display:flex}.fb-sheet__tab{padding:var(--space-2) 2px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-size:13px;font-weight:600}.fb-sheet__tab[data-active]{color:var(--accent-action);border-bottom-color:var(--accent-action)}.fb-sheet__body{padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex;overflow-y:auto}.fb-sheet__subtitle{color:var(--text-secondary);margin:0;font-size:12px}.fb-sheet__categories{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.fb-sheet__category{align-items:center;gap:var(--space-2);border:1px solid var(--border-mid);padding:var(--space-2) var(--space-3);color:var(--text-primary);cursor:pointer;text-align:left;background:#fff;border-radius:10px;font-size:12px;font-weight:600;display:flex}.fb-sheet__category:hover{background:var(--paper)}.fb-sheet__category[data-active]{border-color:var(--accent-action);color:var(--accent-action);background:color-mix(in srgb, var(--accent-action) 8%, transparent)}.fb-sheet__textarea{font:inherit;color:var(--text-primary);resize:vertical;border:1px solid var(--border-mid);padding:var(--space-3);background:#fff;border-radius:10px;font-size:13px}.fb-sheet__shotrow{gap:var(--space-2);flex-wrap:wrap;display:flex}.fb-sheet__shotbtn{color:var(--text-primary);border:1px solid var(--border-mid);padding:var(--space-2) var(--space-3);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.fb-sheet__shotbtn:hover{background:var(--paper)}.fb-sheet__shotbtn:disabled{opacity:.6;cursor:default}.fb-sheet__pastehint{color:var(--text-secondary);text-align:center;margin:-4px 0 0;font-size:11px}.fb-sheet__thumbwrap{max-width:100%;display:inline-block;position:relative}.fb-sheet__thumb{border:1px solid var(--border-light);border-radius:10px;width:auto;max-width:240px;height:auto;max-height:150px;display:block}.fb-sheet__thumbremove{color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:6px;right:6px}.fb-sheet__included{background:var(--paper);padding:var(--space-3);border-radius:10px}.fb-sheet__included-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;font-size:10px;font-weight:700}.fb-sheet__chips{flex-wrap:wrap;gap:6px;display:flex}.fb-sheet__chip{color:var(--text-secondary);border:1px solid var(--border-mid);background:#fff;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.fb-sheet__send{background:var(--green-text,#1a7f37);color:#fff;padding:var(--space-3);cursor:pointer;border:none;border-radius:10px;font-size:13px;font-weight:700}.fb-sheet__send:hover{filter:brightness(1.05)}.fb-sheet__send:disabled{opacity:.6;cursor:default}.fb-panel__error{color:var(--red-text);margin:0;font-size:12px}.fb-panel__empty{color:var(--text-secondary);margin:0;font-size:13px}.fb-ticket{border:1px solid var(--border-light);padding:var(--space-3);border-radius:10px;flex-direction:column;gap:6px;display:flex}.fb-ticket__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.fb-ticket__title{color:var(--text-primary);font-size:13px;font-weight:600}.fb-ticket__status{white-space:nowrap;background:var(--paper);color:var(--text-secondary);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.fb-ticket__status[data-status=resolved]{background:var(--green-bg);color:var(--green-text)}.fb-ticket__status[data-status=in_progress]{background:var(--amber-bg);color:var(--amber-text)}.fb-ticket__meta{color:var(--text-secondary);margin:0;font-size:11px}.fb-ticket__reply{background:var(--paper);padding:var(--space-2) var(--space-3);border-radius:8px;font-size:12px}.fb-ticket__reply p{margin:0 0 6px}.fb-ticket__reaction{gap:var(--space-2);display:flex}.fb-ticket__reaction button{border:1px solid var(--border-mid);cursor:pointer;background:#fff;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:4px;padding:4px 6px;font-size:11px;display:flex}.fb-ticket__reacted{color:var(--text-secondary);margin:0;font-size:11px;font-style:italic}.fb-capture__scrim{z-index:9100;padding:var(--space-4);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.fb-capture{box-shadow:var(--shadow-modal);background:#fff;border-radius:14px;flex-direction:column;width:100%;max-width:960px;display:flex;overflow:hidden}.fb-capture__head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--border-light);flex-wrap:wrap;display:flex}.fb-capture__title{color:var(--text-primary);margin:0 0 4px;font-size:15px;font-weight:700}.fb-capture__subtitle{color:var(--text-secondary);max-width:480px;margin:0;font-size:12px}.fb-capture__tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fb-capture__tool{border:1px solid var(--border-mid);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;display:flex}.fb-capture__tool[data-active]{background:var(--accent-action);border-color:var(--accent-action);color:#fff}.fb-capture__btn{border:1px solid var(--border-mid);cursor:pointer;color:var(--text-primary);background:#fff;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;display:flex}.fb-capture__btn:disabled{opacity:.45;cursor:default}.fb-capture__btn[data-variant=primary]{background:var(--accent-action);border-color:var(--accent-action);color:#fff}.fb-capture__btn[data-variant=primary]:disabled{background:var(--border-mid);border-color:var(--border-mid);color:var(--text-secondary)}.fb-capture__canvas-wrap{margin:var(--space-4) auto;touch-action:none;max-width:100%;position:relative}.fb-capture__img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;display:block}.fb-capture__overlay{cursor:crosshair;touch-action:none;z-index:1;position:absolute;inset:0}.fb-capture__foot{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border-top:1px solid var(--border-light);flex-wrap:wrap;display:flex}.fb-capture__dims{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px}.fb-capture__actions{gap:var(--space-2);display:flex}.ad-tbl__row--clickable{cursor:pointer}.fb-drawer{gap:var(--space-4);flex-direction:column;display:flex}.fb-drawer__pills{gap:var(--space-2);display:flex}.fb-drawer__section{flex-direction:column;gap:6px;display:flex}.fb-drawer__section-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:10px;font-weight:700}.fb-drawer__grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.fb-drawer__value{color:var(--text-primary);margin:0;font-size:13px}.fb-drawer__value--sub{color:var(--text-secondary);margin:0;font-size:12px}.fb-drawer__message{color:var(--text-primary);white-space:pre-wrap;margin:0;font-size:13px}.fb-drawer__screenshot{border:1px solid var(--border-light);border-radius:10px;width:100%;display:block}.fb-drawer__shotcaption{color:var(--text-secondary);margin:0;font-size:11px}.fb-drawer__triage{gap:var(--space-3);flex-direction:column;display:flex}.fb-drawer__assignrow{gap:var(--space-2);align-items:center;display:flex}.fb-drawer__assignrow .ad-input{flex:1}.fb-drawer__empty{color:var(--text-secondary);margin:0;font-size:12px;font-style:italic}.fb-drawer__reply{background:var(--paper);padding:var(--space-3);border-radius:10px}.fb-drawer__reply-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin:0 0 4px;font-size:11px;font-weight:700}.fb-drawer__reply p{margin:0;font-size:13px}.fb-drawer__reaction{margin:8px 0 0;font-size:12px;font-weight:600}.fb-drawer__reaction[data-tone=good]{color:var(--green-text)}.fb-drawer__reaction[data-tone=bad]{color:var(--red-text)}.fb-drawer__link{color:var(--bright);font-size:12px;font-weight:600;text-decoration:none}.fb-drawer__link:hover{text-decoration:underline}.fb-thread{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.fb-thread__item{padding:var(--space-3);background:var(--paper);border-left:3px solid var(--border-light);border-radius:10px}.fb-thread__item[data-kind=note]{background:#fffbeb;border-left-color:#f59e0b}.fb-thread__item[data-kind=reply]{border-left-color:var(--bright)}.fb-thread__meta{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;gap:6px;margin:0 0 4px;font-size:11px;display:flex}.fb-thread__kind{text-transform:uppercase;letter-spacing:.03em;font-weight:700}.fb-thread__body{color:var(--text-primary);white-space:pre-wrap;margin:0;font-size:13px}.fb-composer{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.fb-composer__tabs{background:var(--paper);border-radius:9px;align-self:flex-start;gap:2px;padding:3px;display:inline-flex}.fb-composer__tab{cursor:pointer;font:inherit;color:var(--text-secondary);background:0 0;border:0;border-radius:7px;padding:4px 10px;font-size:12px;font-weight:600}.fb-composer__tab[data-active]{color:var(--text-primary);background:#fff;box-shadow:0 1px 2px #00000014}.fb-composer__foot{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.fb-composer__hint{color:var(--text-secondary);font-size:11px}.fb-ticket__replies{flex-direction:column;gap:6px;display:flex}.fb-ticket__replymeta{color:var(--text-secondary);margin:0 0 2px;font-size:11px}.fb-sheet__notice{color:var(--red-text,#b42318);margin:4px 0 0;font-size:12px}.ad-fbviews{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:4px 0 10px;display:flex}.ad-fbviews__tabs{background:var(--paper);border-radius:9px;gap:2px;padding:3px;display:inline-flex}.ad-fbviews__tab{cursor:pointer;font:inherit;color:var(--text-secondary);background:0 0;border:0;border-radius:7px;padding:5px 12px;font-size:12.5px;font-weight:600}.ad-fbviews__tab[data-active]{color:var(--text-primary);box-shadow:var(--shadow-card);background:#fff}.ad-fbviews__response{align-items:center;gap:6px;display:inline-flex}.ad-fbviews__label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:10.5px;font-weight:700}.ad-tbl-wrap{overflow-x:auto}.ad-tbl{border-collapse:collapse;width:100%;min-width:780px;font-size:13px}.ad-tbl th,.ad-tbl td{text-align:left;vertical-align:middle;border-bottom:1px solid var(--border-light);padding:10px 14px}.ad-tbl thead th{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;background:var(--paper);font-size:10.5px;font-weight:700}.ad-tbl tbody tr:last-child th,.ad-tbl tbody tr:last-child td{border-bottom:none}.ad-tbl tbody tr:hover{background:var(--paper)}.ad-tbl__right{text-align:right}.ad-chip{white-space:nowrap;background:var(--cream);color:var(--text-secondary);border:1px solid var(--border-light);border-radius:999px;align-items:center;gap:4px;margin-right:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.ad-chip[data-tone=good]{background:var(--green-bg);color:var(--green-text);border-color:var(--green-border)}.ad-chip[data-tone=warn]{background:var(--amber-bg);color:var(--amber-text);border-color:var(--amber-border)}.ad-chip[data-tone=bad]{background:var(--red-bg);color:var(--red-text);border-color:var(--red-border)}.ad-chip[data-tone=info]{background:color-mix(in srgb, var(--accent-action) 10%, transparent);color:var(--accent-action);border-color:color-mix(in srgb, var(--accent-action) 26%, transparent)}.ad-chip[data-tone=brand]{background:color-mix(in srgb, var(--bright) 14%, transparent);color:var(--bright);border-color:color-mix(in srgb, var(--bright) 30%, transparent)}.ad-input{border:1.5px solid var(--border-light);background:var(--paper);width:100%;height:36px;color:var(--text-primary);border-radius:8px;outline:none;padding:0 11px;font-family:inherit;font-size:13.5px;transition:border-color .14s,box-shadow .14s,background .14s}.ad-input:focus{border-color:var(--bright);box-shadow:0 0 0 3px color-mix(in srgb, var(--bright) 10%, transparent);background:#fff}.ad-input--search{width:230px;height:32px}.ad-empty{text-align:center;padding:34px 18px}.ad-empty__title{color:var(--text-primary);margin:0;font-size:14px;font-weight:700}.ad-empty__body{max-width:62ch;color:var(--text-muted);margin:6px auto 14px;font-size:13px;line-height:1.6}.ad-drawer__scrim{z-index:49;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a4d;position:fixed;inset:0}.ad-drawer{z-index:50;border-left:1px solid var(--border-light);background:#fff;flex-direction:column;width:min(480px,100vw);height:100vh;display:flex;position:fixed;top:0;right:0;box-shadow:-24px 0 60px #0f172a2e}.ad-drawer__head{border-bottom:1px solid var(--border-light);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px;display:flex}.ad-drawer__title{color:var(--text-primary);margin:0;font-size:17px;font-weight:800}.ad-drawer__subtitle{color:var(--text-muted);margin:3px 0 0;font-size:12.5px}.ad-drawer__close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;flex-shrink:0;font-size:20px;line-height:1}.ad-drawer__close:hover{background:var(--paper);color:var(--text-primary)}.ad-drawer__body{flex:1;padding:20px;overflow-y:auto}.ad-drawer__foot{border-top:1px solid var(--border-light);flex-shrink:0;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.ad-countchips{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.ad-countchip{border:1px solid var(--border-mid);border-radius:var(--r-full);color:var(--text-muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;align-items:baseline;gap:5px;padding:4px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.ad-countchip:disabled{cursor:default}.ad-countchip__n{font-variant-numeric:tabular-nums;font-weight:800}.ad-countchip[data-active]{font-weight:700}.ad-countchip[data-active][data-tone=neutral]{border-color:var(--text-secondary);background:var(--paper);color:var(--text-primary)}.ad-countchip[data-active][data-tone=good]{border-color:var(--ap-up);background:var(--ap-up-soft);color:var(--ap-up)}.ad-countchip[data-active][data-tone=bad]{border-color:var(--red-text);background:var(--red-bg);color:var(--red-text)}.ad-countchip[data-active][data-tone=warn]{border-color:var(--amber-text);background:var(--amber-bg);color:var(--amber-text)}.ad-countchip[data-active][data-tone=info]{border-color:var(--accent-action);background:color-mix(in srgb, var(--accent-action) 10%, transparent);color:var(--accent-action)}.ad-input,.ad-select{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface);height:32px;color:var(--text-primary);font:inherit;padding:0 10px;font-size:13px}.ad-select{cursor:pointer;padding-right:24px}.ad-input:focus-visible,.ad-select:focus-visible{outline:2px solid var(--accent-action);outline-offset:1px}.ad-tbl--dir th{vertical-align:middle}.ad-tbl--dir th.r,.ad-tbl--dir td.r{text-align:right}.ad-pager{flex-wrap:wrap;align-items:center;gap:10px;padding-top:12px;display:flex}.ad-pager__label{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:12px}:root{--bright:#4e8c24;--accent-action:#4e8c24;--cream:#eef4e6;--paper:#f5f8f0;--text-primary:#1a2d0a;--text-secondary:#4a5e35;--text-muted:#586152;--text-faint:#68715f;--border-light:#1b3a0a14;--border-mid:#1b3a0a26;--shadow-card:0 1px 2px #1b3a0a0d, 0 10px 30px #1b3a0a1a;--shadow-modal:0 16px 48px #1b3a0a2e;--green-bg:#eaf3de;--green-text:#27500a;--green-border:#b4d98a;--amber-bg:#fef3e2;--amber-text:#7a4f0a;--amber-border:#edcc96;--red-bg:#fdecea;--red-text:#7a1a1a;--red-border:#f5b8b5;--ap-up:#0f8a6b;--ap-up-soft:#e6f4ef;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--r-sm:6px;--r-full:9999px}:root[data-theme=dark]{--cream:var(--surface-2);--paper:var(--surface-2);--text-primary:var(--ink);--text-secondary:var(--muted);--text-muted:var(--muted);--text-faint:var(--muted);--border-light:var(--line);--border-mid:var(--line)}:root[data-theme=dark] .fb-sheet,:root[data-theme=dark] .ad-drawer,:root[data-theme=dark] .ad-fbviews__tab[data-active]{background:var(--surface)}.focus-icon-btn{border:1px solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.focus-icon-btn:hover{background:var(--surface-2)}.focus-icon-btn__badge{background:var(--bad);color:#fff;text-align:center;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:-6px;right:-6px}.fb-ticket__shot{border:1px solid var(--border-light);border-radius:8px;margin:6px 0 2px;line-height:0;display:inline-block;overflow:hidden}.fb-ticket__shot img{object-fit:cover;max-width:160px;max-height:100px;display:block}.fb-sheet__send{background:var(--accent-action)}.fb-sheet__send:hover{background:var(--accent-action-strong,#3b6b1a);filter:none}:root{--accent-action-strong:#3b6b1a}.fb-sheet__severity{align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:12px;display:flex}.fb-sheet__severity select{border:1px solid var(--border-mid);height:32px;color:var(--text-primary);font:inherit;background:#fff;border-radius:8px;flex:1;padding:0 8px;font-size:12.5px}.signin-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;width:min(400px,100%);padding:26px 22px 22px;box-shadow:0 10px 30px #1b3a0a0f}.signin-card form{gap:18px;display:grid}.signin-field{gap:8px;display:grid}.signin-field .lbl-row{justify-content:space-between;align-items:baseline;display:flex}.signin-field label,.signin-field .lbl{color:var(--ink);font-size:13px;font-weight:700}.signin-link{white-space:nowrap;font:700 12.5px var(--f-body);color:var(--brand-text);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.signin-link:hover{text-decoration:underline}.signin-input{position:relative}.signin-input input{width:100%;height:48px;color:var(--ink);background:#e8f0fe;border:1.5px solid #c5dca8;border-radius:10px;outline:none;padding:0 44px 0 14px;font-size:15px;transition:border-color .15s,box-shadow .15s}.signin-input input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #6f9d332e}.signin-input input:disabled{opacity:.7}.signin-eye{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.signin-eye:hover{color:var(--ink)}.signin-eye svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.signin-remember{color:var(--muted);cursor:pointer;align-items:center;gap:8px;font-size:13.5px;display:flex}.signin-remember input{width:15px;height:15px;accent-color:var(--brand)}.signin-btn{color:#fff;height:50px;font:700 15px var(--f-body);letter-spacing:.01em;cursor:pointer;background:linear-gradient(90deg,#77a83a 0%,#5d8f2a 55%,#4a7a20 100%);border:0;border-radius:10px;transition:filter .15s,transform 50ms;box-shadow:0 8px 18px #4a7a2047}.signin-btn:hover:not(:disabled){filter:brightness(1.05)}.signin-btn:active:not(:disabled){transform:translateY(1px)}.signin-btn:disabled{opacity:.65;cursor:default}.signin-error{color:var(--bad);margin:0;font-size:13px}.signin-hint{color:var(--muted);margin:0;font-size:12.5px}.signin-foot{width:min(400px,100%);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:14px;font-size:12px;display:flex}
