






 
@font-face{ font-family:"Public Sans"; font-style:normal; font-weight:400; font-display:swap;
  src:url("fonts/public-sans-latin-400.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD }
@font-face{ font-family:"Public Sans"; font-style:normal; font-weight:600; font-display:swap;
  src:url("fonts/public-sans-latin-600.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD }
@font-face{ font-family:"Public Sans"; font-style:normal; font-weight:400; font-display:swap;
  src:url("fonts/public-sans-latin-ext-400.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF }
@font-face{ font-family:"Public Sans"; font-style:normal; font-weight:600; font-display:swap;
  src:url("fonts/public-sans-latin-ext-600.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF }

 
:root{
  color-scheme:light dark;
   
  --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3;
  --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --bar-neutral:#7d8ca1;
   
  --line2:var(--hover); --focus:var(--mut);
   
  --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --unk:#b07d12;
  --ptag:#536f99; --ptag-ink:#ffffff;
  --st-repair:#dc2626; --st-pm:#2563eb; --st-parts:#6b21a8; --st-vendor:#d97706;
  --st-legacy:#9ca3af; --st-setup:var(--st-legacy); --st-maint:var(--st-legacy);
  --st-hwait:#8b98a9; --st-htest:var(--st-hwait); --tex-stripe:rgba(0,0,0,.30);
  --st-dormant:#64748b; --rw-off:#cbd5e1; --rw-on:#eef4fb; --eq-off-tint:rgba(15,23,42,.045);
   
  --tint-warn:rgba(176,125,18,.10); --tint-warn-2:rgba(176,125,18,.12); --tint-good:rgba(30,125,79,.09);
  --tint-bad:rgba(179,66,58,.14); --cell-edge:rgba(0,0,0,.10); --seg-edge:rgba(0,0,0,.14);
  --rw-stripe-ink:rgba(255,255,255,.55); --rw-stripe-gap:rgba(255,255,255,0);
  

  --low-stripe:rgba(0,0,0,.16);
   
  --tl-seg-edge:rgba(0,0,0,.18);
  --print-paper:#ffffff; --print-ink:#000000; --print-rule:#bbbbbb;
   
  --src-snapshot:#2f7fc4;
   
  --on-color:#ffffff;
  

  --plan-ink:#c6d0e0;
  --ld-zone-za:#2563eb; --ld-zone-zb:#7c3aed; --ld-zone-zc:#0d9488; --ld-zone-fill:.10;
  --z-za:var(--ld-zone-za); --z-zb:var(--ld-zone-zb); --z-zc:var(--ld-zone-zc);
  

  --band0:rgba(37,99,235,.045); --band1:rgba(13,148,136,.05); --band2:rgba(124,58,237,.05); --band3:rgba(100,116,139,.07);
  --band-edge0:#2563eb; --band-edge1:#0d9488; --band-edge2:#7c3aed; --band-edge3:#64748b;
  --band-id0:var(--fg); --band-id1:var(--mut); --band-id2:var(--bar-neutral); --band-id3:var(--hover);

   
  --k:1; --kr:1; --kn:1;
  --ff:"Public Sans","Noto Sans TC","Microsoft JhengHei",system-ui,sans-serif;
  --fs-body:calc(14px * var(--k)); --fs-sm:calc(12.5px * var(--k)); --fs-note:calc(12px * var(--k));
  --fs-xs:calc(11px * var(--k)); --fs-title:calc(15px * var(--k));
  --fs-num:calc(30px * var(--kn)); --fs-num2:calc(22px * var(--kn));
  --row-pad:calc(4px * var(--kr)); --pane-h:calc(202px * var(--kr));
  --gap:16px; --side-w:344px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626;
    --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --bar-neutral:#5c6b82;
    --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --unk:#cbb26b;
    --ptag:#9bb7de; --ptag-ink:#0b1220;
    --st-parts:#b26ef5; --st-dormant:#94a3b8; --rw-off:#0a101c; --rw-on:#2a3b5c;
    --eq-off-tint:rgba(255,255,255,.06);
    

    --tint-warn:rgba(176,125,18,.10); --tint-warn-2:rgba(176,125,18,.12); --tint-good:rgba(31,157,87,.09);
    --tint-bad:rgba(196,80,79,.14); --cell-edge:rgba(0,0,0,.10); --seg-edge:rgba(0,0,0,.14);
    --rw-stripe-ink:rgba(255,255,255,.55); --rw-stripe-gap:rgba(255,255,255,0); --low-stripe:rgba(255,255,255,.22);   
    --plan-ink:#33415a;
    --ld-zone-za:#60a5fa; --ld-zone-zb:#a78bfa; --ld-zone-zc:#2dd4bf; --ld-zone-fill:.18;
    --band0:rgba(91,141,239,.08); --band1:rgba(42,160,140,.08); --band2:rgba(167,139,250,.08); --band3:rgba(148,163,184,.09);
    --band-edge0:#5b8def; --band-edge1:#2aa08c;
  }
}
:root[data-theme="dark"]{
  --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626;
  --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --bar-neutral:#5c6b82;
  --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --unk:#cbb26b;
  --ptag:#9bb7de; --ptag-ink:#0b1220;
  --st-parts:#b26ef5; --st-dormant:#94a3b8; --rw-off:#0a101c; --rw-on:#2a3b5c;
  --eq-off-tint:rgba(255,255,255,.06);
  

  --tint-warn:rgba(176,125,18,.10); --tint-warn-2:rgba(176,125,18,.12); --tint-good:rgba(31,157,87,.09);
  --tint-bad:rgba(196,80,79,.14); --cell-edge:rgba(0,0,0,.10); --seg-edge:rgba(0,0,0,.14);
  --rw-stripe-ink:rgba(255,255,255,.55); --rw-stripe-gap:rgba(255,255,255,0); --low-stripe:rgba(255,255,255,.22);   
  --plan-ink:#33415a;
  --ld-zone-za:#60a5fa; --ld-zone-zb:#a78bfa; --ld-zone-zc:#2dd4bf; --ld-zone-fill:.18;
  --band0:rgba(91,141,239,.08); --band1:rgba(42,160,140,.08); --band2:rgba(167,139,250,.08); --band3:rgba(148,163,184,.09);
  --band-edge0:#5b8def; --band-edge1:#2aa08c;
}
 
[data-density="projector"]{ --k:1.25; --kr:1.2; --kn:1.4; --side-w:400px }

 
*,*::before,*::after{ box-sizing:border-box }
[hidden]{ display:none !important }
html{ -webkit-text-size-adjust:100%; scrollbar-color:var(--hover) transparent }
body{ margin:0; background:var(--bg); color:var(--fg); font-family:var(--ff);
      font-size:var(--fs-body); line-height:1.45; font-variant-numeric:tabular-nums }
::selection{ background:color-mix(in srgb, var(--fg) 22%, transparent); color:var(--fg) }
:focus-visible{ outline:2px solid var(--focus); outline-offset:2px }
a{ color:inherit; text-underline-offset:2px; text-decoration-thickness:1px }
a:hover{ text-decoration-color:currentColor }
button{ font:inherit; color:inherit }
.num{ font-variant-numeric:tabular-nums }
.board-vh{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap }
.board-ic{ width:.95em; height:.95em; vertical-align:-.12em; fill:none; stroke:currentColor;
        stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; flex:none }
*{ scrollbar-width:thin }
::-webkit-scrollbar{ width:9px; height:9px }
::-webkit-scrollbar-thumb{ background:var(--hover); border-radius:4px; border:2px solid transparent; background-clip:padding-box }
::-webkit-scrollbar-track{ background:transparent }
.board-main{ max-width:1560px; margin:0 auto; padding:12px 20px 40px }
 
.board-synthbar{ padding:6px 20px; border-bottom:1px solid var(--unk); background:var(--tint-warn); color:var(--fg); font-size:12.5px; font-weight:600; text-align:center }
@media (max-width:640px){ .board-synthbar{ padding:6px 16px } }

 
 
.board-nav{ --fs-sm:12.5px; --fs-xs:11px; --fs-body:14px; --fs-title:15px }
.board-nav{ display:flex; align-items:center; gap:10px 14px; padding:0 20px; min-height:48px;
         border-bottom:1px solid var(--line); background:var(--panel); flex-wrap:wrap;
         position:relative; z-index:50 }
.board-brand{ font-weight:600; font-size:var(--fs-sm); letter-spacing:.08em; text-decoration:none;
           padding:6px 0; white-space:nowrap }
.board-brand:hover{ text-decoration:underline }
.board-tabs{ display:flex; align-items:stretch; gap:0 12px; flex-wrap:wrap; min-width:0 }
.board-grp{ display:flex; align-items:center; gap:2px; flex-wrap:wrap }
.board-grp-l{ font-size:var(--fs-xs); color:var(--mut); margin-right:3px; cursor:default; user-select:none }
.board-tab{ display:inline-block; padding:13px 6px 11px; font-size:var(--fs-sm); color:var(--mut);
         text-decoration:none; border-bottom:2px solid transparent; white-space:nowrap }
.board-tab:hover{ color:var(--fg); border-bottom-color:var(--line2) }
.board-tab.on{ color:var(--fg); font-weight:600; border-bottom-color:var(--fg) }
.board-more{ position:relative; display:inline-flex }
.board-more>summary{ list-style:none; cursor:pointer; padding:13px 6px 11px; font-size:var(--fs-sm);
                  color:var(--mut); border-bottom:2px solid transparent; user-select:none;
                  display:inline-flex; align-items:center; gap:5px; white-space:nowrap }
.board-more>summary::-webkit-details-marker{ display:none }
.board-more>summary::marker{ content:"" }
.board-more>summary:hover, .board-more[open]>summary{ color:var(--fg); border-bottom-color:var(--line2) }
.board-more.on>summary{ color:var(--fg); font-weight:600; border-bottom-color:var(--fg) }
.board-caret{ width:9px; height:6px; fill:none; stroke:currentColor; stroke-width:1.4 }
.board-overflow>summary{ letter-spacing:.1em; padding-left:10px; padding-right:10px }
.board-mpanel{ position:absolute; top:100%; left:0; z-index:60; display:flex; flex-direction:column;
            min-width:180px; padding:4px 0; background:var(--panel); border:1px solid var(--line2);
            border-radius:3px }
.board-mpanel .board-tab{ padding:8px 14px; border-bottom:0; border-left:2px solid transparent }
.board-mpanel .board-tab:hover{ background:var(--panel2); border-left-color:var(--line2) }
.board-mpanel .board-tab.on{ border-left-color:var(--fg) }
.board-right{ margin-left:auto; display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:6px 0 }
 
.board-src{ font-size:var(--fs-xs); font-weight:600; padding:1px 6px; border:1px solid var(--line2);
         border-radius:2px; color:var(--mut); text-transform:lowercase }
.board-src.demo{ color:var(--fg); border-color:var(--unk) }
 
.board-src.synth{ color:var(--fg); border-color:var(--unk) }
.board-src.live{ color:var(--fg); border-color:var(--good) }
 
.board-src.snapshot{ color:var(--src-snapshot); border-color:var(--src-snapshot) }
.board-lang{ font-size:var(--fs-sm); text-decoration:underline; text-decoration-color:var(--line2) }
.board-seg{ display:inline-flex; border:1px solid var(--line2); border-radius:3px; overflow:hidden }
.board-seg a{ font-size:var(--fs-xs); padding:3px 7px; text-decoration:none; color:var(--mut);
           border-left:1px solid var(--line2) }
.board-seg a:first-child{ border-left:0 }
.board-seg a:hover{ background:var(--panel2); color:var(--fg) }
.board-seg a:active{ background:var(--line) }
.board-seg a.on{ background:var(--fg); color:var(--panel); font-weight:600 }

 
 
.board-panel{ display:flex; flex-direction:column; min-width:0 }
.board-ph{ display:flex; align-items:baseline; gap:8px; padding:9px 12px 8px; min-height:38px }
.board-pt{ margin:0; font-size:var(--fs-title); font-weight:600; cursor:help; line-height:1.25 }
.board-pc{ font-size:var(--fs-num2); font-weight:600; line-height:1 }
.board-psub{ font-size:var(--fs-xs); color:var(--mut); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0 }
.board-pgo{ margin-left:auto; display:inline-flex; align-items:center; justify-content:center;
         width:26px; height:24px; border:1px solid var(--line); border-radius:3px; color:var(--mut); flex:none }
.board-pgo:hover{ color:var(--fg); border-color:var(--line2); background:var(--panel2) }
[data-ui="15"] .board-panel{ background:var(--panel); border:1px solid var(--line); border-radius:4px; overflow:hidden }
[data-ui="15"] .board-ph{ border-bottom:1px solid var(--line) }
[data-ui="2"] .board-panel{ background:transparent; border-top:1px solid var(--line2) }
[data-ui="2"] .board-ph{ padding:10px 2px 8px }

 
.board-scroll{ height:var(--pane-h); overflow:auto; overscroll-behavior:contain }
.board-scroll:focus-visible{ outline-offset:-2px }

 
.board-t{ width:100%; border-collapse:collapse; font-size:var(--fs-note) }
.board-t thead th{ position:sticky; top:0; z-index:1; background:var(--panel); color:var(--mut);
                font-weight:600; font-size:var(--fs-xs); text-align:left; white-space:nowrap;
                padding:5px 8px; border-bottom:1px solid var(--line) }
[data-ui="2"] .board-t thead th{ background:var(--bg) }
.board-t td{ padding:var(--row-pad) 8px; border-bottom:1px solid var(--line); white-space:nowrap; vertical-align:baseline }
.board-t tbody tr:last-child td{ border-bottom:0 }
.board-t tbody tr:hover td{ background:var(--panel2) }
.board-t th.n, .board-t td.n{ text-align:right; font-variant-numeric:tabular-nums }
.board-t td a{ text-decoration:underline; text-decoration-color:var(--line2) }

 
.board-kpi{ min-width:0; cursor:help }
.board-kpi-l{ font-size:var(--fs-note); color:var(--mut) }
.board-kpi-v{ display:flex; align-items:baseline; gap:4px; font-weight:600; font-size:var(--fs-num2); line-height:1.15 }
.board-kpi-u{ font-size:var(--fs-note); color:var(--mut); font-weight:400 }
.board-kpi-d{ font-size:var(--fs-note); color:var(--mut); font-weight:400; margin-left:4px }
.board-kpi-s{ font-size:var(--fs-xs); color:var(--mut); margin-top:2px }

 
.board-ag{ margin:14px 0 0 }
[data-page="landing"] .side-t + .board-ag{ margin-top:0 }
.board-ag-h{ margin:0 0 4px; font-size:var(--fs-note); font-weight:600; color:var(--mut) }
.board-al{ list-style:none; margin:0; padding:0 }
.board-ai{ display:flex; align-items:baseline; gap:10px; padding:calc(5px * var(--kr)) 0;
        border-bottom:1px solid var(--line); font-size:var(--fs-sm); min-width:0 }
.board-ai:last-child{ border-bottom:0 }
.board-ai.empty{ color:var(--mut) }
.board-lamp{ display:inline-flex; align-items:center; gap:6px; flex:0 0 auto; min-width:8.5em;
          font-size:var(--fs-xs); font-weight:600; color:var(--fg) }
.board-lsw{ display:inline-block; width:10px; height:10px; flex:none }
.board-lsw.t-bad, .board-lsw.t-need{ background:var(--bad) }
.board-lsw.t-lend{ background:var(--good) }
.board-lsw.t-down{ background:var(--mut) }
.board-ag-n{ font-weight:600; color:var(--fg); margin-left:4px }
.board-lsw.hollow{ border:1px solid var(--mut) }
.board-ai .nm{ flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:400 }
.board-ai a.nm{ text-decoration:underline; text-decoration-color:var(--line2) }
.board-ai .vv{ margin-left:auto; flex:none; white-space:nowrap; color:var(--fg); font-weight:600 }

 
[data-page="landing"] .srcbanner{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap;
  margin:0 0 12px; padding:7px 12px; border:1px solid var(--unk); border-radius:2px;
  color:var(--fg); font-size:var(--fs-sm) }
[data-page="landing"] .srcbanner b{ font-weight:600; letter-spacing:.04em; color:var(--fg) }
[data-page="landing"] .srcbanner .why{ color:var(--mut); font-size:var(--fs-note) }
[data-page="landing"] .errcard{ border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:16px 18px; margin:12px 0 }
[data-page="landing"] .errcard b{ color:var(--fg) }
 
[data-page="landing"] .errcard b::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
 
[data-page="landing"] .errcard .sub{ color:var(--mut); font-size:var(--fs-note); margin-top:6px }
[data-page="landing"] .errcard code{ background:var(--panel2); padding:1px 5px; border-radius:2px; font-size:var(--fs-note) }
[data-page="landing"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:var(--fs-sm); padding:30px 2px }
[data-page="landing"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:wrsp .8s linear infinite }
@keyframes wrsp{ to{ transform:rotate(360deg) } }

 
.ld-panes{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px }
[data-ui="15"] .ld-panes{ margin:0 0 12px }
[data-ui="2"] .ld-panes{ gap:0 24px; margin:6px 0 0 }
 
[data-density="projector"] .ld-panes{ grid-template-columns:repeat(2,minmax(0,1fr)) }




.pntgt{ display:flex; flex-direction:column; justify-content:center; gap:2px; height:calc(40px * var(--k)); box-sizing:border-box;
        padding:3px 12px; border-bottom:1px solid var(--line); font-size:var(--fs-xs); line-height:1.3; min-width:0 }
[data-ui="2"] .pntgt{ padding:3px 2px }
.pntgt .pttxt{ color:var(--fg); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:help }
.pntgt .ptchip{ align-self:flex-start; max-width:100%; box-sizing:border-box; color:var(--unk); border:1px solid var(--unk);
                border-radius:2px; padding:0 5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:help }
.pntgt + .board-scroll{ height:calc(var(--pane-h) - 40px * var(--k)) }
body.wall .pntgt + .board-scroll{ height:calc(236px * var(--kr) - 40px * var(--k)) }
.pnwhy{ padding:10px 12px; font-size:var(--fs-note); line-height:1.55 }
.qwhy{ color:var(--mut); font-style:italic }
.pnt2 td.nm{ max-width:13ch; overflow:hidden; text-overflow:ellipsis }
.pnt2 td.nm2{ max-width:17ch }
.pnt2 td.nm2 .mnm{ display:block; color:var(--mut); font-size:var(--fs-xs); line-height:1.35; overflow:hidden; text-overflow:ellipsis }
.pnt2 td.n .famlbl{ font-style:normal; font-weight:600; font-size:.8em; letter-spacing:.03em; color:var(--mut) }
 
.dspband{ display:inline-block; width:3px; height:.85em; margin-right:6px; vertical-align:-1px; background:transparent }
.dspband.b0{ background:var(--band-id0) } .dspband.b1{ background:var(--band-id1) }
.dspband.b2{ background:var(--band-id2) } .dspband.b3{ background:var(--band-id3) }
.pnt2 td.dspk{ white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere; max-width:none; width:36% }
.pnt2 td.dsplamp{ white-space:nowrap; color:var(--fg) }
.pnt2 td.dsplamp .board-lamp{ min-width:0 }
 
.pnt2 td.dspwhy{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:var(--fs-xs); color:var(--mut); width:28%; max-width:0 }

 
.ld-main{ display:grid; grid-template-columns:minmax(0,1fr) var(--side-w); gap:var(--gap); align-items:start }
[data-ui="2"] .ld-main{ --side-w:400px }
[data-ui="2"][data-density="projector"] .ld-main{ --side-w:460px }
.ld-mapcol{ min-width:0 }
.stage{ position:relative; background:var(--panel); border:1px solid var(--line); overflow:hidden; touch-action:none }
[data-ui="15"] .stage{ border-radius:4px }
.stage.drag{ cursor:grabbing }
#ld-svg{ display:block; width:100%; height:auto }
.zctl{ position:absolute; top:8px; right:8px; display:flex; gap:4px; z-index:5 }
.zctl button{ font-size:var(--fs-note); cursor:pointer; padding:3px 9px; border-radius:3px;
              border:1px solid var(--line2); background:var(--panel); color:var(--fg); min-width:28px }
.zctl button:hover{ background:var(--panel2) }
.zctl button:active{ background:var(--line) }
.zhint{ position:absolute; left:10px; bottom:8px; font-size:var(--fs-xs); color:var(--mut) }

 
.plan{ color:var(--plan-ink) }
.plan *{ vector-effect:non-scaling-stroke }
.zreg{ fill:var(--mut); stroke:var(--mut); fill-opacity:var(--ld-zone-fill); fill-rule:evenodd;
       stroke-width:1; stroke-opacity:.5; stroke-linejoin:round; vector-effect:non-scaling-stroke; pointer-events:none }
.zreg.z-za{ fill:var(--ld-zone-za); stroke:var(--ld-zone-za) }.zreg.z-zb{ fill:var(--ld-zone-zb); stroke:var(--ld-zone-zb) }.zreg.z-zc{ fill:var(--ld-zone-zc); stroke:var(--ld-zone-zc) }
.zlbl{ fill:var(--mut); font-weight:600; paint-order:stroke; stroke:var(--panel); dominant-baseline:hanging; pointer-events:none }
.zlbl.z-za{ fill:var(--ld-zone-za) }.zlbl.z-zb{ fill:var(--ld-zone-zb) }.zlbl.z-zc{ fill:var(--ld-zone-zc) }
.kreg{ fill:none; stroke:var(--fg); stroke-dasharray:6 4; stroke-width:1.5; opacity:.7; stroke-linejoin:round; vector-effect:non-scaling-stroke; pointer-events:none }
.kreg.sat{ opacity:.5 }
.kreg.kunmate{ stroke:var(--fg); stroke-opacity:1; stroke-width:3; opacity:1 }
.kchip{ pointer-events:auto; cursor:pointer; font-weight:600 }
.kchip rect{ fill:var(--bg); fill-opacity:.9; stroke:var(--fg); stroke-opacity:.8; stroke-width:1; vector-effect:non-scaling-stroke }
.kchip text{ fill:var(--fg) }
.kchip .kic{ fill:none; stroke:var(--fg); stroke-width:1.2; stroke-linecap:round }
.kchip.kunmate rect{ stroke:var(--hover); stroke-opacity:1; stroke-width:2 }
.envtag{ cursor:pointer; font-weight:600; font-size:12px }
.envtag rect.pill{ fill:var(--bg); fill-opacity:.92; stroke:var(--mut); stroke-opacity:.75; stroke-width:1; vector-effect:non-scaling-stroke }
.envtag text{ fill:var(--mut); dominant-baseline:alphabetic }
.envtag .eic{ fill:none; stroke:var(--mut); stroke-width:1.1 }
.envtag.t-alert rect.pill{ stroke:var(--unk); stroke-opacity:1 }
.envtag.t-alert text{ fill:var(--unk) }
.envtag.t-alert .eic{ stroke:var(--unk) }
.envtag.t-over rect.pill{ stroke:var(--ld-down); stroke-opacity:1; stroke-width:1.5 }
.envtag.t-over text{ fill:var(--ld-down) }
.envtag.t-over .eic{ stroke:var(--ld-down) }
.envtag.t-unknown rect.pill{ fill:none; stroke-dasharray:3 2 }
.envtag.t-unknown text{ opacity:.75 }
.envtag .slash{ stroke:var(--mut); stroke-width:1; stroke-opacity:.75; vector-effect:non-scaling-stroke }
.envtag:hover rect.pill, .envtag:focus rect.pill{ stroke:var(--hover); stroke-opacity:1 }
.mach{ cursor:pointer; outline:none }
.mach rect.body{ stroke-width:.7; vector-effect:non-scaling-stroke }
 
.mach rect.body{ pointer-events:all }
 
.mach.est rect.body{ stroke-dasharray:2.4 1.8 }
 
.mach[data-b="nomes"] rect.body{ stroke-dasharray:3.6 2.6; stroke-width:1.1 }
 
.mach.inf rect.body{ stroke-dasharray:3.6 2.6; stroke-width:1.1 }
.mach:hover rect.body{ stroke-width:1.8 }
.mach:focus-visible rect.body, .mach.sel rect.body{ stroke-width:2.4 }
.mach.sel rect.ring{ display:block }
.mach.kunmate rect.body{ stroke-width:1 !important }
.mach.hint rect.ring{ display:block; animation:ldhint 1.3s ease-out 2 }
@keyframes ldhint{ 0%{ opacity:1 } 60%{ opacity:.15 } 100%{ opacity:1 } }
.mach rect.ring{ display:none; fill:none; stroke:var(--hover); stroke-width:2.6; vector-effect:non-scaling-stroke }
.subs rect.subc{ stroke:var(--panel); stroke-width:.35; vector-effect:non-scaling-stroke; cursor:pointer }
.subs rect.subc{ pointer-events:all }
 
.mach{ --seat-zone:var(--mut) }
.mach.z-za{ --seat-zone:var(--ld-zone-za) }.mach.z-zb{ --seat-zone:var(--ld-zone-zb) }.mach.z-zc{ --seat-zone:var(--ld-zone-zc) }
.subs rect.subc.hollow{ fill:var(--bg); fill:color-mix(in srgb, var(--seat-zone) calc(var(--ld-zone-fill) * 100%), var(--panel));
                        fill-opacity:1; stroke:var(--mut); stroke-opacity:1; stroke-width:1 }
.subs rect.subc:hover{ stroke:var(--hover); stroke-opacity:1; stroke-width:1.6 }
.subs rect.subc:focus{ outline:none }
.subs rect.subc:focus-visible, .subs rect.subc.selc{ stroke:var(--hover); stroke-opacity:1; stroke-width:2.2 }
.mach.dim{ opacity:.16 }
.mach .b24{ fill:var(--fg) }
.mach .wm{ fill:var(--fg) }
.mach:not(.wm) .wm{ display:none }
.mach .dm{ fill:none; stroke:var(--fg); stroke-width:1.1; vector-effect:non-scaling-stroke }
.mach:not([data-b="dorm"]) .dm{ display:none }
.mach:not([data-b="dorm"]) .subs .dm{ display:block }
.subs .dm{ pointer-events:none }
.mach .rmk{ display:none; fill:none; stroke:var(--fg); stroke-width:1.2; vector-effect:non-scaling-stroke }
.mach .mlbl{ display:none; fill:var(--fg); text-anchor:middle; pointer-events:none; paint-order:stroke; stroke:var(--panel) }
.stage.zl .mach:not(.nolbl):not(.dim) .mlbl{ display:block }
.pframe{ fill:none; stroke:var(--plan-ink); stroke-dasharray:3 2.5; stroke-width:1; vector-effect:non-scaling-stroke }
 
@keyframes ldpulse{ 0%,100%{ fill-opacity:.85 } 50%{ fill-opacity:.32 } }
.mach.pulse rect.body{ animation:ldpulse 2.5s ease-in-out infinite }
.mach.pulse.p24 rect.body{ animation-duration:1.2s }
@media (prefers-reduced-motion: reduce){
  .mach.pulse rect.body{ animation:none }
  .mach.pulse .rmk{ display:block }
  .mach.hint rect.ring{ animation:none }
  [data-page="landing"] .spin{ animation:none }
}

 
.legend{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; margin:10px 0 0; font-size:var(--fs-sm) }
.lgi{ display:inline-flex; align-items:center; gap:6px; padding:3px 9px; border:1px solid var(--line);
      border-radius:3px; background:var(--panel); color:var(--fg); text-decoration:none; cursor:pointer }
.lgi:hover{ border-color:var(--line2); background:var(--panel2) }
.lgi:active{ background:var(--line) }
.lgi.on{ border-color:var(--fg); font-weight:600 }
.lgi b{ font-weight:600; font-variant-numeric:tabular-nums }
.lgsw{ position:relative; display:inline-flex; width:10px; height:10px }
.lg-dm{ position:absolute; inset:0; width:10px; height:10px; fill:none; stroke:var(--fg); stroke-width:1.1 }
.qdot{ display:inline-block; width:10px; height:10px; flex:none; vertical-align:-1px }
.qhollow{ display:inline-block; width:10px; height:10px; flex:none; vertical-align:-1px; border:1px solid var(--mut) }
.qhollow.dash{ border-style:dashed }
.lgnote{ color:var(--mut); font-size:var(--fs-note); line-height:1.5 }
.ld-pulse{ margin:6px 0 0 }
.envchip{ font-size:var(--fs-xs); color:var(--mut); border:1px solid var(--line); border-radius:2px; padding:1px 6px; white-space:nowrap }
 
.draftchip{ font-size:var(--fs-xs); font-weight:600; color:var(--unk); border:1px solid var(--unk); border-radius:2px; padding:0 5px; cursor:help }
.freshchip{ margin-left:auto; font-size:var(--fs-xs); color:var(--mut); border:1px solid var(--line); border-radius:2px; padding:1px 7px; cursor:help; white-space:nowrap }
.freshchip.stale, .freshchip.warm{ color:var(--unk); border-color:var(--unk); font-weight:600 }
.freshchip.old{ color:var(--bad); border-color:var(--bad); font-weight:600 }
.weakchip{ margin-left:6px; padding:0 5px; border:1px solid var(--unk); color:var(--unk); border-radius:2px; font-size:var(--fs-xs); white-space:nowrap }
.offplan{ font-size:var(--fs-xs); color:var(--mut); border:1px solid var(--line); border-radius:2px; padding:0 5px; white-space:nowrap }

 
.ld-line{ display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 28px }
.ld-line .ld-go{ margin-left:auto; display:inline-flex; align-items:center; gap:5px; font-size:var(--fs-sm);
                 text-decoration:underline; text-decoration-color:var(--line2); white-space:nowrap }
[data-ui="15"] .ld-line{ margin:12px 0 0; padding:10px 12px; background:var(--panel); border:1px solid var(--line); border-radius:4px }
[data-ui="15"] .ld-line .board-kpi-v{ font-size:var(--fs-title) }
[data-ui="2"] .ld-line{ margin:18px 0 0; padding:12px 0 14px; border-top:1px solid var(--line2) }
[data-ui="2"] .ld-line .board-kpi-v{ font-size:var(--fs-num) }
[data-ui="2"] .ld-line .board-kpi.loss .board-kpi-v{ font-size:var(--fs-num) }

 
[data-page="landing"] .side{ min-width:0 }
[data-page="landing"][data-ui="15"] .side{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:14px 16px }


[data-ui="2"] .ld-main{ align-items:stretch }
[data-ui="2"] .ld-sidewrap{ position:relative; min-height:320px }
[data-page="landing"][data-ui="2"] .side{ position:absolute; inset:0; overflow-y:auto; overscroll-behavior:contain;
                     scrollbar-gutter:stable; scrollbar-width:auto; scrollbar-color:var(--line2) var(--panel2);
                     border-left:1px solid var(--line2); border-bottom:1px solid var(--line2); padding:0 6px 0 18px }
[data-page="landing"][data-ui="2"] .side::-webkit-scrollbar{ width:10px }
[data-page="landing"][data-ui="2"] .side::-webkit-scrollbar-track{ background:var(--panel2) }
[data-page="landing"][data-ui="2"] .side::-webkit-scrollbar-thumb{ background:var(--line2); border:2px solid var(--panel2); border-radius:4px }
[data-page="landing"] .side-t{ margin:0 0 10px; font-size:var(--fs-title); font-weight:600 }
[data-page="landing"] .side-h{ margin:14px 0 5px; font-size:var(--fs-note); font-weight:600; color:var(--mut) }
[data-page="landing"] .side .empty{ color:var(--mut); font-size:var(--fs-sm); line-height:1.55 }
.srow{ display:flex; align-items:baseline; gap:8px; padding:5px 0; border-bottom:1px solid var(--line); font-size:var(--fs-sm) }
.srow:last-child{ border-bottom:0 }
.srow .nm{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.srow .vv{ margin-left:auto; font-variant-numeric:tabular-nums; white-space:nowrap }
[data-page="landing"][data-ui="15"] .side .srow .vv{ color:var(--mut); font-weight:400 }
 
.evrow{ display:flex; align-items:baseline; gap:7px; padding:4px 0; border-bottom:1px solid var(--line); font-size:var(--fs-note) }
.evrow:last-child{ border-bottom:0 }
.evrow .evid{ flex:0 0 auto; white-space:nowrap; font-weight:600 }
.evrow .evname{ flex:1 1 8ch; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--mut) }
.evrow .evwo{ flex:0 0 auto; white-space:nowrap }
.evrow .ev{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.evrow .when{ margin-left:auto; color:var(--mut); white-space:nowrap; font-size:var(--fs-xs) }
.evrow a{ text-decoration:underline; text-decoration-color:var(--line2) }
 
.mcard .mh, .ncard .mh{ font-size:var(--fs-title); font-weight:600; line-height:1.3 }
.mcard > .tipbody{ display:none }
.mcard .panel-title, .ncard .panel-title{ margin-bottom:5px }
.mcard .meid, .ncard .meid{ color:var(--mut); font-size:var(--fs-note) }
.stline{ margin:7px 0 4px; display:flex; align-items:center; gap:8px; flex-wrap:wrap }
.ncard .backlink.nback{ margin-top:4px; margin-bottom:2px }
.ncard .kv .v.nwo{ font-weight:400; color:var(--mut); line-height:1.5 }
.kv{ display:flex; gap:8px; align-items:baseline; font-size:var(--fs-sm); padding:4px 0; border-bottom:1px solid var(--line) }
.kv:last-of-type{ border-bottom:0 }
.kv .k{ color:var(--mut); min-width:72px }
.kv .v{ font-weight:600 }
.kv .v.subrow{ display:flex; flex-wrap:wrap; gap:3px 9px }
.subrow .subi{ display:inline-flex; align-items:center; gap:3px; white-space:nowrap; font-size:var(--fs-note); color:var(--mut);
               cursor:pointer; border:1px solid transparent; border-radius:3px; padding:0 4px }
.subrow .subi:hover, .subrow .subi:focus-visible{ border-color:var(--line2); color:var(--fg); outline:none }
.subrow .subi .subh{ margin-left:4px; font-weight:600 }
.stchip{ display:inline-flex; align-items:center; gap:6px; font-size:var(--fs-sm); font-weight:600 }
.band{ display:flex; gap:2px; height:14px; margin:6px 0 2px }
.band i{ display:block; height:100%; flex:1 }
.band i.hollow{ background:transparent; border:1px dashed var(--line2) }
.band.seg{ gap:0 }
.band.seg i{ flex:none; min-width:1px }
.bandlg{ display:flex; flex-wrap:wrap; gap:2px 10px; margin:0 0 4px; color:var(--mut); font-size:var(--fs-note); line-height:1.5 }
.bandlg .bandlgi{ display:inline-flex; align-items:center; gap:4px; white-space:nowrap }
.bandlg i{ display:inline-block; width:9px; height:9px; flex:0 0 auto }
.bandlg i.hollow{ background:transparent; border:1px dashed var(--line2) }
.wocard{ border:1px solid var(--line); border-radius:3px; padding:7px 10px; font-size:var(--fs-note); background:var(--panel2); margin-bottom:4px }
.wocard details > summary{ display:block; list-style:none; cursor:pointer }
.wocard details > summary::-webkit-details-marker{ display:none }
.wocard details > summary::before{ content:""; display:inline-block; width:.8em; height:.8em; margin-right:6px;
  vertical-align:-.05em; background:var(--mut);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.wocard details[open] > summary::before{ transform:rotate(90deg) }
.board-overflow>summary .board-ic{ width:1.1em; height:1.1em; stroke-width:2.4 }
.wocard a{ text-decoration:underline; text-decoration-color:var(--line2) }
.wodet:empty{ display:none }
.wodet{ margin-top:7px; border-top:1px solid var(--line); padding-top:6px }
.wox .l1, .wodet .l1{ font-size:var(--fs-note); line-height:1.5 }
.wox .l2, .wodet .l2{ font-size:var(--fs-xs); line-height:1.5; color:var(--mut); margin-top:4px; white-space:pre-wrap }
.wox .ntm, .wodet .ntm{ font-weight:600; color:var(--fg) }
.wox.why, .wodet .why{ font-style:italic; color:var(--mut); font-size:var(--fs-xs) }
.goes{ display:flex; flex-direction:column; gap:6px; margin-top:12px }
.goes a{ display:inline-flex; align-items:center; gap:5px; font-size:var(--fs-sm); font-weight:600;
         text-decoration:underline; text-decoration-color:var(--line2) }
.backlink{ display:inline-flex; align-items:center; gap:5px; margin-top:12px; font-size:var(--fs-note); color:var(--mut); text-decoration:none; cursor:pointer }
.backlink:hover{ color:var(--fg); text-decoration:underline }
[data-page="landing"] .ptag{ font-size:var(--fs-xs); font-weight:600; line-height:1; letter-spacing:.03em; padding:3px 5px; border:1px solid transparent; border-radius:2px; color:var(--mut) }
[data-page="landing"] .ptag.observed{ color:var(--ptag-ink); background:var(--ptag); border-color:var(--ptag) }
[data-page="landing"] .ptag.default, [data-page="landing"] .ptag.idle{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="landing"] .ptags{ display:inline-flex; gap:3px; vertical-align:middle }

 
.ld-foot{ margin:18px 0 0; display:flex; flex-wrap:wrap; gap:10px 28px; font-size:var(--fs-note); color:var(--mut) }
.ld-foot .ldroster{ cursor:help }
.ld-foot .ldexc{ max-width:520px }
.ld-foot summary{ cursor:pointer }
.ld-foot summary:hover{ color:var(--fg) }
.ld-foot .empty{ margin:6px 0 4px; line-height:1.6 }
.ld-foot .footlist{ max-height:260px; overflow-y:auto; overscroll-behavior:contain }

 
#ld-tip{ position:fixed; z-index:70; display:none; max-width:300px; padding:9px 12px; border:1px solid var(--line2);
         border-radius:3px; background:var(--panel); font-size:var(--fs-note); pointer-events:none }
#ld-tip.show{ display:block }
#ld-tip .mh{ font-size:var(--fs-sm); font-weight:600 }
#ld-tip .meid{ color:var(--mut) }

 
body.wall .board-nav, body.wall .ld-sidewrap, body.wall .ld-foot{ display:none }
body.wall .board-main{ max-width:none; padding:10px 14px 16px }
body.wall .ld-main{ grid-template-columns:minmax(0,1fr) }
body.wall .board-pt{ font-size:calc(var(--fs-title) * 1.1) }
body.wall .pnt2{ font-size:calc(15px * var(--k)) }
body.wall .board-scroll{ height:calc(236px * var(--kr)) }

 
@media (max-width:1100px){
  .ld-main{ grid-template-columns:minmax(0,1fr) }
  [data-ui="2"] .ld-sidewrap{ position:static; min-height:0 }
  [data-page="landing"][data-ui="2"] .side{ position:static; overflow:visible; border-left:0; padding:12px 0 0; border-top:1px solid var(--line2) }
  .ld-panes{ grid-template-columns:repeat(2,minmax(0,1fr)) }
  [data-ui="2"] .ld-panes{ gap:0 20px }
}
@media (max-width:620px){
  .board-main{ padding:10px 16px 32px }
  .board-nav{ padding:0 16px; gap:4px 12px }
  .board-tabs{ gap:0 12px }
  .board-tab, .board-more>summary{ padding:9px 6px 7px }
  .ld-panes{ grid-template-columns:minmax(0,1fr) }
  .ld-line{ gap:10px 20px }
  .zhint{ display:none }
}

 




 
:root[data-page="daily"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --bar-neutral:#7d8ca1; --b-prod:#1e7d4f; --b-wo:#dc2626; --b-starved:#6b21a8; --b-blocked:#2563eb; --b-unexp:#8b98a9; --p-scrap:#be185d; --p-rework:#b07d12; --p-slow:#0d9488; }
@media (prefers-color-scheme: dark){
  :root[data-page="daily"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --bar-neutral:#5c6b82; --b-prod:#36c47f; --b-wo:#e0726f; --b-starved:#b26ef5; --b-blocked:#6ea8ff; --b-unexp:#8b98a9; --p-scrap:#db2777; --p-rework:#d97706; --p-slow:#0d9488; }
}
:root[data-page="daily"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --bar-neutral:#5c6b82; --b-prod:#36c47f; --b-wo:#e0726f; --b-starved:#b26ef5; --b-blocked:#6ea8ff; --b-unexp:#8b98a9; --p-scrap:#db2777; --p-rework:#d97706; --p-slow:#0d9488; }
[data-page="daily"] *{ box-sizing:border-box }
[data-page="daily"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="daily"] a{ color:inherit }
[data-page="daily"] main{ max-width:1280px; margin:0 auto; padding:18px 22px 40px }
[data-page="daily"] .dy-head{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin:2px 0 4px }
[data-page="daily"] .dy-head h1{ font-size:20px; font-weight:600; letter-spacing:.3px; margin:0 }
[data-page="daily"] .dy-head .sub{ color:var(--mut); font-size:12.5px }
[data-page="daily"] .dy-winnote{ color:var(--mut); font-size:12px; margin:2px 2px 14px }
[data-page="daily"] .dy-srcbanner{ display:flex; align-items:center; gap:10px; margin:0 0 16px; padding:10px 15px; border:1px solid var(--line); border-radius:4px; background:var(--panel2); color:var(--mut); font-weight:600; font-size:13px }
[data-page="daily"] .dy-srcbanner .why{ font-weight:400; color:var(--mut); font-size:12px }
[data-page="daily"] .dy-honesty{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin:0 0 14px; font-size:11.5px }
[data-page="daily"] .dy-pill{ display:inline-flex; align-items:center; gap:5px; padding:2px 9px; border-radius:4px; border:1px solid var(--line); color:var(--mut); background:transparent; font-weight:600 }
[data-page="daily"] .dy-pill.real{ border-color:var(--line); color:var(--mut); background:transparent }
[data-page="daily"] .dy-honesty .why{ color:var(--mut) }
[data-page="daily"] .dy-srcline{ color:var(--mut); font-size:12px; margin:0 2px 12px }
[data-page="daily"] .dy-srcline .live{ color:var(--fg); font-weight:600; padding:1px 6px; border:1px solid var(--good); border-radius:2px }
 
[data-page="daily"] .dy-sec-h{ display:flex; align-items:baseline; gap:10px; margin:24px 2px 10px }
[data-page="daily"] .dy-sec-h h2{ font-size:13px; margin:0; letter-spacing:.8px; text-transform:uppercase; color:var(--mut) }
[data-page="daily"] .dy-sec-h .meta{ color:var(--mut); font-size:12px; margin-left:auto }
[data-page="daily"] .dy-hero{ display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:center; border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:22px 26px; margin:0 0 14px }
@media (max-width:900px){
  [data-page="daily"] .dy-hero{ grid-template-columns:1fr; gap:14px }
}
[data-page="daily"] .dy-hero-k{ color:var(--mut); font-size:12.5px; letter-spacing:.4px; text-transform:uppercase; margin-bottom:6px }
[data-page="daily"] .dy-hero-fig{ font-size:58px; font-weight:600; line-height:1 }
[data-page="daily"] .dy-hero-fig small{ font-size:26px; font-weight:600; color:var(--mut) }
[data-page="daily"] .dy-hero-legend{ display:flex; gap:13px; flex-wrap:wrap; margin-top:9px; font-size:11.5px; color:var(--mut) }
[data-page="daily"] .dy-hero-side{ display:flex; flex-direction:column; gap:9px; min-width:220px }
[data-page="daily"] .dy-hstat{ display:flex; align-items:baseline; gap:8px; justify-content:space-between; border-bottom:1px dashed var(--line); padding-bottom:7px }
[data-page="daily"] .dy-hstat:last-child{ border-bottom:none; padding-bottom:0 }
[data-page="daily"] .dy-hstat .k{ color:var(--mut); font-size:12px }
[data-page="daily"] .dy-hstat .v{ font-size:19px; font-weight:600; font-variant-numeric:tabular-nums }
[data-page="daily"] .dy-hstat .v small{ font-size:12px; font-weight:600; color:var(--mut) }
[data-page="daily"] .dy-hstat .v.bad{ color:var(--bad) }
[data-page="daily"] .dy-hstat .v.warn{ color:var(--warn) }
[data-page="daily"] .dy-hstat .v.good{ color:var(--good) }
[data-page="daily"] .dy-hstat .v a{ color:inherit; text-decoration:none }
[data-page="daily"] .dot{ display:inline-block; width:9px; height:9px; border-radius:2px; vertical-align:middle; margin-right:4px }
[data-page="daily"] .tag{ font-size:10px; font-weight:600; letter-spacing:.5px; padding:1px 7px; border-radius:4px; border:1px solid var(--line); color:var(--mut); vertical-align:1px }
[data-page="daily"] .tag.raw{ color:var(--on-color); background:var(--unk); border-color:var(--unk) }
[data-page="daily"] .tag.demo{ color:var(--mut); border-color:var(--line) }
[data-page="daily"] .dy-flow{ display:flex; flex-wrap:wrap; gap:6px; margin:0 0 6px }
[data-page="daily"] .dy-blk{ display:flex; flex-direction:column; gap:1px; min-width:74px; flex:1 1 74px; padding:7px 9px; border-radius:3px; border:1px solid var(--line); background:var(--panel); text-decoration:none; color:var(--fg) }
[data-page="daily"] .dy-blk:hover{ border-color:var(--hover); background:var(--panel2) }
[data-page="daily"] .dy-blk .nm{ font-size:11.5px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="daily"] .dy-blk .sy{ font-size:12px; font-weight:600 }
[data-page="daily"] .dy-blk .pc{ font-size:10.5px; color:var(--mut); font-variant-numeric:tabular-nums }
[data-page="daily"] .dy-blk.ok{ border-color:var(--good) }
[data-page="daily"] .dy-blk.ok .sy{ color:var(--good) }
[data-page="daily"] .dy-blk.bad{ border-color:var(--bad) }
[data-page="daily"] .dy-blk.bad .sy{ color:var(--bad) }
[data-page="daily"] .dy-blk.none .sy, [data-page="daily"] .dy-blk.nosig .sy{ color:var(--mut) }
[data-page="daily"] .dy-blk.nosig{ opacity:.7 }
[data-page="daily"] .dy-oee{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin:0 0 14px; padding:12px 18px; border:1px solid var(--line); border-radius:4px; background:var(--panel) }
[data-page="daily"] .dy-oee .lbl{ color:var(--mut); font-size:11px; letter-spacing:.6px; text-transform:uppercase }
[data-page="daily"] .dy-oee .score{ font-size:30px; font-weight:600; line-height:1 }
[data-page="daily"] .dy-oee .eq{ color:var(--mut); font-size:13px }
[data-page="daily"] .dy-oee .fac{ font-weight:600; color:var(--fg) }
[data-page="daily"] .dy-oee .op{ color:var(--mut); margin:0 4px }
[data-page="daily"] .dy-oee .scope{ margin-left:auto; font-size:11px; padding:2px 9px; border-radius:4px; border:1px solid var(--line); color:var(--mut) }
[data-page="daily"] .dy-list{ border:1px solid var(--line); border-radius:4px; background:var(--panel); overflow:clip }
[data-page="daily"] .dy-row{ display:grid; grid-template-columns:158px 1.5fr 150px 96px; gap:14px; align-items:center; padding:10px 16px; border-bottom:1px solid var(--line); text-decoration:none; color:inherit }
[data-page="daily"] .dy-row:last-child{ border-bottom:none }
[data-page="daily"] .dy-row:hover{ background:var(--panel2) }
[data-page="daily"] .dy-row.hd{ background:var(--panel2) }
[data-page="daily"] .dy-row.hd span{ color:var(--mut); font-size:11px; text-transform:uppercase; letter-spacing:.4px }
[data-page="daily"] .dy-row.nosig{ opacity:.6 }
@media (max-width:900px){
  [data-page="daily"] .dy-row{ grid-template-columns:1fr; gap:6px }
}
[data-page="daily"] .dy-row .st{ font-weight:600; font-size:13.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="daily"] .dy-row .st .sym{ margin-right:5px; font-weight:600 }
[data-page="daily"] .dy-row .st .sym.ok{ color:var(--good) }
[data-page="daily"] .dy-row .st .sym.bad{ color:var(--bad) }
[data-page="daily"] .dy-row .st .sym.none, [data-page="daily"] .dy-row .st .sym.nosig{ color:var(--mut) }
[data-page="daily"] .dy-bul{ position:relative; height:16px; border-radius:2px; background:var(--track); overflow:hidden }
[data-page="daily"] .dy-bul i{ position:absolute; left:0; top:0; bottom:0; border-radius:2px; background:var(--bar-neutral) }
[data-page="daily"] .dy-bnum{ font-size:12.5px; font-variant-numeric:tabular-nums; color:var(--mut); text-align:right; white-space:nowrap }
[data-page="daily"] .dy-bnum b{ color:var(--fg) }
[data-page="daily"] .dy-cause{ display:flex; gap:5px; flex-wrap:wrap; margin-top:3px }
[data-page="daily"] .dy-chip{ font-size:10px; font-weight:600; padding:1px 6px; border-radius:4px; border:1px solid var(--line); color:var(--mut) }
[data-page="daily"] .dy-mini{ position:relative; height:9px; border-radius:4px; background:var(--track); overflow:hidden; margin-top:3px }
[data-page="daily"] .dy-mini i{ position:absolute; left:0; top:0; bottom:0; border-radius:4px; background:var(--bar-neutral) }
[data-page="daily"] .dy-num{ text-align:right; font-variant-numeric:tabular-nums; font-size:12.5px; white-space:nowrap }
[data-page="daily"] .dy-num small{ color:var(--mut) }
[data-page="daily"] .dy-hdr-demo{ font-size:9px }
[data-page="daily"] .help{ margin-left:5px }
[data-page="daily"] .help .tip{ width:260px }
[data-page="daily"] .dy-diag{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:0 0 14px; padding:11px 17px; border:1px solid var(--line); border-radius:4px; background:var(--panel) }
[data-page="daily"] .dy-diag .lbl{ color:var(--mut); font-size:11px; letter-spacing:.6px; text-transform:uppercase }
[data-page="daily"] .dy-diag .big{ font-size:20px; font-weight:600; font-variant-numeric:tabular-nums }
[data-page="daily"] .dy-diag .rest{ color:var(--mut); font-size:12.5px }
[data-page="daily"] .dy-led{ border:1px solid var(--line); border-radius:4px; background:var(--panel); overflow:hidden }
[data-page="daily"] .dy-lrow{ display:grid; grid-template-columns:158px 1fr 108px; gap:14px; align-items:center; padding:9px 16px; border-bottom:1px solid var(--line) }
[data-page="daily"] .dy-lrow:last-child{ border-bottom:none }
[data-page="daily"] .dy-lrow.hd{ background:var(--panel2) }
[data-page="daily"] .dy-lrow.hd span{ color:var(--mut); font-size:11px; text-transform:uppercase; letter-spacing:.4px }
@media (max-width:900px){
  [data-page="daily"] .dy-lrow{ grid-template-columns:1fr; gap:6px }
}
[data-page="daily"] .dy-lrow .st{ font-weight:600; font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="daily"] .dy-stack{ display:flex; gap:2px; height:15px; border-radius:2px; overflow:hidden; background:var(--track) }
[data-page="daily"] .dy-stack i{ display:block; height:100%; font-size:0 }
[data-page="daily"] .dy-stack i.prod{ background:var(--b-prod) }
[data-page="daily"] .dy-stack i.wo{ background:var(--b-wo) }
[data-page="daily"] .dy-stack i.starved{ background:var(--b-starved) }
[data-page="daily"] .dy-stack i.blocked{ background:var(--b-blocked) }
[data-page="daily"] .dy-stack i.unexplained{ background:var(--b-unexp) }
[data-page="daily"] .dy-lnum{ text-align:right; font-variant-numeric:tabular-nums; font-size:12.5px; white-space:nowrap }
[data-page="daily"] .dy-lnum small{ color:var(--mut) }
[data-page="daily"] .dy-lmut{ color:var(--mut); font-size:12px }
[data-page="daily"] .dy-legend{ display:flex; gap:12px; flex-wrap:wrap; margin:9px 2px 0; font-size:11px; color:var(--mut) }
[data-page="daily"] .dy-legend.dy-leg-top{ margin:0 2px 8px }
[data-page="daily"] .dy-legend.dy-leg-mini{ margin:2px 0 7px; font-size:10.5px; gap:9px }
[data-page="daily"] .dy-legend .sw{ display:inline-block; width:10px; height:10px; border-radius:2px; margin-right:5px; vertical-align:-1px }
[data-page="daily"] .dy-legend .dy-lsub{ padding-left:9px; border-left:1px solid var(--line) }
[data-page="daily"] .dy-legend .dy-lsub .sw{ margin-left:6px }
[data-page="daily"] .dy-det{ margin-top:5px }
[data-page="daily"] .dy-det summary{ cursor:pointer; color:var(--mut); font-size:11px; list-style:none }
[data-page="daily"] .dy-det summary::-webkit-details-marker{ display:none }
[data-page="daily"] .dy-det summary::before{ content:""; display:inline-block; width:.8em; height:.8em; margin-right:6px; vertical-align:-.05em; background:var(--mut); -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat }
[data-page="daily"] .dy-det[open] summary::before{ transform:rotate(90deg) }
[data-page="daily"] .dy-det .body{ font-size:11.5px; color:var(--mut); padding:5px 0 2px; line-height:1.7 }
[data-page="daily"] .dy-det .body b{ color:var(--fg) }
[data-page="daily"] .dy-chip.b{ border-color:currentColor }
[data-page="daily"] .dy-chip.b-wo{ color:var(--b-wo) }
[data-page="daily"] .dy-chip.b-starved{ color:var(--b-starved) }
[data-page="daily"] .dy-chip.b-blocked{ color:var(--b-blocked) }
[data-page="daily"] .dy-chip.b-unexplained{ color:var(--b-unexp) }
[data-page="daily"] .dy-par{ border:1px solid var(--line); border-radius:4px; background:var(--panel); overflow:hidden }
[data-page="daily"] .dy-prow{ display:grid; grid-template-columns:200px 1fr 118px; gap:14px; align-items:center; padding:8px 16px; border-bottom:1px solid var(--line) }
[data-page="daily"] .dy-prow:last-child{ border-bottom:none }
[data-page="daily"] .dy-prow.hd{ background:var(--panel2) }
[data-page="daily"] .dy-prow.hd span{ color:var(--mut); font-size:11px; text-transform:uppercase; letter-spacing:.4px }
@media (max-width:900px){
  [data-page="daily"] .dy-prow{ grid-template-columns:1fr; gap:6px }
}
[data-page="daily"] .dy-cover{ color:var(--mut); font-size:11.5px; margin:8px 2px 0 }
[data-page="daily"] .dy-hero2{ display:grid; grid-template-columns:3fr 2fr; gap:14px; margin:0 0 14px }
@media (max-width:900px){
  [data-page="daily"] .dy-hero2{ grid-template-columns:1fr }
}
[data-page="daily"] .dy-hero2 .dy-hero{ margin:0 }
[data-page="daily"] .dy-loss{ display:flex; flex-direction:column; gap:7px; border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:18px 22px }
[data-page="daily"] .dy-loss .k{ color:var(--mut); font-size:11px; letter-spacing:.6px; text-transform:uppercase }
[data-page="daily"] .dy-loss .big{ font-size:23px; font-weight:600; line-height:1.25; font-variant-numeric:tabular-nums }
[data-page="daily"] .dy-loss .big small{ font-size:13px; font-weight:600; color:var(--mut) }
[data-page="daily"] .dy-loss .sub{ font-size:13px }
[data-page="daily"] .dy-loss .sub a{ text-decoration:none }
[data-page="daily"] .dy-loss .alt{ color:var(--mut); font-size:12px }
[data-page="daily"] .dy-loss .mut{ color:var(--mut); font-size:11.5px }
[data-page="daily"] .dy-loss .presume{ display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-top:4px; padding-top:7px; border-top:1px dashed var(--line); color:var(--mut); font-size:11.5px }
[data-page="daily"] .dy-loss .presume .v{ font-variant-numeric:tabular-nums; white-space:nowrap }
[data-page="daily"] .dy-loss .dy-cause{ margin-top:1px }
[data-page="daily"] .dy-map{ display:flex; flex-wrap:wrap; align-items:center; gap:4px; margin:0 0 6px }
[data-page="daily"] .dy-mblk{ display:flex; flex-direction:column; align-items:center; width:86px; padding:2px 3px 3px; border-radius:4px; border:1px solid var(--line); background:var(--panel); text-decoration:none; color:var(--fg) }
[data-page="daily"] .dy-mblk:hover{ border-color:var(--hover); background:var(--panel2) }
[data-page="daily"] .dy-mblk .o{ font-size:9.5px; color:var(--mut); font-variant-numeric:tabular-nums; line-height:1.25 }
[data-page="daily"] .dy-mblk .sy{ font-size:11px; font-weight:600; line-height:1.25 }
[data-page="daily"] .dy-mblk .nm{ font-size:9.5px; color:var(--fg); line-height:1.25; max-width:80px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="daily"] .dy-mblk.ok{ border-color:var(--good); opacity:.45 }
[data-page="daily"] .dy-mblk.ok .sy{ color:var(--good) }
[data-page="daily"] .dy-mblk.ok:hover{ opacity:1 }
[data-page="daily"] .dy-mblk.bad{ border-width:1.6px; border-color:var(--bad); background:color-mix(in srgb, var(--bad) 12%, transparent) }
[data-page="daily"] .dy-mblk.bad .sy{ color:var(--bad) }
[data-page="daily"] .dy-mblk.bad .nm{ color:var(--fg); font-weight:600 }
[data-page="daily"] .dy-mblk.none{ opacity:.45 }
[data-page="daily"] .dy-mblk.none .sy{ color:var(--mut) }
[data-page="daily"] .dy-mblk.none:hover{ opacity:1 }
[data-page="daily"] .dy-mblk.nosig{ opacity:.4 }
[data-page="daily"] .dy-mblk.nosig .sy{ color:var(--mut) }
[data-page="daily"] .dy-mblk.nosig:hover{ opacity:1 }
[data-page="daily"] .dy-map .sep{ width:2px; height:24px; border-radius:0; background:var(--line); margin:0 3px }
[data-page="daily"] .dy-mrow{ display:grid; grid-template-columns:230px 175px minmax(260px,1fr) 175px 95px 70px; gap:12px; align-items:center; padding:8px 14px; border-bottom:1px solid var(--line) }
@media (max-width:900px){
  [data-page="daily"] .dy-mrow{ grid-template-columns:1fr; gap:6px }
}
[data-page="daily"] .dy-mrow.hd{ position:sticky; top:0; z-index:5; background:var(--panel2) }
[data-page="daily"] .dy-mrow.hd span{ color:var(--mut); font-size:11px; text-transform:uppercase; letter-spacing:.4px }
[data-page="daily"] .dy-mrow.grp{ display:block; padding:5px 14px; background:var(--panel2); color:var(--mut); font-size:11px; font-weight:600; letter-spacing:.5px; text-transform:uppercase }
[data-page="daily"] .dy-mrow.nosig{ opacity:.6 }
[data-page="daily"] .dy-mrow .st{ display:grid; grid-template-columns:16px 1fr; column-gap:4px; min-width:0 }
[data-page="daily"] .dy-mrow .st .sym{ font-weight:600 }
[data-page="daily"] .dy-mrow .st .sym.ok{ color:var(--good) }
[data-page="daily"] .dy-mrow .st .sym.bad{ color:var(--bad) }
[data-page="daily"] .dy-mrow .st .sym.none, [data-page="daily"] .dy-mrow .st .sym.nosig{ color:var(--mut) }
[data-page="daily"] .dy-mrow .st .nm{ font-weight:600; font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="daily"] .dy-mrow .st .nm a{ text-decoration:none }
[data-page="daily"] .dy-mrow .st .nm a:hover{ text-decoration:underline }
[data-page="daily"] .dy-mrow .st .id{ grid-column:2; font-size:10px; color:var(--mut); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="daily"] details.dy-drow{ scroll-margin-top:14px }
[data-page="daily"] details.dy-drow > summary{ list-style:none; cursor:pointer }
[data-page="daily"] details.dy-drow > summary::-webkit-details-marker{ display:none }
[data-page="daily"] details.dy-drow > summary:hover{ background:var(--panel2) }
[data-page="daily"] details.dy-drow[open] > summary{ background:var(--panel2) }
[data-page="daily"] .dy-dbody{ padding:8px 16px 10px; border-top:1px dashed var(--line); border-bottom:1px solid var(--line); font-size:11.5px; color:var(--mut); line-height:1.7; background:color-mix(in srgb, var(--panel2) 45%, transparent) }
[data-page="daily"] .dy-dbody b{ color:var(--fg) }
[data-page="daily"] .dy-dbody .sec{ margin-top:4px }
[data-page="daily"] .dy-dbody .sent{ color:var(--fg); font-size:12.5px; font-weight:600; line-height:1.6; margin:0 0 5px }
[data-page="daily"] .dy-dbody .sent .un{ color:var(--mut); font-weight:400 }
[data-page="daily"] .dy-dbody .sent .gain{ color:var(--mut); font-weight:400 }
[data-page="daily"] .dy-dbody .sec a{ color:var(--fg); font-weight:600; text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="daily"] .dy-chip.tb{ border:1px solid currentColor; background:color-mix(in srgb, currentColor 12%, transparent) }
[data-page="daily"] .dy-chip.pb{ border:1px dashed currentColor; background:transparent }
[data-page="daily"] .dy-chip.p-scrap{ color:var(--p-scrap) }
[data-page="daily"] .dy-chip.p-rework{ color:var(--p-rework) }
[data-page="daily"] .dy-chip.p-slow{ color:var(--p-slow) }
[data-page="daily"] .dy-stack i.scrap{ background:var(--p-scrap) }
[data-page="daily"] .dy-stack i.rework{ background:var(--p-rework) }
[data-page="daily"] .dy-stack i.slow{ background:var(--p-slow) }
[data-page="daily"] .dy-stack i.goodh{ background:var(--b-prod) }
[data-page="daily"] .dy-stack i.reworkh{ background:var(--p-rework) }
[data-page="daily"] .dy-stack i.scraph{ background:var(--p-scrap) }
[data-page="daily"] .dy-lmut.sm{ font-size:10.5px; line-height:1.45; display:block }
[data-page="daily"] .dy-par2{ display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start }
@media (max-width:900px){
  [data-page="daily"] .dy-par2{ grid-template-columns:1fr }
}
[data-page="daily"] .dy-sub{ color:var(--mut); font-size:11.5px; font-weight:600; margin:0 0 6px }
[data-page="daily"] .dy-legend .grp-lbl{ font-weight:600; color:var(--fg) }
[data-page="daily"] .dy-foot{ color:var(--mut); font-size:11.5px; margin:22px 2px 0; line-height:1.6 }
[data-page="daily"] .dy-foot a{ color:var(--fg); font-weight:600; text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="daily"] .dy-foot code{ background:var(--panel2); padding:1px 5px; border-radius:4px }
[data-page="daily"] .dy-unavail{ font-size:14px; font-weight:600; color:var(--fg); padding:20px 2px }
 
[data-page="daily"] .dy-unavail::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
 
[data-page="daily"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:30px 2px }
[data-page="daily"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:sp .8s linear infinite }
@keyframes sp{to{ transform:rotate(360deg) }}
[data-page="daily"] #row-anchor{ scroll-margin-top:14px }
 
:root[data-page="equipment"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --ptag:#536f99; --ptag-ink:#ffffff; --st-repair:#dc2626; --sti-repair:#ffffff; --st-pm:#2563eb; --sti-pm:#ffffff; --st-legacy:#9ca3af; --sti-legacy:#1b2433; --st-setup:var(--st-legacy); --sti-setup:var(--sti-legacy); --st-maint:var(--st-legacy); --sti-maint:var(--sti-legacy); --st-parts:#6b21a8; --sti-parts:#ffffff; --st-vendor:#d97706; --sti-vendor:#1b2433; --st-hwait:#8b98a9; --sti-hwait:#ffffff; --st-htest:var(--st-hwait); --sti-htest:var(--sti-hwait); --st-dormant:#64748b; --eq-off-tint:rgba(15,23,42,.045); --rw-off:#cbd5e1; --rw-on:#eef4fb; --tex-stripe:rgba(0,0,0,.30); }
@media (prefers-color-scheme: dark){
  :root[data-page="equipment"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; --st-parts:#b26ef5; --sti-parts:#1b2433; --st-dormant:#94a3b8; --rw-off:#0a101c; --rw-on:#2a3b5c; --eq-off-tint:rgba(255,255,255,.06); }
}
:root[data-page="equipment"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; --st-parts:#b26ef5; --sti-parts:#1b2433; --st-dormant:#94a3b8; --rw-off:#0a101c; --rw-on:#2a3b5c; --eq-off-tint:rgba(255,255,255,.06); }
[data-page="equipment"] .eq-erwline{ font-size:11.5px; color:var(--mut); margin:6px 2px 2px }
[data-page="equipment"] .eq-erwline .deg{ color:var(--fg) }
 
[data-page="equipment"] .eq-erwline .deg::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
 
[data-page="equipment"] .eq-erwline.inert{ color:var(--fg); font-weight:600 }
 
[data-page="equipment"] .eq-erwline.inert::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
 
[data-page="equipment"] .eq-rwbar{ position:relative; height:6px; min-width:120px; margin-top:4px; border-radius:3px; background:var(--rw-off); overflow:hidden }
[data-page="equipment"] .eq-rwbar i{ position:absolute; top:0; bottom:0; display:block }
[data-page="equipment"] .eq-rwbar i.w{ background:var(--rw-on) }
[data-page="equipment"] .eq-rwbar i.u{ background-color:var(--panel); background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
[data-page="equipment"] .eq-rwbar i.k{ width:1px; background:var(--mut); opacity:.45 }
[data-page="equipment"] .eq-equiv{ font-size:11px; color:var(--mut); margin-top:2px; line-height:1.2 }
[data-page="equipment"] .eq-equiv .ph{ font-size:10px; opacity:.72 }
[data-page="equipment"] .eq-cell .cequiv{ display:block; font-size:9.5px; font-weight:600; opacity:.78; line-height:1.1; margin-top:1px }
[data-page="equipment"] .eq-cell.eq-rwna, [data-page="equipment"] .eq-cell.eq-rwout{ background:transparent; color:var(--mut); font-weight:400; font-size:11px; border:1px dashed var(--line) }
[data-page="equipment"] .eq-cell.eq-rwna{ border-color:transparent }
[data-page="equipment"] .eq-cell.eq-rwna:hover, [data-page="equipment"] .eq-cell.eq-rwout:hover{ outline:2px solid var(--hover); outline-offset:-1px }
[data-page="equipment"] *{ box-sizing:border-box }
[data-page="equipment"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="equipment"] a{ color:inherit }
[data-page="equipment"] main{ max-width:1240px; margin:0 auto; padding:18px 22px 40px }
[data-page="equipment"] .eq-head{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin:2px 0 4px }
[data-page="equipment"] .eq-head h1{ font-size:22px; font-weight:600; letter-spacing:.3px; margin:0 }
[data-page="equipment"] .eq-head .sub{ color:var(--mut); font-size:13.5px }
[data-page="equipment"] .eq-ctl{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:8px 2px 14px }
[data-page="equipment"] .eq-wins{ display:inline-flex; gap:4px; padding:3px; border-radius:4px; border:1px solid var(--line); background:var(--panel) }
[data-page="equipment"] .eq-chip{ font-size:13.5px; padding:4px 13px; border-radius:4px; text-decoration:none; color:var(--mut) }
[data-page="equipment"] .eq-chip:hover{ background:var(--panel2); color:var(--fg) }
[data-page="equipment"] .eq-chip.on{ background:var(--panel2); color:var(--fg); font-weight:600; border:1px solid var(--line) }
[data-page="equipment"] .tag-toggle{ display:inline-flex; gap:3px; padding:3px; border:1px solid var(--line); border-radius:4px; background:var(--panel) }
[data-page="equipment"] .tag-toggle a, [data-page="equipment"] .ptag{ font-size:10.5px; font-weight:600; line-height:1; letter-spacing:.5px; text-decoration:none; padding:4px 6px; border:1px solid transparent; border-radius:4px; color:var(--mut) }
[data-page="equipment"] .tag-toggle a.on, [data-page="equipment"] .ptag.observed{ color:var(--ptag-ink); background:var(--ptag); border-color:var(--ptag) }
[data-page="equipment"] .ptag.default{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="equipment"] .ptag.idle{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="equipment"] .ptags{ display:inline-flex; gap:3px; vertical-align:middle }
[data-page="equipment"] .eq-howbtn{ position:relative; display:inline-flex; align-items:center; gap:7px; cursor:help; font-size:12.5px; font-weight:600; color:var(--fg); background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:6px 14px; user-select:none }
[data-page="equipment"] .eq-howbtn .q{ display:inline-flex; align-items:center; justify-content:center; width:16px; height:16px; border-radius:50%; border:1.5px solid var(--mut); color:var(--mut); font-size:10.5px }
[data-page="equipment"] .eq-howbtn:hover, [data-page="equipment"] .eq-howbtn:focus{ border-color:var(--hover) }
[data-page="equipment"] .eq-howpanel{ display:none; position:absolute; z-index:50; top:36px; left:0; width:640px; max-width:88vw; background:var(--panel); color:var(--fg); border:1px solid var(--hover); border-radius:4px; padding:16px 18px; box-shadow:none; font-weight:400; font-size:12.5px; line-height:1.6; cursor:auto }
[data-page="equipment"] .eq-howbtn:hover .eq-howpanel, [data-page="equipment"] .eq-howbtn:focus-within .eq-howpanel{ display:block }
[data-page="equipment"] .eq-howpanel .def{ padding:8px 12px; border-radius:4px; background:var(--panel2); margin-bottom:12px }
[data-page="equipment"] .eq-howpanel h4{ margin:0 0 8px; font-size:11.5px; letter-spacing:.7px; text-transform:uppercase; color:var(--mut) }
[data-page="equipment"] .eq-rule{ display:grid; grid-template-columns:26px 1fr; gap:10px; padding:6px 0; align-items:start }
[data-page="equipment"] .eq-rule .n{ width:22px; height:22px; border-radius:50%; background:var(--fg); color:var(--bg); font-weight:600; font-size:11.5px; display:flex; align-items:center; justify-content:center; margin-top:1px }
[data-page="equipment"] .eq-rule + .eq-rule{ border-top:1px dashed var(--line) }
[data-page="equipment"] .eq-srctbl{ width:100%; border-collapse:collapse; margin-top:4px }
[data-page="equipment"] .eq-srctbl td{ padding:5px 8px; border-top:1px solid var(--line); font-size:12px }
[data-page="equipment"] .eq-srctbl td:first-child{ font-weight:600; white-space:nowrap }
[data-page="equipment"] .eq-stag{ font-size:10px; font-weight:600; letter-spacing:.4px; padding:1px 8px; border-radius:4px; border:1px solid var(--unk); color:var(--unk); white-space:nowrap }
[data-page="equipment"] .eq-stag.live{ border-color:var(--good); color:var(--good) }
[data-page="equipment"] .eq-gapbox{ margin-top:14px; padding:8px 12px; border-radius:4px; background:var(--panel2); color:var(--mut); line-height:1.6 }
[data-page="equipment"] .eq-gapbox b{ color:var(--fg) }
[data-page="equipment"] .eq-srcbanner{ display:flex; gap:10px; align-items:flex-start; margin:0 0 14px; padding:10px 15px; border:1px solid var(--unk); border-radius:4px; background:var(--tint-warn); font-size:12.5px; color:var(--fg) }
[data-page="equipment"] .eq-srcbanner .pin{ font-weight:600; color:var(--fg); white-space:nowrap }
 
[data-page="equipment"] .eq-srcbanner .pin::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
 
[data-page="equipment"] .eq-srcbanner.live{ border-color:var(--good); background:var(--tint-good) }
[data-page="equipment"] .eq-srcbanner.live .pin{ color:var(--good) }
[data-page="equipment"] .eq-strip{ display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin:2px 0 10px; padding:7px 13px; border:1px solid var(--line); border-radius:4px; background:var(--panel); font-size:13.5px }
[data-page="equipment"] .eq-strip-l{ font-weight:600; color:var(--fg) }
[data-page="equipment"] .eq-strip-l .mut{ color:var(--mut); font-weight:400 }
[data-page="equipment"] .eq-strip-r{ display:inline-flex; align-items:center; gap:9px; white-space:nowrap; flex-wrap:wrap }
[data-page="equipment"] .eq-strip-down{ display:inline-flex; align-items:center; gap:6px; text-decoration:none; color:var(--fg); font-weight:600; border:1px solid var(--line); border-radius:4px; padding:3px 11px }
[data-page="equipment"] a.eq-strip-down:hover{ border-color:var(--hover) }
[data-page="equipment"] .eq-strip-down.hot{ color:var(--bad); border-color:var(--bad); cursor:pointer }
[data-page="equipment"] .eq-strip-down.hot.on{ background:var(--tint-bad) }
[data-page="equipment"] .eq-strip-down .dot{ width:9px; height:9px; border-radius:50%; display:inline-block }
[data-page="equipment"] .eq-strip-stale{ color:var(--fg); font-size:12.5px; font-weight:600; cursor:help }
 
[data-page="equipment"] .eq-strip-stale::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
 
[data-page="equipment"] .eq-strip-dorm{ color:var(--st-dormant); font-size:12.5px; font-weight:600; cursor:help }
[data-page="equipment"] .eq-strip-ok{ font-size:11px; font-weight:600; color:var(--fg); border:1px solid var(--good); border-radius:4px; padding:1px 8px; cursor:help }
 
[data-page="equipment"] .eq-strip-caveat{ margin:-4px 0 10px; padding:6px 13px; border-radius:4px; font-size:12.5px; color:var(--fg); background:var(--tint-warn-2); border:1px solid var(--unk) }
[data-page="equipment"] .eq-strip-conf{ margin:-4px 0 10px; padding:6px 13px; border-radius:4px; font-size:12.5px; color:var(--fg); background:var(--panel2); border:1px dashed var(--line); cursor:help }
[data-page="equipment"] .eq-strip-conf small{ color:var(--mut) }
[data-page="equipment"] .eq-strip-conf .q{ display:inline-flex; align-items:center; justify-content:center; width:15px; height:15px; border-radius:50%; border:1.5px solid var(--mut); color:var(--mut); font-size:10px; margin-left:4px }
[data-page="equipment"] .eq-eidjump{ cursor:pointer; text-decoration:underline dotted; text-underline-offset:2px; color:inherit }
[data-page="equipment"] .eq-eidjump:hover{ color:var(--fg); text-decoration-style:solid }
[data-page="equipment"] tr[data-eid]{ scroll-margin-top:72px }
@keyframes eq-rowflash{0% { box-shadow:inset 0 0 0 999px color-mix(in srgb, var(--hover) 55%, transparent) } 100% { box-shadow:inset 0 0 0 999px transparent }}
[data-page="equipment"] tr.eq-rowflash > td{ animation:eq-rowflash 1.2s ease-out }
[data-page="equipment"] .eq-focus-down tbody tr:not(.row-down):not(.eq-arearow):not(.eq-drillrow):not(.eq-collrow){ opacity:.22 }
[data-page="equipment"] .eq-focus-down tbody tr.eq-drillrow{ opacity:.22 }
[data-page="equipment"] .eq-focus-down tbody tr.row-down + tr.eq-drillrow{ opacity:1 }
[data-page="equipment"] .eq-hl{ display:flex; gap:12px; flex-wrap:wrap; align-items:stretch; margin:0 0 18px }
[data-page="equipment"] .eq-hlcard{ flex:1; min-width:170px; border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:14px 18px }
[data-page="equipment"] .eq-hlcard .k{ color:var(--mut); font-size:12px; letter-spacing:.6px; text-transform:uppercase; margin-bottom:4px }
[data-page="equipment"] .eq-hlcard .v{ font-size:34px; font-weight:600; line-height:1.05; font-variant-numeric:tabular-nums }
[data-page="equipment"] .eq-hlcard .v small{ font-size:14px; color:var(--mut); font-weight:600 }
[data-page="equipment"] .eq-hlcard .v a{ text-decoration:none; color:inherit }
[data-page="equipment"] .eq-hlcard .note{ font-size:13px; color:var(--mut); font-weight:600; line-height:1.35; margin-top:3px }
[data-page="equipment"] .eq-hlcard.bad .v{ color:var(--fg) }
[data-page="equipment"] .eq-hlcard.warn .v{ color:var(--fg) }
[data-page="equipment"] .eq-hlcard.muted{ opacity:.72 }
[data-page="equipment"] .eq-hlcard.muted .v{ font-size:16px; color:var(--mut); font-weight:600 }
[data-page="equipment"] .eq-bd{ display:flex; gap:5px; flex-wrap:wrap; margin-top:8px }
[data-page="equipment"] .eq-bdchip{ display:inline-flex; align-items:center; gap:5px; font-size:12px; color:var(--mut); padding:1px 7px; border-radius:4px; border:1px solid var(--line) }
[data-page="equipment"] .eq-bdchip .d{ width:8px; height:8px; border-radius:2px; display:inline-block }
[data-page="equipment"] .eq-bdchip b{ color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="equipment"] table.eq-grid tr.eq-arearow td{ position:sticky; top:29px; z-index:6; background:var(--bg); text-align:left; padding:8px 12px; border-top:2px solid var(--line); border-bottom:1px solid var(--line) }
[data-page="equipment"] table.eq-grid tr.eq-arearow .in{ position:sticky; left:0; display:inline-flex; align-items:baseline; gap:8px; font-size:13px; font-weight:600; letter-spacing:.6px; text-transform:uppercase; color:var(--fg) }
[data-page="equipment"] table.eq-grid tr.eq-arearow small{ font-size:12px; font-weight:600; color:var(--mut); text-transform:none; letter-spacing:0 }
[data-page="equipment"] table.eq-grid tr.eq-collrow td{ text-align:left; padding:6px 12px; background:transparent }
[data-page="equipment"] table.eq-grid tr.eq-collrow:hover{ background:transparent }
[data-page="equipment"] table.eq-grid tr.eq-collrow .in{ position:sticky; left:0; display:inline-flex; align-items:baseline; gap:8px; font-size:12px; color:var(--mut); cursor:help }
[data-page="equipment"] table.eq-grid tr.eq-collrow .in .k{ color:var(--st-dormant); font-weight:600 }
[data-page="equipment"] table.eq-grid tr.eq-collrow a{ color:var(--mut); text-decoration:underline dotted; cursor:pointer }
[data-page="equipment"] table.eq-grid tr.eq-collrow a:hover{ color:var(--fg); text-decoration:underline }
[data-page="equipment"] .eq-tblwrap{ border:1px solid var(--line); border-radius:4px; background:var(--panel); overflow:auto; max-height:calc(100vh - 40px) }
[data-page="equipment"] table.eq-grid{ width:100%; border-collapse:collapse; font-size:13px }
[data-page="equipment"] table.eq-grid th, [data-page="equipment"] table.eq-grid td{ padding:6px 8px; border-bottom:1px solid var(--line); text-align:center }
[data-page="equipment"] table.eq-grid thead th{ color:var(--mut); font-weight:600; font-size:10.5px; text-transform:uppercase; letter-spacing:.3px; background:var(--panel2); white-space:nowrap; position:sticky; top:0; z-index:20 }
[data-page="equipment"] table.eq-grid thead th.pt{ color:var(--fg) }
 
[data-page="equipment"] table.eq-grid thead th.eq-mname{ left:0; z-index:22 }
[data-page="equipment"] table.eq-grid tbody tr:last-child td{ border-bottom:none }
[data-page="equipment"] table.eq-grid tbody tr:hover{ background:var(--panel2) }
[data-page="equipment"] table.eq-grid th.eq-mname, [data-page="equipment"] table.eq-grid td.eq-mname{ text-align:left }
[data-page="equipment"] td.eq-mname{ white-space:nowrap; font-weight:600; min-width:190px; position:sticky; left:0; background:var(--panel); z-index:1 }
[data-page="equipment"] table.eq-grid tbody tr:hover td.eq-mname{ background:var(--panel2) }
[data-page="equipment"] td.eq-mname small{ display:block; color:var(--mut); font-weight:400; font-size:11px }
[data-page="equipment"] .eq-dupbadge{ display:inline-block; font-size:9px; font-weight:600; letter-spacing:.3px; padding:0 6px; border-radius:4px; border:1px solid var(--unk); color:var(--unk); margin-left:6px; vertical-align:1px }
[data-page="equipment"] td.eq-cellwrap{ padding:3px 4px; height:1px }
[data-page="equipment"] table.eq-grid th.eq-off, [data-page="equipment"] table.eq-grid td.eq-off{ background-image:linear-gradient(var(--eq-off-tint), var(--eq-off-tint)) }
[data-page="equipment"] .eq-cell{ display:block; text-decoration:none; border-radius:4px; padding:5px 2px; min-width:44px; font-weight:600; font-variant-numeric:tabular-nums; position:relative; cursor:pointer; height:100%; border:1px solid var(--cell-edge) }
[data-page="equipment"] .eq-cell:hover{ outline:2px solid var(--hover); outline-offset:-1px }
[data-page="equipment"] .eq-cell .og{ position:absolute; top:1px; right:3px; font-size:9px; line-height:1 }
[data-page="equipment"] .eq-cell .eq-mix{ position:absolute; left:3px; right:3px; bottom:2px; height:4px; display:flex; gap:1px; border-radius:2px; overflow:hidden }
[data-page="equipment"] .eq-cell .eq-mix > span{ height:100% }
[data-page="equipment"] .eq-cell .eq-mix .mix-stripe{ background-image:repeating-linear-gradient(45deg, var(--tex-stripe) 0 1.5px, transparent 1.5px 3px) }
[data-page="equipment"] .eq-cell-gray{ display:block; border-radius:3px; padding:5px 2px; min-width:44px; color:var(--mut); background:repeating-linear-gradient(45deg,transparent,transparent 4px,var(--track) 4px,var(--track) 8px); border:1px dashed var(--line); font-size:10px; text-decoration:none }
[data-page="equipment"] .eq-cell-gray .wodot{ display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--warn) }
[data-page="equipment"] .eq-blank{ color:var(--line) }
[data-page="equipment"] .eq-cell.eq-uptonly{ background:transparent; border:1px dashed var(--line); color:var(--mut); font-weight:400; font-size:10px }
[data-page="equipment"] .eq-cell.eq-uptonly:hover{ outline:2px solid var(--hover); outline-offset:-1px }
[data-page="equipment"] table.eq-grid th.eq-now-h, [data-page="equipment"] table.eq-grid td.eq-now{ text-align:left }
[data-page="equipment"] table.eq-grid{ --eq-avw:128px }
[data-page="equipment"] table.eq-grid th.eq-av-h, [data-page="equipment"] table.eq-grid td.eq-rowsum{ position:sticky; right:0; width:var(--eq-avw); min-width:var(--eq-avw); max-width:var(--eq-avw); background:var(--panel); z-index:1 }
[data-page="equipment"] table.eq-grid th.eq-now-h, [data-page="equipment"] table.eq-grid td.eq-now{ position:sticky; right:var(--eq-avw); background:var(--panel); z-index:1; border-left:1px solid var(--line); box-shadow:none}
[data-page="equipment"] table.eq-grid thead th.eq-now-h, [data-page="equipment"] table.eq-grid thead th.eq-av-h{ z-index:22; background:var(--panel2) }
[data-page="equipment"] table.eq-grid tbody tr:hover td.eq-now, [data-page="equipment"] table.eq-grid tbody tr:hover td.eq-rowsum{ background:var(--panel2) }
[data-page="equipment"] td.eq-now .vchip{ display:inline-flex; align-items:center; gap:6px; font-weight:600; white-space:nowrap; font-size:12px }
[data-page="equipment"] td.eq-now .vchip .d{ width:9px; height:9px; border-radius:50%; display:inline-block }
[data-page="equipment"] td.eq-now .vchip .stale{ color:var(--fg); font-weight:600; cursor:help }
 
[data-page="equipment"] td.eq-now .vchip .stale::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
 
[data-page="equipment"] td.eq-now .vchip small{ color:var(--mut); font-weight:600 }
[data-page="equipment"] td.eq-now .vchip small.stale-age{ color:var(--fg) }
 
[data-page="equipment"] td.eq-now .vchip small.stale-age::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
 
[data-page="equipment"] td.eq-now .vchip small.nosig{ cursor:help }
[data-page="equipment"] td.eq-now .eq-now-age{ display:block; font-size:11px; color:var(--mut); margin-top:1px; white-space:nowrap; font-weight:600 }
[data-page="equipment"] td.eq-rowsum{ font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap }
[data-page="equipment"] td.eq-rowsum.hot{ color:var(--fg) }
[data-page="equipment"] td.eq-rowsum.muted{ color:var(--mut); font-weight:400 }
[data-page="equipment"] .eq-legend{ position:sticky; top:0; z-index:30; display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:8px 4px; margin:14px 0 4px; background:var(--bg); border-bottom:1px solid var(--line); font-size:11.5px; color:var(--mut) }
[data-page="equipment"] .eq-legend .lg-t{ font-weight:600; letter-spacing:.5px; text-transform:uppercase; font-size:10.5px }
[data-page="equipment"] .eq-legend .lg-i{ display:inline-flex; align-items:center; gap:5px; white-space:nowrap; color:var(--fg) }
[data-page="equipment"] .eq-legend .lg-div{ width:1px; height:14px; background:var(--line); display:inline-block }
[data-page="equipment"] .eq-legend .lg-sub{ font-size:10px; color:var(--mut); letter-spacing:.04em; white-space:nowrap }
[data-page="equipment"] .eq-legend .lg-i .d{ width:12px; height:12px; border-radius:3px; display:inline-block; flex:none }
[data-page="equipment"] .eq-legend .lg-i .d.lg-hold{ background-color:var(--st-hwait); background-image:repeating-linear-gradient(45deg, var(--tex-stripe) 0 2px, transparent 2px 4px) }
[data-page="equipment"] .eq-legend .lg-i .d.lg-rwon{ background-color:var(--rw-on); border:1px solid var(--line) }
[data-page="equipment"] .eq-legend .lg-i .d.lg-rwoff{ background-color:var(--rw-off); border:1px solid var(--line) }
[data-page="equipment"] .eq-legend .lg-i .d.lg-rwunc{ background-color:var(--panel); border:1px solid var(--line); background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
[data-page="equipment"] tr.eq-drillrow > td{ padding:0; border:0 }
[data-page="equipment"] .eq-drillslot{ margin:0 }
[data-page="equipment"] .eq-drillslot:empty{ display:none }
[data-page="equipment"] .eq-drillslot.htmx-request{ display:block; padding:10px 6px; color:var(--mut); font-size:.85em }
[data-page="equipment"] .eq-drillslot.htmx-request::before{ content:'…' }
[data-page="equipment"] .eq-drillslot .eq-drill{ margin:6px 4px 12px; box-shadow:none}
[data-page="equipment"] .eq-drill{ border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:18px 20px; text-align:left; max-width:960px }
[data-page="equipment"] .eq-drillslot{ position:sticky; left:0 }
[data-page="equipment"] .eq-drill-h{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; margin-bottom:14px }
[data-page="equipment"] .eq-drill-h .t{ font-size:16.5px; font-weight:600 }
[data-page="equipment"] .eq-drill-h .stop{ color:var(--fg); font-weight:600 }
 
[data-page="equipment"] .eq-drill-h .stop::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--bad) }
 
[data-page="equipment"] .eq-drill-h .close{ margin-left:auto; font-size:12px; color:var(--mut); text-decoration:none; border:1px solid var(--line); border-radius:4px; padding:2px 10px; cursor:pointer }
[data-page="equipment"] .eq-drill-h .close:hover{ border-color:var(--hover) }
[data-page="equipment"] .eq-band-lbl{ font-size:12px; color:var(--mut); text-transform:uppercase; letter-spacing:.5px; margin:6px 0 5px }
[data-page="equipment"] .eq-band{ display:flex; height:30px; border-radius:2px; overflow:hidden; background:var(--track); border:1px solid var(--line); position:relative }
[data-page="equipment"] .eq-band.multi{ display:block }
[data-page="equipment"] .eq-band .seg{ height:100%; border-right:1px solid var(--seg-edge) }
[data-page="equipment"] .eq-band.multi .seg{ border-radius:2px }
[data-page="equipment"] .eq-band .seg.faint{ opacity:.30 }
[data-page="equipment"] .eq-band .seg.seg-hold{ opacity:.92 }
[data-page="equipment"] .eq-band .seg.seg-hold::before{ content:''; position:absolute; inset:0; background:repeating-linear-gradient(45deg, var(--tex-stripe) 0 3px, transparent 3px 7px) }
[data-page="equipment"] .eq-axis{ display:flex; justify-content:space-between; color:var(--mut); font-size:11.5px; margin:4px 1px 12px }
[data-page="equipment"] .eq-seglist{ display:flex; flex-direction:column; gap:6px; margin:2px 0 12px }
[data-page="equipment"] .eq-seg{ display:flex; flex-direction:column; gap:3px; padding:7px 12px; font-size:13px; border:1px solid var(--line); border-radius:4px; background:var(--track) }
[data-page="equipment"] .eq-seg .l1{ display:flex; align-items:center; gap:8px; flex-wrap:wrap }
[data-page="equipment"] .eq-seg .d{ width:9px; height:9px; border-radius:2px; flex:0 0 auto }
[data-page="equipment"] .eq-seg .tm{ font-variant-numeric:tabular-nums; color:var(--mut) }
[data-page="equipment"] .eq-seg .wo{ color:var(--mut); font-size:12.5px }
[data-page="equipment"] .eq-seg .sname{ font-weight:600 }
[data-page="equipment"] .eq-seg .desc{ font-weight:600; color:var(--fg) }
[data-page="equipment"] .eq-seg .l2{ font-size:12px; color:var(--mut); line-height:1.55; padding-left:18px; white-space:pre-wrap; overflow-wrap:anywhere; max-height:20em; overflow-y:auto }
[data-page="equipment"] .eq-seg .l2.nt .ntm{ font-variant-numeric:tabular-nums; color:var(--fg); font-weight:600; opacity:.8 }
[data-page="equipment"] .eq-seg .l2.more{ font-style:italic; opacity:.7 }
[data-page="equipment"] .eq-seg .l2.closeout{ color:var(--fg); opacity:.75 }
[data-page="equipment"] .eq-seg.upt{ background:transparent; border-style:dashed; opacity:.72 }
[data-page="equipment"] .eq-seg.upt .sname{ font-weight:500; color:var(--mut) }
[data-page="equipment"] .eq-seg .d-upt{ opacity:.6 }
[data-page="equipment"] .eq-otherwo{ font-size:12.5px; color:var(--mut); line-height:1.65; margin:2px 0 8px }
[data-page="equipment"] .eq-otherwo a{ color:inherit; text-decoration:underline; text-underline-offset:2px }
[data-page="equipment"] .eq-wolist{ display:flex; flex-direction:column; gap:9px }
[data-page="equipment"] .eq-wocard{ border:1px solid var(--line); border-radius:4px; background:var(--panel2); padding:11px 14px }
[data-page="equipment"] .eq-wocard .top{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; font-size:12.5px; margin-bottom:5px }
[data-page="equipment"] .eq-wocard .top .no{ font-weight:600 }
[data-page="equipment"] .eq-wocard .top .no a, [data-page="equipment"] .eq-seg .wo a{ color:inherit; text-decoration:underline; text-underline-offset:2px }
[data-page="equipment"] .eq-wochip{ font-size:10px; font-weight:600; letter-spacing:.3px; padding:1px 8px; border-radius:4px; border:1px solid var(--line); color:var(--fg) }
[data-page="equipment"] .eq-wocard .body{ font-size:12px; color:var(--fg); line-height:1.55 }
[data-page="equipment"] .eq-wocard .body .diag{ color:var(--mut) }
[data-page="equipment"] .eq-wocard .dt{ font-size:11.5px; color:var(--unk); font-weight:600; margin-top:4px }
[data-page="equipment"] .eq-demo-mini{ font-size:9px; font-weight:600; letter-spacing:.3px; padding:0 6px; border-radius:4px; border:1px solid var(--unk); color:var(--unk); margin-left:5px; vertical-align:1px }
[data-page="equipment"] .eq-none{ color:var(--mut); font-size:13px; font-style:italic }
[data-page="equipment"] .eq-dxlink{ margin-left:10px; font-size:12px; color:var(--fg); cursor:pointer; text-decoration:underline; text-underline-offset:2px }
[data-page="equipment"] .dx-panel{ border-left:1px solid var(--line2) }
[data-page="equipment"] .dx-badge{ font-size:10px; font-weight:600; letter-spacing:.3px; padding:1px 9px; border-radius:4px; border:1px solid var(--unk); color:var(--unk); white-space:nowrap }
[data-page="equipment"] .dx-badge.live{ border-color:var(--good); color:var(--good) }
[data-page="equipment"] .dx-badge.demo{ border-color:var(--unk); color:var(--unk); background:var(--tint-warn) }
[data-page="equipment"] .dx-sub{ font-size:11.5px; color:var(--mut); margin:0 0 12px }
[data-page="equipment"] .dx-unavail{ font-size:13px; color:var(--unk); padding:12px 14px; border:1px dashed var(--line); border-radius:4px; background:var(--panel2); line-height:1.6 }
[data-page="equipment"] .dx-unavail code{ background:var(--track); padding:1px 5px; border-radius:4px; color:var(--mut) }
[data-page="equipment"] .dx-sec{ margin:0 0 15px }
[data-page="equipment"] .dx-sec > h4{ margin:0 0 7px; font-size:11px; letter-spacing:.7px; text-transform:uppercase; color:var(--mut) }
[data-page="equipment"] .dx-panel .mut{ color:var(--mut) }
[data-page="equipment"] .dx-panel .sm{ font-size:11px }
[data-page="equipment"] .dx-panel .num{ text-align:right; font-variant-numeric:tabular-nums }
[data-page="equipment"] .dx-code{ font-family:"Consolas","SFMono-Regular",monospace; font-size:12.5px; font-weight:600; color:var(--fg) }
[data-page="equipment"] .dx-nowchip{ display:inline-flex; align-items:center; gap:7px; font-weight:600; font-size:14px; padding:5px 13px; border-radius:4px; border:1px solid var(--line) }
[data-page="equipment"] .dx-nowchip .d{ width:10px; height:10px; border-radius:50% }
[data-page="equipment"] .dx-nowchip.down{ color:var(--fg) }
[data-page="equipment"] .dx-nowchip.down .d{ background:var(--bad) }
[data-page="equipment"] .dx-nowchip.up{ color:var(--fg) }
[data-page="equipment"] .dx-nowchip.up .d{ background:var(--good) }
[data-page="equipment"] .dx-nowchip small{ font-size:12px; font-weight:600 }
[data-page="equipment"] .dx-d6{ display:flex; align-items:center; gap:8px; padding:5px 0; font-size:13px }
[data-page="equipment"] .dx-cand{ padding:7px 12px; border:1px solid var(--line); border-radius:4px; background:var(--track); margin-bottom:6px }
[data-page="equipment"] .dx-cand .l1{ display:flex; align-items:center; gap:9px }
[data-page="equipment"] .dx-cand .l2{ font-size:12.5px; color:var(--fg); margin-top:3px }
[data-page="equipment"] .dx-cand .l3{ font-size:11px; margin-top:2px }
[data-page="equipment"] .dx-conf{ font-size:10px; font-weight:600; padding:1px 8px; border-radius:4px; border:1px solid var(--line) }
[data-page="equipment"] .dx-conf.high{ border-color:var(--bad); color:var(--bad) }
[data-page="equipment"] .dx-conf.medium{ border-color:var(--warn); color:var(--warn) }
[data-page="equipment"] .dx-conf.low{ border-color:var(--mut); color:var(--mut) }
[data-page="equipment"] .dx-none{ font-size:12.5px; color:var(--mut); font-style:italic; padding:4px 0 }
[data-page="equipment"] .dx-dominant{ font-size:12.5px; margin-bottom:8px }
[data-page="equipment"] .dx-dominant .dx-code{ color:var(--fg) }
 
[data-page="equipment"] .dx-dominant .dx-code::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--good) }
 
[data-page="equipment"] .dx-tblwrap{ overflow-x:auto; border:1px solid var(--line); border-radius:4px}
[data-page="equipment"] table.dx-eqf{ width:100%; border-collapse:collapse; font-size:12.5px }
[data-page="equipment"] table.dx-eqf th{ background:var(--panel2); color:var(--mut); font-size:10px; text-transform:uppercase; letter-spacing:.3px; padding:6px 9px; white-space:nowrap; text-align:center }
[data-page="equipment"] table.dx-eqf td{ padding:6px 9px; border-top:1px solid var(--line); vertical-align:top }
[data-page="equipment"] .dx-state{ font-size:10.5px; font-weight:600; padding:1px 8px; border-radius:4px; white-space:nowrap }
[data-page="equipment"] .dx-state.act{ background:var(--tint-bad); color:var(--bad); border:1px solid var(--bad) }
[data-page="equipment"] .dx-state.noise{ background:var(--track); color:var(--mut); border:1px solid var(--line) }
[data-page="equipment"] .dx-state.uv{ background:transparent; color:var(--unk); border:1px dashed var(--unk) }
[data-page="equipment"] table.dx-eqf tr.cal-nuisance{ opacity:.72 }
[data-page="equipment"] .dx-tag{ font-size:9.5px; font-weight:600; padding:1px 7px; border-radius:4px; margin-left:5px; border:1px solid var(--good); color:var(--fg) }
 
[data-page="equipment"] .dx-tag.conflict{ border-color:var(--warn); color:var(--fg); cursor:help }
 
[data-page="equipment"] .dx-rohint{ font-size:10.5px; margin-left:7px; padding:1px 7px; border-radius:4px; border:1px dashed var(--line) }
[data-page="equipment"] .dx-cov{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px }
[data-page="equipment"] .dx-covchip{ font-size:11px; padding:2px 9px; border-radius:4px; border:1px solid var(--line) }
[data-page="equipment"] .dx-covchip.ok{ border-color:var(--good); color:var(--good) }
[data-page="equipment"] .dx-covchip.miss{ border-color:var(--bad); color:var(--bad) }
[data-page="equipment"] .dx-covchip.skip{ border-color:var(--warn); color:var(--warn) }
[data-page="equipment"] .dx-warn{ font-size:12px; color:var(--fg); background:var(--tint-warn-2); border:1px solid var(--unk); border-radius:4px; padding:8px 12px; line-height:1.55 }
[data-page="equipment"] .dx-foot{ color:var(--mut); font-size:11px; margin-top:14px; padding-top:10px; border-top:1px solid var(--line); line-height:1.6 }
[data-page="equipment"] .dx-foot a{ color:var(--fg); font-weight:600; text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="equipment"] .eq-foot{ color:var(--mut); font-size:11.5px; margin:20px 2px 0; line-height:1.65 }
[data-page="equipment"] .eq-foot a{ color:var(--fg); font-weight:600; text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="equipment"] .eq-foot code{ background:var(--panel2); padding:1px 5px; border-radius:4px }
[data-page="equipment"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:26px 2px }
[data-page="equipment"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:sp .8s linear infinite }
@keyframes sp{to{ transform:rotate(360deg) }}
[data-page="equipment"] .eq-unavail{ font-size:15px; font-weight:600; color:var(--fg); margin:18px 2px 6px }
 
[data-page="equipment"] .eq-unavail::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
 
[data-page="equipment"] .eq-unavail-hint{ color:var(--mut); font-size:12px; margin:0 2px }
 
:root[data-page="station"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --ptag:#536f99; --ptag-ink:#ffffff; }
@media (prefers-color-scheme: dark){
  :root[data-page="station"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; }
}
:root[data-page="station"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; }
[data-page="station"] *{ box-sizing:border-box }
[data-page="station"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="station"] a{ color:inherit }
[data-page="station"] header{ display:flex; align-items:baseline; gap:14px; padding:14px 22px; border-bottom:1px solid var(--line); background:var(--panel) }
[data-page="station"] header h1{ font-size:17px; margin:0; letter-spacing:.5px }
[data-page="station"] header .sub{ color:var(--mut); font-size:12px }
[data-page="station"] header .right{ margin-left:auto; display:flex; align-items:center; gap:12px }
[data-page="station"] .toggle{ font-size:12px; padding:3px 11px; border-radius:3px; border:1px solid var(--line); color:var(--fg); text-decoration:none; background:var(--panel2) }
[data-page="station"] .toggle:hover{ border-color:var(--hover) }
[data-page="station"] .badge{ font-size:11px; padding:2px 8px; border-radius:4px; border:1px solid var(--line); color:var(--mut) }
[data-page="station"] .badge.live{ color:var(--good); border-color:var(--good) }
[data-page="station"] .badge.demo{ color:var(--unk); border-color:var(--unk) }
[data-page="station"] .badge.snapshot{ color:var(--src-snapshot); border-color:var(--src-snapshot) }
[data-page="station"] main{ max-width:1080px; margin:0 auto; padding:20px 22px 40px }
[data-page="station"] .crumb{ font-size:12.5px; color:var(--mut); margin-bottom:6px }
[data-page="station"] .crumb a{ color:var(--good); text-decoration:none; font-weight:600 }
[data-page="station"] .sx-title{ font-size:22px; font-weight:600; letter-spacing:.3px; margin:2px 0 2px }
[data-page="station"] .sx-csub{ color:var(--mut); font-size:12px; font-family:ui-monospace,monospace }
[data-page="station"] .ctl{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:2px 0 14px; padding:8px 13px; background:var(--panel); border:1px solid var(--line); border-radius:4px; font-size:12.5px; color:var(--mut) }
[data-page="station"] .ctl input[type=date]{ font:inherit; color:var(--fg); background:var(--panel2); border:1px solid var(--line); border-radius:4px; padding:3px 7px }
[data-page="station"] .ctl select{ font:inherit; color:var(--fg); background:var(--panel2); border:1px solid var(--line); border-radius:4px; padding:3px 7px; max-width:250px }
[data-page="station"] .ctl .vsep{ width:1px; height:18px; background:var(--line); margin:0 3px }
[data-page="station"] .ctl button{ font:inherit; cursor:pointer; padding:3px 13px; border-radius:4px; border:1px solid var(--line); background:var(--panel2); color:var(--fg) }
[data-page="station"] .ctl button:hover{ border-color:var(--hover) }
[data-page="station"] .ctl .reset{ color:var(--mut); text-decoration:none; padding:3px 8px }
[data-page="station"] .ctl .reset:hover{ color:var(--fg) }
[data-page="station"] .tag-toggle{ display:inline-flex; gap:3px; padding:2px; border:1px solid var(--line); border-radius:4px }
[data-page="station"] .tag-toggle a{ font-size:10.5px; font-weight:600; line-height:1; letter-spacing:.5px; text-decoration:none; padding:4px 6px; border:1px solid transparent; border-radius:4px; color:var(--mut) }
[data-page="station"] .tag-toggle a.on{ color:var(--ptag-ink); background:var(--ptag); border-color:var(--ptag) }
[data-page="station"] .axes{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:16px 0 6px }
@media (max-width:720px){
  [data-page="station"] .axes{ grid-template-columns:repeat(2,1fr) }
}
[data-page="station"] .ax{ border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:13px 15px }
[data-page="station"] .ax .k{ font-size:12px; color:var(--mut) }
[data-page="station"] .ax .own{ font-size:10px; color:var(--mut) }
[data-page="station"] .axlink{ color:inherit; text-decoration:none }
[data-page="station"] .axlink:hover{ text-decoration:underline }
[data-page="station"] .ax .v{ font-size:34px; font-weight:600; line-height:1.05; font-variant-numeric:tabular-nums }
[data-page="station"] .ax.oee{ background:var(--panel2) }
[data-page="station"] .ontgt{ display:flex; gap:16px; flex-wrap:wrap; align-items:baseline; margin:10px 2px 2px; font-size:13px; font-variant-numeric:tabular-nums }
[data-page="station"] .ontgt b{ font-size:15px }
[data-page="station"] .neg{ color:var(--fg); font-weight:600 }
[data-page="station"] .pos{ color:var(--fg); font-weight:600 }
[data-page="station"] .tag{ font-size:10px; font-weight:600; letter-spacing:.5px; padding:1px 7px; border-radius:4px; border:1px solid var(--unk); color:var(--unk) }
[data-page="station"] .tag.raw{ color:var(--on-color); background:var(--unk) }
[data-page="station"] h2.sec{ font-size:13px; color:var(--mut); font-weight:600; margin:24px 2px 8px; text-transform:uppercase; letter-spacing:.6px }
[data-page="station"] .compbar{ display:flex; height:26px; border-radius:4px; overflow:hidden; border:1px solid var(--line); margin:8px 0 2px }
[data-page="station"] .compbar i{ display:block; height:100% }
[data-page="station"] .complegend{ display:flex; gap:11px; flex-wrap:wrap; margin-top:8px; font-size:11px; color:var(--mut) }
[data-page="station"] .dot{ display:inline-block; width:9px; height:9px; border-radius:2px; vertical-align:middle; margin-right:4px }
[data-page="station"] .wf{ border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:10px 13px; margin:6px 0 2px }
[data-page="station"] .wf-r{ display:grid; grid-template-columns:minmax(96px,auto) minmax(92px,auto) 1fr; gap:10px; align-items:center; padding:3px 0 }
[data-page="station"] .wf-r .wf-k{ font-size:12.5px; color:var(--mut) }
[data-page="station"] .wf-r .wf-v{ font-size:13px; font-weight:600; text-align:right; font-variant-numeric:tabular-nums }
[data-page="station"] .wf-r.good .wf-k, [data-page="station"] .wf-r.good .wf-v{ color:var(--fg) }
[data-page="station"] .wf-r.good .wf-v{ font-size:15px }
[data-page="station"] .wf-r.dorm{ border-bottom:1px dashed var(--line); padding-bottom:6px; margin-bottom:3px }
[data-page="station"] .wf-r.dorm .wf-k, [data-page="station"] .wf-r.dorm .wf-v, [data-page="station"] .wf-r.dorm .wf-b{ color:var(--mut) }
[data-page="station"] .wf-r.dorm .wf-b{ height:auto; background:none; font-size:11.5px }
[data-page="station"] .wf-b{ height:14px; border-radius:4px; background:var(--track); overflow:hidden }
[data-page="station"] .wf-b i{ display:block; height:100%; position:relative }
[data-page="station"] .wf-rw{ position:absolute; right:0; top:0; height:100%; display:block; background-image:repeating-linear-gradient(45deg, var(--rw-stripe-ink) 0 3px, var(--rw-stripe-gap) 3px 6px) }
[data-page="station"] .wf-r:hover{ background:var(--panel2); border-radius:4px }
[data-page="station"] .axes .ax:hover{ border-color:var(--hover) }
[data-page="station"] .wf-note{ color:var(--mut); font-size:11.5px; margin:4px 0 0 }
[data-page="station"] .help{ cursor:help; color:var(--mut); font-size:11px; margin-left:4px }
[data-page="station"] .cp-rate{ display:inline-flex; flex-direction:column; gap:1px; margin:8px 0 0; padding:9px 13px; border:1px solid var(--line); border-radius:4px; background:var(--panel2); max-width:100% }
[data-page="station"] .cp-rate .cp-k{ font-size:11.5px; color:var(--mut) }
[data-page="station"] .cp-rate .cp-v{ font-size:26px; font-weight:600; line-height:1.1; font-variant-numeric:tabular-nums }
[data-page="station"] .cp-rate .cp-v .cp-u{ font-size:13px; font-weight:600; color:var(--mut) }
[data-page="station"] .cp-rate .cp-d{ font-size:11.5px; color:var(--mut) }
[data-page="station"] .tag-note.aonly a{ color:var(--fg); text-decoration:none; border-bottom:1px dotted var(--line); margin-left:6px }
[data-page="station"] .tag-note.aonly a:hover{ border-bottom-color:var(--fg) }
[data-page="station"] .cause{ padding:11px 13px; background:var(--panel2); border:1px solid var(--line); border-radius:4px; font-size:12.5px; margin:6px 0 }
[data-page="station"] .cause .lead{ color:var(--mut); margin-bottom:7px }
[data-page="station"] .cbar{ display:flex; height:22px; border-radius:4px; overflow:hidden; border:1px solid var(--line) }
[data-page="station"] .cbar i{ display:flex; align-items:center; justify-content:center; color:var(--on-color); font-size:10.5px; font-weight:600 }
[data-page="station"] .cleg{ display:flex; gap:14px; flex-wrap:wrap; margin-top:7px; color:var(--mut) }
[data-page="station"] .cleg b{ color:var(--fg) }
[data-page="station"] table.sc{ width:100%; border-collapse:collapse; font-size:12.5px; background:var(--panel); border:1px solid var(--line); border-radius:4px; overflow:hidden }
[data-page="station"] table.sc th, [data-page="station"] table.sc td{ padding:8px 11px; border-bottom:1px solid var(--line); text-align:left }
[data-page="station"] table.sc th{ color:var(--mut); font-weight:600; font-size:11px; text-transform:uppercase; letter-spacing:.4px; background:var(--panel2) }
[data-page="station"] table.sc tr:last-child td{ border-bottom:none }
[data-page="station"] table.sc td.num, [data-page="station"] table.sc th.num{ text-align:right; font-variant-numeric:tabular-nums }
[data-page="station"] table.sc td.ubar{ width:34%; min-width:130px }
[data-page="station"] table.sc td.ubar .ub{ display:flex; height:12px; border-radius:3px; overflow:hidden; border:1px solid var(--line) }
[data-page="station"] table.sc td.ubar .ub i{ display:block; height:100% }
@media (max-width:720px){
  [data-page="station"] table.sc td.ubar{ width:auto; min-width:80px }
}
[data-page="station"] table.sc td.eid{ font-weight:600 }
[data-page="station"] table.sc td.eid small{ color:var(--mut); font-weight:400; margin-left:6px }
[data-page="station"] .ptag{ font-size:10.5px; font-weight:600; line-height:1; letter-spacing:.5px; padding:3px 6px; border:1px solid transparent; border-radius:4px }
[data-page="station"] .ptag.observed{ color:var(--ptag-ink); background:var(--ptag); border-color:var(--ptag) }
[data-page="station"] .ptag.default{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="station"] .ptag.idle{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="station"] .ptags{ display:inline-flex; gap:3px; vertical-align:middle; margin-left:5px }
[data-page="station"] .tag-note{ color:var(--mut); font-size:11.5px; margin:5px 2px 9px }
[data-page="station"] .pend{ color:var(--mut); font-size:11.5px; margin:9px 2px 0 }
[data-page="station"] .footnote{ color:var(--mut); font-size:11.5px; margin:22px 2px 0; line-height:1.6 }
[data-page="station"] .unavail{ font-size:15px; font-weight:600; color:var(--fg); margin:20px 2px }
 
[data-page="station"] .unavail::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
 
[data-page="station"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:16px 2px }
[data-page="station"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:sp .8s linear infinite }
@keyframes sp{to{ transform:rotate(360deg) }}
[data-page="station"] .sec-unavail{ color:var(--fg); font-size:13px; font-weight:600; padding:14px 2px }
 
[data-page="station"] .sec-unavail::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
 
 
:root[data-page="station-index"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; }
@media (prefers-color-scheme: dark){
  :root[data-page="station-index"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; }
}
:root[data-page="station-index"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; }
[data-page="station-index"] *{ box-sizing:border-box }
[data-page="station-index"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="station-index"] a{ color:inherit }
[data-page="station-index"] main{ max-width:1080px; margin:0 auto; padding:20px 22px 40px }
[data-page="station-index"] .sx-title{ font-size:22px; font-weight:600; letter-spacing:.3px; margin:2px 0 2px }
[data-page="station-index"] .sx-spans{ margin:0 0 14px }
[data-page="station-index"] .sx-span{ color:var(--mut); font-size:12.5px; margin:0 }
[data-page="station-index"] .sx-guide{ color:var(--mut); font-size:12.5px; margin:0 }
[data-page="station-index"] .sxt{ width:100%; border-collapse:collapse; font-size:13px; background:var(--panel); border:1px solid var(--line); border-radius:4px; overflow:hidden }
[data-page="station-index"] .sxt thead th{ color:var(--mut); font-weight:600; text-align:left; white-space:nowrap; padding:8px 12px; border-bottom:1px solid var(--line); background:var(--panel2) }
[data-page="station-index"] .sxt th.n, [data-page="station-index"] .sxt td.n{ text-align:right; font-variant-numeric:tabular-nums }
[data-page="station-index"] .sxt td{ padding:6px 12px; border-bottom:1px dashed var(--line); white-space:nowrap }
[data-page="station-index"] .sxt tbody tr:last-child td{ border-bottom:none }
[data-page="station-index"] .sxt tbody tr:hover td{ background:var(--panel2) }
[data-page="station-index"] .sxt td.nm a{ text-decoration:none }
[data-page="station-index"] .sxt td.nm a:hover{ text-decoration:underline }
[data-page="station-index"] .sxt td.n .famlbl{ font-style:normal; font-weight:600; font-size:10px; letter-spacing:.4px; color:var(--mut) }
[data-page="station-index"] .why{ color:var(--mut); opacity:.9; font-style:italic; padding:14px 2px; font-size:13px }
 

 
[data-page="station"]{ --cap-q:#d97706 }    






[data-page="daily"] main, [data-page="equipment"] main, [data-page="station"] main, [data-page="station-index"] main{ max-width:1560px }
[data-page="daily"] h1, [data-page="equipment"] h1{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0 }
[data-page="station"] .sx-title, [data-page="station-index"] .sx-title{ font-weight:600; letter-spacing:0 }
[data-page="daily"] .dy-sec-h h2, [data-page="daily"] .dy-hero-k, [data-page="daily"] .dy-oee .lbl,
[data-page="daily"] .dy-row.hd span, [data-page="daily"] .dy-diag .lbl, [data-page="daily"] .dy-lrow.hd span,
[data-page="daily"] .dy-prow.hd span, [data-page="daily"] .dy-loss .k, [data-page="daily"] .dy-mrow.hd span,
[data-page="daily"] .dy-mrow.grp, [data-page="equipment"] .eq-howpanel h4, [data-page="equipment"] .eq-hlcard .k,
[data-page="equipment"] table.eq-grid tr.eq-arearow .in, [data-page="equipment"] table.eq-grid thead th,
[data-page="equipment"] .eq-legend .lg-t, [data-page="equipment"] .eq-band-lbl, [data-page="equipment"] .dx-sec > h4,
[data-page="equipment"] table.dx-eqf th, [data-page="station"] h2.sec, [data-page="station"] table.sc th{
  text-transform:none; letter-spacing:0 }
[data-page="daily"] .dy-sec-h h2, [data-page="station"] h2.sec{ font-size:var(--fs-title); font-weight:600; color:var(--fg) }
 
[data-page="daily"] .dy-hero, [data-page="daily"] .dy-loss, [data-page="daily"] .dy-oee, [data-page="daily"] .dy-list,
[data-page="daily"] .dy-diag, [data-page="daily"] .dy-led, [data-page="daily"] .dy-par,
[data-page="equipment"] .eq-tblwrap, [data-page="equipment"] .eq-strip, [data-page="equipment"] .eq-drill,
[data-page="equipment"] .eq-srcbanner, [data-page="equipment"] .eq-hlcard, [data-page="equipment"] .eq-wocard,
[data-page="equipment"] .dx-unavail, [data-page="station"] .ax, [data-page="station"] .wf, [data-page="station"] .cp-rate,
[data-page="station"] .ctl, [data-page="station"] table.sc, [data-page="station-index"] .sxt{ border-radius:4px }
 
[data-page="daily"] .dy-srcbanner, [data-page="daily"] .dy-pill, [data-page="daily"] .tag, [data-page="daily"] .dy-oee .scope,
[data-page="daily"] .dy-chip, [data-page="equipment"] .eq-stag, [data-page="equipment"] .eq-strip-caveat,
[data-page="equipment"] .eq-strip-conf, [data-page="equipment"] .eq-strip-ok, [data-page="equipment"] .eq-dupbadge,
[data-page="equipment"] .eq-bdchip, [data-page="equipment"] .eq-seg, [data-page="equipment"] .eq-wochip,
[data-page="equipment"] .eq-demo-mini, [data-page="equipment"] .dx-badge, [data-page="equipment"] .dx-nowchip,
[data-page="equipment"] .dx-cand, [data-page="equipment"] .dx-conf, [data-page="equipment"] .dx-state,
[data-page="equipment"] .dx-tag, [data-page="equipment"] .dx-rohint, [data-page="equipment"] .dx-covchip,
[data-page="equipment"] .dx-warn, [data-page="equipment"] .eq-howpanel .def, [data-page="equipment"] .eq-gapbox,
[data-page="equipment"] .ptag, [data-page="station"] .tag, [data-page="station"] .cause, [data-page="station"] .ptag,
[data-page="station"] .badge{ border-radius:2px }
 
[data-page="equipment"] .eq-wins, [data-page="equipment"] .eq-chip, [data-page="equipment"] .tag-toggle,
[data-page="equipment"] .tag-toggle a, [data-page="equipment"] .eq-howbtn, [data-page="equipment"] .eq-strip-down,
[data-page="equipment"] .eq-drill-h .close, [data-page="station"] .tag-toggle, [data-page="station"] .tag-toggle a,
[data-page="station"] .ctl input[type=date], [data-page="station"] .ctl select, [data-page="station"] .ctl button,
[data-page="daily"] .dy-mblk, [data-page="equipment"] .eq-cell{ border-radius:3px }
[data-page="equipment"] .eq-btn{ border:1px solid var(--line); background:transparent; color:inherit; font:inherit;
  cursor:pointer; display:inline-flex; align-items:center; gap:6px; text-decoration:none }
[data-page="equipment"] .eq-btn:hover{ border-color:var(--line2); background:var(--panel2) }
[data-page="station"] .sx-range{ display:flex; align-items:center; gap:8px; flex-wrap:wrap }
 
[data-page="equipment"] .eq-howpanel{ box-shadow:none; border:1px solid var(--line2); border-radius:4px }
[data-page="equipment"] .eq-drillslot .eq-drill{ box-shadow:none }
[data-page="equipment"] table.eq-grid th.eq-now-h, [data-page="equipment"] table.eq-grid td.eq-now{ box-shadow:none; border-left:1px solid var(--line2) }
 
[data-page="equipment"] .eq-drillslot.htmx-request::before{ content:""; display:block; width:14px; height:14px; margin:8px;
  border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:wrsp .8s linear infinite }
@media (prefers-reduced-motion: reduce){ [data-page="equipment"] .eq-drillslot.htmx-request::before{ animation:none } }

 
[data-page="station"] .sx-ulegend{ display:flex; flex-wrap:wrap; gap:4px 16px; margin:4px 0 8px; font-size:var(--fs-note); color:var(--mut) }
[data-page="station"] .sx-ulegend .lgi-s{ display:inline-flex; align-items:center; gap:6px }
[data-page="station"] .sx-ulegend i{ display:inline-block; width:10px; height:10px }

 
[data-ui="2"][data-page="daily"] .dy-hero, [data-ui="2"][data-page="daily"] .dy-loss, [data-ui="2"][data-page="daily"] .dy-oee,
[data-ui="2"][data-page="daily"] .dy-diag, [data-ui="2"][data-page="daily"] .dy-led, [data-ui="2"][data-page="daily"] .dy-par,
[data-ui="2"][data-page="equipment"] .eq-strip, [data-ui="2"][data-page="station"] .ax, [data-ui="2"][data-page="station"] .wf,
[data-ui="2"][data-page="station"] .cp-rate, [data-ui="2"][data-page="station"] .ctl{
  background:transparent; border:0; border-top:1px solid var(--line2); border-radius:0; box-shadow:none }
[data-ui="2"][data-page="daily"] .dy-list, [data-ui="2"][data-page="equipment"] .eq-tblwrap,
[data-ui="2"][data-page="station"] table.sc, [data-ui="2"][data-page="station-index"] .sxt{ border-radius:0; box-shadow:none }
 
[data-ui="2"][data-page="daily"] .dy-mblk.ok, [data-ui="2"][data-page="daily"] .dy-mblk.none,
[data-ui="2"][data-page="daily"] .dy-mblk.nosig{ border-color:transparent; background:transparent; opacity:1 }
[data-ui="2"][data-page="daily"] .dy-mblk.ok .sy, [data-ui="2"][data-page="daily"] .dy-mblk.none .sy,
[data-ui="2"][data-page="daily"] .dy-mblk.nosig .sy, [data-ui="2"][data-page="daily"] .dy-mblk.ok .nm,
[data-ui="2"][data-page="daily"] .dy-mblk.none .nm, [data-ui="2"][data-page="daily"] .dy-mblk.nosig .nm{ color:var(--mut) }
[data-ui="2"][data-page="daily"] .dy-mblk.ok:hover, [data-ui="2"][data-page="daily"] .dy-mblk.none:hover,
[data-ui="2"][data-page="daily"] .dy-mblk.nosig:hover{ border-color:var(--line2) }
 
[data-ui="2"][data-page="daily"] .dy-winnote, [data-ui="2"][data-page="daily"] .dy-sec-h .meta,
[data-ui="2"][data-page="daily"] .dy-leg-top, [data-ui="2"][data-page="daily"] .dy-foot{ font-size:var(--fs-xs); color:var(--mut) }


[data-ui="2"][data-page="equipment"] .eq-strip{ display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; padding:10px 0 }
[data-ui="2"][data-page="equipment"] .eq-strip-r{ display:flex; flex-direction:column; align-items:flex-start; gap:4px; white-space:normal }
[data-ui="2"][data-page="equipment"] .eq-strip-down.hot{ color:var(--fg) }
[data-ui="2"][data-page="equipment"] .eq-strip-stale, [data-ui="2"][data-page="equipment"] .eq-strip-dorm{ color:var(--fg); font-weight:400 }
 
[data-ui="2"][data-page="station"] .axes{ gap:0; border-top:1px solid var(--line2); border-bottom:1px solid var(--line2) }
[data-ui="2"][data-page="station"] .ax{ border-top:0; border-left:1px solid var(--line); padding:10px 16px }
[data-ui="2"][data-page="station"] .ax:first-child{ border-left:0; padding-left:0 }
[data-ui="2"][data-page="station"] .ax.oee{ background:transparent }
[data-ui="2"][data-page="station"] .ax .v{ font-size:calc(34px * var(--kn)) }
 
[data-ui="2"][data-page="station"] .pend, [data-ui="2"][data-page="station"] .footnote{ font-size:var(--fs-xs); color:var(--mut) }
 
[data-page="station"] .crumb a{ color:var(--fg); text-decoration:underline; text-decoration-color:var(--line2) }




[data-density="projector"][data-page="daily"], [data-density="projector"][data-page="equipment"],
[data-density="projector"][data-page="station"], [data-density="projector"][data-page="station-index"]{ --k:1; --kr:1; --kn:1 }
[data-density="projector"][data-page="daily"] .board-main, [data-density="projector"][data-page="equipment"] .board-main,
[data-density="projector"][data-page="station"] .board-main, [data-density="projector"][data-page="station-index"] .board-main{ zoom:1.25 }
 
[data-page="equipment"] .dx-panel{ border-left:1px solid var(--line2) }

 


.ld-gidx{ display:none }
[data-ui="2"] .ld-gidx{ display:flex; flex-wrap:wrap; gap:2px 12px; position:sticky; top:0; z-index:2;
  margin:0 0 8px; padding:4px 0 6px; background:var(--bg); border-bottom:1px solid var(--line2);
  font-size:var(--fs-xs); color:var(--mut) }
[data-ui="2"] .ld-gidx a{ color:var(--mut); text-decoration:none; white-space:nowrap }
[data-ui="2"] .ld-gidx a:hover{ color:var(--fg); text-decoration:underline }
[data-ui="2"] .ld-gidx b{ color:var(--fg); font-weight:600 }
[data-page="landing"][data-ui="2"] .side{ scroll-padding-top:3.2em }






.pnt2:has(td.dspk){ display:block }
.pnt2:has(td.dspk) > thead, .pnt2:has(td.dspk) > tbody{ display:block }
.pnt2:has(td.dspk) > thead{ position:sticky; top:0; z-index:1; background:var(--panel) }
[data-ui="2"] .pnt2:has(td.dspk) > thead{ background:var(--bg) }
.pnt2:has(td.dspk) > thead th{ position:static }
.pnt2:has(td.dspk) tr{ display:grid; grid-template-columns:minmax(0,1fr) auto auto; column-gap:8px; align-items:baseline }
.pnt2:has(td.dspk) tbody tr{ border-bottom:1px solid var(--line) }
.pnt2:has(td.dspk) tbody tr:last-child{ border-bottom:0 }
.pnt2:has(td.dspk) td, .pnt2:has(td.dspk) th{ border-bottom:0; padding-left:6px; padding-right:6px }
.pnt2:has(td.dspk) thead tr{ border-bottom:1px solid var(--line) }
.pnt2:has(td.dspk) th:nth-child(1), .pnt2 td.dspk{ grid-column:1; grid-row:1 }
.pnt2:has(td.dspk) th:nth-child(2), .pnt2 td.dsplamp{ grid-column:2; grid-row:1 }
.pnt2:has(td.dspk) th:nth-child(4), .pnt2 td.dspdry{ grid-column:3; grid-row:1; text-align:right }
.pnt2:has(td.dspk) th:nth-child(3){ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap }
.pnt2 td.dspk{ width:auto; max-width:none }
.pnt2 td.dsplamp, .pnt2 td.dspdry{ white-space:nowrap }
.pnt2 td.dsplamp .board-lamp{ display:inline; min-width:0 }
.pnt2 td.dsplamp .board-lsw{ margin-right:5px; vertical-align:-1px }
.pnt2 td.dspwhy{ grid-column:1 / -1; grid-row:2; width:auto; max-width:none; padding-top:0;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.pnt2:has(td.dspk) tbody tr:hover{ background:var(--panel2) }

 
[data-page="daily"] .dy-hero-fig{ white-space:nowrap }
[data-density="projector"][data-page="daily"] .dy-hero{ grid-template-columns:auto minmax(18ch,1fr) minmax(0,1fr); gap:18px }
[data-density="projector"][data-page="daily"] .dy-hero-side{ min-width:0 }

 
[data-ui="2"][data-page="equipment"] .eq-strip-r .sep{ display:none }
 
[data-ui="2"][data-page="equipment"] .eq-strip-down.hot{ border-color:var(--line) }



[data-page="station"] .ax{ position:relative }
[data-page="station"] .ax .v{ color:var(--fg) }
[data-page="station"] .ax .k{ padding-left:15px }
[data-page="station"] .ax .v::before{ content:""; position:absolute; left:15px; top:17px; width:9px; height:9px;
  background:var(--ax-c, var(--mut)) }
[data-ui="2"][data-page="station"] .ax:first-child .v::before{ left:0 }
[data-ui="2"][data-page="station"] .ax .v::before{ left:16px; top:14px }
[data-ui="2"][data-page="station"] .ax:first-child .v::before{ left:0 }
 
[data-page="station-index"] .sxt td.nm a{ text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
 
[data-page="equipment"] td.eq-rowsum.hot::before{ content:""; display:inline-block; width:8px; height:8px;
  margin-right:5px; vertical-align:1px; background:var(--bad) }

 





 
:root[data-page="monthly"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --acc-n:#2563eb; --gapfg:#9aa7bb; --l-down:#dc2626; --l-yield:#b07d12; --l-rework:#2563eb; }
@media (prefers-color-scheme: dark){
  :root[data-page="monthly"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --acc-n:#5b8def; --gapfg:#55657e; --l-down:#e0726f; --l-yield:#cbb26b; --l-rework:#5b8def; }
}
:root[data-page="monthly"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --acc-n:#5b8def; --gapfg:#55657e; --l-down:#e0726f; --l-yield:#cbb26b; --l-rework:#5b8def; }
[data-page="monthly"] *{ box-sizing:border-box }
[data-page="monthly"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="monthly"] main{ max-width:1360px; margin:0 auto; padding:18px 22px 40px }
[data-page="monthly"] h1{ font-size:19px; margin:6px 0 2px }
[data-page="monthly"] h2{ font-size:15px; margin:22px 0 6px }
[data-page="monthly"] h3{ font-size:13px; margin:12px 0 4px; font-weight:600 }
[data-page="monthly"] .sub{ color:var(--mut); font-size:12.5px; max-width:1000px }
[data-page="monthly"] .demotag{ font-size:10px; font-weight:600; letter-spacing:1px; color:var(--warn); border:1px solid var(--warn); border-radius:4px; padding:1px 7px; margin-left:8px }
[data-page="monthly"] .parttag{ font-size:10px; font-weight:600; letter-spacing:1px; color:var(--acc-n); border:1px solid var(--acc-n); border-radius:4px; padding:1px 7px; margin-left:8px }
[data-page="monthly"] .head{ display:flex; flex-wrap:wrap; gap:8px 16px; align-items:center; margin:10px 0 2px; font-size:12.5px; color:var(--mut) }
[data-page="monthly"] .seg{ display:inline-flex; border:1px solid var(--line); border-radius:4px; overflow:hidden; flex-wrap:wrap }
[data-page="monthly"] .seg a{ padding:4px 12px; font-size:12.5px; text-decoration:none; color:var(--mut); background:var(--panel); border-right:1px solid var(--line); white-space:nowrap }
[data-page="monthly"] .seg a:last-child{ border-right:0 }
[data-page="monthly"] .seg a:hover{ background:var(--panel2); color:var(--fg) }
[data-page="monthly"] .tabs{ display:flex; gap:0; margin:12px 0 0; border-bottom:1px solid var(--line) }
[data-page="monthly"] .tabs a{ padding:7px 16px; text-decoration:none; color:var(--mut); font-size:13px; border:1px solid transparent; border-bottom:0; border-radius:4px 0 0; margin-bottom:-1px }
[data-page="monthly"] .tabs a:hover{ color:var(--fg); background:var(--panel2) }
[data-page="monthly"] .card{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:12px 16px; margin:14px 0 }
[data-page="monthly"] .note{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:8px 14px; margin:10px 0; font-size:12.5px; color:var(--mut) }
[data-page="monthly"] .deg{ background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--warn); border-radius:4px; padding:14px 16px; margin:12px 0; font-size:13px }
[data-page="monthly"] .lead{ font-size:15px; max-width:1080px; margin:12px 0 2px }
[data-page="monthly"] .mut{ color:var(--mut) }
[data-page="monthly"] .nowrap{ white-space:nowrap }
[data-page="monthly"] .bricks{ display:flex; flex-wrap:wrap; gap:10px; margin:10px 0 4px }
[data-page="monthly"] .brick{ flex:1; min-width:210px; background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--mut); border-radius:4px; padding:10px 14px }
[data-page="monthly"] .brick.down{ border-left-color:var(--l-down) }
[data-page="monthly"] .brick.yield{ border-left-color:var(--l-yield) }
[data-page="monthly"] .brick.rework{ border-left-color:var(--l-rework) }
[data-page="monthly"] .brick .k{ color:var(--mut); font-size:12px }
[data-page="monthly"] .brick .v{ font-size:26px; font-weight:600; font-variant-numeric:tabular-nums; line-height:1.2 }
[data-page="monthly"] .brick .v small{ font-size:13px; font-weight:600; color:var(--mut); margin-left:3px }
[data-page="monthly"] .brick .s{ color:var(--mut); font-size:11.5px }
[data-page="monthly"] .tw{ overflow-x:auto; margin:8px 0 2px }
[data-page="monthly"] table{ border-collapse:collapse; font-size:12.5px; width:100% }
[data-page="monthly"] th, [data-page="monthly"] td{ border-bottom:1px solid var(--line); padding:4px 9px; text-align:right; white-space:nowrap }
[data-page="monthly"] thead th{ background:var(--panel2); font-weight:600; position:sticky; top:0 }
[data-page="monthly"] td.cls, [data-page="monthly"] th.cls{ text-align:left }
[data-page="monthly"] td.cls small{ color:var(--mut); margin-left:5px }
[data-page="monthly"] td.num, [data-page="monthly"] th.num{ font-variant-numeric:tabular-nums }
[data-page="monthly"] tbody tr.pick{ cursor:pointer }
[data-page="monthly"] tbody tr.pick:hover td{ background:var(--panel2) }
[data-page="monthly"] .tw.stk{ overflow:auto; max-height:calc(100vh - 260px) }
[data-page="monthly"] .tw.stk thead th{ z-index:3 }
[data-page="monthly"] .tw.stk th.cls, [data-page="monthly"] .tw.stk td.cls{ position:sticky; left:0; z-index:2; background:var(--panel); box-shadow:1px 0 0 var(--line) }
[data-page="monthly"] .tw.stk thead th.cls{ z-index:4; background:var(--panel2) }
[data-page="monthly"] a.stn{ color:var(--acc-n); text-decoration:none; font-size:11px; margin-left:6px }
[data-page="monthly"] a.stn:hover{ text-decoration:underline }
[data-page="monthly"] a.pbtn{ color:var(--mut); text-decoration:none; border:1px solid var(--line); border-radius:4px; padding:3px 10px; font-size:12.5px; background:var(--panel) }
[data-page="monthly"] a.pbtn:hover{ color:var(--fg); background:var(--panel2) }
[data-page="monthly"] .st{ display:flex; height:9px; width:150px; background:var(--track); border-radius:3px; overflow:hidden }
[data-page="monthly"] .st i{ display:block; height:9px }
[data-page="monthly"] .st.nul{ background:repeating-linear-gradient(45deg, transparent 0 3px, var(--gapfg) 3px 4px) }
[data-page="monthly"] .cov{ font-size:10.5px; padding:0 5px; border-radius:4px; border:1px dotted var(--gapfg); color:var(--mut); margin-left:5px; white-space:nowrap; font-weight:600 }
[data-page="monthly"] .cov.zero{ border-color:var(--warn); color:var(--warn) }
 
[data-page="monthly"] .ptline{ color:var(--fg) }
[data-page="monthly"] .ptchip{ display:inline-block; max-width:100%; vertical-align:bottom; font-size:10.5px; padding:0 6px; border-radius:2px; border:1px solid var(--unk); color:var(--unk); margin-left:6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:help }
[data-page="monthly"] .strip{ display:flex; align-items:flex-end; gap:2px; height:108px; padding:12px 0 0; border-bottom:1px solid var(--line); overflow-x:auto }
[data-page="monthly"] .strip .col{ flex:1; min-width:9px; height:100%; display:flex; flex-direction:column; justify-content:flex-end }
[data-page="monthly"] .strip .col b{ display:block; width:100%; border-radius:2px 2px 0 0 }
[data-page="monthly"] .strip .col b.d{ background:var(--l-down) }
[data-page="monthly"] .strip .col b.y{ background:var(--l-yield) }
[data-page="monthly"] .strip .col b.r{ background:var(--l-rework); border-radius:0 }
[data-page="monthly"] .strip .col b.z{ background:var(--gapfg); height:2px; border-radius:1px }
[data-page="monthly"] .strip .col b.u{ height:10px; border-radius:2px; border:1px solid var(--gapfg); background:repeating-linear-gradient(45deg, transparent 0 3px, var(--gapfg) 3px 4px) }
[data-page="monthly"] .strip .col em{ display:block; width:100%; height:22px; border-radius:2px; border:1px dashed var(--gapfg); background:radial-gradient(var(--gapfg) 0.5px, transparent 0.6px) 0 0/5px 5px }
[data-page="monthly"] .xax{ display:flex; gap:2px; font-size:9.5px; color:var(--mut); padding:3px 0 0 }
[data-page="monthly"] .xax span{ flex:1; min-width:9px; text-align:center }
[data-page="monthly"] .lgd{ display:flex; gap:16px; flex-wrap:wrap; font-size:12px; color:var(--mut); margin:8px 0 0 }
[data-page="monthly"] .lgd i{ display:inline-block; width:22px; height:8px; border-radius:2px; vertical-align:middle; margin-right:5px }
[data-page="monthly"] .lgd i.d{ background:var(--l-down) }
[data-page="monthly"] .lgd i.y{ background:var(--l-yield) }
[data-page="monthly"] .lgd i.r{ background:var(--l-rework) }
[data-page="monthly"] .sm{ display:grid; grid-template-columns:repeat(auto-fit,minmax(276px,1fr)); gap:10px; margin:10px 0 4px }
[data-page="monthly"] .smc{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:8px 11px 5px }
[data-page="monthly"] .smc .k{ color:var(--mut); font-size:12px; margin:0 0 1px }
[data-page="monthly"] .smc svg{ display:block; width:100%; height:auto }
[data-page="monthly"] .smc .gl{ stroke:var(--line); stroke-width:1 }
[data-page="monthly"] .smc .gt{ fill:var(--mut); font-size:8px; text-anchor:end }
[data-page="monthly"] .smc .xt{ fill:var(--mut); font-size:8px; text-anchor:middle }
[data-page="monthly"] .smc .ln{ fill:none; stroke:var(--acc-n); stroke-width:1.8; stroke-linejoin:round; stroke-linecap:round }
[data-page="monthly"] .smc .dt{ fill:var(--acc-n); stroke:var(--panel); stroke-width:1 }
[data-page="monthly"] .smc .dt.ho{ fill:var(--panel); stroke:var(--acc-n); stroke-width:1.6 }
[data-page="monthly"] .smc .vl{ fill:var(--fg); font-size:9.5px; font-weight:600; text-anchor:middle }
[data-page="monthly"] .smc .na{ fill:var(--mut); font-size:9px; text-anchor:middle }
[data-page="monthly"] .foot{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:11px 16px; margin:18px 0 0; font-size:12.5px; color:var(--mut) }
[data-page="monthly"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:30px 2px }
[data-page="monthly"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:sp .8s linear infinite }
@keyframes sp{to{ transform:rotate(360deg) }}
@media print{
  [data-page="monthly"] body{ background:var(--print-paper); color:var(--print-ink) }
  [data-page="monthly"] nav.wrnav, [data-page="monthly"] .tabs, [data-page="monthly"] .seg, [data-page="monthly"] .noprint, [data-page="monthly"] .board-dock, [data-page="monthly"] .board-fab{ display:none !important }
  [data-page="monthly"] main{ max-width:none; padding:0 }
  [data-page="monthly"] .card, [data-page="monthly"] .brick, [data-page="monthly"] .note, [data-page="monthly"] .foot, [data-page="monthly"] .smc{ break-inside:avoid; border-color:var(--print-rule) }
  [data-page="monthly"] .tw{ overflow:visible }
  [data-page="monthly"] .tw.stk{ overflow:visible; max-height:none }
  [data-page="monthly"] thead th, [data-page="monthly"] th.cls, [data-page="monthly"] td.cls, [data-page="monthly"] .tw.stk thead th, [data-page="monthly"] .tw.stk th.cls, [data-page="monthly"] .tw.stk td.cls{ position:static; box-shadow:none }
  [data-page="monthly"] th, [data-page="monthly"] td{ white-space:normal }
}
 
:root[data-page="availability"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --ptag:#536f99; --ptag-ink:#ffffff; --rw-off:#cbd5e1; --rw-on:#eef4fb; --av-up:#6fae9c; }
@media (prefers-color-scheme: dark){
  :root[data-page="availability"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; --rw-off:#0a101c; --rw-on:#2a3b5c; --av-up:#2f6b59; }
}
:root[data-page="availability"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; --rw-off:#0a101c; --rw-on:#2a3b5c; --av-up:#2f6b59; }
[data-page="availability"] *{ box-sizing:border-box }
[data-page="availability"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="availability"] main{ max-width:1080px; margin:0 auto; padding:22px }
[data-page="availability"] .coarse{ display:flex; gap:26px; align-items:center; background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:20px 24px; margin-bottom:8px }
[data-page="availability"] .donut{ width:180px; height:180px; flex:0 0 auto }
[data-page="availability"] .donut-track{ stroke:var(--track) }
[data-page="availability"] .donut-c1{ font-size:30px; font-weight:600; fill:var(--fg) }
[data-page="availability"] .donut-c2{ font-size:12px; fill:var(--mut) }
[data-page="availability"] .headline{ flex:0 0 auto }
[data-page="availability"] .headline .big{ font-size:40px; font-weight:600; line-height:1 }
[data-page="availability"] .headline .lbl{ color:var(--mut); font-size:12px; margin-top:2px; max-width:280px }
[data-page="availability"] .headline .row2{ margin-top:14px }
[data-page="availability"] .legend{ flex:1; display:flex; flex-wrap:wrap; gap:6px 18px; align-content:flex-start }
[data-page="availability"] .legend .it{ display:flex; align-items:center; gap:7px; font-size:12.5px; min-width:150px }
[data-page="availability"] .legend .sw{ width:11px; height:11px; border-radius:2px; flex:0 0 auto }
[data-page="availability"] .legend .sec{ color:var(--mut); margin-left:auto }
[data-page="availability"] .note{ color:var(--mut); font-size:11.5px; margin:6px 2px 20px }
[data-page="availability"] .fallback{ background:var(--panel); border:1px solid var(--warn); border-left-width:4px; border-radius:4px; padding:10px 14px; margin:2px 2px 14px; color:var(--warn); font-size:12px; line-height:1.55 }
[data-page="availability"] h2.sec{ font-size:13px; color:var(--mut); font-weight:600; margin:18px 2px 10px; text-transform:uppercase; letter-spacing:.6px }
[data-page="availability"] .row{ display:grid; grid-template-columns:120px 150px 56px 1fr; gap:14px; align-items:center; padding:11px 14px; border:1px solid var(--line); border-radius:4px; margin-bottom:8px; background:var(--panel); cursor:pointer}
[data-page="availability"] .row:hover{ background:var(--panel2); border-color:var(--hover) }
[data-page="availability"] .row .eid{ font-weight:600 }
[data-page="availability"] .row .desc{ color:var(--mut); font-size:12.5px }
[data-page="availability"] .row .util{ font-weight:600; text-align:right; font-variant-numeric:tabular-nums }
[data-page="availability"] .strip{ position:relative; height:18px; border-radius:4px; overflow:hidden; background:var(--track); border:1px solid var(--line) }
[data-page="availability"] .strip .grid{ position:absolute; top:0; height:100%; width:0; border-left:1px dashed var(--hover); opacity:.5; pointer-events:none }
[data-page="availability"] .strip.rw{ background:var(--rw-off) }
[data-page="availability"] .strip .avon{ position:absolute; top:0; height:100%; background:var(--av-up); z-index:0 }
[data-page="availability"] .strip .avdown{ position:absolute; top:0; height:100%; z-index:1 }
[data-page="availability"] .strip .rwunc{ position:absolute; top:0; height:100%; z-index:2; background-color:var(--panel); background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
[data-page="availability"] .strip .rwtick{ position:absolute; top:0; height:100%; width:0; border-left:1px dashed var(--mut); opacity:.75; z-index:3; pointer-events:none }
[data-page="availability"] .avleg{ display:flex; flex-wrap:wrap; gap:6px 16px; align-items:center; color:var(--mut); font-size:11.5px; margin:2px 2px 10px }
[data-page="availability"] .avleg .sw{ width:11px; height:11px; border-radius:2px; display:inline-block; margin-right:6px; vertical-align:-1px }
[data-page="availability"] .avleg .sw.unc{ background-color:var(--panel); border:1px solid var(--line); background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
[data-page="availability"] .avleg .hd{ text-transform:uppercase; letter-spacing:.5px; font-weight:600 }
[data-page="availability"] #detail{ margin-top:18px }
[data-page="availability"] .hint{ color:var(--mut); font-size:12.5px; padding:14px 2px }
[data-page="availability"] .htmx-request.row{ opacity:.6 }
[data-page="availability"] .row.child .eid{ font-weight:500; color:var(--mut); font-size:12px }
[data-page="availability"] .row.child .eid::before{ content:"└ "; color:var(--line) }
[data-page="availability"] .row.child .desc{ font-size:11.5px }
[data-page="availability"] .row.child .strip{ opacity:.92 }
[data-page="availability"] .band-cap{ color:var(--mut); font-size:11.5px; margin:6px 0 2px; line-height:1.5 }
[data-page="availability"] .mb-axis, [data-page="availability"] .mb-ends{ display:grid; grid-template-columns:120px 150px 56px 1fr; gap:14px; padding:0 15px }
[data-page="availability"] .mb-axis{ margin-bottom:4px }
[data-page="availability"] .mb-axis-track{ grid-column:4; position:relative; height:13px }
[data-page="availability"] .mb-ticklbl{ position:absolute; bottom:0; transform:translateX(-50%); font-size:10.5px; color:var(--mut); white-space:nowrap }
[data-page="availability"] .mb-ends{ padding-top:3px }
[data-page="availability"] .mb-ends .e{ grid-column:4; display:flex; justify-content:space-between; color:var(--mut); font-size:11px }
[data-page="availability"] .trend{ margin-bottom:18px }
[data-page="availability"] .trend-track{ position:relative; height:56px; background:var(--track); border:1px solid var(--line); border-radius:4px; overflow:hidden; display:flex; align-items:flex-end; gap:2px; padding:0 2px }
[data-page="availability"] .trend-track .tb{ flex:1 1 0; height:100%; border-radius:3px 3px 0 0 }
[data-page="availability"] .trend-track .tb.na{ background:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 4px) }
[data-page="availability"] .trend-axis{ display:flex; justify-content:space-between; color:var(--mut); font-size:11px; margin-top:3px; padding:0 2px; font-variant-numeric:tabular-nums }
[data-page="availability"] .trend-days{ display:flex; gap:2px; padding:2px 2px 0; color:var(--mut); font-size:10.5px }
[data-page="availability"] .trend-days span{ flex:1 1 0; text-align:center }
[data-page="availability"] .ctl{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:16px; padding:8px 13px; background:var(--panel); border:1px solid var(--line); border-radius:4px; font-size:12.5px; color:var(--mut) }
[data-page="availability"] .ctl input[type=date], [data-page="availability"] .ctl input[type=number]{ font:inherit; color:var(--fg); background:var(--panel2); border:1px solid var(--line); border-radius:4px; padding:3px 7px }
[data-page="availability"] .ctl .vsep{ width:1px; height:18px; background:var(--line); margin:0 3px }
[data-page="availability"] .ctl button{ font:inherit; cursor:pointer; padding:3px 13px; border-radius:4px; border:1px solid var(--line); background:var(--panel2); color:var(--fg) }
[data-page="availability"] .ctl button:hover{ border-color:var(--hover) }
[data-page="availability"] .ctl .reset{ color:var(--mut); text-decoration:none; padding:3px 8px }
[data-page="availability"] .ctl .reset:hover{ color:var(--fg) }
[data-page="availability"] .tag-toggle{ display:inline-flex; gap:3px; padding:2px; border:1px solid var(--line); border-radius:4px }
[data-page="availability"] .tag-toggle a, [data-page="availability"] .ptag{ font-size:10.5px; font-weight:600; line-height:1; letter-spacing:.5px; text-decoration:none; padding:4px 6px; border:1px solid transparent; border-radius:4px; color:var(--mut) }
[data-page="availability"] .tag-toggle a.on, [data-page="availability"] .ptag.observed{ color:var(--ptag-ink); background:var(--ptag); border-color:var(--ptag) }
[data-page="availability"] .ptag.default{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="availability"] .ptag.idle{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="availability"] .ptags{ display:inline-flex; gap:3px; vertical-align:middle }
[data-page="availability"] .tag-note{ color:var(--mut); font-size:11.5px; margin:5px 2px 9px }
 
:root[data-page="utilization"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --ptag:#536f99; --ptag-ink:#ffffff; --rw-off:#cbd5e1; --rw-on:#eef4fb; }
@media (prefers-color-scheme: dark){
  :root[data-page="utilization"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; --rw-off:#0a101c; --rw-on:#2a3b5c; }
}
:root[data-page="utilization"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --ptag:#9bb7de; --ptag-ink:#0b1220; --rw-off:#0a101c; --rw-on:#2a3b5c; }
[data-page="utilization"] *{ box-sizing:border-box }
[data-page="utilization"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="utilization"] header{ display:flex; align-items:baseline; gap:14px; padding:14px 22px; border-bottom:1px solid var(--line); background:var(--panel) }
[data-page="utilization"] header h1{ font-size:17px; margin:0; letter-spacing:.5px }
[data-page="utilization"] header .sub{ color:var(--mut); font-size:12px }
[data-page="utilization"] header .right{ margin-left:auto; display:flex; align-items:center; gap:12px }
[data-page="utilization"] .toggle{ font-size:12px; padding:3px 11px; border-radius:4px; border:1px solid var(--line); color:var(--fg); text-decoration:none; background:var(--panel2) }
[data-page="utilization"] .toggle:hover{ border-color:var(--hover) }
[data-page="utilization"] main{ max-width:1080px; margin:0 auto; padding:22px }
[data-page="utilization"] .coarse{ display:flex; gap:26px; align-items:center; background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:20px 24px; margin-bottom:8px }
[data-page="utilization"] .donut{ width:180px; height:180px; flex:0 0 auto }
[data-page="utilization"] .donut-track{ stroke:var(--track) }
[data-page="utilization"] .donut-c1{ font-size:30px; font-weight:600; fill:var(--fg) }
[data-page="utilization"] .donut-c2{ font-size:12px; fill:var(--mut) }
[data-page="utilization"] .headline{ flex:0 0 auto }
[data-page="utilization"] .headline .big{ font-size:40px; font-weight:600; line-height:1 }
[data-page="utilization"] .headline .big.unk{ color:var(--unk) }
[data-page="utilization"] .headline .lbl{ color:var(--mut); font-size:12px; margin-top:2px; max-width:280px }
[data-page="utilization"] .headline .row2{ margin-top:14px }
[data-page="utilization"] .legend{ flex:1; display:flex; flex-wrap:wrap; gap:6px 18px; align-content:flex-start }
[data-page="utilization"] .legend .it{ display:flex; align-items:center; gap:7px; font-size:12.5px; min-width:150px }
[data-page="utilization"] .legend .sw{ width:11px; height:11px; border-radius:2px; flex:0 0 auto }
[data-page="utilization"] .legend .sec{ color:var(--mut); margin-left:auto }
[data-page="utilization"] .note{ color:var(--mut); font-size:11.5px; margin:6px 2px 20px }
[data-page="utilization"] .note code{ background:var(--panel2); padding:1px 5px; border-radius:4px }
[data-page="utilization"] .au{ display:flex; gap:12px; align-items:stretch; flex-wrap:wrap; margin:2px 2px 4px }
[data-page="utilization"] .au .chip{ flex:0 0 auto; min-width:150px; background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:10px 15px }
[data-page="utilization"] .au .chip .k{ color:var(--mut); font-size:11.5px; display:flex; align-items:center; gap:7px }
[data-page="utilization"] .au .chip .v{ font-size:26px; font-weight:600; line-height:1.15; font-variant-numeric:tabular-nums }
[data-page="utilization"] .au .chip .cap{ color:var(--mut); font-size:11px; margin-top:1px }
[data-page="utilization"] .au .lnk{ align-self:center; font-size:12px; color:var(--mut); text-decoration:none; border:1px solid var(--line); border-radius:4px; padding:8px 12px; background:var(--panel2) }
[data-page="utilization"] .au .lnk:hover{ border-color:var(--hover); color:var(--fg) }
[data-page="utilization"] h2.sec{ font-size:13px; color:var(--mut); font-weight:600; margin:18px 2px 10px; text-transform:uppercase; letter-spacing:.6px }
[data-page="utilization"] .row{ display:grid; grid-template-columns:120px 150px 56px 1fr; gap:14px; align-items:center; padding:11px 14px; border:1px solid var(--line); border-radius:4px; margin-bottom:8px; background:var(--panel); cursor:pointer}
[data-page="utilization"] .row:hover{ background:var(--panel2); border-color:var(--hover) }
[data-page="utilization"] .row .eid{ font-weight:600 }
[data-page="utilization"] .row .desc{ color:var(--mut); font-size:12.5px }
[data-page="utilization"] .row .util{ font-weight:600; text-align:right; font-variant-numeric:tabular-nums }
[data-page="utilization"] .strip{ position:relative; height:18px; border-radius:4px; overflow:hidden; background:var(--track); border:1px solid var(--line) }
[data-page="utilization"] .strip .seg{ position:absolute; top:0; height:100% }
[data-page="utilization"] .strip .seg.low{ background-image:repeating-linear-gradient(45deg,transparent,transparent 4px,var(--low-stripe) 4px,var(--low-stripe) 8px) }
[data-page="utilization"] .strip .grid{ position:absolute; top:0; height:100%; width:0; border-left:1px dashed var(--hover); opacity:.5; pointer-events:none }
[data-page="utilization"] .strip.rw{ background:var(--rw-off) }
[data-page="utilization"] .strip .rwon{ position:absolute; top:0; height:100%; background:var(--rw-on); z-index:0 }
[data-page="utilization"] .strip .rwunc{ position:absolute; top:0; height:100%; z-index:0; background-color:var(--panel); background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
[data-page="utilization"] .strip .seg.off{ opacity:.28 }
[data-page="utilization"] .strip .seg.rwoff{ background-color:var(--rw-off); opacity:1 }
[data-page="utilization"] .strip .rwtick{ position:absolute; top:0; height:100%; width:0; border-left:1px dashed var(--mut); opacity:.75; z-index:3; pointer-events:none }
[data-page="utilization"] .rwleg{ display:flex; flex-wrap:wrap; gap:6px 16px; align-items:center; color:var(--mut); font-size:11.5px; margin:2px 2px 10px }
[data-page="utilization"] .rwleg .sw{ width:11px; height:11px; border-radius:2px; display:inline-block; margin-right:6px; vertical-align:-1px }
[data-page="utilization"] .rwleg .sw.unc{ background-color:var(--panel); border:1px solid var(--line); background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
[data-page="utilization"] .rwleg .sw.on{ background-color:var(--rw-on); border:1px solid var(--line) }


[data-page="utilization"] .rwleg .sw.low{ background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,var(--low-stripe) 3px,var(--low-stripe) 6px) }
[data-page="utilization"] .rwleg .sw.off{ opacity:.28 }
[data-page="utilization"] .rwleg .hd{ text-transform:uppercase; letter-spacing:.5px; font-weight:600 }
[data-page="utilization"] #detail{ margin-top:18px }
[data-page="utilization"] .hint{ color:var(--mut); font-size:12.5px; padding:14px 2px }
[data-page="utilization"] .htmx-request.row{ opacity:.6 }
[data-page="utilization"] .row.child .eid{ font-weight:500; color:var(--mut); font-size:12px }
[data-page="utilization"] .row.child .eid::before{ content:"└ "; color:var(--line) }
[data-page="utilization"] .row.child .desc{ font-size:11.5px }
[data-page="utilization"] .row.child .strip{ opacity:.92 }
[data-page="utilization"] .band-cap{ color:var(--mut); font-size:11.5px; margin:6px 0 2px; line-height:1.5 }
[data-page="utilization"] .mb-axis, [data-page="utilization"] .mb-ends{ display:grid; grid-template-columns:120px 150px 56px 1fr; gap:14px; padding:0 15px }
[data-page="utilization"] .mb-axis{ margin-bottom:4px }
[data-page="utilization"] .mb-axis-track{ grid-column:4; position:relative; height:13px }
[data-page="utilization"] .mb-ticklbl{ position:absolute; bottom:0; transform:translateX(-50%); font-size:10.5px; color:var(--mut); white-space:nowrap }
[data-page="utilization"] .mb-ends{ padding-top:3px }
[data-page="utilization"] .mb-ends .e{ grid-column:4; display:flex; justify-content:space-between; color:var(--mut); font-size:11px }
[data-page="utilization"] .trend{ margin-bottom:18px }
[data-page="utilization"] .trend-track{ position:relative; height:48px; background:var(--track); border:1px solid var(--line); border-radius:4px; overflow:hidden }
[data-page="utilization"] .trend-track.rw{ background:var(--rw-off) }
[data-page="utilization"] .trend-track .grid{ position:absolute; top:0; height:100%; width:0; border-left:1px dashed var(--hover); opacity:.5; pointer-events:none; z-index:1 }
[data-page="utilization"] .trend-track .tb{ position:absolute; bottom:0; height:100% }
[data-page="utilization"] .trend-axis{ display:flex; justify-content:space-between; color:var(--mut); font-size:11px; margin-top:3px; padding:0 2px }
[data-page="utilization"] .trend-line{ position:absolute; inset:0; z-index:2; pointer-events:none }
[data-page="utilization"] .trend-mark{ position:absolute; width:8px; height:8px; border-radius:50%; transform:translate(-50%,-50%); z-index:3; border:1.5px solid var(--panel); pointer-events:none }
[data-page="utilization"] .trend-cap{ font-variant-numeric:tabular-nums }
[data-page="utilization"] .ctl{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:16px; padding:8px 13px; background:var(--panel); border:1px solid var(--line); border-radius:4px; font-size:12.5px; color:var(--mut) }
[data-page="utilization"] .ctl input[type=date], [data-page="utilization"] .ctl input[type=number]{ font:inherit; color:var(--fg); background:var(--panel2); border:1px solid var(--line); border-radius:4px; padding:3px 7px }
[data-page="utilization"] .ctl .vsep{ width:1px; height:18px; background:var(--line); margin:0 3px }
[data-page="utilization"] .ctl button{ font:inherit; cursor:pointer; padding:3px 13px; border-radius:4px; border:1px solid var(--line); background:var(--panel2); color:var(--fg) }
[data-page="utilization"] .ctl button:hover{ border-color:var(--hover) }
[data-page="utilization"] .ctl .reset{ color:var(--mut); text-decoration:none; padding:3px 8px }
[data-page="utilization"] .ctl .reset:hover{ color:var(--fg) }
[data-page="utilization"] .tag-toggle{ display:inline-flex; gap:3px; padding:2px; border:1px solid var(--line); border-radius:4px }
[data-page="utilization"] .tag-toggle a, [data-page="utilization"] .ptag{ font-size:10.5px; font-weight:600; line-height:1; letter-spacing:.5px; text-decoration:none; padding:4px 6px; border:1px solid transparent; border-radius:4px; color:var(--mut) }
[data-page="utilization"] .tag-toggle a.on, [data-page="utilization"] .ptag.observed{ color:var(--ptag-ink); background:var(--ptag); border-color:var(--ptag) }
[data-page="utilization"] .ptag.default{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="utilization"] .ptag.idle{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="utilization"] .ptags{ display:inline-flex; gap:3px; vertical-align:middle }
[data-page="utilization"] .tag-note{ color:var(--mut); font-size:11.5px; margin:5px 2px 9px }
[data-page="utilization"] .tag-note.aonly a{ color:var(--fg); text-decoration:none; border-bottom:1px dotted var(--line); margin-left:6px }
[data-page="utilization"] .tag-note.aonly a:hover{ border-bottom-color:var(--fg) }
[data-page="utilization"] .tag-note.aonly .help{ cursor:help; margin-left:4px }
[data-page="utilization"] .au-erwline{ font-size:11.5px;color:var(--mut);margin:4px 2px 10px }
[data-page="utilization"] .au-erwline.inert{ color:var(--warn);font-weight:600 }
 
:root[data-page="downtime"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --acc-n:#2563eb; --gapfg:#9aa7bb; --dt-za:#1e293b; --dt-zb:#64748b; --dt-zc:#cbd5e1; --dti-za:#ffffff; --dti-zb:#ffffff; --dti-zc:#1b2433; }
@media (prefers-color-scheme: dark){
  :root[data-page="downtime"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --acc-n:#5b8def; --gapfg:#55657e; --dt-za:#64748b; --dt-zb:#94a3b8; --dt-zc:#e2e8f0; --dti-za:#ffffff; --dti-zb:#1b2433; --dti-zc:#1b2433; }
}
:root[data-page="downtime"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --acc-n:#5b8def; --gapfg:#55657e; --dt-za:#64748b; --dt-zb:#94a3b8; --dt-zc:#e2e8f0; --dti-za:#ffffff; --dti-zb:#1b2433; --dti-zc:#1b2433; }
[data-page="downtime"] *{ box-sizing:border-box }
[data-page="downtime"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="downtime"] main{ max-width:1360px; margin:0 auto; padding:18px 22px 40px }
[data-page="downtime"] h1{ font-size:19px; margin:6px 0 2px }
[data-page="downtime"] .sub{ color:var(--mut); font-size:12.5px; max-width:1000px }
[data-page="downtime"] .demotag{ font-size:10px; font-weight:600; letter-spacing:1px; color:var(--warn); border:1px solid var(--warn); border-radius:4px; padding:1px 7px; margin-left:8px }
[data-page="downtime"] .head{ display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; margin:10px 0 2px; font-size:12.5px; color:var(--mut) }
[data-page="downtime"] .chips{ display:inline-flex; flex-wrap:wrap; gap:4px }
[data-page="downtime"] .chips a{ padding:3px 10px; font-size:12.5px; text-decoration:none; color:var(--mut); background:var(--panel); border:1px solid var(--line); border-radius:4px; white-space:nowrap }
[data-page="downtime"] .chips a:hover{ background:var(--panel2); color:var(--fg) }
[data-page="downtime"] .rng{ display:inline-flex; align-items:center; gap:6px; margin-left:auto; flex-wrap:wrap }
[data-page="downtime"] .rng select{ font:inherit; font-size:12.5px; color:var(--fg); background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:3px 6px }
[data-page="downtime"] .rng .capn{ color:var(--warn); font-size:11.5px }
[data-page="downtime"] .card{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:12px 16px; margin:14px 0 }
[data-page="downtime"] .note{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:8px 14px; margin:10px 0; font-size:12.5px; color:var(--mut) }
[data-page="downtime"] .deg{ background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--warn); border-radius:4px; padding:14px 16px; margin:12px 0; font-size:13px }
[data-page="downtime"] .kpis{ display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 4px }
[data-page="downtime"] .kpi{ flex:1; min-width:150px; background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:9px 13px; cursor:help }
[data-page="downtime"] .kpi .k{ color:var(--mut); font-size:12px }
[data-page="downtime"] .kpi .v{ font-size:22px; font-weight:600; font-variant-numeric:tabular-nums; line-height:1.25 }
[data-page="downtime"] .kpi .v small{ font-size:12.5px; font-weight:600; color:var(--mut); margin-left:3px }
[data-page="downtime"] .mixed{ font-size:11.5px; color:var(--warn); margin:2px 2px 0 }
[data-page="downtime"] .chart{ width:100%; max-width:980px }
[data-page="downtime"] .chart svg{ width:100%; height:auto; display:block }
[data-page="downtime"] .chart .grid{ stroke:var(--line); stroke-width:1 }
[data-page="downtime"] .chart .axl{ fill:var(--mut); font-size:10.5px }
[data-page="downtime"] .chart .xl{ fill:var(--fg); font-size:11px }
[data-page="downtime"] .chart .xa{ fill:var(--mut); font-size:10px }
[data-page="downtime"] .chart .sep{ stroke:var(--mut); stroke-width:1.2; stroke-dasharray:4 3 }
[data-page="downtime"] .chart .sepn{ fill:var(--mut); font-size:10px }
[data-page="downtime"] .chart g.sg{ cursor:pointer }
[data-page="downtime"] .chart g.sg rect{ stroke:var(--panel); stroke-width:1 }
[data-page="downtime"] .chart g.sg:hover rect, [data-page="downtime"] .chart g.sg:focus rect{ stroke:var(--fg); stroke-width:1.5 }
[data-page="downtime"] .chart .a-za{ fill:var(--dt-za) }
[data-page="downtime"] .chart .a-zb{ fill:var(--dt-zb) }
[data-page="downtime"] .chart .a-zc{ fill:var(--dt-zc) }
[data-page="downtime"] .chart .t-za{ fill:var(--dti-za) }
[data-page="downtime"] .chart .t-zb{ fill:var(--dti-zb) }
[data-page="downtime"] .chart .t-zc{ fill:var(--dti-zc) }
[data-page="downtime"] .chart .sv{ font-size:9.5px; pointer-events:none }
[data-page="downtime"] .lgd{ display:flex; gap:14px; flex-wrap:wrap; font-size:12px; color:var(--mut); margin:6px 0 0; align-items:center }
[data-page="downtime"] .lgd i{ display:inline-block; width:18px; height:10px; border-radius:2px; vertical-align:middle; margin-right:5px; border:1px solid var(--line) }
[data-page="downtime"] .lgd i.a-za{ background:var(--dt-za) }
[data-page="downtime"] .lgd i.a-zb{ background:var(--dt-zb) }
[data-page="downtime"] .lgd i.a-zc{ background:var(--dt-zc) }
[data-page="downtime"] details.twin summary{ cursor:pointer; color:var(--acc-n); font-size:12.5px; margin:8px 0 0 }
[data-page="downtime"] table{ border-collapse:collapse; font-size:12.5px }
[data-page="downtime"] th, [data-page="downtime"] td{ border-bottom:1px solid var(--line); padding:4px 9px; text-align:right; white-space:nowrap }
[data-page="downtime"] thead th{ background:var(--panel2); font-weight:600 }
[data-page="downtime"] th.l, [data-page="downtime"] td.l{ text-align:left }
[data-page="downtime"] td.num{ font-variant-numeric:tabular-nums }
[data-page="downtime"] .tw{ overflow-x:auto; margin:6px 0 2px }
[data-page="downtime"] .hint{ color:var(--mut); font-size:12.5px; padding:6px 2px }
[data-page="downtime"] .ph{ font-weight:600; font-size:14px; margin:2px 0 4px }
[data-page="downtime"] .rep{ font-size:12.5px; color:var(--mut); margin:0 0 6px }
[data-page="downtime"] .flag{ font-size:10.5px; border:1px solid var(--gapfg); border-radius:4px; padding:0 6px; color:var(--mut); margin-right:3px; white-space:nowrap }
[data-page="downtime"] .ai{ font-size:10px; font-weight:600; letter-spacing:.5px; border:1px solid var(--acc-n); color:var(--acc-n); border-radius:4px; padding:0 6px; margin-right:6px }
[data-page="downtime"] tr.sumr td{ text-align:left; white-space:normal; color:var(--fg); font-size:12.5px; border-bottom:1px solid var(--line); padding:3px 9px 8px 34px }
[data-page="downtime"] tr.sumr .mutd{ color:var(--mut) }
[data-page="downtime"] tr.sumr details summary{ cursor:pointer; color:var(--mut); font-size:11.5px; margin-top:3px }
[data-page="downtime"] tr.sumr dl{ margin:4px 0 0; font-size:12px }
[data-page="downtime"] tr.sumr dt{ color:var(--mut); font-size:11px }
[data-page="downtime"] tr.sumr dd{ margin:0 0 4px 0; white-space:pre-wrap }
[data-page="downtime"] .foot{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:10px 16px; margin:18px 0 0; font-size:12.5px; color:var(--mut) }
[data-page="downtime"] .foot div{ margin:2px 0 }
[data-page="downtime"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:30px 2px }
[data-page="downtime"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:sp .8s linear infinite }
@keyframes sp{to{ transform:rotate(360deg) }}
[data-page="downtime"] .trunc{ max-width:240px; overflow:hidden; text-overflow:ellipsis; display:inline-block; vertical-align:bottom }
 
:root[data-page="pm"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; --st-repair:#dc2626; --sti-repair:#ffffff; --st-pm:#2563eb; --sti-pm:#ffffff; --st-legacy:#9ca3af; --sti-legacy:#1b2433; --st-parts:#6b21a8; --sti-parts:#ffffff; --st-vendor:#d97706; --sti-vendor:#1b2433; --st-hwait:#8b98a9; --sti-hwait:#ffffff; --tex-stripe:rgba(0,0,0,.30); --pm-age1:#8b98a9; --pm-age2:#b07d12; --pm-age3:#c4803f; --pm-age4:#c4504f; --pm-seg1:#7c93b5; --pm-seg2:#41608c; --pm-seg3:#b8c6da; --pm-area-za:#3f7a8c; --pm-area-zb:#5a6fae; --pm-area-zc:#3f7f63; --pm-area-zd:#8a6aa8; --pm-bar:#b9c9e0; --pm-bar2:#7d95b8; --pm-line1:#2f5597; --pm-line2:#9c5fb0; }
@media (prefers-color-scheme: dark){
  :root[data-page="pm"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --st-parts:#b26ef5; --sti-parts:#1b2433; --pm-age1:#8aa0bd; --pm-age2:#cbb26b; --pm-age3:#d9a06a; --pm-age4:#e0726f; --pm-seg1:#5a7ba6; --pm-seg2:#8fb0d8; --pm-seg3:#33456180; --pm-area-za:#6fb3c6; --pm-area-zb:#93a6e0; --pm-area-zc:#6fbf95; --pm-area-zd:#bda0dc; --pm-bar:#3a4f6f; --pm-bar2:#6b87b0; --pm-line1:#7fa6e8; --pm-line2:#c69ad8; }
}
:root[data-page="pm"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; --st-parts:#b26ef5; --sti-parts:#1b2433; --pm-age1:#8aa0bd; --pm-age2:#cbb26b; --pm-age3:#d9a06a; --pm-age4:#e0726f; --pm-seg1:#5a7ba6; --pm-seg2:#8fb0d8; --pm-seg3:#33456180; --pm-area-za:#6fb3c6; --pm-area-zb:#93a6e0; --pm-area-zc:#6fbf95; --pm-area-zd:#bda0dc; --pm-bar:#3a4f6f; --pm-bar2:#6b87b0; --pm-line1:#7fa6e8; --pm-line2:#c69ad8; }
[data-page="pm"] *{ box-sizing:border-box }
[data-page="pm"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="pm"] a{ color:inherit }
[data-page="pm"] main{ max-width:1240px; margin:0 auto; padding:18px 22px 40px }
[data-page="pm"] .pm-head{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin:2px 0 4px }
[data-page="pm"] .pm-head h1{ font-size:22px; font-weight:600; letter-spacing:.3px; margin:0 }
[data-page="pm"] .pm-head .sub{ color:var(--mut); font-size:13.5px }
[data-page="pm"] .pm-ctl{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:8px 2px 16px }
[data-page="pm"] .pm-back{ font-size:13px; color:var(--mut); text-decoration:none; border:1px solid var(--line); border-radius:4px; padding:4px 12px; margin-right:6px }
[data-page="pm"] .pm-back:hover{ border-color:var(--hover); color:var(--fg) }
[data-page="pm"] .pm-wchip{ font-size:12px; color:var(--mut); padding:4px 13px; border-radius:4px; border:1px solid var(--line); background:var(--panel); text-decoration:none; white-space:nowrap }
[data-page="pm"] .pm-wchip:hover{ border-color:var(--hover); color:var(--fg) }
[data-page="pm"] .pm-wchip.on{ color:var(--fg); font-weight:600; background:var(--panel2); border-color:var(--hover) }
[data-page="pm"] .pm-zbar{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:26px 2px 11px; padding:0 1px 7px; border-bottom:1px solid var(--line) }
[data-page="pm"] .pm-zbar:first-of-type{ margin-top:4px }
[data-page="pm"] .pm-zbar .zn{ font-size:12px; font-weight:600; letter-spacing:.7px; text-transform:uppercase; color:var(--mut) }
[data-page="pm"] .pm-zbar .zc{ font-size:11.5px; color:var(--mut); padding:1px 9px; border-radius:4px; border:1px solid var(--line); background:var(--panel2) }
[data-page="pm"] .pm-zbar .zctl{ margin-left:auto; display:flex; align-items:center; gap:8px; flex-wrap:wrap }
[data-page="pm"] .pm-tchip{ font-size:10.5px; font-weight:600; letter-spacing:.2px; color:var(--mut); border:1px solid var(--line); border-radius:4px; padding:0 7px; margin-left:8px; vertical-align:1.5px; white-space:nowrap }
[data-page="pm"] .help{ margin-left:5px }
[data-page="pm"] .pm-sec{ border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:18px 20px; margin:0 0 18px }
[data-page="pm"] .pm-sec > h2{ font-size:15px; font-weight:600; letter-spacing:.3px; margin:0 0 4px }
[data-page="pm"] .pm-secnote{ color:var(--mut); font-size:12px; margin:0 0 12px }
[data-page="pm"] .pm-hero{ display:flex; align-items:baseline; gap:34px; flex-wrap:wrap; margin:6px 0 8px }
[data-page="pm"] .pm-hero .kpi{ display:flex; align-items:baseline; gap:9px }
[data-page="pm"] .pm-hero .big{ font-size:54px; font-weight:600; line-height:1; font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-hero .lbl{ color:var(--mut); font-size:13px }
[data-page="pm"] .pm-due{ font-size:13px; margin:2px 0 8px; display:flex; gap:10px; flex-wrap:wrap; align-items:center }
[data-page="pm"] .pm-due .n{ font-variant-numeric:tabular-nums; font-weight:600 }
[data-page="pm"] .pm-due .st{ color:var(--mut) }
[data-page="pm"] .pm-line{ font-size:12.5px; color:var(--mut); margin:3px 0 }
[data-page="pm"] .pm-line b{ color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-alert{ font-size:13px; margin:10px 0 2px; padding:8px 13px; border-radius:4px; border:1px solid var(--line); background:var(--panel2) }
[data-page="pm"] .pm-alert .bk{ font-weight:600 }
[data-page="pm"] .pm-buckets{ display:inline-flex; gap:8px; flex-wrap:wrap; margin-left:6px }
[data-page="pm"] .pm-bkchip{ font-size:11.5px; padding:1px 8px; border-radius:4px; border:1px solid var(--line); color:var(--mut); font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-tblwrap{ overflow-x:auto; border:1px solid var(--line); border-radius:4px; margin-top:6px }
[data-page="pm"] table.pm-tbl{ width:100%; border-collapse:collapse; font-size:12.5px }
[data-page="pm"] table.pm-tbl th{ background:var(--panel2); color:var(--mut); font-size:10px; text-transform:uppercase; letter-spacing:.3px; padding:7px 10px; white-space:nowrap; text-align:right }
[data-page="pm"] table.pm-tbl th:nth-child(1), [data-page="pm"] table.pm-tbl th:nth-child(2), [data-page="pm"] table.pm-tbl th:nth-child(3){ text-align:left }
[data-page="pm"] table.pm-tbl td{ padding:6px 10px; border-top:1px solid var(--line); text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap }
[data-page="pm"] table.pm-tbl td:nth-child(1), [data-page="pm"] table.pm-tbl td:nth-child(2), [data-page="pm"] table.pm-tbl td:nth-child(3){ text-align:left }
[data-page="pm"] table.pm-tbl tr.pm-row{ cursor:pointer }
[data-page="pm"] table.pm-tbl tr.pm-row:hover td{ background:var(--panel2) }
[data-page="pm"] table.pm-tbl td.mut{ color:var(--mut) }
[data-page="pm"] .pm-nm{ display:block; white-space:normal }
[data-page="pm"] .pm-code{ display:block; font-size:10.5px; line-height:1.4 }
[data-page="pm"] .pm-areachip{ font-size:10px; padding:0 7px; border-radius:4px; border:1px solid var(--line); color:var(--mut); margin-left:6px }
[data-page="pm"] .pm-areachip.pm-a-za{ color:var(--pm-area-za); border-color:var(--pm-area-za) }
[data-page="pm"] .pm-areachip.pm-a-zb{ color:var(--pm-area-zb); border-color:var(--pm-area-zb) }
[data-page="pm"] .pm-areachip.pm-a-zc{ color:var(--pm-area-zc); border-color:var(--pm-area-zc) }
[data-page="pm"] .pm-areachip.pm-a-zd{ color:var(--pm-area-zd); border-color:var(--pm-area-zd) }
[data-page="pm"] .pm-zchip{ display:inline-block; font-size:9px; font-weight:600; letter-spacing:.3px; padding:0 6px; border-radius:4px; border:1px solid var(--warn); color:var(--warn); margin-left:6px; cursor:help }
[data-page="pm"] .pm-age1{ color:var(--pm-age1) }
[data-page="pm"] .pm-age2{ color:var(--pm-age2) }
[data-page="pm"] .pm-age3{ color:var(--pm-age3) }
[data-page="pm"] .pm-age4{ color:var(--pm-age4); font-weight:600 }
[data-page="pm"] tr.pm-drillrow > td{ padding:0; border-top:none }
[data-page="pm"] .pm-drillslot:empty{ display:none }
[data-page="pm"] .pm-drill{ border:1px solid var(--line); border-radius:4px; background:var(--panel2); padding:14px 16px; margin:2px 2px 12px }
[data-page="pm"] .pm-drill-h{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin:0 0 8px }
[data-page="pm"] .pm-drill-h .t{ font-weight:600 }
[data-page="pm"] .pm-drill-h .close{ margin-left:auto; font-size:12px; color:var(--mut); cursor:pointer }
[data-page="pm"] .pm-drill-h .close:hover{ color:var(--fg) }
[data-page="pm"] .pm-meta{ display:flex; gap:16px; flex-wrap:wrap; font-size:12.5px; color:var(--mut); margin:0 0 12px }
[data-page="pm"] .pm-meta b{ color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-sub-h{ font-size:12px; color:var(--mut); text-transform:uppercase; letter-spacing:.5px; margin:12px 0 5px; display:flex; align-items:center }
[data-page="pm"] .pm-steps{ width:100%; border-collapse:collapse; font-size:12.5px }
[data-page="pm"] .pm-steps th{ text-align:left; color:var(--mut); font-size:10px; text-transform:uppercase; padding:4px 8px; border-bottom:1px solid var(--line) }
[data-page="pm"] .pm-steps td{ padding:5px 8px; border-top:1px solid var(--line); vertical-align:top }
[data-page="pm"] .pm-steps td.seq{ font-variant-numeric:tabular-nums; color:var(--mut); width:44px }
[data-page="pm"] .pm-steps td.parts{ color:var(--mut); white-space:nowrap }
[data-page="pm"] .pm-steps a.pm-part{ color:var(--mut); text-decoration:underline dotted; text-underline-offset:2px; text-decoration-color:var(--line) }
[data-page="pm"] .pm-steps a.pm-part:hover{ color:var(--fg); text-decoration-color:var(--hover) }
[data-page="pm"] .pm-cmms{ font-size:12px; color:var(--mut); text-decoration:none; margin-left:8px }
[data-page="pm"] .pm-cmms:hover{ color:var(--fg) }
[data-page="pm"] .pm-own{ display:flex; flex-direction:column; gap:9px; margin:4px 0 2px }
[data-page="pm"] .pm-ownrow{ display:grid; grid-template-columns:170px 1fr 200px; gap:12px; align-items:center; font-size:12.5px }
[data-page="pm"] .pm-ownrow .who{ font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="pm"] .pm-ownrow.unassigned .who{ color:var(--unk); font-weight:600 }
[data-page="pm"] .pm-bar{ display:flex; height:20px; border-radius:4px; overflow:hidden; background:var(--track); border:1px solid var(--line) }
[data-page="pm"] .pm-bar > span{ height:100%; display:flex; align-items:center; justify-content:center; font-size:10.5px; color:var(--bg); font-variant-numeric:tabular-nums; overflow:hidden }
[data-page="pm"] .pm-bar .s1{ background:var(--pm-seg1) }
[data-page="pm"] .pm-bar .s2{ background:var(--pm-seg2) }
[data-page="pm"] .pm-bar .s3{ background:var(--pm-seg3) }
[data-page="pm"] .pm-ownrow .side{ color:var(--mut); font-size:11.5px; text-align:right; white-space:nowrap }
[data-page="pm"] .pm-ownrow .side b{ color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-ownlegend{ display:flex; gap:14px; flex-wrap:wrap; margin:10px 0 2px; font-size:11.5px; color:var(--mut) }
[data-page="pm"] .pm-ownlegend .li{ display:inline-flex; align-items:center; gap:5px; white-space:nowrap }
[data-page="pm"] .pm-ownlegend .d{ width:11px; height:11px; border-radius:3px; display:inline-block; flex:none }
[data-page="pm"] .pm-fc{ display:flex; gap:14px; flex-wrap:wrap }
[data-page="pm"] .pm-fccard{ flex:1 1 260px; border:1px solid var(--line); border-radius:4px; padding:12px 14px; background:var(--panel2) }
[data-page="pm"] .pm-fccard .hd{ font-size:11px; color:var(--mut); text-transform:uppercase; letter-spacing:.5px }
[data-page="pm"] .pm-fccard .big{ font-size:19px; font-weight:600; margin:4px 0 6px; font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-fccard .ow{ font-size:11.5px; color:var(--mut); line-height:1.7 }
[data-page="pm"] .pm-trwrap{ overflow-x:auto }
[data-page="pm"] .pm-tr{ width:100%; height:auto; max-width:820px; display:block }
[data-page="pm"] .pm-tr .axl{ fill:var(--mut); font-size:9.5px; font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-tr .axl.mo{ font-size:9px }
[data-page="pm"] .pm-tr .axl.n{ font-size:8.5px; opacity:.85 }
[data-page="pm"] .pm-tr .grid{ stroke:var(--line); stroke-width:1 }
[data-page="pm"] .pm-tr .pm-dot{ stroke:none }
[data-page="pm"] .pm-tr .pm-trbar{ fill:var(--pm-bar); opacity:.85 }
[data-page="pm"] .pm-tr .pm-trbar2{ fill:var(--pm-bar2); opacity:.95 }
[data-page="pm"] .pm-tr .pm-trlbl{ fill:var(--mut); font-size:8.5px; font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-tr .pm-trhit{ fill:transparent }
[data-page="pm"] .pm-ownlegend .pm-barswatch{ background:var(--pm-bar) }
[data-page="pm"] .pm-ownlegend .pm-barswatch2{ background:var(--pm-bar2) }
[data-page="pm"] .pm-owntotal{ font-size:12.5px; color:var(--mut); padding:7px 11px; margin:2px 0 8px; border:1px solid var(--line); border-radius:4px; background:var(--panel2) }
[data-page="pm"] .pm-owntotal b{ color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="pm"] table.pm-pptbl td{ vertical-align:middle }
[data-page="pm"] table.pm-pptbl tr.unassigned td:first-child{ color:var(--unk); font-weight:600 }
[data-page="pm"] .pm-sm-grid{ display:grid; gap:10px; margin:10px 0 2px; grid-template-columns:repeat(auto-fill, minmax(178px, 1fr)) }
[data-page="pm"] .pm-smcell{ border:1px solid var(--line); border-radius:4px; background:var(--panel2); padding:8px 10px 6px }
[data-page="pm"] .pm-smcell .who{ font-size:12px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="pm"] .pm-smcell .sm-note{ color:var(--mut); font-size:10.5px; font-variant-numeric:tabular-nums }
[data-page="pm"] .pm-smchart{ width:100%; height:auto; display:block; margin:3px 0 1px }
[data-page="pm"] .pm-smchart .grid{ stroke:var(--line); stroke-width:1 }
[data-page="pm"] .pm-smchart .pm-smhit{ fill:transparent }
[data-page="pm"] .pm-srcbanner{ display:flex; gap:10px; align-items:flex-start; margin:0 0 16px; padding:10px 15px; border:1px solid var(--unk); border-radius:4px; background:var(--tint-warn); font-size:12.5px }
[data-page="pm"] .pm-srcbanner .pin{ font-weight:600; color:var(--unk); white-space:nowrap }
[data-page="pm"] .pm-off{ font-size:13px; color:var(--unk); padding:14px 16px; border:1px dashed var(--line); border-radius:4px; background:var(--panel2); line-height:1.6; margin-bottom:14px }
[data-page="pm"] .pm-none{ color:var(--mut); font-size:13px; font-style:italic }
[data-page="pm"] .pm-foot{ color:var(--mut); font-size:11.5px; margin:6px 2px 0; line-height:1.65 }
[data-page="pm"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:26px 2px }
[data-page="pm"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:sp .8s linear infinite }
@keyframes sp{to{ transform:rotate(360deg) }}
[data-page="pm"] .pm-unavail{ font-size:15px; font-weight:600; color:var(--unk); margin:18px 2px 6px }
[data-page="pm"] .pm-unavail-hint{ color:var(--mut); font-size:12px; margin:0 2px }
 
:root[data-page="yield"]{ color-scheme: light dark; --bg:#f4f6fb; --panel:#ffffff; --panel2:#eef2f8; --line:#d8e0ec; --track:#e6ebf3; --fg:#1b2433; --mut:#5c6b82; --hover:#b9c6db; --unk:#b07d12; --good:#1e7d4f; --warn:#b07d12; --bad:#b3423a; }
@media (prefers-color-scheme: dark){
  :root[data-page="yield"]:not([data-theme="light"]){ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; }
}
:root[data-page="yield"][data-theme="dark"]{ --bg:#0b1220; --panel:#141d2e; --panel2:#1b2740; --line:#2a3852; --track:#0e1626; --fg:#e6edf6; --mut:#8aa0bd; --hover:#3a5c86; --unk:#cbb26b; --good:#36c47f; --warn:#cbb26b; --bad:#e0726f; }
[data-page="yield"] *{ box-sizing:border-box }
[data-page="yield"] body{ margin:0; background:var(--bg); color:var(--fg); }
[data-page="yield"] header{ display:flex; align-items:baseline; gap:14px; padding:14px 22px; border-bottom:1px solid var(--line); background:var(--panel) }
[data-page="yield"] header h1{ font-size:17px; margin:0; letter-spacing:.5px }
[data-page="yield"] header .sub{ color:var(--mut); font-size:12px }
[data-page="yield"] header .right{ margin-left:auto; display:flex; align-items:center; gap:12px }
[data-page="yield"] .toggle{ font-size:12px; padding:3px 11px; border-radius:4px; border:1px solid var(--line); color:var(--fg); text-decoration:none; background:var(--panel2) }
[data-page="yield"] .toggle:hover{ border-color:var(--hover) }
[data-page="yield"] .badge{ font-size:11px; padding:2px 8px; border-radius:4px; border:1px solid var(--line); color:var(--mut) }
[data-page="yield"] main{ max-width:1080px; margin:0 auto; padding:22px }
[data-page="yield"] .intro{ color:var(--mut); font-size:13px; margin:2px 2px 12px }
[data-page="yield"] .anchor{ display:flex; gap:24px; align-items:center; background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:18px 22px; margin-bottom:14px }
[data-page="yield"] .anchor .big{ font-size:42px; font-weight:600; line-height:1; font-variant-numeric:tabular-nums }
[data-page="yield"] .anchor .lbl{ color:var(--mut); font-size:12px; max-width:340px; margin-top:4px }
[data-page="yield"] .anchor .chips{ margin-top:8px }
[data-page="yield"] .chip{ display:inline-block; font-size:11.5px; padding:1px 9px; margin:2px 5px 0 0; border-radius:4px; background:var(--panel2); border:1px solid var(--line); color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="yield"] h2.sec{ font-size:13px; color:var(--mut); font-weight:600; margin:18px 2px 8px; text-transform:uppercase; letter-spacing:.6px }
[data-page="yield"] table.sb{ width:100%; border-collapse:collapse; font-size:12.5px; background:var(--panel); border:1px solid var(--line); border-radius:4px; overflow:hidden }
[data-page="yield"] table.sb th, [data-page="yield"] table.sb td{ padding:7px 11px; border-bottom:1px solid var(--line); text-align:left }
[data-page="yield"] table.sb th{ color:var(--mut); font-weight:600; font-size:11px; text-transform:uppercase; letter-spacing:.4px; background:var(--panel2) }
[data-page="yield"] table.sb tr:last-child td{ border-bottom:none }
[data-page="yield"] table.sb td.num, [data-page="yield"] table.sb th.num{ text-align:right; font-variant-numeric:tabular-nums }
[data-page="yield"] table.sb td.st{ font-weight:600 }
[data-page="yield"] table.sb tbody tr{ cursor:pointer}
[data-page="yield"] table.sb tbody tr:hover{ background:var(--panel2) }
[data-page="yield"] table.sb tr.cal{ background:var(--panel2) }
[data-page="yield"] table.sb tr.active-row.htmx-request{ opacity:.55 }
[data-page="yield"] td.hi{ font-weight:600 }
[data-page="yield"] td.muted{ color:var(--mut) }
[data-page="yield"] .cta{ color:var(--unk); text-decoration:none; font-weight:600 }
[data-page="yield"] .cta:hover{ text-decoration:underline }
[data-page="yield"] #detail{ margin-top:18px }
[data-page="yield"] .hint{ color:var(--mut); font-size:12.5px; padding:14px 2px }
[data-page="yield"] details.skip{ margin:10px 2px; color:var(--mut); font-size:11.5px }
[data-page="yield"] details.skip code{ background:var(--panel2); padding:1px 5px; border-radius:4px }
[data-page="yield"] .help{ margin-left:4px }
[data-page="yield"] .help .tip{ width:270px }
[data-page="yield"] .obar{ position:relative; height:14px; border-radius:4px; background:var(--track); overflow:hidden; min-width:130px }
[data-page="yield"] .obar i{ position:absolute; left:0; top:0; bottom:0; border-radius:4px }
[data-page="yield"] .ybar{ position:relative; height:12px; border-radius:4px; background:var(--track); overflow:hidden; min-width:110px }
[data-page="yield"] .ybar i{ position:absolute; left:0; top:0; bottom:0; border-radius:4px }
[data-page="yield"] .pos{ color:var(--good); font-weight:600 }
[data-page="yield"] .neg{ color:var(--bad); font-weight:600 }
[data-page="yield"] .tag{ font-size:10px; font-weight:600; letter-spacing:.5px; padding:1px 7px; border-radius:4px; border:1px solid var(--line); color:var(--mut); vertical-align:1px }
[data-page="yield"] .tag.demo{ color:var(--unk); border-color:var(--unk) }
[data-page="yield"] .metchip{ font-size:11px; font-weight:600; color:var(--good) }
[data-page="yield"] .kchips{ display:flex; flex-wrap:wrap; gap:8px; margin-top:8px }
[data-page="yield"] .kchip{ border:1px solid var(--line); background:var(--panel2); border-radius:4px; padding:5px 10px; min-width:96px }
[data-page="yield"] .kchip .k{ display:block; font-size:10.5px; color:var(--mut); letter-spacing:.4px }
[data-page="yield"] .kchip .v{ font-size:15px; font-weight:600; font-variant-numeric:tabular-nums }
[data-page="yield"] .absorb{ display:block; margin:0 2px 16px; padding:11px 14px; border-radius:4px; font-size:12.5px; line-height:1.55; color:var(--fg); background:var(--tint-warn); border:1px solid var(--unk) }
[data-page="yield"] .absorb summary{ cursor:pointer; font-weight:600 }
[data-page="yield"] .absorb .hint{ color:var(--mut); font-weight:400; margin-left:6px }
[data-page="yield"] .absorb table{ width:100%; border-collapse:collapse; margin-top:8px; font-size:12px }
[data-page="yield"] .absorb td{ padding:4px 8px; border-bottom:1px solid var(--line) }
[data-page="yield"] .qk-unavail{ margin:0 2px 16px; padding:11px 14px; border-radius:4px; font-size:12.5px; color:var(--fg); background:var(--panel2); border:1px dashed var(--line) }
[data-page="yield"] .qk-note{ margin:22px 2px 8px; padding:12px 15px; border-radius:4px; font-size:12.5px; line-height:1.6; background:var(--panel); border:1px solid var(--line) }
[data-page="yield"] .qk-note summary{ cursor:pointer; font-weight:600; color:var(--fg) }
[data-page="yield"] .qk-note p{ margin:9px 0; color:var(--mut) }
[data-page="yield"] .qk-note b{ color:var(--fg) }
[data-page="yield"] .qk-meta{ color:var(--mut); font-size:11.5px; margin-top:6px }
[data-page="yield"] .product-switch{ display:flex; justify-content:flex-end; align-items:center; gap:7px; max-width:1080px; margin:10px auto -10px; padding:0 22px; font-size:12px }
[data-page="yield"] .product-switch b.toggle{ cursor:default; font-weight:600; border-color:var(--hover) }
[data-page="yield"] .product-switch .sep{ color:var(--mut) }
[data-page="yield"] td.ord{ color:var(--mut); font-variant-numeric:tabular-nums; width:34px }
[data-page="yield"] .ys{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:18px 20px }
[data-page="yield"] .ys-head{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:6px }
[data-page="yield"] .ys-head .eid{ font-size:17px; font-weight:600 }
[data-page="yield"] .ys-head .desc{ color:var(--mut); font-size:12.5px }
[data-page="yield"] .ys-raw{ font-size:10.5px; font-weight:600; letter-spacing:.5px; color:var(--on-color); background:var(--unk); border-radius:4px; padding:2px 9px }
[data-page="yield"] .ys-fleet{ margin-left:auto; color:var(--mut); font-size:12px }
[data-page="yield"] .ys-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:12px 0 6px }
@media (max-width:720px){
  [data-page="yield"] .ys-grid{ grid-template-columns:1fr }
}
[data-page="yield"] .ys-card{ border:1px solid var(--line); border-radius:4px; padding:12px 14px; background:var(--panel2) }
[data-page="yield"] .ys-card h4{ margin:0 0 8px; font-size:11px; color:var(--mut); font-weight:600; text-transform:uppercase; letter-spacing:.5px }
[data-page="yield"] .ys-big{ font-size:30px; font-weight:600; line-height:1; font-variant-numeric:tabular-nums }
[data-page="yield"] .ys-kv{ font-size:12.5px; margin-top:7px; color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="yield"] .ys-kv b{ font-variant-numeric:tabular-nums }
[data-page="yield"] .ys-warn{ color:var(--unk); font-size:11.5px; margin-top:6px }
[data-page="yield"] .chip{ display:inline-block; font-size:11px; padding:1px 8px; margin:3px 5px 0 0; border-radius:4px; background:var(--panel); border:1px solid var(--line); color:var(--fg); font-variant-numeric:tabular-nums }
[data-page="yield"] table.ysm{ width:100%; border-collapse:collapse; font-size:12.5px; margin-top:4px }
[data-page="yield"] table.ysm th, [data-page="yield"] table.ysm td{ padding:6px 10px; border-bottom:1px solid var(--line); text-align:left }
[data-page="yield"] table.ysm th{ color:var(--mut); font-weight:600; font-size:10.5px; text-transform:uppercase; letter-spacing:.4px }
[data-page="yield"] table.ysm td.num, [data-page="yield"] table.ysm th.num{ text-align:right; font-variant-numeric:tabular-nums }
[data-page="yield"] table.ysm tr:last-child td{ border-bottom:none }
[data-page="yield"] .ys-note{ color:var(--mut); font-size:11.5px; margin-top:9px }
 

 






 
.vdot{ display:inline-block; width:8px; height:8px; margin-right:6px; vertical-align:1px; flex:none }
.vsym{ margin-right:3px; font-size:.8em; vertical-align:1px }
[data-page="yield"] .pos, [data-page="yield"] .neg{ color:var(--fg) }
[data-page="yield"] .pos .vsym{ color:var(--good) }
[data-page="yield"] .neg .vsym{ color:var(--bad) }
[data-page="yield"] .metchip{ color:var(--fg) }


[data-page="yield"] .obar, [data-page="yield"] .ybar{ display:block }
[data-page="yield"] .obar i{ background:var(--bar-neutral) }
 
[data-page="availability"] .row .util, [data-page="utilization"] .row .util{ white-space:nowrap }
[data-page="availability"] .row .util .vdot, [data-page="utilization"] .row .util .vdot{ margin-right:4px }

 
[data-page="monthly"] main, [data-page="availability"] main, [data-page="utilization"] main,
[data-page="downtime"] main, [data-page="pm"] main, [data-page="yield"] main{ max-width:1560px }
[data-page="yield"] .product-switch{ max-width:1560px }

 
[data-page="monthly"] h1, [data-page="downtime"] h1, [data-page="pm"] .pm-head h1{
  font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0 }
[data-page="availability"] h2.sec, [data-page="utilization"] h2.sec, [data-page="yield"] h2.sec{
  font-size:var(--fs-title); font-weight:600; color:var(--fg); text-transform:none; letter-spacing:0 }
[data-page="availability"] .avleg .hd, [data-page="utilization"] .rwleg .hd, [data-page="pm"] .pm-zbar .zn,
[data-page="pm"] table.pm-tbl th, [data-page="pm"] .pm-sub-h, [data-page="pm"] .pm-steps th,
[data-page="pm"] .pm-fccard .hd, [data-page="pm"] .pm-sec > h2, [data-page="pm"] .pm-tchip, [data-page="pm"] .pm-zchip,
[data-page="yield"] table.sb th, [data-page="yield"] .ys-card h4, [data-page="yield"] table.ysm th,
[data-page="yield"] .kchip .k, [data-page="yield"] .tag, [data-page="yield"] .ys-raw,
[data-page="monthly"] .demotag, [data-page="monthly"] .parttag, [data-page="downtime"] .demotag, [data-page="downtime"] .ai{
  text-transform:none; letter-spacing:0 }
[data-page="yield"] .ys-mh{ font-size:11px; color:var(--mut); font-weight:600; margin:14px 0 4px }

 
[data-page="monthly"] .demotag, [data-page="monthly"] .parttag, [data-page="monthly"] .cov,
[data-page="downtime"] .demotag, [data-page="downtime"] .flag, [data-page="downtime"] .ai,
[data-page="utilization"] .note code, [data-page="utilization"] .ptag, [data-page="availability"] .ptag,
[data-page="pm"] .pm-tchip, [data-page="pm"] .pm-zbar .zc, [data-page="pm"] .pm-bkchip, [data-page="pm"] .pm-areachip,
[data-page="pm"] .pm-zchip, [data-page="yield"] .tag, [data-page="yield"] .ys-raw, [data-page="yield"] .chip,
[data-page="yield"] .board-main details.skip code, [data-page="yield"] b.toggle{ border-radius:2px }
[data-page="yield"] .ys-raw{ background:transparent; color:var(--fg); border:1px solid var(--unk) }
[data-page="monthly"] .seg, [data-page="monthly"] a.pbtn, [data-page="availability"] .ctl input[type=date],
[data-page="availability"] .ctl input[type=number], [data-page="availability"] .ctl button,
[data-page="availability"] .tag-toggle, [data-page="availability"] .tag-toggle a,
[data-page="utilization"] .ctl input[type=date], [data-page="utilization"] .ctl input[type=number],
[data-page="utilization"] .ctl button, [data-page="utilization"] .tag-toggle, [data-page="utilization"] .tag-toggle a,
[data-page="utilization"] .au .lnk, [data-page="downtime"] .chips a, [data-page="downtime"] .rng select,
[data-page="pm"] .pm-back, [data-page="pm"] .pm-wchip, [data-page="yield"] a.toggle{ border-radius:3px }
[data-page="monthly"] .tabs a{ border-radius:3px 3px 0 0 }

 
[data-page="monthly"] .seg a.on, [data-page="monthly"] .tabs a.on{ background:var(--fg); color:var(--panel); font-weight:600 }
[data-page="downtime"] .chips a.on{ background:var(--fg); border-color:var(--fg); color:var(--panel); font-weight:600 }
[data-page="downtime"] .chips a:active, [data-page="pm"] .pm-wchip:active{ background:var(--line) }
[data-page="pm"] .pm-wchip.on{ color:var(--fg); font-weight:600; background:var(--panel2); border-color:var(--fg) }

 
[data-page="monthly"] a.stn, [data-page="yield"] .cta, [data-page="downtime"] .board-main details.twin summary{
  color:var(--fg); text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="monthly"] a.stn .board-ic{ margin-left:2px }

 
[data-page="monthly"] .demotag, [data-page="downtime"] .demotag, [data-page="monthly"] .parttag,
[data-page="monthly"] .cov.zero, [data-page="downtime"] .ai, [data-page="pm"] .pm-zchip,
[data-page="yield"] .tag.demo{ color:var(--fg) }
[data-page="availability"] .fallback{ color:var(--fg) }
[data-page="utilization"] .headline .big.unk{ color:var(--fg) }
[data-page="utilization"] .au-erwline.inert{ color:var(--fg); font-weight:600 }
[data-page="utilization"] .au .demotag{ font-size:10px; padding:1px 6px; border-radius:2px; border:1px solid var(--unk); color:var(--fg) }
[data-page="availability"] .note.off, [data-page="utilization"] .note.off{ color:var(--fg) }
[data-page="availability"] .band-cap .cov, [data-page="utilization"] .band-cap .cov,
[data-page="downtime"] .rng .capn, [data-page="downtime"] .mixed, [data-page="yield"] .ys-warn{ color:var(--fg) }
[data-page="utilization"] .au-erwline.inert::before, [data-page="availability"] .note.off::before,
[data-page="utilization"] .note.off::before,
[data-page="availability"] .band-cap .cov::before, [data-page="utilization"] .band-cap .cov::before,
[data-page="downtime"] .rng .capn::before, [data-page="downtime"] .mixed::before, [data-page="yield"] .ys-warn::before{
  content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
[data-page="availability"] .err, [data-page="utilization"] .err, [data-page="yield"] .err,
[data-page="machine"] .err{
  background:var(--panel); border:1px solid var(--line); border-radius:4px;
  color:var(--fg); padding:12px 16px; margin-bottom:18px }
[data-page="availability"] .err::before, [data-page="utilization"] .err::before, [data-page="yield"] .err::before,
[data-page="machine"] .err::before{
  content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--bad) }
[data-page="yield"] .badge.snapshot{ font-size:11px; padding:2px 8px; border-radius:2px; border:1px solid var(--src-snapshot); color:var(--fg) }
[data-page="pm"] .pm-srcbanner .pin{ color:var(--fg) }
[data-page="pm"] .pm-off{ color:var(--fg) }
[data-page="pm"] .pm-unavail{ color:var(--fg) }
[data-page="pm"] .pm-off::before, [data-page="pm"] .pm-unavail::before{
  content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
 
[data-page="pm"] .pm-ownrow.unassigned .who, [data-page="pm"] table.pm-pptbl tr.unassigned td:first-child{ color:var(--fg); font-weight:600 }
[data-page="pm"] .pm-ownrow.unassigned .who::before, [data-page="pm"] table.pm-pptbl tr.unassigned td:first-child::before{
  content:""; display:inline-block; width:8px; height:8px; margin-right:6px; vertical-align:1px; background:var(--unk) }
 
[data-page="pm"] .pm-age1, [data-page="pm"] .pm-age2, [data-page="pm"] .pm-age3, [data-page="pm"] .pm-age4{ color:var(--fg) }
[data-page="pm"] td.pm-age1::before, [data-page="pm"] td.pm-age2::before, [data-page="pm"] td.pm-age3::before, [data-page="pm"] td.pm-age4::before{
  content:""; display:inline-block; width:8px; height:8px; margin-right:6px; vertical-align:1px }
[data-page="pm"] td.pm-age1::before{ background:var(--pm-age1) }
[data-page="pm"] td.pm-age2::before{ background:var(--pm-age2) }
[data-page="pm"] td.pm-age3::before{ background:var(--pm-age3) }
[data-page="pm"] td.pm-age4::before{ background:var(--pm-age4) }
 
[data-page="pm"] .pm-areachip.pm-a-za, [data-page="pm"] .pm-areachip.pm-a-zb, [data-page="pm"] .pm-areachip.pm-a-zc,
[data-page="pm"] .pm-areachip.pm-a-zd{ color:var(--fg) }

[data-page="pm"] .pm-bar .s3{ color:var(--fg) }

 
[data-page="pm"] .pm-zbar .zctl{ position:static; top:auto; right:auto; z-index:auto }
[data-page="yield"] .kchip{ cursor:auto; font-weight:400 }
[data-page="availability"] .legend, [data-page="utilization"] .legend{ margin:0; font-size:inherit }

 
.help{ position:relative; display:inline-flex; align-items:center; justify-content:center; width:14px; height:14px;
  border-radius:50%; border:1px solid var(--mut); color:var(--mut); font-size:0; font-weight:600;
  font-style:normal; line-height:1; cursor:help; vertical-align:1px }
.help::before{ content:"i"; font-size:10px }
.help .tip{ display:none; position:absolute; z-index:40; top:19px; left:50%; transform:translateX(-50%); width:300px;
  background:var(--fg); color:var(--bg); font-size:11.5px; font-weight:400; line-height:1.55; padding:8px 11px;
  border-radius:4px; text-align:left; white-space:normal; text-transform:none; letter-spacing:0 }
.help:hover .tip, .help:focus .tip{ display:block }
.help .tip.r{ left:auto; right:-8px; transform:none }
.help:hover, .help:focus-visible{ color:var(--fg); border-color:var(--fg) }

 
[data-page="downtime"] .board-main details > summary, [data-page="yield"] .board-main details > summary{ list-style:none }
[data-page="downtime"] .board-main details > summary::-webkit-details-marker, [data-page="yield"] .board-main details > summary::-webkit-details-marker{ display:none }
[data-page="downtime"] .board-main details > summary::before, [data-page="yield"] .board-main details > summary::before{
  content:""; display:inline-block; width:.8em; height:.8em; margin-right:6px; vertical-align:-.05em; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat }
[data-page="downtime"] .board-main details[open] > summary::before, [data-page="yield"] .board-main details[open] > summary::before{ transform:rotate(90deg) }

 
@media print{
  [data-page="monthly"] .board-nav{ display:none !important }
  [data-page="monthly"] .board-main{ max-width:none; padding:0 }
}

 
[data-ui="2"][data-page="monthly"] .card, [data-ui="2"][data-page="monthly"] .note, [data-ui="2"][data-page="monthly"] .foot,
[data-ui="2"][data-page="monthly"] .smc, [data-ui="2"][data-page="availability"] .coarse, [data-ui="2"][data-page="availability"] .ctl,
[data-ui="2"][data-page="utilization"] .coarse, [data-ui="2"][data-page="utilization"] .ctl, [data-ui="2"][data-page="utilization"] .au .chip,
[data-ui="2"][data-page="downtime"] .card, [data-ui="2"][data-page="downtime"] .note, [data-ui="2"][data-page="downtime"] .kpi,
[data-ui="2"][data-page="downtime"] .foot, [data-ui="2"][data-page="pm"] .pm-sec, [data-ui="2"][data-page="pm"] .pm-fccard,
[data-ui="2"][data-page="pm"] .pm-smcell, [data-ui="2"][data-page="pm"] .pm-owntotal, [data-ui="2"][data-page="pm"] .pm-alert,
[data-ui="2"][data-page="pm"] .pm-drill, [data-ui="2"][data-page="yield"] .anchor, [data-ui="2"][data-page="yield"] .qk-note,
[data-ui="2"][data-page="yield"] .kchip, [data-ui="2"][data-page="yield"] .ys, [data-ui="2"][data-page="yield"] .ys-card{
  background:transparent; border:0; border-top:1px solid var(--line2); border-radius:0; box-shadow:none }
 
[data-ui="2"][data-page="monthly"] .brick, [data-ui="2"][data-page="monthly"] .deg, [data-ui="2"][data-page="downtime"] .deg{
  background:transparent; border-top:0; border-right:0; border-bottom:0; border-radius:0 }
 
[data-ui="2"][data-page="availability"] .row, [data-ui="2"][data-page="utilization"] .row{
  background:transparent; border:0; border-bottom:1px solid var(--line); border-radius:0; margin-bottom:0 }
[data-ui="2"][data-page="availability"] .row:hover, [data-ui="2"][data-page="utilization"] .row:hover{ background:var(--panel2) }
[data-ui="2"][data-page="yield"] table.sb, [data-ui="2"][data-page="pm"] .pm-tblwrap{ border-radius:0 }
[data-ui="2"][data-page="yield"] table.sb{ background:transparent; border-left:0; border-right:0 }
[data-ui="2"][data-page="yield"] table.sb th, [data-ui="2"][data-page="pm"] table.pm-tbl th{ background:var(--bg) }
[data-ui="2"][data-page="monthly"] thead th,
[data-ui="2"][data-page="monthly"] .tw.stk td.cls,
[data-ui="2"][data-page="monthly"] .tw.stk thead th.cls,
[data-ui="2"][data-page="downtime"] thead th{ background:var(--bg) }
[data-ui="2"][data-page="monthly"] .sub, [data-ui="2"][data-page="monthly"] .foot, [data-ui="2"][data-page="downtime"] .sub,
[data-ui="2"][data-page="downtime"] .foot, [data-ui="2"][data-page="yield"] .intro, [data-ui="2"][data-page="pm"] .pm-secnote,
[data-ui="2"][data-page="pm"] .pm-foot, [data-ui="2"][data-page="availability"] .note, [data-ui="2"][data-page="utilization"] .note{
  font-size:var(--fs-xs); color:var(--mut) }
[data-ui="2"][data-page="availability"] .note.off, [data-ui="2"][data-page="utilization"] .note.off{ color:var(--fg) }

 
[data-density="projector"][data-page="monthly"], [data-density="projector"][data-page="availability"],
[data-density="projector"][data-page="utilization"], [data-density="projector"][data-page="downtime"],
[data-density="projector"][data-page="pm"], [data-density="projector"][data-page="yield"]{ --k:1; --kr:1; --kn:1 }
[data-density="projector"][data-page="monthly"] .board-main, [data-density="projector"][data-page="availability"] .board-main,
[data-density="projector"][data-page="utilization"] .board-main, [data-density="projector"][data-page="downtime"] .board-main,
[data-density="projector"][data-page="pm"] .board-main, [data-density="projector"][data-page="yield"] .board-main{ zoom:1.25 }
 

 







.tl{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:18px 20px }
.tl .tl-head{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:14px }
.tl .tl-head .eid{ font-size:17px; font-weight:600 }
.tl .tl-head .desc{ color:var(--mut) }
 
.tl .tl-head .util{ margin-left:auto; font-size:17px; font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap }
.tl .tl-head .meta{ width:100%; color:var(--mut); font-size:12px }
 
.tl .tl-head .meta .cov{ color:var(--fg) }
.tl .tl-head .meta .cov::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
.tl .tl-bar{ display:flex; height:30px; border-radius:4px; overflow:hidden; background:var(--track); border:1px solid var(--line) }
.tl .tl-bar .seg{ height:100%; border-right:1px solid var(--tl-seg-edge) }
.tl .tl-bar .seg.low{ background-image:repeating-linear-gradient(45deg,transparent,transparent 4px,var(--low-stripe) 4px,var(--low-stripe) 8px) }
 
.tl .tl-bar.rw{ display:block; position:relative; background:var(--rw-off) }
.tl .tl-bar.rw .rwon{ position:absolute; top:0; height:100%; background:var(--rw-on); z-index:0 }
.tl .tl-bar.rw .rwunc{ position:absolute; top:0; height:100%; z-index:2; background-color:var(--panel);
  background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
.tl .tl-bar.rw .seg{ position:absolute; top:0; border-right:0; z-index:1 }
.tl .tl-bar.rw .seg.off{ opacity:.28 }
.tl .tl-bar.rw .seg.rwoff{ background-color:var(--rw-off); opacity:1 }
.tl .tl-bar.rw .rwtick{ position:absolute; top:0; height:100%; width:0; border-left:1px dashed var(--mut); opacity:.75; z-index:3 }
.tl .tl-rwline{ color:var(--mut); font-size:11.5px; margin-top:6px }
.tl .tl-axis{ display:flex; justify-content:space-between; color:var(--mut); font-size:11px; margin-top:5px; font-variant-numeric:tabular-nums }
 
.tl .tl-legend{ display:flex; flex-wrap:wrap; gap:10px 16px; margin:12px 0; font-size:11.5px; color:var(--mut) }
.tl .tl-legend .sw{ display:inline-block; width:10px; height:10px; margin-right:6px; vertical-align:-1px }
.tl .tl-legend .sw.unc{ background-color:var(--panel); border:1px solid var(--line);
  background-image:repeating-linear-gradient(45deg, var(--line) 0 1px, transparent 1px 3px) }
.tl .tl-legend .sw.on{ background-color:var(--rw-on); border:1px solid var(--line) }
.tl .tl-legend .sw.low{ background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,var(--low-stripe) 3px,var(--low-stripe) 6px) }
.tl .tl-legend .sw.off{ opacity:.28 }
.tl .stops{ margin-top:8px }
.tl .stops h4{ font-size:12px; color:var(--mut); font-weight:600; margin:6px 0 8px; text-transform:none; letter-spacing:0 }
.tl .stop{ display:flex; align-items:center; gap:9px; padding:6px 10px; font-size:12.5px;
  border:1px solid var(--line); border-radius:4px; margin-bottom:5px; background:var(--track) }
.tl .stop b{ font-weight:600 }
 
.tl .stop .dot{ width:9px; height:9px; flex:0 0 auto }
 
.tl .stop .dur{ margin-left:auto; color:var(--fg); font-variant-numeric:tabular-nums }
.tl .stop .future{ color:var(--mut); font-size:11.5px }
 
[data-ui="2"] .tl{ background:transparent; border:0; border-top:1px solid var(--line2); border-radius:0; padding:14px 0 }
[data-ui="2"] .tl .stop{ background:transparent; border:0; border-bottom:1px solid var(--line); border-radius:0; margin-bottom:0 }



[data-page="machine"] .crumb{ font-size:12.5px; color:var(--mut); margin-bottom:6px }
[data-page="machine"] .crumb a, [data-page="machine"] .mc-how a, [data-page="machine"] .mc-none .d a{
  color:var(--fg); text-decoration:underline; text-decoration-color:var(--line2) }
[data-page="machine"] .crumb a, [data-page="machine"] .mc-none .d a{ font-weight:600 }
[data-page="machine"] .mc-title{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0; margin:2px 0 }
[data-page="machine"] .mc-csub{ color:var(--mut); font-size:12px; font-family:ui-monospace,monospace }
 
[data-page="machine"] .mc-seat{ font-size:10.5px; font-weight:600; letter-spacing:0; padding:2px 7px; border-radius:2px;
  border:1px solid var(--mut); color:var(--fg); margin-left:7px; vertical-align:2px }
[data-page="machine"] .mc-how{ color:var(--mut); font-size:11.5px; margin:6px 2px 14px }
 
[data-page="machine"] .mc-none{ background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--unk);
  border-radius:4px; padding:14px 17px; margin:10px 0 }
[data-page="machine"] .mc-none .k{ font-size:14px; font-weight:600; color:var(--fg) }
[data-page="machine"] .mc-none .d{ color:var(--mut); font-size:12.5px; margin-top:5px }
[data-ui="2"][data-page="machine"] .mc-none{ background:transparent; border-top:0; border-right:0; border-bottom:0; border-radius:0 }

 


:root[data-page="health"]{ --mh-wait:#9ca3af }
[data-page="health"] .mh-head{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin:2px 0 4px }
[data-page="health"] .mh-head h1{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0; margin:0 }
[data-page="health"] .mh-head .sub{ color:var(--mut); font-size:13.5px }
[data-page="health"] .mh-ctl{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:8px 2px 16px }
[data-page="health"] .mh-back{ font-size:13px; color:var(--mut); text-decoration:none; border:1px solid var(--line); border-radius:3px; padding:4px 12px }
[data-page="health"] .mh-back:hover{ border-color:var(--hover); color:var(--fg) }
 
[data-page="health"] .mh-wchip{ font-size:12px; color:var(--mut); padding:4px 11px; border-radius:2px;
  border:1px solid var(--line); white-space:nowrap }
 
[data-page="health"] .help{ margin-left:5px }
[data-page="health"] .help.mh-dash{ font-size:10px; border-color:var(--line); margin-left:0 }
[data-page="health"] .help.mh-dash::before, [data-page="health"] .help.mh-oc::before{ content:none }
[data-page="health"] .help.mh-oc{ width:auto; height:auto; border:none; border-radius:0; padding:0; margin-left:4px;
  font-size:11px; font-weight:400; color:var(--mut); vertical-align:baseline; white-space:nowrap }
 
[data-page="health"] .mh-sec{ border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:18px 20px; margin:0 0 18px }
[data-page="health"] .mh-sec > h2{ font-size:var(--fs-title); font-weight:600; letter-spacing:0; margin:0 0 4px }
[data-page="health"] .mh-sec > h2 small{ font-weight:600; color:var(--mut); font-size:12px; margin-left:8px }
[data-page="health"] .mh-dl{ font-weight:600; color:var(--mut); font-size:11.5px; margin-left:10px; text-decoration:none }
[data-page="health"] .mh-dl:hover{ color:var(--fg); text-decoration:underline }
[data-page="health"] .mh-secnote{ color:var(--mut); font-size:12px; margin:0 0 14px }
 
[data-page="health"] .mh-hero{ display:flex; align-items:baseline; gap:16px; flex-wrap:wrap; margin:6px 0 4px }
[data-page="health"] .mh-hero .big{ font-size:58px; font-weight:600; line-height:1; font-variant-numeric:tabular-nums }
[data-page="health"] .mh-hero .big small{ font-size:20px; color:var(--mut); font-weight:600; margin-left:5px }
[data-page="health"] .mh-hero .side{ color:var(--mut); font-size:13px; line-height:1.5 }
[data-page="health"] .mh-hero .side .p90{ color:var(--fg); font-weight:600 }
[data-page="health"] .mh-ongoing, [data-page="health"] .mh-ocline{ font-size:12.5px; color:var(--mut) }
[data-page="health"] .mh-ongoing{ margin:2px 0 14px }
[data-page="health"] .mh-ocline{ margin:2px 0 12px }
[data-page="health"] .mh-band-lbl{ font-size:12px; color:var(--mut); text-transform:none; letter-spacing:0; margin:14px 0 6px; display:flex; align-items:center }
[data-page="health"] .mh-band-lbl.mh-top5{ margin-top:16px }
[data-page="health"] .mh-band{ display:flex; height:24px; border-radius:4px; overflow:hidden; background:var(--track); border:1px solid var(--line) }
[data-page="health"] .mh-band > span{ height:100% }
 
[data-page="health"] .mh-band .upt{ background-image:repeating-linear-gradient(45deg, var(--tex-stripe) 0 3px, transparent 3px 7px) }
[data-page="health"] .mh-legend{ display:flex; gap:12px; flex-wrap:wrap; margin:9px 0 4px; font-size:11.5px; color:var(--mut) }
[data-page="health"] .mh-legend .li{ display:inline-flex; align-items:center; gap:5px; white-space:nowrap; color:var(--fg) }
[data-page="health"] .mh-legend .d{ width:11px; height:11px; display:inline-block; flex:none }
[data-page="health"] .mh-legend .d.upt{ background-image:repeating-linear-gradient(45deg, var(--tex-stripe) 0 2px, transparent 2px 4px) }
[data-page="health"] .mh-legend b{ font-weight:600; font-variant-numeric:tabular-nums; color:var(--fg) }
[data-page="health"] .mh-legend .sh{ color:var(--mut); font-weight:400 }
 
[data-page="health"] .mh-slow{ display:flex; flex-direction:column; gap:8px; margin:6px 0 2px }
[data-page="health"] .mh-slow-row{ display:grid; grid-template-columns:96px 1fr 62px; gap:10px; align-items:center; font-size:12.5px }
[data-page="health"] .mh-slow-row .no{ font-weight:600; white-space:nowrap }
 
[data-page="health"] .mh-slow-row .no a{ color:var(--fg); text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="health"] .mh-mini{ display:flex; height:12px; border-radius:4px; overflow:hidden; background:var(--track); border:1px solid var(--line) }
[data-page="health"] .mh-mini > span{ height:100% }
[data-page="health"] .mh-mini .upt{ background-image:repeating-linear-gradient(45deg, var(--tex-stripe) 0 2px, transparent 2px 4px) }
[data-page="health"] .mh-slow-row .lead{ text-align:right; font-variant-numeric:tabular-nums; color:var(--fg); font-weight:600 }
 
[data-page="health"] .mh-cov{ display:flex; gap:6px; flex-wrap:wrap; margin:2px 0 12px }
[data-page="health"] .mh-covchip{ font-size:11px; padding:2px 9px; border-radius:2px; border:1px solid var(--line); color:var(--fg) }
[data-page="health"] .mh-covchip.warn{ border-color:var(--warn) }
[data-page="health"] .mh-scatter{ display:flex; gap:18px; flex-wrap:wrap; align-items:flex-start }
[data-page="health"] .mh-svgwrap{ flex:1 1 420px; min-width:0; overflow-x:auto }
[data-page="health"] .mh-scatter svg{ width:100%; height:auto; max-width:660px; display:block }
[data-page="health"] .mh-scatter .axl{ fill:var(--mut); font-size:11px }
[data-page="health"] .mh-scatter .axt{ fill:var(--mut); font-size:9.5px; font-variant-numeric:tabular-nums }
[data-page="health"] .mh-scatter-empty{ color:var(--mut); font-size:13px; font-style:italic; padding:20px 2px }
[data-page="health"] .mh-scatter-side{ flex:0 0 auto; font-size:12px; color:var(--mut); line-height:1.7; max-width:220px }
[data-page="health"] .mh-scatter-side b{ font-weight:600 }
 
[data-page="health"] .mh-tblwrap{ overflow-x:auto; border:1px solid var(--line); border-radius:4px; margin-top:6px }
[data-page="health"] table.mh-tbl{ width:100%; border-collapse:collapse; font-size:12.5px }
[data-page="health"] table.mh-tbl th{ background:var(--panel2); color:var(--mut); font-size:10px; font-weight:600; text-transform:none;
  letter-spacing:0; padding:7px 10px; white-space:nowrap; text-align:right }
[data-page="health"] table.mh-tbl th:nth-child(1), [data-page="health"] table.mh-tbl th:nth-child(2),
[data-page="health"] table.mh-tbl th:nth-child(3){ text-align:left }
[data-page="health"] table.mh-tbl td{ padding:6px 10px; border-top:1px solid var(--line); text-align:right;
  font-variant-numeric:tabular-nums; white-space:nowrap }
[data-page="health"] table.mh-tbl td:nth-child(1), [data-page="health"] table.mh-tbl td:nth-child(2),
[data-page="health"] table.mh-tbl td:nth-child(3){ text-align:left }
[data-page="health"] table.mh-tbl td.mut{ color:var(--mut) }
[data-page="health"] table.mh-tbl tr:hover td{ background:var(--panel2) }
[data-page="health"] .mh-ss{ display:inline-block; font-size:9px; font-weight:600; letter-spacing:0; padding:0 6px;
  border-radius:2px; border:1px solid var(--warn); color:var(--fg); margin-left:6px; cursor:help }


[data-page="health"] .mh-dlt{ font-weight:600; font-size:11.5px; margin-left:4px; cursor:help }
[data-page="health"] .mh-dlt.good{ color:var(--good) }
[data-page="health"] .mh-dlt.bad{ color:var(--bad) }
[data-page="health"] .mh-dlt.flat{ color:var(--mut) }
 
[data-page="health"] .mh-barc{ position:relative }
[data-page="health"] .mh-barc > i{ position:absolute; left:0; top:2px; bottom:2px; background:var(--bad); opacity:.14; z-index:0 }
[data-page="health"] .mh-barc > span{ position:relative; z-index:1 }
 
[data-page="health"] tr.mh-hl > td{ animation:eq-rowflash 1.2s ease-out }
[data-page="health"] circle.mh-hl{ animation:mh-ringflash 1.2s ease-out }
@keyframes mh-ringflash{ 0%{ stroke-width:5 } 100%{ stroke-width:2.5 } }
 
[data-page="health"] .mh-srcbanner{ display:flex; gap:10px; align-items:flex-start; margin:0 0 16px; padding:10px 15px;
  border:1px solid var(--unk); border-radius:4px; background:var(--tint-warn); font-size:12.5px }
[data-page="health"] .mh-srcbanner .pin{ font-weight:600; color:var(--fg); white-space:nowrap }
[data-page="health"] .mh-srcbanner .pin::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
[data-page="health"] .mh-srcbanner.snap{ border-color:var(--src-snapshot); background:var(--panel) }
[data-page="health"] .mh-off{ font-size:13px; color:var(--fg); padding:14px 16px; border:1px dashed var(--line);
  border-radius:4px; background:var(--panel2); line-height:1.6; margin-bottom:14px }
 
[data-page="health"] .mh-caveat{ margin:0 0 14px; padding:8px 13px; border-radius:4px; font-size:12px; color:var(--fg);
  background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--unk) }
[data-page="health"] .mh-foot{ color:var(--mut); font-size:11.5px; margin:6px 2px 0; line-height:1.65 }
[data-page="health"] .mh-none{ color:var(--mut); font-size:13px; font-style:italic }
[data-page="health"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:26px 2px }
[data-page="health"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:wrsp .8s linear infinite }
[data-page="health"] .mh-unavail{ font-size:15px; font-weight:600; color:var(--fg); margin:18px 2px 6px }
[data-page="health"] .mh-unavail-hint{ color:var(--mut); font-size:12px; margin:0 2px }
[data-page="health"] .mh-off::before, [data-page="health"] .mh-unavail::before{
  content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
@media (prefers-reduced-motion: reduce){
  [data-page="health"] tr.mh-hl > td, [data-page="health"] circle.mh-hl, [data-page="health"] .spin{ animation:none }
}
 
[data-ui="2"][data-page="health"] .mh-sec{ background:transparent; border:0; border-top:1px solid var(--line2); border-radius:0; padding:14px 0; box-shadow:none }
[data-ui="2"][data-page="health"] .mh-tblwrap{ border-radius:0; border-left:0; border-right:0 }
[data-ui="2"][data-page="health"] table.mh-tbl th{ background:var(--bg) }
[data-ui="2"][data-page="health"] .mh-caveat{ background:transparent; border-top:0; border-right:0; border-bottom:0; border-radius:0 }
[data-ui="2"][data-page="health"] .mh-secnote, [data-ui="2"][data-page="health"] .mh-foot{ font-size:var(--fs-xs); color:var(--mut) }

 
[data-density="projector"][data-page="machine"], [data-density="projector"][data-page="health"]{ --k:1; --kr:1; --kn:1 }
[data-density="projector"][data-page="machine"] .board-main, [data-density="projector"][data-page="health"] .board-main{ zoom:1.25 }
 
 





 
[data-page="dispatch"] .dsp-head{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin:2px 0 4px }
[data-page="dispatch"] .dsp-head h1{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0; margin:0 }
[data-page="dispatch"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:30px 2px }
[data-page="dispatch"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:wrsp .8s linear infinite }
@media (prefers-reduced-motion: reduce){ [data-page="dispatch"] .spin{ animation:none } }
 
[data-page="dispatch"] .dsp-banner{ display:flex; align-items:center; gap:10px; margin:0 0 14px; padding:8px 12px; border:1px solid var(--unk);
  border-radius:2px; color:var(--fg); font-weight:600; font-size:13px; flex-wrap:wrap }
[data-page="dispatch"] .dsp-banner .why{ font-weight:400; color:var(--mut); font-size:12px }
[data-page="dispatch"] .kd-meta{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; color:var(--mut); font-size:12px; margin:0 2px 12px }
[data-page="dispatch"] .kd-chip{ border:1px solid var(--line); border-radius:2px; padding:2px 7px; background:var(--panel); white-space:nowrap }
 
[data-page="dispatch"] .kd-chip.warn{ border-color:var(--warn); color:var(--fg) }
[data-page="dispatch"] .kd-pairs{ border:1px solid var(--line); border-radius:4px; background:var(--panel); margin:0 0 14px; padding:10px 14px }
[data-page="dispatch"] .kd-pairs h2{ font-size:12px; font-weight:600; color:var(--mut); margin:0 0 5px }
[data-page="dispatch"] .kd-pair{ font-size:12.5px; line-height:1.65 }
[data-page="dispatch"] .kd-pair.fallback{ color:var(--mut); margin-top:4px }
[data-page="dispatch"] .kd-note{ color:var(--mut); font-size:11.5px; line-height:1.6; margin:3px 2px 9px }
[data-page="dispatch"] .kd-frame{ border:1px solid var(--line); border-radius:4px; background:var(--panel); overflow:hidden }
[data-page="dispatch"] .kd-scroll{ height:min(70vh,720px); min-height:360px; overflow:auto }
[data-page="dispatch"] .kd-tbl{ min-width:980px }
[data-page="dispatch"] .kd-head, [data-page="dispatch"] .kd-row{ display:grid;
  grid-template-columns:12px minmax(210px,1.4fr) 105px 120px 100px 142px minmax(230px,1.7fr) 88px;
  align-items:center; column-gap:10px; padding:7px 13px; border-bottom:1px solid var(--line) }
[data-page="dispatch"] .kd-head{ position:sticky; top:0; z-index:4; background:var(--panel2); color:var(--mut); font-size:10.5px; font-weight:600 }
[data-page="dispatch"] .kd-row{ min-height:35px }
[data-page="dispatch"] .kd-row.first{ border-top:2px solid var(--line) }
[data-page="dispatch"] .kd-row .n{ text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap }
[data-page="dispatch"] .kd-row .station{ font-weight:600; min-width:0 }
[data-page="dispatch"] .kd-row .station small{ color:var(--mut); font-weight:400; margin-left:4px }
[data-page="dispatch"] .kd-row .why{ font-size:11.5px; line-height:1.45 }
[data-page="dispatch"] .kd-row .blank{ color:transparent }
 
[data-page="dispatch"] .kd-band{ align-self:stretch; margin:-7px 0; border-left:4px solid transparent }
[data-page="dispatch"] .b0 .kd-band{ border-color:var(--band-id0) }
[data-page="dispatch"] .b1 .kd-band{ border-color:var(--band-id1) }
[data-page="dispatch"] .b2 .kd-band{ border-color:var(--band-id2) }
[data-page="dispatch"] .b3 .kd-band{ border-color:var(--band-id3) }


[data-page="dispatch"] .kd-lamp{ display:inline-flex; gap:6px; align-items:center; font-size:var(--fs-xs); font-weight:600; color:var(--fg); white-space:nowrap }
[data-page="dispatch"] .kd-lamp::before{ content:""; display:inline-block; width:10px; height:10px; flex:none }
[data-page="dispatch"] .kd-lamp.need::before{ background:var(--bad) }
[data-page="dispatch"] .kd-lamp.lend::before{ background:var(--good) }
[data-page="dispatch"] .kd-lamp.down::before{ background:var(--mut) }
[data-page="dispatch"] .kd-lamp.na::before{ border:1px dashed var(--mut) }
[data-page="dispatch"] .kd-measured{ display:inline-flex; align-items:center; justify-content:flex-end; gap:3px }
[data-page="dispatch"] .help{ margin-left:5px }
[data-page="dispatch"] .kd-measured .help{ margin-left:0 }
[data-page="dispatch"] .kd-details{ border-bottom:1px solid var(--line); background:var(--track); padding:0 }
[data-page="dispatch"] .kd-details summary{ cursor:pointer; color:var(--mut); font-size:11.5px; font-weight:600; padding:6px 13px 6px 25px; list-style:none }
[data-page="dispatch"] .kd-details summary::-webkit-details-marker{ display:none }
[data-page="dispatch"] .kd-details summary::before{ content:""; display:inline-block; width:.8em; height:.8em; margin:0 6px 0 -14px; vertical-align:-.05em; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat }
[data-page="dispatch"] .kd-details[open] summary::before{ transform:rotate(90deg) }
[data-page="dispatch"] .kd-details summary:hover{ color:var(--fg) }
[data-page="dispatch"] .kd-details[open] summary{ border-bottom:1px solid var(--line); background:var(--panel2) }
[data-page="dispatch"] .kd-v1{ background:var(--panel); padding:7px 10px 10px; min-width:920px }
[data-page="dispatch"] .kd-foot{ margin:16px 2px 0; color:var(--mut); font-size:11.5px; line-height:1.65 }
[data-page="dispatch"] .kd-foot p{ margin:2px 0 }
[data-page="dispatch"] .kd-unavail{ color:var(--fg); font-weight:600; padding:14px 2px }
[data-page="dispatch"] .kd-unavail::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
@media (max-width:760px){ [data-page="dispatch"] .kd-frame{ margin-right:-12px } [data-page="dispatch"] .kd-meta{ font-size:11.5px } }
 
[data-page="dispatch"] .dsp-r{ display:grid; grid-template-columns:230px 122px 78px 96px 116px 168px 140px; gap:12px; align-items:center;
  padding:9px 15px; border-bottom:1px solid var(--line); border-left:3px solid transparent }
[data-page="dispatch"] .dsp-r:last-child{ border-bottom:0 }
[data-page="dispatch"] .dsp-r.grp{ display:block; background:var(--panel2); padding:5px 15px; color:var(--mut); font-size:10.5px }
[data-ui="2"][data-page="dispatch"] .kd-details, [data-ui="2"][data-page="dispatch"] .kd-v1, [data-ui="2"][data-page="dispatch"] .dsp-r.grp{ background:transparent }
[data-ui="2"][data-page="dispatch"] .kd-details[open] summary{ background:var(--bg) }
[data-page="dispatch"] .dsp-r.pt{ opacity:.55 }
 
[data-page="dispatch"] .dsp-r.need{ border-left-color:var(--bad) }
@media (max-width:1100px){ [data-page="dispatch"] .dsp-r{ grid-template-columns:1fr 1fr; gap:6px } }
[data-page="dispatch"] .dsp-st{ min-width:0 }
[data-page="dispatch"] .dsp-st .nm{ font-weight:600; font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="dispatch"] .dsp-st .id{ color:var(--mut); font-size:10.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="dispatch"] .dsp-num{ font-variant-numeric:tabular-nums; font-size:13px; text-align:right; white-space:nowrap }
[data-page="dispatch"] .dsp-num b{ font-weight:600 }
[data-page="dispatch"] .dsp-num small{ color:var(--mut); font-size:10.5px }
[data-page="dispatch"] .dsp-mut{ color:var(--mut) }
[data-page="dispatch"] .dsp-why{ grid-column:1/-1; color:var(--mut); font-size:11.5px; line-height:1.55; margin:1px 0 0 }
[data-page="dispatch"] .dsp-r.need .dsp-why{ color:var(--fg) }



[data-page="dispatch"] .lamp{ display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:600; color:var(--fg); white-space:nowrap }
[data-page="dispatch"] .lamp::before{ content:""; display:inline-block; width:10px; height:10px; flex:none }
[data-page="dispatch"] .lamp .g{ font-size:11px; line-height:1 }
[data-page="dispatch"] .lamp.need::before{ background:var(--bad) }
[data-page="dispatch"] .lamp.lend::before{ background:var(--good) }
[data-page="dispatch"] .lamp.down::before{ background:var(--st-repair) }
[data-page="dispatch"] .lamp.none::before{ border:1px dashed var(--mut) }
 
[data-page="dispatch"] .chip{ display:inline-block; font-size:10px; font-weight:600; padding:1px 6px; border-radius:2px;
  border:1px solid var(--unk); color:var(--fg); background:transparent; margin-left:4px; white-space:nowrap }

 


:root[data-page="manpower"]{ --acc-n:#2563eb; --acc-o:#0d9488; --hatch:rgba(0,0,0,.13); --mp-strip:rgba(27,36,51,.55) }
@media (prefers-color-scheme: dark){
  :root[data-page="manpower"]:not([data-theme="light"]){ --acc-n:#5b8def; --acc-o:#2aa08c; --hatch:rgba(255,255,255,.15); --mp-strip:rgba(230,237,246,.55) }
}
:root[data-page="manpower"][data-theme="dark"]{ --acc-n:#5b8def; --acc-o:#2aa08c; --hatch:rgba(255,255,255,.15); --mp-strip:rgba(230,237,246,.55) }
[data-page="manpower"] h1{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0; margin:6px 0 2px }
[data-page="manpower"] h2{ font-size:15px; font-weight:600; margin:24px 0 8px }
[data-page="manpower"] b, [data-page="manpower"] th{ font-weight:600 }
[data-page="manpower"] .sub{ color:var(--mut); font-size:12.5px }
 
[data-page="manpower"] .cal{ background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--line); border-radius:4px;
  padding:7px 13px; margin:12px 0 8px; font-size:12.5px }
[data-page="manpower"] .fresh{ color:var(--mut); font-size:12px; margin:0 0 10px }
 
[data-page="manpower"] .fresh b.stale{ color:var(--fg) }
[data-page="manpower"] .fresh b.stale::before, [data-page="manpower"] .deg::before{
  content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
[data-page="manpower"] .bar-row{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin:10px 0 6px }
[data-page="manpower"] .bar-row .wt{ font-size:12.5px }
[data-page="manpower"] .bar-row .wn{ font-size:12px }
 
[data-page="manpower"] .seg{ display:inline-flex; border:1px solid var(--line); border-radius:3px; overflow:hidden }
[data-page="manpower"] .seg a{ padding:4px 12px; font-size:12.5px; text-decoration:none; color:var(--mut); background:var(--panel); border-right:1px solid var(--line) }
[data-page="manpower"] .seg a:last-child{ border-right:0 }
[data-page="manpower"] .seg a:hover{ background:var(--panel2); color:var(--fg) }
[data-page="manpower"] .seg a:active{ background:var(--line) }
[data-page="manpower"] .seg a.on{ background:var(--fg); color:var(--panel); font-weight:600 }
[data-page="manpower"] .lgd{ display:flex; gap:14px; flex-wrap:wrap; font-size:12px; color:var(--mut) }
[data-page="manpower"] .lgd i{ display:inline-block; width:22px; height:8px; border-radius:2px; vertical-align:middle; margin-right:5px }
[data-page="manpower"] .lgd i.n{ background:var(--acc-n) } [data-page="manpower"] .lgd i.o{ background:var(--acc-o) }
[data-page="manpower"] .lgd i.daily{ background:var(--mp-strip) }
[data-page="manpower"] .lgd i.hatch{ background:repeating-linear-gradient(45deg,transparent 0 3px,var(--hatch) 3px 5px) }
[data-page="manpower"] .card{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:0; margin:10px 0; overflow-x:auto }
[data-page="manpower"] table{ border-collapse:collapse; font-size:12.5px; width:100% }
[data-page="manpower"] th, [data-page="manpower"] td{ border-bottom:1px solid var(--line); padding:3px 8px; text-align:left; vertical-align:middle }
[data-page="manpower"] thead th{ background:var(--panel2); position:sticky; top:0; border-bottom:1px solid var(--line); white-space:nowrap }
[data-page="manpower"] td.no, [data-page="manpower"] th.no{ text-align:right; color:var(--mut); width:42px; font-variant-numeric:tabular-nums }
[data-page="manpower"] td.st{ min-width:300px }
[data-page="manpower"] td.st .zh{ color:var(--mut); font-size:11.5px; display:block }
[data-page="manpower"] td.st .eids{ display:block; margin-top:2px; color:var(--mut); font-size:10.5px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; white-space:normal; word-break:break-word }
[data-page="manpower"] td.st .eids.tail{ font-style:italic }
[data-page="manpower"] .tag{ font-size:10.5px; color:var(--mut); border:1px solid var(--line); border-radius:2px; padding:0 4px; margin-left:6px; white-space:nowrap }
[data-page="manpower"] td.pp{ width:330px; border-left:1px solid var(--line) }
[data-page="manpower"] td.tl{ width:220px }


[data-page="manpower"] td.no{ border-left:4px solid transparent }
[data-page="manpower"] tr.b0 td.no{ border-left-color:var(--band-edge0) } [data-page="manpower"] tr.b0 td{ background:var(--band0) }
[data-page="manpower"] tr.b1 td.no{ border-left-color:var(--band-edge1) } [data-page="manpower"] tr.b1 td{ background:var(--band1) }
[data-page="manpower"] tr.b2 td.no{ border-left-color:var(--band-edge2) } [data-page="manpower"] tr.b2 td{ background:var(--band2) }
[data-page="manpower"] tr.b3 td.no{ border-left-color:var(--band-edge3) } [data-page="manpower"] tr.b3 td{ background:var(--band3) }
[data-page="manpower"] .empty .mp-rerun{ margin-top:8px }
[data-page="manpower"] .foot > div + div{ margin-top:4px }
[data-page="manpower"] .foot .mp-ref{ margin-top:8px }
[data-page="manpower"] tr.gs td{ border-top:2px solid var(--line) }
 
[data-page="manpower"] .bars{ padding:5px 0 6px }
[data-page="manpower"] .bgrp{ margin-bottom:5px }
[data-page="manpower"] .bgl{ font-size:10.5px; color:var(--mut) }
[data-page="manpower"] .bar{ display:flex; align-items:center; gap:6px; margin-top:2px }
[data-page="manpower"] .bar .bl{ width:78px; font-size:11.5px; color:var(--mut); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
[data-page="manpower"] .bar .tk{ flex:1; height:9px; background:var(--track); border-radius:3px; position:relative }
[data-page="manpower"] .bar .tk i{ display:block; height:9px; border-radius:3px 0 0 3px;
  -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 9px),transparent); mask-image:linear-gradient(90deg,#000 calc(100% - 9px),transparent) }
[data-page="manpower"] .bar.n .tk i{ background:var(--acc-n) }
[data-page="manpower"] .bar.o .tk i{ background:var(--acc-o) }
[data-page="manpower"] .bar .bv{ width:46px; text-align:right; font-variant-numeric:tabular-nums; font-size:11.5px }
[data-page="manpower"] .bar .bv.z{ color:var(--mut) }
 
[data-page="manpower"] .nosig{ font-size:12px; color:var(--mut); padding:6px 0 8px }
[data-page="manpower"] .nosig b{ color:var(--fg); font-weight:600 }
[data-page="manpower"] .nosig b::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--unk) }
[data-page="manpower"] .nosig small{ display:block; font-size:11px; margin-top:2px; max-width:320px }
 
[data-page="manpower"] .strip{ display:flex; align-items:flex-end; gap:2px; height:34px; padding:4px 0 6px }
[data-page="manpower"] .strip span{ flex:1; min-width:3px; height:100%; display:flex; align-items:flex-end }
[data-page="manpower"] .strip span b{ display:block; width:100%; border-radius:2px 2px 0 0; background:var(--mp-strip) }
 
[data-page="manpower"] .strip span b.nul{ background:repeating-linear-gradient(45deg,transparent 0 3px,var(--hatch) 3px 5px); border-radius:2px }
[data-page="manpower"] .empty{ background:var(--panel); border:1px dashed var(--line); border-radius:4px; padding:26px; text-align:center; color:var(--mut) }
[data-page="manpower"] .deg{ color:var(--fg); font-size:12.5px; margin:6px 0 }
 
[data-page="manpower"] .foot{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:12px 16px; margin:12px 0; font-size:12.5px }
[data-page="manpower"] .foot ol{ margin:6px 0 0; padding-left:20px }
[data-page="manpower"] .foot li{ margin:3px 0 }
[data-page="manpower"] .foot table{ width:auto; margin:6px 18px 6px 0; display:inline-table }
[data-page="manpower"] .foot td, [data-page="manpower"] .foot th{ border-bottom:1px solid var(--line) }
[data-page="manpower"] .mut{ color:var(--mut) }
[data-page="manpower"] .mark{ font-family:monospace }
[data-page="manpower"] code{ background:var(--panel2); padding:1px 5px; border-radius:2px }

 
[data-ui="2"][data-page="dispatch"] .kd-pairs, [data-ui="2"][data-page="dispatch"] .kd-frame,
[data-ui="2"][data-page="manpower"] .card, [data-ui="2"][data-page="manpower"] .cal, [data-ui="2"][data-page="manpower"] .foot{
  background:transparent; border:0; border-top:1px solid var(--line2); border-radius:0; box-shadow:none }
[data-ui="2"][data-page="manpower"] .empty{ background:transparent; border-radius:0 }
[data-ui="2"][data-page="dispatch"] .kd-head, [data-ui="2"][data-page="manpower"] thead th{ background:var(--bg) }
 
[data-ui="2"][data-page="dispatch"] .kd-foot, [data-ui="2"][data-page="manpower"] .sub{ font-size:var(--fs-xs); color:var(--mut) }

 
[data-density="projector"][data-page="dispatch"], [data-density="projector"][data-page="manpower"]{ --k:1; --kr:1; --kn:1 }
[data-density="projector"][data-page="dispatch"] .board-main, [data-density="projector"][data-page="manpower"] .board-main{ zoom:1.25 }
 

 











:root[data-page="cost"]{ --b-one:#2563eb; --b-part:#1e7d4f; --b-unk:#8a94a6; --acc-n:#2563eb; --gapfg:#9aa7bb }
@media (prefers-color-scheme: dark){
  :root[data-page="cost"]:not([data-theme="light"]){ --b-one:#5b8def; --b-part:#36c47f; --b-unk:#6b7c95; --acc-n:#5b8def; --gapfg:#55657e }
}
:root[data-page="cost"][data-theme="dark"]{ --b-one:#5b8def; --b-part:#36c47f; --b-unk:#6b7c95; --acc-n:#5b8def; --gapfg:#55657e }
 
[data-page="cost"] .board-main > h1{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0; margin:2px 0 2px }
[data-page="cost"] h2{ font-size:var(--fs-title); font-weight:600; letter-spacing:0; margin:24px 0 6px }
[data-page="cost"] b{ font-weight:600 }
[data-page="cost"] .cal{ font-size:14px; max-width:1000px; margin:4px 0 2px }


[data-page="cost"] .tabs{ display:flex; gap:0; margin:12px 0 0; border-bottom:1px solid var(--line) }
[data-page="cost"] .tabs a{ padding:7px 16px; text-decoration:none; color:var(--mut); font-size:13px; border:1px solid transparent;
  border-bottom:0; border-radius:3px 3px 0 0; margin-bottom:-1px }
[data-page="cost"] .tabs a:hover{ color:var(--fg); background:var(--panel2) }
[data-page="cost"] .tabs > a.on{ color:var(--fg); font-weight:600; background:var(--panel); border-color:var(--line); border-bottom:1px solid var(--panel) }
[data-page="cost"] .tabs a.info{ margin-left:auto; color:var(--mut); font-size:12.5px }
 
[data-page="cost"] .head{ display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; margin:10px 0 2px; font-size:12.5px; color:var(--mut) }
[data-page="cost"] .head .cur{ border:1px solid var(--line); border-radius:2px; padding:2px 9px; font-weight:600; color:var(--fg) }
 
[data-page="cost"] .seg{ display:inline-flex; border:1px solid var(--line); border-radius:3px; overflow:hidden }
[data-page="cost"] .seg a{ padding:4px 12px; font-size:12.5px; text-decoration:none; color:var(--mut); background:var(--panel); border-right:1px solid var(--line) }
[data-page="cost"] .seg a:last-child{ border-right:0 }
[data-page="cost"] .seg a:hover{ background:var(--panel2); color:var(--fg) }
[data-page="cost"] .seg a.on{ background:var(--fg); color:var(--panel); font-weight:600 }
 
[data-page="cost"] .cov{ color:var(--mut); font-size:12.5px; margin:6px 0 0 }
[data-page="cost"] .sub{ color:var(--mut); font-size:12px; margin:2px 0 0; max-width:900px }
[data-page="cost"] .mut{ color:var(--mut) }


[data-page="cost"] .eq{ display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 12px; margin:12px 0 6px }
[data-page="cost"] .eq .eqbig{ font-size:30px; font-weight:600; font-variant-numeric:tabular-nums; line-height:1.15 }
[data-page="cost"] .eq .eqlb{ color:var(--mut); font-size:12.5px }
[data-page="cost"] .eq .eqop{ color:var(--mut); font-size:17px; font-weight:600; margin:0 2px }
[data-page="cost"] .eq .eqpart{ color:var(--mut); font-size:12.5px }
[data-page="cost"] .eq .eqpart b{ color:var(--fg); font-size:19px; font-weight:600; font-variant-numeric:tabular-nums; margin-right:3px }
[data-page="cost"] .eq.eq2{ margin:10px 0 6px }
[data-page="cost"] .eq.eq2 .eqbig{ font-size:21px }
[data-page="cost"] .eq.eq2 .eqpart b{ font-size:15px }
 
[data-page="cost"] .ge{ color:var(--mut); font-weight:600; margin-right:2px }
 
[data-page="cost"] .tw{ overflow-x:auto; margin:6px 0 2px }
[data-page="cost"] .board-main table{ border-collapse:collapse; font-size:12.5px; width:100% }
[data-page="cost"] .board-main th, [data-page="cost"] .board-main td{ border-bottom:1px solid var(--line); padding:4px 9px; text-align:left;
  vertical-align:top; white-space:nowrap }
[data-page="cost"] thead th{ background:var(--panel2); font-weight:600 }
[data-page="cost"] td.num, [data-page="cost"] th.num{ text-align:right; font-variant-numeric:tabular-nums }
[data-page="cost"] td.wrap{ white-space:normal; max-width:360px }
[data-page="cost"] table.t1 tbody + tbody > tr:first-child > td{ padding-top:9px }
 
[data-page="cost"] a.jira{ color:var(--fg); text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="cost"] a.jira:hover{ text-decoration-color:currentColor }
 
[data-page="cost"] tr.sub > td{ background:var(--panel2); font-weight:600; border-top:1px solid var(--line) }
[data-page="cost"] tr.out > td{ border-top:1px dashed var(--gapfg); color:var(--mut) }
[data-page="cost"] tr.grp > td{ background:var(--panel2); color:var(--mut); font-size:11.5px; font-weight:600; letter-spacing:0; padding-top:9px }
[data-page="cost"] tr.tot > td{ border-top:2px solid var(--fg) }
[data-page="cost"] tr.rowx > td{ background:var(--panel2); padding:8px 12px 12px }
 
[data-page="cost"] .alloc{ font-size:10.5px; color:var(--mut); margin-left:5px; white-space:nowrap; border-bottom:1px dotted var(--gapfg) }


[data-page="cost"] .bdg{ font-size:11px; padding:1px 7px; border-radius:2px; border:1px solid var(--line); color:var(--fg); white-space:nowrap }
[data-page="cost"] .bdg.fact{ background:var(--fg); border-color:var(--fg); color:var(--panel); font-weight:600 }
[data-page="cost"] .bdg.annotation{ border-color:var(--b-one) }
[data-page="cost"] .bdg.whitelist{ border-color:var(--acc-n) }
[data-page="cost"] .bdg.unclassified{ border-color:var(--b-unk) }
[data-page="cost"] .bdg.cmms{ border-color:var(--b-part) }
[data-page="cost"] .bdg.unpriced, [data-page="cost"] .bdg.unalloc{ border-color:var(--warn) }
[data-page="cost"] .bdg.retired{ border-color:var(--mut) }
 
[data-page="cost"] .ptag{ display:inline-block; font-size:10.5px; font-weight:600; line-height:1; letter-spacing:0; padding:3px 6px;
  border:1px solid transparent; border-radius:2px }
[data-page="cost"] .ptag.observed{ color:var(--ptag-ink); background:var(--ptag); border-color:var(--ptag) }
[data-page="cost"] .ptag.default{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="cost"] .ptag.idle{ color:var(--ptag); background:transparent; border-color:var(--ptag) }
[data-page="cost"] .ptags{ display:inline-flex; gap:3px; vertical-align:middle }


[data-page="cost"] .chart{ display:flex; align-items:flex-end; gap:5px; height:132px; padding:14px 0 0; border-bottom:1px solid var(--line) }
[data-page="cost"] .chart .col{ flex:1; min-width:10px; height:100%; display:flex; flex-direction:column; justify-content:flex-end; text-decoration:none }
[data-page="cost"] .chart .col .v{ font-size:10px; color:var(--mut); text-align:center; font-variant-numeric:tabular-nums; margin-bottom:2px }
[data-page="cost"] .chart .col b{ display:block; width:100%; background:var(--b-one); border-radius:2px 2px 0 0; min-height:2px }
 
[data-page="cost"] .chart .col b.gapfill{ background:repeating-linear-gradient(45deg, var(--b-one) 0 3px, var(--gapfg) 3px 5px) }
[data-page="cost"] .chart .col:hover b{ outline:2px solid var(--hover) }
 
[data-page="cost"] .chart .col em{ display:block; width:100%; height:26px; border-radius:2px; border:1px dashed var(--gapfg) }
[data-page="cost"] .chart .col em.uncov{ background:repeating-linear-gradient(45deg, transparent 0 3px, var(--gapfg) 3px 4px) }
[data-page="cost"] .xax{ display:flex; gap:5px; font-size:10.5px; color:var(--mut); padding:3px 0 0 }
[data-page="cost"] .xax span{ flex:1; min-width:10px; text-align:center }
 
[data-page="cost"] .drill{ margin:10px 0 0 }
[data-page="cost"] .dh{ display:flex; gap:12px; align-items:baseline; flex-wrap:wrap; font-size:13px; font-weight:600; margin:6px 0 2px }
[data-page="cost"] tr.li > td{ border-bottom:1px solid var(--line); padding:0 9px 8px }
[data-page="cost"] .lit{ font-size:11.5px; color:var(--mut); font-weight:600; margin:2px 0 3px }
[data-page="cost"] table.lit{ width:auto; font-size:11.5px; margin:0 0 0 4px }
[data-page="cost"] table.lit th, [data-page="cost"] table.lit td{ border-bottom:0; padding:1px 10px 1px 0 }
 
[data-page="cost"] .deg{ background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--warn); border-radius:4px;
  padding:14px 16px; margin:10px 0; font-size:13px }
[data-page="cost"] .deg .dt{ font-weight:600; color:var(--fg); margin-bottom:4px }
[data-page="cost"] .deg .dd2{ color:var(--fg) }
[data-page="cost"] .deg .dx{ color:var(--mut); font-size:11.5px; margin-top:6px; font-family:ui-monospace,Consolas,monospace; word-break:break-all }


[data-page="cost"] .est{ font-size:10.5px; padding:0 5px; border-radius:2px; border:1px dashed var(--gapfg); color:var(--mut);
  margin-left:5px; vertical-align:middle; white-space:nowrap; font-weight:600 }
[data-page="cost"] .awt{ font-size:10.5px; padding:0 5px; border-radius:2px; border:1px dotted var(--gapfg); color:var(--mut);
  margin-left:5px; vertical-align:middle; white-space:nowrap; font-weight:600 }
[data-page="cost"] .act{ color:var(--fg) }
 
[data-page="cost"] .foot{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:12px 16px; margin:18px 0 0; font-size:14px }
[data-page="cost"] .foot ol, [data-page="cost"] .foot ul{ margin:6px 0 0; padding-left:22px }
[data-page="cost"] .foot li{ margin:5px 0 }
[data-page="cost"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:30px 2px }
[data-page="cost"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:wrsp .8s linear infinite }
@media (prefers-reduced-motion: reduce){ [data-page="cost"] .spin{ animation:none } }


[data-ui="2"][data-page="cost"] thead th, [data-ui="2"][data-page="cost"] table.t1 thead th,
[data-ui="2"][data-page="cost"] table.t2 thead th{ background:var(--bg); border-bottom:1px solid var(--line2) }
[data-ui="2"][data-page="cost"] .foot{ background:transparent; border:0; border-top:1px solid var(--line2); border-radius:0; padding:12px 0 }
[data-ui="2"][data-page="cost"] .deg{ background:transparent; border-top:0; border-right:0; border-bottom:0; border-radius:0 }
[data-ui="2"][data-page="cost"] .tabs > a.on{ background:transparent; border-color:transparent; border-bottom:2px solid var(--fg) }
 
[data-density="projector"][data-page="cost"]{ --k:1; --kr:1; --kn:1 }
[data-density="projector"][data-page="cost"] .board-main{ zoom:1.25 }
 
 




 





:root[data-page="budget"]{ --acc-a:#1e7d4f; --acc-p:#b07d12; --acc-n:#2563eb; --tk-overt:rgba(179,66,58,.13) }
@media (prefers-color-scheme: dark){
  :root[data-page="budget"]:not([data-theme="light"]){ --acc-a:#36c47f; --acc-p:#cbb26b; --acc-n:#5b8def; --tk-overt:rgba(179,66,58,.13) }
}
:root[data-page="budget"][data-theme="dark"]{ --acc-a:#36c47f; --acc-p:#cbb26b; --acc-n:#5b8def; --tk-overt:rgba(179,66,58,.13) }
[data-page="budget"] h1{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0; margin:6px 0 2px }
[data-page="budget"] h2{ font-size:var(--fs-title); font-weight:600; margin:26px 0 6px }
[data-page="budget"] b, [data-page="budget"] th{ font-weight:600 }
[data-page="budget"] .sub{ color:var(--mut); font-size:12.5px; max-width:920px }
[data-page="budget"] .loading{ display:flex; align-items:center; gap:9px; color:var(--mut); font-size:12.5px; padding:30px 2px }
[data-page="budget"] .spin{ width:14px; height:14px; border:2px solid var(--track); border-top-color:var(--mut); border-radius:50%; animation:wrsp .8s linear infinite }
@media (prefers-reduced-motion: reduce){ [data-page="budget"] .spin{ animation:none } }
 
[data-page="budget"] .fresh{ color:var(--mut); font-size:12px; margin:10px 0 4px }
[data-page="budget"] .fresh b.stale{ color:var(--fg) }
[data-page="budget"] .fresh b.stale::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--warn) }
 
[data-page="budget"] .bar-row{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin:10px 0 6px }
[data-page="budget"] .bar-row .lb{ color:var(--mut); font-size:12.5px }
 
[data-page="budget"] .seg{ display:inline-flex; border:1px solid var(--line); border-radius:3px; overflow:hidden; flex-wrap:wrap }
[data-page="budget"] .seg a, [data-page="budget"] .seg span.off{ padding:4px 12px; font-size:12.5px; text-decoration:none; color:var(--mut);
  background:var(--panel); border-right:1px solid var(--line) }
[data-page="budget"] .seg a:last-child, [data-page="budget"] .seg span.off:last-child{ border-right:0 }
[data-page="budget"] .seg a:hover{ background:var(--panel2); color:var(--fg) }
[data-page="budget"] .seg a:active{ background:var(--line) }
[data-page="budget"] .seg a.on{ background:var(--fg); color:var(--panel); font-weight:600 }
 
[data-page="budget"] .seg span.off{ opacity:.45; cursor:not-allowed }
[data-page="budget"] .seg.mon a{ padding:4px 9px; font-variant-numeric:tabular-nums }
 
[data-page="budget"] .card{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:12px 15px; margin:10px 0 }
[data-page="budget"] .card.tot{ border-left:3px solid var(--acc-n) }
[data-page="budget"] .card.over{ border-left:3px solid var(--bad) }
[data-page="budget"] .chead{ display:flex; flex-wrap:wrap; gap:8px; align-items:baseline; justify-content:space-between }
[data-page="budget"] .cname{ font-weight:600; font-size:13.5px }
[data-page="budget"] .cid{ color:var(--mut); font-size:11.5px }
 
[data-page="budget"] .tk{ height:16px; background:var(--track); border-radius:4px; overflow:hidden; display:flex; margin:8px 0 6px }
[data-page="budget"] .tk.overt{ background:var(--tk-overt) }
[data-page="budget"] .tk i{ display:block; height:16px }
[data-page="budget"] .tk i.a{ background:var(--acc-a) }
[data-page="budget"] .tk i.p{ background:var(--acc-p) }
[data-page="budget"] .nums{ font-size:12.5px; color:var(--mut); font-variant-numeric:tabular-nums }
[data-page="budget"] .nums b{ color:var(--fg); font-weight:600 }
 
[data-page="budget"] .flag{ color:var(--fg); font-weight:600; font-size:12px; margin-right:6px }
[data-page="budget"] .flag::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--bad) }
[data-page="budget"] .note{ color:var(--mut); font-size:11.5px; margin-top:4px }
[data-page="budget"] .lgd{ display:flex; gap:14px; flex-wrap:wrap; font-size:12px; color:var(--mut); margin:4px 0 2px }
[data-page="budget"] .lgd i{ display:inline-block; width:22px; height:8px; border-radius:2px; vertical-align:middle; margin-right:5px }
 
[data-page="budget"] details.dd{ margin-top:8px }
[data-page="budget"] details.dd>summary{ cursor:pointer; font-size:12px; color:var(--mut); list-style:none; padding:3px 0 }
[data-page="budget"] details.dd>summary::-webkit-details-marker{ display:none }
[data-page="budget"] details.dd>summary:hover{ color:var(--fg) }
[data-page="budget"] details.dd>summary::before{ content:""; display:inline-block; width:.8em; height:.8em; margin-right:6px; vertical-align:-.05em; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4.5 2.5L8 6l-3.5 3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat }
[data-page="budget"] details.dd[open]>summary::before{ transform:rotate(90deg) }
 
[data-page="budget"] .tw{ overflow-x:auto; margin:4px 0 2px }
[data-page="budget"] table{ border-collapse:collapse; font-size:12.5px; width:100% }
[data-page="budget"] th, [data-page="budget"] td{ border-bottom:1px solid var(--line); padding:3px 8px; text-align:left; vertical-align:top; white-space:nowrap }
[data-page="budget"] thead th{ background:var(--panel2) }
[data-page="budget"] td.num, [data-page="budget"] th.num{ text-align:right; font-variant-numeric:tabular-nums }
[data-page="budget"] td.wrap{ white-space:normal; max-width:340px }
 
[data-page="budget"] a.jira{ color:var(--fg); text-decoration:underline; text-decoration-color:var(--line2); text-underline-offset:2px }
[data-page="budget"] a.jira:hover{ text-decoration-color:currentColor }
[data-page="budget"] .dot{ font-size:11px; color:var(--mut) }
 
[data-page="budget"] .cw{ overflow-x:auto; margin:2px 0 10px }
[data-page="budget"] table.cls{ font-size:12px; white-space:nowrap }
[data-page="budget"] table.cls th, [data-page="budget"] table.cls td{ border:1px solid var(--line); padding:3px 8px }
[data-page="budget"] table.cls tbody th{ background:var(--panel2); position:sticky; left:0; z-index:1; text-align:left; font-weight:400;
  border-right:1px solid var(--line2) }
[data-page="budget"] table.cls tr.sum th, [data-page="budget"] table.cls tr.sum td{ font-weight:600 }
 
[data-page="budget"] table.cls td.neg{ color:var(--fg) }
[data-page="budget"] table.cls td.neg::before{ content:""; display:inline-block; width:7px; height:7px; margin-right:5px; vertical-align:1px; background:var(--bad) }
 
[data-page="budget"] .chart{ display:flex; align-items:flex-end; gap:4px; height:150px; padding:6px 0 0; border-bottom:1px solid var(--line); position:relative }
[data-page="budget"] .chart .col{ flex:1; min-width:8px; position:relative; height:100% }
[data-page="budget"] .chart .col .st{ height:100%; display:flex; flex-direction:column-reverse; justify-content:flex-start }
[data-page="budget"] .chart .col b{ display:block; width:100%; border-radius:2px 2px 0 0 }
[data-page="budget"] .chart .col b.s0{ background:var(--acc-a) }
[data-page="budget"] .chart .col b.s1{ background:var(--acc-n) }
 
[data-page="budget"] .chart .col b.pc{ background:var(--good) }
[data-page="budget"] .chart .col b.pc.ov{ background:var(--bad) }
[data-page="budget"] .chart .cap{ position:absolute; left:0; right:0; height:0; border-top:2px solid var(--bad) }
[data-page="budget"] .chart .cap.c2{ border-top:2px dashed var(--warn) }
[data-page="budget"] .xax{ display:flex; gap:4px; font-size:10.5px; color:var(--mut); padding:3px 0 0 }
[data-page="budget"] .xax span{ flex:1; min-width:8px; text-align:center }
 
[data-page="budget"] .deg{ background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--warn); border-radius:4px; padding:14px 16px; margin:10px 0; font-size:13px }
[data-page="budget"] .deg .dt{ font-weight:600; color:var(--fg); margin-bottom:4px }
[data-page="budget"] .deg .dd2{ color:var(--fg) }
[data-page="budget"] .deg .dx{ color:var(--mut); font-size:11.5px; margin-top:6px; font-family:ui-monospace,Consolas,monospace; word-break:break-all }
 
[data-page="budget"] .warnbox{ background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--unk); border-radius:4px;
  padding:7px 13px; margin:8px 0; font-size:12.5px; color:var(--fg) }
[data-page="budget"] .foot{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:12px 16px; margin:16px 0 0; font-size:12.5px }
[data-page="budget"] .foot ol{ margin:6px 0 0; padding-left:20px }
[data-page="budget"] .foot li{ margin:4px 0 }
[data-page="budget"] .mut{ color:var(--mut) }

 


:root[data-page="rework"]{ --rw-seq:rgb(176,108,37) }
@media (prefers-color-scheme: dark){
  :root[data-page="rework"]:not([data-theme="light"]){ --rw-seq:rgb(230,170,90) }
}
:root[data-page="rework"][data-theme="dark"]{ --rw-seq:rgb(230,170,90) }
[data-page="rework"] h1{ font-size:calc(22px * var(--k)); font-weight:600; letter-spacing:0; margin:6px 0 2px }
[data-page="rework"] .sub{ color:var(--mut); font-size:12.5px }
 
[data-page="rework"] .demotag{ font-size:10px; font-weight:600; letter-spacing:0; color:var(--fg); border:1px solid var(--unk);
  border-radius:2px; padding:1px 7px; margin-left:8px; vertical-align:middle }
[data-page="rework"] .card{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:12px 16px; margin:14px 0; overflow-x:auto }
[data-page="rework"] table{ border-collapse:collapse; font-size:12.5px; width:100% }
[data-page="rework"] th, [data-page="rework"] td{ border-bottom:1px solid var(--line); padding:4px 10px; text-align:right }
[data-page="rework"] th{ background:var(--panel2); font-weight:600; position:sticky; top:0 }
[data-page="rework"] td.cls, [data-page="rework"] th.cls{ text-align:left; white-space:nowrap }
[data-page="rework"] td.cls small{ color:var(--mut) }
[data-page="rework"] .mut{ color:var(--mut) }
 
[data-page="rework"] .bar{ display:inline-block; height:8px; border-radius:4px; vertical-align:middle; background:var(--rw-seq); margin-right:6px }
[data-page="rework"] .note{ background:var(--panel); border:1px solid var(--line); border-radius:4px; padding:8px 14px; margin:10px 0; font-size:12.5px; color:var(--mut) }

 
[data-ui="2"][data-page="budget"] .card, [data-ui="2"][data-page="budget"] .foot,
[data-ui="2"][data-page="rework"] .card, [data-ui="2"][data-page="rework"] .note{
  background:transparent; border:0; border-top:1px solid var(--line2); border-radius:0; box-shadow:none }
 
[data-ui="2"][data-page="budget"] .card.tot{ border-left:3px solid var(--acc-n) }
[data-ui="2"][data-page="budget"] .card.over{ border-left:3px solid var(--bad) }
[data-ui="2"][data-page="budget"] .deg, [data-ui="2"][data-page="budget"] .warnbox{
  background:transparent; border-top:0; border-right:0; border-bottom:0; border-radius:0 }
[data-ui="2"][data-page="budget"] .seg a, [data-ui="2"][data-page="budget"] .seg span.off{ background:transparent }
[data-ui="2"][data-page="budget"] .seg a.on{ background:var(--fg) }
[data-ui="2"][data-page="budget"] .seg a:hover{ background:var(--panel2) }
[data-ui="2"][data-page="budget"] .seg a:active{ background:var(--line) }
[data-ui="2"][data-page="budget"] thead th, [data-ui="2"][data-page="budget"] table.cls tbody th,
[data-ui="2"][data-page="rework"] th{ background:var(--bg) }
 
[data-ui="2"][data-page="budget"] .sub, [data-ui="2"][data-page="budget"] .foot,
[data-ui="2"][data-page="rework"] .sub, [data-ui="2"][data-page="rework"] .note{ font-size:var(--fs-xs); color:var(--mut) }

 
[data-density="projector"][data-page="budget"], [data-density="projector"][data-page="rework"]{ --k:1; --kr:1; --kn:1 }
[data-density="projector"][data-page="budget"] .board-main, [data-density="projector"][data-page="rework"] .board-main{ zoom:1.25 }
 
