@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f7f9;--surface:#fff;--surface-2:#fafbfc;--sunken:#f1f3f6;--row-hover:#f7f9fc;--line:#e5e8ec;--line-soft:#eef0f3;--line-strong:#d3d8df;--text:#141821;--text-2:#4a5468;--text-3:#6e7789;--accent:#2552c7;--accent-soft:#ebf0fd;--strong:#141821;--strong-hover:#2a3140;--on-strong:#fff;--good:#137a52;--good-soft:#e6f4ee;--warn:#b25a00;--warn-soft:#fdf1e2;--bad:#c03221;--bad-soft:#fcebe8;--violet:#6a3fc0;--violet-soft:#f1ecfb;--neutral-soft:#eef0f3;--r1:#2e9e6b;--r2:#c8a412;--r3:#e07b1a;--r4:#cf3a2a;--v0:#6b7385;--v1:#2552c7;--v2:#0f8b8d;--v3:#7b4bd1;--v4:#b4527a;--life-in_work:#c4c9d2;--life-prototype:#e0a43a;--life-released:#2e9e6b;--life-obsolete:#cf3a2a;--shadow-1:0 1px 2px #1018280a;--shadow-pop:0 12px 32px #1018281f, 0 2px 6px #1018280f;--scrim:#14182138;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--r-sm:6px;--radius:10px;--fs-xs:11px;--fs-sm:12px;--fs-base:13px;--fs-md:15px;--fs-lg:20px;--fs-xl:28px;--ease:cubic-bezier(.2, .7, .2, 1);--t-fast:.12s;--t:.18s;--sidebar:232px;--sidebar-mini:56px;--header:52px;--row-h:32px;--mono:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace;font-family:Inter Variable,Inter,Segoe UI Variable Text,Segoe UI,system-ui,-apple-system,sans-serif;font-size:var(--fs-base);color:var(--text);background:var(--bg);font-feature-settings:"tnum" 1, "cv11" 1, "ss01" 1;-webkit-font-smoothing:antialiased;line-height:1.45}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1116;--surface:#151920;--surface-2:#191e26;--sunken:#1e242e;--row-hover:#1a1f28;--line:#252c37;--line-soft:#1f252e;--line-strong:#343c49;--text:#e7eaf0;--text-2:#a6aebd;--text-3:#7d8698;--accent:#7097f5;--accent-soft:#7097f524;--strong:#e7eaf0;--strong-hover:#cdd3dd;--on-strong:#0e1116;--good:#45b883;--good-soft:#45b88324;--warn:#e3983d;--warn-soft:#e3983d24;--bad:#ef6b5b;--bad-soft:#ef6b5b24;--violet:#a58bea;--violet-soft:#a58bea24;--neutral-soft:#222833;--r1:#33a874;--r2:#c9a61c;--r3:#e2852c;--r4:#e04a3a;--v0:#8b93a6;--v1:#7097f5;--v2:#2bb1b3;--v3:#a07ae6;--v4:#d27499;--life-in_work:#4a5262;--shadow-1:0 1px 2px #0000004d;--shadow-pop:0 16px 40px #00000073, 0 2px 8px #0000004d;--scrim:#00000080}[data-density=compact]{--row-h:26px}*{box-sizing:border-box}body{background:var(--bg);margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:600}h1{font-size:var(--fs-lg);letter-spacing:-.015em}h2{font-size:var(--fs-md)}h3{font-size:var(--fs-base)}:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:4px}::selection{background:var(--accent-soft)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.spacer{flex:1}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.mono{font-family:var(--mono);font-size:var(--fs-sm)}.small{font-size:var(--fs-sm)}.xsmall{font-size:var(--fs-xs)}.right{text-align:right}.nowrap{white-space:nowrap}.row{align-items:center;gap:var(--s2);display:flex}.row.wrap{flex-wrap:wrap}.stack{gap:var(--s3);flex-direction:column;display:flex}.num{text-align:right;font-variant-numeric:tabular-nums}.up{color:var(--bad)}.down,.ok-text{color:var(--good)}.warn-text{color:var(--warn)}.bad-text{color:var(--bad)}.dim{opacity:.35}.ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;white-space:nowrap;height:30px;color:var(--text);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:var(--text-3);text-decoration:none}.btn.primary{background:var(--strong);color:var(--on-strong);border-color:var(--strong)}.btn.primary:hover{background:var(--strong-hover);border-color:var(--strong-hover)}.btn.accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.accent:hover{filter:brightness(1.06)}.btn.ghost{color:var(--text-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--sunken);color:var(--text)}.btn.sm{height:26px;font-size:var(--fs-sm);padding:0 9px}.btn.xs{height:22px;font-size:var(--fs-xs);border-radius:5px;padding:0 7px}.btn.icon{justify-content:center;width:30px;padding:0}.btn.sm.icon{width:26px}.btn:disabled{opacity:.45;cursor:default}.btn.danger{color:var(--bad)}.btn.danger:hover{background:var(--bad-soft);border-color:var(--bad)}.btn.good{color:var(--good)}.btn.good:hover{background:var(--good-soft);border-color:var(--good)}.input,.select,.textarea{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface);min-width:0;height:30px;color:var(--text);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);outline:none;padding:0 10px}.input.sm,.select.sm{height:26px;font-size:var(--fs-sm);padding:0 8px}.textarea{resize:vertical;height:auto;padding:8px 10px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.select.bare{height:24px;font-size:var(--fs-xs);background:0 0;border-color:#0000;padding:0 4px}.select.bare:hover{border-color:var(--line-strong)}.search{background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238a94a6' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 10px center;width:260px;padding-left:30px}.seg{background:var(--sunken);border-radius:7px;gap:2px;padding:2px;display:inline-flex}.seg button{height:26px;color:var(--text-2);cursor:pointer;transition:background var(--t-fast) var(--ease), color var(--t-fast);background:0 0;border:0;border-radius:5px;padding:0 10px;font-weight:500}.seg button:hover{color:var(--text)}.seg button.on{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--line), var(--shadow-1)}.seg.sm button{height:22px;font-size:var(--fs-sm);padding:0 8px}.chip{border:1px solid var(--line-strong);background:var(--surface);height:26px;color:var(--text-2);cursor:pointer;font-size:var(--fs-sm);transition:all var(--t-fast) var(--ease);border-radius:13px;align-items:center;gap:6px;padding:0 10px;font-weight:500;display:inline-flex}.chip:hover{color:var(--text);border-color:var(--text-3)}.chip.on{background:var(--strong);border-color:var(--strong);color:var(--on-strong)}.chip .n{color:inherit;opacity:.6}.badge{height:20px;font-size:var(--fs-xs);letter-spacing:.01em;background:var(--sunken);color:var(--text-2);white-space:nowrap;border-radius:4px;align-items:center;gap:5px;padding:0 7px;font-weight:600;display:inline-flex}.badge.sheet{background:var(--neutral-soft);color:var(--text-2)}.badge.solidworks{background:var(--accent-soft);color:var(--accent)}.badge.estimate{background:var(--violet-soft);color:var(--violet)}.badge.mbom,.badge.good{background:var(--good-soft);color:var(--good)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.accent{background:var(--accent-soft);color:var(--accent)}.badge.lock:before{content:"";background:currentColor;width:8px;height:9px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 18'%3E%3Cpath d='M3 8V5a5 5 0 0 1 10 0v3h1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1zm2 0h6V5a3 3 0 0 0-6 0z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 18'%3E%3Cpath d='M3 8V5a5 5 0 0 1 10 0v3h1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1zm2 0h6V5a3 3 0 0 0-6 0z'/%3E%3C/svg%3E") 50%/contain no-repeat}.flag{letter-spacing:.02em;background:var(--sunken);color:var(--text-2);border-radius:3px;margin-right:3px;padding:0 5px;font-size:10px;font-weight:600;line-height:17px;display:inline-block}.flag.warn{background:var(--warn-soft);color:var(--warn)}.flag.bad{background:var(--bad-soft);color:var(--bad)}.flag.accent{background:var(--accent-soft);color:var(--accent)}.pill{height:24px;font-size:var(--fs-sm);white-space:nowrap;border:1px solid var(--line);background:var(--surface);color:var(--text-2);cursor:default;transition:border-color var(--t-fast);border-radius:12px;align-items:center;gap:6px;padding:0 10px;font-weight:550;display:inline-flex}button.pill,a.pill{cursor:pointer}button.pill:hover,a.pill:hover{border-color:var(--line-strong);text-decoration:none}.pill>i{background:var(--text-3);border-radius:50%;flex:none;width:7px;height:7px}.pill.dev{background:var(--sunken);color:var(--text-2);border-color:#0000}.pill.ind{background:var(--accent-soft);color:var(--accent);border-color:#0000}.pill.ind>i{background:var(--accent)}.pill.ok>i{background:var(--good);box-shadow:0 0 0 3px var(--good-soft)}.pill.warn>i{background:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}.pill.bad>i{background:var(--bad);box-shadow:0 0 0 3px var(--bad-soft)}.pill.ok{color:var(--good)}.pill.warn{color:var(--warn)}.pill.bad{color:var(--bad)}.pill.xs{height:18px;font-size:var(--fs-xs);gap:5px;padding:0 7px;font-weight:600}.pill.xs>i{width:5px;height:5px;box-shadow:none}.kbd{border:1px solid var(--line-strong);background:var(--surface);min-width:18px;height:18px;color:var(--text-2);font-size:10.5px;font-family:var(--mono);border-bottom-width:2px;border-radius:4px;place-items:center;padding:0 4px;line-height:1;display:inline-grid}.vdot{border-radius:2px;flex:none;width:9px;height:9px;display:inline-block}.sw{vertical-align:-.5px;border-radius:2px;flex:none;width:9px;height:9px;margin-right:8px;display:inline-block}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1)}.card-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:50px;padding:12px 16px;display:flex}.card-head .sub{color:var(--text-3);font-size:var(--fs-sm)}.card-body{padding:16px}.card+.card{margin-top:16px}.card.flat{box-shadow:none}.grid2{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:16px;display:grid}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;display:grid}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;gap:16px;display:grid}.grid2>.card+.card,.grid3>.card+.card,.grid-auto>.card+.card{margin-top:0}.meter{background:var(--sunken);border-radius:2px;height:4px;overflow:hidden}.meter>i{background:var(--text-2);height:100%;transition:width var(--t) var(--ease);border-radius:2px;display:block}.meter.lg{border-radius:3px;height:6px}.tabs{border-bottom:1px solid var(--line);gap:2px;margin-bottom:16px;display:flex}.tabs button,.tabs a{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:9px 12px;font-weight:500;text-decoration:none;display:inline-flex}.tabs button:hover,.tabs a:hover{color:var(--text);text-decoration:none}.tabs .on{color:var(--text);border-bottom-color:var(--text)}.tabs .count{font-size:var(--fs-xs);color:var(--text-3);font-weight:600}.pop-anchor{display:inline-flex;position:relative}.pop{z-index:45;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:220px;max-height:70vh;box-shadow:var(--shadow-pop);animation:pop var(--t-fast) var(--ease);padding:6px;position:absolute;top:calc(100% + 6px);left:0;overflow:auto}.pop.right{left:auto;right:0}.pop.up{top:auto;bottom:calc(100% + 6px)}@keyframes pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.menu{flex-direction:column;display:flex}.menu button,.menu a,.menu label{text-align:left;cursor:pointer;width:100%;color:var(--text);font-size:var(--fs-base);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;text-decoration:none;display:flex}.menu button:hover,.menu a:hover,.menu label:hover,.menu .on{background:var(--sunken);text-decoration:none}.menu button:disabled{opacity:.55;cursor:default;background:0 0}.menu .sep{background:var(--line);height:1px;margin:4px 2px}.menu .head{font-size:var(--fs-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;padding:6px 8px 2px;font-weight:600}.modal-back{background:var(--scrim);z-index:50;animation:fade var(--t-fast) var(--ease);place-items:start center;padding-top:10vh;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{max-width:calc(100vw - 32px);max-height:80vh;animation:slide var(--t) var(--ease);box-shadow:var(--shadow-pop);flex-direction:column;display:flex}.modal .card-body{overflow:auto}.modal:focus{outline:none}.modal-foot{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:8px;padding:12px 16px;display:flex}@keyframes slide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.scrim{background:var(--scrim);z-index:40;animation:fade var(--t-fast) var(--ease);position:fixed;inset:0}.drawer{background:var(--surface);z-index:41;border-left:1px solid var(--line);width:min(660px,100vw);animation:slidein var(--t) var(--ease);box-shadow:var(--shadow-pop);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer.wide{width:min(900px,100vw)}@keyframes slidein{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.drawer-head{border-bottom:1px solid var(--line);padding:18px 22px 0}.drawer-head .tabs{border-bottom:0;margin:12px -12px 0}.drawer-body{flex:1;padding:4px 22px 40px;overflow:auto}.section{border-bottom:1px solid var(--line);padding:18px 0}.section:last-child{border-bottom:0}.section>h3{align-items:center;gap:8px;margin-bottom:12px;display:flex}.fields{grid-template-columns:1fr 1fr;gap:10px 16px;display:grid}.fields.three{grid-template-columns:1fr 1fr 1fr}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field label,.field>.lbl{font-size:var(--fs-xs);color:var(--text-2);font-weight:500}.field .input,.field .select,.field .textarea{width:100%}.field.full{grid-column:1/-1}.toast{background:var(--strong);color:var(--on-strong);z-index:70;animation:slide var(--t) var(--ease);box-shadow:var(--shadow-pop);border-radius:8px;align-items:center;gap:12px;padding:9px 14px;font-weight:500;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast.err{background:var(--bad);color:#fff}.toast button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:650;text-decoration:underline}.callout{background:var(--surface-2);border:1px solid var(--line);color:var(--text-2);font-size:var(--fs-sm);border-radius:8px;padding:12px 14px}.callout b{color:var(--text)}.callout.accent{background:var(--accent-soft);color:var(--text);border-color:#0000}.callout.warn{background:var(--warn-soft);color:var(--text);border-color:#0000}.callout.bad{background:var(--bad-soft);color:var(--text);border-color:#0000}.callout.good{background:var(--good-soft);color:var(--text);border-color:#0000}.drop{border:1.5px dashed var(--line-strong);border-radius:var(--radius);text-align:center;color:var(--text-2);background:var(--surface);cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast);padding:36px}.drop:hover{border-color:var(--text-3)}.drop.over{border-color:var(--accent);background:var(--accent-soft)}.picklist{border:1px solid var(--line);border-radius:7px;max-height:220px;margin-top:6px;overflow:auto}.picklist button{text-align:left;cursor:pointer;width:100%;font:inherit;font-size:var(--fs-sm);background:0 0;border:0;align-items:baseline;gap:8px;padding:6px 10px;display:flex}.picklist button:hover,.picklist button.on{background:var(--accent-soft)}.empty{text-align:center;color:var(--text-2);padding:48px}.empty .t{color:var(--text);margin-bottom:4px;font-weight:600}.legend{font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;gap:14px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.skel{background:linear-gradient(90deg, var(--sunken) 0%, var(--line-soft) 40%, var(--sunken) 80%);background-size:300% 100%;border-radius:4px;height:12px;animation:1.4s linear infinite shimmer;display:block}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-200% 0}}.stepper{align-items:flex-start;gap:0;display:flex}.step{flex-direction:column;flex:1;align-items:center;gap:6px;min-width:0;display:flex;position:relative}.step:before{content:"";background:var(--line);border-radius:1px;height:2px;position:absolute;top:9px;left:calc(12px - 50%);right:calc(50% + 12px)}.step:first-child:before{display:none}.step.done:before,.step.current:before{background:var(--text-2)}.step .dot{border:2px solid var(--line-strong);background:var(--surface);width:20px;height:20px;color:var(--text-3);z-index:1;border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid}.step.done .dot{background:var(--text-2);border-color:var(--text-2);color:var(--surface)}.step.current .dot{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.step .lbl{font-size:var(--fs-sm);color:var(--text-2);white-space:nowrap;font-weight:550}.step.current .lbl{color:var(--text)}.step .when{font-size:var(--fs-xs);color:var(--text-3)}.step.gate .dot{border-radius:4px;transform:rotate(45deg)}.step.gate .dot>*{transform:rotate(-45deg)}.step.ind .lbl:after{content:""}.mat{font-size:var(--fs-xs);color:var(--text-2);align-items:center;gap:5px;display:inline-flex}.mat i{border:1.5px solid;border-radius:50%;width:8px;height:8px}.mat.weighed i,.mat.datasheet i{background:currentColor}.mat.weighed,.mat.datasheet{color:var(--good)}.mat.cad,.mat.heritage,.mat.sized{color:var(--accent)}.mat.cad i,.mat.heritage i,.mat.sized i{background:linear-gradient(90deg,currentColor 50%,#0000 50%)}.mat.scaled,.mat.estimate{color:var(--warn)}.mat.target,.mat.placeholder{color:var(--bad)}.risk{width:20px;height:20px;font-size:var(--fs-xs);color:#fff;border-radius:4px;place-items:center;font-weight:700;display:inline-grid}.risk.r0{color:var(--text-3);background:0 0;font-weight:400}.risk.r1{background:var(--r1)}.risk.r2{background:var(--r2)}.risk.r3{background:var(--r3)}.risk.r4{background:var(--r4)}.life{font-size:var(--fs-xs);color:var(--text-2);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.life i{background:var(--life-in_work);border-radius:2px;width:3px;height:12px}.life.prototype i{background:var(--life-prototype)}.life.released i{background:var(--life-released)}.life.obsolete i{background:var(--life-obsolete)}.avatar{background:var(--sunken);width:26px;height:26px;color:var(--text-2);border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;font-size:10.5px;font-weight:650;display:inline-grid}.avatar[style*=--h]{background:hsl(var(--h) 55% 92%);color:hsl(var(--h) 45% 32%);border-color:#0000}[data-theme=dark] .avatar[style*=--h]{background:hsl(var(--h) 30% 24%);color:hsl(var(--h) 60% 80%)}.avatar.sm{width:22px;height:22px;font-size:9.5px}.avatars{display:inline-flex}.avatars .avatar{border:2px solid var(--surface);margin-left:-6px}.avatars .avatar:first-child{margin-left:0}.app{grid-template-columns:var(--sidebar) minmax(0, 1fr);min-height:100vh;transition:grid-template-columns var(--t) var(--ease);display:grid}.app.collapsed{grid-template-columns:var(--sidebar-mini) minmax(0, 1fr)}.main{flex-direction:column;min-width:0;display:flex}.sidebar{background:var(--surface-2);border-right:1px solid var(--line);z-index:30;flex-direction:column;gap:4px;height:100vh;padding:12px 10px;display:flex;position:sticky;top:0;overflow:hidden}.sb-brand{letter-spacing:-.01em;height:32px;color:var(--text);white-space:nowrap;align-items:center;gap:9px;padding:0 6px;font-size:14px;font-weight:650;text-decoration:none;display:flex}.sb-brand:hover{text-decoration:none}.brand{letter-spacing:-.01em;align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}.brand-mark{background:var(--strong);border-radius:6px;flex:none;place-items:center;width:22px;height:22px;display:grid}.brand-mark path{stroke:var(--on-strong)}.brand-sub{color:var(--text-3);font-weight:500}.sb-search{border:1px solid var(--line);background:var(--surface);height:32px;color:var(--text-3);cursor:pointer;white-space:nowrap;transition:border-color var(--t-fast);border-radius:7px;align-items:center;gap:8px;margin:8px 0 6px;padding:0 8px;display:flex}.sb-search:hover{border-color:var(--line-strong);color:var(--text-2)}.sb-search .kbd{margin-left:auto}.sb-nav{flex-direction:column;gap:1px;display:flex}.sb-item{height:32px;color:var(--text-2);white-space:nowrap;transition:background var(--t-fast), color var(--t-fast);border-radius:7px;align-items:center;gap:10px;padding:0 8px;font-weight:500;text-decoration:none;display:flex;position:relative}.sb-item:hover{background:var(--sunken);color:var(--text);text-decoration:none}.sb-item.on{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--line), var(--shadow-1)}.sb-item svg{opacity:.85;flex:none}.sb-item .count{background:var(--accent);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10.5px;font-weight:700;display:grid}.sb-item .count.quiet{background:var(--sunken);color:var(--text-2)}.sb-group{flex-direction:column;gap:1px;min-height:0;margin-top:14px;display:flex}.sb-group-head{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);white-space:nowrap;padding:0 8px 4px;font-weight:600}.sb-variants{flex:1;min-height:0;overflow:auto}.sb-variant{height:28px;font-size:var(--fs-sm)}.sb-variant .vdot{width:8px;height:8px}.sb-variant .ph{color:var(--text-3);letter-spacing:.03em;margin-left:auto;font-size:10px;font-weight:600}.sb-variant .ph.ind{color:var(--accent)}.sb-foot{border-top:1px solid var(--line);flex-direction:column;gap:2px;margin-top:auto;padding-top:8px;display:flex}.sb-user{cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;width:100%;padding:6px 8px;display:flex}.sb-user:hover{background:var(--sunken)}.sb-user .who{min-width:0;line-height:1.25}.sb-user .who div:last-child{font-size:var(--fs-xs);color:var(--text-3)}.sb-notice{background:var(--warn-soft);color:var(--warn);font-size:var(--fs-xs);border-radius:7px;margin:6px 0;padding:8px 10px;line-height:1.4}.app.collapsed .sb-label,.app.collapsed .sb-group-head,.app.collapsed .sb-search .kbd,.app.collapsed .sb-search span,.app.collapsed .sb-item .count,.app.collapsed .sb-user .who,.app.collapsed .sb-variant .ph,.app.collapsed .brand-name,.app.collapsed .sb-notice{display:none}.app.collapsed .sb-item,.app.collapsed .sb-search,.app.collapsed .sb-user,.app.collapsed .sb-brand{justify-content:center;padding:0}.ctx{z-index:25;height:var(--header);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(8px);backdrop-filter:saturate(1.4)blur(8px);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:0 24px;display:flex;position:sticky;top:0}.crumbs{color:var(--text-3);white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.crumbs a{color:var(--text-2)}.crumbs a:hover{color:var(--text);text-decoration:none}.crumbs .cur{color:var(--text);font-weight:600}.crumbs .sep{color:var(--line-strong)}.ctx-pills{align-items:center;gap:6px;display:flex}.ctx-right{align-items:center;gap:12px;margin-left:auto;display:flex}.vswitch{border:1px solid var(--line);background:var(--surface);cursor:pointer;height:28px;color:var(--text);border-radius:7px;align-items:center;gap:6px;padding:0 8px 0 10px;font-weight:600;display:inline-flex}.vswitch:hover{border-color:var(--line-strong)}.vswitch svg{color:var(--text-3)}.live{font-size:var(--fs-sm);color:var(--text-3);align-items:center;gap:6px;display:inline-flex}.live i{background:var(--text-3);border-radius:50%;width:7px;height:7px}.live.on i{background:var(--good);box-shadow:0 0 0 3px var(--good-soft)}.page{width:100%;max-width:1680px;animation:fade var(--t) var(--ease);margin:0 auto;padding:24px 28px 72px}.page.narrow{max-width:1120px}.page.wide{max-width:none}.page-head{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:20px;display:flex}.page-head .sub{color:var(--text-2);max-width:780px;margin-top:4px}.page-head .eyebrow{align-items:center;gap:6px;margin-bottom:6px;display:flex}.subnav{border-bottom:1px solid var(--line);gap:2px;margin:-6px 0 18px;display:flex}.subnav a{color:var(--text-2);border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:8px 12px;font-weight:500;display:inline-flex}.subnav a:hover{color:var(--text);text-decoration:none}.subnav a.on{color:var(--text);border-bottom-color:var(--text)}.subnav .n{font-size:var(--fs-xs);color:var(--text-3);font-weight:650}.subnav .n.warn{color:var(--warn)}.palette-back{z-index:80;background:var(--scrim);animation:fade var(--t-fast) var(--ease);place-items:start center;padding-top:14vh;display:grid;position:fixed;inset:0}.palette{background:var(--surface);border:1px solid var(--line);width:min(640px,100vw - 32px);box-shadow:var(--shadow-pop);animation:slide var(--t) var(--ease);border-radius:12px;overflow:hidden}.palette input{border:0;border-bottom:1px solid var(--line);width:100%;height:50px;font-size:var(--fs-md);background:0 0;outline:none;padding:0 18px}.palette .results{max-height:52vh;padding:6px;overflow:auto}.palette .grp{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:8px 10px 4px;font-weight:600}.palette .res{cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;padding:8px 10px;display:flex}.palette .res.on{background:var(--sunken)}.palette .res .hint{color:var(--text-3);font-size:var(--fs-sm);white-space:nowrap;margin-left:auto}.palette .res .ic{background:var(--sunken);width:22px;height:22px;color:var(--text-2);border-radius:6px;flex:none;place-items:center;display:grid}.palette .foot{border-top:1px solid var(--line);color:var(--text-3);font-size:var(--fs-xs);gap:14px;padding:8px 14px;display:flex}.palette .foot span{align-items:center;gap:5px;display:inline-flex}.login{background:radial-gradient(1200px 600px at 50% -10%, var(--accent-soft), transparent 70%), var(--bg);place-items:center;min-height:100vh;display:grid}.login-card{text-align:left;width:400px;box-shadow:var(--shadow-pop);padding:32px}.login-card h1{margin:18px 0 6px;font-size:22px}.google{justify-content:center;gap:10px;width:100%;height:40px;margin-top:22px;font-size:14px}.persona-list{flex-direction:column;gap:6px;margin-top:20px;display:flex}.persona{border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--t-fast), background var(--t-fast);border-radius:8px;align-items:center;gap:12px;padding:8px 10px;display:flex}.persona:hover{border-color:var(--line-strong);background:var(--row-hover)}.persona>span:last-child{flex-direction:column;display:flex}.sb-notice.sandbox{background:var(--accent-soft);color:var(--accent);flex-wrap:wrap;gap:4px 10px;display:flex}.sb-notice.sandbox span{flex-basis:100%}.sb-notice.sandbox .linklike,.sb-notice.sandbox a{color:var(--accent);margin:0;font-weight:600;text-decoration:none}.sb-notice.sandbox .linklike:hover,.sb-notice.sandbox a:hover{color:var(--accent);text-decoration:underline}.boot{grid-template-columns:var(--sidebar) 1fr;min-height:100vh;display:grid}.boot .sidebar{gap:10px}.boot .skel{height:14px}@media print{.sidebar,.ctx,.no-print,.toast,.scrim{display:none!important}.app{display:block}.page{max-width:none;padding:0;animation:none}.card{box-shadow:none;break-inside:avoid}body{background:#fff}:root{--bg:#fff}}.print-only{display:none}@media print{.print-only{display:block}}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.toolbar .sep{background:var(--line);width:1px;height:20px;margin:0 2px}.grid-wrap{border-radius:0 0 var(--radius) var(--radius);outline:none;max-height:calc(100vh - 230px);position:relative;overflow:auto}.grid-wrap:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-soft)}.bgrid{border-collapse:separate;border-spacing:0;table-layout:auto;width:100%;font-size:12.5px}.bgrid th{z-index:3;background:var(--surface-2);text-align:left;font-weight:600;font-size:var(--fs-xs);color:var(--text-2);border-bottom:1px solid var(--line);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:8px 10px;position:sticky;top:0}.bgrid th.num{text-align:right}.bgrid td{height:var(--row-h);border-bottom:1px solid var(--line-soft);white-space:nowrap;text-overflow:ellipsis;background:var(--surface);max-width:420px;padding:0 10px;overflow:hidden}.bgrid tr.pad td{background:0 0;border:0;height:auto;padding:0}.bgrid tbody tr:not(.pad):hover td{background:var(--row-hover)}.bgrid tr.sel td{background:var(--accent-soft)}.bgrid tr.inactive td{color:var(--text-3)}.bgrid tr.inactive .nm{text-decoration:line-through}.bgrid tr.asm .nm{font-weight:600}.bgrid td.insel{background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface))!important}.bgrid td.focus{box-shadow:inset 0 0 0 2px var(--accent)}.bgrid td.ro{color:inherit}.bgrid td.c-rail{width:1px;padding:0 0 0 6px}.bgrid td.c-rail i{width:3px;height:calc(var(--row-h) - 12px);background:0 0;border-radius:2px;display:block}.bgrid tr[data-life=in_work] td.c-rail i{background:var(--life-in_work)}.bgrid tr[data-life=prototype] td.c-rail i{background:var(--life-prototype)}.bgrid tr[data-life=released] td.c-rail i{background:var(--life-released)}.bgrid tr[data-life=obsolete] td.c-rail i{background:var(--life-obsolete)}.bgrid .nmcell{align-items:center;min-width:300px;max-width:520px;display:flex}.bgrid .nm{text-overflow:ellipsis;overflow:hidden}.bgrid .pn{color:var(--text-3);font-family:var(--mono);font-size:var(--fs-xs);flex:none;margin-left:8px}.bgrid td.acts{text-align:right;width:72px;padding:0 6px}.bgrid td.acts button{visibility:hidden;justify-content:center;width:22px;height:22px;padding:0;font-size:14px;line-height:1}.bgrid tr:hover td.acts button,.bgrid tr.sel td.acts button{visibility:visible}.bgrid .pend{background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px;margin-left:6px;display:inline-block}.bgrid td.changed{box-shadow:inset 0 -2px 0 var(--accent)}.bgrid .origin{color:var(--text-3);letter-spacing:.03em;font-size:10px;font-weight:650}.bgrid .origin.cad{color:var(--accent)}.erp{font-size:var(--fs-xs);color:var(--text-3);font-variant-numeric:tabular-nums;font-weight:600}.erp.ok{color:var(--good)}.twist{cursor:pointer;width:18px;height:18px;color:var(--text-3);background:0 0;border:0;border-radius:4px;flex:none;place-items:center;margin-right:2px;padding:0;display:grid}.twist:hover{background:var(--sunken);color:var(--text)}.twist svg{transition:transform var(--t-fast) var(--ease)}.twist.open svg{transform:rotate(90deg)}.twist-gap{flex:none;width:20px}.cell-input{width:100%;min-width:70px;height:calc(var(--row-h) - 8px);border:1px solid var(--accent);text-align:right;background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);border-radius:4px;outline:none;padding:0 6px}.cell-input.text{text-align:left;min-width:140px}.src-offer{color:var(--text-3)}.grid-foot{border-top:1px solid var(--line);color:var(--text-3);font-size:var(--fs-xs);flex-wrap:wrap;align-items:center;gap:14px;padding:8px 12px;display:flex}.grid-foot span{align-items:center;gap:5px;display:inline-flex}.skel-rows{padding:6px 12px}.skel-rows .r{border-bottom:1px solid var(--line-soft);grid-template-columns:50px 2.4fr 1fr 60px 80px 80px 1fr;gap:16px;padding:10px 0;display:grid}.ctable{border-collapse:separate;border-spacing:0;width:100%}.ctable th{text-align:left;font-weight:600;font-size:var(--fs-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);background:var(--surface-2);top:var(--header);z-index:2;padding:10px 14px;position:sticky}.ctable td{border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 14px}.ctable tr:last-child td{border-bottom:0}.ctable tbody tr.click{cursor:pointer}.ctable tbody tr.click:hover td{background:var(--row-hover)}.ctable tr.total td{background:var(--surface-2);border-top:1px solid var(--line-strong);font-weight:600}.ctable .mod{white-space:nowrap;font-weight:500}.cell-bar{flex-direction:column;gap:4px;min-width:150px;display:flex}.cell-bar .v{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.cell-bar .bar{background:var(--sunken);border-radius:3px;height:6px;position:relative;overflow:hidden}.cell-bar .bar i{border-radius:3px;position:absolute;top:0;bottom:0;left:0}.cell-bar .bar b{opacity:.25;border-radius:3px;position:absolute;top:0;bottom:0}.cell-bar .d{font-size:var(--fs-xs);font-weight:600}.minitable{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.minitable th{text-align:left;font-weight:600;font-size:var(--fs-xs);color:var(--text-2);border-bottom:1px solid var(--line);white-space:nowrap;padding:6px 8px}.minitable th.num{text-align:right}.minitable td{border-bottom:1px solid var(--line-soft);vertical-align:top;padding:7px 8px}.minitable tr:last-child td{border-bottom:0}.minitable tr.click{cursor:pointer}.minitable tr.click:hover td{background:var(--row-hover)}.minitable td.mid{vertical-align:middle}.reftable{border-collapse:collapse;width:100%;font-size:12.5px}.reftable th{text-align:left;font-weight:600;font-size:var(--fs-xs);color:var(--text-2);border-bottom:1px solid var(--line);padding:8px 10px}.reftable td{border-bottom:1px solid var(--line-soft);height:34px;padding:4px 10px}.reftable td.num,.reftable th.num{text-align:right}.ref-input{width:100%;height:26px;font:inherit;color:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:0 6px}.ref-input:hover{border-color:var(--line-strong);background:var(--surface)}.ref-input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.ref-input.num{text-align:right}.diff-add td{background:var(--good-soft)!important}.diff-del td{background:var(--bad-soft)!important}.diff-del td .nm,.diff-del td.strike{color:var(--text-2);text-decoration:line-through}.diff-mod td.ch{background:var(--warn-soft)!important}.dcell{white-space:nowrap;align-items:baseline;gap:6px;display:inline-flex}.dcell s{color:var(--text-3)}.dcell b{font-weight:600}.op{border-radius:4px;flex:none;place-items:center;width:18px;height:18px;font-size:11px;font-weight:800;display:inline-grid}.op.add{background:var(--good-soft);color:var(--good)}.op.remove{background:var(--bad-soft);color:var(--bad)}.op.modify{background:var(--warn-soft);color:var(--warn)}.op.part{background:var(--accent-soft);color:var(--accent)}.cadtable{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.cadtable th{text-align:left;font-weight:600;font-size:var(--fs-xs);color:var(--text-2);border-bottom:1px solid var(--line);white-space:nowrap;background:var(--surface-2);padding:8px 10px}.cadtable td{border-bottom:1px solid var(--line-soft);vertical-align:middle;padding:8px 10px}.cadtable tr:last-child td{border-bottom:0}.cadtable td.v{white-space:nowrap;text-overflow:ellipsis;max-width:300px;overflow:hidden}.cadtable tbody tr{transition:background var(--t-fast) var(--ease)}.cadtable tbody tr:hover td{background:var(--row-hover)}.cadtable tbody tr.on td{background:var(--accent-soft)}.cadtable tbody tr.info td{color:var(--text-2)}.cadtable tbody tr.info .flag{box-shadow:inset 0 0 0 1px var(--line-strong);color:var(--text-2);background:0 0}.cadtable td .btn.xs{visibility:hidden}.cadtable tr:hover td .btn.xs,.cadtable tr.on td .btn.xs,.cadtable td .btn.xs:focus-visible{visibility:visible}@media (hover:none){.cadtable td .btn.xs{visibility:visible}}details.card>summary{list-style:none}details.card>summary::-webkit-details-marker{display:none}.actionbar{z-index:5;background:var(--surface);border:1px solid var(--line-strong);width:fit-content;min-width:420px;box-shadow:var(--shadow-pop);animation:rise .18s var(--ease);border-radius:10px;align-items:center;gap:10px;margin:16px auto 0;padding:8px 10px 8px 16px;display:flex;position:sticky;bottom:16px}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.vcards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:24px;display:grid}.vcard{cursor:pointer;transition:border-color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast) var(--ease);padding:16px;position:relative}.vcard:hover{border-color:var(--line-strong);box-shadow:var(--shadow-pop);transform:translateY(-1px)}.vcard.off{opacity:.45}.vcard .top{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.vcard .name{margin-bottom:2px;font-size:14px;font-weight:600}.vcard .big{letter-spacing:-.02em;margin-top:12px;font-size:26px;font-weight:650;line-height:1.1}.vcard .big small{color:var(--text-2);letter-spacing:0;font-size:13px;font-weight:500}.vcard .delta{font-size:var(--fs-sm);margin-top:2px;font-weight:600}.vcard .kv{font-size:var(--fs-sm);grid-template-columns:1fr auto;gap:4px 12px;margin-top:14px;display:grid}.vcard .kv span:nth-child(odd){color:var(--text-2)}.vcard .kv span:nth-child(2n){text-align:right;font-weight:500}.vcard .foot{border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--text-3);align-items:center;gap:8px;margin-top:12px;padding-top:10px;display:flex}.vcard .stripe{border-radius:0 3px 3px 0;width:3px;position:absolute;top:14px;bottom:14px;left:0}.summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-bottom:16px;display:grid}.summary>div{border-right:1px solid var(--line);min-width:0;padding:14px 18px}.summary>div:last-child{border-right:0}.summary .lbl{font-size:var(--fs-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.summary .val{letter-spacing:-.02em;margin-top:4px;font-size:22px;font-weight:650}.summary .hint{font-size:var(--fs-sm);color:var(--text-2);margin-top:2px}.cov{font-size:var(--fs-xs);grid-template-columns:64px 1fr 36px;align-items:center;gap:4px 8px;margin-top:6px;display:grid}.cov span:last-child{text-align:right}.checks{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.check{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;min-width:200px;max-width:320px;transition:border-color var(--t-fast);border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.check:hover{border-color:var(--line-strong)}.check.on{border-color:var(--strong);box-shadow:0 0 0 1px var(--strong)}.check .t{font-weight:600}.check .t:before{content:"";background:var(--text-3);vertical-align:2px;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.check.warn .t:before{background:var(--warn)}.check.bad .t:before{background:var(--bad)}.check.good .t:before{background:var(--good)}.check .d{font-size:var(--fs-sm);color:var(--text-2)}.banner{border-radius:var(--radius);background:var(--accent-soft);color:var(--text);align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;display:flex}.banner.dev{background:var(--sunken)}.banner .t{font-weight:600}.breakdown-card{margin-bottom:16px}.breakdown{grid-template-columns:auto auto minmax(320px,640px);justify-content:start;align-items:center;gap:32px;padding:18px 22px 10px;display:grid}.donut{position:relative}.donut svg{display:block;overflow:visible}.donut circle{transition:opacity var(--t-fast), stroke-width var(--t-fast);cursor:default}.donut-c{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:0 34px;display:flex;position:absolute;inset:0}.donut-c .v{letter-spacing:-.02em;font-size:18px;font-weight:650}.donut-c .faint{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mod-legend{border-collapse:collapse;width:100%;font-size:12.5px}.mod-legend th{font-size:var(--fs-xs);color:var(--text-2);text-align:left;border-bottom:1px solid var(--line);padding:0 8px 6px;font-weight:500}.mod-legend td{border-bottom:1px solid var(--line);white-space:nowrap;padding:5px 8px}.mod-legend .num{text-align:right;font-variant-numeric:tabular-nums}.mod-legend tr{transition:opacity var(--t-fast)}.mod-legend tbody tr:not(.tot):hover{background:var(--surface-2)}.mod-legend tr.tot td{border-bottom:0;font-weight:650}.toplists{grid-template-columns:1fr 1fr;gap:28px;padding:8px 22px 18px;display:grid}.toplist .top-head{font-size:var(--fs-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-weight:500}.top-row{cursor:pointer;transition:opacity var(--t-fast);border-radius:4px;grid-template-columns:minmax(0,1.4fr) minmax(60px,1fr) 76px 38px;align-items:center;gap:10px;padding:3px 4px;font-size:12.5px;display:grid}.top-row:hover{background:var(--surface-2)}.top-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-bar{background:var(--sunken);border-radius:2px;height:8px;overflow:hidden}.top-bar i{border-radius:2px;height:100%;display:block}.top-v,.top-p{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.compo{flex-direction:column;gap:10px;padding:16px 18px 14px;display:flex}.compo-row{grid-template-columns:120px 1fr 86px;align-items:center;gap:12px;display:grid}.compo-name{cursor:pointer;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:12.5px;font-weight:600;display:flex}.compo-name:hover{color:var(--accent)}.compo-track{background:var(--sunken);border-radius:4px;height:28px;overflow:hidden}.compo-bar{gap:1px;height:100%;display:flex}.cseg{white-space:nowrap;min-width:0;height:100%;font-size:var(--fs-xs);color:#fff;text-shadow:0 0 2px #00000059;transition:opacity var(--t-fast);justify-content:center;align-items:center;font-weight:600;display:flex;overflow:hidden}.compo-total{text-align:right;font-variant-numeric:tabular-nums;font-weight:650}.compo-legend{font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;gap:6px 16px;padding:6px 0 0 132px;display:flex}.compo-legend>span{cursor:default;transition:opacity var(--t-fast)}@media (width<=1100px){.breakdown{grid-template-columns:auto auto}.breakdown .mod-legend{grid-column:1/-1}.toplists{grid-template-columns:1fr}.summary{grid-template-columns:repeat(2,minmax(0,1fr))}.grid2,.grid3{grid-template-columns:1fr}}.axes{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.axis{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.axis .lbl{font-size:var(--fs-xs);color:var(--text-2);font-weight:500}.axis .when{color:var(--text-3);font-size:10px}.scorepick{gap:4px;display:flex}.scorepick button{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:6px;width:28px;height:28px;font-weight:700}.scorepick button.on.s1{background:var(--r1);border-color:var(--r1);color:#fff}.scorepick button.on.s2{background:var(--r2);border-color:var(--r2);color:#fff}.scorepick button.on.s3{background:var(--r3);border-color:var(--r3);color:#fff}.scorepick button.on.s4{background:var(--r4);border-color:var(--r4);color:#fff}.feed{flex-direction:column;display:flex}.feed-item{border-bottom:1px solid var(--line-soft);grid-template-columns:22px 1fr;gap:10px;padding:8px 0;display:grid}.feed-item:last-child{border-bottom:0}.feed-item .meta{font-size:var(--fs-xs);color:var(--text-3)}.feed-item .ic{background:var(--sunken);width:20px;height:20px;color:var(--text-3);border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid}.kvlist{font-size:var(--fs-sm);grid-template-columns:minmax(140px,220px) 1fr;display:grid}.kvlist>div{border-bottom:1px solid var(--line-soft);overflow-wrap:anywhere;padding:5px 0}.kvlist>div:nth-child(odd){color:var(--text-2);padding-right:12px}.partstats{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.erp-checks{font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;gap:6px 18px;display:flex}.erp-checks>div{align-items:center;gap:6px;display:inline-flex}.erp-checks>div svg{color:var(--text-3)}.erp-checks>div.ok{color:var(--text)}.erp-checks>div.ok svg{color:var(--good)}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(460px,1fr));align-items:start;gap:16px;display:grid}.settings-grid>.card+.card{margin-top:0}.board{grid-template-columns:repeat(4,minmax(220px,1fr));align-items:start;gap:12px;display:grid}.board-col{background:var(--sunken);border-radius:var(--radius);flex-direction:column;gap:8px;min-height:120px;padding:10px;display:flex}.board-col>header{font-size:var(--fs-sm);color:var(--text-2);align-items:center;gap:8px;padding:2px 4px 4px;font-weight:600;display:flex}.board-empty{font-size:var(--fs-sm);color:var(--text-3);padding:8px 4px}.stage-dot{background:var(--text-3);border-radius:50%;width:8px;height:8px}.stage-dot.review{background:var(--warn)}.stage-dot.approved{background:var(--accent)}.stage-dot.applied{background:var(--good)}.crcard{background:var(--surface);border:1px solid var(--line);color:var(--text);box-shadow:var(--shadow-1);transition:border-color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast) var(--ease);border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.crcard:hover{border-color:var(--line-strong);box-shadow:var(--shadow-pop);text-decoration:none;transform:translateY(-1px)}.crcard .t{font-weight:600;line-height:1.3}.vtag{font-size:var(--fs-xs);color:var(--text-2);align-items:center;gap:5px;font-weight:600;display:inline-flex}a.vtag:hover{color:var(--text);text-decoration:none}.seg .n.warn{font-size:var(--fs-xs);color:var(--warn);font-weight:700}.pill.stage.draft{background:var(--sunken);color:var(--text-2);border-color:#0000}.pill.stage.review{color:var(--warn)}.pill.stage.review>i{background:var(--warn)}.pill.stage.approved{color:var(--accent)}.pill.stage.approved>i{background:var(--accent)}.pill.stage.applied{color:var(--good)}.pill.stage.applied>i{background:var(--good)}.pill.stage.rejected{color:var(--bad)}.pill.stage.rejected>i{background:var(--bad)}.title-input{font-size:var(--fs-lg);letter-spacing:-.015em;width:100%;max-width:760px;height:38px;font-weight:600}.crlayout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.critems{flex-direction:column;display:flex}.critem{border-top:1px solid var(--line-soft);padding:9px 14px}.critem:first-child{border-top:0}.critem .lbl{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.critem.open{background:var(--surface-2)}.critem .btn.xs{opacity:.55}.critem:hover .btn.xs,.critem.open .btn.xs,.critem .btn.xs:focus-visible{opacity:1}a.critem.link{color:var(--text);display:block}a.critem.link:hover{background:var(--row-hover);text-decoration:none}.crchecks{flex-direction:column;display:flex}.crcheck{border-top:1px solid var(--line-soft);grid-template-columns:20px 1fr;gap:10px;padding:9px 14px;display:grid}.crcheck:first-child{border-top:0}.crcheck .ic{background:var(--sunken);width:20px;height:20px;color:var(--text-3);border-radius:50%;place-items:center;display:grid}.crcheck.pass .ic{background:var(--good-soft);color:var(--good)}.crcheck.warn .ic{background:var(--warn-soft);color:var(--warn)}.crcheck.fail .ic{background:var(--bad-soft);color:var(--bad)}.crcheck .t{font-weight:600;font-size:var(--fs-sm)}.crcheck .d{font-size:var(--fs-sm);color:var(--text-2)}.comment{grid-template-columns:22px 1fr;gap:10px;display:grid}.linklike{color:var(--text-3);cursor:pointer;font-size:inherit;background:0 0;border:0;margin-left:8px;padding:0}.linklike:hover{color:var(--bad)}.step.bad .dot{border-color:var(--bad);color:var(--bad);box-shadow:0 0 0 4px var(--bad-soft)}.step.bad .lbl{color:var(--bad)}.gate .stepper.phases{padding:4px 0 2px}.gate .step.gate .lbl{color:var(--accent)}.gate .step.gate .dot{border-color:var(--accent)}.gate .step.gate.done .dot{background:var(--accent)}.gate-next{border-top:1px solid var(--line);padding:16px 20px}.gate-title{gap:12px;margin-bottom:12px;display:flex}.gate-title .eyebrow{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:2px;font-weight:600}.gate-title .sub{color:var(--text-2);max-width:720px;margin-top:2px}.signoffs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.signoff{border:1px dashed var(--line-strong);border-radius:8px;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.signoff.on{background:var(--good-soft);border-style:solid;border-color:#0000}.signoff .ic{border:1.5px solid var(--line-strong);border-radius:50%;flex:none;place-items:center;width:20px;height:20px;display:grid}.signoff.on .ic{background:var(--good);border-color:var(--good);color:#fff}.signoff .t{font-weight:600;font-size:var(--fs-sm)}.signoff .d{font-size:var(--fs-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gate-cond{font-size:var(--fs-sm);color:var(--text-2);align-items:center;gap:8px;margin-top:10px;display:flex}.gate-cond.ok svg{color:var(--good)}.gate-cond.bad{color:var(--bad)}.tline{margin:0;padding:12px 16px 14px;list-style:none;position:relative}.tline>li{grid-template-columns:26px 1fr;gap:12px;padding:8px 0;display:grid;position:relative}.tline>li:before{content:"";background:var(--line);width:2px;position:absolute;top:30px;bottom:-8px;left:12px}.tline>li:last-child:before{display:none}.tline .mk{background:var(--sunken);width:26px;height:26px;color:var(--text-3);font-size:var(--fs-xs);z-index:1;border-radius:50%;place-items:center;font-weight:700;display:grid;position:relative}.tline li.rev .mk{background:var(--accent);color:#fff;border-radius:7px}.tline li.cad .mk{background:var(--accent-soft);color:var(--accent)}.tline li.start .mk{width:10px;height:10px;margin:8px}.tline .t{font-weight:550}.tline .d{font-size:var(--fs-sm);color:var(--text-2);overflow-wrap:anywhere}.tline .links{font-size:var(--fs-sm);flex-wrap:wrap;gap:4px 14px;margin-top:2px;display:flex}.ctable th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.ctable th.sortable:hover,.ctable th.sortable.on{color:var(--text)}.ctable th.sortable svg{vertical-align:-1px;margin-left:3px}.ctable.supply td{padding-top:7px;padding-bottom:7px}.fdot{background:var(--text-3);border-radius:50%;width:6px;height:6px;display:inline-block}.fdot.bad{background:var(--bad)}.fdot.warn{background:var(--warn)}.fdot.info{background:var(--accent)}.chip.on .fdot{box-shadow:0 0 0 2px var(--on-strong)}.fpills{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:inline-flex}.fpill{font-size:var(--fs-xs);white-space:nowrap;background:var(--sunken);color:var(--text-2);border-radius:4px;padding:1px 6px;font-weight:600}.fpill.bad{background:var(--bad-soft);color:var(--bad)}.fpill.warn{background:var(--warn-soft);color:var(--warn)}.fpill.info{background:var(--accent-soft);color:var(--accent)}.select.status{background-color:var(--sunken);border-color:#0000;font-weight:500}.select.status:hover{border-color:var(--line-strong)}.select.status.s-rfq{background-color:var(--warn-soft);color:var(--warn)}.select.status.s-quoted{background-color:var(--accent-soft);color:var(--accent)}.select.status.s-selected,.select.status.s-qualified{background-color:var(--good-soft);color:var(--good)}.input.ghost{background:0 0;border-color:#0000}.input.ghost:hover:not(:disabled){border-color:var(--line-strong)}.input.ghost:focus{background:var(--surface)}.input.ghost:disabled{color:inherit;cursor:default}.input.strong{font-weight:600}.offers{flex-direction:column;gap:12px;margin-top:14px;display:flex}.offer{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px 14px}.offer.pref{border-color:var(--line-strong);box-shadow:inset 3px 0 0 var(--good)}.offer.new{background:var(--surface-2);margin-top:12px}.offer-head{align-items:center;gap:8px;min-width:0;margin-bottom:8px;display:flex}.offer-head b{font-size:14px}.minitable.tiers td{padding-top:4px;padding-bottom:4px}.minitable.tiers tr.hit td{background:var(--good-soft)}.minitable.tiers tr.hit td:first-child{box-shadow:inset 2px 0 0 var(--good)}.minitable.tiers .badge{margin-left:4px}.minitable.tiers tr.add td{border-bottom:0;padding-top:8px}.offer-fields{border-top:1px solid var(--line-soft);gap:8px 12px;margin-top:12px;padding-top:12px}.offer-fields label{font-size:var(--fs-xs)}.tl-card{overflow:hidden}.tl-scroll{position:relative;overflow:auto hidden}.tl-grid{min-width:100%;position:relative}.tl-row{border-bottom:1px solid var(--line-soft);display:flex}.tl-row:last-of-type{border-bottom:0}.tl-row.link{cursor:pointer}.tl-row.link:hover .tl-track,.tl-row.link:hover .tl-label{background:var(--row-hover)}.tl-label{z-index:5;background:var(--surface);border-right:1px solid var(--line);flex-direction:column;flex:none;justify-content:center;gap:2px;width:176px;padding:10px 14px;display:flex;position:sticky;left:0}.tl-label .t{font-weight:600;font-size:var(--fs-sm)}.tl-label .d{font-size:var(--fs-xs);color:var(--text-3)}.tl-track{z-index:0;flex:none;position:relative}.tl-row.axis{background:var(--surface-2);border-bottom:1px solid var(--line)}.tl-row.axis .tl-label{background:var(--surface-2);padding:0}.tl-axis{flex:none;height:28px;position:relative}.tl-month{border-left:1px solid var(--line);font-size:var(--fs-xs);color:var(--text-2);white-space:nowrap;padding:7px 6px 0;font-weight:500;position:absolute;top:0;bottom:0;overflow:hidden}.tl-month.year{border-left-color:var(--line-strong);color:var(--text);font-weight:650}.tl-week{background:var(--line-strong);width:1px;height:6px;position:absolute;bottom:0}.tl-today{border-left:1.5px solid var(--accent);z-index:4;pointer-events:none;width:0;position:absolute;top:0;bottom:0}.tl-today span{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:700;position:absolute;top:6px;left:4px}.tl-band{background:var(--sunken);font-size:var(--fs-xs);color:var(--text-2);border-right:2px solid var(--surface);border-radius:4px;align-items:center;padding:0 8px;font-weight:600;display:flex;position:absolute;overflow:clip}.tl-band span{position:sticky;left:184px}.tl-band.ind{background:var(--accent-soft);color:var(--accent)}.tl-band.cur{box-shadow:inset 0 0 0 1px var(--line-strong)}.tl-band.ind.cur{box-shadow:inset 0 0 0 1px var(--accent)}.tl-band span{white-space:nowrap;padding-right:8px}.tl-ms{white-space:nowrap;font-size:var(--fs-xs);color:var(--text-2);align-items:center;gap:6px;margin-left:-6px;display:flex;position:absolute}.tl-ms>i{background:var(--surface);border:2px solid var(--text-2);border-radius:2px;flex:none;width:10px;height:10px;transform:rotate(45deg)}.tl-ms.gate>i{border-color:var(--text)}.tl-ms.ind>i{background:var(--accent);border-color:var(--accent);width:12px;height:12px;box-shadow:0 0 0 3px var(--accent-soft)}.tl-ms.ind span{color:var(--accent);font-weight:650}.tl-ms.sop>i{border-color:var(--good)}.tl-ms.tooling>i,.tl-ms.fai>i{border-radius:50%;transform:none}.tl-ms.done>i{background:var(--text-3);border-color:var(--text-3)}.tl-ms.done span{color:var(--text-3);text-decoration:line-through}.tl-ms.late>i{border-color:var(--bad)}.tl-ms.late span{color:var(--bad)}.tl-kind{border:1.5px solid var(--text-2);border-radius:1px;width:8px;height:8px;margin:0 4px 1px 2px;display:inline-block;transform:rotate(45deg)}.tl-kind.ind{background:var(--accent);border-color:var(--accent)}.tl-kind.tooling,.tl-kind.fai{border-radius:50%;transform:none}.tl-kind.sop{border-color:var(--good)}.tl-bar{background:var(--surface);border:1px solid var(--line-strong);height:26px;font-size:var(--fs-xs);white-space:nowrap;color:var(--text);cursor:pointer;text-align:left;box-shadow:var(--shadow-1);transition:border-color var(--t-fast), box-shadow var(--t-fast);border-radius:6px;align-items:center;gap:6px;padding:0 8px;font-weight:600;display:flex;position:absolute;overflow:visible}.tl-bar:hover{border-color:var(--text-3)}.tl-bar.on{border-color:var(--strong);box-shadow:0 0 0 1px var(--strong)}.tl-bar.kitting{background:var(--warn-soft);border-color:#0000}.tl-bar.building{background:var(--accent-soft);color:var(--accent);border-color:#0000}.tl-bar.done{background:var(--sunken);color:var(--text-3);border-color:#0000}.tl-bar.mini{cursor:inherit;box-shadow:none;z-index:1;padding:0 6px}.tl-bar.compact{border-radius:4px;padding:0 4px;font-size:10px;font-weight:550}.tl-bar span{overflow:visible}.ring .bg{fill:none;stroke:var(--sunken);stroke-width:2.5px}.ring .fg{fill:none;stroke:var(--warn);stroke-width:2.5px;stroke-linecap:round;transition:stroke-dasharray var(--t) var(--ease)}.ring .fg.ok{stroke:var(--good)}.tl-order,.tl-chg{white-space:nowrap;font-size:var(--fs-xs);color:var(--text-2);cursor:pointer;font-family:var(--mono);background:0 0;border:0;align-items:center;gap:5px;margin-left:-4px;padding:0;display:flex;position:absolute}.tl-order>i{background:var(--text-3);border-radius:50%;flex:none;width:8px;height:8px}.tl-order.warn>i{background:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}.tl-order.warn{color:var(--warn)}.tl-order.bad>i{background:var(--bad);box-shadow:0 0 0 3px var(--bad-soft)}.tl-order.bad{color:var(--bad)}.tl-order:hover span,.tl-chg:hover span{text-decoration:underline}.tl-chg{color:var(--text);font-family:inherit;font-weight:600;text-decoration:none}.tl-chg>i{background:var(--accent);border-radius:3px;flex:none;width:10px;height:10px}.tl-chg.cr>i{background:var(--surface);border:1.5px dashed var(--accent)}.tl-chg.cr{color:var(--accent)}.tl-chg.cr-applied>i{background:var(--accent-soft);border:1.5px solid var(--accent)}.minitable tr.sel td{background:var(--row-hover)}.minitable tr.sel td:first-child{box-shadow:inset 2px 0 0 var(--strong)}.minitable tr.add td{border-bottom:0;padding-top:10px}.ctb-head{gap:12px}.ctable tr.ready td{color:var(--text-2)}.ctable td.link{cursor:pointer}.ctable td.link:hover .ellipsis{text-decoration:underline}.input.num{text-align:right}.portfolio{margin-bottom:20px}.portfolio .card-head .spacer+a{font-size:var(--fs-sm)}.print-root{display:none}@media print{body>:not(.print-root){display:none!important}.print-root{color:#000;padding:0;font-size:11px;display:block}.print-root h1{margin:0 0 4px;font-size:18px}.print-root h2{border-bottom:1.5px solid #000;margin:18px 0 6px;padding-bottom:4px;font-size:13px}.print-root .meta{color:#444;margin-bottom:8px}.print-root table{border-collapse:collapse;page-break-inside:auto;width:100%}.print-root tr{page-break-inside:avoid}.print-root th{text-align:left;text-transform:uppercase;color:#444;border-bottom:1px solid #999;padding:4px 6px;font-size:10px}.print-root td{vertical-align:top;border-bottom:1px solid #ddd;padding:5px 6px}.print-root .num{text-align:right}.print-root .box{border:1.2px solid #000;border-radius:2px;width:12px;height:12px;display:inline-block}@page{margin:14mm}}@media (width<=1100px){.board{grid-template-columns:repeat(2,minmax(0,1fr))}.crlayout,.signoffs{grid-template-columns:1fr}}.derive{text-align:center;max-width:800px;margin:24px auto;padding:36px 40px}.derive-icon{background:var(--good-soft);width:44px;height:44px;color:var(--good);border-radius:12px;place-items:center;margin:0 auto 14px;display:grid}.derive h2{letter-spacing:-.01em;margin:0 0 8px;font-size:20px}.derive p{max-width:560px;margin:0 auto 18px;line-height:1.55}.derive-steps{counter-reset:s;font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;justify-content:center;gap:18px;margin:0 0 22px;padding:0;list-style:none;display:flex}.derive-steps li{counter-increment:s;align-items:center;gap:6px;display:flex}.derive-steps li:before{content:counter(s);background:var(--sunken);width:18px;height:18px;color:var(--text-2);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.derive-steps b{color:var(--text);font-weight:600}.recon{grid-template-columns:minmax(220px,1fr) minmax(0,2fr) auto;align-items:center;gap:24px;margin-bottom:16px;padding:14px 18px;display:grid}.recon .lbl{font-size:var(--fs-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-weight:500}.recon .val{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:650}.recon .val .faint{font-size:15px;font-weight:500}.recon-issues{flex-wrap:wrap;gap:6px;display:flex}.recon-added{font-size:var(--fs-sm);color:var(--text-2);white-space:nowrap;gap:14px;display:flex}.recon-added b{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.mbom-split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:16px;display:grid}.mbom-pane{flex-direction:column;min-width:0;display:flex}.mbom-scroll{min-height:280px;max-height:calc(100vh - 300px);overflow:auto}.mbom-scroll.stations{flex-direction:column;gap:10px;padding:10px;display:flex}.mbom-hint{font-size:var(--fs-xs);color:var(--text-2);background:var(--surface-2);border-bottom:1px solid var(--line-soft);padding:7px 16px}.mbom-hint .kbd{margin:0 2px}.mbom-items thead th{z-index:1;background:var(--surface);position:sticky;top:0}.mbom-items tr[draggable=true]{cursor:grab}.st-chip{font-family:var(--mono);background:var(--sunken);color:var(--text-2);border-radius:4px;margin-right:3px;padding:0 5px;font-size:11px;display:inline-block}.st-group{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color var(--t-fast), box-shadow var(--t-fast)}.st-group.none{background:var(--surface-2);border-style:dashed}.st-group.over{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.st-head{align-items:center;gap:8px;min-width:0;padding:8px 12px;display:flex}.st-group:has(.st-lines,.st-empty) .st-head{border-bottom:1px solid var(--line-soft)}.st-head .kbd{text-align:center;min-width:18px}.st-lines td{vertical-align:middle;padding:3px 8px}.st-lines td .ellipsis{vertical-align:bottom;max-width:250px;display:inline-block}.st-lines tr[draggable=true]{cursor:grab}.st-lines .grip{width:14px;color:var(--text-3);letter-spacing:-2px;opacity:0;transition:opacity var(--t-fast);font-size:10px}.st-lines tr:hover .grip{opacity:1}.st-lines .select.bare{max-width:150px;color:var(--text-2);opacity:0;transition:opacity var(--t-fast)}.st-lines tr:hover .select.bare,.st-lines .select.bare:focus-visible,.st-lines .select.kind:not(.k-part){opacity:1}@media (hover:none){.st-lines .select.bare{opacity:1}}.select.kind.k-consumable,.kind-tag.k-consumable{color:var(--violet)}.select.kind.k-packaging,.kind-tag.k-packaging{color:var(--accent)}.select.kind.k-jig,.kind-tag.k-jig{color:var(--warn)}.kind-tag{font-size:var(--fs-xs);margin-right:6px;font-weight:500}.st-empty{text-align:center;font-size:var(--fs-sm);color:var(--text-3);padding:14px}.st-add{border:0;border-top:1px solid var(--line-soft);width:100%;font-size:var(--fs-xs);color:var(--text-3);cursor:pointer;border-radius:0 0 var(--radius) var(--radius);background:0 0;align-items:center;gap:5px;padding:7px 12px;display:flex}.st-add:hover{color:var(--text);background:var(--surface-2)}.st-form{border-top:1px solid var(--line-soft);background:var(--surface-2);border-radius:0 0 var(--radius) var(--radius);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.strong{font-weight:600}@media (width<=1100px){.mbom-split,.recon{grid-template-columns:1fr}}.card.ready{margin-top:16px}.ready-cols{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ready-col{border-right:1px solid var(--line-soft);flex-direction:column;gap:6px;min-width:0;padding:12px 14px 16px;display:flex}.ready-col:last-child{border-right:0}.ready-owner{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:0 8px 4px;font-weight:600}.mrow{color:inherit;transition:background var(--t-fast), border-color var(--t-fast);border:1px solid #0000;border-radius:8px;padding:9px 10px;text-decoration:none;display:block}.mrow:hover{background:var(--surface-2);border-color:var(--line);text-decoration:none}.mrow-top{align-items:baseline;gap:8px;display:flex}.mrow-label{font-weight:550}.mrow-val{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-left:auto;font-size:15px;font-weight:650}.mrow.short .mrow-val{color:var(--bad)}.mrow.ok .mrow-val{color:var(--good)}.mrow-bar{background:var(--sunken);border-radius:2px;height:4px;margin:7px 0 6px;position:relative}.mrow-bar i{background:var(--text-3);transition:width var(--t) var(--ease);border-radius:2px;position:absolute;inset:0 auto 0 0}.mrow.ok .mrow-bar i{background:var(--good)}.mrow.short .mrow-bar i{background:var(--warn)}.mrow-bar b{background:var(--text);border-radius:1px;width:2px;height:10px;margin-left:-1px;position:absolute;top:-3px}.mrow-foot{font-size:var(--fs-xs);color:var(--text-3);gap:10px;min-width:0;margin-top:3px;display:flex}.mrow-need{white-space:nowrap;align-items:center;gap:3px;margin-left:auto;display:inline-flex}.mrow.ok .mrow-need{color:var(--good)}.mrow.short .mrow-need{color:var(--bad);font-weight:500}.thresholds td,.thresholds th{vertical-align:middle}.thresholds .input{width:64px}.thresholds td.unit{color:var(--text-3);width:1px;padding-left:0}@media (width<=1100px){.ready-cols{grid-template-columns:1fr}.ready-col{border-right:0;border-bottom:1px solid var(--line-soft)}}.shortcuts{grid-template-columns:1fr 1fr;gap:4px 28px;display:grid}.shortcuts section:first-child{grid-row:span 2}.shortcuts h4{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin:4px 0 8px;font-weight:600}.shortcuts dl{grid-template-columns:auto 1fr;align-items:center;gap:7px 12px;margin:0 0 14px;display:grid}.shortcuts dt{justify-self:start;align-items:center;gap:3px;display:inline-flex}.shortcuts dd{font-size:var(--fs-sm);color:var(--text-2);margin:0}.home .page-head h1{letter-spacing:-.01em}.glance{margin-bottom:16px;padding:4px 0}.glance-row{color:inherit;border-bottom:1px solid var(--line-soft);grid-template-columns:9px minmax(140px,1.4fr) 92px minmax(120px,1fr) 110px 150px;align-items:center;gap:12px;padding:8px 16px;text-decoration:none;display:grid}.glance-row:last-child{border-bottom:0}.glance-row:hover{background:var(--row-hover)}.glance-name{align-items:baseline;gap:8px;min-width:0;display:flex}.glance-next,.glance-cad{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.glance-ready{color:var(--text-2);white-space:nowrap;justify-self:end;align-items:center;gap:7px;display:inline-flex}.inbox{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));align-items:start;gap:14px;display:grid}.inbox-box .card-head{gap:8px}.inbox-box .card-head h3{font-size:var(--fs-base);white-space:nowrap;margin:0;font-weight:600}.inbox-box .card-head svg{color:var(--text-3)}.n-badge{background:var(--sunken);min-width:18px;height:18px;color:var(--text-2);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-weight:600;display:inline-flex}.inbox-list{flex-direction:column;padding:2px 0 6px;display:flex}.inbox-item{color:inherit;grid-template-columns:6px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 16px;text-decoration:none;display:grid}.inbox-item:hover{background:var(--row-hover)}.inbox-item:focus-visible,.glance-row:focus-visible{outline-offset:-2px;border-radius:0}.inbox-text{flex-direction:column;gap:1px;min-width:0;display:flex}.inbox-title{font-size:var(--fs-sm)}.inbox-sub{font-size:var(--fs-xs);color:var(--text-3)}.inbox-meta{font-size:var(--fs-xs);color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums}.inbox-more{font-size:var(--fs-xs);color:var(--text-2);padding:6px 16px 10px 32px;display:block}.inbox-calm{font-size:var(--fs-xs);color:var(--text-3);align-items:center;gap:6px;margin-top:16px;display:flex}.inbox-calm svg{color:var(--good)}@media (width<=1100px){.glance-row{grid-template-columns:9px minmax(0,1fr) 92px 150px}.glance-next,.glance-cad{display:none}}
