:root{--pin-free-bg:#eef1f3;--pin-free-fg:#7d8794;--pin-ok-bg:#e3f5e8;--pin-tin:#c3c9cf;--pin-tin-edge:#7a838c;--pin-copper:#c87a3e;--pin-outline:#3b4652}.pin-chip{border:1px solid var(--warn-border);background:var(--warn-soft);color:var(--tone-warn);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;line-height:20px;display:inline-flex}.pin-chip.is-ok{background:var(--pin-ok-bg);color:var(--tone-ok);border-color:#0000}.tcgen .ep-head .pin-chip{flex:none}.tcgen .pin-panel{border:1px solid var(--warn-border);background:var(--warn-soft);border-radius:8px;gap:8px;padding:8px 12px 12px;display:grid}.tcgen .pin-panel.is-ok{border-color:var(--border);background:0 0;padding-bottom:8px}.tcgen .pin-panel-head{flex-wrap:wrap;align-items:center;gap:4px 12px;min-height:28px;display:flex}.tcgen .pin-panel-title{color:var(--foreground);font-size:12.5px;font-weight:600}.tcgen .pin-panel-head>:last-child{margin-left:auto}.tcgen .pin-done{color:var(--tone-ok);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:500}.tcgen .pin-state{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:12px}.tcgen .pin-panel .ep-pin input{background:var(--card);font-variant-numeric:tabular-nums}.tcgen .pin-panel .ep-pin input.is-bad{border-color:var(--tone-danger);background:var(--sheet-invalid-bg)}.tcgen .pin-diagram{border-top:1px solid var(--border);margin:4px 0 8px;padding:8px 0 0}.pin-diagram .pin-sides{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px 24px;display:grid}.pin-diagram .pin-sides.is-one{grid-template-columns:minmax(0,1fr)}.pin-diagram .pin-side{justify-items:center;gap:12px;min-width:0;display:grid}.pin-diagram .pin-side[data-side=A]{justify-items:end}.pin-diagram .pin-side[data-side=B],.pin-diagram .pin-sides.is-one .pin-side{justify-items:start}.pin-diagram .pin-end{border:1px solid var(--border);background:var(--card);border-radius:8px;justify-items:center;gap:4px;max-width:100%;padding:6px 8px 8px;display:grid}.pin-diagram .pin-end.is-target{border-color:var(--primary)}.pin-diagram .pin-end-head{align-items:baseline;gap:8px;font-size:12.5px;display:flex}.pin-diagram .pin-end-key{color:var(--primary);font-weight:700}.pin-diagram .pin-end-conn{font-weight:600}.pin-diagram .pin-face{max-width:100%;height:auto;display:block;overflow:visible}.pin-diagram .pin-face text{font-variant-numeric:tabular-nums}.pin-diagram .pin-face-note{font-size:12px}.pin-diagram figcaption{margin-top:4px;font-size:12px}.pin-diagram .pin-cell{cursor:pointer;touch-action:none;outline:none}.pin-diagram .pin-hit{fill:#0000;stroke:#0000;stroke-width:2px}.pin-diagram .pin-cell:hover .pin-hit{stroke:var(--primary)}.pin-diagram .pin-cell:focus-visible .pin-hit{stroke:var(--primary);stroke-width:3px}.pin-diagram .pin-cell.is-used .pin-hit{stroke:var(--pin-outline);stroke-width:1.5px}.pin-diagram .pin-cell.is-used:hover .pin-hit,.pin-diagram .pin-cell.is-used:focus-visible .pin-hit{stroke:var(--primary);stroke-width:3px}.pin-diagram .pin-cell.is-dup .pin-hit{stroke:var(--tone-danger);stroke-width:3px}.pin-diagram .pin-cell.is-held .pin-hit{stroke:var(--primary);stroke-width:3px;stroke-dasharray:4 2}.pin-diagram.has-hand .pin-end.is-target .pin-cell:not(.is-used) .pin-hit{stroke:var(--primary);stroke-dasharray:3 2}.pin-diagram .pin-badge circle{fill:var(--foreground);stroke:var(--card);stroke-width:1.5px}.pin-diagram .pin-badge text{fill:var(--card);font-size:9.5px;font-weight:700}.pin-diagram .pin-cell.is-dup .pin-badge circle{fill:var(--tone-danger)}.pin-diagram .pin-boxes{flex-wrap:wrap;justify-content:center;gap:4px;max-width:360px;display:flex}.pin-diagram .pin-box{border:1px solid var(--border);background:var(--pin-free-bg);width:32px;height:32px;color:var(--pin-free-fg);font-variant-numeric:tabular-nums;border-radius:4px;place-items:center;font-size:12px;display:grid}.pin-diagram .pin-box.is-used{border-color:var(--foreground);font-weight:600}.pin-diagram .pin-box.is-light{border-color:var(--pin-outline)}.pin-diagram .pin-box:hover{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.pin-diagram .pin-box:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.pin-diagram .pin-box.is-dup{border-color:var(--tone-danger);background:var(--sheet-invalid-bg);color:var(--tone-danger);box-shadow:0 0 0 1px var(--tone-danger)}.pin-diagram .pin-box.is-held{border-style:dashed;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.pin-diagram.has-hand .pin-end.is-target .pin-box:not(.is-used){border-color:var(--primary);border-style:dashed}@media (pointer:coarse){.pin-diagram .pin-box{width:40px;height:40px}}.pin-diagram .pin-free-block{margin-top:8px}.pin-diagram .pin-free-head{color:var(--muted-foreground);font-size:12.5px;font-weight:500}.pin-diagram .pin-free-list{margin:4px 0 0;padding:0;list-style:none;display:grid}.pin-diagram .pin-free{border-top:1px solid var(--border);font-variant-numeric:tabular-nums;align-items:center;gap:4px 12px;padding:3px 0;font-size:12.5px;display:flex}.pin-diagram .pin-free-name{font-weight:500}.pin-diagram .pin-free-label{margin-left:auto;font-weight:500}.pin-diagram .pin-free-label.is-strip{color:var(--pin-copper)}.pin-diagram .pin-free-label.is-none{color:var(--muted-foreground)}@media (width<=900px){.pin-diagram .pin-sides{grid-template-columns:minmax(0,1fr)}}.tcgen .pin-board{gap:8px;display:grid}.tcgen .pin-board.is-dragging,.tcgen .pin-board.is-dragging *{cursor:grabbing}.tcgen .pin-tools{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.tcgen .pin-tools>button{margin-left:auto}.tcgen .pin-palette{flex-wrap:wrap;gap:4px 8px;min-width:0;display:flex}.tcgen .pin-chip-wire{border:1px solid var(--border);background:var(--card);max-width:320px;min-height:32px;color:var(--foreground);font:inherit;text-align:left;cursor:grab;touch-action:none;border-radius:8px;grid-template-rows:auto auto;grid-template-columns:auto auto minmax(0,max-content);align-items:center;column-gap:6px;padding:4px 8px;font-size:12.5px;display:inline-grid}.tcgen .pin-chip-wire:hover{border-color:var(--primary)}.tcgen .pin-chip-wire:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.tcgen .pin-chip-wire.is-held{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, var(--card));box-shadow:0 0 0 1px var(--primary)}.tcgen .pin-num{font-variant-numeric:tabular-nums;font-weight:700}.tcgen .pin-chip-wire .pin-swatch,.tcgen .pin-chip-wire .pin-num{grid-row:span 2}.tcgen .pin-chip-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tcgen .pin-chip-wire small{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11.5px}.tcgen .pin-chip-wire.is-open small{color:var(--tone-warn)}.pin-swatch{border:1px solid var(--pin-outline);border-radius:50%;flex:none;width:14px;height:14px;display:inline-block}.pin-swatch.is-unknown{background:repeating-linear-gradient(45deg, var(--pin-free-bg) 0 3px, var(--card) 3px 6px);border-style:dashed}.tcgen .pin-hand{border:1px solid var(--primary);background:color-mix(in srgb, var(--primary) 6%, var(--card));border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:4px 12px;font-size:12.5px;display:flex}.tcgen .pin-hand-what{align-items:center;gap:6px;font-weight:500;display:inline-flex}.tcgen .pin-hand-color{color:var(--muted-foreground);align-items:center;gap:6px;margin-left:auto;display:inline-flex}.tcgen .pin-hand-color select{min-width:160px;height:28px}.tcgen .pin-hint,.tcgen .pin-note{font-size:12px;display:block}.tcgen .pin-board-notes{gap:4px;display:grid}.tcgen .pin-board-notes:empty{display:none}@media (pointer:coarse){.tcgen .pin-chip-wire,.tcgen .pin-tools>button,.tcgen .pin-hand button,.tcgen .pin-hand select{min-height:40px}}.pin-ask{width:min(620px,100%)}.pin-ask>p{margin:0;font-size:13px}.pin-ask-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.pin-ask-list li{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,max-content) minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:8px 0;font-size:13px;display:grid}.pin-ask-list li:last-child{border-bottom:1px solid var(--border)}.pin-ask .ep-badge{background:color-mix(in srgb, var(--primary) 12%, transparent);min-width:30px;color:var(--primary);text-align:center;border-radius:6px;padding:1px 7px;font-size:12.5px}.pin-ask-conn{white-space:nowrap;font-weight:600}.pin-ask-sum{color:var(--muted-foreground);font-variant-numeric:tabular-nums}@media (pointer:coarse){.pin-ask-list button,.tcgen .pin-panel-head button{min-height:40px}}.pin-diagram .pin-routes{margin:8px 0 0;padding:0;list-style:none;display:grid}.pin-diagram .pin-route{border-top:1px solid var(--border);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:3px 0;font-size:12.5px;display:flex}.pin-diagram .pin-route-name{min-width:180px;font-weight:500}.pin-diagram .pin-route-from,.pin-diagram .pin-route-to{font-weight:600}.pin-diagram .pin-route-targets{display:grid}.pin-diagram .pin-route-to{align-items:center;height:20px;display:flex}.pin-diagram .pin-glyph{flex:none}.pin-diagram .pin-route-mode{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.tcgen .pin-branch{border:1px solid var(--tone-warn);background:var(--warn-soft);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:4px 12px;font-size:12.5px;display:flex}.pin-mode-seg{display:inline-flex}.pin-mode{border:1px solid var(--border);background:var(--card);min-height:26px;color:var(--foreground);font:inherit;cursor:pointer;padding:0 10px;font-size:12.5px}.pin-mode:first-child{border-radius:6px 0 0 6px}.pin-mode:last-child{border-radius:0 6px 6px 0}.pin-mode-seg .pin-mode+.pin-mode{border-left:0}.pin-route-mode .pin-mode{border-radius:6px}.pin-mode.is-on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 14%, var(--card));font-weight:600}.pin-mode:focus-visible{outline:2px solid var(--primary);outline-offset:1px}@media (pointer:coarse){.pin-mode{min-height:40px}}.tcgen .pin-chip-wrap{display:inline-flex;position:relative}.tcgen .pin-chip-wrap .pin-chip-wire{flex:1}.tcgen .pin-swatch.is-spacer{visibility:hidden}.tcgen .pin-color-dot{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;display:grid;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.tcgen .pin-color-dot:hover .pin-swatch{box-shadow:0 0 0 2px var(--primary)}.tcgen .pin-color-dot:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.pin-color-pop{z-index:20;border:1px solid var(--border);background:var(--card);border-radius:8px;gap:6px;width:340px;max-width:80vw;padding:8px 10px;font-size:12.5px;display:grid;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 6px 18px #0000002e}.pin-color-pop .pin-color-row{gap:4px;display:grid}.pin-color-pop .swatch{width:24px;height:24px}.pin-color-pop .pin-color-two{align-items:center;gap:6px;font-weight:500;display:flex}.pin-color-pop .pin-color-two input{width:auto;margin:0}.pin-color-pop .pin-color-foot{align-items:center;gap:12px;display:flex}.pin-color-pop .pin-color-foot .muted{margin-right:auto}@media (pointer:coarse){.pin-color-pop .swatch,.tcgen .pin-color-dot{width:40px;height:40px}}:root{color:#001a18;font-synthesis:none;--background:#f7fafa;--foreground:#001a18;--card:#fff;--primary:#00b09b;--primary-foreground:#fff;--accent:#f0f1f5;--muted-foreground:#5f6b85;--border:#e2e4ea;--sheet-row:30px;--sheet-line:#e7ebee;--sheet-head:#f3f6f6;--sheet-edit:#fbfcfc;--sheet-hover:#b9c6c3;--sheet-dirty:#e3f5f1;--sheet-selected:#eef8f6;--sheet-invalid:#b91c1c;--sheet-invalid-bg:#fdf1f0;--tone-ok:#15803d;--tone-warn:#a16207;--font-mono:ui-monospace, SFMono-Regular, Consolas, monospace;--tone-danger:#b91c1c;--warn-soft:#fff7e6;--warn-border:#f0b44c;--seg-bg:#e9eeee;--seg-fg:#4b5a58;--switch-off:#cfd6d5;--chip-box:#a9b3b1;--table-head:#f3f6f6;--table-head-fg:#3d4a5c;--table-zebra:#f3f6f7;--panel-soft:#f4f7f7;--goods-production:#a9b3b1;--goods-accepted:#5b8def;--goods-packed:#d9a440;--goods-shipped:#3f9f6e;--danger:var(--tone-danger);--muted:var(--panel-soft);--chip-ok-bg:var(--chip-success-bg);--tone-info:#1d4ed8;--tone-neutral:#5f6b6d;--chip-success-bg:#e6f4ea;--chip-success-fg:#1e6b3c;--chip-info-bg:#e5eefb;--chip-info-fg:#1d4f91;--chip-warning-bg:#fdf3d8;--chip-warning-fg:#7f5300;--chip-danger-bg:#fdecea;--chip-danger-fg:#a8231a;--chip-neutral-bg:#eef1f2;--chip-neutral-fg:#4b5563;--control-h:32px;--control-h-cell:28px;--control-radius:8px;--focus-ring:2px solid var(--primary);--danger-soft:#fdecea;--disabled-bg:#e4e8e9;--disabled-fg:#5f6b6d;--table-head-size:12px;--dt-wrap-max:clamp(240px, 26vw, 520px);background:#f7fafa;font-family:Open Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}@media (pointer:coarse){:root{--control-h:40px;--control-h-cell:40px}}*{box-sizing:border-box}body{background:var(--background);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit;font-size:14px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button[aria-busy=true]{cursor:progress}:where(button,a,summary,[role=button],[tabindex]:not([tabindex="-1"]),input[type=checkbox],input[type=radio]):focus-visible{outline:var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{height:100dvh;display:flex;overflow:hidden}.sidebar{width:240px;height:100%;color:var(--foreground);background:var(--card);border-right:1px solid var(--border);flex-direction:column;flex:none;padding:18px 12px;display:flex;overflow-y:auto}.brand{letter-spacing:.04em;align-items:center;gap:10px;padding:2px 8px 18px;display:flex}.wordmark{letter-spacing:.08em;font-size:19px}.notif-bell{cursor:pointer;background:0 0;border:0;margin-left:auto;padding:4px 6px;font-size:18px;line-height:1;position:relative}.notif-badge{color:#fff;text-align:center;letter-spacing:0;background:#d93025;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:-4px;right:-6px}.brand .mod,.logo-row .mod{color:var(--muted-foreground);letter-spacing:.09em;text-transform:uppercase;font-size:11px}.brand-mark{color:#10281d;background:#dbff57;border-radius:12px;place-items:center;width:38px;height:38px;font-weight:900;display:inline-grid}.brand-mark.large{width:56px;height:56px;font-size:24px}nav{display:block}.nav-group{border-top:1px solid var(--border);margin:16px 0 0;padding-top:10px}.nav-group h4{color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px;padding:0 9px;font-size:11px;font-weight:500}.nav-item{width:100%;color:var(--foreground);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;padding:8px 9px;font-size:13px;display:flex}.nav-item:hover{background:var(--accent)}.nav-item.active{color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);box-shadow:inset 2px 0 var(--primary);font-weight:500}.profile{border-top:1px solid var(--border);gap:4px;margin-top:auto;padding:16px 9px 0;font-size:12.5px;display:grid}.profile span{color:var(--muted-foreground);font-size:11.5px}.profile-card{border:1px solid var(--border);background:var(--card);border-radius:10px;gap:8px;margin:6px 0;padding:10px;display:grid}.profile-card dl{grid-template-columns:auto 1fr;gap:3px 8px;margin:0;font-size:11.5px;display:grid}.profile-card dt{color:var(--muted-foreground)}.profile-card dd{margin:0}.profile-card form{gap:6px;display:grid}.profile-card input{min-width:0}.link-button{color:var(--primary);text-align:left;background:0 0;border:0;padding:8px 0 0}.workspace{flex:1;min-width:0;min-height:0;padding:30px 34px;overflow-y:auto}.shell-error{margin:18px 38px 0}.page{margin:0;padding:0 0 50px}.page-head{align-items:center;gap:12px;margin-bottom:10px;display:flex}.page-head h1{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:500}.page-count{color:var(--muted-foreground);background:var(--accent);border-radius:999px;padding:2px 9px;font-size:12px}.page-actions{gap:8px;margin-left:auto;display:flex}.page-sub{color:var(--muted-foreground);margin:0 0 4px;font-size:13px}.stock-page .page-sub:last-of-type{margin-bottom:20px}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;min-height:82px;margin-bottom:24px;display:flex}.page-header.compact{min-height:auto;margin:0;padding:24px 30px 18px}h1,h2,p{margin-top:0}h1{letter-spacing:-.01em;margin-bottom:6px;font-size:22px;font-weight:500}h2{margin-bottom:0;font-size:16px;font-weight:600}.panel>h2:first-child{padding:18px 20px 12px}h3{font-size:15px;font-weight:600}.page-sub+.panel,.page-head+.panel{margin-top:12px}.panel+.panel,.table-wrap+.panel,.panel+.table-wrap,.panel+.data-table{margin-top:16px}.split-layout>.panel{margin-top:0}.page-header p{color:var(--muted-foreground);margin:0;font-size:13px}.eyebrow{color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.counter,.queue-summary span{color:#47544c;background:#dfe5dc;border-radius:999px;padding:9px 13px;font-size:13px}.queue-summary{align-items:center;gap:9px;margin:0 0 14px;display:flex}.empty-stages{color:var(--muted-foreground);margin:0 0 10px;font-size:13px}.queue-summary strong{color:#10281d}.panel{border:1px solid var(--border);background:var(--card);border-radius:12px}.panel-heading{justify-content:space-between;align-items:baseline;gap:16px;padding:19px 20px 15px;display:flex}.panel-heading span{color:#78827c;font-size:12px}.split-layout{grid-template-columns:minmax(370px,.8fr) minmax(600px,1.4fr);align-items:start;gap:20px;display:grid}.request-form{padding-bottom:20px}.readonly-panel{color:#657168;padding:24px}.readonly-panel h2{color:#17211b}.form-grid,.facts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px;padding:0 20px 18px;display:grid}@media (width>=1600px){.form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid>.half,.form-grid>.wide.half{grid-column:span 2}}label{color:var(--muted-foreground);gap:6px;font-size:12.5px;font-weight:600;display:grid}label input,label select,label textarea{color:var(--foreground);font-size:14px;font-weight:400}label.wide{grid-column:1/-1}input,select,textarea{border:1px solid var(--border);border-radius:var(--control-radius);width:100%;color:var(--foreground);background:var(--card);outline:none;padding:5px 10px}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),select){height:var(--control-h)}:where(td) :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),select){height:var(--control-h-cell)}input:disabled,select:disabled,textarea:disabled{color:var(--disabled-fg);background:var(--accent);cursor:not-allowed}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.suggest-list{z-index:1000;border:1px solid var(--border);background:var(--card);border-radius:8px;max-height:256px;margin:0;padding:4px;list-style:none;position:fixed;overflow:auto;box-shadow:0 8px 24px #001a181f}.suggest-list li{color:var(--foreground);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:7px 10px;font-size:14px;overflow:hidden}.manual-stock-grid .span-2{grid-column:span 2}.suggest-list .suggest-desc{color:var(--muted-foreground)}.suggest-list li.active{background:color-mix(in srgb, var(--primary) 12%, transparent)}@media (pointer:coarse){.suggest-list li{padding:11px 12px}}textarea{resize:vertical;padding:8px 10px}textarea.auto-textarea{resize:none;box-sizing:border-box;padding-top:8px;padding-bottom:8px;line-height:20px;display:block;overflow-y:hidden}.primary,.secondary{border-radius:var(--control-radius);border:1px solid #0000;padding:5px 14px;font-weight:600;line-height:20px}.primary{color:var(--primary-foreground);background:var(--primary)}.primary:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 86%, #000)}.secondary{border-color:var(--border);color:var(--foreground);background:var(--card)}.secondary:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--accent)}.primary:disabled,.secondary:disabled{opacity:1;color:var(--disabled-fg);background:var(--disabled-bg);border-color:#0000}button.danger{border:1px solid color-mix(in srgb, var(--tone-danger) 40%, var(--border));color:var(--tone-danger);background:var(--card)}button.danger:hover:not(:disabled){border-color:var(--tone-danger);background:var(--danger-soft)}button.primary.danger{border-color:var(--tone-danger);color:#fff;background:var(--tone-danger)}button.primary.danger:hover:not(:disabled){background:color-mix(in srgb, var(--tone-danger) 86%, #000)}.icon-button{min-width:var(--control-h);min-height:var(--control-h);border-radius:var(--control-radius);color:var(--muted-foreground);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 6px;font-size:16px;line-height:1;display:inline-flex}.icon-button:hover:not(:disabled){color:var(--foreground);background:var(--accent)}.compact{width:auto;padding:5px 16px}.small{padding:4px 10px;font-size:12.5px;line-height:18px}@media (pointer:coarse){.primary,.secondary{min-height:var(--control-h)}}.mode-tabs{margin:0 20px 14px}.import-panel{gap:12px;padding:0 20px 18px;display:grid}.import-panel .form-grid{padding:0}.rc-tsv{min-height:90px;font-family:ui-monospace,monospace;font-size:12px}.table-scroll{overflow:auto}.table-wrap{border:1px solid var(--border);background:var(--card);border-radius:12px;max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{color:var(--table-head-fg);background:var(--card);font-size:var(--table-head-size);letter-spacing:0;text-transform:none;font-weight:600}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap;padding:11px 14px}.grid.wide{width:100%}.grid td.text{white-space:normal;min-width:220px;max-width:340px}.grid .num{text-align:right;font-variant-numeric:tabular-nums;min-width:64px}.filters{z-index:8;background:var(--background);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding:4px 0;display:flex;position:sticky;top:-30px}.filters .search{flex:260px;min-width:180px}.filters select{width:auto}.check-inline{color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:400;display:inline-flex}.check-inline input{width:auto;margin:0}.table-link{padding:0}.stock-actions-row td{background:#f9fbfb}.stock-article-row td{background:#fff}.stock-group-row td{color:#38504d;letter-spacing:.04em;text-transform:uppercase;background:#e9f0ef;font-size:12px;font-weight:700}.stock-actions{grid-template-columns:minmax(260px,.7fr) minmax(420px,1.3fr);gap:22px;display:grid}.manual-stock-form{margin-bottom:16px;padding:18px}.manual-stock-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.manual-stock-head h2{font-size:16px;font-weight:600}details>summary{cursor:pointer;color:var(--muted-foreground);font-size:13px;font-weight:600}.manual-stock-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));align-items:end;gap:10px;margin-bottom:14px;display:grid}.manual-stock-form label{gap:4px}.manual-stock-form input,.manual-stock-form select{height:32px;padding:5px 9px;font-size:13px}@media (width>=1500px){.manual-stock-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:8px 12px}.manual-stock-grid .span-3{grid-column:span 3}}@media (pointer:coarse){.manual-stock-form input,.manual-stock-form select{height:40px}}.place-busy{background:#fff4d1;border-color:#e0a800}.dialog-overlay{z-index:50;background:#001a1859;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.move-dialog{gap:12px;width:min(640px,100%);max-height:calc(100vh - 32px);padding:18px 20px;display:grid;overflow:auto;box-shadow:0 12px 40px #00000040}.move-dialog>h2:first-child{margin:0;padding:0;font-size:16px;font-weight:600}.move-dialog h3{margin:4px 0 -4px;font-size:13px;font-weight:600}.dialog-overlay .move-dialog .page-sub{margin:0}.move-dialog .seg-tabs.move-modes{grid-template-columns:1fr 1fr;margin:0;display:grid}.move-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.move-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.move-lot{border:1px solid var(--border);background:var(--accent);border-radius:8px;gap:2px;padding:9px 11px;font-size:13px;display:grid}.move-lot span{color:var(--muted-foreground)}.return-from{flex-wrap:wrap;gap:6px;display:flex}.return-from button.on{border-color:var(--primary);color:var(--primary)}.move-actions{justify-content:flex-end;gap:10px;display:flex}.move-dialog.wide{width:min(1040px,100%)}.move-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.dialog-form{gap:12px;display:grid}.move-dialog .move-actions .link-button{margin-right:auto}.move-dialog .history-table{max-height:60vh;overflow:auto}.move-dialog .history-table table{width:100%}.move-dialog .dialog-inline-action{place-self:end start}.manual-stock-rows{margin-bottom:12px}.manual-stock-rows .manual-stock-passport-cell{max-width:420px;color:var(--muted-foreground)}.manual-stock-rows .manual-stock-row-actions{white-space:nowrap;text-align:right}.manual-stock-rows .manual-stock-row-actions .link-button+.link-button{margin-left:10px}.manual-stock-actions{flex-wrap:wrap;gap:10px;display:flex}td small,td strong{display:block}td small{color:var(--muted-foreground);margin-top:3px;font-size:12px;line-height:1.3}.status{color:#315240;background:#e3eee6;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.empty{color:#7a847e;text-align:center;padding:28px!important}.error-banner,.success-banner{border-radius:11px;margin-bottom:16px;padding:11px 14px;font-size:13px}.error-banner{color:#852a24;background:#fbe7e4}.success-banner{color:#205b38;background:#ddf2e4}.warning-banner{color:#74451f;white-space:pre-line;background:#fff3dd;border-radius:11px;margin-bottom:16px;padding:11px 14px;font-size:13px}.warning-banner ul{margin:4px 0 0;padding-left:18px}.work-list{gap:14px;margin-top:25px;display:grid}.work-list>.panel-heading{padding-left:2px}.procurement-card,.receiving-card,.warehouse-card{padding:18px 20px}.procurement-title,.card-footer{justify-content:space-between;align-items:center;gap:14px;display:flex}.procurement-title small{color:var(--muted-foreground);margin-top:5px;font-size:12px;display:block}.fulfillment-list{margin-top:20px}.fulfillment-card{padding:18px 20px}.fulfillment-lines{margin-top:16px}.fulfillment-lines select{min-width:260px}.fulfillment-actions{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;margin-top:16px;display:flex}.fulfillment-actions label{min-width:min(300px,100%);margin-right:auto}.fulfillment-actions .handout-offer{color:var(--muted-foreground);align-self:center}.fulfillment-actions .handout-offer b{color:var(--foreground)}.fulfillment-meta{flex-wrap:wrap;gap:6px 18px;margin:10px 0 0;font-size:12px;display:flex}.fulfillment-meta dt{color:var(--muted-foreground)}.fulfillment-meta dd{margin:0;font-weight:500}.fulfillment-progress{color:var(--muted-foreground);margin:8px 0 0;font-size:13px}.fulfillment-create,.fulfillment-project{margin-bottom:16px;padding:18px 20px}.fulfillment-head-actions{align-items:center;gap:8px;display:flex}.fulfillment-card-actions{justify-content:flex-start;align-items:center}.fulfillment-card-actions>.handout-offer{margin-left:auto}.fulfillment-danger-group{border-left:1px solid var(--border);flex-wrap:wrap;gap:10px;margin-left:auto;padding-left:16px;display:flex}.project-kb-bar{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:12px;margin-bottom:16px;display:flex}.project-kb-bar .calendar-chips{flex:0 auto;margin-bottom:0}.project-issue-btn{white-space:nowrap;flex:none}.issue-chooser{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:12px 0 14px;padding:12px 0}.issue-chooser h3{margin:0 0 10px;font-size:15px;font-weight:600}.issue-chooser th.check,.issue-chooser td.check{text-align:center;width:36px}.issue-chooser td.check input{width:16px;height:16px;margin:0}.issue-chooser tr.muted-row td{color:var(--muted-foreground)}.cand-legend{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0 0 8px;font-size:12px;display:flex}.cand-key{align-items:center;gap:6px;display:inline-flex}.cand-key:before{content:"";border:1px solid var(--border);border-radius:3px;width:12px;height:12px}.cand-key.cand-ok:before{background:color-mix(in srgb, var(--tone-ok) 22%, transparent);border-color:var(--tone-ok)}.cand-key.cand-maybe:before{background:color-mix(in srgb, var(--tone-warn) 22%, transparent);border-color:var(--tone-warn)}.cand-key.cand-none:before{background:color-mix(in srgb, var(--tone-danger) 18%, transparent);border-color:var(--tone-danger)}.fulfillment-project .table-wrap .grid tbody tr.cand-ok:not(.detail):not(.group-row)>td{background:color-mix(in srgb, var(--tone-ok) 12%, transparent)}.fulfillment-project .table-wrap .grid tbody tr.cand-maybe:not(.detail):not(.group-row)>td{background:color-mix(in srgb, var(--tone-warn) 14%, transparent)}.fulfillment-project .table-wrap .grid tbody tr.cand-none:not(.detail):not(.group-row)>td{background:color-mix(in srgb, var(--tone-danger) 10%, transparent)}.fulfillment-project .table-wrap .grid tbody tr.cand-done:not(.detail):not(.group-row)>td{color:var(--muted-foreground)}.kit-pane .data-table .grid tbody tr.cand-ok:not(.detail):not(.group-row)>td{background:color-mix(in srgb, var(--tone-ok) 12%, var(--card))}.kit-pane .data-table .grid tbody tr.cand-maybe:not(.detail):not(.group-row)>td{background:color-mix(in srgb, var(--tone-warn) 14%, var(--card))}.kit-pane .data-table .grid tbody tr.cand-none:not(.detail):not(.group-row)>td{background:color-mix(in srgb, var(--tone-danger) 10%, var(--card))}.supply-cand{gap:1px;font-size:13px;display:grid}.supply-cand small,.supply-unknown small{color:var(--muted-foreground);font-size:12px}.supply-unknown{color:var(--muted-foreground)}.cand-cell .link-button{text-align:left;color:var(--foreground);text-underline-offset:3px;gap:1px;font-size:13px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:grid}.cand-cell small,.cand-tag{color:var(--muted-foreground);font-size:12px}.cand-none-text{color:var(--tone-danger);font-size:13px}.issue-writeoff{margin-top:10px;font-size:13px}.issue-writeoff summary{cursor:pointer;font-weight:500}.issue-writeoff .table-wrap{margin-top:8px}@media (pointer:coarse){.issue-chooser td.check input{width:22px;height:22px}}.lot-picker{gap:8px;display:grid}.lot-picker .status{margin-left:6px}.danger-link{color:#a33830}.return-form{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.return-form h3{margin:0 0 5px;font-size:15px;font-weight:600}.return-form>p{color:var(--muted-foreground);margin:0 0 14px;font-size:12px}.return-line{grid-template-columns:minmax(180px,1.3fr) auto repeat(4,minmax(115px,.7fr));align-items:end;gap:10px;margin-bottom:12px;display:grid}.return-line>span{color:var(--muted-foreground);white-space:nowrap;align-self:center;font-size:12px}.production-launch{margin-top:18px;padding:18px}.production-launch-grid{grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;display:grid}.production-launch h3{margin:18px 0 10px;font-size:15px}.route-draft{grid-template-columns:80px 110px minmax(150px,1fr) minmax(180px,1.4fr) 110px 130px auto;align-items:end;gap:8px;margin-bottom:9px;display:grid}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.panel>form>.form-actions{padding:0 20px}.panel>form>.page-sub{padding:0 20px 12px}fieldset.form-grid{border:1px solid var(--border);background:#fbfcfc;border-radius:12px;min-width:0;margin:0 20px 14px;position:relative}fieldset.form-grid>legend{float:left;width:100%;color:var(--foreground);grid-column:1/-1;margin:0 0 4px;padding:0;font-size:14px;font-weight:600}fieldset.form-grid{padding:16px 18px 18px}.form-grid>.wide,.facts-grid>.wide{grid-column:1/-1}.request-position>.form-actions{margin:0;position:absolute;top:10px;right:14px}.production-card{padding:18px 20px}.production-card.cancelled{opacity:.68}.production-summary{color:var(--muted-foreground);margin:13px 0;font-size:12px}.production-operations{gap:8px;margin-bottom:10px;display:grid}.production-operation{border-top:1px solid var(--border);grid-template-columns:minmax(210px,1.4fr) 100px minmax(150px,1fr) minmax(200px,1fr);align-items:center;gap:10px;padding-top:10px;font-size:12px;display:grid}.production-operation small{color:var(--muted-foreground);margin-top:3px;display:block}.execution-current,.execution-boxes,.box-review{margin:16px 0;padding:18px}.execution-actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.execution-actions label,.start-work label,.production-box label{gap:4px;font-size:12px;display:grid}.execution-actions input,.start-work input{width:125px}.review-row{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:14px;margin:16px 0;display:grid}.review-row:empty{display:none}.review-row>.box-review{margin:0}.box-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.production-box{border:1px solid var(--border);border-radius:10px;align-content:start;gap:7px;padding:12px;font-size:13px;display:grid}.production-box>strong{letter-spacing:.04em;font-size:18px}.production-box small{color:var(--muted-foreground);font-size:12px}.production-box>button{justify-self:start}.start-work{background:var(--muted);border-radius:8px;flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:8px;padding:10px;display:flex}.execution-hint{grid-column:1/-1}.danger-text{color:var(--danger)}.traceability-search,.instrument-registry{margin:16px 0;padding:18px}.panel.instrument-registry>.data-table{padding:0}.box-review>.empty{text-align:left;font-size:13px;padding:2px 0 4px!important}.instrument-registry .form-grid{padding:0 0 4px}.instrument-registry .instrument-form .form-actions{margin:6px 0 16px}.traceability-search .search-row{gap:8px;margin:12px 0;display:flex}.traceability-search .search-row input{flex:1;min-width:220px}.genealogy-result{gap:12px;display:grid}.genealogy-edges{gap:6px;display:grid}.genealogy-edges>div{border-top:1px solid var(--border);grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:8px;padding-top:7px;font-size:12px;display:grid}.genealogy-edges span{color:var(--muted-foreground);text-align:center}.operation-assign{background:#f7f9f9;border-radius:8px;grid-column:1/-1;grid-template-columns:minmax(260px,1fr) minmax(210px,.5fr) auto;align-items:end;gap:10px;padding:10px;display:grid}.operation-assign select[multiple]{min-height:82px}.production-calendar{margin-top:18px;padding:18px}.schedule-controls,.skill-row{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.schedule-controls>label:last-of-type,.skill-row>label:first-of-type{flex-direction:row;align-items:center;gap:5px;display:flex}.skills-editor,.skills-grid,.schedule-panel,.schedule-variants,.schedule-route{gap:12px;display:grid}.skill-row,.schedule-variant{border:1px solid var(--border);border-radius:10px;padding:12px}.skill-row>div:first-child{min-width:180px;margin-right:auto;display:grid}.skill-row input[type=number]{width:96px}.schedule-planner{margin:10px 0}.schedule-panel{background:var(--accent);border-radius:10px;margin-top:10px;padding:12px}.schedule-variant{gap:8px;display:grid}.schedule-variant>div:first-child,.schedule-route span{display:grid}.calendar-add{align-items:end;gap:10px;margin-bottom:12px;display:flex}.calendar-add label{min-width:180px}.calendar-chips{flex-wrap:wrap;gap:7px;margin-bottom:16px;display:flex}.calendar-chip{color:var(--foreground);background:var(--accent);border:0;border-radius:999px;padding:5px 10px;font-size:12px}.production-calendar .calendar-block+.calendar-block{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.production-calendar .calendar-block h3{margin:0 0 12px;font-size:14px;font-weight:600}.production-calendar .form-grid{padding:0}.production-calendar .field-group,.lv-form .field-group{color:var(--muted-foreground);align-content:start;gap:6px;font-size:12.5px;font-weight:600;display:grid}.production-calendar .weekday-toggles{justify-self:start;margin:0}@media (width>=1600px){.production-calendar .form-grid>.weekdays{grid-column:span 3}}.production-calendar .calendar-add{margin-bottom:10px}.production-calendar .calendar-block .form-actions{margin:10px 0 14px}.production-calendar>.form-actions{border-top:1px solid var(--border);margin-top:18px;padding-top:14px}.production-calendar .cal-add{border-color:var(--primary);color:var(--primary)}.production-calendar .cal-add:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 8%, white)}.production-calendar .cal-add:disabled{cursor:not-allowed}.holiday-chips{flex-wrap:wrap;gap:7px;margin-bottom:16px;display:flex}.holiday-chip{background:var(--accent);border-radius:999px;align-items:center;gap:2px;padding:2px 3px 2px 11px;font-size:12.5px;display:inline-flex}.holiday-chip button{color:#a33830;background:0 0;border:0;border-radius:999px;padding:2px 7px;font-size:15px;line-height:1}.holiday-chip button:hover{background:#fde8e8}.cal-empty{color:var(--muted-foreground);font-size:12.5px}.cal-leave{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.calendar-absences .row-end{text-align:right}.calendar-absences .link-button{padding:0}@media (pointer:coarse){.weekday-toggles button,.holiday-chip button{min-width:40px;min-height:40px}}.shipping-tabs{gap:8px;margin:18px 0;display:flex}.shipping-tabs .active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, white)}.ship-tabs{margin:0 0 14px}.ship-tab-count{background:var(--accent);color:var(--muted-foreground);border-radius:999px;margin-left:7px;padding:0 7px;font-size:11.5px;font-weight:700}.seg-tabs button.on .ship-tab-count{background:color-mix(in srgb, var(--primary) 14%, white);color:var(--primary)}.ship-panel{white-space:normal;gap:12px;padding:4px 4px 8px;display:grid}.ship-panel .table-scroll,.ship-card .table-scroll,.ship-request .table-scroll,.ship-boxes .table-scroll{border:1px solid var(--border);background:var(--card);border-radius:8px}table.ship-lines{width:100%}.data-table table.ship-lines thead th,table.ship-lines thead th{box-shadow:none;padding:6px 10px;position:static}.data-table table.ship-lines td,table.ship-lines td{height:32px;padding:4px 10px}table.ship-lines tbody tr:last-child td{border-bottom:0}table.ship-lines td.ship-name{white-space:normal;width:40%}table.ship-lines td:first-child{width:1%}.ship-line-off td{color:var(--muted-foreground)!important}.ship-qty{text-align:right;width:96px;padding:5px 8px}.ship-qty.invalid{border-color:var(--tone-danger);box-shadow:0 0 0 1px var(--tone-danger)}.ship-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px 14px;display:grid}@media (width>=1200px){.ship-form{grid-template-columns:repeat(4,minmax(0,1fr))}.ship-form>.ship-span2{grid-column:span 2}}.ship-form label{gap:4px}.ship-form label>span{align-items:baseline;gap:8px;display:flex}.ship-form input,.ship-form select{padding:7px 10px}.ship-form input[type=file]{padding:5px 8px;font-size:13px}.ship-inherited{color:var(--muted-foreground);font-size:11.5px;font-weight:400}.ship-more>summary{cursor:pointer;color:var(--foreground);padding:4px 0;font-size:13px;font-weight:600}.ship-more>.ship-form{margin-top:8px}.ship-actions{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.ship-actions-end{flex-wrap:wrap;gap:8px;margin-left:auto;display:inline-flex}.ship-actions .file-button{cursor:pointer;align-items:center;display:inline-flex}.ship-actions .link-button{padding:8px 4px}.data-table td .ship-actions .primary,.data-table td .ship-actions .secondary,.data-table td .ship-docs .secondary{border-radius:8px;padding:7px 14px;font-size:13px;line-height:1.4}.ship-total{color:var(--muted-foreground);font-size:13px}.ship-total strong,td .ship-total strong{color:var(--foreground);display:inline}.ship-file{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-width:0;min-height:36px;padding:3px;display:flex}.ship-file>span:last-child{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-weight:400;overflow:hidden}.ship-file .secondary{cursor:pointer;flex:none;padding:6px 12px;font-size:13px}.ship-panel>.empty{text-align:left;padding:10px!important}.ship-project-shipments{gap:10px;display:grid}.ship-project-shipments>h3{margin:6px 0 0;font-size:14px}.ship-card{border:1px solid var(--border);background:var(--card);white-space:normal;border-radius:10px;gap:10px;padding:12px 14px;display:grid}.ship-card.cancelled{opacity:.68}.ship-card-head{flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:13px;display:flex}.ship-card-head>strong{font-size:14px}.ship-docs{border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:10px;padding-top:10px;display:grid}.ship-docs input,.ship-docs select{padding:7px 10px}.ship-boxes{background:var(--panel-soft);border-radius:8px;gap:10px;padding:12px;display:grid}.ship-boxes-head{align-items:center;gap:16px;display:flex}.ship-inline{align-items:center;gap:8px;display:inline-flex}.ship-inline input{width:80px}.ship-request{gap:12px;margin-bottom:14px;padding:16px 18px;display:grid}.ship-request>h2{margin:0;font-size:16px}.ship-accept{grid-template-columns:auto minmax(260px,2fr) minmax(110px,.6fr) minmax(150px,.7fr) auto;align-items:end;gap:12px;margin-bottom:14px;padding:12px 16px;display:grid}.ship-accept>strong{align-self:center;font-size:14px}.ship-accept label{gap:4px}.ship-accept input,.ship-accept select{padding:7px 10px}.ship-handoff{margin-bottom:16px}.ship-handoff>h2{align-items:center;gap:8px;margin:0 0 8px;font-size:16px;display:flex}@media (width<=1100px){.ship-docs{grid-template-columns:repeat(2,minmax(0,1fr))}.ship-accept{grid-template-columns:1fr 1fr}.ship-accept>strong{grid-column:1/-1}}.ship-tab-count.is-zero{color:var(--muted-foreground);background:0 0;font-weight:500}.ship-take{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 8px;display:inline-flex}.ship-take .ship-qty{width:84px;padding:3px 8px}.ship-row-error{text-align:right;white-space:normal;flex-basis:100%;max-width:280px;font-size:12px;line-height:1.3}.data-table tr.ship-row-picked>td{background:var(--sheet-selected)}.ship-accept-bar{flex-wrap:wrap;align-items:center;gap:8px 12px;display:inline-flex}.ship-accept-bar input[type=date]{width:140px;padding:4px 8px}.ship-accept-bar .primary{min-height:var(--control-h);font-variant-numeric:tabular-nums;padding:6px 14px}.ship-open-note{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0;font-size:13px;display:flex}.ship-open-note>span{color:var(--foreground);align-items:center;gap:6px;display:inline-flex}.ship-rollback{border:1px solid var(--chip-danger-bg);background:var(--danger-soft);border-radius:8px;grid-template-columns:minmax(260px,1fr) auto auto;align-items:end;gap:8px;padding:12px;display:grid}.ship-rollback label{gap:4px}.ship-rollback input{padding:7px 10px}.goods-states{vertical-align:middle;flex-direction:column;gap:4px;min-width:0;display:inline-flex}.goods-bar{background:var(--accent);border-radius:3px;width:100%;min-width:120px;height:6px;display:flex;overflow:hidden}.goods-seg{min-width:3px}.goods-seg+.goods-seg{margin-left:1px}.goods-seg.is-production,.goods-count.is-production .goods-dot{background:var(--goods-production)}.goods-seg.is-accepted,.goods-count.is-accepted .goods-dot{background:var(--goods-accepted)}.goods-seg.is-packed,.goods-count.is-packed .goods-dot{background:var(--goods-packed)}.goods-seg.is-shipped,.goods-count.is-shipped .goods-dot{background:var(--goods-shipped)}.goods-seg.is-empty{flex-grow:1}.goods-counts{color:var(--muted-foreground);white-space:nowrap;flex-wrap:wrap;gap:0 10px;font-size:12px;line-height:1.35;display:flex}.goods-count{align-items:center;gap:4px;display:inline-flex}.goods-count b{color:var(--foreground);font-variant-numeric:tabular-nums;font-weight:600}.goods-count.is-zero b{color:var(--muted-foreground);font-weight:400}.goods-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.goods-panel{gap:8px;display:grid}.goods-panel-head{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;font-size:13px;display:flex}.goods-panel-head .link-button{padding:0;font-size:13px}.goods-grn{font-variant-numeric:tabular-nums slashed-zero;white-space:nowrap}.kit-sostav td.kit-goods .goods-counts{grid-template-columns:auto auto;justify-content:start;gap:0 12px;display:grid}@media (pointer:coarse){.shipping-page .ship-take .ship-qty,.shipping-page .ship-accept-bar .primary,.shipping-page .ship-accept-bar input,.shipping-page .ship-rollback input,.shipping-page .ship-rollback button{min-height:40px}.shipping-page .ship-take input[type=checkbox],.shipping-page .ship-accept-bar input[type=checkbox]{width:22px;height:22px}.shipping-page .small,.shipping-page .ship-actions button,.shipping-page .ship-actions .link-button,.shipping-page .ship-docs button,.shipping-page .ship-actions .file-button,.shipping-page .ship-file .secondary,.shipping-page table.ship-lines td .link-button,.shipping-page .ship-qty,.shipping-page .ship-form input,.shipping-page .ship-form select,.shipping-page .ship-docs input,.shipping-page .ship-docs select,.shipping-page .ship-accept input,.shipping-page .ship-accept select,.shipping-page .ship-accept button{min-height:40px}.data-table table.ship-lines td,table.ship-lines td{height:44px}.ship-more>summary{padding:10px 0}}.reference-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.reference-map{padding:18px}.reference-map-head,.reference-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.reference-row input{min-width:0}.reference-map-head{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px;font-size:10px}.reference-row{margin-bottom:8px}.reference-filters{position:static}.reference-filters>.shipping-tabs{margin:0}.snapshot-meta{color:var(--muted-foreground);margin:0 0 12px;font-size:12px}.reference-fields{flex-wrap:wrap;gap:6px 14px;display:flex}.reference-fields span{gap:2px;display:grid}.reference-fields small{color:var(--muted-foreground);text-transform:uppercase;font-size:9px}.reference-tiles{margin-bottom:14px}.db-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:10px 18px;margin:12px 0 14px;padding-bottom:10px;display:flex}.db-tab-group{align-content:start;gap:4px;display:grid}.db-tab-group-title{color:var(--muted-foreground);font-size:12px;font-weight:600}.db-tab-row{flex-wrap:wrap;gap:5px;display:flex}.db-tab{border:1px solid var(--border);color:var(--foreground);background:var(--card);border-radius:8px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;font-weight:500;display:inline-flex}.db-tab:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}.db-tab.active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, white)}.db-tab-count{color:var(--muted-foreground);background:var(--accent);border-radius:999px;padding:0 7px;font-size:11px;font-weight:400}.db-tab.active .db-tab-count{color:var(--primary)}.db-clamp{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.db-clip{text-overflow:ellipsis;white-space:nowrap;max-width:30ch;display:block;overflow:hidden}.db-cell-input{width:100%;min-width:160px}.db-dirty{color:var(--muted-foreground);font-size:12px}.db-edit{margin-bottom:14px;padding:16px 18px}.db-form label{gap:3px;min-width:180px;display:grid}.techcards-page.embedded>.page-sub:first-child{margin-top:0}.cable-editor{gap:12px;display:grid}.cable-dia{flex-wrap:wrap;align-items:end;gap:8px 12px;display:flex}.cable-dia label{gap:3px;width:130px;display:grid}.cable-form{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 12px;display:grid}.cable-form label{gap:3px;min-width:0;display:grid}.cable-form label.wide{grid-column:span 2}.cable-dia small,.cable-form small,.cable-kind small{color:var(--muted-foreground);font-size:11px}.cable-actions{align-items:end;margin-top:0}.cable-kind{align-items:center;gap:8px;margin-right:auto;display:flex}.cable-kind .muted{font-size:12px}.wire-dots{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.wire-dot{border:1px solid #00000059;border-radius:50%;width:12px;height:12px;display:inline-block}.wire-dot-name{color:var(--muted-foreground);font-size:12px}.cable-clip{text-overflow:ellipsis;white-space:nowrap;max-width:260px;display:block;overflow:hidden}.cable-card{padding:4px 0}.cable-card small{text-transform:none;font-size:11px}.db-later{background:var(--warn-soft);color:var(--tone-warn);border-radius:999px;align-self:center;padding:3px 8px;font-size:12px}.hookup-form select{min-width:0}.form-section{border-bottom:1px solid var(--sheet-line);gap:8px;padding-bottom:8px;display:grid}.form-section>h4,.form-section>summary{color:var(--muted-foreground);letter-spacing:.02em;margin:0;font-size:12px;font-weight:500}.form-section>summary{cursor:pointer}.field-group{gap:4px;min-width:0;display:grid}.field-group>small{color:var(--muted-foreground);font-size:11px}.swatch-row,.chip-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.swatch{cursor:pointer;border:1px solid #00000059;border-radius:50%;width:24px;height:24px;padding:0}.swatch[aria-pressed=true]{outline:2px solid var(--primary);outline-offset:2px}.swatch:focus-visible{outline:2px solid var(--foreground);outline-offset:2px}.swatch-row input,.makers-input .chip-row input{width:160px;height:28px}.chip-item{background:var(--accent);border-radius:999px;align-items:center;gap:4px;padding:2px 4px 2px 8px;font-size:12px;display:inline-flex}.chip-item button{cursor:pointer;color:var(--muted-foreground);background:0 0;border:0;padding:0 4px;font-size:14px;line-height:1}@media (pointer:coarse){.swatch{width:40px;height:40px}.chip-item button{min-width:32px;min-height:32px}}.coax-card{border-bottom:1px solid var(--sheet-line);font-variant-numeric:tabular-nums;gap:12px;min-width:0;margin-bottom:16px;padding-bottom:16px;display:grid}.coax-card-head{gap:8px;display:grid}.coax-title{flex-wrap:wrap;align-items:baseline;gap:4px 12px;min-width:0;display:flex}.coax-title h3{margin:0;font-size:16px}.coax-title h3 small{color:var(--muted-foreground);font-size:13px;font-weight:400}.coax-desc{min-width:0;color:var(--muted-foreground);overflow-wrap:anywhere;flex:280px;font-size:14px}.coax-flag{background:var(--accent);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px}.coax-flag.tone-warn{background:var(--warn-soft)}.coax-flag.tone-ok{background:var(--chip-ok-bg)}.coax-facts{border-top:1px solid var(--sheet-line);border-bottom:1px solid var(--sheet-line);flex-wrap:wrap;gap:4px 24px;margin:0;padding:6px 0;display:flex}.coax-facts div{align-items:baseline;gap:6px;display:flex}.coax-facts dt{color:var(--muted-foreground);font-size:12px}.coax-facts dd{margin:0;font-size:14px;font-weight:600}.coax-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:16px 24px;display:grid}.coax-col{gap:16px;min-width:0;display:grid}.coax-wide{min-width:0}.coax-card.coax-card .coax-mini{border-collapse:collapse;background:var(--card);width:100%;font-size:13px}.coax-card.coax-card .coax-mini caption{text-align:left;padding:0 0 4px;font-size:14px;font-weight:600}.coax-card.coax-card .coax-mini caption small{color:var(--muted-foreground);margin-left:8px;font-size:12px;font-weight:400}.coax-card.coax-card .coax-mini th{text-align:left;vertical-align:bottom;background:var(--table-head);box-shadow:none;color:var(--table-head-fg);white-space:normal;padding:4px 8px;font-size:12px;font-weight:500;position:static}.coax-card.coax-card .coax-mini tbody th{color:var(--foreground);vertical-align:top;border-top:1px solid var(--sheet-line);background:0 0;font-size:13px;font-weight:400}.coax-card.coax-card .coax-mini td{border-top:1px solid var(--sheet-line);white-space:nowrap;border-bottom:0;padding:4px 8px}.coax-card.coax-card .coax-mini td.wrap{white-space:normal;overflow-wrap:anywhere}.coax-card.coax-card .coax-mini th.num,.coax-card.coax-card .coax-mini td.num{text-align:right}.coax-card.coax-card .coax-mini tbody tr:nth-child(2n) td,.coax-card.coax-card .coax-mini tbody tr:nth-child(2n) th{background:var(--table-zebra)}.coax-card.coax-card .coax-mini td.coax-est{color:var(--muted-foreground)}.coax-card.coax-card .coax-mini tr.coax-peak td{border-top-color:var(--sheet-hover);color:var(--muted-foreground)}.coax-card.coax-card table.coax-mini thead th:first-child{z-index:auto;box-shadow:none;background:var(--table-head);position:static}.coax-card.coax-card .coax-datasheet{max-width:820px}.coax-card.coax-card .coax-datasheet td:last-child{white-space:normal;overflow-wrap:anywhere}.coax-note{margin:0;font-size:14px;line-height:1.45}.coax-legend{color:var(--muted-foreground);overflow-wrap:anywhere;margin:4px 0 0;font-size:12px;line-height:1.4}.coax-sources{color:var(--muted-foreground);flex-wrap:wrap;gap:4px 24px;font-size:12px;display:flex}.coax-sources a{margin-left:6px}.reference-tiles .tile{min-height:0}.notifications-page .data-table .cell-wrap{max-width:min(920px,60vw)}.notifications-page .notification-title{font-weight:600;display:block}.notifications-page .notification-body{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.notifications-page tr.notif-read td{color:var(--muted-foreground)}.notifications-page tr.notif-read .notification-title{font-weight:400}.notifications-page tr.notif-unread td:first-child{box-shadow:inset 3px 0 0 var(--primary)}.notifications-page .notification-detail{white-space:pre-line;margin:0;padding:4px 0}.notifications-page .row-actions{opacity:.5;gap:14px;transition:opacity .12s;display:inline-flex}.notifications-page tr:hover .row-actions,.notifications-page tr:focus-within .row-actions,.notifications-page tr.open .row-actions{opacity:1}.notifications-page .row-actions .link-button{padding:0}@media (width<=1600px){.notifications-page .data-table .cell-wrap{max-width:min(520px,40vw)}.notifications-page .row-actions{flex-direction:column;gap:2px}}@media (hover:none){.notifications-page .row-actions{opacity:1}}@media (pointer:coarse){.notifications-page .row-actions .link-button{min-height:40px}}.operations-metrics{grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;margin:18px 0;display:grid}.operations-metrics .metric{border:1px solid var(--border);background:var(--card);border-radius:12px;gap:7px;padding:15px;display:grid}.operations-metrics .metric span{color:var(--muted-foreground);font-size:11px}.operations-metrics .metric strong{font-size:24px}.operations-metrics .metric.danger{color:#852a24;background:#fbe7e4;border-color:#d9938d}.operations-failures{margin-bottom:18px;padding:18px}.operations-failures h2{margin:0 0 10px;font-size:16px}.operations-failures>div{border-top:1px solid var(--border);grid-template-columns:180px 1fr auto auto;align-items:center;gap:10px;padding:9px 0;font-size:12px;display:grid}.operations-background{margin-bottom:18px;padding:18px}.panel.operations-background>h2:first-child,.panel.operations-failures>h2:first-child{margin:0 0 10px;padding:0;font-size:16px}.operations-background .error-banner{margin-bottom:10px}.operations-bg-row{border-top:1px solid var(--border);grid-template-columns:minmax(200px,1.2fr) 150px minmax(170px,1fr) 80px minmax(200px,2fr);align-items:center;gap:10px;padding:7px 0;font-size:13px;display:grid}.operations-bg-head{color:var(--muted-foreground);border-top:0;padding-top:0;font-size:12px}.operations-bg-error{color:var(--muted-foreground);overflow-wrap:anywhere}.operations-bg-queue{margin:10px 0 0;font-size:13px}.operations-background .warning-inline{margin-top:10px}.facts-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:18px 0}.facts-grid .wide{grid-column:span 2}.card-footer{color:#77827b;border-top:1px solid #e5e9e3;padding-top:14px}.nonconformity{color:#7a3b25;background:#fff0e7;border-radius:9px;margin:14px 0 0;padding:9px 11px;font-size:12px}.check-field{border:1px solid var(--border);border-radius:10px;margin:0;padding:10px 12px}.check-field legend{color:var(--muted-foreground);padding:0 4px;font-size:12.5px;font-weight:600}.check-field label{align-items:center;gap:8px;margin-top:7px;display:flex}.check-field input{width:auto}.inline-action{align-items:end;gap:10px;margin-top:15px;display:flex}.inline-action label{flex:1}.row-edit-form{flex-wrap:wrap;grid-column:1/-1}.row-edit-form label{flex:180px}.row-edit-form>p{flex-basis:100%;margin:0}.procurement-card .hint,.procurement-card .money-summary{color:var(--muted-foreground);margin:10px 0 0;font-size:12px;display:block}.supplier-document{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.supplier-document a.secondary{text-decoration:none}.procurement-card .supplier-letter{white-space:pre-wrap;color:var(--foreground);margin:10px 0 0;font-family:inherit;font-size:12px;line-height:1.5}.warehouse-grid{grid-template-columns:repeat(auto-fill,minmax(390px,1fr));gap:15px;display:grid}.stock-metrics{grid-template-columns:repeat(4,1fr);gap:8px;margin:17px 0;display:grid}.stock-metrics div{background:#f3f5f1;border-radius:10px;padding:10px}.stock-metrics dt{color:#77827b;text-transform:uppercase;font-size:10px}.stock-metrics dd{margin:4px 0 0;font-size:18px;font-weight:800}.project-etk{margin-top:18px}.etk-route{gap:14px;margin:14px 0;display:grid}.etk-operation{border:1px solid var(--border);background:#fbfcfb;border-radius:12px;padding:16px}.etk-operation>header{align-items:center;gap:12px;display:flex}.etk-operation>header div{gap:2px;display:grid}.etk-operation>header small,.etk-block small{color:var(--muted-foreground)}.operation-number{color:#07443d;background:#d9f7f1;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:800;display:grid}.etk-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.etk-block{background:#f0f3f0;border-radius:8px;align-content:start;gap:6px;padding:10px;font-size:12px;display:grid}.etk-block>span{border-top:1px solid #dfe4df;gap:2px;padding-top:5px;display:grid}.etk-chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.etk-chips span{border:1px solid var(--border);background:#f0f3f0;border-radius:10px;padding:4px 10px;font-size:12.5px;font-weight:600}.etk-chips small{color:var(--muted-foreground);font-size:11px;font-weight:400;display:block}.etk-figure{border:1px solid var(--border);background:#fff;margin-top:12px}.etk-fig svg{max-width:760px;height:auto}.etk-steps{gap:8px;margin:12px 0 0;padding-left:28px;display:grid}.etk-steps li{white-space:pre-line;padding-left:4px;font-size:12px}.etk-steps li>span{color:var(--primary);margin-right:8px;font-weight:700}.etk-steps li>small{color:var(--muted-foreground);margin-top:3px;display:block}.etk-steps li>small.tone-danger{color:var(--tone-danger);font-weight:600}.housing-view{background:#f0f3f0;border-radius:10px;justify-items:center;gap:6px;margin-top:14px;padding:12px;display:grid}.housing-view>small{color:var(--muted-foreground);text-align:center}.housing-grid{border:2px solid #17272b;border-radius:8px;gap:5px;padding:12px;display:grid}.housing-pin{color:#fff;background:#32413f;border:2px solid #17272b;border-radius:5px;place-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:inline-grid}.housing-pin.occupied{color:#17272b}.housing-pin.empty{visibility:hidden}.housing-round{border:3px solid #17272b;border-radius:50%;width:190px;height:190px;position:relative}.housing-round>span{position:absolute;transform:translate(-50%,-50%)}.housing-round .housing-pin{border-radius:50%}.etk-topology{gap:12px;margin:18px 0;display:grid}.topology-nodes{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.topology-nodes>article{border:1px solid var(--border);border-radius:10px;min-width:180px;padding:10px}.topology-edges{gap:6px;font-size:12px;display:grid}.warning-inline{color:#74451f;white-space:pre-line;background:#fff3dd;border-radius:8px;padding:9px 11px;font-size:12px}.build-config{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.build-config summary{cursor:pointer;color:var(--muted-foreground);font-size:12px;font-weight:700}.build-config label{gap:6px;margin-top:10px;display:grid}.grapher-import,.grapher-harnesses{gap:10px;margin:12px 0;display:grid}.grapher-harnesses>div{border:1px solid var(--border);border-radius:10px;gap:6px;padding:10px;display:grid}.grapher-harnesses button{justify-self:start}.library-head{margin-top:28px}.toolbar{margin:14px 0 10px}.toolbar input{width:min(480px,100%)}.template-table{max-height:420px;overflow:auto}.template-table td small{color:var(--muted-foreground);margin-top:3px;display:block}.template-detail{margin-top:14px}.template-detail p{white-space:pre-line;margin:12px 0 0;font-size:12px}.etk-head{flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0;display:flex}.etk-head span{color:var(--muted-foreground);font-size:12px}.etk-wrap{grid-template-columns:minmax(200px,260px) minmax(0,1fr);align-items:start;gap:14px;display:grid}.etk-nav-route{gap:4px;display:grid}.etk-nav-route button{border:1px solid var(--border);background:var(--card);color:var(--foreground);text-align:left;border-radius:8px;align-items:flex-start;gap:8px;padding:7px 9px;font-size:12px;display:flex}.etk-nav-route button.on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.etk-nav-route small{color:var(--muted-foreground);display:block}.etk-no{color:var(--primary);font-weight:800}.etk-main{gap:12px;min-width:0;display:grid}.etk-kicker{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.etk-kicker button{margin-left:auto}.etk-nav{justify-content:space-between;gap:10px;display:flex}.tr-edited{color:#8a5a00}.tr-chips{flex-wrap:wrap;gap:6px;margin:0 0 14px;display:flex}.tr-chips button{border:1px solid var(--border);background:var(--card);color:var(--foreground);border-radius:999px;padding:5px 12px;font-size:12.5px}.tr-chips button.on{background:var(--primary);border-color:var(--primary);color:#fff}.tr-group h3{margin:16px 0 8px;font-size:15px}.tr-group h3 span,.tr-block h4 span{color:var(--muted-foreground);font-weight:400}.tr-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.tr-card{border:1px solid var(--border);background:var(--card);color:var(--foreground);text-align:left;border-radius:10px;gap:4px;padding:12px;display:grid}.tr-card:hover{border-color:var(--primary)}.tr-name{font-size:13px;font-weight:600}.tr-card .tr-code{color:var(--muted-foreground);margin-top:-3px;font-size:11.5px}.tr-first{color:var(--muted-foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.tr-meta{color:var(--muted-foreground);font-size:11.5px}.tr-paper{gap:12px;display:grid}.tr-head{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto auto;gap:14px;padding-bottom:10px;display:grid}.tr-head>div{gap:2px;display:grid}.tr-head small{color:var(--muted-foreground);font-size:11px}.tr-sec-h{color:var(--muted-foreground);font-size:12px;font-weight:600}.tr-block{gap:6px;font-size:12px;display:grid}.tr-block h4{margin:0;font-size:13px}.tr-block textarea{width:100%}.tr-sec{gap:4px;margin-bottom:6px;display:grid}.tr-tool{gap:8px;font-size:12px;display:flex}.tr-tool small{color:var(--muted-foreground);display:block}.tr-n{min-width:18px;color:var(--primary);font-weight:700}.tr-inv{color:#00554f;background:#e0efed;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:11px}.tr-steps td small{color:var(--muted-foreground);display:block}.tr-steps tr.ctl td{background:#f6f9ee}.pre-line{white-space:pre-line}.tr-foot{color:var(--muted-foreground);font-size:12px}:root{--ctl-line:#d93025;--ctl-bg:#fdf4f4;--ctl-text:#b91c1c}.tc-edit{gap:16px;padding-bottom:0}.tc-edit .etk-op-head{align-items:center}.tc-edit .etk-op-head>div{gap:0}.tc-edit .etk-op-head small{font-size:12px}.tc-title{border-color:#0000;margin-left:-9px;padding:3px 8px;font-size:18px;font-weight:600}.tc-title:hover{border-color:var(--border)}.tc-cell,.tc-auto{width:100%;min-height:32px;color:var(--foreground);background:0 0;border:1px solid #0000;border-radius:6px;margin:0;padding:5px 8px;font-size:13px;line-height:1.45;display:block}.tc-auto{resize:none;overflow:hidden}.tc-cell:hover,.tc-auto:hover,.tc-tools tr:hover .tc-cell,.tc-tools tr:hover .tc-auto,.tc-step:hover .tc-auto,.tc-def:hover .tc-auto{border-color:var(--border);background:var(--card)}.tc-cell:focus,.tc-auto:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary);background:var(--card)}.tc-auto::placeholder{color:var(--muted-foreground)}.tc-edit .row-menu>button{min-height:30px;color:var(--muted-foreground);background:0 0;border-color:#0000;padding:3px 9px;font-size:15px;line-height:1}.tc-edit .row-menu>button:hover,.tc-edit .row-menu>button[aria-expanded=true]{border-color:var(--border);background:var(--card);color:var(--foreground)}.tc-add{gap:8px;margin-top:8px;display:flex}.tc-safety summary{align-items:baseline;gap:10px;min-width:0;display:flex}.tc-preview{color:#8a5a00;opacity:.85;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:400;overflow:hidden}.tc-safety .tc-auto{background:var(--card);border-color:#f3d27a;margin-top:6px}.tc-ro-tag{background:var(--accent);color:var(--muted-foreground);border-radius:999px;margin-left:2px;padding:1px 8px;font-size:11px;font-weight:500}details.tc-ro>summary{list-style:none}details.tc-ro>summary::-webkit-details-marker{display:none}details.tc-ro>summary h4{margin:0}details.tc-ro>summary h4:after{content:"▸";color:var(--muted-foreground);font-weight:400}details.tc-ro[open]>summary h4:after{content:"▾"}details.tc-ro[open]>summary{margin-bottom:8px}.tc-tools{table-layout:fixed;border:1px solid var(--border);border-collapse:separate;border-spacing:0;border-radius:10px;overflow:hidden}.tc-tools th,.tc-tools td{border-bottom:1px solid var(--border);vertical-align:top;white-space:normal;padding:2px 4px}.tc-tools thead th{background:var(--background);padding:7px 12px}.tc-tools tbody:last-child tr:last-child td{border-bottom:0}.tc-tools .tc-c-n{width:40px}.tc-tools .tc-c-inv{width:128px}.tc-tools .tc-c-param{width:22%}.tc-tools .tc-c-norm{width:84px}.tc-tools .tc-c-unit{width:72px}.tc-tools .tc-c-act{width:48px}.tc-tools th.num,.tc-tools .tc-cell.num{text-align:right}.tc-tools thead th:first-child{padding-right:6px}.tc-tools .tc-n{color:var(--primary);text-align:right;padding:8px 6px 0 0;font-size:12px;font-weight:700}.tc-tools .tc-sec-row th{background:color-mix(in srgb, var(--primary) 6%, var(--card));color:#00554f;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;font-size:11px;font-weight:700}.tc-sec-row div{align-items:center;gap:8px;display:flex}.tc-sec-row small{background:var(--card);color:var(--muted-foreground);letter-spacing:0;border-radius:999px;padding:0 7px;font-size:11px;font-weight:600}.tc-sec-row .link-button{letter-spacing:0;text-transform:none;margin-left:auto;padding:2px 4px;font-size:12.5px;font-weight:600}.tc-tools .tc-act{text-align:center;padding-top:3px}.tc-tool-name{font-weight:500}.tc-steps-head,.tc-step{grid-template-columns:28px 156px minmax(0,1fr) minmax(150px,22%) 40px;align-items:start;gap:8px;display:grid}.tc-steps-head{border-bottom:1px solid var(--border);color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;padding:0 8px 6px 11px;font-size:10.5px;font-weight:500}.tc-steps-head>span:first-child{text-align:right}.tc-steps-head>span:nth-child(3),.tc-steps-head>span:nth-child(4),.tc-def-cols>span:nth-child(2),.tc-def-cols>span:nth-child(3){padding-left:9px}.tc-steps ol{gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.tc-step{border-left:3px solid #0000;border-radius:0 8px 8px 0;padding:3px 8px}.tc-step:hover{background:var(--background)}.tc-step.ctl{border-left-color:var(--ctl-line);background:var(--ctl-bg)}.tc-step .tc-n{color:var(--primary);text-align:right;padding-top:6px;font-size:13px;font-weight:700}.tc-step.ctl .tc-n{color:var(--ctl-text)}.tc-kind{background:var(--accent);border-radius:8px;justify-self:start;gap:2px;margin-top:2px;padding:2px;display:inline-flex}.tc-kind button{min-height:26px;color:var(--muted-foreground);background:0 0;border:0;border-radius:6px;padding:3px 10px;font-size:12px;font-weight:600}.tc-kind button:hover{color:var(--foreground)}.tc-kind button[aria-pressed=true]{background:var(--card);color:var(--primary);box-shadow:0 1px 2px #001a1824}.tc-step.ctl .tc-kind button[aria-pressed=true]{color:var(--ctl-text);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.tc-tol{color:var(--muted-foreground)}.tc-step.ctl .tc-tol{color:var(--foreground);font-weight:600}.tc-def-cols,.tc-def{grid-template-columns:150px minmax(200px,28%) minmax(0,1fr) 40px;align-items:start;gap:8px;display:grid}.tc-def-cols{border-bottom:1px solid var(--border);color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;padding:0 0 6px;font-size:10.5px;font-weight:500}.tc-def-group{margin-top:6px;display:grid}.tc-def-head{grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:8px;padding:2px 0;display:grid}.tc-def-title{color:#00554f;letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}.tc-def-title:focus{text-transform:none}.tc-def{border-bottom:1px solid var(--border);padding:4px 0}.tc-def-pic{padding-top:2px;line-height:0}.tc-def-pic>svg{width:150px;height:auto}.tc-def-pic>svg[data-scene=generic]{width:40px}.tc-def-name{font-weight:600}.tc-add-link{justify-self:start;padding:6px 0 0;font-size:12.5px;font-weight:600}.tc-def-raw{border-color:var(--border);min-height:120px}@media (width>=1900px){.tc-def-cols,.tc-def{grid-template-columns:210px minmax(220px,26%) minmax(0,1fr) 40px}.tc-def-pic>svg{width:210px}}.tc-bar{z-index:5;border-top:1px solid var(--border);background:var(--card);border-radius:0 0 12px 12px;justify-content:flex-end;align-items:center;gap:10px;margin:0 -18px;padding:10px 18px;display:flex;position:sticky;box-shadow:0 -6px 16px #001a180f}.tc-note{color:var(--muted-foreground);margin-right:auto;font-size:12.5px}.tc-bar .tc-error{margin:0;padding:6px 10px}.tc-bar .primary,.tc-bar .secondary{min-width:110px;padding:8px 16px}.tc-bar{bottom:-30px}@media (width<=1280px),(pointer:coarse) and (width<=1600px){.tc-bar{bottom:-20px}}@media (pointer:coarse){.tc-cell,.tc-auto{border-color:var(--border);background:var(--card);min-height:40px}.tc-kind button{min-height:36px}.tc-edit .row-menu>button{min-width:40px;min-height:40px}}@media (width<=720px){.tc-bar{bottom:0}.tc-steps-head,.tc-def-cols{display:none}.tc-step,.tc-def{grid-template-columns:1fr}}.tiles{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.tile{border:1px solid var(--border);min-height:116px;color:var(--foreground);background:var(--card);text-align:left;border-radius:12px;align-items:flex-start;gap:14px;padding:18px;transition:border-color .15s,box-shadow .15s;display:flex}.tile:hover,.tile:focus-visible{border-color:color-mix(in srgb, var(--primary) 60%, var(--border));outline:none;box-shadow:0 8px 24px #00504817}.tile-icon{background:var(--accent);border-radius:10px;flex:none;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.tile-body{flex:1;gap:6px;min-width:0;display:grid}.tile .t-h{font-size:17px;font-weight:700}.tile .t-sub{color:var(--muted-foreground);font-size:13px;line-height:1.4}.tile .t-in{color:var(--foreground);font-size:12px;line-height:1.4}.tile-count{min-width:28px;color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);text-align:center;border-radius:999px;flex:none;padding:3px 8px;font-size:12px;font-weight:700}.tile-arrow{color:var(--primary);flex:none;font-size:18px}.section-tile{min-height:96px}.tile .chip{color:var(--muted-foreground);background:var(--accent);border-radius:999px;justify-self:start;padding:3px 8px;font-size:11px}.back-link{margin-bottom:10px;padding:0}.single-layout{gap:20px;display:grid}.plan-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 10px;display:flex}.plan-filters .active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, white)}.plan-filters button b{margin-left:6px}.plan-filters input{border:1px solid var(--border);border-radius:999px;flex:1;min-width:160px;padding:7px 12px}.production-plan-layout{align-items:start;gap:18px;display:grid}.production-plan-layout>*{min-width:0}.plan-row-title{white-space:nowrap;align-items:baseline;gap:6px;display:flex;overflow:hidden}.plan-customer{color:var(--muted-foreground);text-overflow:ellipsis;font-size:12px;overflow:hidden}.plan-tags{flex-wrap:wrap;gap:4px;margin:3px 0 2px;display:flex}.plan-tag{background:var(--accent);color:var(--muted-foreground);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.plan-tag.stage{background:color-mix(in srgb, var(--primary) 12%, white);color:#00766a}.plan-tag.blocker{color:#fff;background:#c62828}.plan-tag.late{color:#c62828;background:#fdecea}.plan-tag.soon{color:#8a5a00;background:#fff4d6}.plan-tag.ok{color:#1e7e34;background:#e6f4ea}.plan-acts{flex-wrap:wrap;gap:8px;display:flex}.plan-no-card{flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.plan-link-button{align-items:center;text-decoration:none;display:inline-flex}.plan-link-button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.plan-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.gantt-nav{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;display:flex}.gantt-period{font-variant-numeric:tabular-nums;margin-right:4px;font-size:13px;font-weight:600}.gantt-wrap{border:1px solid var(--border);background:var(--card);border-radius:12px;overflow-x:auto}.gantt-grid{min-width:max-content;display:block}.gantt-row{border-bottom:1px solid var(--border);min-height:40px;display:flex}.gantt-row:last-child{border-bottom:0}.gantt-label{z-index:3;background:var(--card);border-right:1px solid var(--border);flex:0 0 380px;width:380px;padding:6px 10px;font-size:13px;position:sticky;left:0;overflow:hidden}.gantt-sub,.gantt-note{color:var(--muted-foreground);font-size:11.5px}.gantt-note{white-space:nowrap;text-overflow:ellipsis;font-style:italic;overflow:hidden}.gantt-late{color:#c62828;background:#fdecea;border-radius:999px;margin-top:2px;padding:1px 7px;font-size:11px;font-weight:700;display:inline-block}.gantt-track{flex:1 0 auto;position:relative}.gantt-head{background:#f6faf9;min-height:34px}.gantt-head .gantt-label{background:#f6faf9;font-weight:600}.gantt-day{text-align:center;color:var(--muted-foreground);font-size:11px;line-height:1.25;position:absolute;top:3px}.gantt-bg{position:absolute;top:0;bottom:0}.gantt-bg.off{background:#eef1f1}.gantt-bg.today{box-shadow:inset 2px 0 0 var(--primary)}.gantt-bar{z-index:1;background:var(--primary);color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;height:22px;padding:0 6px;font-size:11px;line-height:22px;position:absolute;top:9px;overflow:hidden}.gantt-bar.partial{background:repeating-linear-gradient(135deg, var(--primary), var(--primary) 6px, #5e9f99 6px, #5e9f99 12px)}.gantt-bar.late{background:#c62828}.gantt-bar.busy{background:#9aa9a7}.gantt-bar.new{z-index:2;background:repeating-linear-gradient(135deg,#2e7d32,#2e7d32 6px,#43a047 6px 12px)}.gantt-mark{z-index:2;background:#c62828;border-radius:2px;width:3px;position:absolute;top:4px;bottom:4px}.gantt-row.clickable{cursor:pointer}.gantt-row.clickable:hover .gantt-label,.gantt-row.selected .gantt-label{background:#edf5f4}.gantt-row.dim{opacity:.55}.production-plan-gantt .gantt-row{min-height:64px}@media (width<=640px){.gantt-label{flex-basis:230px;width:230px}}.plan-blocker{background:var(--chip-danger-bg);color:var(--chip-danger-fg);border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600}.plan-blocker[data-tone=warning]{background:var(--chip-warning-bg);color:var(--chip-warning-fg)}.plan-blocker[data-tone=neutral],.plan-blocker[data-tone=info]{background:var(--chip-neutral-bg);color:var(--chip-neutral-fg)}.production-plan-details{gap:18px;padding:20px;display:grid}.production-plan-details h2,.production-plan-details h3,.production-plan-details p{margin:0}.production-plan-details section{border-top:1px solid var(--border);gap:7px;padding-top:14px;display:grid}.plan-kit-stages{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.plan-kit-stages div{background:var(--accent);border-radius:8px;gap:3px;padding:9px;display:grid}.plan-kit-stages span{color:var(--muted-foreground);font-size:12px}.plan-kit-mark label{color:var(--muted-foreground);gap:3px;font-size:11px;display:grid}.plan-kit-mark select,.plan-kit-mark textarea{min-width:0;font-size:12px}.plan-kit-mark textarea.auto-textarea{min-height:0}.plan-note-grid{grid-template-columns:1fr 1fr;align-items:end;gap:10px;display:grid}.plan-note-grid label{color:var(--muted-foreground);gap:5px;font-size:12px;display:grid}.plan-note-text{grid-column:1/-1}.plan-note-text textarea.auto-textarea{min-height:0}.plan-journal article{border-bottom:1px solid var(--border);gap:4px;padding:10px 0;display:grid}.plan-journal article>div{justify-content:space-between;gap:12px;display:flex}.plan-journal time,.plan-journal small{color:var(--muted-foreground);font-size:12px}.login-wrap{background:radial-gradient(ellipse 80% 60% at 50% -10%, #00b09b1f, transparent 70%), var(--background);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{border:1px solid var(--border);background:var(--card);border-radius:12px;gap:15px;width:min(390px,100%);padding:34px;display:grid}.login-card .logo-row{align-items:center;gap:11px;margin-bottom:7px;display:flex}.login-card .logo-row .div{background:var(--border);width:1px;height:22px}.login-card h1{margin:0 0 -10px;font-size:20px;font-weight:500}.login-card .sub{color:var(--muted-foreground);margin:0 0 6px;font-size:13px}.login-card label{text-transform:uppercase;letter-spacing:.08em;font-size:10px}.login-card form{gap:15px;display:grid}.login-card select{width:100%}.relogin-backdrop{z-index:2000;position:fixed;inset:0;overflow:auto}.harness-host{display:contents}.boot-error{align-content:center;gap:12px;padding:20px}.pin-overlay{z-index:50;background:#00000073;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.pin-card{background:var(--card);text-align:center;border-radius:12px;gap:10px;width:min(420px,100%);padding:24px;display:grid}.pin-card h2{margin:0;font-size:18px}.pin-card p{margin:0}.pin-reveal{letter-spacing:.16em;font-variant-numeric:tabular-nums;color:var(--primary,#00b09b);font-size:38px;font-weight:800}.side-foot .role-label{color:var(--muted-foreground);font-size:12px}.side-foot .admin-mode.on{border-color:var(--primary,#00b09b)}.login-card label input{text-transform:none;letter-spacing:normal;margin-top:2px;font-size:14px}.login-alt{color:var(--muted-foreground);text-align:center;justify-self:center;margin-top:4px;font-size:12px}.login-alt:hover{color:var(--primary);text-decoration:underline}.screen-center{place-items:center;min-height:100vh;display:grid}.muted{color:#637069}.topbar,.nav-scrim{display:none}.table-wrap{-webkit-overflow-scrolling:touch}.table-wrap td,.table-scroll td{white-space:normal}.table-wrap td.num,.table-scroll td.num{white-space:nowrap}.table-wrap th,.table-scroll th{white-space:normal}@media (width<=1400px){.grid td.text{min-width:150px}}@media (width<=1700px){.split-layout{grid-template-columns:1fr}}@media (width<=1280px),(pointer:coarse) and (width<=1600px){.app-shell{flex-direction:column}.topbar{background:var(--card);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:10px;padding:8px 14px;display:flex}.topbar .wordmark{font-size:17px}.topbar .mod{color:var(--muted-foreground);letter-spacing:.09em;font-size:11px}.nav-toggle{border:1px solid var(--border);background:var(--card);border-radius:10px;width:44px;height:44px;font-size:20px;line-height:1}.sidebar{z-index:60;width:280px;box-shadow:none;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.nav-open .sidebar{transform:none;box-shadow:0 0 40px #0003}.nav-scrim{z-index:55;background:#001a1840;display:block;position:fixed;inset:0}.workspace{padding:20px 18px}.gantt-label{flex-basis:280px;width:280px}}@media (pointer:coarse){button,input,select{min-height:40px}.small{min-height:36px}.nav-item{padding:12px 10px;font-size:14px}input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:0}}@media (width<=1050px){.split-layout{grid-template-columns:1fr}.facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.production-plan-layout{grid-template-columns:1fr}.production-plan-details{position:static}}@media (width<=720px){.app-shell{flex-direction:column;height:auto;min-height:100vh;overflow:visible}.workspace{padding:24px 14px 60px;overflow:visible}.page{padding:0}.form-grid,.facts-grid,.tiles{grid-template-columns:1fr}.facts-grid .wide,label.wide{grid-column:auto}.inline-action{flex-direction:column;align-items:stretch}.warehouse-grid,.stock-actions,.manual-stock-grid{grid-template-columns:1fr}.manual-stock-grid .span-2{grid-column:auto}.fulfillment-actions{flex-direction:column;align-items:stretch}.fulfillment-danger-group{border-left:0;flex-direction:column;margin-left:0;padding-left:0}.fulfillment-actions label{width:100%}.return-line,.production-launch-grid,.route-draft,.production-operation,.operation-assign,.ship-form,.ship-docs,.ship-accept,.reference-columns,.reference-map-head,.reference-row,.box-grid,.genealogy-edges>div{grid-template-columns:1fr}.ship-form>.ship-span2,.ship-accept>strong,.operation-assign{grid-column:auto}.operations-metrics,.operations-failures>div,.operations-bg-row{grid-template-columns:1fr}.operations-bg-head{display:none}.etk-flow,.etk-wrap,.tr-head,.plan-row-metrics,.plan-note-grid{grid-template-columns:1fr}.plan-note-text{grid-column:auto}}.access-page .page-head{margin-bottom:6px}.access-bar{flex-wrap:wrap;align-items:center;gap:6px 22px;margin:6px 0 10px;display:flex}.access-bar .shipping-tabs{gap:6px;margin:0}.access-bar .shipping-tabs button{padding:5px 14px;font-size:13px}.access-legend{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:12px;display:flex}.access-legend>span:not(.access-pill){margin-right:8px}.access-help{border:1px solid var(--border);width:16px;height:16px;color:var(--muted-foreground);cursor:help;border-radius:50%;justify-content:center;align-items:center;font-size:11px;line-height:1;display:inline-flex}.access-help:hover,.access-help:focus-visible{border-color:var(--primary);color:var(--primary);outline:none}.access-pill{background:color-mix(in srgb, currentColor 11%, white);white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:4px;min-width:0;height:22px;padding:0 7px;font-size:12px;font-weight:600;line-height:1;display:inline-flex;position:relative}.access-pill.access-default{opacity:.8;background:0 0;font-weight:400}.access-pill.access-default.access-none{color:var(--muted-foreground);opacity:.75}.access-pill.access-fixed{opacity:.85;cursor:default;background:0 0;font-weight:500}.access-lock{flex:none}.access-cell{cursor:pointer}.access-cell select{opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.access-cell:hover{border-color:color-mix(in srgb, currentColor 40%, transparent)}.access-cell:focus-within{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.access-pill.access-changed{opacity:1;box-shadow:0 0 0 2px #f2b84b}.access-page .data-table{gap:6px}.access-page .data-table .table-wrap{max-height:calc(100dvh - 210px)}.access-page .data-table thead th{letter-spacing:0;text-transform:none;text-align:center;vertical-align:bottom;white-space:normal;min-width:110px;max-width:170px;padding:5px 6px;font-size:12px;font-weight:600;line-height:1.2}.access-page .data-table thead th:first-child{text-align:left;min-width:190px;max-width:none;padding-left:12px}.access-page .data-table tbody td{text-align:center;height:28px;padding:2px 3px}.access-page .data-table tbody td.key{text-align:left;min-width:190px;padding-left:12px;font-weight:400}.access-page .data-table .cell-wrap{max-width:215px;line-height:1.25}.access-people{max-width:760px}.access-people .filters select{max-width:460px}.access-people .data-table thead th:not(:first-child){min-width:150px;max-width:200px}.access-people .access-cell.access-default{color:var(--muted-foreground)}.access-savebar{z-index:5;border-top:1px solid var(--border);background:var(--background);flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:8px;margin:8px 0 0;padding:8px 0;position:sticky;bottom:0}.access-savebar button{padding:5px 14px;font-size:12.5px}.access-dirty-note{color:#a86a00;font-size:12.5px}@media (pointer:coarse){.access-page .data-table tbody td{height:40px}.access-pill{min-width:76px;height:34px}.access-pill.access-fixed,.access-legend .access-pill{min-width:0;height:22px}}.kit-filters{flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 12px;font-size:13px;display:flex}.kit-tiles .kit-tile{cursor:pointer}.kit-tile-head{align-items:baseline;gap:8px;display:flex}.kit-tile-head .t-h{flex:1}.kit-chips{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.kit-status,.kit-fact{background:var(--accent);color:var(--muted-foreground);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600}.tone-ok,.kit-ok{color:#15803d}.tone-warn{color:#a16207}.tone-danger,.kit-bad{color:#b91c1c}.tone-info{color:#1d4ed8}.tone-neutral{color:#6b7280}.kit-status.tone-prep,.kit-fact.tone-warn{color:#8a5a00;background:#fdf3d8}.kit-status.tone-work{background:color-mix(in srgb, var(--primary) 12%, white);color:var(--primary)}.kit-status.tone-stock,.kit-fact.tone-ok{color:#15803d;background:#e3f5e8}.kit-status.tone-done{color:#5f6b6d;background:#eceff0}.kit-status.tone-danger,.kit-fact.tone-danger{color:#b91c1c;background:#fde8e8}.kit-pane{margin:8px 0 16px}.panel.kit-pane,.panel.kit-modal{padding:16px 18px}.kit-modal{gap:10px;margin:0 0 16px;display:grid}.kit-modal h3{margin:0;font-size:16px;font-weight:600}.issue-kbs{border:1px solid var(--border);border-radius:6px;margin:0;padding:0;font-size:13px;list-style:none}.issue-kbs li{grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px;display:grid}.issue-kbs li+li{border-top:1px solid var(--border)}.issue-kbs li.muted{color:var(--muted-foreground);background:var(--accent)}.issue-kb-state,.extra-issue td.num{white-space:nowrap}.extra-issue td.num input{text-align:right;width:96px}.extra-issue>label{max-width:720px}.calendar-chip.chip-cancelled{color:var(--muted-foreground);border:1px dashed var(--border);cursor:default;background:0 0}.kit-modal>div.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:13px 16px;display:grid}.kit-modal>div.grid>label:first-child{grid-column:1/-1}.page-actions+.kit-modal,.page-sub+.page-actions{margin-top:12px}.kit-spec{margin:0 0 18px}.kit-spec input{width:100%;min-width:60px}.kit-pane .data-table table.grid.wide{table-layout:fixed;width:100%;min-width:1180px}.kit-spec .data-table table.grid.wide{min-width:1180px}.kit-spec td.num input{text-align:right;font-variant-numeric:tabular-nums}.kit-pane .data-table td.num{font-variant-numeric:tabular-nums}.kit-spec td input{padding:5px 8px}.kit-pane .data-table .cell-wrap{max-width:none}.kit-supply-summary .panel+.panel{margin-top:0}.kit-link{align-items:center;gap:4px;display:flex}.kit-kd{align-items:center;gap:6px;display:flex}.kit-kd .kit-kd-action{color:var(--muted-foreground);font-size:12px}.kit-kd .kit-kd-action:not(:disabled):hover{color:var(--primary)}.kit-kd-unlinked{font-size:12px}@media (pointer:coarse){.kit-kd .kit-kd-action{min-height:40px;padding:0 8px}}.kit-supply-summary{border:1px solid var(--border);background:var(--card);border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:4px 24px;margin:0 0 12px;padding:8px 12px;font-size:13px;display:flex}.kit-supply-count{align-items:baseline;gap:8px;display:inline-flex}.kit-supply-count dt{color:var(--muted-foreground)}.kit-supply-count dd{font-variant-numeric:tabular-nums;margin:0;font-size:15px;font-weight:700}.kit-autosave{font-size:12px}.data-table{gap:10px;display:grid}.data-table .filters{margin-bottom:0}.data-table .sort-head{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}.data-table tr.clickable{cursor:pointer}.data-table tr.clickable:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.data-table tr.clickable:hover td,.data-table tr.open td{background:var(--accent)}.data-table tr.detail>td{white-space:normal;background:var(--background)}.data-table tr.detail>td>.detail-body{box-sizing:border-box;max-width:calc(var(--detail-width,100%) - 24px);position:sticky;left:0}.data-table tr.group-row td{background:var(--accent);font-size:12px}.data-table tr.group-row strong{display:inline}.data-table tr.group-row input[type=checkbox]{vertical-align:middle;width:auto;margin:0 8px 0 2px;padding:0;display:inline-block}.data-table tr.group-row .group-picked{color:var(--primary);font-weight:600}.data-table .calendar-chips{margin-bottom:0}.data-table .table-wrap{width:auto;max-height:calc(100dvh - 190px);overflow:auto}.data-table table.grid.wide{width:max-content;min-width:100%}.data-table table.grid.wide .fit{width:1px}.data-table table.grid.wide th.fit .sort-head{white-space:nowrap}.data-table table.grid.wide td.fit:not(.text) :where(*){white-space:nowrap;flex-wrap:nowrap}.data-table table.grid.wide:has(>thead th.grow){width:100%}.data-table table.grid.wide .dt-fill{width:auto;min-width:0;padding:0}.data-table .cell-empty{color:var(--muted-foreground)}.data-table td.num,.data-table th.num{text-align:right;font-variant-numeric:tabular-nums}.data-table .align-center{text-align:center}.data-table .align-right{text-align:right}.data-table table.selectable>thead>tr>th:first-child,.data-table table.selectable>tbody>tr:not(.detail):not(.group-row)>td:first-child{width:36px;padding-right:4px}.data-table th,.data-table td,.table-wrap .grid th,.table-wrap .grid td{padding:6px 12px;line-height:1.35}.data-table td,.table-wrap .grid td{color:var(--foreground);border-bottom-color:#edf0f2;font-size:13px}.data-table thead th,.table-wrap .grid thead th{z-index:2;color:#3d4a5c;border-bottom:1px solid var(--border);box-shadow:0 1px 0 var(--border);background:#f3f6f6;padding-top:9px;padding-bottom:9px;font-weight:600;position:sticky;top:0}.data-table tbody tr:nth-child(2n):not(.group-row):not(.detail) td,.table-wrap .grid tbody tr:nth-child(2n):not(.group-row):not(.detail)>td{background:#f3f6f7}.data-table .table-wrap td{white-space:nowrap}.data-table .table-wrap td.text{white-space:normal}.data-table table:not(.selectable) td.key,.data-table table:not(.selectable) thead th:first-child{z-index:1;background:var(--card);box-shadow:inset -1px 0 var(--border);position:sticky;left:0}.data-table table:not(.selectable) thead th:first-child{z-index:3;background:#f3f6f6}.data-table td.key small{font-weight:400}.stock-table .link-button{padding:0}.data-table tbody tr:not(.group-row):not(.detail):hover td,.table-wrap .grid tbody tr:not(.group-row):not(.detail):hover>td{background:#eaf6f4}.data-table td.key{font-weight:600}.data-table tbody tr:nth-child(2n) td.key{background:#f3f6f7}.data-table tbody tr:hover td.key{background:#eaf6f4}.data-table td small{color:var(--muted-foreground);margin-top:1px;font-size:11.5px}.data-table .grid td.text{min-width:0;max-width:none}.data-table .cell-wrap{min-width:var(--cell-min,0);max-width:var(--cell-max,var(--dt-wrap-max));white-space:normal}.data-table table.sized td.text:not(.grow)>.cell-wrap{width:max-content}.data-table table.grid.wide .grow>.cell-wrap{min-width:var(--cell-min,240px);max-width:none}.data-table .table-footer{color:var(--muted-foreground);font-size:12px}.calendar-chip.active{color:var(--primary-foreground);background:var(--primary)}.column-chooser{border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;gap:10px 16px;margin:0;padding:10px 14px;display:flex}.bulk-bar{background:var(--accent);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.table-footer{color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.table-toolbar .small{min-height:var(--control-h)}.status-chip{max-width:100%;height:20px;color:var(--chip-neutral-fg);background:var(--chip-neutral-bg);letter-spacing:0;text-transform:none;white-space:nowrap;vertical-align:middle;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:12px;font-weight:600;line-height:20px;display:inline-flex}.status-chip[data-tone=success]{color:var(--chip-success-fg);background:var(--chip-success-bg)}.status-chip[data-tone=info]{color:var(--chip-info-fg);background:var(--chip-info-bg)}.status-chip[data-tone=warning]{color:var(--chip-warning-fg);background:var(--chip-warning-bg)}.status-chip[data-tone=danger]{color:var(--chip-danger-fg);background:var(--chip-danger-bg)}.status-chip.is-empty{color:var(--muted-foreground);background:0 0;padding:0;font-weight:400}.status-chip-count{color:inherit;opacity:.8;font-weight:400}@media (pointer:coarse){.status-chip{height:24px;line-height:24px}}.header-actions{flex-wrap:wrap;gap:8px;display:flex}.supplier-return{margin-bottom:18px}.inline-select{align-items:center;gap:6px;font-size:13px;display:flex}.receiving-card .batches{border-collapse:collapse;width:100%;margin:10px 0}.receiving-card .document-field{align-content:start;gap:4px;display:grid}.receiving-card .document-actions{flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;display:flex}.receiving-card .file-button{cursor:pointer;align-items:center;display:inline-flex}.receiving-card .batches th,.receiving-card .batches td{text-align:left;padding:4px 6px;font-size:13px}.receiving-card .batches input{width:100%;min-width:80px}.pg-s{color:var(--muted-foreground);margin-top:2px;font-size:11px}.pg-q{color:var(--muted-foreground)}.pa-who{align-items:center;gap:6px;display:flex}.pa-ctl{flex-wrap:wrap;align-items:end;gap:12px;margin:10px 0;display:flex}.pa-plan{margin-top:10px;font-size:13px}.pa-plan.err{color:#c62828}.assign-card{margin-top:16px;padding:16px}.ap-t{border-collapse:collapse;width:100%;margin:10px 0;font-size:12px}.ap-t th,.ap-t td{text-align:left;border-bottom:1px solid var(--border);padding:5px 8px}.ap-t tr.on{background:color-mix(in srgb, var(--primary) 10%, transparent)}.ap-t tbody tr{cursor:pointer}.ap-man{color:var(--muted-foreground);font-size:11px}.pl-search{width:100%;margin:10px 0}.pl-proj{margin:12px 0}.pl-ph{margin-bottom:6px}.pl-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;display:grid}.pl-card{text-align:left;border:1px solid var(--border);background:var(--card,#fff);cursor:pointer;border-radius:10px;gap:4px;padding:10px;display:grid}.pl-kb{font-size:15px;font-weight:700}.pl-name{font-size:12px}.pl-meta{color:var(--muted-foreground);font-size:11px}.pl-sel{align-items:center;gap:12px;margin:12px 0;display:flex}.pl-warn{background:#fff3e0;border-radius:8px;margin:8px 0;padding:8px 10px;font-size:12px}.my-queue{gap:8px;margin-top:14px;display:grid}.mo-day{margin:10px 0 2px;font-weight:700}.mo-card{border:1px solid var(--border);background:var(--card);border-radius:10px;gap:4px;padding:10px 14px;font-size:13px;display:grid}.mo-h{font-size:15px}.mo-finished{margin-top:14px}.mo-finished>summary{cursor:pointer;padding:6px 0;font-weight:700}.mo-card.late{box-shadow:inset 3px 0 0 var(--tone-danger)}.mo-card.done{background:0 0}.mo-card.done .mo-h{color:var(--muted-foreground)}.mo-card.run{box-shadow:inset 3px 0 0 var(--tone-ok)}.mo-tag{background:var(--accent);color:var(--tone-ok);border-radius:10px;padding:0 8px;font-size:12px;font-weight:600}.mo-h{align-items:baseline;gap:8px;display:flex}.mo-name{flex-wrap:wrap;align-items:baseline;gap:0 8px;min-width:0;display:flex}.mo-name .op-code{flex-basis:100%}.mo-time{color:var(--muted-foreground);white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.mo-s,.mo-d{color:var(--muted-foreground)}.mo-fact{font-size:13px}.tcgen{--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%235f6b85' stroke-width='1.5'/%3E%3C/svg%3E");color:var(--foreground);gap:10px;font-size:13px;display:grid}.tcgen .gen-modes{justify-self:start;margin:0}.tcgen .gen-layout{grid-template-columns:minmax(0,1fr) clamp(480px,42%,980px);align-items:start;gap:14px;display:grid}.tcgen .gen-main{min-width:0;container-type:inline-size}.tcgen .gen-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}@container (width>=1000px){.tcgen .gen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tcgen .gen-grid>.full{grid-column:1/-1}}.project-etk .etk-empty{color:var(--muted-foreground);padding:4px 0;font-size:13px}.tcgen .gsec{border:1px solid var(--border);background:var(--card);border-radius:10px;align-content:start;gap:10px;min-width:0;padding:12px 14px 14px;display:grid}.tcgen .gsec-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;min-height:20px;display:flex}.tcgen .gsec-head .gsec-meta+*,.tcgen .gsec-head h3+:not(.gsec-meta){margin-left:auto}.tcgen .gsec-head select{width:auto}.tcgen h3{color:var(--foreground);margin:0;font-size:14px;font-weight:600}.tcgen h4{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 2px;font-size:11px;font-weight:700}.tcgen .gsec-meta{color:var(--muted-foreground);flex-wrap:wrap;gap:2px 12px;font-size:12px;display:inline-flex}.tcgen .gsec-meta .kv b{color:var(--foreground);font-weight:600}.tcgen .gempty{color:var(--muted-foreground);padding:8px 0;font-size:12.5px}.tcgen .muted{color:var(--muted-foreground)}.tcgen input,.tcgen select,.tcgen textarea{border-radius:6px;min-width:0;padding:5px 8px;font-size:13px}.tcgen input:not([type=checkbox]):not([type=radio]),.tcgen select{height:32px}.tcgen select,.tcgen .gpick-face{appearance:none;background:var(--card) var(--chevron) right 10px center / 10px 6px no-repeat;padding-right:28px}.tcgen select:hover,.tcgen .gpick:hover .gpick-face{border-color:var(--chip-box)}.tcgen input[type=number]{appearance:textfield}.tcgen input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tcgen input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.tcgen .gfield{min-width:0;color:var(--muted-foreground);align-content:start;gap:3px;font-size:12px;font-weight:600;display:grid}.tcgen .gfield-label{white-space:nowrap;text-overflow:ellipsis;align-items:baseline;gap:6px;min-height:16px;display:flex;overflow:hidden}.tcgen .gfield-label small{color:var(--muted-foreground);text-overflow:ellipsis;font-size:11.5px;font-weight:400;overflow:hidden}.tcgen .gfield.short{width:170px}.tcgen .gunit{min-width:0;display:block;position:relative}.tcgen .gunit>input{width:100%;padding-right:36px}.tcgen .gunit:after{content:attr(data-unit);color:var(--muted-foreground);pointer-events:none;font-size:12px;font-weight:400;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.tcgen input.is-warn{border-color:var(--warn-border);background:var(--warn-soft)}.tcgen .field-label{color:var(--muted-foreground);gap:3px;font-size:12px;font-weight:600;display:grid}.tcgen .opt-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));align-items:end;gap:8px 10px;display:grid}.tcgen .opt-grid>.span2{grid-column:span 2}.tcgen .opt-note{color:var(--muted-foreground);margin:0;padding:2px 0;font-size:12px}.tcgen .gseg{background:var(--seg-bg);border-radius:9px;flex-wrap:wrap;justify-self:start;gap:2px;max-width:100%;padding:3px;display:inline-flex}.tcgen .gseg button{color:var(--seg-fg);white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:baseline;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.tcgen .gseg button small{color:var(--muted-foreground);font-size:11px;font-weight:500}.tcgen .gseg button:hover{color:var(--foreground)}.tcgen .gseg button.on{background:var(--card);color:var(--primary);box-shadow:0 1px 3px #001a181f}.tcgen .gopt{border-top:1px solid var(--border);gap:8px;padding:7px 0;display:grid}.tcgen h4+.gopt,.tcgen .gsec-head+.gopt,.tcgen .opt-grid+.gopt{border-top:0}.tcgen .gsw{color:var(--foreground);cursor:pointer;align-items:flex-start;gap:10px;font-size:13px;font-weight:500;display:flex}.tcgen .gsw input{appearance:none;background:var(--switch-off);cursor:pointer;border:0;border-radius:999px;flex:none;width:30px;height:18px;min-height:0;margin:1px 0 0;padding:0;transition:background .15s;position:relative}.tcgen .gsw input:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.tcgen .gsw input:checked{background:var(--primary)}.tcgen .gsw input:checked:before{transform:translate(12px)}.tcgen .gsw input:focus{box-shadow:none}.tcgen .gsw input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tcgen .gsw-text{gap:1px;min-width:0;display:grid}.tcgen .gsw-text small{color:var(--muted-foreground);font-size:12px;font-weight:400}.tcgen .gopt-body{border-left:2px solid color-mix(in srgb, var(--primary) 30%, transparent);gap:8px;margin-left:15px;padding:4px 0 4px 24px;display:grid}.tcgen .gen-proc{container-type:inline-size}.tcgen .proc-groups{grid-template-columns:minmax(0,1fr);align-items:start;gap:6px 24px;display:grid}@container (width>=700px){.tcgen .proc-groups:not(.solo){grid-template-rows:auto 1fr;grid-template-columns:repeat(2,minmax(0,1fr))}.tcgen .proc-groups .pg-ends,.tcgen .proc-groups .pg-machine{grid-column:1}.tcgen .proc-groups .pg-harness{grid-area:1/2/span 2}}.tcgen .proc-group{min-width:0;display:grid}.tcgen .gen-marks{border-top:1px solid var(--border);gap:6px;padding-top:8px;display:grid;container-type:inline-size}.tcgen .gen-marks-bar{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.tcgen .gen-marks-bar .gopt{border:0;flex:260px;min-width:0;padding:0}.tcgen .gen-marks-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.tcgen .gen-marks-head h4{margin:0}.tcgen .gen-marks-head .muted{font-size:12px}.tcgen .gen-marks-actions{flex-wrap:wrap;gap:6px;margin-left:auto;display:inline-flex}.tcgen .gen-marks .gtable-wrap{max-height:none;overflow-x:auto}.tcgen .gen-marks .gtable{table-layout:fixed;min-width:640px}.tcgen .gen-marks .gtable td{vertical-align:top;padding:3px 4px}.tcgen .gen-marks .gtable td:first-child{color:var(--muted-foreground);padding:9px 6px 0 10px}.tcgen .gen-marks .gtable input,.tcgen .gen-marks .gtable select{width:100%;height:28px}.tcgen .gen-marks .gtable input.num{text-align:right}.tcgen .gen-marks .gtable textarea.auto-textarea{width:100%;height:28px;min-height:28px;padding-top:4px;padding-bottom:4px;line-height:18px}.tcgen .gen-marks .gtable td small{padding:1px 2px 0}.tcgen .gen-marks col.c-n{width:34px}.tcgen .gen-marks col.c-target{width:17%}.tcgen .gen-marks col.c-text{width:38%}.tcgen .gen-marks col.c-mat{width:13%}.tcgen .gen-marks col.c-place{width:20%}.tcgen .gen-marks col.c-qty{width:64px}.tcgen .gen-marks col.c-len{width:84px}.tcgen .gen-marks col.c-x{width:32px}.tcgen .gen-marks-place{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:4px;display:grid}.tcgen .gen-marks-place>select:only-child{grid-column:1/-1}.tcgen .gen-marks .btn-x{width:28px;height:28px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;padding:0;font-size:16px}.tcgen .gen-marks .btn-x:hover{color:var(--tone-danger)}@media (pointer:coarse){.tcgen .gen-marks .gtable input,.tcgen .gen-marks .gtable select,.tcgen .gen-marks .btn-x{height:40px}.tcgen .gen-marks .gtable textarea.auto-textarea{min-height:40px;padding-top:10px}.tcgen .gen-marks .btn-x{width:40px}.tcgen .gen-marks .gtable td:first-child{padding-top:15px}.tcgen .gen-marks col.c-x{width:44px}}.tcgen .chip-row{flex-wrap:wrap;gap:6px;display:flex}.tcgen .gchip{border:1px solid var(--border);background:var(--card);color:var(--foreground);cursor:pointer;border-radius:999px;align-items:baseline;gap:6px;padding:4px 11px 4px 27px;font-size:12.5px;font-weight:500;display:inline-flex;position:relative}.tcgen .gchip small{color:var(--muted-foreground);font-size:11.5px;font-weight:400}.tcgen .gchip input{opacity:0;pointer-events:none;width:1px;height:1px;min-height:0;position:absolute}.tcgen .gchip:before{content:"";border:1.5px solid var(--chip-box);background:var(--card);border-radius:3px;width:11px;height:11px;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.tcgen .gchip:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}.tcgen .gchip.on{border-color:color-mix(in srgb, var(--primary) 55%, transparent);background:color-mix(in srgb, var(--primary) 8%, var(--card))}.tcgen .gchip.on:before{border-color:var(--primary);background:var(--primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 5.2l2 2 4-4.4' fill='none' stroke='white' stroke-width='1.7'/%3E%3C/svg%3E") center / 9px no-repeat}.tcgen .gchip:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:1px}.tcgen .btn-link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:600;display:inline}.tcgen .btn-link:hover{text-decoration:underline}.tcgen .btn-add{border:1px dashed var(--chip-box);color:var(--primary);background:0 0;border-radius:8px;justify-self:start;padding:5px 12px;font-size:12.5px;font-weight:600}.tcgen .btn-add:hover{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 6%, transparent)}.tcgen .btn-remove{width:28px;height:28px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;font-size:17px;line-height:1;display:inline-grid}.tcgen .btn-remove:hover{background:var(--accent);color:var(--tone-danger)}.tcgen .btn-link:focus,.tcgen .btn-remove:focus{outline:none}.tcgen .btn-link:focus-visible,.tcgen .btn-remove:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.tcgen .row-actions{flex-wrap:wrap;gap:6px;display:flex}.tcgen .gtable-wrap{border:1px solid var(--border);border-radius:8px;max-height:260px;overflow:auto}.tcgen .gtable-wrap.is-full{max-height:none;overflow:auto visible}.tcgen .gsec{align-self:stretch}.tcgen .gtable{border-collapse:collapse;width:100%;font-size:12.5px}.tcgen .gtable th{z-index:1;background:var(--table-head);color:var(--table-head-fg);border-bottom:1px solid var(--border);padding:6px 10px;font-weight:600;position:sticky;top:0}.tcgen .gtable td{white-space:normal;height:30px;padding:4px 10px}.tcgen .gtable td small{color:var(--muted-foreground);font-size:11.5px;line-height:1.3;display:block}.tcgen .gtable tbody tr:nth-child(2n) td{background:var(--table-zebra)}.tcgen .gtable tbody tr:last-child td{border-bottom:0}.tcgen .gtable .num{text-align:right;font-variant-numeric:tabular-nums}.tcgen .gtable-empty{color:var(--muted-foreground);text-align:center}.tcgen .gbadge{white-space:nowrap;background:#eef2f7;border-radius:6px;padding:1px 7px;font-size:11.5px}.tcgen .badge-wire{background:#e0f2fe}.tcgen .badge-term{background:#fef3c7}.tcgen .badge-conn{background:#dcfce7}.tcgen .cut-row{flex-wrap:wrap;align-items:end;gap:8px 18px;display:flex}.tcgen .cut-result{gap:1px;padding-bottom:2px;font-size:13px;display:grid}.tcgen .cut-result b{font-variant-numeric:tabular-nums;font-size:15px}.tcgen .cut-result small{color:var(--muted-foreground);font-size:12px}.tcgen .cut-result.warn small{color:var(--tone-warn)}.tcgen .wire-list{gap:6px;display:grid}.tcgen .wire-row{grid-template-columns:minmax(0,1fr) 76px 28px;align-items:center;gap:8px;display:grid}.tcgen .wire-row.adv{grid-template-columns:minmax(0,1fr) 112px 76px 28px}.tcgen .wire-row.cores{grid-template-columns:minmax(0,1fr) 76px 64px 100px 28px}.tcgen .wire-row.adv.cores{grid-template-columns:minmax(0,1fr) 112px 76px 64px 100px 28px}.tcgen .wire-row.head{color:var(--muted-foreground);margin-bottom:-3px;font-size:12px;font-weight:600}.tcgen .ep-side{container-type:inline-size}.tcgen .ep-side:not(.full){flex-direction:column;align-self:stretch;display:flex}.tcgen .ep-side:not(.full)>.ep-card:last-child{flex-direction:column;flex:auto;display:flex}.tcgen .ep-side:not(.full)>.ep-card:last-child>:last-child{margin-top:auto}.tcgen .ep-side.is-empty{padding-top:10px;padding-bottom:10px}.tcgen .ep-card{border-top:1px solid var(--border);gap:9px;padding-top:12px;display:grid}.tcgen .gsec-head+.ep-card{border-top:0;padding-top:2px}.tcgen .ep-head{align-items:center;gap:8px;min-width:0;display:flex}.tcgen .ep-badge{background:color-mix(in srgb, var(--primary) 12%, transparent);min-width:30px;color:var(--primary);text-align:center;border-radius:6px;flex:none;padding:1px 7px;font-size:12.5px}.tcgen .ep-title{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.tcgen .ep-kind{color:var(--muted-foreground);white-space:nowrap;font-size:12.5px}.tcgen .ep-head .btn-remove{margin-left:auto}.tcgen .ep-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px 10px;max-width:1040px;display:grid}.tcgen .ep-grid>.lead{grid-column:1/-1}.tcgen .ep-grid.coax{flex-wrap:wrap;gap:8px 16px;display:flex}@container (width>=600px){.tcgen .ep-grid:not(.coax){grid-template-columns:minmax(0,1.3fr) max-content minmax(0,1.2fr)}.tcgen .ep-grid>.lead:first-child{grid-column:auto}.tcgen .ep-grid>.lead:not(:first-child){max-width:420px}}@container (width>=1000px){.tcgen .ep-grid:not(.coax){grid-template-columns:minmax(0,1.3fr) max-content minmax(0,1.2fr) minmax(0,1fr)}.tcgen .ep-grid>.lead{grid-column:auto}}.tcgen .ep-ter{flex-wrap:wrap;align-items:end;gap:8px 10px;display:flex}.tcgen .ep-ter>.gfield{width:92px}.tcgen .ep-ter>.gfield.wide{width:160px}.tcgen .ep-ter>.gfield.mid{width:150px}.tcgen .ep-norm{color:var(--muted-foreground);flex-wrap:wrap;align-items:baseline;gap:2px 10px;font-size:12px;display:flex}.tcgen .ep-per{color:var(--foreground);align-items:center;gap:6px;font-size:12.5px;font-weight:500;display:inline-flex}.tcgen .ep-per input{width:54px}.tcgen .ep-sdr{font-size:12.5px}.tcgen .ep-cable{color:var(--muted-foreground);flex-wrap:wrap;gap:2px 14px;font-size:12.5px;display:flex}.tcgen .ep-cable b{color:var(--foreground);font-variant-numeric:tabular-nums}.tcgen .ep-cable .tone-warn{color:var(--tone-warn);font-weight:500}.tcgen .op-code,.tcgen .code{color:var(--muted-foreground);overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:400}.tcgen .ep-more summary{color:var(--muted-foreground);font-size:12.5px;font-weight:600}.tcgen .ep-more[open]>summary{margin-bottom:8px}.tcgen .ep-more>small{margin-top:6px;display:block}.tcgen .ep-pins{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 14px;display:grid}.tcgen .ep-pin{color:var(--foreground);grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:8px;font-size:12.5px;font-weight:500;display:grid}.tcgen .ep-links{gap:4px;font-size:12.5px}.tcgen .ep-links b{font-variant-numeric:tabular-nums}.tcgen .gen-drawing-note{color:var(--muted-foreground);flex-wrap:wrap;align-items:baseline;gap:2px 12px;display:flex}.tcgen .gen-drawing-note .link-button{font-size:inherit;padding:0}.tcgen .gen-drawing-note details{flex-basis:100%}.tcgen .gen-drawing-note summary{cursor:pointer;color:var(--tone-warn);font-weight:600}.tcgen .gen-drawing-note ul{margin:4px 0 0;padding-left:18px}.tcgen .coax-info{color:var(--muted-foreground);font-size:12px}.tcgen .coax-add{background:var(--warn-soft);border-radius:8px;gap:8px;padding:10px 12px;display:grid}.tcgen .coax-add>.secondary{justify-self:start}.tcgen .twist-pairs{gap:6px;display:grid}.tcgen .twist-pair-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 28px;align-items:center;gap:6px;max-width:440px;display:grid}.tcgen .grapher-box table th,.tcgen .grapher-box table td{white-space:normal}.tcgen .gen-side{border:1px solid var(--border);background:var(--card);border-radius:10px;flex-direction:column;min-width:0;max-height:calc(100dvh - 24px);display:flex;position:sticky;top:-18px;container-type:inline-size}.tcgen .gen-side-body{flex:auto;align-content:start;gap:12px;min-height:0;padding:12px 14px;display:grid;overflow:auto}.tcgen .gen-side-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.tcgen .gen-side-head h3{font-size:15px}.tcgen .gen-foot{z-index:3;border-top:1px solid var(--border);background:var(--card);border-radius:0 0 10px 10px;flex:none;justify-content:flex-end;align-items:center;gap:12px;padding:10px 14px;display:flex;position:sticky;bottom:-30px}.tcgen .gen-foot>.primary{min-width:180px}.tcgen .gen-draft{border-top:1px solid var(--border);color:var(--muted-foreground);flex:none;gap:2px;padding:8px 14px 0;font-size:12.5px;display:grid}.tcgen .gen-draft+.gen-foot{border-top:0}.tcgen .gen-draft .link-button{font-size:inherit;padding:0}.tcgen>.gen-error{margin:0 0 10px}.tcgen .gen-status{color:var(--muted-foreground);flex:1;font-size:12.5px}.tcgen .gen-foot-sum{color:var(--muted-foreground);margin-right:auto;font-size:12.5px;display:none}.tcgen .gen-more{border-top:1px solid var(--border);gap:8px;margin:0;padding-top:10px;display:grid}.tcgen .gen-more>.secondary{justify-self:start}.tcgen .gen-more .build-config{min-width:0}.tcgen .op-list{display:grid}.tcgen .op-row{border-bottom:1px solid var(--border);grid-template-columns:22px minmax(0,1fr) repeat(3,76px);grid-template-areas:"num name t1 t2 t3"".card card card card";align-items:center;gap:4px 6px;padding:7px 0;display:grid}.tcgen .op-row>.op-num{grid-area:num}.tcgen .op-row>.op-name{grid-area:name}.tcgen .op-row>.op-card{grid-area:card}.tcgen .op-row.head{color:var(--muted-foreground);grid-template-areas:"num name t1 t2 t3";padding:0 0 5px;font-size:11.5px;font-weight:600}.tcgen .op-row.head>:nth-child(3){display:none}.tcgen .op-row.head>:nth-child(n+4){text-align:right;padding-right:2px}@container (width>=760px){.tcgen .op-row{grid-template-columns:22px minmax(150px,1fr) minmax(220px,1.15fr) repeat(3,82px);grid-template-areas:"num name card t1 t2 t3";gap:4px 8px}.tcgen .op-row.head{grid-template-areas:"num name card t1 t2 t3"}.tcgen .op-row.head>:nth-child(3){grid-area:card;display:block}}.tcgen .op-num{color:var(--muted-foreground);text-align:right;font-variant-numeric:tabular-nums;align-self:start;padding-top:1px;font-size:12px;font-weight:600}.tcgen .op-name{gap:1px;min-width:0;display:grid}.tcgen .op-title{font-size:12.5px;font-weight:600;line-height:1.3}.tcgen .op-row.is-off .op-title{color:var(--muted-foreground)}.tcgen .op-card{align-items:center;gap:6px;min-width:0;display:flex}.tcgen .op-card .gpick{flex:auto}.tcgen .op-nodb{color:var(--tone-warn);white-space:nowrap;flex:none;font-size:11.5px}.tcgen .op-row .gunit>input{text-align:right;font-variant-numeric:tabular-nums;padding-right:32px}.tcgen .op-badge{background:var(--accent);min-width:22px;height:22px;color:var(--muted-foreground);border-radius:6px;flex:none;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.tcgen .gpick{min-width:0;display:block;position:relative}.tcgen .gpick-face{border:1px solid var(--border);height:32px;color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding-top:7px;padding-left:8px;font-size:12.5px;display:block;overflow:hidden}.tcgen .gpick select{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;position:absolute;inset:0}.tcgen .gpick:focus-within .gpick-face{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.tcgen .gpick.warn .gpick-face{border-color:var(--warn-border);background-color:var(--warn-soft);color:var(--tone-warn)}.tcgen .gmark{border-radius:50%;flex:none;place-items:center;width:20px;height:20px;display:inline-grid}.tcgen .gmark svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px}.tcgen .gmark.ok{background:color-mix(in srgb, var(--tone-ok) 12%, transparent);color:var(--tone-ok)}.tcgen .route-editor{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr);gap:8px;padding-top:10px;display:grid}.tcgen .route-head{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.tcgen .route-toggle{margin-left:auto}.tcgen .route-badge{background:var(--accent);color:var(--muted-foreground);border-radius:999px;padding:1px 8px;font-size:11px}.tcgen .route-badge.manual{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary)}.tcgen .route-summary{color:var(--muted-foreground);font-size:12px}.tcgen .route-summary strong{color:var(--foreground)}.tcgen .route-canvas{width:100%;padding-bottom:2px;position:relative}.tcgen .route-canvas svg{pointer-events:none;width:100%;position:absolute;inset:0}.tcgen .route-edge-line{fill:none;stroke:var(--muted-foreground);stroke-width:1.5px}.tcgen .route-arrowhead{fill:var(--muted-foreground)}.tcgen .route-cell{width:calc(100% / var(--cols,1));max-width:264px;padding:0 6px;position:absolute;transform:translate(-50%)}.tcgen .route-cell .route-node{height:100%}.tcgen .route-edge-label{z-index:2;position:absolute;transform:translate(-50%,-50%)}.tcgen .route-node{position:relative}.tcgen .route-tools{gap:2px;display:flex;position:absolute;top:4px;right:4px}.tcgen .route-tool{border:1px solid var(--border);background:var(--card);width:28px;height:28px;min-height:0;color:var(--muted-foreground);cursor:pointer;border-radius:6px;place-items:center;padding:0;font-size:14px;font-weight:700;line-height:1;display:inline-grid}.tcgen .route-tool:hover,.tcgen .route-tool.is-on{border-color:var(--primary);color:var(--foreground)}.tcgen .route-tool.is-on{background:color-mix(in srgb, var(--primary) 16%, var(--card))}.tcgen .route-node.has-tools .route-block-body{padding-right:62px}.tcgen .route-node.has-tools .route-block.is-empty{padding-right:66px}.tcgen .route-node.is-empty-node .route-tools{top:50%;transform:translateY(-50%)}.tcgen .route-block.is-linking{border-style:dashed;border-color:var(--primary)}.tcgen .route-link-hint{background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--foreground);border-radius:6px;margin:0 0 6px;padding:4px 10px;font-size:12px}.tcgen .route-block.is-empty{border-style:dashed;align-items:center;gap:8px;padding:2px 10px;display:flex}.tcgen .route-block.is-empty .route-block-name{-webkit-line-clamp:2;flex:1;min-width:0;font-size:12.5px;line-height:1.15}.tcgen .route-block.is-empty .route-block-meta{flex-direction:column;flex:none;align-items:flex-end;gap:1px;font-size:11px;line-height:1.15}.tcgen .route-block.is-empty .route-block-tag{font-size:10.5px}.tcgen .route-edge-holder{display:inline-block;position:relative}.tcgen .route-edge-pill{border:1px solid color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--card);height:26px;min-height:0;color:var(--foreground);font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer;border-radius:999px;padding:0 10px;font-size:12.5px;font-weight:700}.tcgen .route-edge-pill.is-one{border-color:var(--border);color:var(--muted-foreground);font-weight:400}.tcgen .route-edge-pill:hover,.tcgen .route-edge-pill[aria-expanded=true]{border-color:var(--primary)}.tcgen .route-edge-pop{z-index:10;border:1px solid var(--border);background:var(--card);white-space:nowrap;border-radius:8px;align-items:center;gap:10px;padding:6px 10px;display:flex;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%);box-shadow:0 6px 18px #00000029}.tcgen .route-edge-pop:before{content:"";border:solid var(--border);background:var(--card);border-width:0 0 1px 1px;width:10px;height:10px;margin-top:-5px;position:absolute;top:50%;left:-6px;transform:rotate(45deg)}.tcgen .route-edge-pop.is-left{left:auto;right:calc(100% + 10px)}.tcgen .route-edge-pop.is-left:before{left:auto;right:-6px;transform:rotate(225deg)}.tcgen .route-edge-pop input.route-per{width:60px}.tcgen .route-edge-pop-actions{gap:12px;display:flex}.tcgen .route-edge-remove{color:var(--tone-danger)}.tcgen .route-block{border:1px solid var(--border);background:var(--card);width:100%;height:100%;color:var(--foreground);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:400;display:grid;overflow:hidden}.tcgen .route-block:hover{border-color:var(--primary)}.tcgen .route-block:focus{outline:none}.tcgen .route-block:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tcgen .route-block.is-final{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, var(--card))}.tcgen .route-block.is-selected{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 25%, transparent)}.tcgen .route-block-no{background:var(--accent);min-width:22px;height:22px;color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:6px;place-items:center;padding:0 6px;font-size:12px;font-weight:700;display:inline-grid}.tcgen .route-block.is-final .route-block-no,.tcgen .route-block.is-selected .route-block-no{background:color-mix(in srgb, var(--primary) 16%, transparent);color:var(--foreground)}.tcgen .route-block-side{justify-items:center;gap:4px;display:grid}.tcgen .route-block-body{gap:2px;min-width:0;display:grid}.tcgen .route-block-name{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.tcgen .route-block-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted-foreground);font-variant-numeric:tabular-nums;flex-wrap:nowrap;align-items:center;gap:2px 6px;font-size:12px;display:flex;overflow:hidden}.tcgen .route-block-body .route-block-meta{display:block}.tcgen .route-block-tag{background:color-mix(in srgb, var(--primary) 16%, transparent);color:var(--foreground);border-radius:999px;padding:0 7px;font-size:11px;font-weight:700}.tcgen .route-flow{gap:0;width:100%;max-width:680px;margin:0;padding:0;list-style:none;display:grid}.tcgen .gen-side .route-flow{max-width:none}.tcgen .route-flow li{display:grid}.tcgen .route-flow .route-block{height:auto}.tcgen .route-flow-link{min-height:30px;color:var(--muted-foreground);align-items:center;gap:8px;padding-left:15px;display:flex}.tcgen .route-flow-arrow{text-align:center;width:14px;font-size:14px;line-height:1}.tcgen .route-per-chip{border:1px solid color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--card);height:26px;color:var(--foreground);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:0 8px 0 2px;display:inline-flex}.tcgen .route-per-chip small{color:var(--muted-foreground);font-size:11.5px}.tcgen .route-per-chip.is-one{border-color:var(--border)}.tcgen .route-per-chip.is-one .route-per{color:var(--muted-foreground);font-weight:400}.tcgen .route-per-chip:focus-within{border-color:var(--primary)}.tcgen input.route-per{width:40px;height:22px;min-height:0;box-shadow:none;text-align:center;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:999px;padding:0 4px;font-size:12.5px;font-weight:700}.tcgen input.route-per:focus{box-shadow:none}.tcgen input.route-per.f-empty{color:var(--tone-danger)}.tcgen .route-panel{background:var(--panel-soft);border-radius:8px;gap:10px;padding:10px 12px;display:grid}.tcgen .route-panel-head{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.tcgen .route-panel-head .field-label{flex:1;min-width:200px;max-width:420px}.tcgen .route-ops{gap:2px;display:grid}.tcgen .route-op{gap:4px;display:grid}.tcgen .route-op .op-row{border-bottom:0}.tcgen .route-op-row{flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;display:flex}.tcgen .route-move{max-width:360px;padding-bottom:6px}.tcgen .route-actions{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:end;gap:10px 16px;padding-top:8px;display:grid}.tcgen .route-act{align-items:end;gap:8px;display:flex}.tcgen .route-act .field-label{flex:1;min-width:0}.tcgen .route-inputs{gap:2px;font-size:12px;display:grid}.tcgen .route-input-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.tcgen .route-block-code{color:var(--muted-foreground);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:1.3;overflow:hidden}.tcgen .route-block.is-final .route-block-code,.tcgen .route-block.is-selected .route-block-code{color:var(--foreground)}.tcgen .route-block-body .route-block-note{color:var(--tone-warn)}.tcgen .route-block-body .route-block-product{color:var(--foreground);font-weight:600}.tcgen .route-per-lead{color:var(--muted-foreground);padding-left:6px;font-size:11.5px}.tcgen .route-head-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.tcgen .route-head-actions .route-toggle{margin-left:0}.tcgen .route-order{align-items:end;gap:8px;display:flex}.tcgen .route-tool:disabled{opacity:.35;cursor:default}.tcgen .route-tool:disabled:hover{border-color:var(--border);color:var(--muted-foreground)}.tcgen .route-node.has-many-tools .route-tools{grid-template-columns:repeat(2,28px);gap:2px;display:grid}.tcgen .route-node.has-many-tools .route-block{min-height:62px}.tcgen .route-node.has-many-tools.is-empty-node .route-tools{grid-template-columns:repeat(4,28px)}.tcgen .route-node.has-many-tools.is-empty-node .route-block{min-height:0}.tcgen .route-node.has-many-tools.is-empty-node .route-block.is-empty{padding-right:128px}.tcgen .manual-hdr .manual-add{gap:6px;margin-left:auto;display:flex}.tcgen .manual-picker{background:var(--panel-soft);border-radius:8px;gap:8px;padding:10px 12px;display:grid}.tcgen .manual-picker .section-hdr{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.tcgen .manual-picker .manual-close{margin-left:auto}.tcgen .manual-picker .table-wrap{max-height:none;overflow:visible}.tcgen .manual-ops{display:grid}.tcgen .manual-op{border-top:1px solid var(--border);gap:8px;padding:12px 0;display:grid}.tcgen .manual-op-head{grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.tcgen .manual-op-head>.op-badge{margin-top:5px}.tcgen .manual-op-name{gap:2px;max-width:560px;display:grid}.tcgen .manual-op-name input{font-size:14px;font-weight:600}.tcgen .manual-op-name small{color:var(--muted-foreground);font-size:11.5px}.tcgen .manual-op-name .op-code{margin-right:6px}.tcgen .manual-op-title{font-size:14px;line-height:30px}.tcgen .manual-op-params{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tcgen .manual-op-params .op-code{margin:0}.tcgen .drafts .draft-note-cell{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;max-width:46ch;line-height:1.3;display:-webkit-box;overflow:hidden}.tcgen .drafts .draft-open{white-space:nowrap;padding:2px 10px}.tcgen .drafts .data-table table{width:100%}.tcgen .drafts td:last-child,.tcgen .drafts th:last-child{white-space:nowrap;text-align:right;width:1%}.tcgen .drafts .draft-detail{gap:8px;padding:8px 4px;display:grid}.tcgen .drafts .draft-note{white-space:pre-wrap;margin:0}.tcgen .drafts .draft-pair{flex-wrap:wrap;gap:4px 32px;margin:0;display:flex}.tcgen .drafts .draft-pair dt{color:var(--muted-foreground);font-size:11.5px}.tcgen .drafts .draft-pair dd{margin:0;font-weight:600}.tcgen .drafts.is-drop{outline:2px dashed var(--primary);outline-offset:-2px}.tcgen .drafts .draft-stage{gap:8px;max-width:720px;padding:8px 0;display:grid}.tcgen .drafts .draft-stage-list{border:1px solid var(--border);border-radius:8px;margin:0;padding:0;list-style:none;display:grid}.tcgen .drafts .draft-stage-list li{align-items:center;gap:12px;min-height:32px;padding:2px 8px;display:flex}.tcgen .drafts .draft-stage-list li:nth-child(2n){background:var(--accent)}.tcgen .drafts .draft-stage-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tcgen .drafts .draft-stage-size{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.tcgen .drafts .draft-stage-tools{gap:4px;display:flex}.tcgen .drafts .draft-stage-tools .small{min-width:30px;padding:2px 8px}.tcgen .drafts .draft-stage-foot{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.tcgen .drafts .draft-stage-foot .gfield{flex:1;min-width:240px}.tcgen .drafts .draft-built,.draft-strip{gap:6px;padding:8px 0;display:grid}.draft-strip{border:1px solid var(--border);background:var(--card);border-radius:10px;margin:0 0 12px;padding:10px 14px}.draft-strip .draft-lesson{gap:6px;max-width:720px;display:grid}.draft-strip .draft-lesson-foot{align-items:center;gap:12px;display:flex}.draft-strip .draft-lesson textarea{width:100%}.tcgen .drafts .draft-lesson{gap:6px;max-width:720px;display:grid}.tcgen .drafts .draft-lesson-foot{align-items:center;gap:12px;display:flex}.tcgen .drafts .draft-lesson textarea{width:100%}.tcgen .manual-op-tools{align-items:center;gap:4px;display:flex}.tcgen .manual-op-tools .small{min-width:30px;padding:3px 8px}.tcgen .manual-op{padding:8px 0}.tcgen .manual-op-fold{cursor:pointer;background:0 0;border:0;align-self:start;place-items:center;min-width:28px;min-height:30px;padding:0;display:inline-grid}.tcgen .manual-op.is-open .manual-op-fold .op-badge{outline:2px solid color-mix(in srgb, var(--primary) 45%, transparent)}.tcgen .manual-op-norm{min-height:28px;color:var(--foreground);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0 8px;font-size:13px}.tcgen .manual-op-norm:hover{text-decoration:underline}.tcgen .manual-op-name input{min-height:30px}.tcgen .manual-summary-pick{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:2px 0;font-weight:600}.tcgen .manual-summary-pick:hover{color:var(--foreground);text-decoration:underline}.tcgen .manual-summary-name.is-selected{color:var(--foreground)}.tcgen .manual-grid{grid-template-columns:92px 112px 116px 112px minmax(0,1fr) minmax(0,1fr);align-items:end;gap:8px 10px;margin-left:36px;display:grid}.tcgen .manual-grid .wide{grid-column:span 2}.tcgen .manual-grid .result{grid-column:span 4}.tcgen .manual-norm{gap:2px;padding-bottom:5px;display:grid}.tcgen .manual-norm small{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.tcgen .manual-norm b{font-variant-numeric:tabular-nums;font-size:14px}.tcgen .manual-text{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;margin-left:36px;display:grid}.tcgen .manual-text .gfield-label{white-space:normal}.tcgen .manual-text textarea{width:100%;font:inherit;color:var(--foreground);resize:vertical;border-radius:6px;padding:6px 8px;font-size:13px;font-weight:400}.tcgen .manual-comps{margin-left:36px;font-size:12px}.tcgen .manual-comps summary{color:var(--muted-foreground);font-size:12.5px;font-weight:600}.tcgen .manual-comp-list{flex-wrap:wrap;gap:6px;padding-top:6px;display:flex}.tcgen .manual-comp{border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:3px 9px;display:inline-flex}.tcgen .manual-comp.on{border-color:color-mix(in srgb, var(--primary) 55%, transparent);background:color-mix(in srgb, var(--primary) 8%, var(--card))}.tcgen .manual-comp label{color:var(--foreground);cursor:pointer;align-items:center;gap:6px;font-size:12.5px;font-weight:500;display:inline-flex}.tcgen .manual-comp input[type=checkbox]{width:14px;height:14px;min-height:0;accent-color:var(--primary);margin:0}.tcgen .manual-comp input[inputmode]{width:60px;height:26px;padding:2px 6px}.tcgen .manual-comp small{color:var(--muted-foreground)}.tcgen .manual-card-name{gap:1px;min-width:0;display:grid}.tcgen .manual-card-name small{color:var(--muted-foreground);overflow-wrap:anywhere;margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:400;display:block}.tcgen .manual-card-step{text-overflow:ellipsis;white-space:nowrap;color:var(--muted-foreground);font-size:12px;display:block;overflow:hidden}.tcgen .manual-picker .data-table td .manual-card-step{white-space:nowrap;overflow-wrap:normal}.tcgen .sel-hit{justify-content:center;align-items:center;display:inline-flex}.tcgen .manual-picker .data-table table.grid.wide{table-layout:fixed;width:100%;min-width:0}.tcgen .manual-picker .data-table td{white-space:normal;overflow-wrap:anywhere}.tcgen .manual-picker .data-table th{white-space:normal}.tcgen .manual-picker .data-table td{padding-top:5px;padding-bottom:5px}.tcgen .manual-assembly{gap:10px;display:grid}.tcgen .manual-block{border-top:1px solid var(--border);gap:10px;padding-top:12px;display:grid}.tcgen .manual-assembly{container-type:inline-size}.tcgen .manual-body{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px 20px;display:grid}.tcgen .manual-diagram{gap:8px;min-width:0;display:grid}.tcgen .manual-keys{color:var(--muted-foreground);background:0 0;margin:0;padding:0}@container (width>=1100px){.tcgen .manual-body.has-pane{grid-template-columns:minmax(0,1fr) minmax(520px,1.1fr)}.tcgen .manual-body.has-pane .manual-block{border:1px solid var(--border);border-radius:8px;padding:12px}.tcgen .manual-body.has-pane .manual-block-head{grid-template-columns:minmax(0,1fr) auto}.tcgen .manual-body.has-pane .manual-block-delete{justify-self:start}}.tcgen .manual-block-bar{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.tcgen .manual-block-bar strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.tcgen .manual-block-order{gap:6px;display:flex}.tcgen select.manual-op-move{width:auto;max-width:150px;height:30px;min-height:0;padding:0 6px;font-size:12px}.tcgen .manual-block-head{grid-template-columns:minmax(220px,360px) minmax(0,1fr) auto;align-items:start;gap:8px 20px;display:grid}.tcgen .manual-block-delete{color:var(--tone-danger);align-self:end}.tcgen .manual-inputs{gap:4px;min-width:0;display:grid}.tcgen .manual-input-list{flex-wrap:wrap;align-items:center;gap:6px;min-height:34px;font-size:13px;display:flex}.tcgen .manual-input{border:1px solid var(--border);background:var(--card);border-radius:999px;align-items:center;gap:2px;padding:1px 2px 1px 10px;display:inline-flex}.tcgen .manual-input .btn-link{color:var(--foreground);font-size:12.5px;font-weight:500}.tcgen .manual-input .btn-remove{width:22px;height:22px;font-size:15px}.tcgen .manual-input-add{align-items:center;gap:6px;display:inline-flex}.tcgen .manual-input-add select{background-position:right 8px center;width:auto;max-width:260px;height:30px;padding:3px 28px 3px 8px;font-size:12.5px}.tcgen .manual-input-list .muted{color:var(--muted-foreground);font-size:12.5px}.tcgen .manual-ops-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.tcgen .manual-ops-head strong{font-size:13.5px}.tcgen .manual-ops-head .manual-add{gap:6px;margin-left:auto;display:flex}.tcgen .manual-summary{gap:10px;display:grid}.tcgen .manual-summary-name{color:var(--muted-foreground);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.tcgen .manual-summary ol{margin:2px 0 0;padding:0;list-style:none;display:grid}.tcgen .manual-summary li{border-bottom:1px solid #edf0f2;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:28px;font-size:13px;display:grid}.tcgen .manual-summary-op{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tcgen .manual-summary-norm b{font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:600}.tcgen .manual-summary-empty{font-size:12.5px}.tcgen .manual-summary-total{text-align:right;padding-top:4px;font-size:13px}@container (width<=900px){.tcgen .manual-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-left:0}.tcgen .manual-grid .wide,.tcgen .manual-grid .result{grid-column:span 2}.tcgen .manual-grid>.wide:last-child{grid-column:1/-1}.tcgen .manual-text,.tcgen .manual-comps{margin-left:0}.tcgen .manual-block-head{grid-template-columns:minmax(0,1fr) auto}.tcgen .manual-inputs{grid-area:2/1/auto/-1}}@container (width<=600px){.tcgen .manual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tcgen .manual-grid .wide,.tcgen .manual-grid .result{grid-column:1/-1}.tcgen .manual-text{grid-template-columns:minmax(0,1fr)}}.tcgen .tone-ok{color:var(--tone-ok)}.tcgen .tone-warn{color:var(--tone-warn)}.tcgen .tone-danger{color:var(--tone-danger)}@media (width<=1280px),(pointer:coarse) and (width<=1600px){.tcgen .gen-layout{grid-template-columns:minmax(0,1fr)}.tcgen .gen-side{display:contents}.tcgen .gen-side-body{border:1px solid var(--border);background:var(--card);border-radius:10px;overflow:visible;container-type:inline-size}.tcgen .gen-foot{border:1px solid var(--border);border-radius:10px;bottom:-20px;box-shadow:0 -6px 18px #001a181a}.tcgen .gen-foot-sum{display:block}.tcgen .gen-main{padding-bottom:72px}}@media (pointer:coarse){.tcgen .sel-hit{min-width:40px;min-height:40px}.tcgen .drafts button,.tcgen .gen-foot>button{min-height:40px}.tcgen .manual-picker .data-table table.selectable>thead>tr>th:first-child,.tcgen .manual-picker .data-table table.selectable>tbody>tr:not(.detail):not(.group-row)>td:first-child{width:48px;padding:0 4px}.tcgen input:not([type=checkbox]):not([type=radio]),.tcgen select,.tcgen .gpick-face{height:40px}.tcgen .gpick-face{padding-top:11px}.tcgen .gseg button{align-items:center;min-height:40px;padding:7px 14px}.tcgen .gsw{align-items:center;min-height:40px}.tcgen .gsw input{margin-top:0}.tcgen .gchip{align-items:center;min-height:40px}.tcgen .btn-link,.tcgen .btn-add{min-height:40px}.tcgen .btn-remove{width:40px;height:40px}.tcgen .manual-op-tools button,.tcgen .manual-add button,.tcgen .manual-op-tools .small,.tcgen .manual-op-fold,.tcgen .manual-op-norm,.tcgen .manual-summary-pick{min-width:40px;min-height:40px}.tcgen .route-edge-pop input.route-per{width:64px}.tcgen .manual-comp input[inputmode]{height:36px}.tcgen .route-per-chip{height:40px}.tcgen .route-tool{width:40px;height:40px;font-size:18px}.tcgen .route-node.has-many-tools .route-tools{grid-template-columns:repeat(2,40px)}.tcgen .route-node.has-many-tools .route-block{min-height:86px}.tcgen .route-node.has-many-tools .route-block-body{padding-right:90px}.tcgen .route-node.has-many-tools.is-empty-node .route-tools{grid-template-columns:repeat(4,40px)}.tcgen .route-node.has-many-tools.is-empty-node .route-block.is-empty{padding-right:176px}.tcgen select.manual-op-move,.tcgen .manual-block-bar .small{min-height:40px}.tcgen .route-node.has-tools .route-block-body{padding-right:90px}.tcgen .route-node.has-tools .route-block.is-empty{padding-right:96px}.tcgen .route-edge-pill{height:40px;padding:0 14px}.tcgen .route-edge-pop .small{min-height:40px}.tcgen input.route-per{width:44px;height:36px}.tcgen .manual-input .btn-remove{width:36px;height:36px}.tcgen .manual-input-add select{height:40px}.tcgen .route-act .small,.tcgen .route-panel select,.tcgen .route-panel input,.tcgen .route-toggle,.tcgen .route-head .btn-link,.tcgen .route-panel-head .btn-link{min-height:40px}}.nowrap{white-space:nowrap}.template-sheets .toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sheet-grid th{width:32px;color:var(--muted-foreground);text-align:right;font-weight:400}.sheet-grid td{padding:0}.sheet-grid td input{width:100%;min-width:90px;font:inherit;background:0 0;border:0;border-radius:0;padding:4px 6px}.box-dialog{z-index:50;max-width:min(92vw,420px);position:fixed;top:30%;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #00000040}.box-dialog .box-no{letter-spacing:2px;text-align:center;font-variant-numeric:tabular-nums;font-size:40px;font-weight:700}.gantt-bar.done{background:#9aa9a7}.gantt-bar.absent{color:#56605f;background:repeating-linear-gradient(135deg,#d9dede,#d9dede 6px,#eef1f1 6px 12px)}.production-plan-page>.panel{min-width:0;margin-bottom:16px;padding:14px 16px}.plan-section-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.plan-section-head h2{margin:0;font-size:16px}.plan-section-head .plan-filters{flex:1;margin:0}.plan-table{border-collapse:collapse;width:100%;font-size:13px}.plan-table th{text-align:left;color:var(--muted-foreground);border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px;font-size:11.5px;font-weight:600}.plan-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:7px 8px}.plan-table tbody tr{cursor:pointer}.plan-table tbody tr:hover,.plan-table tbody tr.selected{background:#edf5f4}.plan-table tr.dim{opacity:.55}.plan-table td:first-child{white-space:nowrap}.plan-table td small{color:var(--muted-foreground)}.plan-load .gantt-label{flex-basis:240px;width:240px}.plan-load .gantt-row{min-height:44px}.plan-legend{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.plan-legend .gantt-bar{height:18px;font-size:var(--zg-font-sm);padding:0 6px;line-height:18px;display:inline-block;position:static}@media (width<=1024px){.plan-table td:nth-child(6),.plan-table th:nth-child(6){display:none}}@media (width<=640px){.plan-load .gantt-label{flex-basis:150px;width:150px}}.data-table td button.small,.data-table td .secondary,.data-table td .primary{border-radius:7px;padding:2px 10px;font-size:12px;line-height:1.5}@media (pointer:coarse){.data-table td button{min-height:32px}.table-wrap td .link-button{min-height:28px}}.tr-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 10px;display:flex}.tr-toolbar input{flex:280px;max-width:420px}.tr-card-op{border-style:dashed}.op-fields{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;margin:0;display:grid}.op-fields>div{border-bottom:1px solid var(--border);gap:1px;padding:4px 0;display:grid}.op-fields dt{color:var(--muted-foreground);font-size:11px}.op-fields dd{margin:0;font-size:12.5px}.tr-toolbar-end{margin-left:auto}.master-board{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.master-board>.panel{margin:0;padding:14px 16px}.mb-head{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.mb-head h2{margin:0;font-size:17px}.mb-count{color:var(--muted-foreground);font-size:13px}.mb-toggle{white-space:nowrap;color:var(--muted-foreground);align-items:center;gap:6px;margin-left:auto;font-size:13px;display:flex}.mb-project{border-top:1px solid var(--border);padding:10px 0 4px}.mb-project-head{align-items:baseline;gap:10px;margin-bottom:6px;font-size:15px;display:flex}.mb-task{border-left:3px solid var(--accent);margin:0 0 10px;padding-left:10px}.mb-task-head{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.mb-task-head small{color:var(--muted-foreground)}.mb-ops{table-layout:fixed;border-collapse:collapse;width:100%;font-size:13px}.mb-ops th{text-align:left;color:var(--muted-foreground);border-bottom:1px solid var(--border);padding:3px 6px;font-weight:500}.mb-ops td{border-bottom:1px solid var(--accent);vertical-align:middle;padding:3px 6px}.mb-ops th:first-child,.mb-ops td:first-child{text-align:right;width:32px;color:var(--muted-foreground)}.mb-ops th:nth-child(3),.mb-ops td:nth-child(3){white-space:nowrap;width:72px}.mb-ops tr.active td{background:#e6f7f5}.mb-ops tr.done td{color:var(--muted-foreground)}.mb-op{all:unset;cursor:pointer;color:var(--foreground);border-bottom:1px dashed var(--primary);display:inline}.mb-op:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.mb-op small,.mb-ops td span small{color:var(--muted-foreground);margin-left:6px;display:inline}.mb-chip{background:var(--accent);border-radius:10px;margin:1px 4px 1px 0;padding:1px 7px;font-size:12px;display:inline-block}.mb-free{color:#b54708;font-size:12px}.mb-done{color:var(--primary);font-size:12px}.mb-ready{border:1px dashed var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:6px 10px;font-size:13px;display:flex}.mb-ready small{color:var(--muted-foreground)}.mb-target{background:#e6f7f5;border-radius:8px;flex-direction:column;gap:2px;margin-bottom:8px;padding:8px 10px;font-size:13px;display:flex}.mb-target.muted{background:var(--accent);color:var(--muted-foreground)}.mb-target .link-button{align-self:flex-start}.mb-list{margin:0;padding:0;list-style:none}.mb-list li{border-bottom:1px solid var(--accent);justify-content:space-between;align-items:center;gap:8px;padding:7px 4px;display:flex}.mb-list li.on{background:#f0fbf9}.mb-list li.absent .mb-person b{color:var(--muted-foreground)}.mb-person{flex-direction:column;min-width:0;font-size:13px;display:flex}.mb-person small{color:var(--muted-foreground)}.mb-person small.danger-text{color:#b42318}@media (width<=820px){.mb-ops th:nth-child(2){width:auto}}.table-toolbar{flex-wrap:wrap}.table-search{flex:320px;gap:8px;min-width:220px;max-width:640px;display:flex}.table-search .search{flex:1;min-width:0}.table-toolbar .toolbar-end{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.filter-toggle.active{border-color:var(--primary);color:var(--primary)}.filter-panel{border:1px solid var(--border);background:var(--card);border-radius:10px;flex-wrap:wrap;gap:8px;padding:10px;display:flex}.filter-panel[hidden]{display:none}.filter-panel select{width:auto;min-width:180px;max-width:280px}.filter-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-tag{border:1px solid color-mix(in srgb, var(--primary) 35%, white);color:var(--foreground);background:color-mix(in srgb, var(--primary) 9%, white);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12.5px;display:inline-flex}.filter-tag span{color:var(--muted-foreground)}.filter-tags .link-button{padding:0 4px;font-size:12.5px}.stock-search{flex:320px;max-width:640px}.table-toolbar select{width:auto}.panel .filters{background:var(--card)}.panel>.data-table{padding:0 16px 16px}.eq-op{border:1px solid var(--border);border-radius:999px;padding:3px 8px;font-size:12px}.stock-hint{max-width:900px;margin:10px 0 12px}.stock-page{padding-bottom:12px}.stock-page .page-head{flex-wrap:wrap;row-gap:8px;margin-bottom:8px}.stock-page .page-actions{flex-wrap:wrap;align-items:center}.stock-page .page-actions>button,.stock-page .more-menu>button,.stock-toolbar button{white-space:nowrap;height:36px;padding:0 14px;font-size:13px}.stock-toolbar{align-items:center;gap:8px 14px;margin-bottom:8px}.table-more{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0;display:flex}.stock-toolbar .search,.stock-toolbar select{height:36px;padding:0 10px;font-size:13px}.stock-toolbar .inline-select{white-space:nowrap;align-items:center;gap:8px;font-weight:500;display:flex}.stock-toolbar .inline-select select,.stock-toolbar>select{width:auto}.stock-toolbar .toolbar-end{gap:6px}.column-menu{position:relative}.column-popover{z-index:30;border:1px solid var(--border);background:var(--card);border-radius:8px;gap:4px;width:270px;padding:8px 10px 6px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #001a1824}.column-popover-head{color:var(--muted-foreground);font-size:12px;font-weight:600}.column-popover ul{margin:0;padding:0;list-style:none;display:grid}.column-popover li{grid-template-columns:1fr 28px 28px;align-items:center;gap:4px;min-height:30px;display:grid}.column-popover li:hover{background:var(--accent)}.column-popover .check-inline{color:var(--foreground);padding:0 4px;font-size:13px}.stock-toolbar .column-popover button.column-step{border:1px solid var(--border);width:28px;height:26px;color:var(--foreground);background:var(--card);border-radius:6px;padding:0;font-size:14px;line-height:1}.stock-toolbar .column-popover button.column-step:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.stock-toolbar .column-popover button.column-step:disabled{cursor:default;opacity:.3}.stock-toolbar .column-popover button.column-reset{height:auto;padding:6px 0 2px;font-size:13px}@media (pointer:coarse){.column-popover li{grid-template-columns:1fr 40px 40px;min-height:40px}.stock-toolbar .column-popover button.column-step{width:40px;height:36px}}.more-menu{position:relative}.more-menu-list{z-index:30;border:1px solid var(--border);background:var(--card);border-radius:8px;min-width:200px;padding:4px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #001a1824}.more-menu-list button{height:34px;color:var(--foreground);text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:0 12px;font-size:13px}.more-menu-list button:hover:not(:disabled),.more-menu-list button:focus-visible{background:var(--accent)}.stock-table th .th-sort{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}.stock-table .stock-grn{font-variant-numeric:tabular-nums;font-weight:500}.stock-page>.table-wrap{max-height:max(360px,100dvh - 172px);overflow:auto}.stock-table{table-layout:fixed;width:100%;min-width:1040px}.stock-page .stock-table>thead>tr>th,.stock-page .stock-table>tbody>tr>td{white-space:nowrap;padding:6px 10px}.stock-table>thead>tr>th,.stock-table td.cut,.stock-table td.stock-name{text-overflow:ellipsis;overflow:hidden}.stock-table td.stock-name .table-link{text-overflow:ellipsis;white-space:nowrap;text-align:left;width:100%;font-size:inherit;color:var(--foreground);font-weight:600;display:block;overflow:hidden}.stock-table td.stock-name .table-link:hover{color:var(--primary)}.stock-table .num{min-width:0}.stock-col-article{width:15%}.stock-col-grn{width:150px}.stock-col-balance{width:98px}.stock-col-lots{width:76px}.stock-col-available{width:96px}.stock-col-reserved{width:92px}.stock-table td.stock-dim{color:var(--muted-foreground)}.stock-col-place{width:12%}.stock-col-warehouse{width:92px}.stock-col-purpose{width:104px}.stock-col-series{width:12%}.stock-col-type{width:126px}.stock-table td.stock-pin,.stock-table th.stock-pin{z-index:1;box-shadow:inset -1px 0 var(--border);position:sticky;left:0}.stock-table>thead>tr>th.stock-pin{z-index:3}.stock-table>tbody>tr.stock-group-row>td{color:#38504d;text-transform:none;letter-spacing:0;background:#e9f0ef;font-size:12.5px}.stock-group-label{position:sticky;left:10px}.stock-group-sum{color:var(--muted-foreground);font-weight:400}.stock-article-row.open td{background:#eaf6f4}.stock-table>tbody>tr.stock-cards-row>td{white-space:normal;background:#f6f8f8;padding:12px 16px}.stock-cards-row .lot-cards{box-sizing:border-box;max-width:calc(var(--detail-width,100%) - 32px);position:sticky;left:16px}@media (width<=1280px),(pointer:coarse) and (width<=1600px){.stock-page>.table-wrap{max-height:max(360px,100dvh - 224px)}}@media (pointer:coarse){.stock-table td.stock-name .table-link{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box}}.lot-cards{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.lot-card{border:1px solid var(--border);background:var(--card);white-space:normal;border-radius:12px;align-content:start;gap:8px;padding:12px 14px;display:grid}.lot-card.busy{opacity:.6}.lot-card-main{grid-template-columns:minmax(110px,max-content) minmax(110px,max-content);gap:12px 40px;display:grid}.lot-card-main>div{gap:2px;display:grid}.lot-card-big{font-size:20px;font-weight:700;line-height:1.2}.lot-card-main small,.lot-card-meta{color:var(--muted-foreground);font-size:12px}.lot-card-meta{flex-wrap:wrap;gap:4px 12px;margin:0;display:flex}.lot-card-actions{flex-wrap:wrap;gap:6px;display:flex}.mb-tiles{margin-top:4px}.mb-tile-extra{flex-wrap:wrap;gap:6px;margin-top:6px;font-size:12px;display:flex}.mb-tile-extra .mb-free,.mb-tile-extra .mb-done,.mb-launch{background:var(--accent);border-radius:6px;padding:1px 7px}.mb-tile-extra .mb-free{background:#fffaeb}.mb-tile-extra .mb-done{background:#e6f7f5}.mb-launch{color:#175cd3;background:#eff8ff}.mb-project-head .secondary{margin-right:4px}.kit-filters label{align-items:center;gap:8px;font-weight:500;display:inline-flex}.kit-filters select{width:auto}.kit-filters input[type=checkbox]{width:auto;margin:0}.kit-tiles{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.kit-tiles .kit-tile{min-height:0;padding:12px 14px}.kit-tiles .tile-body{gap:4px}.kit-tiles .t-h{font-size:15px}.kit-tiles .t-sub{font-size:12px}.lot-card-passport{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.4}.lot-card-actions .active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, white)}.stock-article-row{cursor:pointer}.stock-article-row:hover td{background:#eaf6f4}.update-banner{z-index:1000;border:1px solid var(--border,#e3e5eb);background:var(--card,#fff);border-radius:10px;align-items:flex-start;gap:12px;width:min(560px,100vw - 32px);max-height:40vh;padding:10px 14px;font-size:13px;display:flex;position:fixed;top:10px;left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 6px 24px #0000001f}.update-banner-body{flex:1;min-width:0}.update-banner ul{color:var(--muted-foreground);margin:4px 0 0;padding-left:18px}.update-failure{margin:0 0 14px}.update-failure-retry{opacity:.8}.update-failure-log{white-space:pre-wrap;word-break:break-word;max-height:220px;margin:6px 0 0;font:12px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.kit-card .page-head{margin-bottom:6px}.kit-meta{color:var(--muted-foreground);margin:0 0 10px;font-size:12.5px}.kit-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.kit-actions .secondary.small{border-radius:999px;padding:6px 14px;font-weight:500}.seg-tabs{background:#e9eeee;border-radius:12px;flex-wrap:wrap;gap:2px;margin:0 0 12px;padding:4px;display:inline-flex}.seg-tabs button{color:#4b5a58;background:0 0;border:0;border-radius:9px;padding:7px 14px;font-size:13px;font-weight:600}.seg-tabs button:hover{color:var(--foreground)}.seg-tabs button.on{background:var(--card);color:var(--primary);box-shadow:0 1px 3px #001a181f}.kit-sostav{width:fit-content;max-width:100%}.kit-sostav table{width:auto}.kit-sostav tbody tr{cursor:pointer}.kit-sostav td.wrap{white-space:normal;min-width:260px;max-width:520px}.kit-sostav th.num,.kit-sostav td.num{text-align:right}.kit-sostav select{border-radius:6px;width:auto;min-width:130px;padding:3px 6px;font-size:12.5px}.kit-sostav .link-button{padding:0}.kit-file{border:1px solid var(--border);background:var(--card);border-radius:6px;padding:1px 8px;font-size:12px}.etk-sheet{gap:12px;display:grid}.etk-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.etk-title{flex-wrap:wrap;align-items:baseline;gap:8px;margin-right:auto;font-size:14px;display:flex}.etk-title .muted{font-size:12.5px}.etk-schema{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:8px 12px}.etk-schema summary,.etk-revs summary,.etk-warnings summary,.gen-more summary{cursor:pointer;font-size:13px;font-weight:600}.etk-harness{justify-content:center;display:flex;overflow-x:auto}.etk-harness svg{width:100%;max-width:900px;height:auto}.etk-warnings{color:#74451f;background:#fff3dd;border-radius:10px;padding:8px 12px;font-size:12.5px}.etk-warnings>div{white-space:pre-line;margin-top:4px}.etk-revs{font-size:12.5px}.etk-revs>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:5px 0;display:flex}.etk-sheet .etk-wrap{grid-template-columns:minmax(210px,250px) minmax(0,1fr)}.etk-sheet .etk-nav-route button{padding:8px 10px;font-size:13px}.etk-route{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:8px 12px 10px}.etk-route-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:13px;display:flex}.etk-route-head small{color:var(--muted-foreground);font-size:12px}.etk-route-chips{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.etk-route-chip{border:1px solid var(--border);background:var(--card);max-width:320px;color:var(--foreground);text-align:left;border-radius:8px;align-items:flex-start;gap:8px;padding:6px 10px;font-size:13px;display:flex}.etk-route-chip:hover:not(:disabled){border-color:var(--primary)}.etk-route-chip.on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.etk-route-chip:disabled{cursor:default;opacity:1}.etk-route-n{min-width:18px;color:var(--primary);text-align:center;flex:none;font-weight:800}.etk-route-text{gap:2px;min-width:0;display:grid}.etk-route-text small{color:var(--muted-foreground);font-size:12px}.etk-route-meta>span{white-space:nowrap}.etk-route-feed{overflow-wrap:anywhere}.etk-route-final{background:color-mix(in srgb, var(--primary) 16%, transparent);color:var(--foreground);border-radius:999px;flex:none;align-self:center;padding:1px 7px;font-size:11px;font-style:normal;font-weight:700}.etk-op{border:1px solid var(--border);background:var(--card);border-radius:12px;gap:14px;padding:16px 18px;display:grid}.etk-op-head{align-items:flex-start;gap:12px;display:flex}.etk-op-head>div{flex:1;gap:3px;min-width:0;display:grid}.etk-op-head h3{margin:0;font-size:18px;font-weight:600}.etk-op-head .etk-conn{color:var(--muted-foreground);font-weight:500}.etk-op-head small{color:var(--muted-foreground);font-size:12px}.etk-op-head code{color:#0e6f68;font-weight:600}.etk-op .etk-chips{margin:0}.etk-op .etk-flow{border:1px solid var(--border);border-radius:10px;grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:0;margin:0;overflow:hidden}.etk-op .etk-block{border-left:1px solid var(--border);background:0 0;border-radius:0;padding:10px 12px;font-size:12.5px}.etk-op .etk-block:first-child{border-left:0}.etk-op .etk-block>strong{color:var(--muted-foreground);font-size:12px;font-weight:600}.etk-op .etk-block>span{border-top:0;padding-top:0}.etk-sec h4{margin:0 0 8px;font-size:13px;font-weight:700}.etk-op .etk-steps{gap:6px;margin:0;padding-left:22px}.etk-op .etk-steps li{font-size:13px;line-height:1.45}.etk-op .etk-steps li.ctl{background:#fdf4f4;border-left:3px solid #d93025;border-radius:0 6px 6px 0;padding:4px 8px}.etk-op .etk-steps li>span{color:#b91c1c;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.etk-op .etk-fig{border:1px solid var(--border);border-radius:10px;justify-content:center;padding:8px;display:flex}.etk-fig-row{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.etk-fig-row>.etk-fig{flex:520px}.etk-sketch{border:1px dashed var(--border);border-radius:10px;outline:none;flex:320px;align-content:start;gap:8px;padding:8px;display:grid}.etk-sketch:focus-visible,.etk-sketch:focus{border-color:var(--primary)}.etk-sketch img{background:#fff;border-radius:6px;max-width:100%;max-height:520px;margin:0 auto;display:block}.etk-sketch-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.conn-base{gap:12px;display:grid}.conn-base svg{max-width:100%;height:auto;display:block}.conn-warn{color:var(--tone-danger)}.conn-muted{color:var(--muted-foreground);font-size:12px}.conn-cats{margin:0}.conn-sections{gap:14px;display:grid}.conn-section h3{margin:0 0 6px;font-size:14px}.conn-section h3 .muted{font-weight:400}.conn-series-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;display:grid}.conn-maker{color:var(--muted-foreground);border-bottom:1px solid var(--border);grid-column:1/-1;margin-top:4px;padding-bottom:2px;font-size:12px;font-weight:600}.conn-maker:first-child{margin-top:0}.conn-sources{flex-wrap:wrap;align-items:baseline;gap:4px 14px;font-size:13px;display:flex}.conn-sources a{color:var(--primary)}.conn-jump{cursor:pointer;border:0;font-family:inherit}.conn-jump:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.conn-series{border:1px solid var(--border);background:var(--card);min-height:72px;color:var(--foreground);text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:96px 1fr;align-items:center;gap:10px;padding:8px 10px;display:grid}.conn-series:hover,.conn-series:focus-visible{border-color:var(--primary);background:var(--accent)}.conn-series-pic{justify-content:center;align-items:center;height:56px;display:flex}.conn-series-pic svg{width:auto;max-height:56px}.conn-series-text{gap:1px;min-width:0;display:grid}.conn-series-text b{font-size:14px}.conn-series-text small{color:var(--muted-foreground);font-size:12px}.conn-series-text small.conn-warn{color:var(--tone-danger)}.conn-series-text small.tone-warn{color:var(--tone-warn)}.conn-series-head{flex-wrap:wrap;align-items:baseline;gap:6px 14px;display:flex}.conn-series-head h2{margin:0;font-size:18px}.conn-series-head a{color:var(--primary);font-weight:600}.conn-facts{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:6px;display:flex}.conn-series-view{gap:12px;display:grid}.conn-variant h3{margin:4px 0 8px;font-size:14px}.conn-variant h3 .muted{font-weight:400}.conn-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;display:grid}.conn-grid-wide{grid-template-columns:repeat(auto-fill,minmax(440px,1fr));margin-top:8px}.conn-grid-wide .conn-face svg{max-height:150px}.conn-housing{border:1px solid var(--border);background:var(--card);border-radius:10px;grid-template-columns:1fr 130px;grid-template-areas:"head model""face face""boards boards";align-items:center;gap:4px 10px;padding:8px 10px;display:grid}.conn-housing.conn-hit{border-color:var(--primary);box-shadow:0 0 0 2px var(--accent)}.conn-housing-head{flex-wrap:wrap;grid-area:head;align-self:start;align-items:baseline;gap:8px;display:flex}.conn-housing-head b{font-size:13px}.conn-housing-head span{color:var(--muted-foreground);font-size:12px}.conn-housing-head small{font-size:12px}.conn-housing-model{grid-area:model;justify-content:center;display:flex}.conn-housing .conn-face{grid-area:face;justify-content:center;display:flex}.conn-housing .conn-face svg{width:auto;max-height:120px}.conn-housing-model svg{width:auto;max-height:84px}.conn-headers{color:var(--foreground);flex-wrap:wrap;grid-area:boards;gap:2px 12px;font-size:12px;display:flex}.conn-headers i{color:var(--muted-foreground);font-style:normal}.conn-base .warning-inline .conn-grid{margin-top:8px}.etk-op .tr-tooling{border:1px solid var(--border);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;display:grid;overflow:hidden}.etk-op .tr-tooling .tr-sec{border-left:1px solid var(--border);align-content:start;margin:0;padding:10px 12px}.etk-op .tr-tooling .tr-sec:first-child{border-left:0}.etk-sec h4{align-items:center;gap:8px;display:flex}.etk-sec-n{color:#00554f;background:#e0efed;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;font-weight:800;display:inline-grid}.etk-safety{background:#fff8e1;border:1px solid #f3d27a;border-radius:10px;padding:8px 12px;font-size:12.5px}.etk-safety summary{cursor:pointer;color:#8a5a00;font-weight:700}.etk-safety>div{white-space:pre-line;margin-top:6px;line-height:1.45}.etk-solder{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.etk-solder>div{background:#fff4f0;border:1px solid #f0b8a8;border-radius:10px;gap:2px;min-width:220px;padding:8px 12px;font-size:13px;display:grid}.etk-solder small{color:#9a3412;font-size:11px}.etk-assumed{color:#92400e;cursor:help;background:#fef3c7;border-radius:999px;justify-self:start;padding:1px 6px;font-size:11px}.etk-fold>summary{cursor:pointer;list-style:none}.etk-fold>summary::-webkit-details-marker{display:none}.etk-fold>summary h4:after{content:"▾";color:var(--muted-foreground);font-weight:400}.etk-fold:not([open])>summary h4:after{content:"▸"}.etk-fold:not([open])>summary h4{margin-bottom:0}.etk-def-intro{color:var(--muted-foreground);margin-bottom:8px;font-size:11.5px;display:block}.etk-def-group{gap:6px;margin-bottom:10px;display:grid}.etk-def-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:8px;display:grid}.etk-def{border:1px solid var(--border);background:var(--card);border-radius:8px;align-content:start;gap:6px;padding:8px 10px 10px;display:grid}.etk-def-pic{line-height:0}.etk-def-pic>svg{width:100%;max-width:460px;height:auto}.etk-def-pic>svg[data-scene=generic]{width:64px}.etk-def b{font-size:12.5px;display:block}.etk-def small{color:var(--muted-foreground);margin-top:2px;font-size:11.5px;line-height:1.4;display:block}.etk-def-text{white-space:pre-line;font-size:12.5px}.etk-result{grid-template-columns:minmax(0,960px) minmax(240px,320px);align-items:start;gap:10px;display:grid}.etk-marks{border-collapse:collapse;border:1px solid var(--border);width:100%;margin-bottom:10px;font-size:13px}.etk-marks caption{text-align:left;color:var(--foreground);padding:0 0 4px;font-size:12px;font-weight:700}.etk-marks th{text-align:left;color:var(--muted-foreground);background:var(--accent);white-space:nowrap;padding:6px 10px;font-size:12px;font-weight:600}.etk-marks td{border-top:1px solid var(--border);vertical-align:top;padding:6px 10px}.etk-marks .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;width:1%}.etk-marks td.num:not(:first-child){font-weight:600}.etk-result-table{border-collapse:collapse;border:1px solid var(--border);border-radius:10px;width:100%;font-size:13px;overflow:hidden}.etk-result-table th{text-align:left;color:var(--muted-foreground);background:var(--accent);padding:6px 12px;font-size:12px;font-weight:600}.etk-result-table td{border-top:1px solid var(--border);vertical-align:top;padding:7px 12px}.etk-result-table .num,.etk-time .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.etk-result-table th:not(:first-child){text-align:right;white-space:nowrap;width:1%}.etk-links{width:auto;min-width:640px;margin:8px auto 0}.etk-links th:not(:first-child){text-align:left;width:auto}.etk-links th:first-child,.etk-links th:nth-child(4),.etk-links th:nth-child(6){text-align:right}.etk-links td{padding:4px 12px}.etk-fig{border:1px solid var(--border);background:var(--card);border-radius:10px;align-content:start;gap:2px;padding:8px 14px;display:grid}.etk-fig>small{color:var(--muted-foreground);font-size:12px;font-weight:600}.etk-fig>b{font-variant-numeric:tabular-nums;font-size:18px;line-height:1.2}.etk-fig>b>span{color:var(--muted-foreground);white-space:nowrap;font-size:13px;font-weight:600}.etk-time ul{border-top:1px solid var(--border);gap:3px;margin:6px 0 0;padding:6px 0 0;font-size:12px;list-style:none;display:grid}.etk-time li{justify-content:space-between;gap:8px;display:flex}.etk-result-one{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.etk-result-name{flex:260px;align-content:start;gap:2px;padding:8px 0;font-size:14px;font-weight:600;display:grid}.etk-result-name>small{color:var(--muted-foreground);font-size:12px}.etk-figs{flex:0 460px;grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px;display:grid}.etk-result:not(:has(.etk-result-table)):not(.etk-result-one){grid-template-columns:minmax(220px,280px)}@media (width<=1100px){.etk-result{grid-template-columns:1fr}.etk-op .etk-flow{grid-auto-flow:row}.etk-op .etk-block{border-left:0;border-top:1px solid var(--border)}}.seg-tabs.sub{margin-bottom:8px}.gen-pane{gap:10px;display:grid;container-type:inline-size}.gen-more{color:var(--muted-foreground);gap:8px;margin-right:auto;display:grid}.gen-more[open]{color:var(--foreground)}.gen-more>.secondary{justify-self:start}.gen-more .build-config{border:0;min-width:min(640px,70vw);margin:0;padding:0}.iss-tiles{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.iss-tiles .iss-tile{cursor:pointer;min-height:0;padding:14px 16px}.iss-tile .tile-body{gap:6px}.iss-tile .t-row{align-items:baseline;gap:8px;display:flex}.iss-tile .t-row .t-sub{white-space:nowrap;margin-left:auto}.iss-tile .t-in{font-size:13px}.iss-tile .t-warn{color:#b45309;font-size:12.5px}.iss-chip-wrap{align-items:center;gap:3px;display:inline-flex}.fulfillment-open{justify-items:start;gap:10px;display:grid}.fulfillment-open>.fulfillment-card{justify-self:stretch}.proj-status{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex;position:relative}.proj-status-btn{cursor:pointer;font:inherit;background:0 0;border:0;border-radius:999px;padding:0;display:inline-flex}.proj-status-btn:hover .status-chip{box-shadow:inset 0 0 0 1px}.proj-status-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.proj-status-caret{margin-left:2px;font-size:10px}.psm-item[data-tone=success]{color:var(--chip-success-fg)}.psm-item[data-tone=info]{color:var(--chip-info-fg)}.psm-item[data-tone=warning]{color:var(--chip-warning-fg)}.psm-item[data-tone=danger]{color:var(--chip-danger-fg)}.psm-item[data-tone=neutral]{color:var(--chip-neutral-fg)}.proj-status-menu{z-index:40;border:1px solid var(--border);background:var(--card,#fff);cursor:default;border-radius:10px;gap:6px;width:min(420px,86vw);padding:10px 12px 12px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #00000024}.psm-head{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);margin-top:2px;font-size:11px;font-weight:700}.psm-row{flex-wrap:wrap;gap:5px;display:flex}.psm-item{border:1px solid var(--border);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:3px 10px;font-size:12px}.psm-item:hover:not(:disabled){border-color:currentColor}.psm-item.on{font-weight:700;box-shadow:inset 0 0 0 2px}.psm-reason{gap:6px;display:flex}.psm-reason input{flex:1;min-width:0}.psm-error{color:#b91c1c;font-size:12px}.kit-head{align-items:center;gap:12px}.kit-head .status-chip{height:24px;padding:0 10px;font-size:13px;line-height:24px}.kit-blocker{border-left:3px solid var(--chip-danger-fg);background:var(--chip-danger-bg);color:var(--foreground);border-radius:0 6px 6px 0;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 8px;padding:6px 10px;font-size:13px;display:flex}.kit-journal-form{align-items:flex-start;gap:8px;margin-bottom:12px;display:flex}.kit-journal-form select{flex:0 0 180px;width:180px}.kit-journal-form input[type=date]{flex:0 0 160px;width:160px}.kit-journal-form .auto-textarea{flex:1;min-width:0}.kit-journal-form button{flex:none}@media (width<=700px){.kit-journal-form{flex-wrap:wrap}.kit-journal-form .auto-textarea{flex-basis:100%}}.kit-journal-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.kit-journal-list li{border-bottom:1px solid var(--border);grid-template-columns:96px minmax(160px,auto) 1fr auto;align-items:baseline;gap:10px;padding:6px 8px;font-size:13px;display:grid}.kit-journal-list time,.kit-journal-list small{color:var(--muted-foreground);font-size:12px}@media (width<=700px){.kit-journal-list li{grid-template-columns:1fr;gap:2px}}.plan-drawer{z-index:45;position:fixed;inset:0}.plan-drawer-scrim{background:#001a1840;position:absolute;inset:0}.plan-drawer-body{overscroll-behavior:contain;background:var(--background,#f6f8f8);width:min(620px,100vw);padding:12px;position:absolute;top:0;bottom:0;right:0;overflow:auto;box-shadow:-8px 0 30px #00000026}.plan-details-close{z-index:1;position:absolute;top:18px;right:18px}.plan-drawer-body .plan-detail-head{padding-right:96px}.psm-note{color:var(--muted-foreground);font-size:12px}.mb-week-nav{gap:4px;margin-left:auto;display:flex}.mb-week-nav .small{padding:3px 9px}.mb-week{border-collapse:separate;border-spacing:2px;table-layout:fixed;width:100%;font-size:12px}.mb-week thead th{color:var(--muted-foreground);text-align:center;padding:2px 0;font-weight:500;line-height:1.2}.mb-week thead th span{font-size:11px;display:block}.mb-week thead th:first-child{text-align:left;width:36%}.mb-week thead th.off{color:#98a2b3}.mb-week thead th.today{color:var(--primary);font-weight:700}.mb-week tbody th{text-align:left;padding:3px 4px;font-weight:400;line-height:1.2;overflow:hidden}.mb-week tbody th b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.mb-week tbody th small{color:var(--muted-foreground);font-size:11px}.mb-week tr.on th b{color:var(--primary)}.mb-cell{text-align:center;background:var(--accent);font-variant-numeric:tabular-nums;border-radius:5px;height:30px;padding:0}.mb-cell>button,.mb-cell>span{all:unset;box-sizing:border-box;border-radius:5px;justify-content:center;align-items:center;width:100%;height:100%;min-height:30px;display:flex}.mb-cell>button{cursor:pointer}.mb-cell>button:hover,.mb-cell>button:focus-visible{outline:2px solid var(--primary)}.mb-cell.free{background:#f2f4f7}.mb-cell.low{background:#d1f2ec}.mb-cell.full{background:#7fd6c7}.mb-cell.over{color:#7a271a;background:#fda29b;font-weight:600}.mb-cell.off{background:repeating-linear-gradient(135deg,#f2f4f7 0 4px,#fff 4px 8px)}.mb-cell.absent{color:#b42318;background:repeating-linear-gradient(135deg,#fee4e2 0 4px,#fff 4px 8px);font-size:11px}.mb-cell.today{box-shadow:inset 0 0 0 1px var(--primary)}.mb-legend{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:8px;font-size:11px;display:flex}.mb-legend .mb-cell{justify-content:center;align-items:center;width:26px;height:18px;font-size:11px;display:inline-flex}.mb-chip{align-items:center;gap:2px;display:inline-flex}.mb-chip-x{all:unset;cursor:pointer;color:var(--muted-foreground);border-radius:4px;padding:0 3px;font-size:13px;line-height:1}.mb-chip-x:hover{color:#b42318;background:#fee4e2}.mb-plan{color:var(--muted-foreground);font-size:12px}.mb-ops th:nth-child(5),.mb-ops td:nth-child(5){width:170px}.mb-ops th:nth-child(2){width:36%}@media (width<=1600px){.mb-week thead th:first-child{width:190px}}.mb-week th{text-transform:none;letter-spacing:0}.mb-cell.picked{box-shadow:inset 0 0 0 2px var(--foreground)}.mb-cell.free>button{color:#667085}.mb-cell.off>span{color:#98a2b3;font-size:11px}.mb-day-row>td{padding:2px 0 8px}.mb-day{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:8px 10px}.mb-day-head{align-items:baseline;gap:10px;margin-bottom:6px;font-size:13px;display:flex}.mb-day-head span{color:var(--muted-foreground);font-size:12px}.mb-day-close{all:unset;cursor:pointer;color:var(--muted-foreground);margin-left:auto;padding:0 6px;font-size:18px;line-height:1}.mb-hours{grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:3px;display:grid}.mb-hour{background:#f2f4f7;border-radius:5px;flex-direction:column;min-height:46px;font-size:12px;display:flex;overflow:hidden}.mb-hour>button,.mb-hour>span{all:unset;box-sizing:border-box;font-variant-numeric:tabular-nums;padding:4px 4px 0;font-weight:600}.mb-hour>button{cursor:pointer;color:var(--primary)}.mb-hour:has(>button:hover){outline:2px solid var(--primary)}.mb-hour small{color:var(--muted-foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:0 4px 4px;font-size:10px;line-height:1.15;display:-webkit-box;overflow:hidden}.mb-hour.busy{background:#7fd6c7}.mb-hour.busy small{color:#0b4a40}.mb-hour.own{box-shadow:inset 0 0 0 2px var(--primary);background:#7fd6c7}.mb-hour.own small{color:#0b4a40}.mb-hour.rest{background:repeating-linear-gradient(135deg,#f2f4f7 0 4px,#fff 4px 8px)}.mb-hour.past{opacity:.5}.mb-day-hint{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:12px;display:flex}@media (pointer:coarse){.mb-hour{min-height:48px}.mb-cell{height:40px}}.mb-hour.busy>button,.mb-hour.busy>span{color:#0b4a40}.mb-pieces{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 2px;font-size:12px;display:flex}.mb-pieces input{font-variant-numeric:tabular-nums;width:88px;padding:4px 8px;font-size:13px}.mb-chip.done{color:#067647;background:#ecfdf3}.mb-until,.mb-placed{color:var(--foreground);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.mb-handed{color:#93370d;background:#fef0c7;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.mb-handed-text{color:#93370d;font-size:12px}.mb-task-head .secondary.small{margin-left:auto}tr .row-action{visibility:hidden}tr:hover .row-action,tr:focus-within .row-action,tr.open .row-action{visibility:visible}@media (pointer:coarse){tr .row-action{visibility:visible}}.row-action-cell{white-space:nowrap;text-align:right;width:1%}.row-action-cell .row-actions{gap:6px;display:inline-flex}.table-wrap tr.clickable{cursor:pointer}.table-wrap tr.clickable:hover td{background:var(--accent)}.staff-departments .staff-dep-body{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:24px;padding:0 16px 16px;display:grid}@media (width<=1100px){.staff-departments .staff-dep-body{grid-template-columns:minmax(0,1fr)}}.staff-dep-list,.staff-dep-heads{gap:8px;min-width:0;display:grid}.staff-dep-list h3,.staff-dep-heads h3{margin:0;font-size:14px;font-weight:600}.staff-dep-list textarea{resize:vertical;width:100%}.staff-dep-rename{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.staff-dep-heads .table-wrap{max-height:320px;overflow-y:auto}.staff-dep-heads th,.staff-dep-heads td{padding:4px 12px}.staff-dep-heads tr.selected td{background:var(--accent)}.staff-dep-rename select{flex:150px;width:auto;min-width:0}.staff-dep-rename input{flex:180px;width:auto;min-width:0}.staff-dep-rename button{flex:none}.staff-page td.tab-no{white-space:nowrap}@media (width>=721px){.staff-form>.pair{grid-column:span 2}}.staff-form>.staff-flags{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:4px 32px;min-height:38px;display:flex}.staff-flags .staff-switch{color:var(--foreground);cursor:pointer;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.staff-switch input{appearance:none;background:var(--switch-off);cursor:pointer;border:0;border-radius:999px;flex:none;width:30px;height:18px;min-height:0;margin:0;padding:0;transition:background .15s;position:relative}.staff-switch input:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.staff-switch input:checked{background:var(--primary)}.staff-switch input:checked:before{transform:translate(12px)}.staff-switch input:focus{box-shadow:none}.staff-switch input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (pointer:coarse){.staff-flags .staff-switch{min-height:40px}}.staff-form-block>h3{color:var(--foreground);letter-spacing:.06em;text-transform:uppercase;margin:0;padding:4px 20px 10px;font-size:12px;font-weight:700}.staff-form-block+.staff-form-block{border-top:1px solid var(--border);margin:0 20px;padding-top:16px}.staff-form-block+.staff-form-block>h3{padding:0 0 10px}.staff-form-block+.staff-form-block>.form-grid{padding-left:0;padding-right:0}#staff-edit-form>.form-actions{padding:0 20px 18px}.operations-queue{color:var(--muted-foreground);margin-left:auto;font-size:13px}.rg-form{gap:10px;min-width:0;padding:0 20px 14px;display:grid}.request-form,.rg{min-width:0}.rg-common{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:10px 12px 12px}.rg-common-title{margin-bottom:8px;font-size:13px;font-weight:700}.rg-common-title span{color:var(--muted-foreground);font-weight:400}.rg-common-grid{grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;gap:8px 12px;display:grid}.rg-common-grid .rg-point{grid-column:span 2}.rg-common-grid input,.rg-common-grid select{padding:6px 9px}.rg-hint{color:var(--muted-foreground);margin:0;font-size:12.5px}.rg-bulk{flex-wrap:wrap;align-items:end;gap:8px 14px;padding:0 0 8px;display:flex}.rg-bulk label{min-width:150px}.rg-bulk input,.rg-bulk select{padding:6px 9px}.rg-scroll{border:1px solid var(--border);background:var(--card);border-radius:10px;min-height:220px;max-height:calc(100vh - 500px);overflow:auto}.rg-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:1500px;font-size:13px}.rg-table th{z-index:2;background:var(--accent);border-bottom:1px solid var(--border);white-space:nowrap;padding:7px 6px;font-size:11px;position:sticky;top:0}.rg-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);white-space:nowrap;padding:0}.rg-table tbody tr:nth-child(2n){background:color-mix(in srgb, var(--accent) 35%, transparent)}.rg-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 7%, transparent)}.rg-table input,.rg-table select{text-overflow:ellipsis;background:0 0;border:0;border-radius:0;height:30px;padding:0 6px;font-size:13px}.rg-table input:focus,.rg-table select:focus{background:var(--card);box-shadow:inset 0 0 0 2px var(--primary)}.rg-table .rg-bad{background:#fde8e8;box-shadow:inset 0 0 0 1px #b91c1c}.rg-table .rg-bad:focus{box-shadow:inset 0 0 0 2px #b91c1c}.rg-row-bad .rg-no{color:#b91c1c;font-weight:700}.rg-no{width:58px;color:var(--muted-foreground);text-align:right;font-variant-numeric:tabular-nums;padding:0 6px!important}.rg-own{color:var(--primary);text-align:right;cursor:help;font-size:10px;line-height:1.1;display:block}.rg-own-bad{color:#b91c1c}.rg-col-name{width:24%}.rg-col-item_type{width:132px}.rg-col-design_article{width:120px}.rg-col-quantity{width:74px}.rg-col-unit{width:64px}.rg-col-category{width:104px}.rg-col-planned_date{width:126px}.rg-col-link{width:140px}.rg-col-price,.rg-col-price_with_vat{width:86px}.rg-col-comment{width:16%}.rg-table td.rg-col-quantity input,.rg-table td.rg-col-price input,.rg-table td.rg-col-price_with_vat input{text-align:right}.rg-act{text-align:right;width:112px;padding:0 6px!important}.rg-table tbody .rg-act .rg-link{opacity:0}.rg-table tbody tr:hover .rg-act .rg-link,.rg-table tbody tr:focus-within .rg-act .rg-link{opacity:1}.rg-link{color:var(--primary);background:0 0;border:0;padding:2px 4px;font-size:12px;font-weight:600}.rg-link:hover{text-decoration:underline}.rg-bar{z-index:5;border:1px solid var(--border);background:var(--card);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:8px;padding:9px 12px;font-size:13px;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 12px #001a180f}.rg-errors{color:#b91c1c;font-weight:600}.rg-errors .rg-link{color:#b91c1c;margin-left:8px}.rg-spacer{flex:auto}@media (width<=1700px){.rg-common-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (pointer:coarse){.rg-table input,.rg-table select{height:40px}.rg-table tbody .rg-act .rg-link{opacity:1;padding:10px 6px}}.inwork-scroll{border:1px solid var(--border);border-radius:6px;overflow-x:auto}.inwork-table{border-collapse:collapse;width:100%;font-size:13px}.inwork-table th{background:var(--accent);text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);padding:4px 6px;font-weight:600;position:sticky;top:0}.inwork-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:1px 4px}.inwork-table input,.inwork-table select{box-sizing:border-box;width:100%;height:24px;padding:0 6px;font-size:13px}.stock-picker{gap:6px;display:grid}.stock-search{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stock-search input{min-width:260px;height:26px}.stock-search.bind-search{max-width:none}.stock-search.bind-search input{width:360px}.stock-reserve{align-items:end;gap:8px;display:flex}.stock-reserve input{width:110px;height:26px}.stock-lots tr.muted{color:var(--muted-foreground)}.stock-lots td.num{text-align:right;font-variant-numeric:tabular-nums}.stock-note{color:var(--primary)}.inwork-table td small,.inwork-table td strong{margin:0;display:inline}.buy-scroll{border:1px solid var(--border);background:var(--card);border-radius:8px;margin:0 16px 16px;overflow-x:auto}.work-list>*{min-width:0}.buy-grid{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;min-width:1000px;font-size:13px}.buy-grid col.c-sel{width:34px}.buy-grid col.c-pos{width:25%}.buy-grid col.c-supplier{width:124px}.buy-grid col.c-site{width:10.5%}.buy-grid col.c-qty{width:72px}.buy-grid col.c-unit{width:56px}.buy-grid col.c-article{width:96px}.buy-grid col.c-price{width:92px}.buy-grid col.c-link{width:108px}.buy-grid col.c-note{width:9%}.buy-grid col.c-menu{width:170px}@media (width<=1700px){.buy-grid col.c-pos{width:20%}.buy-grid col.c-supplier{width:100px}.buy-grid col.c-site{width:9%}.buy-grid col.c-qty{width:64px}.buy-grid col.c-unit{width:50px}.buy-grid col.c-article,.buy-grid col.c-price{width:76px}.buy-grid col.c-link{width:88px}.buy-grid col.c-menu{width:150px}}@media (width>=1900px){.buy-grid col.c-pos{width:24%}.buy-grid col.c-supplier{width:170px}.buy-grid col.c-site{width:14%}.buy-grid col.c-qty{width:80px}.buy-grid col.c-unit{width:62px}.buy-grid col.c-article{width:130px}.buy-grid col.c-price{width:110px}.buy-grid col.c-link{width:150px}.buy-grid col.c-note{width:14%}}.buy-grid th{z-index:2;background:var(--sheet-head);color:#3d4a5c;letter-spacing:0;text-transform:none;text-align:left;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid var(--border);border-right:1px solid var(--sheet-line);height:30px;padding:0 8px;font-size:12px;font-weight:600;position:sticky;top:0;overflow:hidden}.buy-grid th.required:after{content:"";background:var(--primary);vertical-align:middle;border-radius:50%;width:5px;height:5px;margin-left:5px;display:inline-block}.buy-grid td{height:var(--sheet-row);border-bottom:1px solid var(--sheet-line);border-right:1px solid var(--sheet-line);background:var(--card);vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;padding:0;overflow:hidden}.buy-grid tr>:last-child{border-right:0}.buy-grid tbody tr:last-child>td{border-bottom:0}.buy-grid input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary);cursor:pointer;margin:0 auto;padding:0;display:block}.buy-grid .sel{z-index:1;text-align:center;position:sticky;left:0}.buy-grid .pos{z-index:1;box-shadow:inset -1px 0 var(--border);position:sticky;left:34px}.buy-grid th.sel,.buy-grid th.pos{z-index:3}.buy-grid td.pos{padding:0 8px}.pos-main,.pos-sub{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.pos-main{font-size:12.5px;line-height:15px}.pos-main strong{font-weight:700;display:inline}.pos-sub{color:var(--muted-foreground);font-size:11px;line-height:13px}.pos-sub .chip{border-radius:4px;margin-right:5px;padding:0 5px;font-size:10.5px;font-weight:600;line-height:13px;display:inline-block}.pos-sub .chip.tone-ok{background:#e3f5e8}.pos-sub .chip.tone-danger{background:#fde8e8}.pos-sub .filling{margin-right:5px;font-style:italic}.buy-grid td.edit{background:var(--sheet-edit)}.buy-grid td.edit:hover{box-shadow:inset 0 0 0 1px var(--sheet-hover)}.buy-grid td.edit:focus-within{box-shadow:inset 0 0 0 2px var(--primary);background:var(--card)}.buy-grid td.dirty{background:var(--sheet-dirty)}.buy-grid td.invalid{box-shadow:inset 0 0 0 1.5px var(--sheet-invalid);background:var(--sheet-invalid-bg)}.buy-grid tbody tr:hover>td:not(.edit):not(.dirty){background:#f6fafa}.buy-grid tr.selected>td,.buy-grid tr.selected:hover>td{background:var(--sheet-selected)}.buy-grid tr.edited>td.sel{box-shadow:inset 3px 0 0 var(--primary)}td.group-cell{background:var(--accent);height:32px;color:var(--foreground);border-bottom:1px solid var(--border);padding:0 10px}.group-line{flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0;display:flex}.group-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.group-meta{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.buy-grid tr.fold-head{cursor:pointer}.buy-grid tr.fold-head:hover>td.group-cell{background:color-mix(in srgb, var(--primary) 8%, var(--accent))}.group-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-left:auto;display:inline-flex}.buy-grid tbody tr.group-row:hover>td.group-cell:not(.edit):not(.dirty){background:var(--accent)}.buy-grid td.num.ro{text-align:right;font-variant-numeric:tabular-nums}.cell-input,.cell-select{width:100%;height:calc(var(--sheet-row) - 1px);color:var(--foreground);text-overflow:ellipsis;background:0 0;border:0;border-radius:0;margin:0;padding:0 8px;font-size:13px;display:block}.cell-input:focus,.cell-select:focus{box-shadow:none;border:0;outline:none}.buy-grid td.num .cell-input,.buy-grid td.num .cell-ro{text-align:right;font-variant-numeric:tabular-nums}.cell-select{appearance:none;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='6' viewBox='0 0 9 6'%3E%3Cpath d='M1 1l3.5 3.5L8 1' fill='none' stroke='%235f6b85' stroke-width='1.4'/%3E%3C/svg%3E") right 7px center no-repeat;padding-right:20px}.cell-ro{text-overflow:ellipsis;white-space:nowrap;padding:0 8px;display:block;overflow:hidden}.link-cell{height:calc(var(--sheet-row) - 1px);display:block;position:relative}.link-cell .cell-text{width:100%;color:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;background:0 0;border:0;padding:0 8px;font-size:13px;position:absolute;inset:0;overflow:hidden}.link-cell .cell-text:focus-visible{outline:none}.link-cell .cell-text.soft-warn{color:#a16207}.link-host{z-index:1;max-width:calc(100% - 16px);color:var(--primary);line-height:calc(var(--sheet-row) - 1px);vertical-align:top;text-overflow:ellipsis;white-space:nowrap;margin:0 8px;text-decoration:none;display:inline-block;position:relative;overflow:hidden}.link-host:hover{text-decoration:underline}.buy-grid td.note{padding:2px 4px}.buy-grid td.note .cell-edit{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.buy-grid td.note .cell-edit-input{min-width:0}.buy-grid td.note .cell-edit-empty{visibility:hidden}.buy-grid td.menu{text-align:center}.procurement-stage td .row-menu>button{height:24px;color:var(--muted-foreground);background:0 0;border:0;padding:0 8px;font-size:15px;line-height:1}.procurement-stage td .row-menu>button:hover{background:var(--accent);color:var(--foreground)}.buy-grid tr.buy-detail>td{white-space:normal;background:var(--background);height:auto;padding:10px 14px;overflow:visible}.buy-grid.order-lines{table-layout:auto;min-width:0}.buy-grid.order-lines td{padding:0 8px}@media (pointer:coarse){:root{--sheet-row:40px}.buy-grid input[type=checkbox]{width:20px;height:20px}.procurement-stage td .row-menu>button{min-width:40px;height:36px}}.panel-heading h2 .stage-count{background:var(--accent);color:var(--muted-foreground);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:12px;font-weight:600}.heading-actions{align-items:center;gap:12px;display:flex}.work-list>.section-title{margin:4px 0 -4px 2px}.stage-head{justify-content:flex-start;align-items:center;gap:10px;padding:12px 16px 10px}.stage-head h2{white-space:nowrap}.stage-head .stage-toggle{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.stage-head .stage-toggle .caret{width:12px;color:var(--muted-foreground);font-size:12px}.stage-head .stage-toggle:hover .caret,.stage-head .stage-toggle:focus-visible .caret{color:var(--primary)}.stage-head .stage-help{border:1px solid var(--border);width:18px;height:18px;color:var(--muted-foreground);cursor:help;border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:inline-grid}.stage-head .stage-help:hover,.stage-head .stage-help:focus-visible{border-color:var(--primary);color:var(--primary);outline:none}.stage-head .heading-actions{gap:8px;margin-left:auto}.stage-head .dirty-note{color:#8a5a00;font-size:12px}.stage-empty{color:var(--muted-foreground);margin:0;padding:0 16px 14px;font-size:13px}.bulk-status{background:var(--accent);border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 16px 10px;padding:7px 12px;font-size:12.5px;display:flex}.bulk-status.failed{color:#852a24;background:#fbe7e4}.bulk-status .bulk-failures{flex-basis:100%;order:2;margin:0;padding-left:18px}.bulk-status .link-button{margin-left:auto;padding:0}.procurement-stage .bulk-bar{z-index:9;border:1px solid var(--border);border-radius:8px;padding:5px 10px;position:sticky;top:-30px}.stage-bulk{margin:0 16px 8px}.procurement-stage .data-table .filters{position:static}.procurement-stage .data-table .filters .search{padding-top:6px;padding-bottom:6px}.procurement-stage .data-table .table-wrap{border-radius:8px}.procurement-stage .data-table thead th{letter-spacing:0;text-transform:none;border-right:1px solid var(--sheet-line);padding-top:6px;padding-bottom:6px;font-size:12px}.procurement-stage .data-table tbody td{height:var(--sheet-row);border-bottom-color:var(--sheet-line);border-right:1px solid var(--sheet-line);padding-top:3px;padding-bottom:3px}.procurement-stage .data-table tr>:last-child{border-right:0}.procurement-stage .data-table tbody tr:nth-child(2n):not(.group-row):not(.detail) td,.procurement-stage .data-table tbody tr:nth-child(2n) td.key{background:var(--card)}.procurement-stage .data-table tbody tr:not(.group-row):not(.detail):hover td{background:#eaf6f4}.row-menu{display:inline-block}.row-menu-popup{z-index:60;background:var(--card);border:1px solid var(--border);border-radius:6px;min-width:250px;padding:4px;display:grid;box-shadow:0 4px 16px #00000026}.row-menu-popup button{text-align:left;cursor:pointer;background:0 0;border:0;padding:6px 8px;font-size:13px}.row-menu-popup button:hover:not(:disabled){background:var(--accent)}.row-menu-popup button:disabled{color:var(--muted-foreground);cursor:not-allowed}.line-panel{border-top:1px solid var(--border)}.line-panel .panel-heading{padding:12px 20px 8px}.line-panel-body{padding:0 20px 14px}.line-panel-body .form-grid,.line-panel-body .facts-grid{padding-left:0;padding-right:0}.line-panel .hint,.line-panel .money-summary{color:var(--muted-foreground);margin:10px 0 0;font-size:12px;display:block}.doc-links{align-items:baseline;gap:10px;display:inline-flex}.doc-links a,.doc-links .link-button{color:var(--primary);padding:0}.backorder-action{align-items:center;gap:8px;display:inline-flex}.backorder-action input{height:26px}.order-lines td.num{text-align:right;font-variant-numeric:tabular-nums}@media (pointer:coarse){.row-menu>button{min-width:40px;min-height:36px}.row-menu-popup button{min-height:40px}}.cell-edit{width:100%;color:inherit;font:inherit;text-align:left;white-space:inherit;cursor:text;background:0 0;border:1px solid #0000;border-bottom:1px dashed #c3cbd4;border-radius:5px;margin:0;padding:1px 5px;font-size:13px;line-height:1.35;display:block}.cell-edit:hover,.cell-edit:focus-visible{border-color:var(--primary);background:var(--card);border-bottom-style:dashed;outline:none}.cell-edit-empty{color:var(--muted-foreground)}.cell-edit-input{border-radius:6px;width:100%;min-width:160px;padding:3px 6px;font-size:13px;line-height:1.35}input.cell-edit-input[type=date]{width:130px;min-width:0}textarea.cell-edit-input{resize:vertical;min-height:62px}.data-table td small.cell-edit-error,.cell-edit-error{color:#852a24;white-space:normal;margin-top:2px;font-size:11.5px;display:block}.order-lines td.note-cell{white-space:normal;min-width:120px;max-width:220px}.cell-link{font-size:12px}.file-links{flex-direction:column;gap:1px;min-width:0;max-width:220px;display:flex}.file-links a{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.line-documents{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.line-documents .file-links{max-width:none}.line-doc-datasheet{align-items:center;gap:10px;display:flex}.line-doc-datasheet a{white-space:nowrap;font-weight:400}.line-doc-field{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.line-doc-title{color:var(--muted-foreground);font-size:12.5px;font-weight:600}.line-doc-empty{color:var(--muted-foreground);font-size:13px}.line-doc-field .file-button{cursor:pointer;align-items:center;display:inline-flex}.line-doc-field .file-button.disabled{opacity:.6;cursor:default}.order-lines td.missing-cell{white-space:normal;min-width:120px;max-width:220px}.procurement-sheet td.num{font-variant-numeric:tabular-nums}.procurement-sheet .data-table th,.procurement-sheet .data-table td,.procurement-stage .data-table th,.procurement-stage .data-table td{padding-left:6px;padding-right:6px}.procurement-sheet .data-table .cell-wrap{max-width:210px}.procurement-stage .data-table .cell-wrap{max-width:180px}@media (width>=1900px){.procurement-sheet .data-table .cell-wrap,.procurement-stage .data-table .cell-wrap{max-width:340px}}@media (pointer:coarse){.data-table td .cell-edit,.cell-edit-input{min-height:40px}}:root{--zg-c0:#4f7cba;--zg-c1:#2e9e8f;--zg-c2:#c2782f;--zg-c3:#8a63b8;--zg-c4:#5d9c3f;--zg-c5:#c4566b;--zg-c6:#3c8fb5;--zg-c7:#a58a2c;--zg-c8:#6b74c9;--zg-c9:#b4613d;--zg-c10:#3f9f6e;--zg-c11:#9a5aa0;--zg-day:24px;--zg-row:28px;--zg-month-h:18px;--zg-days-h:30px;--zg-font:12px;--zg-font-sm:11px;--zg-font-xs:11px;--zg-week:46px;--zg-head-font:11px;--zg-today-bg:color-mix(in srgb, var(--primary) 9%, transparent);--zg-today-head:color-mix(in srgb, var(--primary) 68%, black);--zg-head:#f6faf9;--zg-off:#eef1f1;--zg-off-head:#e6ebea;--zg-grid:#edf1f0;--zg-edge:#c9d3d1;--zg-shadow:#102a2629;--zg-flag-off:#8a9593;--zg-track:#e3e9e8;--zg-late:#c62828;--zg-late-bg:#fdecea;--zg-soon-bg:#fff4d6;--zg-soon:#8a5a00;--zg-ok-bg:#e6f4ea;--zg-ok:#1e7e34;--zg-arrival:#1565c0;--zg-span-pct:32%;--zg-note:#6b7689}@media (width<=1700px){:root{--zg-day:16px}}.zg-panel .plan-section-head{align-items:baseline;gap:12px;display:flex}.zg-span{color:var(--muted-foreground);font-size:var(--zg-font)}.zg-toolbar{flex-wrap:wrap;align-items:center;gap:6px 14px;margin:8px 0 6px;display:flex}.zg-toolbar>input{border:1px solid var(--border);width:220px;height:28px;font-size:var(--zg-font);border-radius:999px;padding:2px 10px}.zg-toggle{font-size:var(--zg-font);color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:6px;font-weight:400;display:inline-flex}.zg-toggle input{width:14px;height:14px;margin:0}.zg-legend{font-size:var(--zg-font-sm);color:var(--muted-foreground);white-space:nowrap;flex-wrap:nowrap;gap:10px;margin-left:auto;display:inline-flex}.zg-legend>span{align-items:center;gap:4px;display:inline-flex}.zg-legend i{font-style:normal;display:inline-block}.zg-key-bar{background:linear-gradient(90deg, var(--zg-c0) 0 33%, var(--zg-c2) 33% 66%, var(--zg-c3) 66%);border-radius:3px;width:18px;height:8px}.zg-key-qty{background:var(--card);min-width:16px;height:14px;box-shadow:0 0 0 1px var(--zg-c0);color:var(--foreground);font-size:var(--zg-font-xs);text-align:center;border-radius:3px;padding:0 3px;font-weight:700;line-height:14px}.zg-key-off{background:var(--zg-off-head);border-radius:2px;width:10px;height:12px}.zg-key-today{border:1px solid var(--primary);background:var(--zg-today-bg);border-radius:2px;width:10px;height:12px}.zg-key-note{background:var(--zg-note);border-radius:50%;width:6px;height:6px}.zg-key-arrival{background:var(--zg-arrival);border-radius:50%;width:6px;height:6px}.zg-key-span{background:color-mix(in srgb, var(--zg-c0) var(--zg-span-pct), transparent);border-radius:3px;width:18px;height:8px}.zg-key-deadline{background:var(--zg-late);width:3px;height:12px}.zg-key-manual{border-top:6px solid var(--primary);border-left:6px solid #0000;width:0;height:0}.zg-toolbar .zg-columns{font-size:var(--zg-font);padding:4px 10px}.zg-scale{background:var(--seg-bg);border-radius:8px;gap:2px;padding:2px;display:inline-flex}.zg-scale button{min-height:24px;color:var(--seg-fg);font-size:var(--zg-font);background:0 0;border:0;border-radius:6px;padding:0 10px;font-weight:600}.zg-scale button.on{background:var(--card);color:var(--zg-today-head);box-shadow:0 1px 2px #001a181f}.zg-scale button:focus-visible{outline:var(--focus-ring);outline-offset:1px}.zg-toolbar .zg-columns.active{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));color:var(--zg-today-head)}.zg-chooser{border-radius:8px;align-items:center;gap:6px 14px;margin:0 0 6px;padding:6px 12px}.zg-chooser .check-inline{font-size:var(--zg-font)}.zg-chooser .link-button{font-size:var(--zg-font);padding:0}.zg-chooser .link-button:disabled{color:var(--muted-foreground);cursor:default}.zg-wrap{border:1px solid var(--border);background:var(--card);border-radius:8px;max-height:calc(100dvh - 210px);overflow:auto}.zg-wrap-empty{overflow-x:hidden}.zg-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:auto;font-size:var(--zg-font)}.zg-day-col{width:var(--zg-day)}.zg-table th,.zg-table td{height:var(--zg-row);border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--card);white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;padding:0 4px;overflow:hidden}.zg-table thead th{z-index:4;background:var(--zg-head);height:auto;color:var(--foreground);font-size:var(--zg-head-font);letter-spacing:0;text-transform:none;white-space:nowrap;text-align:center;padding:0 3px;font-weight:600;line-height:1.15;position:sticky;top:0}.zg-table thead th.zg-col-head{vertical-align:bottom;border-bottom-color:var(--zg-edge);padding-bottom:7px}.zg-table thead th.zg-left{text-align:left;padding-left:6px}.zg-table thead .zg-head-days th{top:var(--zg-month-h);height:var(--zg-days-h);border-bottom-color:var(--zg-edge)}.zg-freeze{left:var(--zg-left);z-index:2;position:sticky}.zg-table thead th.zg-freeze{z-index:6}.zg-table .zg-edge{border-right-color:var(--zg-edge);box-shadow:5px 0 6px -4px var(--zg-shadow)}.zg-table thead th.zg-month-head{height:var(--zg-month-h);border-right-color:var(--zg-grid);border-bottom-color:var(--zg-grid);color:var(--muted-foreground);font-size:var(--zg-font-sm);text-align:left;padding:0;font-weight:600;overflow:visible}.zg-month-head span{left:calc(var(--zg-frozen,0px) + 1px);line-height:calc(var(--zg-month-h) - 1px);padding:0 6px;display:inline-block;position:sticky}.zg-table thead th.zg-day-head{border-right-color:var(--zg-grid);padding:0;line-height:1.1}.zg-day-head b{font-size:var(--zg-head-font);font-variant-numeric:tabular-nums;font-weight:600;display:block}.zg-day-head span{color:var(--muted-foreground);font-size:var(--zg-font-xs);font-weight:400;display:block}.zg-week-col{width:var(--zg-week)}.zg-table thead th.zg-week-head b{font-size:var(--zg-head-font)}.zg-table thead th.zg-day-head.zg-off{background:var(--zg-off-head);color:var(--muted-foreground)}.zg-table thead th.zg-day-head.zg-today{background:var(--zg-today-head);color:var(--primary-foreground)}.zg-table thead th.zg-day-head.zg-today span{color:var(--primary-foreground);opacity:.85}.zg-table .zg-month{border-left:1px solid var(--zg-edge)}.zg-table td.zg-off{background:var(--zg-off)}.zg-row:hover>td{background-color:#f3f8f7}.zg-row:hover>td.zg-off{background-color:#e6ecec}.zg-row-hold>td{color:#6b7280;background:#f4f5f6}.zg-row-hold .zg-project{opacity:.75}.zg-row-closed>td{color:var(--muted-foreground)}.zg-table .zg-group td{background:var(--accent);height:22px;padding:0;overflow:visible}.zg-group-label{font-size:var(--zg-font-sm);color:var(--foreground);cursor:pointer;text-align:left;background:0 0;border:0;padding:0 10px;font-family:inherit;font-weight:700;line-height:22px;display:inline-block;position:sticky;left:0}.zg-group-label:before{content:"▾ ";color:var(--muted-foreground)}.zg-group-label[aria-expanded=false]:before{content:"▸ "}.zg-edit{cursor:pointer}.zg-edit:hover{outline:1px solid color-mix(in srgb, var(--primary) 55%, transparent);outline-offset:-1px}.zg-edit:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.zg-manual:after{content:"";border-top:7px solid var(--primary);border-left:7px solid #0000;position:absolute;top:0;right:0}.zg-center{text-align:center}.zg-table td.zg-center{padding:0 2px}.zg-ellipsis{text-overflow:ellipsis;display:block;overflow:hidden}.zg-col-comment{color:#3a4250}.zg-col-customer .zg-link{text-overflow:ellipsis;max-width:100%;color:var(--foreground);font-size:var(--zg-font);text-align:left;white-space:nowrap;background:0 0;border:0;padding:0;display:block;overflow:hidden}.zg-col-customer .zg-link:hover{color:var(--primary);text-decoration:underline}.zg-table td.zg-col-project{background:color-mix(in srgb, var(--zg-color) 18%, white);padding:0}.zg-project{width:100%;height:100%;min-height:0;color:var(--foreground);font-size:var(--zg-font);text-align:left;box-shadow:inset 4px 0 0 var(--zg-color);background:0 0;border:0;padding:0 4px 0 9px;font-weight:700}.zg-project:hover{text-decoration:underline}.zg-project{position:relative}.zg-note-mark{background:var(--zg-note);border-radius:50%;width:6px;height:6px;margin-top:-3px;position:absolute;top:50%;right:5px}.zg-col-status .status-chip{flex:none;max-width:none;overflow:visible}.zg-table td.zg-col-status:has(.proj-status-menu){z-index:8}.zg-empty-mark{color:var(--muted-foreground)}.zg-ready{align-items:center;gap:4px;display:flex}.zg-ready i{background:linear-gradient(90deg, var(--primary) var(--zg-ready,0%), var(--zg-track) var(--zg-ready,0%));border-radius:2px;flex:1;min-width:0;height:4px}.zg-ready b{min-width:27px;font-size:var(--zg-font-sm);font-variant-numeric:tabular-nums;text-align:right;order:1;font-weight:600}.zg-ready.full i{background:var(--zg-ok)}.zg-ready.zero b{color:var(--muted-foreground);font-weight:400}.zg-flag{background:0 0;border:0;border-radius:0;width:100%;height:100%;min-height:0;padding:0;font-size:13px;line-height:1;display:block}.zg-flag.on{color:var(--zg-ok);font-weight:700}.zg-flag.off{color:var(--zg-flag-off);font-weight:400}.zg-flag:not(:disabled):hover{background:color-mix(in srgb, var(--primary) 10%, transparent)}.zg-flag:disabled{cursor:default;opacity:1}.zg-table td.zg-col-in_plan,.zg-table td.zg-col-kit_checked,.zg-table td.zg-col-kit_present,.zg-table td.zg-col-zkp,.zg-table td.zg-col-tc_ready,.zg-table td.zg-col-test_sb,.zg-table td.zg-col-kit_picked{padding:0}.zg-supplied{font-size:var(--zg-font-sm);font-weight:700}.zg-supplied.s-yes{color:var(--zg-ok)}.zg-supplied.s-part{color:var(--zg-soon)}.zg-supplied.s-no{color:var(--zg-flag-off);font-weight:400}select.zg-overlay{opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.zg-col-customer_supplied:has(select.zg-overlay:hover){outline:1px solid color-mix(in srgb, var(--primary) 55%, transparent);outline-offset:-1px}.zg-arrival-stock{color:var(--muted-foreground)}.zg-arrival-wait{color:var(--zg-soon);font-weight:600}.zg-arrival-unknown{color:var(--zg-late);font-weight:600}.zg-days{text-align:center;font-variant-numeric:tabular-nums;font-weight:700}.zg-table td.zg-days.late{background:var(--zg-late-bg);color:var(--zg-late)}.zg-table td.zg-days.soon{background:var(--zg-soon-bg);color:var(--zg-soon)}.zg-table td.zg-days.ok{background:var(--zg-ok-bg);color:var(--zg-ok)}.zg-col-deadline{font-variant-numeric:tabular-nums}.zg-late-text{color:var(--zg-late);font-weight:700}.zg-table td.zg-day{border-right-color:var(--zg-grid);text-align:center;font-size:var(--zg-font-sm);color:#3a4250;text-overflow:clip;padding:0;font-weight:700;position:relative;overflow:visible}.zg-bar{background:var(--zg-color);position:absolute;inset:6px -1px 6px 0}.zg-span-bar{background:color-mix(in srgb, var(--zg-color) var(--zg-span-pct), transparent);position:absolute;inset:6px -1px 6px 0}.zg-span-bar.zg-span-late{background:color-mix(in srgb, var(--zg-late) var(--zg-span-pct), transparent)}.zg-week>.zg-span-bar{left:var(--zg-span-from,0%);right:min(var(--zg-span-to,0%), 100%)}.zg-off>.zg-bar{background:color-mix(in srgb, var(--zg-color) 50%, white)}.zg-work-start>.zg-bar{border-radius:4px 0 0 4px;left:2px}.zg-work-end>.zg-bar{border-radius:0 4px 4px 0;right:2px}.zg-work-start.zg-work-end>.zg-bar{border-radius:4px}.zg-day-text{z-index:1;font-size:var(--zg-font-xs);padding:0 2px;position:relative}.zg-work>.zg-day-text{color:var(--primary-foreground)}.zg-work.zg-off>.zg-day-text{color:var(--foreground)}.zg-qty{z-index:1;background:var(--card);box-shadow:0 0 0 1px var(--zg-color);color:var(--foreground);font-size:var(--zg-font-xs);font-variant-numeric:tabular-nums;pointer-events:none;border-radius:3px;padding:0 3px;font-weight:700;line-height:14px;position:absolute;top:50%;left:1px;transform:translateY(-50%)}.zg-table td.zg-today{border-left:1px solid var(--primary);border-right-color:var(--primary);background-image:linear-gradient(var(--zg-today-bg), var(--zg-today-bg))}.zg-table thead th.zg-today{border-left:1px solid var(--primary);border-right-color:var(--primary)}.zg-deadline:before{content:"";background:var(--zg-late);z-index:1;width:3px;position:absolute;top:0;bottom:0;right:-1px}.zg-arrival:after{content:"";background:var(--zg-arrival);z-index:1;border-radius:50%;width:7px;height:7px;position:absolute;bottom:2px;left:2px;box-shadow:0 0 0 1.5px #fff}.zg-week>.zg-bar{left:0;right:-1px}.zg-week.zg-work-start>.zg-bar{left:calc(var(--zg-from,0%) + 1px);border-radius:4px 0 0 4px}.zg-week.zg-work-end>.zg-bar{right:min(calc(var(--zg-to,0%) + 1px), calc(100% - var(--zg-from,0%) - 9px));border-radius:0 4px 4px 0}.zg-week.zg-work-start.zg-work-end>.zg-bar{border-radius:4px}.zg-week-deadline{top:0;bottom:0;left:calc(var(--zg-deadline-at) - 2px);z-index:1;background:var(--zg-late);width:3px;position:absolute}.zg-week-arrival{bottom:2px;left:calc(var(--zg-arrival-at) + 1px);z-index:1;background:var(--zg-arrival);border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 0 0 1.5px #fff}.zg-week>.zg-qty{left:2px}.zg-table td.zg-empty{height:calc(var(--zg-row) + 8px);color:var(--muted-foreground);text-align:left;border-bottom:0;padding:0;overflow:visible}.zg-empty-text{line-height:calc(var(--zg-row) + 8px);padding:0 12px;display:inline-block;position:sticky;left:0}.zg-scrim{z-index:40;position:fixed;inset:0}.zg-pop{z-index:41;background:var(--card);border:1px solid var(--border);border-radius:8px;gap:8px;width:290px;padding:10px;font-size:13px;display:grid;position:fixed;box-shadow:0 6px 24px #001a182e}.zg-pop-head{align-items:baseline;gap:8px;display:flex}.zg-pop-head span{color:var(--muted-foreground);font-size:12px}.zg-pop-head .link-button{margin-left:auto}.zg-pop input:not([type=checkbox]),.zg-pop textarea{border:1px solid var(--border);border-radius:6px;width:100%;height:30px;padding:4px 8px;font-size:13px}.zg-pop textarea.auto-textarea{resize:none;min-height:36px}.zg-pop-row{gap:6px;display:flex}.zg-pop-row input{flex:1}.zg-pop-acts{flex-wrap:wrap;gap:6px;display:flex}@media (pointer:coarse){:root{--zg-row:40px;--zg-day:26px;--zg-week:52px;--zg-days-h:34px}.zg-table .zg-project,.zg-table .zg-link{min-height:0}.zg-bar,.zg-span-bar{top:9px;bottom:9px}.zg-toolbar>input{height:40px}.zg-toggle input{width:20px;height:20px}.zg-pop button{min-height:40px}}.ec-page{align-content:start;gap:12px;display:grid}.ec-page>.panel,.ec-grid>.panel{margin-top:0}.profile-panel{justify-items:start;display:grid}.profile-panel .profile-card{justify-self:stretch}.ec-head{align-items:center;gap:16px;padding:16px 20px;display:flex}.ec-avatar{background:color-mix(in srgb, var(--primary) 14%, white);width:56px;height:56px;color:var(--primary);border-radius:50%;flex:none;place-items:center;font-size:20px;font-weight:600;display:grid}.ec-id{flex:1;min-width:0}.ec-id h1{margin:0 0 2px}.ec-sub{margin:0;font-size:14px}.ec-access{color:var(--muted-foreground);margin:1px 0 0;font-size:12px}.ec-meta{color:var(--muted-foreground);flex-wrap:wrap;gap:2px 18px;margin:4px 0 0;font-size:13px;display:flex}.ec-meta strong{color:var(--foreground);font-weight:600}.ec-badge{background:var(--accent);color:var(--muted-foreground);white-space:nowrap;border-radius:999px;flex:none;padding:4px 12px;font-size:12px;font-weight:600}.ec-badge.on{color:#15803d;background:#e3f5e8}.ec-tabs{align-items:center;gap:12px;display:flex}.ec-tabs .seg-tabs{margin:0}.ec-asof{color:var(--muted-foreground);margin-left:auto;font-size:12px}.ec-grid{column-count:1;column-gap:12px}.ec-grid>.panel{break-inside:avoid;margin-bottom:12px}@media (width>=1281px){.ec-grid{column-count:2}}@media (width>=2000px){.ec-grid{column-count:3}}@media (pointer:coarse) and (width<=1600px){.ec-grid{column-count:1}}.panel.ec-card>h2:first-child{align-items:center;gap:8px;padding:12px 16px 6px;display:flex}.ec-body{align-content:start;gap:6px;padding:0 16px 14px;font-size:13px;display:grid}.ec-body p,.ec-facts{margin:0}.ec-fact{border-top:1px solid var(--border);grid-template-columns:minmax(7em,10em) 1fr;gap:8px;padding:4px 0;display:grid}.ec-fact:first-child{border-top:0}.ec-fact dt{color:var(--muted-foreground)}.ec-fact dd{overflow-wrap:anywhere;margin:0}.ec-list{margin:0;padding:0;list-style:none}.ec-row{border-top:1px solid var(--border);align-items:baseline;gap:10px;padding:5px 0;display:flex}.ec-row:first-child{border-top:0}.ec-main{overflow-wrap:anywhere;flex:1;min-width:0}.ec-note{color:var(--muted-foreground);font-size:12.5px}.ec-date{white-space:nowrap;font-variant-numeric:tabular-nums}.ec-project{grid-template-columns:minmax(5em,7em) 1fr 10.5em;display:grid}.ec-project .ec-date{text-align:right}.ec-nodata{color:#637069}.ec-big{font-size:28px;font-weight:600;line-height:1.2}.ec-big span{color:var(--muted-foreground);font-size:16px;font-weight:400}.ec-sub-title{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;margin:8px 0 0;font-size:12px;font-weight:600}.ec-code{color:var(--muted-foreground);font-size:11px;display:block}.ec-stars{color:#a16207;letter-spacing:1px}.ec-now{color:#8a5a00;background:#fdf3d8;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600}.ec-body .link-button{padding:0;font-size:13px;font-weight:600}.ec-body>.link-button{justify-self:start;margin-top:4px}.ec-tab-count{background:var(--primary);color:#fff;border-radius:999px;margin-left:6px;padding:0 7px;font-size:11px;font-weight:700}.lv-page{align-content:start;gap:12px;display:grid}.lv-page>.panel{margin-top:0}.lv-summary{flex-wrap:wrap;align-items:center;gap:8px 24px;padding:12px 16px;display:flex}.lv-summary h2{margin:0}.lv-balance{flex-wrap:wrap;flex:1;gap:4px 24px;margin:0;display:flex}.lv-balance div{align-items:baseline;gap:6px;display:flex}.lv-balance dt{color:var(--muted-foreground);font-size:12.5px}.lv-balance dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.lv-balance .lv-left dd{color:var(--primary)}.lv-block>h2:first-child,.lv-form>h2:first-child{align-items:center;gap:8px;margin:0;padding:12px 16px 8px;display:flex}.lv-block>.empty{padding:0 16px 14px}.lv-form .form-actions{justify-content:flex-start;margin-top:0;padding:0 20px 16px}.lv-form .warning-inline{margin:0 20px 10px}.lv-form textarea{resize:vertical;height:42px;min-height:42px}.lv-form .field-group .seg-tabs{justify-self:start;margin:0}.lv-days{color:var(--muted-foreground);align-content:start;gap:6px;font-size:12.5px;font-weight:600;display:grid}.lv-days strong{color:var(--foreground);font-variant-numeric:tabular-nums;padding:9px 0;font-size:16px}.lv-page .kit-status.tone-ok{background:var(--chip-ok-bg)}.lv-page .kit-status.tone-info{background:var(--chip-info-bg)}.lv-page .kit-status.tone-neutral{background:var(--chip-neutral-bg)}.lv-detail{cursor:default;gap:8px;max-width:1100px;font-size:13px;display:grid}.lv-hash{color:var(--muted-foreground);margin-left:6px;font-family:ui-monospace,monospace;font-size:11px}.lv-signatures{gap:2px;margin:0;padding:0;list-style:none;display:grid}.lv-signatures li{border-top:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:4px 0;display:flex}.lv-signatures li:first-child{border-top:0}.lv-step{min-width:7.5em;color:var(--muted-foreground);font-weight:600}.lv-signatures small{color:var(--muted-foreground)}.lv-comment{color:var(--foreground);flex-basis:100%;padding-left:calc(7.5em + 10px)}.lv-actions{flex-wrap:wrap;align-items:end;gap:8px 10px;display:flex}.lv-actions label{min-width:220px}.lv-actions .lv-reason{flex:1;max-width:420px}.lv-actions input{padding:6px 10px}@media (pointer:coarse){.lv-actions button,.lv-form button{min-height:40px}}:root{--chip-info-bg:#e5edfb;--chip-warn-bg:#fdf3d8;--chip-ok-bg:#e3f5e8;--chip-neutral-bg:#eceff0}.order-block{margin:0 16px 16px}.buy-scroll+.order-block{margin-top:-4px}.order-block .bulk-status{margin:0 0 10px}.order-block .stage-empty{padding:8px 0 0}.order-block .table-wrap{border-radius:8px}.order-lines tr.order-head{cursor:pointer}.order-lines tr.order-head:hover>td.group-cell{background:color-mix(in srgb, var(--primary) 8%, var(--accent))}.order-lines tbody.order-open tr.order-head>td.group-cell{border-bottom-color:var(--border)}.group-toggle{min-width:0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.group-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.group-toggle .caret{width:12px;color:var(--muted-foreground);flex:none;font-size:12px}.order-chip{white-space:nowrap;text-overflow:ellipsis;border-radius:999px;flex:none;max-width:360px;padding:1px 9px;font-size:11.5px;font-weight:600;overflow:hidden}.order-chip.tone-info{background:var(--chip-info-bg)}.order-chip.tone-warn{background:var(--chip-warn-bg)}.order-chip.tone-ok{background:var(--chip-ok-bg)}.order-chip.tone-neutral{background:var(--chip-neutral-bg)}.order-lines td small{color:var(--muted-foreground);font-size:11.5px;line-height:1.3;display:block}.order-lines td small.tone-warn{color:#a16207}.order-lines td.name-cell{white-space:normal;min-width:120px;max-width:260px}.order-lines td.status-cell{white-space:normal;min-width:90px;max-width:160px}.order-doc-dialog .doc-file{color:var(--muted-foreground);grid-template-columns:minmax(0,1fr);gap:6px;min-width:0;font-size:12.5px;font-weight:600;display:grid}.order-doc-dialog .doc-file-chip{border:1px solid var(--border);background:var(--card);min-width:0;min-height:40px;color:var(--foreground);border-radius:8px;align-items:center;gap:10px;padding:0 12px;font-size:14px;font-weight:500;display:flex}.order-doc-dialog .doc-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.order-doc-dialog .doc-file-pick{border:1px solid var(--border);min-height:40px;color:var(--foreground);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex;position:relative}.order-doc-dialog .doc-file-pick:hover{border-color:var(--primary)}.order-doc-dialog .doc-file-pick.disabled{opacity:.6;cursor:default}.order-doc-dialog .doc-file-pick input{opacity:0;cursor:inherit;position:absolute;inset:0}.order-doc-dialog .doc-note{color:var(--muted-foreground);margin:0;font-size:12px}.order-doc-dialog .doc-lines{border-radius:8px;max-height:52vh;overflow:auto}.order-doc-dialog .doc-lines td{vertical-align:middle;padding-top:3px;padding-bottom:3px}.order-doc-dialog .doc-lines td small{color:var(--muted-foreground);font-size:11.5px;display:block}.order-doc-dialog .doc-lines td small.tone-warn{color:#a16207}.order-doc-dialog .doc-lines tr.doc-warn>td{background:var(--chip-warn-bg)}.order-doc-dialog .doc-price input{text-align:right;font-variant-numeric:tabular-nums;width:110px;height:28px;padding:0 8px}.order-doc-dialog .doc-price input[aria-invalid=true]{border-color:#b91c1c}.order-doc-dialog tfoot td{border-top:1px solid var(--border);padding-top:7px;padding-bottom:7px;font-weight:600}.order-doc-dialog .doc-unmatched ul{margin:4px 0 0;padding-left:18px}.order-doc-dialog .move-actions{align-items:center}.order-doc-dialog .doc-blocker{color:var(--muted-foreground);margin-right:auto;font-size:12px}@media (width<=1100px){.order-doc-dialog .move-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (pointer:coarse){.group-toggle{min-height:40px}.order-doc-dialog .doc-price input{height:40px}}.upd-panel{padding:10px 14px 12px}.upd-head{align-items:baseline;gap:12px;min-width:0;margin-bottom:8px;display:flex}.upd-panel .upd-head h2{white-space:nowrap;padding:0;font-size:14px}.upd-ids{min-width:0;color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.upd-row{grid-template-columns:1fr;align-items:end;gap:8px 12px;display:grid}.upd-row input:not([type=file]){padding:6px 9px;font-size:13px}.upd-actions{gap:8px;display:flex}.document-field.inline{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:0 8px;display:grid}.document-field.inline>label{grid-column:1}.document-field.inline>.document-actions{white-space:nowrap;grid-column:2;align-items:center;gap:8px;font-size:12.5px;display:flex}.document-field.inline .file-button{cursor:pointer;align-items:center;padding:6px 10px;display:inline-flex}.document-field.inline .hint,.document-field.inline .danger-text{grid-column:1/-1}.document-field.inline .document-actions .hint{text-overflow:ellipsis;max-width:140px;overflow:hidden}@media (width>=1100px){.upd-row{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) auto}}.blocks-bar{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.blocks-bar .blocks-search{flex:0 420px;min-width:220px;height:30px}.blocks-bar .blocks-hidden{color:var(--muted-foreground);font-size:13px}.stage-head .stage-sum{color:var(--muted-foreground);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12.5px}.stage-block-empty .stage-head{padding-bottom:4px}.stage-block-empty .stage-empty{padding-bottom:10px}.stage-columns{margin:0 16px 8px}.stage-more{justify-content:center;padding:8px 0 2px;display:flex}.order-list .table-wrap .grid thead th{z-index:3}.data-table.order-list .table-wrap{max-height:none}.autoplan-dialog{outline:none;flex-direction:column;gap:10px;width:min(880px,100%);height:auto;max-height:calc(100vh - 32px);padding:16px 20px;display:flex;overflow:hidden}.autoplan-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.autoplan-head h2{margin:0;padding:0;font-size:16px;font-weight:600}.autoplan-scroll{overscroll-behavior:contain;align-content:start;gap:10px;min-height:0;padding-right:2px;display:grid;overflow:auto}.autoplan-form{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.autoplan-form label{gap:3px;font-size:12px;display:grid}.autoplan-tasks{border:1px solid var(--border);background:var(--card);border-radius:8px;font-size:13px}.autoplan-tasks-bar{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:6px 10px;display:flex}.autoplan-tasks-bar .link-button{margin:0;padding:0}.autoplan-tasks-bar .link-button:disabled{color:var(--muted-foreground)}.autoplan-count{color:var(--muted-foreground);font-variant-numeric:tabular-nums;margin-right:auto}.autoplan-task-list{max-height:240px;padding:2px 10px;display:grid;overflow:auto}.autoplan-check.autoplan-task-line{font-variant-numeric:tabular-nums;grid-template-columns:20px 84px minmax(110px,190px) minmax(0,1fr);gap:8px;min-height:28px;display:grid}.autoplan-task-line b{white-space:nowrap;font-weight:600}.autoplan-task-item,.autoplan-task-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.autoplan-task-name{color:var(--muted-foreground)}.autoplan-check{align-items:center;gap:8px;font-size:13px;display:inline-flex}.autoplan-check input{justify-self:start;width:auto;margin:0}.autoplan-result{gap:8px;display:grid}.autoplan-summary{background:var(--accent);border-radius:8px;padding:8px 10px;font-size:14px;font-weight:600}.autoplan-fitter{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:8px 10px}.autoplan-fitter h3{justify-content:space-between;align-items:center;gap:8px;margin:0 0 4px;font-size:14px;display:flex}.autoplan-fitter h3 small{color:var(--muted-foreground);font-weight:400}.autoplan-day-title{color:var(--muted-foreground);margin:6px 0 2px;font-size:12px;font-weight:600}.autoplan-batch{border-left:3px solid var(--primary);margin-bottom:6px;padding-left:8px}.autoplan-batch-head{justify-content:space-between;gap:8px;padding:2px 0;font-size:13px;font-weight:600;display:flex}.autoplan-batch-head small{color:var(--muted-foreground);font-weight:400}.autoplan-row{border-top:1px solid var(--border);grid-template-columns:24px 120px minmax(0,1fr) 160px 150px;align-items:center;gap:8px;padding:3px 0;font-size:13px;display:grid}.autoplan-row input{width:auto;margin:0}.autoplan-op small{color:var(--muted-foreground);font-size:11px;display:block}.autoplan-slot{white-space:nowrap}.autoplan-change{color:var(--muted-foreground);font-size:12px}.autoplan-unplaced{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:8px 10px}.autoplan-unplaced h3{margin:0 0 4px;font-size:14px}.autoplan-unplaced-row{padding:2px 0;font-size:13px}.autoplan-head .seg-tabs.autoplan-modes{margin:0}.autoplan-period{font-variant-numeric:tabular-nums;align-items:center;gap:10px;margin-left:auto;font-size:13px;display:flex}.autoplan-period label{align-items:center;gap:6px;display:flex}.autoplan-period .link-button{margin:0;padding:0}.autoplan-scope{background:var(--accent);font-variant-numeric:tabular-nums;border-radius:8px;gap:2px;padding:8px 10px;font-size:14px;font-weight:600;display:grid}.autoplan-scope small{color:var(--muted-foreground);font-size:12px;font-weight:400}.autoplan-exclude summary{cursor:pointer;padding:6px 10px;font-weight:600}.autoplan-exclude[open] summary{border-bottom:1px solid var(--border)}.autoplan-new{background:color-mix(in srgb, var(--primary) 14%, white);color:var(--primary);white-space:nowrap;border-radius:6px;justify-self:start;padding:0 6px;font-size:11px;font-style:normal;font-weight:600;line-height:18px;display:inline-block}.autoplan-new.off{background:var(--accent);color:var(--muted-foreground)}.autoplan-task .autoplan-new{width:fit-content;margin-top:1px;display:block}.autoplan-skipped{grid-template-columns:20px 84px minmax(110px,190px) minmax(0,1fr);align-items:center;gap:8px;min-height:28px;font-size:13px;display:grid}.autoplan-project{gap:3px;max-width:520px;font-size:12px;display:grid}.autoplan-check.autoplan-person{font-variant-numeric:tabular-nums;grid-template-columns:20px minmax(140px,220px) 60px minmax(0,1fr);gap:8px;min-height:28px;display:grid}.autoplan-free{color:var(--muted-foreground)}.autoplan-created{border:1px solid color-mix(in srgb, var(--primary) 35%, white);border-radius:8px;padding:6px 10px;font-size:13px}.autoplan-dialog .autoplan-actions{border-top:1px solid var(--border);flex-wrap:nowrap;margin:0;padding:10px 0 0}@media (width<=700px){.autoplan-task-line{grid-template-columns:20px 76px minmax(0,1fr)}.autoplan-task-name{grid-column:3}.autoplan-row{grid-template-columns:24px minmax(0,1fr) auto}.autoplan-task,.autoplan-change{grid-column:2/4}}@media (pointer:coarse){.autoplan-check,.autoplan-row,.autoplan-task-line,.autoplan-dialog button,.autoplan-dialog input[type=date],.autoplan-person,.autoplan-exclude summary,.autoplan-dialog select{min-height:40px}.autoplan-check input,.autoplan-row input{width:22px;height:22px}}.view-as{align-items:center;gap:8px;font-size:13px;display:inline-flex}.view-strip{border:1px solid var(--warn-border);background:var(--warn-soft);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:10px 14px;font-size:14px;font-weight:600;display:flex}@media (pointer:coarse){.view-strip button{min-height:40px}}.view-as-banner{z-index:30;border-bottom:1px solid var(--warn-border);background:var(--warn-soft);flex-wrap:wrap;align-items:center;gap:8px 16px;margin:-30px -34px 20px;padding:8px 34px;font-size:14px;display:flex;position:sticky;top:-30px}.view-as-banner>span:first-child{flex:auto;min-width:0}.view-as-until{color:var(--muted-foreground);font-variant-numeric:tabular-nums}.view-as-error{color:var(--tone-danger);font-size:13px}.harness-host>.view-as-banner{margin:0;padding:8px 16px;position:static}@media (width<=1280px),(pointer:coarse) and (width<=1600px){.view-as-banner{margin:-20px -18px 16px;padding:8px 18px;top:-20px}}@media (width<=720px){.view-as-banner{margin:-24px -14px 16px;padding:8px 14px;top:0}}@media (pointer:coarse){.view-as-banner button,.view-as-person{min-height:44px}}.view-as-dialog{width:min(720px,100%)}.view-as-list{border:1px solid var(--border);border-radius:8px;max-height:min(60vh,520px);margin:0;padding:0;list-style:none;overflow:auto}.view-as-list>li+li{border-top:1px solid var(--border)}.view-as-person{width:100%;min-height:34px;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.2fr) auto;align-items:center;gap:12px;padding:6px 12px;font-size:13px;display:grid}.view-as-person:hover:not(:disabled),.view-as-person:focus-visible{background:var(--accent)}.view-as-person>span{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.view-as-person>.view-as-opening{color:var(--primary)}@media (width<=720px){.view-as-person{grid-template-columns:1fr;gap:2px}}.pl-head{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:6px;display:flex}.pl-period{color:var(--muted-foreground);font-size:13px}.pl-period b{color:var(--foreground);font-size:14px;font-weight:600}.pl-only{cursor:pointer;white-space:nowrap;align-items:center;gap:6px;min-height:30px;font-size:13px;display:inline-flex}.pl-only input{width:auto;margin:0}.pl-table tbody th{padding:2px 6px}.pl-table thead th:first-child{width:220px}.pl-table thead th{font-size:12px}.pl-table thead th b{font-variant-numeric:tabular-nums;font-weight:600;display:block}.pl-table thead th.off{background:var(--zg-off-head);border-radius:4px}.pl-table thead th.today{background:var(--zg-today-head);color:var(--primary-foreground);border-radius:4px}.pl-table thead th.today span{color:var(--primary-foreground)}.pl-table tr.pl-free th b{color:var(--muted-foreground);font-weight:500}.pl-table tr.pl-free th small{color:#98a2b3}.pl-table .mb-cell{font-size:12px}.pl-table .mb-cell.absent{white-space:nowrap;font-size:11px;overflow:hidden}.pl-table .mb-cell.free{background:#f8f9fb}.pl-legend{cursor:help;font-size:12px}.pl-legend .mb-cell{font-variant-numeric:tabular-nums;width:auto;min-width:26px;height:20px;margin-left:6px;padding:0 4px;font-size:12px}.pl-legend .mb-cell.late{font-weight:700}.pl-table .mb-cell>button{position:relative}.mb-cell.late{box-shadow:inset 0 0 0 2px var(--tone-danger)}.pl-late{color:var(--tone-danger);font-size:12px;font-style:normal;font-weight:700;line-height:1;position:absolute;top:1px;right:4px}.mb-legend .mb-cell.late{box-shadow:inset 0 0 0 2px var(--tone-danger)}.pl-detail{border:1px solid var(--border);background:var(--card);border-radius:8px;margin-top:8px;padding:8px 12px;font-size:13px}.pl-detail-head{align-items:center;gap:12px;margin-bottom:4px;display:flex}.pl-detail-head .mb-day-close{margin-left:auto}.pl-detail ul{margin:0;padding:0;list-style:none}.pl-detail li{border-top:1px solid var(--border);padding:3px 0}.pl-detail li small{color:var(--muted-foreground);font-size:12px}.pl-whole{color:var(--muted-foreground);font-size:11px;display:block}.pl-detail li.done{opacity:.55}.pl-detail li.late strong{color:var(--tone-danger)}@media (pointer:coarse){.pl-table .mb-cell,.pl-table .mb-cell>button{height:40px;min-height:40px}.pl-only{min-height:40px}.pl-head .mb-week-nav .small{min-height:40px;padding:3px 12px}.pl-detail-head .mb-day-close{justify-content:center;align-items:center;min-width:40px;min-height:40px;font-size:22px;display:inline-flex}}@media (width<=1100px){.pl-table thead th:first-child{width:150px}.pl-table .mb-cell{font-size:11px}}.token-form{flex-wrap:wrap;align-items:flex-end;gap:10px 16px;margin:0 0 14px;display:flex}.token-form label{gap:4px;font-size:13px;display:grid}.token-form .check-field{flex-wrap:wrap;gap:4px 16px;padding:6px 12px;display:flex}.token-form .check-field label{margin:0;display:flex}.token-issue{margin:0 0 18px;padding:12px 16px 14px}.token-issue h3,.token-list-title{margin:0 0 10px;font-size:14px}.token-issue .token-form{margin:0}.token-hint{color:var(--muted-foreground);margin:8px 0 0;font-size:12.5px}@media (pointer:coarse){.token-form .check-field label{align-items:center;min-height:40px}.token-form .check-field input[type=checkbox]{width:22px;height:22px}.token-submit,.token-revoke{min-height:40px}}.token-secret{margin:0 0 14px;padding:12px 16px}.token-secret p{margin:0 0 8px}.token-secret-row{flex-wrap:wrap;gap:8px;display:flex}.token-secret-value{flex:360px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px}.expected-block,.delivery-panel{padding:10px 14px 12px}.expected-list{margin:6px 0 0;padding:0;list-style:none}.expected-list li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:5px 0;font-size:13px;display:flex}.expected-list li:first-child{border-top:0}.expected-text{min-width:0}.queue-chips{margin:12px 0 8px}.delivery-head{margin-bottom:4px}.delivery-table{border-collapse:collapse;width:100%;font-size:13px}.delivery-table th{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:5px 8px;font-weight:600}.delivery-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:3px 8px}.delivery-table td.name{min-width:200px;font-weight:600}.delivery-table td.num{white-space:nowrap;font-variant-numeric:tabular-nums}.delivery-table input,.delivery-table select{padding:4px 7px;font-size:13px}.delivery-table input.qty{width:110px}.delivery-table input.place{width:80px}.delivery-table td.deviation{white-space:nowrap}.delivery-table td.deviation input{margin-left:6px}.delivery-table tr.off td:not(:first-child){opacity:.5}.delivery-table .delivery-short{color:var(--danger);font-size:12px;display:block}.delivery-panel .header-actions{margin-top:10px}@media (pointer:coarse){.delivery-table input,.delivery-table select{min-height:40px}.delivery-table input[type=checkbox]{width:22px;height:22px;min-height:22px}}.mo-ready{font-size:13px;font-weight:600}.mo-act{flex-wrap:wrap;gap:8px;display:flex}.mo-etk{grid-column:1/-1;margin-top:6px}.box-chips{flex-wrap:wrap;gap:8px;width:100%;display:flex}.box-chip{border:1px solid var(--border);background:var(--card);cursor:pointer;text-align:left;min-width:120px;min-height:52px;font:inherit;border-radius:10px;justify-items:start;gap:2px;padding:6px 14px;display:grid}.box-chip b{letter-spacing:.04em;font-size:16px}.box-chip span{color:var(--muted-foreground);font-size:12px}.box-chip.on{border-color:var(--primary);box-shadow:inset 0 0 0 2px var(--primary);background:var(--accent)}@media (pointer:coarse){.mo-act button{min-height:44px}.box-chip{min-height:56px}}.mo-h{justify-content:space-between;align-items:flex-start}.mo-side{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.mo-side button{min-width:96px}.mo-state{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.mo-plan .mo-window{color:var(--foreground);font-variant-numeric:tabular-nums}.mo-tf{font-variant-numeric:tabular-nums;font-weight:600}.mo-submit{background:var(--accent);border-radius:8px;padding:10px}.view-strip.acting{border-color:var(--primary);background:var(--chip-ok-bg)}@media (pointer:coarse){.mo-side button,.mo-submit button,.mo-submit input{min-height:44px}}@media (width<=700px){.mo-h{flex-wrap:wrap}.mo-side{justify-content:flex-start;margin-left:0}}.mb-progress{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:2px 8px;margin-top:2px;font-size:12px;display:flex}.mb-progress.tone-ok>span:first-child{color:var(--tone-ok)}.mb-progress.tone-warn>span:first-child{color:var(--tone-warn)}.mb-progress.tone-danger>span:first-child{color:var(--tone-danger)}.mb-bar{background:var(--accent);border-radius:2px;flex:0 0 90px;height:4px;overflow:hidden}.mb-bar i{background:var(--primary);height:100%;display:block}.mb-progress.tone-warn .mb-bar i{background:var(--tone-warn)}.mb-progress.tone-danger .mb-bar i{background:var(--tone-danger)}.mb-progress.tone-ok .mb-bar i{background:var(--tone-ok)}.mb-flag{white-space:nowrap;border-radius:8px;padding:0 6px;font-size:11px;font-style:normal}.mb-flag.danger{color:var(--tone-danger);background:#fde8e8}.mb-flag.warn{color:#8a5a00;background:#fdf3d8}.mb-today{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 8px;font-size:13px;display:flex}.mb-today-chip{border:1px solid var(--border);background:var(--card);cursor:pointer;font:inherit;border-radius:14px;padding:2px 10px}.mb-today-chip.danger b{color:var(--tone-danger)}.mb-today-chip.warn b{color:var(--tone-warn)}.mb-today-chip.zero{color:var(--muted-foreground)}.mb-today-chip.zero b{color:inherit}.mb-today-chip.on{background:var(--accent);border-color:var(--primary)}@media (pointer:coarse){.mb-today-chip{min-height:40px;padding:3px 14px}}.start-work.sw-col{place-items:start;gap:10px;display:grid}.sw-title{font-size:13px;font-weight:600}.sw-title small{color:var(--muted-foreground);font-weight:400}.sw-col .box-chip{min-width:150px;min-height:64px}.sw-col .box-chip b{font-size:18px}.sw-manual{width:min(100%,420px)}.sw-manual textarea{width:100%;font-size:13px}.sw-manual-toggle{padding:0;font-size:13px}.sw-go{min-width:200px;min-height:44px;padding:8px 24px;font-size:16px}.sw-why{color:var(--muted-foreground);font-size:12px}.box-return-act{align-items:center;gap:12px;display:flex}.production-box>.link-button{padding:0}@media (pointer:coarse){.box-review .manual-stock-head button,.box-review .production-box button,.box-review .box-return-act button{min-height:40px;padding:6px 14px}.box-review .production-box>.link-button{padding:6px 0}.etk-nav button,.etk-print-btn{min-height:40px;padding:6px 14px}.execution-current .execution-actions input,.execution-current .execution-actions button{min-height:40px}.execution-current .execution-actions .link-button{padding:6px 4px}.mb-today .mb-today-chip{min-height:40px}}.row-actions{flex-direction:column;align-items:flex-start;gap:0;width:100%;max-width:150px;display:inline-flex}.row-actions-main{flex-wrap:nowrap;gap:4px;max-width:100%;display:flex}td .row-actions .row-actions-main button{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;height:24px;padding:0 7px;font-size:12px;line-height:22px;overflow:hidden}.row-actions-more{flex-wrap:wrap;gap:0 10px;max-height:0;display:flex;overflow:hidden}td .row-actions .row-actions-more .link-button{color:var(--primary);white-space:normal;text-align:left;overflow-wrap:anywhere;max-width:100%;padding:0;font-size:12px}tr:hover .row-actions-more,tr:focus-within .row-actions-more{max-height:96px;margin-top:3px}.buy-grid td.menu,.procurement-stage td.menu{text-align:left}.order-doc-links{gap:12px;margin-right:4px;font-size:13px}.order-doc-links .doc-link{color:var(--primary);text-decoration:none}.order-doc-links a.doc-link:hover{text-decoration:underline}.order-doc-links .doc-link.off{color:var(--muted-foreground);cursor:not-allowed}.invoice-pop{position:relative}.invoice-pop summary{cursor:pointer;color:var(--primary);list-style:none}.invoice-pop summary::-webkit-details-marker{display:none}.invoice-pop-list{z-index:20;background:var(--card);border:1px solid var(--border);white-space:nowrap;border-radius:6px;gap:4px;min-width:200px;padding:8px 10px;display:grid;position:absolute;top:100%;right:0;box-shadow:0 4px 16px #00000026}.order-lines small.invoice-name{color:var(--muted-foreground);font-size:12px;font-weight:400;display:block}.cell-edit{border:1px solid var(--border);background:var(--card);border-bottom-style:solid;min-height:26px}.cell-edit-empty{color:var(--muted-foreground);font-style:italic}.cell-edit:hover,.cell-edit:focus-visible{border-style:solid}@media (pointer:coarse){.row-actions-more{max-height:none;margin-top:4px}td .row-actions .row-actions-main button,td .row-actions .row-actions-more .link-button,.cell-edit{min-height:40px}.order-doc-links a,.invoice-pop summary,.order-doc-links .doc-link{align-items:center;min-height:40px;display:inline-flex}.group-actions .small{min-height:40px}}.procurement-stage .data-table table.grid.wide{width:100%;min-width:0}.procurement-stage .data-table th,.procurement-stage .data-table td{padding-left:8px;padding-right:8px}.procurement-stage .data-table td.text{min-width:140px;max-width:240px}.procurement-stage .data-table th.num,.procurement-stage .data-table td.num{min-width:0}.order-lines th{white-space:normal;vertical-align:bottom}.procurement-stage .data-table td.menu{min-width:150px}.harness-page{background:var(--background);flex-direction:column;height:100vh;padding:8px 12px 0;display:flex;overflow:hidden}.harness-page-head{align-items:center;gap:10px;min-width:0;padding-bottom:8px;display:flex}.harness-page-head h1{white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;font-size:16px;font-weight:600;overflow:hidden}.harness-page-head>.muted,.harness-save{white-space:nowrap}.harness-page-actions{flex-shrink:0;align-items:center;gap:8px;min-width:0;margin-left:auto;display:flex}.harness-page-note{text-overflow:ellipsis;white-space:nowrap;max-width:360px;font-size:13px;overflow:hidden}.harness-conflict{border:1px solid var(--warn-border);background:var(--warn-soft);color:var(--foreground);border-radius:6px;align-items:center;gap:10px;margin-bottom:8px;padding:6px 10px;font-size:13px;display:flex}.harness-conflict>span{flex:1;min-width:0}.harness-page .button-link{align-items:center;text-decoration:none;display:inline-flex}.harness-save{font-size:13px;font-weight:600}.harness-page-body{flex-direction:column;flex:1;min-height:0;display:flex}.harness-page-body>.harness-root{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.harness-page-body>.harness-root>.he-host{flex-direction:column;flex:1;min-height:0;display:flex}.harness-page-body>.harness-root>.he-host>.harness-editor{flex:1;height:auto;min-height:0}.harness-history-actions{align-items:center;gap:12px;display:flex}.harness-history-current{margin-left:8px;font-size:12px;font-weight:500}.harness-history .data-table tr.selected td,.harness-history .data-table tr.selected:hover td{background:var(--sheet-selected)}.harness-history .data-table tr.selected td:first-child{box-shadow:inset 3px 0 0 var(--primary)}@media (hover:hover) and (pointer:fine) and (width>=901px) and (height<=960px){.sidebar{padding:12px 12px 10px}.brand{padding-bottom:8px}.nav-group{margin-top:6px;padding-top:5px}.nav-group h4{margin-bottom:3px}.nav-item{padding-top:4px;padding-bottom:4px}.profile{gap:2px;padding-top:8px}.profile .link-button{padding-top:2px}}.row-action-cell .row-actions{flex-direction:row;align-items:center;width:auto;max-width:none}.staff-page .data-table td strong,.staff-page .data-table td small{white-space:nowrap}.staff-page .data-table td small{display:block}.status.status-done{color:var(--tone-ok);background:color-mix(in srgb, var(--tone-ok) 14%, transparent)}.status.status-cancelled{color:var(--muted-foreground);background:var(--accent)}.job-plan{border:1px solid var(--border);background:var(--card);border-radius:10px;margin:12px 0;padding:12px 14px}.jp-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.jp-head h2{margin:0;font-size:16px}.jp-head small{color:var(--muted-foreground)}.jp-norms{flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;display:flex}.jp-controls{flex-wrap:wrap;align-items:end;gap:12px;margin-top:10px;display:flex}.jp-controls label{color:var(--muted-foreground);flex-direction:column;gap:4px;font-size:12px;display:flex}.jp-controls select{min-width:300px}.jp-controls input{width:120px}.jp-error{color:var(--tone-danger);margin-top:6px;font-size:12px}.jp-team{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;font-size:13px;display:flex}.jp-label{color:var(--muted-foreground);margin-right:4px;font-size:12px}.jp-person{white-space:nowrap;color:var(--foreground);border:1px solid var(--border);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.jp-person.on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.jp-person input{flex:none;width:auto;min-height:0;margin:0}.jp-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.jp-summary>div{background:var(--accent);border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.jp-summary span{color:var(--muted-foreground);font-size:12px}.jp-summary b{font-size:15px}.jp-summary small{color:var(--muted-foreground);font-size:11px}.jp-summary .jp-late b{color:var(--tone-danger)}.jp-warnings{color:var(--tone-warn);background:var(--warn-soft);border-radius:8px;margin:10px 0 0;padding:8px 12px 8px 26px;font-size:12px}.jp-warnings.limit{color:var(--tone-danger);background:var(--sheet-invalid-bg)}.jp-steps tbody tr{cursor:default}.jp-steps td small{color:var(--muted-foreground)}.jp-code{font-size:11px;display:block}.jp-cancelled td{color:var(--muted-foreground);text-decoration:line-through}.jp-cancelled td:last-child{text-decoration:none}.jp-empty{color:var(--muted-foreground);margin-top:8px;display:block}@media (width<=1100px){.jp-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.jp-controls select{min-width:0}}@media (pointer:coarse){.jp-person{min-height:40px;padding:4px 14px}.jp-controls input,.jp-controls select{min-height:40px}}.stage-dialog{width:min(720px,100%)}.stage-dialog-change{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.stage-dialog-kbs{border-collapse:collapse;width:100%;font-size:13px}.stage-dialog-kbs th,.stage-dialog-kbs td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:4px 8px}.stage-dialog-kbs thead th{color:var(--muted-foreground);font-size:12px;font-weight:500}.stage-dialog-kbs tbody th{text-transform:none;letter-spacing:0;white-space:nowrap;color:var(--foreground);font-size:13px;font-weight:600}.stage-dialog-kbs .stage-keep td{color:var(--muted-foreground)}.stage-skipped{color:#a15c00;margin-right:8px}.stage-dialog-warn ul{margin:0;padding-left:18px}.stage-skipped-mark{border:1px solid var(--border);color:#a15c00;cursor:help;white-space:nowrap;border-radius:999px;margin-left:6px;padding:0 6px;font-size:11px}.ec-tabs .seg-tabs{flex-wrap:wrap}.lv-block h2 .ed-add{margin-left:auto}.lv-block td a,.lv-detail a{color:var(--primary);font-weight:600;text-decoration:none}.lv-block td a:hover,.lv-detail a:hover{text-decoration:underline}.ed-form{gap:8px;padding:0 16px 12px;display:grid}.ed-form .form-actions{justify-content:flex-start;padding:0}.ed-archived td{color:var(--muted-foreground)}.ed-detail .ed-actions{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.ed-upload{color:var(--muted-foreground);align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.ed-confirm{align-items:center;gap:8px;font-weight:600;display:inline-flex}.ed-versions{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.ed-versions label{color:var(--muted-foreground);align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.ed-versions select{width:auto}.ed-sheet{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 32px;display:grid}@media (width<=1100px){.ed-sheet{grid-template-columns:1fr}}.wt-picker{align-items:center;gap:8px;display:flex}.wt-picker input[type=month]{width:auto}.wt-label{text-transform:capitalize;min-width:8em;font-size:14px}.wt-nodata{margin:0;padding:12px 16px}.wt-balance .wt-source{flex-basis:100%;margin:0}.wt-state{font-weight:600}.wt-state.tone-danger{color:#b42318}.wt-state.tone-ok{color:#15803d}tr.wt-future td{color:var(--muted-foreground);opacity:.7}tr.wt-off td{background:color-mix(in srgb, var(--muted-foreground) 7%, var(--card))}.kit-review{color:var(--muted-foreground)}.kit-review-success{color:var(--chip-success-fg)}.kit-review-warning{color:var(--chip-warning-fg)}.kit-review-danger{color:var(--chip-danger-fg)}.kit-meta .kit-calc-link{color:var(--primary);text-decoration:none}.kit-meta .kit-calc-link:hover{text-decoration:underline}.kit-head .kit-more{margin-left:4px}.kit-more .more-menu-list button.kit-more-danger{color:var(--tone-danger)}.kit-more .more-menu-list button.kit-more-danger:hover{background:var(--danger-soft)}.kit-delete-dialog .page-sub{line-height:1.5}.kit-missing{gap:8px;max-width:720px;display:grid}.kit-missing p{margin:0}.kit-missing .page-actions{justify-content:flex-start;margin:0}.panel.project-etk{padding:12px 16px 16px}.etk-in-row{border-top:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;padding:4px 0;display:flex}.etk-block>strong+.etk-in-row{border-top:0}.etk-in-name{gap:1px;min-width:0;display:grid}.etk-in-name small{color:var(--muted-foreground);font-size:11px}.etk-in-name small.etk-spec{font-variant-numeric:tabular-nums}.etk-in-qty{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:13px;font-weight:600}.tr-none{color:var(--muted-foreground);font-size:12px}@media (pointer:coarse){.proj-status-btn .status-chip{min-height:32px}.kit-more .more-menu-list button{min-height:40px}}.kit-supply-count dd.muted{color:var(--muted-foreground);font-weight:400}.op-code{color:var(--muted-foreground);margin-top:1px;font-size:11px;font-weight:400;line-height:1.3;display:block}.gantt-label .op-code{margin-left:0}.mb-people{max-height:none;position:static}.mb-people .mb-week thead th:first-child{width:200px}.mb-period{font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.mb-people .mb-legend{margin-top:10px}.mb-tile-extra .status-chip,.mb-project-head .status-chip,.mb-task-head .status-chip{height:20px;font-size:12px}.task-deadlines{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.launch-hint{color:var(--muted-foreground);font-size:12px}.production-launch-grid{align-items:start}.production-card>.page-actions{flex-wrap:wrap;align-items:flex-start;margin:8px 0 12px}.production-card>.page-actions>.schedule-planner{margin:0}.production-launch-grid>label{align-content:start}.production-box>.status-chip{justify-self:start}.execution-actions .defect-text,.start-work .defect-text{flex:280px;min-width:240px}.tc-gen-head{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin:14px 0 8px;padding-top:12px;display:flex}.data-table td .tr-code{color:var(--muted-foreground);font-size:12px}.data-table td .tr-edited{font-size:12px}.procurement-empty{border:1px dashed var(--border);color:var(--muted-foreground);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 10px;padding:10px 14px;font-size:13px;display:flex}.panel.procurement-flat>.data-table .table-wrap{border:0;border-radius:0}.rg-col-quality_document{width:120px}.rg-hint,.procurement-auto-note{color:var(--muted-foreground);margin:0;font-size:12.5px}.procurement-stages{flex-wrap:wrap;gap:4px;display:inline-flex}.panel.procurement-flat>.procurement-empty{border:0;border-top:1px solid var(--border);border-radius:0;margin:0;padding:14px 16px}.row-action-menu{display:inline-block}.row-action-open{min-width:var(--control-h-cell);height:var(--control-h-cell);border-radius:var(--control-radius);color:var(--muted-foreground);background:0 0;border:1px solid #0000;padding:0 6px;font-size:16px;line-height:1}.row-action-open:hover:not(:disabled),.row-action-open[aria-expanded=true]{border-color:var(--border);background:var(--card);color:var(--foreground)}.row-action-popup{z-index:60;border:1px solid var(--border);background:var(--card);border-radius:6px;min-width:180px;padding:4px;display:grid;box-shadow:0 4px 16px #00000026}.row-action-popup button{min-height:32px;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;border:0;padding:4px 10px;font-size:13px}.row-action-popup button:hover:not(:disabled),.row-action-popup button:focus-visible{background:var(--accent)}.row-action-popup button.danger{color:var(--tone-danger)}.row-action-popup button:disabled{color:var(--muted-foreground);cursor:not-allowed}@media (pointer:coarse){.row-action-popup button{min-height:40px}}.staff-page .data-table td:last-child{text-align:right}.audit-event{white-space:nowrap;align-items:baseline;gap:8px;display:inline-flex}.audit-code{color:var(--muted-foreground);font-size:11px}@media (width<=1799px){.audit-event>strong+.audit-code{display:none}}.operations-page .data-table td{vertical-align:middle}.tile-icon{color:var(--primary)}.block-icon{display:block}.quality-page .box-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.quality-page .production-box{gap:6px;padding:10px}.quality-page .production-box>strong{font-size:15px}.quality-page .danger-text{color:var(--tone-danger)}.ec-legend{align-items:center;gap:4px;margin-top:2px;display:flex}.crimp{gap:1px;display:grid}.crimp-row{grid-template-columns:repeat(var(--crimp-n,1), minmax(11ch, auto));font-variant-numeric:tabular-nums;white-space:nowrap;gap:0 12px;font-size:13px;line-height:18px;display:grid}.crimp-row.has-awg{grid-template-columns:9ch repeat(var(--crimp-n,1), minmax(11ch, auto))}.crimp-awg{color:var(--muted-foreground);border-right:1px solid var(--border);padding-right:8px;font-weight:600}.crimp-val{text-align:right}.crimp-unit{color:var(--muted-foreground);font-style:normal}@media (pointer:coarse){.crimp-row{font-size:13px;line-height:20px}}.stage-dialog-body{gap:10px;min-width:0;max-height:calc(100vh - 240px);padding-right:2px;display:grid;overflow:hidden auto}.stage-dialog-kbs{table-layout:auto}.stage-dialog-kbs td,.stage-dialog-kbs th{overflow-wrap:anywhere}.stage-cascade{gap:6px;font-size:13px;display:grid}.stage-cascade h3{margin:0 0 2px;font-size:13px;font-weight:600}.stage-cascade ul{margin:2px 0 0;padding-left:18px}.stage-cascade>section>.stage-cascade-list{padding-left:0;list-style:none}.stage-cascade summary{cursor:pointer;color:var(--foreground);padding:2px 0;font-weight:400}.stage-cascade summary b{font-weight:600}.stage-cascade-keep>summary,.stage-cascade section.muted summary{color:var(--muted-foreground);font-weight:500}.stage-cascade li{overflow-wrap:anywhere}.stage-cascade .muted,.stage-cascade section.muted{color:var(--muted-foreground)}@media (pointer:coarse){.stage-cascade summary{padding:10px 0}}.tnum{font-variant-numeric:tabular-nums slashed-zero}.eq-line{margin:0;font-size:13px}.eq-table{border-collapse:collapse;width:100%;font-size:13px}.eq-table th{border-bottom:1px solid var(--border);color:var(--muted-foreground);text-align:left;padding:4px 8px;font-size:12px;font-weight:500}.eq-table td{border-bottom:1px solid var(--border);padding:4px 8px}.eq-table tbody tr:nth-child(2n){background:var(--accent)}.eq-table tr.eq-row{cursor:pointer}.eq-table tr.eq-row:hover{background:color-mix(in srgb, var(--primary) 10%, var(--card))}.eq-table .eq-act{text-align:right;white-space:nowrap;width:1%}.eq-add{gap:4px;margin-top:8px;display:grid}.eq-add input{max-width:560px}.eq-hit{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;max-width:760px;padding:2px 8px;font-size:13px;display:flex}.eq-doubt{margin-left:8px;font-size:12px}.eq-op{border:1px solid var(--border);background:var(--card);border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:12.5px;display:inline-flex}.eq-x{color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:14px;line-height:1}.eq-x:hover{color:var(--foreground)}.eq-link{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.eq-rest>summary{margin:8px 0}.eq-form .form-grid{padding:0}.eq-form .eq-rest .form-grid{margin-top:8px}.eq-missing{margin:0 0 8px;font-size:13px}.eq-missing-list{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.eq-crimp h5{margin:12px 0 4px;font-size:13px;font-weight:600}@media (pointer:coarse){.eq-table td,.eq-hit{padding-top:8px;padding-bottom:8px}.eq-x{padding:8px}}.eq-chip-btn{cursor:pointer;color:var(--foreground)}.eq-chip-btn:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--accent)}.kit-pane-harness .harness-page{border:1px solid var(--border);border-radius:10px;height:calc(100vh - 168px);min-height:520px;padding:0}.kit-kd-delete{color:var(--tone-danger)}:root{--rc-dot:color-mix(in srgb, var(--muted-foreground) 22%, transparent);--rc-link:#8a94a6;--rc-tube:#3b4248;--rc-final-fg:#00756a}.rc{gap:8px;min-width:0;display:grid}.rc-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rc-tools-right{align-items:center;gap:8px;margin-left:auto;display:flex}.rc-zoom{align-items:center;gap:4px;display:inline-flex}.rc-zoom .small{min-width:32px}.rc-zoom-value{min-width:48px;color:var(--muted-foreground);font-variant-numeric:tabular-nums;text-align:center;font-size:12px}.rc-view{border:1px solid var(--border);background:var(--panel-soft) radial-gradient(circle, var(--rc-dot) 1px, transparent 1.4px) 0 0 / 16px 16px;border-radius:8px;position:relative;overflow:auto}.rc-view.is-auto{background:0 0;border:0;border-radius:0;overflow:hidden}.rc-stage{position:relative}.rc-plane{transform-origin:0 0;position:absolute;top:0;left:0}.rc-links{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.rc-links marker path{fill:var(--rc-link)}.rc-link{fill:none;stroke:var(--rc-link);stroke-width:1.5px}.rc-link.is-active{stroke:var(--primary);stroke-width:2px}.rc-link-tools{z-index:2;align-items:center;gap:4px;display:flex;position:absolute;transform:translate(-50%,-50%)}.rc-qty{border:1px solid color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--card);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;padding:0 8px;font-size:12px;font-weight:600;line-height:20px}.rc-link-btn{border:1px solid var(--border);background:var(--card);width:24px;height:24px;color:var(--muted-foreground);border-radius:50%;place-items:center;padding:0;font-size:15px;font-weight:600;line-height:1;display:inline-grid}.rc-link-btn:hover,.rc-link-btn:focus-visible{border-color:var(--primary);color:var(--foreground)}.rc-link-btn.is-danger:hover,.rc-link-btn.is-danger:focus-visible{border-color:var(--tone-danger);color:var(--tone-danger)}.rc-card{border:1px solid var(--border);background:var(--card);color:var(--foreground);border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex;position:absolute;overflow:hidden;box-shadow:0 1px 2px #001a180f}.rc-card.is-interactive{cursor:pointer}.rc-card.is-interactive:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}.rc-card.is-final{border-color:color-mix(in srgb, var(--primary) 60%, var(--border))}.rc-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 22%, transparent)}.rc-card.is-dragging{z-index:3;cursor:grabbing;box-shadow:0 8px 24px #001a182e}.rc-card-head{align-items:center;gap:8px;min-height:16px;display:flex}.rc-kind{color:var(--muted-foreground);letter-spacing:.06em;font-size:11px;font-weight:700;line-height:16px}.rc-card.is-assembly .rc-kind{color:var(--chip-info-fg)}.rc-card.is-final .rc-kind{color:var(--rc-final-fg)}.rc-card-x{width:24px;height:24px;color:var(--muted-foreground);background:0 0;border:0;border-radius:6px;place-items:center;margin:-4px -6px -4px auto;padding:0;font-size:16px;line-height:1;display:inline-grid}.rc-card-x:hover,.rc-card-x:focus-visible{background:var(--danger-soft);color:var(--tone-danger)}.rc-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:20px;overflow:hidden}.rc-sub{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:16px;overflow:hidden}.rc-meta{color:var(--muted-foreground);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}.rc-warn{color:var(--chip-warning-fg);font-size:12px;line-height:16px}.rc-art{background:var(--panel-soft);border-radius:6px;flex:auto;justify-content:center;align-items:center;min-height:0;margin-top:6px;padding:4px 6px;display:flex;overflow:hidden}.rc-snapshot{width:100%;height:100%;display:block}.rc-art:has(>.rc-rows){flex:none;align-items:flex-start}.rc-rows{align-self:start;gap:2px;width:100%;display:grid}.rc-row{grid-template-columns:84px minmax(0,1fr);align-items:center;gap:8px;height:20px;display:grid}.rc-wire svg{width:84px;height:17px;display:block}.rc-tube{width:84px;height:16px;display:block}.rc-tube rect{fill:var(--rc-tube)}.rc-tube line{stroke:var(--panel-soft);stroke-width:1px;opacity:.5}.rc-row-label{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.rc-more{color:var(--muted-foreground);font-size:12px;line-height:16px}.rc-faces{justify-content:center;align-items:flex-end;gap:12px;width:100%;display:flex}.rc-face-cell{justify-items:center;gap:2px;min-width:0;margin:0;display:grid}.rc-face-cell figcaption{max-width:120px;color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.rc-face{display:block}.rc-face-none{border:1px dashed var(--chip-box);min-width:44px;height:32px;color:var(--muted-foreground);border-radius:6px;place-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-grid}.rc-final{justify-content:center;align-items:center;width:100%;display:flex}.rc-cable{border-radius:2px;flex:1;max-width:72px;height:4px;margin:0 2px 14px}.rc-end{background:var(--chip-box);border-radius:50%;width:8px;height:8px;margin-bottom:14px}.rc-ops{margin:6px -6px 0;padding:0;list-style:none;display:grid}.rc-op{width:100%;height:22px;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;grid-template-columns:20px minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:0 6px;font-size:12px;font-weight:400;display:grid}.rc-op:hover{background:var(--accent)}.rc-op.is-selected{background:color-mix(in srgb, var(--primary) 14%, transparent)}.rc-op-no{color:var(--muted-foreground);font-variant-numeric:tabular-nums;text-align:right}.rc-op-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rc-op-note{background:var(--chip-warning-bg);color:var(--chip-warning-fg);border-radius:999px;padding:0 6px;font-size:11px;line-height:16px}.rc-op-time{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap}@media (pointer:coarse){.rc-link-btn,.rc-card-x{width:40px;height:40px}.rc-op{height:40px}}.hr{gap:8px;min-width:0;display:grid}.hr-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.hr-head h2{margin:0;font-size:16px;font-weight:600}.hr-meta{font-variant-numeric:tabular-nums;font-size:12px}.hr-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.hr-banner{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:0;display:flex}.hr-stale,.hr .warning-inline{margin:0;font-size:13px}.hr-empty{border:1px dashed var(--border);background:var(--card);border-radius:8px;justify-items:start;gap:8px;padding:24px;display:grid}.hr-empty p{color:var(--muted-foreground);margin:0;font-size:14px}.hr-body{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:12px;display:grid}.hr-body .rc-view{min-height:480px}.hr-sum{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:12px}.hr-panel{border:1px solid var(--border);background:var(--card);border-radius:8px;align-content:start;gap:12px;max-height:calc(100vh - 250px);padding:12px 16px;font-size:13px;display:grid;overflow:auto}.hr-panel-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.hr-panel .rc-kind.is-assembly{color:var(--chip-info-fg)}.hr-panel .rc-kind.is-final{color:var(--rc-final-fg)}.hr-hint{color:var(--muted-foreground);margin:0;font-size:13px}.hr-link{color:var(--rc-final-fg);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600}.hr-field{color:var(--muted-foreground);gap:4px;font-size:12px;display:grid}.hr-field input,.hr-field select{width:100%;color:var(--foreground);font-size:14px}.hr-pair{grid-template-columns:minmax(0,1fr) 120px;gap:8px;display:grid}.hr-section{border-top:1px solid var(--border);gap:6px;padding-top:8px;display:grid}.hr-section h3{margin:0;font-size:14px;font-weight:600}.hr-op{border-bottom:1px solid var(--sheet-line);grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:4px 8px;padding:6px 0;display:grid}.hr-op .hr-op-name{grid-column:1/4}.hr-op .hr-x{grid-column:4;justify-self:end}.hr-op>select{grid-column:1/3}.hr-num{color:var(--muted-foreground);gap:2px;font-size:11px;display:grid}.hr-num input{font-variant-numeric:tabular-nums;width:100%}.hr-op-time{font-variant-numeric:tabular-nums;white-space:nowrap;grid-column:3/-1;place-self:center end;font-weight:600}.hr-x{width:28px;height:28px;color:var(--muted-foreground);background:0 0;border:0;border-radius:6px;place-items:center;padding:0;font-size:16px;line-height:1;display:inline-grid}.hr-x:hover:not(:disabled),.hr-x:focus-visible{background:var(--danger-soft);color:var(--tone-danger)}.hr-row{justify-content:space-between;align-items:center;gap:8px;min-height:28px;display:flex}.hr-add{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hr-add select,.hr-add input{flex:1;min-width:160px}.hr-library{background:var(--panel-soft);border-radius:8px;gap:6px;padding:8px;display:grid}.hr-found{gap:2px;margin:0;padding:0;list-style:none;display:grid}.hr-found button{width:100%;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;gap:0;padding:4px 8px;font-size:13px;font-weight:400;display:grid}.hr-found button:hover,.hr-found button:focus-visible{background:var(--card)}.hr-found small{font-size:11px}.hr-parts{gap:2px;max-height:240px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.hr-parts li{border-bottom:1px solid var(--sheet-line);padding:2px 0;display:grid}.hr-parts small{text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.hr-remove{justify-self:start}@media (width<=1279px){.hr-body{grid-template-columns:minmax(0,1fr)}.hr-panel{max-height:none}}@media (pointer:coarse){.hr-x{width:40px;height:40px}.hr-found button{min-height:40px}}.coverings{gap:16px;display:grid}.cov-toolbar{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.cov-title{margin:0 0 8px;font-size:16px;font-weight:500}.cov-other{justify-items:start;gap:8px;display:grid}.cov-other>.cov-group{justify-self:stretch}.eq-split{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}.eq-split.has-card{grid-template-columns:minmax(0,1fr) minmax(380px,40%)}.eq-list{min-width:0}.eq-panel{overscroll-behavior:contain;min-width:0;max-height:calc(100dvh - 60px);position:sticky;top:0;overflow:auto}.eq-card{gap:12px;padding:12px 16px;display:grid}.eq-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.eq-title{gap:2px;min-width:0;display:grid}.eq-title b{overflow-wrap:anywhere;font-size:16px;line-height:1.25}.eq-title .muted{overflow-wrap:anywhere;font-size:12.5px}.eq-head-act{flex:none;align-items:center;gap:8px;display:flex}.eq-close{color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:22px;line-height:1}.eq-close:hover{color:var(--foreground)}.eq-ops{margin:0;padding:0;font-size:13px;list-style:none}.eq-ops li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:3px 4px;display:flex}.eq-ops li:hover{background:var(--accent)}.eq-table .num{text-align:right}.eq-econ{grid-template-columns:minmax(0,1fr);gap:0;margin:0;font-size:13px;display:grid}.eq-econ>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:8px;padding:4px 0;display:flex}.eq-econ dt{color:var(--muted-foreground);font-size:12px}.eq-econ dd{text-align:right;margin:0}.eq-econ .derived dd{color:var(--muted-foreground);font-style:italic}.eq-calc{border:1px dashed var(--border);border-radius:4px;margin-left:6px;padding:0 5px;font-size:11px;font-style:normal}.eq-split .eq-selected td{background:color-mix(in srgb, var(--primary) 14%, var(--card))}@media (width<=1100px),(pointer:coarse){.eq-split.has-card{grid-template-columns:minmax(0,1fr)}.eq-panel{z-index:45;background:var(--background,#f6f8f8);max-height:none;padding:8px;position:fixed;inset:0}.eq-econ{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.eq-econ{grid-template-columns:minmax(0,1fr)}}@media (pointer:coarse){.eq-close{min-width:40px;min-height:40px;font-size:26px}.eq-head-act .small,.eq-ops li{min-height:40px}}.eq-econ dd{white-space:nowrap;flex:none}.eq-econ dt{min-width:0}@media (pointer:coarse){.small,.secondary.small,.primary.small{min-height:40px}.notif-bell{min-width:40px;min-height:40px}.move-dialog,.autoplan-dialog{overscroll-behavior:contain;max-height:calc(100dvh - 32px)}button,a,summary,label,select,input,[role=button],[role=tab]{touch-action:manipulation}details>summary,.mo-finished>summary,.ship-more>summary{box-sizing:border-box;min-height:40px;padding-top:10px;padding-bottom:10px}.data-table .sort-head,.stock-table th .th-sort{width:100%;min-height:40px;text-align:inherit;display:block}.zg-col-customer .zg-link,td .link-button,.kit-meta .link-button{position:relative}.zg-col-customer .zg-link:after,td .link-button:after,.kit-meta .link-button:after{content:"";position:absolute;inset:-10px -4px}.data-table .sel-hit{justify-content:center;align-items:center;min-width:40px;min-height:40px;display:inline-flex}.zg-scale button{min-height:36px;padding:0 14px}.zg-scale{padding:2px}.mb-people .mb-cell,.mb-people .mb-cell>button{height:42px;min-height:42px}:root{--zg-font:13px;--zg-font-sm:12px;--zg-font-xs:12px}.etk-nav-route small,.etk-route-text small,.etk-op small{font-size:12px}}@media (width<=720px){.page-head{flex-wrap:wrap;row-gap:8px}.page-head h1{font-size:20px}.page-actions{flex-wrap:wrap;width:100%;margin-left:0}.page-actions>button,.page-actions>a{white-space:nowrap}.filters,.data-table .filters{position:static}.fulfillment-open{grid-template-columns:minmax(0,1fr)}.fulfillment-open>*{min-width:0;max-width:100%}.etk-sheet .etk-wrap,.etk-wrap{grid-template-columns:minmax(0,1fr)}.etk-op{min-width:0;padding:12px}.etk-op-head{flex-wrap:wrap}.etk-op-head h3{overflow-wrap:anywhere;font-size:16px}.etk-op code,.etk-op-head small{overflow-wrap:anywhere}.etk-nav{flex-wrap:wrap}.etk-op table{max-width:100%;display:block;overflow-x:auto}:has(>table.mb-week){-webkit-overflow-scrolling:touch;overflow-x:auto}table.mb-week{min-width:484px}table.mb-week.pl-table{min-width:848px}table.mb-week thead th:first-child,.mb-people table.mb-week thead th:first-child,.pl-table thead th:first-child{width:120px}table.mb-week tbody th{z-index:1;background:var(--card);position:sticky;left:0}.zg-legend{white-space:normal;flex-wrap:wrap;row-gap:4px;margin-left:0}.zg-table .zg-freeze{left:auto}.zg-table td.zg-col-project{z-index:3;left:0}.zg-table th.zg-col-head[title^=№\ проекта]{z-index:6;left:0}.zg-month-head span{left:80px}.db-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.db-tab-group{flex:none}.db-tab-row{flex-wrap:nowrap}.db-tab{white-space:nowrap}.login-card{padding:24px 20px}.login-card label{font-size:12px}}@media (width<=720px) and (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.login-card label input{font-size:16px!important}}@media (width<=720px){.data-table.dt-cards>.table-wrap{background:0 0;border:0;border-radius:0;max-height:none;overflow:visible}.data-table.dt-cards>.table-wrap>table.grid{table-layout:auto;width:100%;min-width:0;display:block}.data-table.dt-cards>.table-wrap>table.grid>thead{display:none}.data-table.dt-cards>.table-wrap>table.grid>tbody{gap:8px;display:grid}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n){border:1px solid var(--border);background:var(--card);border-radius:8px;grid-template-columns:minmax(0,1fr);padding:8px 12px;display:grid;position:relative}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td{width:auto;min-width:0;max-width:none;height:auto;box-shadow:none;color:var(--foreground);text-align:right;white-space:normal;overflow-wrap:anywhere;background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;font-size:14px;display:flex;position:static}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td :where(*){white-space:normal}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td:before{content:attr(data-label);max-width:45%;color:var(--muted-foreground);text-align:left;overflow-wrap:normal;flex:0 auto;font-size:12px;font-weight:400}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td>.cell-wrap{min-width:0;max-width:none}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.key{text-align:left;padding-right:36px;font-size:15px;font-weight:600;display:block}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.key:before{content:none}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.dt-fill{display:none}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td:has(>.cell-empty:only-child){display:none}.data-table.dt-cards>.table-wrap>table.selectable>tbody>tr:nth-child(n):not(.detail):not(.group-row)>td:first-child{width:auto;padding:0;position:absolute;top:4px;left:auto;right:4px}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.key:has(>.sel-hit:only-child){width:auto;padding:0;position:absolute;top:4px;left:auto;right:4px}.data-table.dt-cards>.table-wrap>table.selectable>tbody>tr:nth-child(n):not(.detail):not(.group-row)>td:first-child:before{content:none}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.key:has(>.sel-hit:only-child):before{content:none}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n):has(>td.key>.sel-hit:only-child){padding-right:48px}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n):is(.group-row,.detail){background:0 0;border:0;padding:0}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n):is(.group-row,.detail)>td,.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.empty{text-align:left;display:block}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n).group-row>td{padding:8px 4px 0;font-size:13px}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.empty{text-align:center}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n):is(.group-row,.detail)>td:before,.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n)>td.empty:before{content:none}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr.detail>td>.detail-body{max-width:none;position:static}.data-table.dt-cards>.table-wrap>table.grid>tbody>tr:nth-child(n).open{border-color:var(--primary)}.stock-page>.table-wrap{max-height:none;overflow:visible}.stock-page .stock-table{table-layout:auto;width:100%;min-width:0;padding:0;display:block}.stock-page .stock-table>colgroup,.stock-page .stock-table>thead{display:none}.stock-page .stock-table>tbody{display:grid}.stock-page .stock-table>tbody>tr{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:2px 12px;padding:8px 12px;display:flex}.stock-page .stock-table>tbody>tr:not(.stock-group-row):not(.stock-cards-row)>td{width:auto;box-shadow:none;white-space:normal;text-align:left;background:0 0;border:0;padding:0;font-size:13px;display:block;position:static}.stock-page .stock-table>tbody>tr>td.stock-name:not([colspan]){flex:100%;order:-1;font-weight:600}.stock-page .stock-table td.stock-name .table-link{white-space:normal;-webkit-line-clamp:unset;display:block}.stock-page .stock-table>tbody>tr:not(.stock-group-row):not(.stock-cards-row)>td.stock-dim{display:none}.stock-page .table-wrap .stock-table.grid>tbody>tr:nth-child(n):not(.stock-group-row):not(.stock-cards-row)>td{background:0 0}.stock-page .stock-table>tbody>tr.stock-group-row,.stock-page .stock-table>tbody>tr.stock-cards-row{padding:0;display:block}.stock-page .stock-table>tbody>tr.stock-group-row>td,.stock-page .stock-table>tbody>tr.stock-cards-row>td{white-space:normal;padding:8px 12px;display:block;position:static}.stock-page .stock-table .lot-cards{grid-template-columns:minmax(0,1fr);max-width:none;position:static}}@media (pointer:coarse){html .harness-root .he-toolbar-tabs button,html .graphic-editor-switcher button:not(.primary-action),html .harness-root .harness-section-navigation button,html .harness-root .he-controls-section .ui-control,html .harness-root .he-document-action,html .harness-root .he-utility-toggle{height:auto;min-height:40px}html .harness-root .info-hint>button{position:relative}html .harness-root .info-hint>button:after{content:"";position:absolute;inset:-11px}html .harness-root .he-canvas-status,html .harness-root .he-zoom-select,html .harness-root .he-settings-help{font-size:11px}}
