:root{--chrome: #131415;--chrome-2: #1e2022;--chrome-3: #2c2f32;--chrome-line: #2a2d30;--chrome-ink: #ecedee;--chrome-ink-2: #a9adb1;--chrome-ink-3: #777c81;--chrome-hi: #ffffff;--chrome-warn: #e5b04c;--bg: #e7e9eb;--surface: #ffffff;--sunk: #eef0f2;--line: #d6d9dc;--line-strong: #bcc1c6;--ink: #131517;--ink-2: #4a4f55;--ink-3: #777d83;--accent: #1c1f22;--accent-hover: #383c41;--accent-ink: #ffffff;--info: #2e6a9e;--info-soft: #e0ebf5;--ok: #22744a;--ok-soft: #dceee3;--warn: #8f5c00;--warn-soft: #f6ebd0;--bad: #b02c25;--bad-soft: #f7e0dd;--hold: #5a4c9a;--hold-soft: #e7e3f3;--tag: #f2c230;--tag-ink: #15181b;--shadow-lg: 0 18px 48px rgb(10 11 12 / .22);--scrim: rgb(10 11 12 / .5);--accent-soft: #e6e8ea;--display: "Archivo", "Bahnschrift", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;--body: "Archivo", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--r: 10px;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #0f1011;--surface: #181a1c;--sunk: #202325;--line: #2b2e31;--line-strong: #3d4146;--ink: #ecedee;--ink-2: #adb1b5;--ink-3: #7d8287;--accent: #e2e3e4;--accent-hover: #ffffff;--accent-ink: #111213;--info: #87b2da;--info-soft: #16242f;--ok: #5bbd85;--ok-soft: #12251a;--warn: #e1aa46;--warn-soft: #2a210e;--bad: #ee6f65;--bad-soft: #2f1716;--hold: #a797ea;--hold-soft: #201c33;--tag: #e9ba25;--shadow-lg: 0 18px 48px rgb(0 0 0 / .55);--scrim: rgb(0 0 0 / .62);--accent-soft: #27292c;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.45 var(--body);-webkit-font-smoothing:antialiased;padding-top:env(safe-area-inset-top,0px)}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:25;background:var(--chrome)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3{font-family:var(--display);font-weight:680;font-stretch:112%;margin:0;text-wrap:balance;letter-spacing:-.01em}h1{font-size:31px;line-height:1.08}h2{font-size:19px;line-height:1.2}p{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.side :focus-visible,.top :focus-visible,.tabbar :focus-visible,.login-brand :focus-visible{outline-color:var(--chrome-ink)}.ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}.grow{flex:1 1 auto;min-width:0}.logo{display:inline-block;flex:none;height:32px;aspect-ratio:480 / 420;max-width:100%;background:url(/brand/mis-logo-light.png) center / contain no-repeat}.app{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:calc(100dvh - env(safe-area-inset-top,0px))}.side{background:var(--chrome);color:var(--chrome-ink);border-right:1px solid var(--chrome-line);padding-block:20px 18px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:16px;display:flex;flex-direction:column;gap:26px;position:sticky;top:env(safe-area-inset-top,0px);align-self:start;height:calc(100dvh - env(safe-area-inset-top,0px));overflow-y:auto}.brand{display:flex;gap:12px;align-items:center;padding:2px 6px;text-decoration:none}.side-logo{height:42px}.brand-name{display:block;font:700 14px/1 var(--display);font-stretch:112%;letter-spacing:.2em;text-transform:uppercase}.brand-sub{display:block;font-size:10.5px;color:var(--chrome-ink-3);margin-top:6px;line-height:1.25}.side-nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:8px;color:var(--chrome-ink-2);font-weight:500;text-decoration:none}.nav-item:hover{background:var(--chrome-2);color:var(--chrome-ink)}.nav-item.on{background:var(--chrome-3);color:var(--chrome-hi);font-weight:600}.side-foot{margin-top:auto;font-size:11.5px;color:var(--chrome-ink-3);padding:0 6px;line-height:1.45}.main{min-width:0;display:flex;flex-direction:column}.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--chrome);color:var(--chrome-ink);border-bottom:1px solid var(--chrome-line)}.top-in{display:flex;align-items:center;gap:10px;padding-block:10px;padding-left:24px;padding-right:max(24px,env(safe-area-inset-right,0px))}.top-brand{display:none;align-items:center}.site-pick{display:flex;align-items:center;gap:6px;color:var(--chrome-ink-2);min-width:0}.site-pick .ic{width:18px;height:18px}.site-pick select,.site-pick select:disabled{height:36px;font-weight:600;border:1px solid var(--chrome-line);background:var(--chrome-2);color:var(--chrome-ink);color-scheme:dark;border-radius:8px;padding:0 8px;min-width:0;max-width:220px;opacity:1}.view{width:100%;max-width:1180px;padding-block:26px 56px;padding-left:24px;padding-right:max(24px,env(safe-area-inset-right,0px))}.tabbar{display:none}.menu-wrap{position:relative}.avatar-btn{display:flex;align-items:center;gap:9px;border:0;background:none;padding:4px 6px;border-radius:8px}.avatar-btn:hover{background:var(--chrome-2)}.who{display:flex;flex-direction:column;line-height:1.15;text-align:left}.who b{font-weight:600;font-size:13.5px}.who small{color:var(--chrome-ink-3);font-size:12px}.avatar{width:32px;height:32px;border-radius:50%;background:var(--chrome-3);color:var(--chrome-ink);display:inline-grid;place-items:center;font:600 12px/1 var(--body);letter-spacing:.02em;flex:none}.menu{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);min-width:250px;padding:6px;z-index:30}.menu button{display:flex;width:100%;gap:10px;align-items:center;padding:8px 10px;border-radius:6px;border:0;background:none;text-align:left}.menu button:hover{background:var(--sunk)}.who-block{padding:8px 10px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}.who-block b{display:block}.who-block small{color:var(--ink-3);overflow-wrap:anywhere}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 14px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:500;white-space:nowrap}.btn .ic{width:18px;height:18px}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.top .btn-primary{background:var(--chrome-ink);border-color:var(--chrome-ink);color:var(--chrome)}.top .btn-primary:hover{background:var(--chrome-hi)}.btn-block{width:100%;height:40px}.pill{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:4px;font-size:12px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.pill .ic{width:14px;height:14px;stroke-width:2}.pill-build{background:var(--info-soft);color:var(--info)}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 16px;margin-bottom:20px}.eyebrow{font:600 11.5px/1.2 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.lead{color:var(--ink-2);margin-top:8px;max-width:62ch;font-size:15px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;min-width:0;max-width:760px}.coming-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:8px}.coming-list{list-style:none;margin:0;padding:0}.coming-list li{position:relative;padding:10px 0 10px 18px;border-top:1px solid var(--line)}.coming-list li:first-child{border-top:0}.coming-list li:before{content:"";position:absolute;left:2px;top:17px;width:6px;height:6px;border-radius:50%;background:var(--ink-3)}.hint{color:var(--ink-3);font-size:12.5px;margin-top:10px;overflow-wrap:anywhere}.login{min-height:calc(100dvh - env(safe-area-inset-top,0px));display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.login-brand{background:var(--chrome);color:var(--chrome-ink);padding-block:44px 48px;padding-left:max(48px,env(safe-area-inset-left,0px));padding-right:48px;display:flex;flex-direction:column;justify-content:space-between;gap:36px;position:relative;overflow:hidden}.login-brand>:not(.lb-gear){position:relative;z-index:1}.lb-gear{position:absolute;z-index:0;width:440px;height:440px;right:-130px;bottom:-140px;fill:var(--chrome-2)}.lb-gear circle{fill:var(--chrome)}.lb-top{display:flex;align-items:center;gap:16px}.lb-logo{height:64px}.lb-name{font:700 24px/1 var(--display);font-stretch:112%}.lb-by{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--chrome-ink-3);margin-top:7px;font-weight:600}.lb-head{font:700 46px/1.03 var(--display);font-stretch:112%;max-width:14ch;letter-spacing:-.015em}.lb-tag{font-size:16px;color:var(--chrome-ink-2);max-width:40ch;margin-top:16px;line-height:1.5}.lb-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;max-width:44ch}.lb-points li{display:flex;gap:10px;align-items:flex-start}.lb-points .ic{color:var(--chrome-ink-2);width:18px;height:18px;margin-top:2px}.login-side{display:grid;place-items:center;padding-block:40px;padding-left:28px;padding-right:max(28px,env(safe-area-inset-right,0px))}.login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:14px}.login-card h1{font-size:28px}.practice{background:var(--info-soft);color:var(--info);border-radius:8px;padding:10px 12px;font-size:13px}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field>span{font-size:12.5px;font-weight:600;color:var(--ink-2)}.field input,.field select{height:40px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:0 10px;width:100%;min-width:0}.form-err{color:var(--bad);font-weight:500}.field em{font-style:normal;font-weight:400;color:var(--ink-3)}.field input[readonly]{background:var(--sunk);color:var(--ink-2)}.field select:disabled{opacity:.7}.btn:disabled{opacity:.6;cursor:default}.loading{min-height:100dvh;background:var(--chrome)}.mono{font-family:var(--mono)}.muted{color:var(--ink-3)}.small{font-size:12.5px}.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}.btn-ghost{border-color:transparent;background:transparent;color:var(--ink-2)}.btn-sm{height:30px;padding:0 10px;font-size:13px}.pill-role{background:var(--sunk);color:var(--ink-2)}.pill-wait{background:var(--info-soft);color:var(--info);margin-top:6px}.pill-off{background:var(--sunk);color:var(--ink-3);margin-top:6px}.cols{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start}.cols .card{max-width:none}.stack{display:flex;flex-direction:column;gap:20px;min-width:0}.card h2{margin-bottom:10px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.card-head h2{margin:0}.empty{padding:22px 16px;color:var(--ink-3);text-align:center;margin:0}.mini-list{display:flex;flex-direction:column}.mini{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.mini:first-child{border-top:0}.mini>span:first-child{min-width:0}.mini b{display:block;font-weight:600}.mini small{display:block;color:var(--ink-3);font-size:12px}.mini-side{display:flex;align-items:center;gap:8px;flex:none}.kv{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 18px;margin:0}.kv dt{color:var(--ink-3)}.kv dd{margin:0}.tbl-wrap{overflow-x:auto;margin-inline:-4px}table{width:100%;border-collapse:collapse;font-size:13.5px}th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);font-weight:600;padding:8px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top}td b,td.mono{white-space:nowrap}td .pill-wait,td .pill-off{display:flex;width:max-content}tr.off td>:not(.row-end){color:var(--ink-3)}.row-end{text-align:right}.tnum,.num{font-variant-numeric:tabular-nums}td.num,th.num{text-align:right}.nowrap{white-space:nowrap}.btn-row{display:flex;flex-wrap:wrap;gap:8px}.link{background:none;border:0;padding:0;color:var(--ink);font:inherit;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;text-align:left}.back{display:inline-flex;align-items:center;gap:4px;color:var(--ink-2);background:none;border:0;padding:4px 0;margin-bottom:10px;font-weight:500;text-decoration:none}.back:hover{color:var(--ink)}.k-ok{background:var(--ok-soft);color:var(--ok)}.k-low{background:var(--warn-soft);color:var(--warn)}.k-out{background:var(--bad-soft);color:var(--bad)}.crit{color:var(--bad);font-weight:600}.mono-eyebrow{font-family:var(--mono);text-transform:none;letter-spacing:0;font-weight:500;font-size:12.5px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px}.toolbar select{height:40px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:0 10px}.search{position:relative;flex:1 1 240px;min-width:0}.search .ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--ink-3);pointer-events:none}.search input{width:100%;height:40px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:0 10px 0 34px}.toggle{display:flex;align-items:center;gap:7px;font-weight:500;color:var(--ink-2);white-space:nowrap}.toggle input{width:17px;height:17px;accent-color:var(--accent)}.banner{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);margin-bottom:18px}.banner>.ic{color:var(--ink-2)}.banner .grow{flex:1 1 260px}.banner.warn{background:var(--warn-soft);border-color:transparent}.banner.warn>.ic{color:var(--warn)}.rows{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.row{display:grid;grid-template-columns:4px minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--line);padding:12px 16px 12px 0;color:inherit;text-decoration:none}.row:first-child{border-top:0}.row:hover{background:var(--sunk)}.stripe{align-self:stretch;width:4px;margin-block:-12px}.row-main{min-width:0;display:block}.row-title{display:block;font-weight:600;font-size:14.5px}.row-sub{display:block;color:var(--ink-3);font-size:12.5px;margin-top:1px}.row-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.row.retired .row-title{color:var(--ink-3)}.prow{display:grid;grid-template-columns:96px minmax(0,1fr) 92px 92px 88px 112px;gap:12px;align-items:center;padding:11px 16px;border:0;border-top:1px solid var(--line);background:none;width:100%;text-align:left;color:inherit;text-decoration:none}.prow:first-child{border-top:0}a.prow:hover{background:var(--sunk)}.prow.head{background:var(--sunk);font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);font-weight:600;padding-block:8px}.c-id{font-size:12.5px;color:var(--ink-2)}.c-name{min-width:0}.c-name b{display:block;font-weight:600}.c-name small{display:block;color:var(--ink-3);font-size:12px}.c-qty{font-weight:600}.c-qty small,.c-mm small{color:var(--ink-3);font-size:12px;font-weight:400}.c-bin{font-size:12.5px}.prow .num{text-align:right}.sm-only{display:none}.sec-h{font:600 12px/1 var(--body);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin:0 0 8px}a.mini{text-decoration:none;color:inherit}a.mini:hover b{text-decoration:underline;text-underline-offset:2px}.label-code{font:500 26px/1.1 var(--mono)}.notes{white-space:pre-wrap}tr.here td{background:var(--sunk)}td.neg{color:var(--bad)}td.pos{color:var(--ok)}.every{display:flex;gap:8px}.every input{width:84px;flex:none}.field textarea{min-height:84px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:8px 10px;width:100%;resize:vertical}.pick-list{max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;padding:6px 10px;display:flex;flex-direction:column;gap:6px}.pick-list .site-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);font-weight:600;margin-top:4px}.banner.info{background:var(--accent-soft);border-color:transparent}.s-bad .stripe{background:var(--bad)}.s-warn .stripe{background:var(--warn)}.row-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.row-top+.row-title{margin-top:3px}.id{font-size:12px;color:var(--ink-3)}.row-hit{display:block;background:none;border:0;padding:0;margin:0;text-align:left;color:inherit;font:inherit;min-width:0;cursor:pointer}.row-hit:hover .row-title{text-decoration:underline;text-underline-offset:2px}div.row:hover{background:none}.pill-plain{background:var(--sunk);color:var(--ink-2)}.t-pm{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);font-size:13px;font-weight:500}.chip:hover{background:var(--sunk)}.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip .c{opacity:.65;margin-left:5px;font-variant-numeric:tabular-nums}.assign{display:inline-flex;align-items:center;gap:6px}.assign-pick{height:32px;width:auto;max-width:180px;font-size:13px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:0 6px}.avatar.sm{width:26px;height:26px;font-size:10.5px}.who-cell{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2)}.unassigned{font-size:12px;color:var(--ink-3)}.dialog.wide{width:min(680px,100%)}.fs{border:0;margin:0;padding:0;min-width:0}.seg{display:grid;grid-template-columns:1fr 1fr;gap:8px}.opt{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--line-strong);border-radius:8px;padding:10px;cursor:pointer}.opt input{width:17px;height:17px;flex:none;margin-top:3px;accent-color:var(--accent)}.opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.opt b{display:block;font-weight:600}.opt small{color:var(--ink-3);font-size:12px;line-height:1.3;display:block}.pm-part{display:flex;gap:8px;margin-top:6px}.pm-part select{flex:1;min-width:0}.pm-part .qty{width:70px;flex:none}.preview{display:flex;gap:10px;align-items:flex-start;background:var(--sunk);border-radius:8px;padding:10px 12px;color:var(--ink-2);font-size:13px}.preview .ic{width:18px;height:18px;margin-top:1px;flex:none}.field input[type=date]{padding-right:6px}.pad-y{padding-block:10px}a.pill{text-decoration:none}.t-pm .ic{stroke-width:2}.t-breakdown{background:var(--bad-soft);color:var(--bad)}.t-corrective{background:var(--sunk);color:var(--ink-2)}.t-safety{background:var(--tag);color:var(--tag-ink)}.t-project{background:var(--hold-soft);color:var(--hold)}.p-emergency{background:var(--bad);color:var(--surface)}.p-high{background:var(--warn-soft);color:var(--warn)}.status-pill{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;border:1px solid transparent}.st-open{border-color:var(--line-strong);color:var(--ink-2)}.st-in-progress{background:var(--info-soft);color:var(--info)}.st-on-hold{background:var(--hold-soft);color:var(--hold)}.st-done{background:var(--ok-soft);color:var(--ok)}.st-skipped,.st-cancelled{background:var(--sunk);color:var(--ink-3)}.s-hold .stripe{background:var(--hold)}.s-accent .stripe{background:var(--info)}.s-ok .stripe{background:var(--ok)}.due{font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}.due.is-bad{color:var(--bad);font-weight:600}.row-side .avatar.sm{background:var(--sunk);color:var(--ink-2)}.count-badge{background:var(--sunk);color:var(--ink-2);border-radius:999px;padding:2px 7px;font-size:11px;letter-spacing:0}.sec-h{display:flex;align-items:center;gap:8px}.tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:26px}.tile{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px 13px;display:flex;flex-direction:column;gap:6px;min-width:0;color:inherit;text-decoration:none}.tile:hover{border-color:var(--line-strong)}.tile .n{font:700 36px/1 var(--display);font-stretch:112%;font-variant-numeric:tabular-nums}.tile .l{color:var(--ink-2);font-size:13px;line-height:1.3}.tile.bad .n{color:var(--bad)}.tile.warn .n{color:var(--warn)}.tile.ok .n{color:var(--ok)}.safety{display:flex;align-items:stretch;border-radius:var(--r);overflow:hidden;margin:0 0 18px;background:var(--tag);color:var(--tag-ink)}.safety .haz{width:16px;flex:none;background:repeating-linear-gradient(-45deg,var(--tag-ink) 0 6px,var(--tag) 6px 12px)}.safety .sf{padding:10px 14px;display:flex;gap:10px;align-items:center;font-weight:600}.safety .sf small{display:block;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.1em;opacity:.75}.wo-head h1{margin-top:6px}.wo-asset{display:inline-flex;align-items:center;gap:6px;margin-top:8px}.wo-asset .ic{width:17px;height:17px}.wo-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 22px;padding:14px 0;border-block:1px solid var(--line);margin:0 0 18px}.meta dt{font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);font-weight:600}.meta dd{margin:3px 0 0;font-weight:500;min-width:0}.bar{height:6px;border-radius:3px;background:var(--sunk);overflow:hidden;margin-bottom:4px}.bar i{display:block;height:100%;background:var(--accent)}.check{display:flex;gap:11px;align-items:flex-start;padding:10px 0;border-top:1px solid var(--line);cursor:pointer}.check:first-child{border-top:0}.check input{width:19px;height:19px;accent-color:var(--accent);margin:1px 0 0;flex:none}.check.done span{color:var(--ink-3);text-decoration:line-through;text-decoration-thickness:1px}.sub-h{font:600 11.5px/1 var(--body);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);margin:14px 0 2px}.pline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.sub-h+.pline{border-top:0}.pl-main{display:flex;flex-direction:column;min-width:0}.pl-main b{font-weight:600}.pl-side{display:flex;align-items:center;gap:8px}.pl-side .qty{width:64px;height:30px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:0 8px}.pl-total{display:flex;justify-content:space-between;gap:10px;padding:10px 0 2px;border-top:1px solid var(--line)}.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.ph{aspect-ratio:1;max-width:100%;border-radius:8px;overflow:hidden;border:1px solid var(--line);padding:0;background:var(--sunk)}.ph img{width:100%;height:100%;object-fit:cover;display:block}.ph.add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--ink-2);border-style:dashed;border-color:var(--line-strong);font-size:12.5px;font-weight:500;cursor:pointer;text-align:center}.ph.add:hover{background:var(--surface);color:var(--accent);border-color:var(--accent)}.ph-full{display:block;width:100%;max-height:70vh;object-fit:contain;border-radius:8px;background:var(--sunk)}.banner.hold{background:var(--hold-soft);border-color:transparent}.banner.hold>.ic{color:var(--hold)}a.btn{text-decoration:none}label.btn{cursor:pointer}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:16px}.tab{background:none;border:0;padding:10px 12px;font-weight:600;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;display:flex;gap:6px;align-items:center}.tab.on{color:var(--ink);border-color:var(--accent)}.total-row{display:flex;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid var(--line);background:var(--sunk)}.csv-box{width:100%;font:12px var(--mono);border:1px solid var(--line-strong);border-radius:8px;background:var(--sunk);padding:8px}.tag-label{background:#fff;color:#111;border:1px solid var(--line-strong);border-radius:8px;overflow:hidden;max-width:360px}.tag-band{display:flex;align-items:center;gap:9px;background:#131415;color:#ecedee;font:700 11px/1 var(--display);font-stretch:112%;letter-spacing:.16em;text-transform:uppercase;padding:6px 10px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.tag-band .logo{height:20px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.tag-body{display:flex;gap:12px;padding:10px;align-items:center}.qr{width:104px;height:104px;flex:none;display:block}.tag-text{min-width:0;overflow-wrap:anywhere}.tag-code{font-size:15px;font-weight:500}.tag-name{font-weight:600;line-height:1.25;margin-top:2px}.tag-sub{font-size:12px;opacity:.7;margin-top:2px}.label-picks{max-height:360px;overflow-y:auto}.pick-row{padding:9px 16px;align-items:center}.pick-row .mono{min-width:84px}.skip{width:60px;height:34px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:0 8px}.toggle .skip{width:60px}.sheet-head{margin-top:22px}.sheets{overflow-x:auto;margin-top:12px}.sheet{box-sizing:border-box;width:8.5in;height:11in;padding:.5in .156in;display:grid;grid-template-columns:4in 4in;grid-auto-rows:2in;column-gap:.188in;background:#fff;box-shadow:0 0 0 1px var(--line);margin-bottom:14px}.sheet-cell{overflow:hidden}.sheet .tag-label{height:100%;max-width:none;border:0;border-radius:0;display:flex;flex-direction:column}.sheet .tag-body{flex:1;min-height:0;padding:.06in .12in}.sheet .qr{width:1.45in;height:1.45in}.sheet .tag-code{font-size:15pt}.sheet .tag-name{font-size:12pt}.sheet .tag-sub{font-size:10pt}.scan-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;margin-bottom:14px;align-items:stretch}.viewfinder{position:relative;min-height:260px;border-radius:var(--r);background:var(--chrome);color:var(--chrome-ink-2);display:grid;place-items:center;overflow:hidden}.vf-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;visibility:hidden}.vf-video.on{visibility:visible}.vf{position:absolute;width:34px;height:34px;border:0 solid var(--chrome-ink)}.vf.c1{top:22px;left:22px;border-top-width:3px;border-left-width:3px}.vf.c2{top:22px;right:22px;border-top-width:3px;border-right-width:3px}.vf.c3{bottom:22px;left:22px;border-bottom-width:3px;border-left-width:3px}.vf.c4{bottom:22px;right:22px;border-bottom-width:3px;border-right-width:3px}.vf-text{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:24px;max-width:330px}.vf-text b{color:var(--chrome-ink);font-weight:600}.vf-text .ic{width:30px;height:30px}.scan-form{display:flex;flex-direction:column;gap:12px;justify-content:center;max-width:none}.crash{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;text-align:center}.is-busy{opacity:.6;pointer-events:none}.import-rows{max-height:460px;overflow-y:auto;margin-top:6px}@page{size:letter;margin:0}@media print{body{background:#fff;padding:0}body:before,.side,.top,.tabbar,.toast,.no-print{display:none!important}.app{display:block}.view{padding:0!important;max-width:none}.sheets{overflow:visible;margin:0}.sheet{box-shadow:none;margin:0;break-after:page}.sheet:last-child{break-after:auto}}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.span2{grid-column:1 / -1}.check-inline{display:flex;gap:8px;align-items:center;font-weight:500}.check-inline input{width:17px;height:17px;accent-color:var(--accent);flex:none}.site-checks{display:flex;flex-wrap:wrap;gap:14px;padding-top:4px}.scrim{position:fixed;inset:0;background:var(--scrim);display:grid;place-items:center;z-index:50;padding-block:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.dialog{background:var(--surface);border-radius:14px;width:min(540px,100%);max-height:calc(100dvh - 32px);overflow:auto;box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.dlg-head{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px;position:sticky;top:0;background:var(--surface);z-index:1}.dlg-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.dlg-foot{padding:14px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;align-items:center;gap:8px;position:sticky;bottom:0;background:var(--surface);flex-wrap:wrap}.foot-left{margin-right:auto}.link-box{width:100%;height:40px;border:1px solid var(--line-strong);border-radius:8px;background:var(--sunk);padding:0 10px;font-size:12.5px}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%);background:var(--ink);color:var(--bg);padding:11px 16px;border-radius:10px;max-width:min(560px,calc(100vw - 32px));z-index:60;box-shadow:var(--shadow-lg);font-weight:500;width:max-content}@media(max-width:1100px){.tiles{grid-template-columns:repeat(6,minmax(0,1fr))}.tile{grid-column:span 2}.tile:nth-child(4),.tile:nth-child(5){grid-column:span 3}}@media(max-width:520px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tile,.tile:nth-child(4){grid-column:span 1}.tile:nth-child(5){grid-column:span 2}.tile .n{font-size:30px}}@media(max-width:1000px){.cols{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.form-grid,.seg{grid-template-columns:minmax(0,1fr)}.row{grid-template-columns:4px minmax(0,1fr)}.row-side{grid-column:2;justify-content:flex-start}}@media(max-width:720px){.prow.head{display:none}.prow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name st" "meta qty";row-gap:4px}.prow .c-name{grid-area:name}.prow .c-st{grid-area:st;text-align:right}.prow .c-qty{grid-area:qty}.prow .c-id{grid-area:meta}.prow .c-bin,.prow .c-mm{display:none}.sm-only{display:inline}.prow.r .c-qty{display:none}.prow.r .c-mm{display:block;grid-area:qty}.scan-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:860px){.toast{bottom:calc(84px + env(safe-area-inset-bottom,0px))}.app{grid-template-columns:minmax(0,1fr)}.side{display:none}.top-brand{display:flex}.top-brand .logo{height:30px}.top-in{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));gap:8px}.view{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-top:18px;padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.hide-sm{display:none}.tabbar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--chrome);border-top:1px solid var(--chrome-line);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(8px,env(safe-area-inset-right,0px))}.tab-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 0 7px;color:var(--chrome-ink-3);font-size:11px;font-weight:600;text-decoration:none;min-width:0}.tab-item.on{color:var(--chrome-hi)}h1{font-size:26px}.login{grid-template-columns:minmax(0,1fr)}.login-brand{padding-block:26px 36px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));gap:20px}.lb-head{font-size:34px}.lb-logo{height:52px}.lb-gear{width:300px;height:300px;right:-110px;bottom:-120px}.lb-points{display:none}.login-side{padding-block:28px 40px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));place-items:start center}}@media(max-width:520px){.who{display:none}.site-pick select{max-width:150px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.map-layout{display:grid;gap:16px}.map-layout.is-editing{grid-template-columns:minmax(0,1fr) 280px;align-items:start}.map-card{padding:12px;min-width:0}.map-scroll{overflow:auto;max-height:72vh;border:1px solid var(--line);border-radius:4px}.map-sheet{display:block;height:auto;font-family:Archivo,sans-serif}.map-sheet.is-editing{touch-action:none;-webkit-user-select:none;user-select:none}.map-floor{fill:var(--sunk)}.map-shape{stroke-width:2;fill-opacity:.22}.map-sheet.is-editing .map-shape{cursor:move}.map-shape.is-selected{stroke:var(--ink);stroke-width:3;stroke-dasharray:8 5}.map-c-steel{fill:#7d858d;stroke:#7d858d}.map-c-graphite{fill:#2c2f32;stroke:#2c2f32;fill-opacity:.85}.map-c-blue{fill:#4f7ea8;stroke:#4f7ea8}.map-c-green{fill:#5b8f6e;stroke:#5b8f6e}.map-c-sand{fill:#b49a6a;stroke:#b49a6a}.map-shape-label{fill:var(--ink-2);font-size:18px;font-weight:700;pointer-events:none}.map-handle{fill:var(--surface);stroke:var(--ink);stroke-width:2;cursor:nwse-resize}.map-machine{cursor:pointer}.map-sheet.is-editing .map-machine{cursor:move}.map-machine rect{fill:var(--surface);stroke:var(--line-strong);stroke-width:2}.map-machine text{pointer-events:none}.map-machine-name{fill:var(--ink);font-size:15px;font-weight:700}.map-machine-code{fill:var(--ink-2);font-size:12px;font-family:IBM Plex Mono,monospace}.map-machine.s-open rect{stroke:var(--ink-2)}.map-machine.s-overdue rect{fill:var(--bad-soft);stroke:var(--bad)}.map-machine.s-hold rect{fill:var(--hold-soft);stroke:var(--hold)}.map-machine:hover rect,.map-machine:focus-visible rect{stroke-width:3}.map-machine:focus{outline:none}.map-machine.is-selected rect{stroke:var(--ink);stroke-width:3;stroke-dasharray:8 5}.map-machine.is-hit rect{stroke:var(--ink);stroke-width:5}.map-found rect{animation:map-pulse 1.2s ease-in-out 3}@keyframes map-pulse{50%{stroke-width:11}}@media(prefers-reduced-motion:reduce){.map-found rect{animation:none}}.map-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:10px}.map-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--ink-2)}.map-key{display:inline-flex;align-items:center;gap:6px}.map-swatch{width:14px;height:14px;border-radius:3px;border:2px solid var(--line-strong);background:var(--surface)}.map-swatch.s-open{border-color:var(--ink-2)}.map-swatch.s-overdue{background:var(--bad-soft);border-color:var(--bad)}.map-swatch.s-hold{background:var(--hold-soft);border-color:var(--hold)}.map-results{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.map-tools h2{margin-top:16px}.map-tools h2:first-child{margin-top:0}.map-selected{display:grid;gap:10px;margin-top:12px;padding:12px;background:var(--sunk);border-radius:4px}.map-colors{display:flex;gap:8px}.map-color{width:32px;height:32px;border-radius:4px;border:2px solid var(--line-strong);cursor:pointer}.map-color[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:1px}.map-b-steel{background:#7d858d}.map-b-graphite{background:#2c2f32}.map-b-blue{background:#4f7ea8}.map-b-green{background:#5b8f6e}.map-b-sand{background:#b49a6a}.map-unplaced{display:flex;flex-direction:column;align-items:stretch;gap:6px;max-height:320px;overflow:auto}.map-unplaced .btn{justify-content:flex-start;text-align:left}@media(max-width:900px){.map-layout.is-editing{grid-template-columns:minmax(0,1fr)}}.nav-count{margin-left:auto;min-width:24px;padding:1px 7px;border-radius:999px;background:var(--bad);color:#fff;font-size:13px;font-weight:700;text-align:center}.tab-item{position:relative}.tab-item .nav-count{position:absolute;top:3px;left:calc(50% + 4px);min-width:18px;margin:0;padding:0 5px;font-size:11px;line-height:16px}.btn-danger{background:var(--bad);border-color:var(--bad);color:#fff}.btn-danger:hover:not(:disabled){background:var(--bad);filter:brightness(.9)}.btn-danger:disabled{opacity:.45}.impact{margin:8px 0 12px;padding-left:20px}.removed-head{margin-top:16px}.map-c-teal{fill:#2f8f8f;stroke:#2f8f8f}.map-c-yellow{fill:#f2c230;stroke:#c99a00;fill-opacity:.5}.map-c-orange{fill:#d9772a;stroke:#d9772a;fill-opacity:.35}.map-c-red{fill:#c4342c;stroke:#c4342c;fill-opacity:.35}.map-c-purple{fill:#6f5bb0;stroke:#6f5bb0;fill-opacity:.3}.map-b-teal{background:#2f8f8f}.map-b-yellow{background:#f2c230}.map-b-orange{background:#d9772a}.map-b-red{background:#c4342c}.map-b-purple{background:#6f5bb0}.map-colors{flex-wrap:wrap}.map-text{font-weight:600;pointer-events:none}.map-t-steel{fill:#5f676f}.map-t-graphite{fill:var(--ink)}.map-t-blue{fill:#3a6a94}.map-t-teal{fill:#1f7a7a}.map-t-green{fill:#3f7a55}.map-t-sand{fill:#8a7344}.map-t-yellow{fill:#a88600}.map-t-orange{fill:#c0621b}.map-t-red{fill:#c4342c}.map-t-purple{fill:#6f5bb0}.map-text-box{fill:transparent;pointer-events:none}.map-sheet.is-editing .map-text-box{pointer-events:all;cursor:move}.map-text-box.is-selected{stroke:var(--ink);stroke-width:2;stroke-dasharray:8 5}.map-turn-line{stroke:var(--ink);stroke-width:2;pointer-events:none}.map-turn{fill:var(--surface);stroke:var(--ink);stroke-width:2;cursor:grab}.map-rotate{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px}.map-rotate span{width:100%;font-weight:600}.map-rotate input{width:64px;text-align:center}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:16px}th.num,td.num{text-align:right;white-space:nowrap}.report-wide{width:100%;max-width:none}.helper-card{width:100%;max-width:760px;margin-bottom:14px}.helper-send{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px}.helper-q{margin:0 0 8px;font-weight:700}.helper-a{margin:0 0 10px;white-space:pre-wrap}.helper-note{margin:0 0 10px}.helper-sources{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.tabbar.tabbar-two{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card{width:100%;max-width:640px;margin-bottom:14px}form.report-card{display:flex;flex-direction:column;gap:14px}.report-kinds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.report-kind{display:flex;flex-direction:column;gap:2px;min-height:64px;padding:10px;text-align:left;font:inherit;color:inherit;background:transparent;border:1px solid var(--line);border-radius:8px;cursor:pointer}.report-kind small{color:var(--ink-3)}.report-kind.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.report-send{width:100%;min-height:48px;justify-content:center}@media(max-width:520px){.report-kinds{grid-template-columns:1fr}}.nav-count-new{background:var(--tag);color:var(--tag-ink)}.nav-count-new+.nav-count{margin-left:6px}.tab-item .nav-count-new{left:auto;right:calc(50% + 4px)}.nav-item>span{white-space:nowrap}
