/* ══════════════════════════════════════════════════════════════════════════
   DEVICE MOVEMENT & LIFECYCLE — builds on the Command Deck styles (dk-*).
   Everything here is prefixed dm- so nothing leaks into other pages.
   ══════════════════════════════════════════════════════════════════════════ */
.dm-vars{--dk-ink:#e9eefb;--dk-ink2:#a8b3cc;--dk-ink3:#65708a;--dk-glass:rgba(16,22,40,.9);--dk-glass2:rgba(26,34,60,.7);--dk-edge:rgba(160,175,210,.13);--dk-edge2:rgba(160,175,210,.24);
  color:var(--dk-ink);font-family:Inter,system-ui,"Segoe UI",sans-serif;font-size:13px;line-height:1.45}
.dm{padding-bottom:40px}
.dm .dk-hd{z-index:20}
.dm-na{color:var(--dk-ink3);font-style:italic;font-size:11.5px}
.dm-unv{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#fca5a5;background:rgba(251,113,133,.1);border:1px dashed rgba(251,113,133,.45);padding:2px 8px;border-radius:7px;white-space:nowrap}
.dm-t{display:inline-flex;align-items:center;gap:5px;font:700 10.5px Inter,sans-serif;padding:3px 8px;border-radius:7px;background:color-mix(in srgb,var(--c) 18%,transparent);color:color-mix(in srgb,var(--c) 70%,#fff);border:1px solid color-mix(in srgb,var(--c) 45%,transparent);white-space:nowrap}
.dm-t::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c)}
.dk-pl.info{background:rgba(96,165,250,.16);color:#93c5fd}
.dm-lnk{color:#a5b4fc;cursor:pointer;text-decoration:none;border-bottom:1px dotted rgba(165,180,252,.5)}
.dm-lnk:hover{color:#fff;border-bottom-color:#fff}
.dm-red{color:#fda4af}.dm-green{color:#6ee7b7}
.dm-err{padding:14px 16px;border-radius:12px;background:rgba(251,113,133,.1);border:1px solid rgba(251,113,133,.35);color:#fecdd3}
.dm-warnbox{padding:11px 14px;border-radius:12px;background:rgba(251,191,36,.09);border:1px solid rgba(251,191,36,.35);color:#fde68a;font-size:12px;margin:10px 0}
.dm-infobox{padding:11px 14px;border-radius:12px;background:rgba(124,92,255,.1);border:1px solid rgba(124,92,255,.35);color:#ddd6fe;font-size:12px;margin:10px 0}
.dm-empty{padding:26px 10px;text-align:center}
.dm-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dm-end{justify-content:flex-end;margin-top:14px}
.dm-sm{height:28px;padding:0 10px;font-size:11px}
.dm-danger{border:0;background:linear-gradient(135deg,#e11d48,#be123c);color:#fff}
.dm-ck{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--dk-ink2);cursor:pointer;white-space:nowrap}
.dm-in{min-width:160px;color:#fff!important}
.dm-in::placeholder{color:var(--dk-ink3)}

/* header: search, filters, tabs */
.dm-search{position:relative;flex:1 1 280px;max-width:420px}
.dm-search input{width:100%;height:36px;border-radius:12px;border:1px solid var(--dk-edge2);background:rgba(0,0,0,.35);color:#fff;padding:0 12px 0 34px;font:500 12px Inter,sans-serif;outline:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%23a8b3cc' stroke-width='2'%3E%3Ccircle cx='6' cy='6' r='5'/%3E%3Cpath d='m10 10 3 3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px center}
.dm-search input:focus{border-color:rgba(124,92,255,.7);box-shadow:0 0 0 3px rgba(124,92,255,.2)}
.dm-sres{position:absolute;left:0;right:0;top:40px;z-index:40;max-height:60vh;overflow:auto;border-radius:14px;background:#0b1022;border:1px solid var(--dk-edge2);box-shadow:0 20px 50px rgba(0,0,0,.55);display:none}
.dm-sres.open{display:block}
.dm-sres-h{font:700 9.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dk-ink3);padding:10px 12px 4px}
.dm-sres-i{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;cursor:pointer;color:#fff;font-size:12px;text-decoration:none}
.dm-sres-i span{font-size:11px;color:var(--dk-ink2);flex-basis:100%;padding-left:2px}
.dm-sres-i:hover{background:rgba(124,92,255,.14)}
.dm-dd{position:relative}
.dm-ddm{position:absolute;right:0;top:40px;z-index:40;min-width:190px;display:none;flex-direction:column;padding:6px;border-radius:12px;background:#0b1022;border:1px solid var(--dk-edge2);box-shadow:0 18px 40px rgba(0,0,0,.5)}
.dm-ddm.open{display:flex}
.dm-ddm button{border:0;background:none;color:#fff;text-align:left;padding:9px 10px;border-radius:8px;font:500 12px Inter,sans-serif;cursor:pointer}
.dm-ddm button:hover{background:rgba(124,92,255,.18)}
.dm-fbar{display:flex;gap:8px;align-items:flex-start;margin-top:10px}
.dm-ftog b{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:9px;background:#7c5cff;font-size:10px;margin-left:4px}
.dm-fwrap{display:none;flex-wrap:wrap;gap:8px;align-items:center;flex:1}
.dm-fwrap.open{display:flex}
.dm-dt{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border-radius:11px;border:1px solid var(--dk-edge2);background:var(--dk-glass2);font-size:11px;color:var(--dk-ink2)}
.dm-dt input{background:transparent;border:0;color:#fff;font:500 11.5px Inter,sans-serif;color-scheme:dark;outline:none}
.dm-tabs{display:flex;gap:4px;margin-top:12px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.dm-tabs::-webkit-scrollbar{display:none}
.dm-tabs button{flex:0 0 auto;border:1px solid transparent;background:transparent;color:var(--dk-ink2);font:600 12px Inter,sans-serif;padding:8px 13px;border-radius:11px;cursor:pointer;white-space:nowrap}
.dm-tabs button:hover{color:#fff;background:rgba(255,255,255,.05)}
.dm-tabs button.on{color:#fff;background:linear-gradient(135deg,rgba(124,92,255,.45),rgba(34,211,238,.22));border-color:rgba(160,175,210,.25)}

/* overview */
.dm-hero{cursor:pointer;transition:transform .15s,border-color .15s}
.dm-hero:hover{transform:translateY(-2px);border-color:rgba(124,92,255,.5)}
.dm-tbk{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:8px 0 4px}
.dm-tbk span{display:flex;flex-direction:column;padding:5px 6px;border-radius:8px;background:rgba(0,0,0,.25);border-top:2px solid var(--c)}
.dm-tbk em{font-style:normal;font-size:9px;color:var(--dk-ink3);text-transform:uppercase;letter-spacing:.06em}
.dm-tbk b{font:700 14px "Space Grotesk",Inter,sans-serif;color:#fff}
.dm-tool{margin-bottom:12px}
.dm-tool label{display:block;font:700 10px Inter,sans-serif;letter-spacing:.14em;color:#22d3ee;margin-bottom:6px}
.dm-tool .dm-row{flex-wrap:nowrap}.dm-tool input{flex:1;min-width:0}
.dm-kvs{margin-top:6px}
.dm-kvs .dk-kv b{font-family:Inter,sans-serif;text-align:right}
.dm-alerts,.dm-codes{display:grid;gap:6px}
.dm-codes{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.dm-al{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:1px solid var(--dk-edge);background:rgba(0,0,0,.22);color:#fff;border-radius:11px;padding:9px 12px;cursor:pointer;font:500 12px Inter,sans-serif;border-left:3px solid #64748b}
.dm-al b{font:700 14px "Space Grotesk",sans-serif}
.dm-al.critical{border-left-color:#fb7185}.dm-al.warning{border-left-color:#fbbf24}.dm-al.info{border-left-color:#60a5fa}
.dm-al:hover,.dm-al.on{background:rgba(124,92,255,.14);border-color:rgba(124,92,255,.45)}
.dm-sev{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;font-size:11px}
.dm-sev span{padding:3px 8px;border-radius:99px;background:rgba(255,255,255,.05)}
.dm-sev .bad{color:#fda4af}.dm-sev .warn{color:#fcd34d}.dm-sev .off{color:#cbd5e1}
.dm-click{cursor:pointer}
.dm-tl{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.dm-tli{display:grid;grid-template-columns:10px 1fr;gap:10px;padding:10px 12px;border-radius:12px;background:rgba(0,0,0,.22);border:1px solid var(--dk-edge);cursor:pointer}
.dm-tli:hover{border-color:rgba(124,92,255,.45)}
.dm-tld{width:10px;border-radius:5px;background:linear-gradient(var(--c),transparent)}
.dm-tlh{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:11.5px;color:var(--dk-ink2)}.dm-tlh b{color:#fff}
.dm-tlv{margin:4px 0;font-size:12.5px;color:#fff}
.dm-arr{color:#22d3ee;font-weight:700}

/* tables */
.dm-tw{overflow:auto;max-width:100%;-webkit-overflow-scrolling:touch}
.dm-sticky{max-height:68vh}
.dm-sticky thead th{position:sticky;top:0;z-index:2;background:#0b1022;padding-top:8px}
.dm-tb td{white-space:normal;vertical-align:top;min-width:70px}
.dm-tb td:first-child{min-width:auto}
.dm-mvt td{font-size:11.5px}
.dm-srt{cursor:pointer;user-select:none}.dm-srt:hover{color:#fff}
.dm-srt.asc::after{content:" ▲"}.dm-srt.desc::after{content:" ▼"}
.dm-evd td{opacity:.62}
.dm-del td{opacity:.5;text-decoration:line-through;text-decoration-color:rgba(251,113,133,.6)}
.dm-note{max-width:220px}
.dm-clip{display:inline-block;max-width:260px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}
.dm-pager{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:10px;font-size:11.5px;color:var(--dk-ink2)}
.dm-pager .dk-bt[disabled]{opacity:.35;cursor:default}
.dm-per{height:30px;padding:0 8px}
.dm-panel .dk-kh{flex-wrap:wrap}

/* journeys */
.dm-mx{border-collapse:separate;border-spacing:3px;font-size:11px}
.dm-mx th{color:var(--dk-ink2);font-weight:600;white-space:nowrap;text-align:left;padding:2px 6px}
.dm-mx thead th{height:110px;vertical-align:bottom}
.dm-mx thead th span{display:inline-block;writing-mode:vertical-rl;transform:rotate(180deg)}
.dm-mx td{width:30px;height:28px;border-radius:7px;background:rgba(255,255,255,.03);text-align:center}
.dm-mxc{background:rgba(124,92,255,var(--a))!important;color:#fff;font-weight:700;cursor:pointer}
.dm-mxc:hover{outline:2px solid #22d3ee}

/* reports */
.dm-reps{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}
.dm-rep{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:12px;border-radius:14px;background:rgba(0,0,0,.22);border:1px solid var(--dk-edge)}
.dm-repi{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:19px;background:rgba(124,92,255,.18)}
.dm-rep b{display:block;color:#fff;font-size:12.5px}.dm-rep span{font-size:11px;color:var(--dk-ink2)}
.dm-repb{grid-column:1/-1;display:flex;gap:6px}.dm-repb .dk-bt{flex:1;height:30px}

/* drawer */
.dm-drw{position:fixed;inset:0;z-index:9000;pointer-events:none}
.dm-drw-bg{position:absolute;inset:0;background:rgba(2,4,10,.6);backdrop-filter:blur(3px);opacity:0;transition:opacity .2s}
.dm-drw-p{position:absolute;top:0;right:0;bottom:0;width:min(720px,100vw);background:#070b18;border-left:1px solid var(--dk-edge2);box-shadow:-30px 0 60px rgba(0,0,0,.5);transform:translateX(102%);transition:transform .28s cubic-bezier(.2,.9,.3,1);display:flex;flex-direction:column}
.dm-drw.wide .dm-drw-p{width:min(1000px,100vw)}
.dm-drw.open{pointer-events:auto}.dm-drw.open .dm-drw-bg{opacity:1}.dm-drw.open .dm-drw-p{transform:none}
.dm-drw-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px 20px 12px;border-bottom:1px solid var(--dk-edge);background:linear-gradient(180deg,rgba(124,92,255,.12),transparent)}
.dm-drw-h h3{margin:0;font-size:19px;color:#fff;word-break:break-all}
.dm-drw-h .dk-eye{font-size:10px}
.dm-drw-b{padding:16px 20px 40px;overflow:auto;flex:1;-webkit-overflow-scrolling:touch}
.dm-grab{display:none}
body.dm-noscroll{overflow:hidden}
.dm-dgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.dm-dgrid > div{padding:9px 11px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid var(--dk-edge);min-width:0;overflow-wrap:anywhere}
.dm-dgrid label{display:block;font:700 9.5px Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--dk-ink3);margin-bottom:3px}
.dm-big{font:700 22px "Space Grotesk",sans-serif;color:#fff}
.dm-sec{margin-top:18px}
.dm-sec h4{margin:0 0 10px;font:700 11px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#22d3ee}
.dm-sec h5{margin:12px 0 6px}
details.dm-sec summary{cursor:pointer;list-style:none}details.dm-sec summary h4{display:inline}
.dm-journey{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding-bottom:6px}
.dm-jn{flex:0 0 200px;padding:12px;border-radius:14px;border:1px solid var(--dk-edge2);background:rgba(255,255,255,.035)}
.dm-jn.now{border-color:rgba(52,211,153,.55);background:linear-gradient(180deg,rgba(52,211,153,.12),rgba(255,255,255,.02))}
.dm-jn.past{opacity:.92}
.dm-jn-i{font:700 9.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dk-ink3)}
.dm-jn-v{font:700 15px "JetBrains Mono",monospace;margin:4px 0}
.dm-jn-d{display:flex;flex-direction:column;gap:1px;margin:8px 0 4px;font-size:11.5px;color:var(--dk-ink2)}
.dm-arrd{color:#22d3ee;font-weight:700}
.dm-jn-arr{align-self:center;font-size:22px;color:#22d3ee;flex:0 0 auto}
.dm-tnl{position:relative;padding-left:18px}
.dm-tnl::before{content:"";position:absolute;left:5px;top:4px;bottom:4px;width:2px;background:linear-gradient(#7c5cff,#22d3ee)}
.dm-tn{position:relative;display:grid;grid-template-columns:1fr;margin-bottom:10px;cursor:pointer}
.dm-tn-dot{position:absolute;left:-18px;top:8px;width:12px;height:12px;border-radius:50%;background:var(--c);box-shadow:0 0 0 3px #070b18,0 0 12px var(--c)}
.dm-tn-b{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid var(--dk-edge)}
.dm-tn:hover .dm-tn-b{border-color:rgba(124,92,255,.5)}
.dm-tn.evd{opacity:.6}.dm-tn.del{opacity:.45}
.dm-tn-h{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px;color:var(--dk-ink2)}.dm-tn-h b{color:#fff}
.dm-tn-v{font:600 13px "JetBrains Mono",monospace;margin:5px 0;color:#fff}
.dm-tn-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 10px;font-size:10.5px;color:var(--dk-ink3)}
.dm-tn-g b{display:block;color:var(--dk-ink);font-weight:500;font-size:11.5px}
.dm-curs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.dm-cur{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid var(--dk-edge);border-top:3px solid var(--c);display:grid;gap:6px}
.dm-cur-t{font:700 11px Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--c)}
.dm-bas{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;gap:8px}
.dm-ba{padding:12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid var(--dk-edge)}
.dm-ba h5{margin:0 0 6px;font:700 10px Inter,sans-serif;letter-spacing:.14em;color:var(--dk-ink3)}
.dm-ba .dk-kv b{font-family:Inter,sans-serif;text-align:right}
.dm-baarr{text-align:center;font-size:24px;color:#22d3ee}

/* modal & forms */
.dm-mod{position:fixed;inset:0;z-index:9100;pointer-events:none;display:grid;place-items:center}
.dm-mod.open{pointer-events:auto}.dm-mod.open .dm-drw-bg{opacity:1}
.dm-mod-p{position:relative;width:min(640px,94vw);max-height:92vh;display:flex;flex-direction:column;border-radius:18px;background:#070b18;border:1px solid var(--dk-edge2);box-shadow:0 30px 80px rgba(0,0,0,.6);transform:translateY(12px) scale(.98);opacity:0;transition:all .2s}
.dm-mod.wide .dm-mod-p{width:min(980px,96vw)}
.dm-mod.open .dm-mod-p{transform:none;opacity:1}
.dm-mod-b{padding:16px 20px 20px;overflow:auto}
.dm-p{color:var(--dk-ink2);margin:0 0 10px}
.dm-ta,.dm-fi{width:100%;box-sizing:border-box;border-radius:10px;border:1px solid var(--dk-edge2);background:rgba(0,0,0,.35);color:#fff;padding:9px 11px;font:500 13px Inter,sans-serif;outline:none;color-scheme:dark;min-height:40px}
.dm-fi:focus,.dm-ta:focus{border-color:rgba(124,92,255,.7);box-shadow:0 0 0 3px rgba(124,92,255,.2)}
.dm-fi option{background:#0b1022}
.dm-bad{border-color:#fb7185!important}
.dm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.dm-form .s-full{grid-column:1/-1}
.dm-fl{display:flex;flex-direction:column;gap:5px;min-width:0}
.dm-fl > span{font:600 11px Inter,sans-serif;color:var(--dk-ink2)}
.dm-auto:empty{display:none}
.dm-autoc{padding:10px 12px;border-radius:12px;background:rgba(34,211,238,.07);border:1px solid rgba(34,211,238,.3)}
.dm-autog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:8px}
.dm-autog label{display:block;font-size:9.5px;color:var(--dk-ink3);text-transform:uppercase;letter-spacing:.08em}
.dm-autog b{font-size:12px;color:#fff;overflow-wrap:anywhere}
.dm-comp > span{display:block;font:600 11px Inter,sans-serif;color:var(--dk-ink2);margin-bottom:6px}
.dm-comp > div{display:grid;grid-template-columns:auto 1fr;gap:6px 10px;align-items:center}
.dm-steps{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}
.dm-steps span{flex:1;min-width:120px;text-align:center;padding:7px;border-radius:9px;background:rgba(255,255,255,.04);font:600 11px Inter,sans-serif;color:var(--dk-ink3)}
.dm-steps span.on{background:linear-gradient(135deg,rgba(124,92,255,.4),rgba(34,211,238,.2));color:#fff}
.dm-drop{border:2px dashed rgba(160,175,210,.3);border-radius:16px;padding:34px 16px;text-align:center;cursor:pointer;display:grid;gap:6px;justify-items:center;transition:all .15s}
.dm-drop:hover,.dm-drop.drag{border-color:#7c5cff;background:rgba(124,92,255,.08)}
.dm-drop b{color:#fff}.dm-drop span{font-size:11.5px;color:var(--dk-ink2)}
.dm-drop-i{font-size:38px}
.dm-mapg{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;padding:8px 0}
.dm-mapg .s-full{grid-column:1/-1}
.dm-maprow td{background:rgba(124,92,255,.06)!important}
.dm-iboxes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.dm-ibox{padding:12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--dk-edge)}
.dm-ibox b{display:block;font:700 22px "Space Grotesk",sans-serif;color:#fff}.dm-ibox span{font-size:11px;color:var(--dk-ink2)}
.dm-ibox.ok{border-color:rgba(52,211,153,.45)}.dm-ibox.ok b{color:#6ee7b7}
.dm-ibox.warn b{color:#fcd34d}.dm-ibox.bad{border-color:rgba(251,113,133,.45)}.dm-ibox.bad b{color:#fda4af}
.dm-done{display:grid;justify-items:center;gap:6px;padding:26px;text-align:center}.dm-done b{font-size:18px;color:#fff}.dm-done span{color:var(--dk-ink2)}

/* ── responsive ── */
@media (max-width:1100px){.dm-iboxes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .dm .dk-hd-top{gap:8px}
  .dm .dk-hd h1{font-size:19px}
  .dm-search{flex-basis:100%;max-width:none;order:5}
  .dm .dk-hd-top > .dk-bt,.dm .dm-dd{flex:1 1 auto}
  .dm .dm-dd .dk-bt{width:100%}
  .dm-fwrap{display:none;flex-direction:column;align-items:stretch}
  .dm-fwrap.open{display:flex}
  .dm-fwrap .dk-sel,.dm-fwrap .dm-dt,.dm-fwrap .dm-in{width:100%;max-width:none;box-sizing:border-box;height:42px}
  .dm-fbar{flex-direction:column;align-items:stretch}
  .dm-ftog{height:42px}
  .dm-tbk b{font-size:13px}
  .dk-bt{min-height:40px}
  .dm-tool .dm-row{flex-wrap:wrap}.dm-tool input{flex-basis:100%}
  /* tables become cards */
  .dm-tb thead{display:none}
  .dm-tb,.dm-tb tbody,.dm-tb tr,.dm-tb td{display:block;width:100%;box-sizing:border-box}
  .dm-tb tr{margin-bottom:10px;border-radius:14px;border:1px solid var(--dk-edge2);background:rgba(255,255,255,.03);padding:6px 4px}
  .dm-tb td{display:grid;grid-template-columns:40% 1fr;gap:10px;padding:6px 10px!important;background:none!important;border-radius:0!important;font-size:12.5px;min-width:0}
  .dm-tb td::before{content:attr(data-l);font:700 10px Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--dk-ink3);padding-top:2px}
  .dm-tb td:empty{display:none}
  .dm-sticky{max-height:none}
  .dm-clip{max-width:100%;white-space:normal}
  .dm-tl{grid-template-columns:1fr}
  .dm-reps{grid-template-columns:1fr}
  .dm-codes{grid-template-columns:1fr}
  .dm-pager{justify-content:center}
  /* drawer becomes a full-height bottom sheet */
  .dm-drw-p,.dm-drw.wide .dm-drw-p{top:auto;left:0;right:0;width:100vw;height:94vh;border-left:0;border-top:1px solid var(--dk-edge2);border-radius:20px 20px 0 0;transform:translateY(102%)}
  .dm-grab{display:block;position:absolute;left:50%;top:6px;width:44px;height:5px;border-radius:3px;background:rgba(160,175,210,.35);transform:translateX(-50%)}
  .dm-drw-h{padding-top:20px}
  .dm-drw-b{padding:12px 12px 40px}
  .dm-dgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dm-bas{grid-template-columns:1fr}.dm-baarr{transform:rotate(90deg)}
  .dm-jn{flex-basis:170px}
  .dm-mod{place-items:end center}
  .dm-mod-p,.dm-mod.wide .dm-mod-p{width:100vw;max-height:94vh;border-radius:20px 20px 0 0}
  .dm-form{grid-template-columns:1fr}
  .dm-autog{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dm-iboxes{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dm-fi{font-size:16px}
}
@media (max-width:360px){.dm-dgrid{grid-template-columns:1fr}.dm-tbk{grid-template-columns:repeat(2,1fr)}.dm-tb td{grid-template-columns:1fr;gap:2px}}

/* live activity (confidential) */
.dm-lock{display:inline-flex;align-items:center;gap:4px;font:700 9.5px Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:99px;background:rgba(251,191,36,.14);color:#fcd34d;border:1px solid rgba(251,191,36,.35);white-space:nowrap}
.dm-actbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 6px;padding:12px 16px;border-radius:14px;cursor:pointer;background:linear-gradient(90deg,rgba(52,211,153,.12),rgba(124,92,255,.12));border:1px solid rgba(52,211,153,.35);font-size:12px;color:var(--dk-ink2)}
.dm-actbar > b{color:#fff;font-size:13px}.dm-actbar em{margin-left:auto;font-style:normal;color:#22d3ee;font-weight:700}
.dm-actbar:hover{border-color:rgba(34,211,238,.6)}
.dm-confbar{padding:10px 14px;border-radius:12px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.3);color:#fde68a;font-size:12px}
.dm-conf{border-color:rgba(251,191,36,.3)!important}
.dk-b > .s2{min-width:0}
@media (max-width:1300px){.dk-b > .s2{grid-column:span 4}}
@media (max-width:760px){.dk-b > .s2{grid-column:span 6!important}.dm-actbar em{margin-left:0}}

/* ── simplified layout: one line per row, product cards ── */
.dk-b > .s9{grid-column:span 9}.dk-b > .s10{grid-column:span 10}
@media(max-width:1300px){.dk-b > .s9,.dk-b > .s10{grid-column:span 12}}
.dm-one td,.dm-one th{white-space:nowrap!important;vertical-align:middle}
.dm-one td{padding:7px 10px!important}
.dm-one .dm-t{margin-right:4px}
.dm-prod{cursor:pointer;display:flex;flex-direction:column;gap:8px}
.dm-prod:hover{border-color:rgba(124,92,255,.5)}
.dm-prod-h{display:flex;justify-content:space-between;align-items:center}
.dm-prod-n{display:flex;align-items:baseline;gap:8px}.dm-prod-n b{font-size:34px;color:#fff;line-height:1}.dm-prod-n span{color:var(--dk-ink2);font-size:12px}
.dm-bar{height:8px;border-radius:99px;background:rgba(160,175,210,.15);overflow:hidden}.dm-bar i{display:block;height:100%;border-radius:99px}
.dm-prod-f{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:11.5px;color:var(--dk-ink2)}.dm-prod-f b{color:#fff}
.dm-prod-f.dm-col{flex-direction:column}
.dm-att{display:grid;gap:6px}
.dm-att button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--dk-edge);background:rgba(0,0,0,.2);color:var(--dk-ink);border-radius:10px;padding:8px 12px;font:500 12.5px Inter,sans-serif;cursor:pointer}
.dm-att button span{flex:1}.dm-att button b{font:700 15px "Space Grotesk",sans-serif}
.dm-att i{width:8px;height:8px;border-radius:50%;flex:0 0 8px}.dm-att i.bad{background:#fb7185}.dm-att i.warn{background:#fbbf24}.dm-att i.off{background:#94a3b8}
.dm-att button:hover{border-color:rgba(124,92,255,.5)}
@media(max-width:760px){.dm-one td{white-space:normal!important}}

/* ── light theme ── */
[data-theme="light"] .deck,[data-theme="light"] .dm-vars{--dk-ink:#0f172a;--dk-ink2:#475569;--dk-ink3:#64748b;--dk-glass:#ffffff;--dk-glass2:#f1f5f9;--dk-edge:#e2e8f0;--dk-edge2:#cbd5e1;color:#0f172a}
[data-theme="light"] .deck{background:#f8fafc;border-color:#e2e8f0}
[data-theme="light"] .deck::before{opacity:.25}
[data-theme="light"] .dk-hd{background:rgba(248,250,252,.96);border-color:#e2e8f0}
[data-theme="light"] .dk-hd h1,[data-theme="light"] .dk-kt,[data-theme="light"] .dk-val,[data-theme="light"] .dm-prod-n b,[data-theme="light"] .dm-prod-f b,[data-theme="light"] .dm-tbk b,
[data-theme="light"] .dk-in b,[data-theme="light"] .dm-tlv,[data-theme="light"] .dm-tlh b,[data-theme="light"] .dm-tn-h b,[data-theme="light"] .dm-tn-v,[data-theme="light"] .dm-big,[data-theme="light"] .dm-drw-h h3,
[data-theme="light"] .dm-rep b,[data-theme="light"] .dm-ibox b,[data-theme="light"] .dm-done b,[data-theme="light"] .dm-drop b,[data-theme="light"] .dk-f b,[data-theme="light"] .dk-pod b,[data-theme="light"] .dk-nums b,
[data-theme="light"] .dm-att button b,[data-theme="light"] .dk-kv b,[data-theme="light"] .dk-ticker b{color:#0f172a!important}
[data-theme="light"] .dk-k{background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.06)}
[data-theme="light"] .dk-k::before{opacity:.35}
[data-theme="light"] .dk-glow{opacity:.12}
[data-theme="light"] .dk-inner,[data-theme="light"] .dk-nums div,[data-theme="light"] .dk-pod > div{background:#f1f5f9}
[data-theme="light"] .dk-tb{color:#0f172a}
[data-theme="light"] .dk-tb td{background:#f8fafc!important;color:#0f172a}
[data-theme="light"] .dk-tb tr:hover td{background:#eef2ff!important}
[data-theme="light"] .dk-tb th{color:#475569;background:transparent}
[data-theme="light"] .dm-sticky thead th{background:#fff}
[data-theme="light"] .dk-bt{background:#fff;color:#0f172a;border-color:#cbd5e1}
[data-theme="light"] .dk-bt.dk-g,[data-theme="light"] .dk-g{background:linear-gradient(135deg,#6d4dff,#4f7cff);color:#fff;border:0}
[data-theme="light"] .dk-sel,[data-theme="light"] .dk-f,[data-theme="light"] .dm-dt,[data-theme="light"] .dm-search input,[data-theme="light"] .dm-fi,[data-theme="light"] .dm-ta{background-color:#fff;color:#0f172a!important;border-color:#cbd5e1}
[data-theme="light"] .dk-sel option,[data-theme="light"] .dm-fi option{background:#fff;color:#0f172a}
[data-theme="light"] .dm-dt input{color:#0f172a;color-scheme:light}
[data-theme="light"] .dk-live{color:#166534;border-color:#86efac}
[data-theme="light"] .dk-seg{background:#fff;border-color:#cbd5e1}
[data-theme="light"] .dk-seg button{color:#475569}
[data-theme="light"] .dk-seg button.on,[data-theme="light"] .dm-tabs button.on{background:linear-gradient(135deg,#6d4dff,#4f7cff);color:#fff}
[data-theme="light"] .dm-tabs button{color:#475569}
[data-theme="light"] .dm-tabs button:hover{background:#eef2ff;color:#0f172a}
[data-theme="light"] .dk-eye{color:#0e7490}
[data-theme="light"] .dk-ticker{background:#fff}
[data-theme="light"] .dm-lnk{color:#4338ca;border-bottom-color:rgba(67,56,202,.4)}
[data-theme="light"] .dm-t{background:color-mix(in srgb,var(--c) 14%,#fff);color:color-mix(in srgb,var(--c) 65%,#000);border-color:color-mix(in srgb,var(--c) 40%,#fff)}
[data-theme="light"] .dk-pl.ok{background:#dcfce7;color:#166534}[data-theme="light"] .dk-pl.warn{background:#fef3c7;color:#92400e}
[data-theme="light"] .dk-pl.bad{background:#ffe4e6;color:#9f1239}[data-theme="light"] .dk-pl.off{background:#e2e8f0;color:#334155}[data-theme="light"] .dk-pl.info{background:#dbeafe;color:#1e40af}
[data-theme="light"] .dm-green{color:#15803d}[data-theme="light"] .dm-red{color:#be123c}
[data-theme="light"] .dm-unv{color:#9f1239;background:#fff1f2}
[data-theme="light"] .dm-att button,[data-theme="light"] .dm-al,[data-theme="light"] .dm-tli,[data-theme="light"] .dm-tn-b,[data-theme="light"] .dm-jn,[data-theme="light"] .dm-cur,[data-theme="light"] .dm-ba,
[data-theme="light"] .dm-dgrid > div,[data-theme="light"] .dm-rep,[data-theme="light"] .dm-ibox,[data-theme="light"] .dk-in,[data-theme="light"] .dm-tbk span,[data-theme="light"] .dm-steps span{background:#f8fafc;color:#0f172a;border-color:#e2e8f0}
[data-theme="light"] .dm-bar{background:#e2e8f0}
[data-theme="light"] .dm-sres,[data-theme="light"] .dm-ddm{background:#fff;border-color:#cbd5e1}
[data-theme="light"] .dm-sres-i,[data-theme="light"] .dm-ddm button{color:#0f172a}
[data-theme="light"] .dm-sres-i:hover,[data-theme="light"] .dm-ddm button:hover{background:#eef2ff}
[data-theme="light"] .dm-drw-p,[data-theme="light"] .dm-mod-p{background:#f8fafc;border-color:#cbd5e1}
[data-theme="light"] .dm-drw-bg{background:rgba(15,23,42,.35)}
[data-theme="light"] .dm-sec h4{color:#0e7490}
[data-theme="light"] .dm-warnbox,[data-theme="light"] .dm-confbar{background:#fffbeb;color:#78350f;border-color:#fcd34d}
[data-theme="light"] .dm-infobox{background:#eef2ff;color:#312e81;border-color:#c7d2fe}
[data-theme="light"] .dm-err{background:#fff1f2;color:#9f1239}
[data-theme="light"] .dm-actbar{background:linear-gradient(90deg,#ecfdf5,#eef2ff);color:#334155;border-color:#86efac}
[data-theme="light"] .dm-actbar > b{color:#0f172a}
[data-theme="light"] .dm-lock{background:#fef3c7;color:#92400e;border-color:#fcd34d}
[data-theme="light"] .dm-tn-dot{box-shadow:0 0 0 3px #f8fafc}
@media (max-width:760px){[data-theme="light"] .dm-tb tr{background:#fff;border-color:#e2e8f0}}

/* row serial numbers */
.dm-sn{display:inline-grid;place-items:center;min-width:24px;height:20px;padding:0 5px;border-radius:6px;background:rgba(160,175,210,.12);font:700 10.5px "JetBrains Mono",monospace;color:var(--dk-ink2)}
.dm-tb th:first-child,.dm-tb td:first-child{width:1%;text-align:center}
[data-theme="light"] .dm-sn{background:#e2e8f0;color:#334155}

/* which products a check's count is made of */
.dm-tsplit{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.dm-tsplit em{font:600 10.5px Inter,sans-serif;font-style:normal;padding:1px 7px;border-radius:99px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent)}
.dm-tsplit em b{font:700 10.5px Inter,sans-serif!important;color:inherit!important}
.dm-att button > span,.dm-al > span{display:flex;flex-direction:column;align-items:flex-start}
.dm-tsplit{flex-direction:row!important}
[data-theme="light"] .dm-tsplit em{color:color-mix(in srgb,var(--c) 70%,#000)}

/* ── Field work ─────────────────────────────────────────────────────────── */
.fk-jobs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fk-job{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:16px;border-radius:14px;border:1px solid var(--dk-edge);background:rgba(124,92,255,.08);color:var(--dk-ink);cursor:pointer;font:500 12.5px Inter,sans-serif;transition:border-color .15s,transform .15s}
.fk-job:hover{border-color:#7c5cff;transform:translateY(-1px)}
.fk-job i{font-style:normal;font-size:26px}.fk-job b{font:700 15px "Space Grotesk",Inter,sans-serif}.fk-job span{color:var(--dk-mute,#9aa6c2);line-height:1.4}
.fk-job.sm{flex-direction:row;align-items:center;gap:10px;padding:11px 14px}.fk-job.sm i{font-size:20px}.fk-job.sm b{font-size:13.5px}
.fk-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.fk-strip{margin-bottom:14px;padding:12px 14px;border-radius:16px;border:1px solid rgba(124,92,255,.35);background:linear-gradient(135deg,rgba(124,92,255,.12),rgba(34,211,238,.06))}
.fk-strip-h{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;flex-wrap:wrap}.fk-strip-h b{font:700 14px "Space Grotesk",sans-serif}.fk-strip-h span{color:var(--dk-mute,#9aa6c2);font-size:12px;flex:1}
.fk-foot{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-top:14px;flex-wrap:wrap}
.fk-step{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.fk-badge{font:700 14px "Space Grotesk",sans-serif;padding:6px 12px;border-radius:99px;background:rgba(124,92,255,.16);border:1px solid rgba(124,92,255,.4)}
.fk-sec{margin:12px 0;padding:12px;border-radius:12px;border:1px solid var(--dk-edge);background:rgba(0,0,0,.14)}
.fk-l{display:block;font:700 12.5px Inter,sans-serif;margin-bottom:8px;letter-spacing:.02em}
.fk-big{font-size:16px!important;padding:11px 12px!important;width:100%}
.fk-hint{font-size:11.5px;color:var(--dk-mute,#9aa6c2);margin-top:6px}
.fk-vinfo:empty{display:none}.fk-vinfo{margin-top:10px}
.fk-known{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;padding:9px 11px;border-radius:10px;background:rgba(52,211,153,.08);border:1px solid rgba(52,211,153,.3)}
.fk-known span{color:var(--dk-mute,#9aa6c2);font-size:12px}.fk-now{width:100%;font-size:12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.fk-new{padding:10px 11px;border-radius:10px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.35);font-size:12.5px}
.fk-row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px}
.fk-devs{display:grid;gap:10px}
.fk-dev{display:grid;grid-template-columns:130px 1fr;gap:6px 10px;align-items:center}
.fk-dev .fk-look,.fk-dev .fk-note{grid-column:2}
.fk-ck{display:flex;align-items:center;gap:8px;cursor:pointer}.fk-ck input{width:18px;height:18px}
.fk-note{font-size:12px;color:var(--dk-mute,#9aa6c2)}
.fk-look{font-size:12px}.fk-ok{color:#34d399}.fk-warn{color:#fbbf24}
.fk-pick,.fk-seg{display:grid;gap:8px}.fk-seg{grid-template-columns:1fr 1fr}
.fk-opt{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--dk-edge);cursor:pointer;flex-wrap:wrap}
.fk-opt:has(input:checked){border-color:#7c5cff;background:rgba(124,92,255,.12)}
.fk-opt input{width:18px;height:18px}.fk-opt span{color:var(--dk-mute,#9aa6c2);font-size:11.5px}
.fk-seg .fk-opt{flex-direction:column;align-items:flex-start}
.fk-manual{display:grid;grid-template-columns:150px 1fr;gap:8px;margin-top:8px}
.fk-sum{margin:10px 0}.fk-ready{padding:10px 12px;border-radius:10px;background:rgba(52,211,153,.12);border:1px solid rgba(52,211,153,.4);font-size:13px}
.fk-todo{padding:9px 12px;border-radius:10px;background:rgba(148,163,184,.1);font-size:12px;color:var(--dk-mute,#9aa6c2)}
.fk-save{min-width:140px;font-size:14px!important}
.fk-done{text-align:center;padding:18px 6px}.fk-done i{font-style:normal;font-size:44px}.fk-done h3{margin:6px 0}
.fk-guide .fk-quick{margin:4px 0 16px}
.fk-gsec{margin-top:18px}.fk-gsec h3{font:700 16px "Space Grotesk",sans-serif;margin:0 0 6px}
.fk-gstep{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(0,1.6fr);gap:14px;align-items:start;padding:12px 0;border-top:1px solid var(--dk-edge)}
.fk-gnum{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#7c5cff;color:#fff;font-weight:700}
.fk-gtxt p{margin:4px 0 0;color:var(--dk-mute,#9aa6c2);font-size:12.5px;line-height:1.5}
.fk-gstep img{width:100%;border-radius:10px;border:1px solid var(--dk-edge)}
@media(max-width:760px){
  .fk-jobs,.fk-quick{grid-template-columns:1fr 1fr}.fk-row3{grid-template-columns:1fr}.fk-dev{grid-template-columns:1fr}.fk-dev .fk-look,.fk-dev .fk-note{grid-column:1}
  .fk-seg{grid-template-columns:1fr}.fk-gstep{grid-template-columns:30px 1fr}.fk-gstep img{grid-column:1/-1}.fk-manual{grid-template-columns:1fr}
}
[data-theme="light"] .fk-job,[data-theme="light"] .fk-sec{background:#fff}
[data-theme="light"] .fk-ok{color:#047857}[data-theme="light"] .fk-warn{color:#b45309}
.fk-manual[hidden],.fk-sec[hidden],.fk-vinfo[hidden]{display:none!important}

/* The IC attached from a field-work job — same store as the IC tab. */
.fk-ic input[type=file] { padding: 7px 10px; font-size: 13px; }
.fk-opt-t { font-weight: 400; font-size: 11px; color: var(--muted, #94a3b8); text-transform: none; letter-spacing: 0; }
.fk-icpick { margin-top: 6px; font-size: 12.5px; min-height: 18px; }

/* A plant with no records says so, instead of showing a wall of zeros. */
.dm-empty-plant { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px;
  border-left: 3px solid #f59e0b; background: rgba(245, 158, 11, .07); }
.dm-empty-plant b { font-size: 14px; }
.dm-empty-plant span { font-size: 12.5px; opacity: .8; line-height: 1.5; }

/* Undo, in the audit trail — the Safety Administrator's column. */
.dm-undo { white-space: nowrap; }
.dm-undone { display: flex; flex-direction: column; gap: 1px; color: #34d399; font-size: 12px; white-space: nowrap; }
.dm-undone .dk-mini { opacity: .7; }
