html{-webkit-text-size-adjust:100%}body{margin:0}img{max-width:100%}[hidden]{display:none!important}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
/* Layout: sticky navy title bar with tabs (same as SSE Bid Board), then KPI tiles, two charts, attention lists; calls view is a filter bar over a scrolling table. */
:root{
  --bg:#f3f5f8; --surface:#ffffff; --surface-2:#eaeef4; --line:#d3dae4; --fg:#14213a; --muted:#5b6880;
  --navy:#16295a; --navy-fg:#ffffff; --accent:#c8202f; --accent-fg:#ffffff; --link:#1d4fa8; --bar:#1d4fa8; --bar-2:#9fb6e0;
  --ok:#1e7a45; --ok-bg:#e2f3e8; --warn:#9a5b00; --warn-bg:#fdf0d9; --bad:#b21d2a; --bad-bg:#fbe4e6; --info:#1d4fa8; --info-bg:#e3ecfb; --neutral-bg:#e8ebf0;
  --display:"Barlow Condensed","Arial Narrow",Arial,sans-serif; --body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif; --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --r:6px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0d1424; --surface:#141d31; --surface-2:#1b2640; --line:#2a3757; --fg:#e4e9f3; --muted:#97a3bb;
  --navy:#0a1330; --navy-fg:#ffffff; --accent:#ec4552; --accent-fg:#ffffff; --link:#86aef5; --bar:#6f9bef; --bar-2:#34507f;
  --ok:#6fd497; --ok-bg:#163525; --warn:#f2b955; --warn-bg:#3a2a0e; --bad:#ff8590; --bad-bg:#3d1519; --info:#8db4f7; --info-bg:#172b4f; --neutral-bg:#242f48; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0d1424; --surface:#141d31; --surface-2:#1b2640; --line:#2a3757; --fg:#e4e9f3; --muted:#97a3bb;
  --navy:#0a1330; --navy-fg:#ffffff; --accent:#ec4552; --accent-fg:#ffffff; --link:#86aef5; --bar:#6f9bef; --bar-2:#34507f;
  --ok:#6fd497; --ok-bg:#163525; --warn:#f2b955; --warn-bg:#3a2a0e; --bad:#ff8590; --bad-bg:#3d1519; --info:#8db4f7; --info-bg:#172b4f; --neutral-bg:#242f48; color-scheme:dark}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:14px;line-height:1.45}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--navy)}
.wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));max-width:1400px;margin:0 auto}
header.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--navy);color:var(--navy-fg);border-bottom:3px solid var(--accent)}
header.bar .wrap{display:flex;align-items:center;gap:16px;padding-block:10px;flex-wrap:wrap}
.brand{display:flex;align-items:baseline;gap:10px;margin-right:auto;flex-wrap:wrap}
.brand b{font-family:var(--display);font-size:26px;letter-spacing:.02em;font-weight:700}
.brand b i{font-style:normal;color:#ff5b67}
.brand span{font-size:12px;opacity:.75;letter-spacing:.06em;text-transform:uppercase}
.who{font-size:12px;opacity:.8;display:flex;gap:8px;align-items:center}
.who button{background:transparent;color:var(--navy-fg);border-color:rgba(255,255,255,.35);padding:4px 10px;font-size:12px}
nav.tabs{display:flex;gap:4px;flex-wrap:wrap;max-width:100%}
@media (max-width:560px){nav.tabs{width:100%}nav.tabs button{padding:6px 8px;font-size:12px;flex:1 1 auto}}
nav.tabs button{background:transparent;border:0;color:var(--navy-fg);opacity:.75;font:600 13px var(--body);letter-spacing:.04em;text-transform:uppercase;padding:8px 12px;border-radius:var(--r);cursor:pointer}
nav.tabs button[aria-selected="true"]{opacity:1;background:rgba(255,255,255,.12)}
nav.tabs button:hover{opacity:1}
main.wrap{padding-block:20px 48px}
h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:.01em;margin:0;text-wrap:balance}
h2{font-size:22px} h3{font-size:17px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}
button,.btn{font:500 13px var(--body);border-radius:var(--r);border:1px solid var(--line);background:var(--surface);color:var(--fg);padding:7px 12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;text-decoration:none;white-space:nowrap}
button:hover,.btn:hover{border-color:var(--muted)}
button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);font-weight:600}
button.primary:hover{filter:brightness(1.08)}
button.ghost{background:transparent;border-color:transparent;color:var(--link);padding-inline:6px}
button.danger{color:var(--bad)}
button.danger.armed{background:var(--bad);color:#fff;border-color:var(--bad)}
button:disabled{opacity:.5;cursor:not-allowed}
:focus-visible{outline:2px solid var(--link);outline-offset:2px}
input,select,textarea{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:7px 9px;width:100%;min-width:0}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--link);outline-offset:0;border-color:transparent}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.spacer{flex:1}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.chip{display:inline-flex;align-items:center;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--neutral-bg);color:var(--fg);white-space:nowrap;letter-spacing:.02em}
.chip.ok{background:var(--ok-bg);color:var(--ok)} .chip.warn{background:var(--warn-bg);color:var(--warn)} .chip.bad{background:var(--bad-bg);color:var(--bad)} .chip.info{background:var(--info-bg);color:var(--info)}
.notice{padding:12px 16px;border-radius:var(--r);background:var(--info-bg);color:var(--fg);border:1px solid var(--line);margin-bottom:16px}
.empty{padding:28px 16px;text-align:center;color:var(--muted)}
.empty b{display:block;color:var(--fg);font-size:15px;margin-bottom:4px}
/* Dashboard */
.dash{display:flex;flex-direction:column;gap:20px}
.dash-head{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.dash-head .title{margin-right:auto}
.dash-head h2{font-size:28px;line-height:1.1}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.tile{background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:4px;text-align:left;border:0;border-radius:0;cursor:pointer;white-space:normal;align-items:stretch;font:inherit;color:inherit;border-top:4px solid transparent}
.tile:hover{background:var(--surface-2)}
.tile .n{font-family:var(--display);font-size:40px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.tile .sub{font-size:12px;color:var(--muted)}
.tile.bad{border-top-color:var(--bad)} .tile.bad .n{color:var(--bad)}
.tile.warn{border-top-color:var(--warn)} .tile.info{border-top-color:var(--info)} .tile.ok{border-top-color:var(--ok)} .tile.neutral{border-top-color:var(--muted)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:900px){.grid-2{grid-template-columns:minmax(0,1fr)}}
.card{padding:16px 18px;display:flex;flex-direction:column;gap:12px;min-width:0}
.card-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.card-head h3{margin-right:auto}
.chart{position:relative;width:100%}
.chart svg{display:block;width:100%;height:auto;overflow:visible}
.chart text{fill:var(--muted);font:11px var(--body)}
.chart .val{fill:var(--fg);font:600 11px var(--mono)}
.chart .grid{stroke:var(--line);stroke-width:1}
.chart .mark{fill:var(--bar)}
.chart .mark.dim{fill:var(--bar-2)}
.chart .hit{fill:transparent;cursor:pointer}
.chart .hit:hover + .mark,.chart g:hover .mark{fill:var(--accent)}
.tip{position:absolute;pointer-events:none;background:var(--navy);color:var(--navy-fg);padding:6px 9px;border-radius:var(--r);font-size:12px;white-space:nowrap;transform:translate(-50%,-110%);z-index:3;box-shadow:0 4px 14px rgba(0,0,0,.2)}
.alist{display:flex;flex-direction:column}
.alist button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 12px;align-items:center;text-align:left;white-space:normal;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;padding:10px 4px;width:100%}
.alist button:first-child{border-top:0}
.alist button:hover{background:var(--surface-2)}
.alist .t{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.alist .d{grid-column:2;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.alist .age{grid-row:1/3;grid-column:3}
.alist .no{grid-row:1/3;font-family:var(--mono);font-size:12px;color:var(--muted)}
/* Calls */
.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.toolbar input[type=search]{max-width:300px;flex:1 1 200px}
.toolbar select{width:auto;max-width:220px}
.toolbar input[type=date]{width:auto}
.seg{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.seg button{border-radius:999px;padding:5px 12px;font-size:12.5px}
.seg button[aria-pressed="true"]{background:var(--navy);color:var(--navy-fg);border-color:var(--navy)}
.seg button .c{font-family:var(--mono);opacity:.7;font-size:11.5px}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
table{border-collapse:collapse;width:100%;font-size:13px}
th{text-align:left;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600;background:var(--surface-2);padding:8px 10px;white-space:nowrap}
td{padding:8px 10px;border-top:1px solid var(--line);vertical-align:top}
tbody tr{cursor:pointer}
tbody tr:hover td{background:var(--surface-2)}
td.wrapcell{min-width:200px;max-width:340px}
td .clip{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
td.nowrap{white-space:nowrap}
tr.stale td:first-child{box-shadow:inset 4px 0 0 var(--warn)}
tr.hot td:first-child{box-shadow:inset 4px 0 0 var(--bad)}
.count{font-size:12.5px;color:var(--muted);margin:0 0 8px}
.more{display:flex;justify-content:center;padding:12px}
/* Resources & settings */
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:20px;align-items:start}
.links{display:flex;flex-direction:column}
.links a{display:flex;justify-content:space-between;gap:12px;padding:9px 4px;border-top:1px solid var(--line);color:var(--link);text-decoration:none;font-weight:500}
.links a:first-child{border-top:0}
.links a span{color:var(--muted);font-family:var(--mono);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:55%}
.links a:hover{text-decoration:underline}
.guide ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.guide p{margin:0;max-width:70ch}
/* Dialogs */
dialog{border:1px solid var(--line);border-radius:10px;padding:0;background:var(--surface);color:var(--fg);width:min(860px,calc(100vw - 32px));max-height:calc(100vh - 48px)}
dialog::backdrop{background:rgba(8,14,30,.55)}
dialog form{display:flex;flex-direction:column;max-height:calc(100vh - 50px)}
.dh{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dh .title{margin-right:auto;min-width:0}
.dh h2{font-size:24px;line-height:1.1}
.db{padding:16px 18px;overflow:auto;display:flex;flex-direction:column;gap:16px}
.df{padding:12px 18px;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;align-items:center}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:720px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:460px){.grid3{grid-template-columns:minmax(0,1fr)}}
.field{display:flex;flex-direction:column;gap:4px;min-width:0}
.field.full{grid-column:1/-1}
.field.span2{grid-column:span 2}
@media (max-width:460px){.field.span2{grid-column:auto}}
.check{display:flex;flex-direction:row;gap:8px;align-items:center}
.check input{width:auto}
fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
legend{padding:0;margin-bottom:6px}
.log{white-space:pre-wrap;font-size:13px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;max-height:220px;overflow:auto}
.meta{font-size:12px;color:var(--muted)}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--navy);color:var(--navy-fg);padding:10px 16px;border-radius:var(--r);font-weight:500;z-index:50;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.signin{max-width:460px;margin:60px auto;padding:28px;display:flex;flex-direction:column;gap:14px;text-align:center;align-items:center}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
/* ---- v2 additions ---- */
.room{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:860px){.room{grid-template-columns:minmax(0,1fr)}}
.plist{display:flex;flex-direction:column;gap:8px;min-width:0}
#cu-list{max-height:calc(100vh - 220px);overflow:auto}
.pcard{display:block;width:100%;text-align:left;white-space:normal;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:var(--r);cursor:pointer;font:inherit;color:inherit}
.pcard[aria-current="true"]{border-color:var(--link);border-left-color:var(--accent);box-shadow:0 0 0 1px var(--link)}
.pcard .t{font-weight:600;display:block}
.pcard .s{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px;font-size:12px;color:var(--muted)}
.sheet{padding:20px;display:flex;flex-direction:column;gap:20px;min-width:0}
.sheet-head{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}
.sheet-head .title{flex:1;min-width:200px}
.sheet-head h2{font-size:28px;line-height:1.1}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.facts div{background:var(--surface);padding:10px 12px;min-width:0}
.facts .v{font-weight:500;margin-top:2px;overflow-wrap:anywhere;white-space:pre-line}
.sec{display:flex;flex-direction:column;gap:10px}
.sec-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sec-head h3{margin-right:auto}
dialog.wide{width:min(1040px,calc(100vw - 24px))}
.dtabs{display:flex;gap:2px;padding:0 18px;border-bottom:1px solid var(--line);overflow-x:auto;flex-shrink:0}
.dtabs button{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;padding:10px 12px;font-weight:600;color:var(--muted)}
.dtabs button[aria-selected="true"]{color:var(--fg);border-bottom-color:var(--accent)}
.dtabs .c{font-family:var(--mono);font-size:11px;color:var(--muted)}
[data-cpane]{display:flex;flex-direction:column;gap:16px}
[data-cpane][hidden]{display:none!important}
fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{background:var(--surface-2);color:var(--fg);opacity:1}
.newbox{background:var(--surface-2);border:1px dashed var(--line);border-radius:var(--r);padding:10px 12px}
.taglist{display:flex;flex-wrap:wrap;gap:6px}
.tag{display:inline-flex;align-items:center;gap:4px;padding:4px 4px 4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:13px}
.tag button{border:0;background:transparent;padding:0 6px;color:var(--muted);font-size:15px;line-height:1}
.tag button:hover{color:var(--bad)}
.notes{display:flex;flex-direction:column;gap:10px}
.note{border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:var(--surface)}
.note .h{display:flex;gap:8px;font-size:12px;color:var(--muted);margin-bottom:4px;flex-wrap:wrap}
.note .h b{color:var(--fg)}
.note p{margin:0;white-space:pre-wrap}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.pgrid button{padding:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;align-items:stretch;background:var(--surface-2);white-space:normal;text-align:left}
.pgrid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--surface-2)}
.pgrid .cap{font-size:11.5px;color:var(--muted);padding:6px 8px}
.hist{display:flex;flex-direction:column}
.hist .e{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 14px;padding:9px 0;border-top:1px solid var(--line);font-size:13px}
.hist .e:first-child{border-top:0}
.hist .when{color:var(--muted);font-family:var(--mono);font-size:12px}
.hist ul{margin:4px 0 0;padding-left:18px;color:var(--muted)}
@media (max-width:560px){.hist .e{grid-template-columns:minmax(0,1fr)}}
.tiles.small .n{font-size:28px}
.tiles.small .tile{cursor:default}
.addrow{align-items:center;grid-template-columns:repeat(6,minmax(0,1fr))}
@media (max-width:820px){.addrow{grid-template-columns:repeat(2,minmax(0,1fr))}}
.links.cols2{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));column-gap:24px}
.links.cols2 a:first-child{border-top:1px solid var(--line)}
label.btn.primary-ish{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);font-weight:600}
.stg{display:grid;grid-template-columns:minmax(0,1.2fr) 120px 90px minmax(0,2fr) auto;gap:8px;align-items:start;padding:10px 0;border-top:1px solid var(--line)}
.stg:first-child{border-top:0}
@media (max-width:720px){.stg{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.stg .sts{display:flex;flex-wrap:wrap;gap:4px}
.stg .sts label{display:inline-flex;gap:4px;align-items:center;font-size:12px;border:1px solid var(--line);border-radius:999px;padding:2px 8px;cursor:pointer}
.stg .sts input{width:auto}
.ok-t{color:var(--ok)} .bad-t{color:var(--bad)} .warn-t{color:var(--warn)}
.ti-row-skip td{color:var(--muted)}

/* ---- v3: stage color palette (14 tones, both themes) ---- */
:root{--t-red-fg:#b21d2a;--t-red-bg:#fbe4e6;--t-orange-fg:#b4470b;--t-orange-bg:#fde8da;--t-amber-fg:#9a5b00;--t-amber-bg:#fdf0d9;--t-yellow-fg:#7a6400;--t-yellow-bg:#fbf4c8;--t-lime-fg:#4d6b00;--t-lime-bg:#ecf6d2;--t-green-fg:#1e7a45;--t-green-bg:#e2f3e8;--t-teal-fg:#0b6e6a;--t-teal-bg:#d9f2ef;--t-cyan-fg:#0a6688;--t-cyan-bg:#daf0f8;--t-blue-fg:#1d4fa8;--t-blue-bg:#e3ecfb;--t-indigo-fg:#3a3fb0;--t-indigo-bg:#e6e7fb;--t-purple-fg:#6b2fa8;--t-purple-bg:#efe4fb;--t-pink-fg:#a8236c;--t-pink-bg:#fbe3ef;--t-brown-fg:#7a4a26;--t-brown-bg:#f1e6dc;--t-gray-fg:#4a5568;--t-gray-bg:#e8ebf0}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--t-red-fg:#ff8590;--t-red-bg:#3d1519;--t-orange-fg:#ffa66b;--t-orange-bg:#3f2210;--t-amber-fg:#f2b955;--t-amber-bg:#3a2a0e;--t-yellow-fg:#f0d860;--t-yellow-bg:#363012;--t-lime-fg:#b5dc5c;--t-lime-bg:#26330e;--t-green-fg:#6fd497;--t-green-bg:#163525;--t-teal-fg:#5fd3c9;--t-teal-bg:#11312f;--t-cyan-fg:#6cc8ea;--t-cyan-bg:#0f2e3b;--t-blue-fg:#8db4f7;--t-blue-bg:#172b4f;--t-indigo-fg:#a3a8fb;--t-indigo-bg:#1f2250;--t-purple-fg:#c99cf5;--t-purple-bg:#2e1a48;--t-pink-fg:#f590c4;--t-pink-bg:#3f1730;--t-brown-fg:#d9a77e;--t-brown-bg:#33241a;--t-gray-fg:#b4bdcc;--t-gray-bg:#242f48}}
:root[data-theme="dark"]{--t-red-fg:#ff8590;--t-red-bg:#3d1519;--t-orange-fg:#ffa66b;--t-orange-bg:#3f2210;--t-amber-fg:#f2b955;--t-amber-bg:#3a2a0e;--t-yellow-fg:#f0d860;--t-yellow-bg:#363012;--t-lime-fg:#b5dc5c;--t-lime-bg:#26330e;--t-green-fg:#6fd497;--t-green-bg:#163525;--t-teal-fg:#5fd3c9;--t-teal-bg:#11312f;--t-cyan-fg:#6cc8ea;--t-cyan-bg:#0f2e3b;--t-blue-fg:#8db4f7;--t-blue-bg:#172b4f;--t-indigo-fg:#a3a8fb;--t-indigo-bg:#1f2250;--t-purple-fg:#c99cf5;--t-purple-bg:#2e1a48;--t-pink-fg:#f590c4;--t-pink-bg:#3f1730;--t-brown-fg:#d9a77e;--t-brown-bg:#33241a;--t-gray-fg:#b4bdcc;--t-gray-bg:#242f48}
.chip.t-red{background:var(--t-red-bg);color:var(--t-red-fg)} .tile.t-red{border-top-color:var(--t-red-fg)} .swatch.t-red{background:var(--t-red-fg)}
.chip.t-orange{background:var(--t-orange-bg);color:var(--t-orange-fg)} .tile.t-orange{border-top-color:var(--t-orange-fg)} .swatch.t-orange{background:var(--t-orange-fg)}
.chip.t-amber{background:var(--t-amber-bg);color:var(--t-amber-fg)} .tile.t-amber{border-top-color:var(--t-amber-fg)} .swatch.t-amber{background:var(--t-amber-fg)}
.chip.t-yellow{background:var(--t-yellow-bg);color:var(--t-yellow-fg)} .tile.t-yellow{border-top-color:var(--t-yellow-fg)} .swatch.t-yellow{background:var(--t-yellow-fg)}
.chip.t-lime{background:var(--t-lime-bg);color:var(--t-lime-fg)} .tile.t-lime{border-top-color:var(--t-lime-fg)} .swatch.t-lime{background:var(--t-lime-fg)}
.chip.t-green{background:var(--t-green-bg);color:var(--t-green-fg)} .tile.t-green{border-top-color:var(--t-green-fg)} .swatch.t-green{background:var(--t-green-fg)}
.chip.t-teal{background:var(--t-teal-bg);color:var(--t-teal-fg)} .tile.t-teal{border-top-color:var(--t-teal-fg)} .swatch.t-teal{background:var(--t-teal-fg)}
.chip.t-cyan{background:var(--t-cyan-bg);color:var(--t-cyan-fg)} .tile.t-cyan{border-top-color:var(--t-cyan-fg)} .swatch.t-cyan{background:var(--t-cyan-fg)}
.chip.t-blue{background:var(--t-blue-bg);color:var(--t-blue-fg)} .tile.t-blue{border-top-color:var(--t-blue-fg)} .swatch.t-blue{background:var(--t-blue-fg)}
.chip.t-indigo{background:var(--t-indigo-bg);color:var(--t-indigo-fg)} .tile.t-indigo{border-top-color:var(--t-indigo-fg)} .swatch.t-indigo{background:var(--t-indigo-fg)}
.chip.t-purple{background:var(--t-purple-bg);color:var(--t-purple-fg)} .tile.t-purple{border-top-color:var(--t-purple-fg)} .swatch.t-purple{background:var(--t-purple-fg)}
.chip.t-pink{background:var(--t-pink-bg);color:var(--t-pink-fg)} .tile.t-pink{border-top-color:var(--t-pink-fg)} .swatch.t-pink{background:var(--t-pink-fg)}
.chip.t-brown{background:var(--t-brown-bg);color:var(--t-brown-fg)} .tile.t-brown{border-top-color:var(--t-brown-fg)} .swatch.t-brown{background:var(--t-brown-fg)}
.chip.t-gray{background:var(--t-gray-bg);color:var(--t-gray-fg)} .tile.t-gray{border-top-color:var(--t-gray-fg)} .swatch.t-gray{background:var(--t-gray-fg)}
.tile.t-red .n{color:var(--t-red-fg)}
.swatch{display:inline-block;width:14px;height:14px;border-radius:4px;vertical-align:middle;flex:none}
.themepick{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.85}
.themepick select{width:auto;padding:3px 6px;font-size:12px;background:transparent;color:var(--navy-fg);border-color:rgba(255,255,255,.35)}
.themepick select option{color:#14213a;background:#fff}
.preset{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.preset button{border:0;border-radius:0}
.preset button + button{border-left:1px solid var(--line);color:var(--muted);padding-inline:8px}
.mgr{font-family:var(--mono);font-size:11px;font-weight:600;padding:1px 6px;border-radius:4px;background:var(--surface-2);color:var(--link);margin-right:4px}
tr.inactive td{color:var(--muted)}

/* work ticket preview */
.pdfpages{background:var(--bg);align-items:center;gap:16px}
.pdfpages canvas,.pdfpages img{width:100%;max-width:816px;height:auto;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);border-radius:2px}
@media print{body>*:not(#print-root){display:none!important}#print-root{display:block!important}#print-root img{width:100%;page-break-after:always;display:block}}
#print-root{display:none}
.note .h .spacer{flex:1}
.note .h button{padding:2px 8px;font-size:12px;min-height:0}
.note.editing textarea{width:100%;margin:4px 0 8px}
@keyframes sstflash{0%,100%{box-shadow:none}30%{box-shadow:0 0 0 4px rgba(200,32,47,.45)}}
.flash{animation:sstflash 1.2s ease 2}
