:root{--bg: #f6f7f3;--bg-alt: #e9ece2;--ink: #13221b;--muted: #3f5a4f;--panel: #fffffb;--stroke: #c6d0c3;--border: #d9e2d5;--accent: #0e7c66;--accent-2: #d95f02;--good: #4d9b2f;--warn: #b88516;--bad: #b53030;--surface: #f8faf9;--hover-bg: #f0f5f3;--text-secondary: #6b7280;--scrim: rgba(19, 34, 27, .35);--scrim-strong: rgba(19, 34, 27, .55);--good-bg-soft: #f0fdf4;--good-fg-soft: #16a34a;--bad-bg-soft: #fef2f2;--bad-fg-soft: #b91c1c;--warn-bg-soft: #fff7ed;--warn-fg-soft: #9a3412;--info-bg-soft: #dbeafe;--info-fg-soft: #1e40af;--status-success-bg: #d1e7dd;--status-success-fg: #0f5132;--status-success-border: #badbcc;--status-info-bg: #cfe2ff;--status-info-fg: #084298;--status-info-border: #b6d4fe;--status-info-soft-bg: #dbeafe;--status-info-soft-fg: #1e3a8a;--status-info-soft-border: #bfdbfe;--status-warn-bg: #fff7ed;--status-warn-fg: #9a3412;--status-warn-border: #fed7aa;--status-warn-soft-bg: #fff3cd;--status-warn-soft-fg: #664d03;--status-warn-soft-border: #ffecb5;--status-warn-amber-bg: #fef3c7;--status-warn-amber-fg: #92400e;--status-warn-amber-border: #fde68a;--status-danger-bg: #f8d7da;--status-danger-fg: #842029;--status-danger-border: #f5c2c7;--status-danger-strong-bg: #fef2f2;--status-danger-strong-fg: #b91c1c;--status-danger-strong-border: #fecdd3;--status-neutral-bg: #e9ecef;--status-neutral-fg: #495057;--status-neutral-border: #ced4da;--status-neutral-soft-bg: #f8f9fa;--status-neutral-soft-fg: #6c757d;--status-neutral-soft-border: #dee2e6;--status-neutral-gray-bg: #e5e7eb;--status-neutral-gray-fg: #374151;--status-neutral-gray-border: #d1d5db;--status-neutral-pale-bg: #f3f4f6;--status-neutral-pale-fg: #6b7280;--status-neutral-pale-border: #e5e7eb;--status-purple-bg: #ede9fe;--status-purple-fg: #5b21b6;--status-purple-border: #ddd6fe;--status-indigo-bg: #e0e7ff;--status-indigo-fg: #3730a3;--status-indigo-border: #c7d2fe;--tag-blasters-bg: #fde8e8;--tag-blasters-fg: #9f1239;--tag-blasters-border: #fecdd3;--tag-vests-bg: #e0f2fe;--tag-vests-fg: #0c4a6e;--tag-vests-border: #bae6fd;--tag-portals-bg: #e0e7ff;--tag-portals-fg: #3730a3;--tag-portals-border: #c7d2fe;--tag-batteries-bg: #fef3c7;--tag-batteries-fg: #92400e;--tag-batteries-border: #fde68a;--tag-chargers-bg: #ecfccb;--tag-chargers-fg: #365314;--tag-chargers-border: #d9f99d;--tag-accessories-bg: #cffafe;--tag-accessories-fg: #155e75;--tag-accessories-border: #a5f3fc;--tag-gellets-bg: #dcfce7;--tag-gellets-fg: #166534;--tag-gellets-border: #bbf7d0;--tag-spare-parts-bg: #f3e8ff;--tag-spare-parts-fg: #6b21a8;--tag-spare-parts-border: #e9d5ff;--tag-other-bg: #e5e7eb;--tag-other-fg: #374151;--tag-other-border: #d1d5db;--tag-overflow-bg: #f1f3f5;--tag-overflow-fg: #495057;--tag-overflow-border: #dee2e6;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sans: "Space Grotesk", "Avenir Next", "Segoe UI", sans-serif;--text-xs: .65rem;--text-sm: .75rem;--text-base: .85rem;--text-md: .95rem;--text-lg: 1.1rem;--text-xl: 1.3rem;--text-2xl: 1.5rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 14px;--radius-pill: 999px;--header-h: 49px;--shadow-sm: 0 2px 8px rgba(19, 34, 27, .06);--shadow: 0 10px 26px rgba(19, 34, 27, .09);--shadow-md: 0 10px 30px rgba(19, 34, 27, .12);--shadow-lg: 0 20px 50px rgba(19, 34, 27, .18);--component-col-width: 220px;--meta-col-width: 140px;--onhand-col-width: 72px;--week-col-width: 132px;--weekly-lane-min-height: 156px;--weekly-lane-max-height: 248px;--weekly-band-min-height: 76px;--weekly-band-install-fr: 1fr;--weekly-band-repair-fr: 1fr;--indent-l1: .7rem;--indent-l2: 1.35rem;--timeline-pad-x: .6rem}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:var(--sans);background:radial-gradient(circle at 12% 10%,rgba(14,124,102,.18),transparent 40%),radial-gradient(circle at 88% 0%,rgba(217,95,2,.2),transparent 36%),linear-gradient(180deg,#f3f4ef,#eef2e8 42%,#e7ecde)}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font-family:inherit}button.secondary{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease}button.secondary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 6%,var(--surface));border-color:var(--accent)}button.secondary:disabled{opacity:.5;cursor:default}button.legal-button{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease}button.legal-button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 6%,var(--surface));border-color:var(--accent)}button.legal-button:disabled{opacity:.5;cursor:default}button.legal-button.active{background:var(--accent);border-color:var(--accent);color:#fff}button.legal-button.active:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.app-shell{padding:1.1rem;display:flex;flex-direction:column;gap:.9rem}.panel{border:1px solid var(--stroke);border-radius:var(--radius-xl);background:var(--panel);box-shadow:var(--shadow)}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.9rem;padding:.9rem 1rem .5rem}.panel-header.compact{padding-bottom:.8rem}.panel-header h2,.panel-header h3{font-size:var(--text-md);line-height:1.25}.panel-header p{margin-top:.2rem;color:var(--muted);font-size:var(--text-base)}.panel-header-actions{display:inline-flex;align-items:center;gap:.4rem}.connected-planning-panel{overflow:visible;display:block;min-width:0;width:100%}.connected-top-sticky{position:sticky;top:0;z-index:28;background:var(--panel);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm)}.connected-pane-toolbar{display:flex;align-items:center;justify-content:flex-start;gap:.35rem;padding:.35rem 1rem;background:#f2f6eb;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.connected-pane-title{font-size:var(--text-xs);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.connected-pane-toggle-btn{padding:.2rem .44rem;font-size:var(--text-xs)}.connected-seam-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.45rem;padding:.35rem .9rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f2f6eb}.connected-seam-title{font-size:var(--text-xs);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.connected-seam-search-btn{width:28px;height:28px;border:1px solid var(--stroke);border-radius:var(--radius-md);background:#f8fcf5;color:#2d4f42;display:inline-grid;place-items:center;padding:0;cursor:pointer}.connected-seam-search-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.connected-seam-search-input{border:1px solid var(--stroke);border-radius:var(--radius-md);background:#f9fdf8;width:100%;min-width:0;padding:.4rem .54rem;font-size:var(--text-base)}.connected-week-header-scroll{overflow:auto;width:100%;padding:0 var(--timeline-pad-x);border-bottom:1px solid var(--border);background:#f5f9ef}.connected-week-header-grid{display:grid;width:max-content;min-width:max-content}.connected-header-cell{border-right:1px solid var(--border);padding:.46rem .45rem;min-height:38px;font-size:var(--text-xs);font-family:var(--mono);background:var(--surface);color:#2f4d40;display:flex;align-items:center;justify-content:center}.connected-header-cell-sticky{position:sticky;z-index:11;justify-content:flex-start;background:#eaf0e2}.connected-header-cell-1{left:0;width:var(--component-col-width);min-width:var(--component-col-width)}.connected-header-component{justify-content:space-between;gap:.35rem}.meta-column-toggle-btn{border:1px solid var(--stroke);background:var(--panel);color:var(--muted);border-radius:var(--radius-pill);padding:.15rem .42rem;font-size:var(--text-xs);font-family:var(--mono);cursor:pointer}.connected-header-cell-2{left:var(--component-col-width);width:var(--meta-col-width);min-width:var(--meta-col-width)}.connected-header-week{width:var(--week-col-width);min-width:var(--week-col-width)}.panel-toggle-btn{border:1px solid var(--stroke);background:var(--surface);color:var(--muted);border-radius:var(--radius-md);padding:.41rem .62rem;cursor:pointer;font-size:var(--text-sm);font-weight:700}.action-btn{border:1px solid color-mix(in srgb,var(--accent) 70%,#ffffff 30%);background:linear-gradient(180deg,#1f937a,#0f6d5b);color:#f3fffb;border-radius:var(--radius-md);padding:.45rem .7rem;cursor:pointer;font-size:var(--text-base);font-weight:600}.action-btn.secondary{background:linear-gradient(180deg,#e67b31,#cb5a11);border-color:#b64c0e}input,select,textarea{border:1px solid var(--stroke);border-radius:var(--radius-md);background:#fff;color:var(--ink);font-size:var(--text-base);padding:.48rem .56rem}textarea{resize:vertical}.weekly-board-panel{overflow:hidden}.weekly-board-scroll{overflow:auto;width:100%;padding:.2rem var(--timeline-pad-x) .8rem}.weekly-board-panel--embedded{border:none;border-radius:0;box-shadow:none;background:transparent}.weekly-board-panel--embedded .weekly-board-scroll{padding-top:0;padding-bottom:0}.weekly-board-grid{display:grid;gap:0;width:max-content;min-width:max-content}.weekly-board-spacer{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:122px;background:var(--surface);padding:.5rem;display:grid;gap:.2rem;align-content:start;color:#345246;font-size:var(--text-sm)}.weekly-board-spacer-bands{padding:0;height:100%;min-height:var(--weekly-lane-min-height);max-height:var(--weekly-lane-max-height);grid-template-rows:minmax(var(--weekly-band-min-height),var(--weekly-band-install-fr)) minmax(var(--weekly-band-min-height),var(--weekly-band-repair-fr));align-content:stretch;gap:0;overflow:hidden}.weekly-board-spacer-band{padding:.46rem .52rem;display:flex;align-items:center;border-bottom:2px solid var(--border)}.weekly-board-spacer-band:last-child{border-bottom:0}.weekly-board-spacer-band--install{background:linear-gradient(180deg,#f5f9f1,#eef5e8)}.weekly-board-spacer-band--repair{background:linear-gradient(180deg,#f8f2fa,#f2e9f6)}.weekly-board-spacer-bands .weekly-board-spacer-band strong{font-size:var(--text-md);letter-spacing:.05em;text-transform:uppercase;color:#2e4f43}.weekly-board-spacer-bands--meta .weekly-board-spacer-band{padding:0}.weekly-board-spacer-sticky{position:sticky;z-index:7}.weekly-board-spacer-1{left:0;width:var(--component-col-width);min-width:var(--component-col-width)}.weekly-board-spacer-2{left:var(--component-col-width);width:var(--meta-col-width);min-width:var(--meta-col-width)}.weekly-board-spacer strong{font-size:var(--text-sm);font-family:var(--mono)}.week-lane{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:var(--weekly-lane-min-height);max-height:var(--weekly-lane-max-height);width:var(--week-col-width);background:linear-gradient(180deg,#fbfdf8,#f7fbf2);display:flex;flex-direction:column;position:relative;z-index:1;overflow:hidden}.week-lane.is-over{outline:2px solid var(--accent);outline-offset:-1px}.week-lane-header{padding:.34rem .34rem .3rem;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:.2rem;font-size:var(--text-xs);color:#284338}.week-lane-header strong{font-family:var(--mono);font-size:var(--text-sm)}.week-lane-content{padding:.3rem;display:flex;flex-direction:column;gap:.28rem;overflow:hidden}.week-lane-content--split{padding:0;display:grid;flex:1 1 auto;min-height:0;height:100%;grid-template-rows:minmax(var(--weekly-band-min-height),var(--weekly-band-install-fr)) minmax(var(--weekly-band-min-height),var(--weekly-band-repair-fr));gap:0;overflow:hidden}.week-lane.no-week-header .week-lane-content{padding-top:.42rem}.week-lane.no-week-header .week-lane-content--split{padding-top:0}.week-lane-band{padding:.34rem;display:flex;flex-direction:column;gap:.25rem;min-height:0;height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(66,98,86,.32) transparent}.week-lane-band::-webkit-scrollbar{width:6px}.week-lane-band::-webkit-scrollbar-thumb{background:#42625647;border-radius:var(--radius-pill)}.week-lane-band--install{background:linear-gradient(180deg,#fbfdf8,#f4f9ee);border-bottom:2px solid #d2ddd0}.week-lane-band--repair{background:linear-gradient(180deg,#fcf9fe,#f6f0fa)}.weekly-board-collapsed-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:46px;background:var(--surface);display:flex;align-items:center;padding:.46rem .52rem;color:#345246;font-size:var(--text-xs)}.weekly-board-collapsed-cell strong{font-size:var(--text-sm);font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em}.weekly-board-collapsed-summary{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:46px;background:linear-gradient(180deg,#f9fdf7,#f3f8ee);display:grid;align-content:center;justify-items:center;gap:.08rem;color:#27453a;font-size:var(--text-sm);padding:.2rem}.weekly-board-collapsed-week{grid-template-rows:repeat(2,minmax(0,auto))}.weekly-board-collapsed-week-line{display:inline-flex;align-items:baseline;gap:.2rem;color:#365348;font-size:var(--text-xs)}.weekly-board-collapsed-week-line strong{font-family:var(--mono);font-size:var(--text-sm)}.demand-card{width:100%;text-align:left;border:1px solid transparent;border-radius:var(--radius-sm);padding:.28rem;cursor:grab;transition:transform .12s ease;color:#13221b}.demand-card:hover{transform:translateY(-1px)}.demand-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.demand-card.blocked{border-color:#d35f5f;box-shadow:inset 0 0 0 1px #d35f5f59}.demand-card-line{display:flex;gap:.16rem;align-items:center;justify-content:flex-start}.demand-card-customer{font-size:var(--text-xs);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;width:100%}.card-theme-committed{background:linear-gradient(135deg,#eaf6ee,#d8f0df)}.card-theme-forecast{background:linear-gradient(135deg,#e7f4f6,#d2ebee)}.card-theme-upgrade{background:linear-gradient(135deg,#fff2e4,#ffe7cb)}.card-theme-repair{background:linear-gradient(135deg,#f5edf9,#ecddf4)}.drag-overlay-card{width:180px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.8rem;align-items:start}.workspace-grid--editor-open{grid-template-columns:minmax(0,1fr) 440px}.workspace-main,.workspace-side{display:grid;gap:.8rem;min-width:0}.demand-editor-panel{padding-bottom:.7rem}.modal-backdrop{position:fixed;inset:0;background:var(--scrim);display:grid;place-items:center;z-index:120;padding:1rem}.modal-card{position:relative;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:min(720px,100%);max-height:calc(100vh - 2rem);overflow:auto}.modal-card.modal-sm{width:min(440px,100%)}.modal-card.modal-lg{width:min(1100px,100%)}.modal-card.modal-xl{width:min(1400px,calc(100vw - 32px))}.modal-header{position:sticky;top:0;z-index:2;background:var(--panel);border-bottom:1px solid var(--border);padding:.9rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.modal-title{display:flex;align-items:center;gap:.4rem;font-size:var(--text-md);font-weight:700;color:var(--ink)}.modal-subtitle{color:var(--text-secondary);font-size:var(--text-sm);margin-top:.2rem}.modal-body{padding:1rem;display:grid;gap:1rem}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.modal-close-btn{border:none;background:transparent;font-size:var(--text-lg);cursor:pointer;color:var(--text-secondary);padding:.2rem .4rem;border-radius:var(--radius-sm);transition:background .15s}.modal-close-btn:hover{background:var(--hover-bg)}.demand-editor-modal{width:min(980px,100%);max-height:88vh;overflow:auto}.impact-strip{padding:.66rem .85rem;display:grid;gap:.45rem;border-left:5px solid var(--accent);background:linear-gradient(180deg,#f7fffb,#eef8f2)}.impact-strip-main{display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap}.impact-strip-main strong{font-size:var(--text-base)}.impact-strip-main span{font-size:var(--text-base);color:#2b4e41}.impact-chip-row{display:flex;gap:.38rem;flex-wrap:wrap}.impact-chip{background:#e4f1e8;color:#264c3f;border:1px solid #bfd5c6;border-radius:var(--radius-pill);padding:.18rem .46rem;font-size:var(--text-sm);font-weight:600}.impact-details{display:flex;flex-wrap:wrap;gap:.48rem;font-size:var(--text-sm);color:#3a5b50}.side-panel-block{padding-bottom:.8rem}.po-panel{overflow:hidden;display:flex;flex-direction:column}.po-drawer-header{padding:.7rem .9rem .65rem;border-bottom:1px solid var(--stroke)}.po-drawer-header-top{display:flex;justify-content:space-between;align-items:center;min-height:24px;margin-bottom:.2rem}.po-drawer-close{background:none;border:none;cursor:pointer;color:var(--muted);padding:.15rem;border-radius:var(--radius-sm);display:grid;place-items:center;margin-left:auto}.po-drawer-close:hover{background:var(--bg-alt);color:var(--ink)}.po-drawer-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:.6rem}.po-drawer-title-block{min-width:0}.po-drawer-title{font-size:var(--text-md);font-weight:700;line-height:1.3;margin:0}.po-drawer-subtitle{font-size:var(--text-sm);color:var(--muted);font-weight:500}.inventory-table-wrap{overflow:auto;width:100%;padding:0 var(--timeline-pad-x) .75rem}.inventory-panel--embedded{border:none;border-radius:0;box-shadow:none;background:transparent}.inventory-panel--embedded .inventory-table-wrap{padding-top:.2rem;padding-bottom:.6rem}.inventory-table{width:max-content;min-width:max-content;border-collapse:separate;border-spacing:0;font-size:var(--text-sm)}.inventory-table th,.inventory-table td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:.38rem .45rem;text-align:right;min-width:var(--week-col-width);background:#fff}.inventory-table thead th{background:var(--surface);text-align:center;font-family:var(--mono);font-size:var(--text-sm);top:0;position:sticky;z-index:4}.inventory-table .sticky-col{position:sticky;z-index:3;background:#fbfdf8;text-align:left}.inventory-table .sticky-col-1{left:0;min-width:var(--component-col-width);width:var(--component-col-width)}.inventory-table .sticky-col-2{left:var(--component-col-width);min-width:var(--meta-col-width);width:var(--meta-col-width);font-family:var(--mono);text-align:left}.inventory-table .sticky-col-3{left:calc(var(--component-col-width) + var(--meta-col-width));min-width:var(--onhand-col-width);width:var(--onhand-col-width);font-family:var(--mono);text-align:right;padding-right:.65rem}.inventory-table.meta-column-collapsed .sticky-col-2{font-family:var(--mono);text-align:right;padding-right:.65rem}.inventory-table .sticky-col-span-2{min-width:calc(var(--component-col-width) + var(--meta-col-width));width:calc(var(--component-col-width) + var(--meta-col-width))}.component-onhand{font-variant-numeric:tabular-nums;color:var(--ink-2, #1e2a23)}.component-onhand--family{font-weight:700}.component-onhand-convertible{font-weight:600;font-size:.85em;color:var(--risk-green-fg, #1f6b4f);margin-left:.15em}.component-onhand-blocked{color:var(--risk-amber-fg, #b48413);font-weight:700;margin-left:.15em}.component-onhand--clickable{cursor:pointer}.component-onhand--clickable:hover{background:#1f6b4f14}.convertibility-popover{z-index:1000;width:520px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow-y:auto;background:#fff;border:1px solid var(--border-strong, #c4d4c0);border-radius:8px;box-shadow:var(--shadow-md, 0 10px 30px rgba(19, 34, 27, .12));padding:.9rem 1rem 1rem;font-weight:400;text-align:left;cursor:auto;color:var(--ink, #1e2a23)}.convertibility-popover-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-soft, #e0e9dd)}.convertibility-popover-title{font-size:var(--text-base);font-weight:700}.convertibility-popover-close{border:none;background:none;font-size:1.4rem;line-height:1;color:var(--ink-muted, #6b7d72);cursor:pointer;padding:0 .3rem}.convertibility-popover-close:hover{color:var(--ink, #1e2a23)}.convertibility-popover-totals{display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem}.convertibility-total{display:flex;flex-direction:column;gap:.1rem;padding:.45rem .65rem;border-radius:6px;background:var(--bg-2, #f5f8f1);flex:1}.convertibility-total--direct{background:#1f6b4f14}.convertibility-total--convertible{background:#b4841314}.convertibility-total--effective{background:#0f23190f;font-weight:700}.convertibility-total-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted, #6b7d72)}.convertibility-total-value{font-size:1.2rem;font-variant-numeric:tabular-nums;font-weight:700}.convertibility-total-op{font-size:1.1rem;color:var(--ink-muted, #6b7d72);font-weight:600}.convertibility-popover-section{margin-bottom:.85rem}.convertibility-popover-section-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted, #6b7d72);font-weight:700;margin-bottom:.4rem}.convertibility-popover-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.convertibility-popover-table td{padding:.25rem .4rem;border-bottom:1px solid var(--border-soft, #e8efe2)}.convertibility-popover-table td.num{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.convertibility-popover-table td.hint{font-size:.78rem;color:var(--ink-muted, #6b7d72)}.convertibility-popover-bottleneck{padding:.45rem .65rem;border-radius:6px;background:#b484131f;margin-bottom:.85rem;font-size:var(--text-sm)}.convertibility-popover-bottleneck--both,.convertibility-popover-bottleneck--conversion_kits{background:#b4841324}.convertibility-popover-bottleneck--gen1_vests{background:#1f6b4f1a}.convertibility-popover-bottleneck-label{font-weight:700;margin-right:.4rem}.convertibility-popover-cta{margin-top:.5rem;padding:.55rem .7rem;background:#1f6b4f14;border-left:3px solid var(--risk-green-fg, #1f6b4f);border-radius:4px;font-size:var(--text-sm);font-weight:500}.supply-detail-block{padding:.6rem;background:var(--bg-2, #f5f8f1);border-radius:6px;margin-bottom:.55rem}.supply-detail-block--compact{padding:.45rem .6rem}.supply-detail-block:last-child{margin-bottom:0}.supply-detail-header{display:flex;align-items:baseline;gap:.45rem;margin-bottom:.35rem;flex-wrap:wrap}.supply-detail-title{font-family:var(--mono);font-weight:700;font-size:var(--text-sm)}.supply-detail-name{font-size:.78rem;color:var(--ink-muted, #6b7d72);flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.supply-detail-sourcing{display:inline-block;padding:.02rem .35rem;border-radius:999px;font-size:.62rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.supply-detail-sourcing.sourcing-purchased{background:#1f6b4f1f;color:var(--risk-green-fg, #1f6b4f)}.supply-detail-sourcing.sourcing-fabricated,.supply-detail-sourcing.sourcing-assembled{background:#b4841324;color:var(--risk-amber-fg, #b48413)}.supply-detail-stats{display:flex;gap:.9rem;margin-bottom:.4rem;font-size:.82rem}.supply-detail-stat{display:inline-flex;align-items:baseline;gap:.25rem}.supply-detail-stat-label{color:var(--ink-muted, #6b7d72);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.supply-detail-stat-value{font-variant-numeric:tabular-nums;font-weight:700}.supply-detail-label{font-size:.7rem;font-weight:700;color:var(--ink-muted, #6b7d72);text-transform:uppercase;letter-spacing:.03em;margin-right:.4rem}.supply-detail-suppliers{font-size:var(--text-sm);margin-bottom:.4rem;line-height:1.6}.supply-detail-supplier{display:inline-block;padding:.05rem .45rem;margin-right:.3rem;margin-bottom:.15rem;border-radius:4px;background:#fff;border:1px solid var(--border-soft, #d6e0cf);font-size:.8rem}.supply-detail-supplier--preferred{border-color:var(--risk-green-fg, #1f6b4f);font-weight:600}.supply-detail-empty{font-size:.78rem;color:var(--ink-muted, #6b7d72);font-style:italic}.supply-detail-empty--inhouse{color:var(--risk-amber-fg, #b48413);font-style:normal;font-weight:500}.supply-detail-po-table{width:100%;border-collapse:collapse;font-size:.8rem}.supply-detail-po-table td{padding:.2rem .35rem;border-bottom:1px solid var(--border-soft, #e8efe2)}.supply-detail-po-table td.num{text-align:right;font-variant-numeric:tabular-nums}.supply-detail-po-table td.hint{color:var(--ink-muted, #6b7d72)}.supply-detail-po-vendor{font-weight:600}.supply-detail-po-pay{display:inline-block;padding:.02rem .32rem;border-radius:4px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.supply-detail-po-pay--paid{background:#1f6b4f1f;color:var(--risk-green-fg, #1f6b4f)}.supply-detail-po-pay--partial{background:#b4841324;color:var(--risk-amber-fg, #b48413)}.supply-detail-po-pay--unpaid{background:#b43c3c1f;color:#a83232}.component-refurb-chip{display:inline-block;margin-left:.4rem;padding:.05rem .4rem;border-radius:999px;font-size:.65rem;font-weight:600;letter-spacing:.02em;background:#78501e1f;color:#6b4e0e;border:1px solid rgba(120,80,30,.25);text-transform:uppercase}.week-col{width:var(--week-col-width);min-width:var(--week-col-width);max-width:var(--week-col-width)}.category-row td{background:#edf2e5;font-weight:700}.category-toggle{border:none;background:none;cursor:pointer;font-weight:700;display:inline-flex;gap:.35rem;align-items:center}.hierarchy-level-0{padding-left:0}.hierarchy-level-1{padding-left:var(--indent-l1)}.hierarchy-level-2{padding-left:var(--indent-l2)}.category-risk{margin-right:.55rem;font-size:var(--text-sm);color:#375045}.category-variant-count{font-weight:500;font-size:var(--text-sm);color:var(--ink-muted, #6b7d72);margin-left:.35rem}.category-historic{font-weight:500;font-size:.78rem;color:var(--ink-muted, #6b7d72);margin-left:.5rem;padding:.05rem .4rem;border-radius:3px;background:#0000000d}.category-historic--divergent{background:var(--risk-amber-bg, #fcf2dc);color:var(--risk-amber-fg, #6b4e0e)}.component-meta-historic{font-size:.72rem;color:var(--ink-muted, #6b7d72);margin-top:.15rem}.component-sourcing-badge{display:inline-block;margin-top:.2rem;padding:.05rem .4rem;border-radius:999px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:help}.component-sourcing-badge.sourcing-purchased{background:#0e7c661f;color:#0e7c66;border:1px solid rgba(14,124,102,.3)}.component-sourcing-badge.sourcing-assembled,.component-sourcing-badge.sourcing-fabricated{background:#b453091f;color:#b45309;border:1px solid rgba(180,83,9,.3)}.category-cell{background:#edf2e5;font-weight:700;text-align:center;font-size:var(--text-sm);color:var(--ink, #1f2d24)}.category-cell--red{background:var(--risk-red-bg, #fbe5e5);color:var(--risk-red-fg, #8a1f1f)}.category-cell--amber{background:var(--risk-amber-bg, #fcf2dc);color:var(--risk-amber-fg, #6b4e0e)}.planner-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem .75rem;background:var(--surface-subtle, #f6f8f3);border-bottom:1px solid var(--border-subtle, #d9e0d3);font-size:var(--text-sm)}.planner-toolbar-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.planner-toolbar-toggle{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;user-select:none;color:var(--ink, #1f2d24)}.planner-toolbar-toggle input{margin:0}.planner-toolbar-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--surface, #ffffff);border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.3rem .6rem;cursor:pointer;font-size:var(--text-sm);color:var(--ink, #1f2d24)}.planner-toolbar-btn:hover{background:var(--surface-hover, #eef2e8)}.planner-toolbar-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.4rem;height:1.1rem;padding:0 .35rem;border-radius:8px;background:var(--risk-amber-bg, #fcf2dc);color:var(--risk-amber-fg, #6b4e0e);font-size:.75rem;font-weight:600}.planner-toolbar-badge--drafts{background:var(--accent-bg, #e2ede5);color:var(--accent, #3a6b4b)}.planner-toolbar-btn.active{background:var(--accent, #3a6b4b);border-color:var(--accent, #3a6b4b);color:#fff}.planner-toolbar-btn.active .planner-toolbar-badge--drafts{background:#ffffff40;color:#fff}.po-review-panel{background:var(--surface, #fff);border:1px solid var(--border-subtle, #e6ebe1);border-radius:4px;margin:.75rem;display:flex;flex-direction:column;max-height:calc(100vh - 180px)}.po-review-header{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.po-review-header h2{margin:0;font-size:1.1rem;flex:1}.po-review-back{background:none;border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.3rem .6rem;cursor:pointer;font-size:var(--text-sm);color:var(--ink, #1f2d24)}.po-review-back:hover{background:var(--surface-hover, #eef2e8)}.po-review-count{font-size:var(--text-sm);color:var(--ink-muted, #6b7d72)}.po-review-filters{padding:.55rem 1rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);display:flex;flex-direction:column;gap:.55rem}.po-review-status-tabs{display:flex;gap:.35rem;flex-wrap:wrap}.po-review-status-tab{background:var(--surface, #fff);border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.25rem .65rem;font-size:var(--text-sm);display:inline-flex;gap:.4rem;align-items:center;cursor:pointer;color:var(--ink, #1f2d24)}.po-review-status-tab.active{background:var(--accent, #3a6b4b);color:#fff;border-color:var(--accent, #3a6b4b)}.po-review-tab-count{background:#00000014;border-radius:3px;padding:0 .3rem;font-size:.72rem;font-weight:600}.po-review-status-tab.active .po-review-tab-count{background:#ffffff40;color:#fff}.po-review-row-filters{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.po-review-select,.po-review-search{border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.3rem .5rem;font-size:var(--text-sm);background:var(--surface, #fff);color:var(--ink, #1f2d24)}.po-review-search{flex:1;min-width:200px}.po-review-bulk{display:flex;gap:.4rem;align-items:center;background:var(--surface-subtle, #f6f8f3);padding:.3rem .5rem;border-radius:4px;font-size:var(--text-sm)}.po-review-approve-btn{background:var(--accent, #3a6b4b);color:#fff;border:none;border-radius:4px;padding:.3rem .7rem;font-size:var(--text-sm);font-weight:600;cursor:pointer}.po-review-approve-btn:disabled{opacity:.5;cursor:not-allowed}.po-review-clear-btn{background:none;border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.3rem .5rem;font-size:var(--text-sm);cursor:pointer}.po-review-table-wrap{overflow:auto;flex:1}.po-review-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.po-review-table th,.po-review-table td{padding:.4rem .55rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);text-align:left;vertical-align:middle}.po-review-table th{background:var(--surface-subtle, #f6f8f3);font-weight:600;position:sticky;top:0;z-index:1}.po-review-row--pending{opacity:.55}.po-review-code{font-family:var(--font-mono, monospace);font-size:.83em}.po-review-component{display:flex;flex-direction:column}.po-review-component-id{font-family:var(--font-mono, monospace);font-size:.83em}.po-review-component-name{font-size:.78rem;color:var(--ink-muted, #6b7d72)}.po-review-numeric{text-align:right;font-variant-numeric:tabular-nums}.po-source-chip{display:inline-block;padding:.1rem .45rem;border-radius:3px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.po-source-chip--depot{background:var(--accent-bg, #e2ede5);color:var(--accent, #3a6b4b)}.po-source-chip--fusion_purchase{background:#eef2f8;color:#324a72}.po-source-chip--fusion_production{background:#f8f0e8;color:#6b4e0e}.po-status-chip{display:inline-block;padding:.1rem .45rem;border-radius:3px;font-size:.78rem;font-weight:600}.po-status-chip--po_drafted{background:var(--risk-amber-bg, #fcf2dc);color:var(--risk-amber-fg, #6b4e0e)}.po-status-chip--submitted,.po-status-chip--approved_by_us{background:var(--accent-bg, #e2ede5);color:var(--accent, #3a6b4b)}.po-status-chip--supplier_confirmed,.po-status-chip--production_start,.po-status-chip--production_complete{background:#eef2f8;color:#324a72}.po-status-chip--shipment_sent,.po-status-chip--transit{background:#f0e8f3;color:#5a3a72}.po-status-chip--arrival{background:#e8f3ec;color:#2e5a3f}.po-review-archive-btn{background:none;border:1px solid var(--border, #cdd6c5);color:var(--ink-muted, #6b7d72);border-radius:50%;width:1.5rem;height:1.5rem;cursor:pointer;font-size:.9rem;line-height:1}.po-review-archive-btn:hover{background:var(--risk-red-bg, #fbe5e5);color:var(--risk-red-fg, #8a1f1f);border-color:var(--risk-red-fg, #8a1f1f)}.po-review-empty{text-align:center;padding:2rem!important;color:var(--ink-muted, #6b7d72)}.po-review-new-btn{background:var(--accent, #3a6b4b);color:#fff;border:none;border-radius:4px;padding:.35rem .75rem;font-size:var(--text-sm);font-weight:600;cursor:pointer}.po-review-new-btn:hover{filter:brightness(1.1)}.create-po-modal-overlay{position:fixed;inset:0;background:#0f19138c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem}.create-po-modal{background:var(--surface, #fff);border-radius:6px;box-shadow:0 12px 32px #0f191340;width:min(520px,100%);max-height:90vh;display:flex;flex-direction:column}.create-po-modal-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);display:flex;align-items:center;justify-content:space-between}.create-po-modal-header h2{margin:0;font-size:1.1rem}.create-po-modal-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--ink-muted, #6b7d72)}.create-po-modal-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.85rem;overflow-y:auto}.create-po-field{display:flex;flex-direction:column;gap:.35rem}.create-po-field-label{font-size:var(--text-sm);font-weight:600;color:var(--ink, #1f2d24);display:flex;align-items:center;gap:.4rem}.create-po-required{color:var(--risk-red-fg, #8a1f1f);font-weight:700}.create-po-preferred-chip{background:var(--accent-bg, #e2ede5);color:var(--accent, #3a6b4b);font-size:.72rem;font-weight:600;padding:.1rem .4rem;border-radius:3px;margin-left:.4rem}.create-po-field-input{border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.4rem .55rem;font-size:var(--text-sm);background:var(--surface, #fff);color:var(--ink, #1f2d24);font-family:inherit}.create-po-field-input--required{border-color:var(--risk-red-fg, #8a1f1f);background:var(--risk-red-bg, #fef0f0)}.create-po-field-hint{font-size:.78rem;color:var(--ink-muted, #6b7d72)}.create-po-field-warn{font-size:.78rem;color:var(--risk-amber-fg, #6b4e0e)}.combobox{position:relative;width:100%}.combobox-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.5rem .7rem;border:1px solid var(--border, #cdd6c5);background:var(--surface, #ffffff);border-radius:4px;font-size:var(--text-sm);text-align:left;cursor:pointer;color:var(--ink, #2b3a30)}.combobox-trigger:hover{border-color:var(--accent, #245e2f)}.combobox-trigger:focus{outline:none;border-color:var(--accent, #245e2f);box-shadow:0 0 0 2px #245e2f26}.combobox-trigger--invalid{border-color:var(--danger-red, #c04848);background:#c048480d}.combobox-trigger--disabled{opacity:.6;cursor:not-allowed}.combobox-trigger-selected{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1 1 auto}.combobox-trigger-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.combobox-trigger-placeholder{color:var(--ink-muted, #6b7d72);flex:1 1 auto}.combobox-trigger-caret{color:var(--ink-muted, #6b7d72);font-size:.7rem;flex-shrink:0}.combobox-popover{z-index:1200;background:var(--surface, #ffffff);border:1px solid var(--border, #cdd6c5);border-radius:4px;box-shadow:0 10px 24px #0f191326;display:flex;flex-direction:column;max-height:380px}.combobox-search{width:100%;padding:.5rem .7rem;border:0;border-bottom:1px solid var(--border-subtle, #e6ebe1);font-size:var(--text-sm);background:var(--surface-alt, #f5f7f1);border-radius:4px 4px 0 0}.combobox-search:focus{outline:none;background:var(--surface, #ffffff)}.combobox-list{list-style:none;margin:0;padding:0;overflow-y:auto}.combobox-group{list-style:none}.combobox-group-header{padding:.35rem .7rem;background:var(--surface-alt, #f5f7f1);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--ink-muted, #6b7d72);position:sticky;top:0;z-index:1}.combobox-group-list{list-style:none;margin:0;padding:0}.combobox-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .7rem;cursor:pointer;font-size:var(--text-sm);border-bottom:1px solid var(--border-subtle, #e6ebe1)}.combobox-item:last-child{border-bottom:0}.combobox-item--active{background:var(--surface-alt, #f5f7f1)}.combobox-item--selected{background:#245e2f14}.combobox-item-main{min-width:0;flex:1 1 auto}.combobox-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.combobox-item-sublabel{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72);font-family:var(--font-mono, monospace)}.combobox-badge{padding:.1rem .45rem;border-radius:3px;font-size:.7rem;white-space:nowrap;flex-shrink:0}.combobox-badge--accent{background:var(--accent-soft, #fff8e1);color:var(--accent-strong, #b87b14)}.combobox-badge--info{background:#245e2f1f;color:var(--accent, #245e2f)}.combobox-badge--muted{background:var(--border-subtle, #e6ebe1);color:var(--ink-muted, #6b7d72)}.combobox-empty{padding:.75rem;text-align:center;font-size:var(--text-sm);color:var(--ink-muted, #6b7d72);font-style:italic}.create-po-modal-footer{padding:.75rem 1.25rem;border-top:1px solid var(--border-subtle, #e6ebe1);display:flex;gap:.55rem;justify-content:flex-end}.create-po-cancel{background:var(--surface, #fff);border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.4rem .85rem;cursor:pointer;font-size:var(--text-sm);color:var(--ink, #1f2d24)}.create-po-submit{background:var(--accent, #3a6b4b);color:#fff;border:none;border-radius:4px;padding:.4rem 1rem;font-size:var(--text-sm);font-weight:600;cursor:pointer}.create-po-submit:disabled{opacity:.45;cursor:not-allowed}.planner-toolbar-sync{color:var(--ink-muted, #6b7d72);font-size:var(--text-xs, .78rem)}.planner-toolbar-sync-sep{color:var(--ink-muted, #6b7d72);opacity:.6}.planner-toolbar-sync-stale{color:var(--warn-amber, #b87b14);font-weight:500}.planner-toolbar-sync-warn{color:var(--danger-red, #c04848);font-weight:600}.past-due-modal-overlay{position:fixed;inset:0;background:#0f19138c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem}.past-due-modal{background:var(--surface, #ffffff);border-radius:6px;box-shadow:0 12px 32px #0f191340;width:min(1100px,100%);max-height:90vh;display:flex;flex-direction:column}.past-due-modal-header{padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);position:relative}.past-due-modal-header h2{margin:0 0 .25rem;font-size:1.1rem}.past-due-modal-subtitle{margin:0;color:var(--ink-muted, #6b7d72);font-size:var(--text-sm)}.past-due-modal-close{position:absolute;top:.75rem;right:1rem;background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--ink-muted, #6b7d72)}.past-due-modal-filters{display:flex;gap:.5rem;padding:.65rem 1.25rem;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.past-due-filter{background:var(--surface, #ffffff);border:1px solid var(--border, #cdd6c5);border-radius:4px;padding:.25rem .65rem;cursor:pointer;font-size:var(--text-sm);color:var(--ink, #1f2d24)}.past-due-filter.active{background:var(--accent, #3a6b4b);border-color:var(--accent, #3a6b4b);color:#fff}.past-due-modal-table-wrap{overflow:auto;flex:1}.past-due-modal-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.past-due-modal-table th,.past-due-modal-table td{padding:.45rem .6rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);text-align:left;vertical-align:top}.past-due-modal-table th{background:var(--surface-subtle, #f6f8f3);font-weight:600;position:sticky;top:0}.past-due-code{font-family:var(--font-mono, monospace);font-size:.85em}.past-due-copy-btn{background:none;border:none;padding:0;font:inherit;color:var(--accent, #3a6b4b);cursor:pointer;text-decoration:underline}.past-due-reason-chip{display:inline-block;padding:.1rem .45rem;border-radius:3px;font-size:.78rem;font-weight:600}.past-due-reason-past_due{background:var(--risk-red-bg, #fbe5e5);color:var(--risk-red-fg, #8a1f1f)}.past-due-reason-dateless{background:var(--risk-amber-bg, #fcf2dc);color:var(--risk-amber-fg, #6b4e0e)}.past-due-numeric{text-align:right;font-variant-numeric:tabular-nums}.past-due-top-items{display:flex;flex-direction:column;gap:.15rem}.past-due-top-item{font-family:var(--font-mono, monospace);font-size:.78rem;color:var(--ink-muted, #6b7d72)}.past-due-class{font-size:.78rem;color:var(--ink-muted, #6b7d72)}.past-due-empty{text-align:center;padding:1.5rem!important;color:var(--ink-muted, #6b7d72)}.component-name{font-weight:600}.component-cell-clickable{cursor:pointer}.component-row-content{display:inline-flex;align-items:center}.component-inventory-btn{margin-left:.4rem;padding:.05rem .35rem;background:transparent;border:1px solid transparent;border-radius:3px;cursor:pointer;font-size:.85rem;line-height:1;opacity:.55;transition:opacity .12s,background .12s,border-color .12s}.component-inventory-btn:hover{opacity:1;background:var(--surface-alt, #f5f7f1);border-color:var(--border, #cdd6c5)}.expand-indicator{margin-right:.3rem;color:#426256}.focused-component-row td{box-shadow:inset 0 0 0 1px #0f7f6959}.expanded-component-row td{border-bottom-color:#b7ccc0}.po-timeline-subrow td{background:#fbfdf9;border-bottom:1px solid #cdd9cf}.po-timeline-summary-row td{background:#f4f8f1}.po-timeline-label{display:grid;gap:.15rem;align-content:center}.po-timeline-label strong{font-size:var(--text-xs)}.po-timeline-label span{font-size:var(--text-xs);color:#557167;line-height:1.2}.po-timeline-actions{display:flex;flex-wrap:wrap;gap:.25rem;align-content:center}.po-timeline-actions-compact{margin-top:.18rem}.po-inline-btn{border:1px solid #c1d1c3;background:#f2f7f0;color:#2d4b40;border-radius:var(--radius-sm);padding:.15rem .33rem;font-size:var(--text-xs);cursor:pointer}.po-inline-btn.confirm{border-color:#7eb89f;background:#daf0e5;color:#174336}.po-empty-row td{color:#5d756c;font-size:var(--text-xs)}.po-add-row td{background:#f6faf4}.po-add-row-cell{text-align:left}.po-add-row-content{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.34rem}.po-add-row-btn{border:1px dashed #9dbcae;background:#edf7ef;color:#225142;border-radius:var(--radius-md);padding:.22rem .45rem;font-size:var(--text-xs);font-weight:700;cursor:pointer}.po-row-main{display:grid;gap:.08rem;align-content:center}.po-row-main-content{display:grid;gap:.08rem}.po-timeline-po-row.clickable-row td{cursor:pointer}.po-row-main strong{font-size:var(--text-xs);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.po-row-main span{font-size:var(--text-xs);color:#5c756c;line-height:1.05}.po-empty-text{display:inline-block}.po-row-meta{display:grid;gap:.1rem;align-content:center;color:#3b574c;font-size:var(--text-xs);text-transform:uppercase;line-height:1.05}.po-timeline-cell{text-align:left;vertical-align:middle;padding:0!important}.po-progress-cell{position:relative;height:32px;min-height:32px}.po-timeline-po-row .po-progress-cell{border-right-color:#c9d6cb24}.po-progress-track{position:relative;height:80%;top:10%;width:calc(100% + 2px);margin-left:-1px;border-radius:0;background:#edf3ec;overflow:visible;border:0;z-index:2}.po-progress-segment{position:absolute;top:0;bottom:0;border-radius:0;z-index:3}.po-progress-segment.cap-single{border-radius:var(--radius-pill)}.po-progress-segment.cap-start{border-radius:var(--radius-pill) 0 0 var(--radius-pill)}.po-progress-segment.cap-end{border-radius:0 var(--radius-pill) var(--radius-pill) 0}.po-progress-segment.cap-mid{border-radius:0}.po-progress-segment.phase-order{background:#76a8d1}.po-progress-segment.phase-production{background:#63af5a}.po-progress-segment.phase-transit{background:#e08a34}.po-phase-seam{position:absolute;top:0;bottom:0;width:1px;transform:translate(-.5px);background:#14251c38;z-index:4;pointer-events:none}.po-phase-center-label{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:5;color:#14251cf5;font-size:var(--text-xs);font-family:var(--mono);font-weight:600;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.46);pointer-events:none}.po-arrival-marker{position:absolute;top:-6px;bottom:-6px;width:2px;background:#b5352c;transform:translate(-1px)}.po-arrival-marker:before{content:"";position:absolute;width:7px;height:7px;border-radius:var(--radius-pill);background:#b5352c;top:-2px;left:-2px}.po-arrival-marker em{position:absolute;top:-15px;left:-7px;font-style:normal;font-size:var(--text-xs);color:#9e2b22;font-family:var(--mono);white-space:nowrap}.po-timeline-po-row.ghost-row .po-row-main span{color:#2d5f4d}.po-timeline-po-row.ghost-row .po-progress-track{border-style:dashed}.po-timeline-po-row.ghost-row .po-progress-segment{outline:1px dashed rgba(29,78,61,.8)}.po-timeline-po-row.ghost-row .po-arrival-marker{background:var(--accent)}.po-timeline-po-row.ghost-row .po-arrival-marker:before{background:var(--accent)}.po-timeline-po-row.ghost-row .po-arrival-marker em{color:var(--accent)}.component-meta{color:var(--muted)}.risk-green{background:linear-gradient(180deg,#ecf8e8,#e2f0dd)!important;color:#315a1b}.risk-amber{background:linear-gradient(180deg,#fff5dd,#f8e7bb)!important;color:#7c590e}.risk-red{background:linear-gradient(180deg,#fde5e5,#f7d1d1)!important;color:#842727;font-weight:700}.filter-row{padding:0 1rem .7rem;display:grid;gap:.5rem}.filter-row.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.po-list{flex:0 1 auto;min-height:0;max-height:220px;overflow-y:auto;padding:.5rem .9rem;display:grid;gap:.35rem;align-content:start}.po-list-empty{font-size:var(--text-sm);color:var(--muted);text-align:center;padding:1.2rem 0}.po-card{width:100%;border:1px solid #d7e0d5;border-radius:var(--radius-md);padding:.45rem .55rem;text-align:left;background:#fdfefc;cursor:pointer;transition:border-color .12s,box-shadow .12s}.po-card:hover{border-color:#a8c0b4}.po-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#f5fbf8}.po-card-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.po-card-vendor{font-size:var(--text-base);font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.po-card-qty{font-size:var(--text-base);font-weight:700;font-family:var(--mono);color:var(--ink);flex-shrink:0}.po-card-meta{display:flex;justify-content:space-between;align-items:center;gap:.4rem;margin-top:.22rem}.po-card-dates{font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.po-card-tags{display:flex;gap:.25rem;flex-shrink:0}.po-tag{font-size:var(--text-xs);font-weight:600;padding:.1rem .35rem;border-radius:var(--radius-sm);white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}.po-tag--lifecycle{background:#e7f0eb;color:#2a5042}.po-tag--lifecycle.po-tag--arrival{background:#d9f0e0;color:#1f6e33}.po-tag--lifecycle.po-tag--transit,.po-tag--lifecycle.po-tag--shipment_sent{background:#ddeaf5;color:#254a72}.po-tag--payment{background:#f5ede0;color:#6b4e1f}.po-tag--payment.po-tag--paid{background:#d9f0e0;color:#1f6e33}.po-card-component{font-size:var(--text-xs);color:var(--muted);margin-top:.18rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.po-editor{flex:1 1 auto;display:grid;gap:.4rem;padding:.65rem .9rem .7rem;border-top:1px solid var(--stroke);align-content:start;overflow-y:auto}.po-editor-heading{font-size:var(--text-sm);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0}.po-editor-row{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.po-field,.po-field-full{display:grid;gap:.15rem}.po-field-label{font-size:var(--text-xs);font-weight:600;color:#4a6b5f}.po-field-auto-hint{font-size:var(--text-xs);color:var(--muted);padding:0 .25rem;margin-top:-.15rem}.po-field-reset{background:none;border:none;color:var(--accent);font-size:var(--text-xs);cursor:pointer;padding:0;text-decoration:underline}.po-field-reset:hover{color:var(--accent-2)}.po-editor select,.po-editor input{font-size:var(--text-base);padding:.38rem .48rem}.po-editor .date-popover-field{font-size:var(--text-xs);font-weight:600;color:#4a6b5f}.po-editor .date-popover-trigger{font-size:var(--text-base);padding:.38rem .48rem}.focused-suggestion{margin:0 .9rem .5rem;border:1px solid #c9d9cb;border-radius:var(--radius-md);padding:.55rem;display:grid;gap:.3rem;background:#f7fcf5;font-size:var(--text-sm);color:#2f4e42}.date-popover-field{font-size:var(--text-sm);color:#315045;display:grid;gap:.2rem}.date-popover-wrap{position:relative}.date-popover-trigger{width:100%;text-align:left;border:1px solid var(--stroke);border-radius:var(--radius-md);background:#fff;color:var(--ink);font-size:var(--text-base);padding:.46rem .56rem;cursor:pointer}.date-popover-panel{position:absolute;top:calc(100% + .3rem);left:0;z-index:35;border:1px solid #c8d7c8;border-radius:var(--radius-md);background:#fcfffb;box-shadow:var(--shadow-md);padding:.35rem}.date-popover-panel .rdp-root{--rdp-accent-color: var(--accent);--rdp-today-color: var(--accent);--rdp-day-width: 33px;--rdp-day-height: 33px;margin:0}.date-popover-panel .rdp-today:not(.rdp-selected){border:1px solid #8fbda8;border-radius:var(--radius-md);font-weight:700}.date-popover-actions{display:flex;gap:.3rem;justify-content:flex-end;margin-top:.3rem}.date-popover-helper{font-size:var(--text-xs);color:#557167}.empty-state,.collapsed-hint,.state-empty,.state-loading,.state-error{margin:0 1rem;border:1px dashed var(--stroke);border-radius:var(--radius-md);padding:.6rem;color:var(--muted);font-size:var(--text-sm);text-align:center}.collapsed-hint{background:var(--surface)}.state-error{border-style:solid;border-color:var(--bad);color:var(--bad)}.po-collapsed-summary{margin:0 1rem;border:1px solid #c8d6c7;border-radius:var(--radius-md);padding:.58rem;background:#f7fbf5;display:grid;gap:.45rem}.po-collapsed-summary p{font-size:var(--text-sm);color:#355549}.po-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.po-stat-grid dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:#587165}.po-stat-grid dd{margin:.08rem 0 0;font-family:var(--mono);font-size:var(--text-sm);color:#183d31}.suggestion-list{display:grid;gap:.5rem;padding:0 1rem}.suggestion-card{border:1px solid #ced9c9;border-radius:var(--radius-md);background:#fbfef9;padding:.55rem}.suggestion-card header{display:flex;align-items:center;justify-content:space-between;gap:.35rem}.suggestion-card dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:.42rem 0}.suggestion-card dt{font-size:var(--text-xs);color:#4a6659;text-transform:uppercase;letter-spacing:.04em}.suggestion-card dd{margin:.1rem 0 0;font-family:var(--mono);font-size:var(--text-sm)}.suggestion-card p{margin:0 0 .5rem;font-size:var(--text-sm);color:#3b5449}.severity-badge{border-radius:var(--radius-pill);padding:.16rem .44rem;font-size:var(--text-xs);font-weight:700;border:1px solid transparent}.sev-critical{background:#fce3e3;border-color:#e2b6b6;color:#8f2f2f}.sev-high{background:#fff0db;border-color:#e7cfab;color:#875915}.sev-medium{background:#e8f2e2;border-color:#c5d6b8;color:#325b24}.repair-receipt{padding:.2rem 1rem 0;display:grid;gap:.55rem}.repair-receipt-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;border-bottom:1px solid #d7e2d5;padding-bottom:.35rem}.repair-receipt-header strong{font-size:var(--text-base);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repair-receipt-header span{font-size:var(--text-xs);color:#446357;font-family:var(--mono)}.repair-receipt-grid{display:grid;gap:.4rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.repair-receipt-grid div{border:1px solid #d7e2d5;background:#f7fbf4;border-radius:var(--radius-md);padding:.35rem .45rem;display:grid;gap:.08rem}.repair-receipt-grid dt{font-size:var(--text-xs);color:#537066;text-transform:uppercase;letter-spacing:.04em}.repair-receipt-grid dd{margin:0;font-size:var(--text-sm);color:#1a3c31;font-family:var(--mono)}.repair-lineitems-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);border:1px solid #d5e0d3;border-radius:var(--radius-md);overflow:hidden}.repair-lineitems-table th,.repair-lineitems-table td{border-bottom:1px solid #dbe5d9;padding:.32rem .45rem;text-align:left}.repair-lineitems-table th{background:var(--surface);font-family:var(--mono);font-size:var(--text-xs);color:#3e5d50;text-transform:uppercase;letter-spacing:.04em}.repair-lineitems-table td:nth-child(2),.repair-lineitems-table td:nth-child(3){text-align:right;font-family:var(--mono)}.repair-lineitems-table tbody tr:last-child td{border-bottom:0}.repair-lineitems-total{margin:0;font-size:var(--text-sm);color:#335347}.repair-lineitems-total strong{font-family:var(--mono);font-size:var(--text-base)}.demand-editor-grid{display:grid;grid-template-columns:minmax(230px,1.2fr) repeat(4,minmax(140px,1fr));gap:.5rem;padding:.2rem 1rem 0}.demand-field{font-size:var(--text-sm);color:#315045;display:grid;gap:.2rem}.demand-field-notes{grid-column:1 / -1}@media(max-width:1180px){.workspace-grid{grid-template-columns:1fr}.workspace-side{grid-template-columns:repeat(2,minmax(0,1fr))}.demand-editor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.demand-field-notes{grid-column:1 / -1}}@media(max-width:860px){.workspace-side,.demand-editor-grid,.repair-receipt-grid,.filter-row.three-col{grid-template-columns:1fr}.suggestion-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-table .sticky-col,.inventory-table .sticky-col-1,.inventory-table .sticky-col-2,.inventory-table .sticky-col-3,.connected-header-cell-sticky,.weekly-board-spacer-sticky{position:static}.connected-top-sticky{position:static;box-shadow:none}.inventory-table th{position:static}.weekly-board-grid,.inventory-table{min-width:100%}}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:2rem 1rem;background:radial-gradient(1200px 500px at 0% 0%,rgba(14,124,102,.14),transparent 60%),linear-gradient(145deg,#f3f6f0,#e9ede4 55%,#f7faf5)}.auth-card{width:min(580px,100%);background:#fff;border:1px solid var(--border);border-radius:var(--radius-xl);padding:1.4rem;box-shadow:var(--shadow-md);display:grid;gap:.95rem}.auth-card h1{margin:0;font-size:var(--text-2xl);letter-spacing:-.01em;color:var(--ink)}.auth-kicker{margin:0;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:700}.auth-subtitle{margin:0;color:var(--muted);line-height:1.45}.auth-google-block{background:var(--surface);border:1px solid #d8deec;border-radius:var(--radius-lg);padding:.9rem;display:grid;gap:.65rem}.auth-google-host{min-height:44px;display:grid;align-items:center}.auth-google-fallback{width:100%}.auth-divider{margin-top:.2rem;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#566285}.auth-note{margin:0;color:#5f6983;font-size:var(--text-base);line-height:1.35}.auth-fallback{display:grid;gap:.45rem}.auth-mode-switch{display:inline-flex;border:1px solid var(--stroke);border-radius:var(--radius-md);overflow:hidden;width:fit-content}.auth-mode-switch button{border:0;background:var(--surface);padding:.5rem .85rem;color:var(--ink);font-weight:600}.auth-mode-switch button.active{background:var(--accent);color:#fff}.auth-form{display:grid;gap:.75rem}.auth-form label{display:grid;gap:.3rem;font-size:var(--text-md);color:#2b3755;font-weight:600}.auth-form input,.invite-form input{border:1px solid #c3ccdd;border-radius:var(--radius-md);padding:.58rem .7rem;font:inherit;background:#fcfdff}.auth-actions{display:flex;gap:.5rem;flex-wrap:wrap}.auth-actions .secondary{background:#eef2ff;color:#1b356b}.auth-error{margin:0;color:var(--bad);font-size:var(--text-md)}@media(max-width:560px){.auth-card{padding:1rem;border-radius:var(--radius-xl)}}.admin-success{margin:0;color:#14532d;background:#dcfce7;border:1px solid #86efac;border-radius:var(--radius-md);padding:.55rem .7rem;font-size:var(--text-md)}.auth-meta{display:grid;grid-template-columns:9rem 1fr;margin:0;gap:.35rem .5rem}.auth-meta dt{color:var(--text-secondary)}.auth-meta dd{margin:0;font-weight:600}.nexus-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;border-bottom:1px solid #d9deea;padding:.75rem 1rem;background:#fff;position:sticky;top:0;z-index:20}.nexus-header-brand{display:flex;align-items:center;gap:.5rem}.nexus-header-brand svg{width:28px;height:28px}.nexus-header-brand h1{margin:0;font-size:var(--text-lg)}.nexus-header-nav{display:flex;justify-self:center;gap:.35rem}.nexus-header-nav a,.nexus-header-nav button{border:1px solid #d9deea;background:#f4f5f7;color:#3b4252;padding:.35rem .85rem;border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:background .15s,color .15s;text-decoration:none}.nexus-header-nav a:hover,.nexus-header-nav button:hover{background:var(--hover-bg)}.nexus-header-nav a.active,.nexus-header-nav button.active{background:var(--accent);border-color:var(--accent);color:#fff}.nav-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;margin-left:.35rem;border-radius:999px;background:var(--bad);color:#fff;font-size:.65rem;font-weight:700;line-height:1}.nexus-header-nav a.active .nav-unread-badge{background:#fff;color:var(--accent)}.nexus-header-user{display:flex;align-items:center;gap:.6rem;position:relative}.nexus-user-trigger{border:0;background:none;color:var(--text-secondary);font-size:var(--text-base);cursor:pointer;display:flex;align-items:center;gap:.3rem;font-family:inherit;padding:.2rem 0}.nexus-user-trigger:hover{color:var(--accent)}.nexus-user-caret{font-size:.65rem;opacity:.7}.nexus-user-dropdown{position:absolute;top:100%;right:0;margin-top:.4rem;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:280px;z-index:1000;padding:.5rem 0}.nexus-user-section{padding:.5rem .75rem}.nexus-user-section-label{display:block;font-size:var(--text-xs);color:var(--muted);font-weight:500;margin-bottom:.35rem}.nexus-user-phone-display{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);color:var(--fg)}.nexus-user-phone-edit{display:flex;gap:.35rem;align-items:center}.nexus-user-input{flex:1;padding:.3rem .5rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);font-family:inherit}.nexus-user-save-btn{padding:.3rem .6rem;font-size:var(--text-xs);font-weight:600;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer}.nexus-user-save-btn:disabled{opacity:.5;cursor:default}.nexus-user-link{background:none;border:none;color:var(--accent);font-size:var(--text-xs);cursor:pointer;padding:0;font-family:inherit}.nexus-user-link:hover{text-decoration:underline}.nexus-user-hint{display:block;font-size:var(--text-xs);color:var(--warning, #e65100);margin-top:.25rem}.nexus-user-error{display:block;font-size:var(--text-xs);color:var(--danger);margin-top:.25rem}.nexus-user-verify-msg{display:block;font-size:var(--text-xs);color:var(--muted);margin-bottom:.3rem}.nexus-user-divider{height:1px;background:var(--stroke);margin:.35rem 0}.nexus-user-dropdown-item{display:block;width:100%;text-align:left;padding:.4rem .75rem;font-size:var(--text-sm);color:var(--fg);background:none;border:none;cursor:pointer;font-family:inherit}.nexus-user-dropdown-item:hover{background:var(--hover)}.nexus-signout-link{border:0;background:none;color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;padding:0;font-family:inherit}.nexus-signout-link:hover{text-decoration:underline}.nexus-admin-btn{display:flex;align-items:center;justify-content:center;border:0;background:none;color:var(--text-secondary);font-size:var(--text-lg);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:color .15s}.nexus-admin-btn:hover,.nexus-admin-btn.active{color:var(--accent, #0e7c66)}.nexus-changelog-btn{position:relative}.nexus-changelog-btn.has-unseen:after{content:"";position:absolute;top:4px;right:4px;width:7px;height:7px;background:var(--bad);border:1.5px solid var(--panel);border-radius:50%}.admin-panel{padding:1rem;display:grid;gap:1rem}.admin-header{display:flex;justify-content:space-between;align-items:center}.admin-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.admin-tabs button{border:1px solid #c9cfdb;border-radius:var(--radius-md);background:#fff;color:#5d6578;padding:.45rem .8rem}.admin-tabs button:hover{border-color:#aeb8ca;color:#2f3a55}.admin-tabs button.active{background:#edf4ff;border-color:#8db0ef;color:#1c3f86;font-weight:600}.admin-section-indicator{margin:0;color:var(--text-secondary);font-size:var(--text-md)}.admin-block{background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-xl);padding:.9rem;display:grid;gap:.75rem}.admin-kpi-grid{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.shipping-settings-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.shipping-settings-form{display:grid;gap:1.1rem}.shipping-settings-section{display:grid;gap:.5rem}.shipping-settings-section h3{margin:0;font-size:var(--text-md);color:var(--ink)}.shipping-settings-grid{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.shipping-settings-grid .shipping-settings-wide{grid-column:1 / -1}.shipping-settings-grid label{display:grid;gap:.25rem;font-size:var(--text-base);color:var(--text-secondary)}.shipping-settings-grid input{padding:.45rem .55rem;border:1px solid #d7dbe4;border-radius:var(--radius-md);font:inherit}.shipping-settings-flags{display:grid;gap:.55rem}.shipping-settings-flag{display:flex;align-items:flex-start;gap:.55rem;padding:.55rem .65rem;border:1px solid #dce2ef;border-radius:var(--radius-md);background:#f8fafe}.shipping-settings-flag input{margin-top:.2rem}.shipping-settings-flag-text{display:grid;gap:.15rem}.shipping-settings-actions{display:flex;justify-content:flex-end}.admin-kpi-card{border:1px solid #dce2ef;border-radius:var(--radius-md);background:#f8fafe;padding:.65rem .75rem;display:grid;gap:.2rem}.admin-kpi-card span{color:var(--text-secondary);font-size:var(--text-base)}.admin-kpi-card strong{font-size:var(--text-md);color:var(--ink)}.admin-muted{margin:0;color:var(--text-secondary);font-size:var(--text-base)}.admin-block-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.admin-search-input{width:100%;max-width:24rem;padding:.4rem .6rem;margin-bottom:.5rem;border:1px solid var(--border-default);border-radius:var(--radius-md);font:inherit;color:var(--text-primary);background:var(--surface-base)}.admin-sort-control{display:grid;gap:.2rem;font-size:var(--text-base);color:var(--text-secondary)}.admin-sort-control select{border:1px solid #c6ccda;border-radius:var(--radius-md);padding:.35rem .45rem;font:inherit;color:#1f2430;background:#fff}.admin-row{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #edf1f8;padding-top:.65rem}.admin-row p{margin:.2rem 0 0;color:var(--text-secondary);font-size:var(--text-base)}.approved-table-wrap{overflow-x:auto}.approved-table{width:100%;border-collapse:collapse;font-size:var(--text-md)}.approved-table th,.approved-table td{text-align:left;padding:.55rem .3rem;border-top:1px solid #edf1f8}.approved-table th{color:var(--text-secondary);font-weight:600}.mapping-table td{vertical-align:top}.role-menu summary{cursor:pointer;color:#1b356b}.role-menu-list{margin-top:.4rem;display:grid;gap:.35rem;min-width:8.5rem}.role-menu-item{display:flex;align-items:center;gap:.35rem;color:#1f2430}.role-menu-note{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.invite-form{display:flex;gap:.5rem}.invite-form input{flex:1}.people-editor-form{display:grid;gap:1rem}.people-editor-section{display:grid;gap:.75rem}.people-editor-section h4{margin:0;font-size:var(--text-md);color:var(--ink)}.people-editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.people-editor-form label{display:grid;gap:.3rem;color:var(--ink);font-size:var(--text-md);font-weight:600}.people-editor-form input,.people-editor-form select,.people-editor-form textarea{width:100%;min-width:0;border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.58rem .7rem;font:inherit;background:var(--panel);color:var(--ink)}.people-checkbox-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:.5rem}.people-checkbox-row input{width:auto}.people-readonly-label{margin-bottom:.35rem;color:var(--ink);font-size:var(--text-md);font-weight:600}.people-pill-row{display:flex;flex-wrap:wrap;gap:.35rem}.people-pill{display:inline-flex;align-items:center;max-width:100%;border:1px solid var(--status-info-soft-border);border-radius:var(--radius-pill);background:var(--status-info-soft-bg);color:var(--status-info-soft-fg);padding:.18rem .5rem;font-size:var(--text-sm);overflow-wrap:anywhere}.people-muted{color:var(--text-secondary);font-size:var(--text-sm)}.people-mailbox-list{display:grid;gap:.45rem}.people-mailbox-row{display:flex;justify-content:space-between;gap:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:.55rem .65rem}.fusion-upload-dropzone{position:relative;display:grid;place-items:center;min-height:92px;border:1px dashed #9db0d8;border-radius:var(--radius-md);background:#f6f9ff;color:#2b3e68;font-size:var(--text-md);text-align:center;padding:.7rem;cursor:pointer}.fusion-upload-dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.fusion-upload-dropzone-inner{pointer-events:none}.fusion-upload-dropzone-inner.active{color:#123d9f;font-weight:700}.fec-admin{margin-top:.5rem}.fec-admin-summary{display:flex;align-items:center;gap:.5rem;font-size:.92rem;color:var(--text-secondary, #555);margin-bottom:.75rem}.fec-admin-summary-sep{color:var(--text-muted, #999)}.fec-admin-unmapped-count{color:#b45309;font-weight:600}.fec-admin-search{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.fec-admin-search input{flex:1;max-width:360px;padding:.35rem .6rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.85rem}.fec-admin-count{font-size:.82rem;color:var(--text-muted, #999)}.fec-admin-table{font-size:.82rem}.fec-admin-table th,.fec-admin-table td{padding:.35rem .5rem}.fec-col-id{font-weight:500;max-width:260px;word-break:break-word}.fec-col-bool{text-align:center;width:70px}.fec-col-actions{white-space:nowrap;display:flex;gap:.35rem}.fec-col-actions button{font-size:.78rem;padding:.2rem .5rem}.fec-edit-input{width:100%;padding:.25rem .4rem;border:1px solid var(--border, #d1d5db);border-radius:4px;font-size:.82rem}.fec-edit-code{max-width:100px}.fec-edit-select{padding:.25rem .3rem;border:1px solid var(--border, #d1d5db);border-radius:4px;font-size:.82rem}.fec-empty{color:var(--text-muted, #999)}tr.fec-row-unmapped{background:#fef3c7}tr.fec-row-unmapped:hover{background:#fde68a}.customers-panel{padding:1rem;display:grid;gap:1rem}.customers-panel.customers-panel-split{grid-template-columns:1fr;align-items:start}.customers-panel.customers-panel-split.with-preview{grid-template-columns:minmax(0,1fr) minmax(520px,1.1fr);align-items:start}.customers-panel.customers-panel-detail-page{grid-template-columns:1fr}.customer-section,.customer-detail-panel{background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-xl);padding:.9rem;display:grid;gap:.75rem}.customers-header-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.customers-search-form{display:inline-flex;gap:.5rem;align-items:center;flex-wrap:wrap}.customers-search-form input{min-width:240px}.customers-table{width:100%;border-collapse:collapse;font-size:var(--text-base);background:#fff;border:1px solid #e1e6ef}.customers-table th,.customers-table td{padding:.48rem .52rem;border-top:1px solid #edf1f8;vertical-align:top}.customers-table th{text-align:left;color:var(--text-secondary);font-size:var(--text-sm);letter-spacing:.02em;text-transform:uppercase;background:var(--surface)}.customers-table th.num,.customers-table td.num{text-align:right}.customer-mono{font-family:var(--mono);font-size:var(--text-sm)}.customers-sort-btn{border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;display:inline-flex;gap:.25rem;align-items:center;cursor:pointer;padding:0}.sort-arrow{font-size:var(--text-xs)}.toggle-col{width:2rem;text-align:center}.row-disable-btn{width:18px;height:18px;border-radius:var(--radius-pill);border:1px solid #c9cfdb;background:#fff;color:#5d6578;font-size:var(--text-sm);font-weight:700;line-height:1;cursor:pointer}.row-disable-btn:hover{border-color:var(--accent);background:var(--accent);color:#fff}.selected-row{background:#edf4ff}.customer-row{cursor:pointer}.customers-preview-panel{background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-xl);display:grid;gap:.75rem;max-height:calc(100vh - 110px);overflow-y:auto;overscroll-behavior:contain;align-self:start;position:sticky;top:.8rem}.customers-preview-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.8rem .9rem 0;position:sticky;top:0;background:#fff;z-index:2}.customers-preview-head h3{margin:0}.customers-preview-panel .customer-detail-panel{border:0;border-radius:0;padding:.9rem}.customers-total-row{background:#f5f7fb;font-weight:700}.row-excluded{opacity:.45}.customers-disabled-block summary{cursor:pointer;color:#1b356b;font-weight:600}.customer-connection-dots{display:inline-flex;gap:3px;margin-left:6px;vertical-align:middle}.conn-dot{display:inline-block;width:6px;height:6px;border-radius:50%}.conn-qb{background:var(--accent-green, #22c55e)}.conn-hs{background:var(--accent-orange, #f97316)}.conn-fec{background:var(--accent-blue, #3b82f6)}.customers-filter-tabs{display:flex;gap:.35rem;margin-bottom:.5rem}.customers-filter-tab{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:var(--radius-pill);border:1px solid #d7dbe4;background:transparent;font-size:var(--text-sm);font-weight:500;cursor:pointer;opacity:.7;color:var(--text-primary)}.customers-filter-tab:hover{opacity:1}.customers-filter-tab.active{opacity:1;background:var(--surface);border-color:var(--accent);color:var(--accent)}.customers-filter-tab-count{font-size:11px;background:#e5e7eb;color:#374151;border-radius:var(--radius-pill);padding:0 5px;font-weight:600}.customers-filter-tab.active .customers-filter-tab-count{background:#dbeafe;color:#1e3a8a}.customers-group-header{cursor:pointer;user-select:none}.customers-group-header td{background:#f0f3f8;font-weight:700;font-size:var(--text-base);padding:.5rem .55rem;border-top:2px solid var(--border);border-bottom:1px solid var(--border)}.customers-group-header:hover td{background:#e4e9f1}.customers-group-toggle{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--text-secondary);margin-right:.5rem;vertical-align:middle;transition:transform .15s}.customers-group-toggle.collapsed{transform:rotate(-90deg)}.customers-group-count{margin-left:.5rem;font-size:var(--text-sm);font-weight:400;color:var(--text-secondary)}.customers-child-row td:first-child{border-left:3px solid var(--accent)}.customers-child-row td:nth-child(2){padding-left:1.4rem}.customers-child-row-last td{border-bottom:2px solid var(--stroke)}.customer-name-link{color:#1b4ab2;font-weight:600;text-decoration:none}.customer-name-link:hover{text-decoration:underline}.customers-detail-route-header{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.customer-stat-row{display:flex;gap:.7rem;flex-wrap:wrap}.customer-section-note{margin-top:-.35rem;color:var(--text-secondary);font-size:var(--text-sm)}.customer-contacts-table td{vertical-align:top}.customer-contact-subtext{margin-top:.18rem;color:var(--text-secondary);font-size:var(--text-sm)}.customer-contact-alert{margin-top:.35rem}.customer-contact-chip-row,.customer-affiliation-list{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}.customer-contact-chip,.customer-source-chip,.customer-affiliation-current,.customer-affiliation-other{display:inline-flex;align-items:center;border-radius:var(--radius-pill);border:1px solid var(--stroke);padding:.1rem .42rem;font-size:var(--text-xs);font-weight:700;white-space:nowrap}.customer-contact-chip{background:var(--surface);color:var(--text-secondary)}.customer-source-hubspot{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-border)}.customer-source-fusion{background:var(--status-info-soft-bg);color:var(--status-info-soft-fg);border-color:var(--status-info-soft-border)}.customer-source-support_email{background:var(--status-warn-soft-bg);color:var(--status-warn-soft-fg);border-color:var(--status-warn-soft-border)}.customer-source-quickbooks{background:var(--status-warn-bg);color:var(--status-warn-fg);border-color:var(--status-warn-border)}.customer-source-ss4,.customer-source-manual{background:var(--status-neutral-soft-bg);color:var(--status-neutral-soft-fg);border-color:var(--status-neutral-soft-border)}.customer-affiliation-current{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-border)}.customer-affiliation-other{background:var(--surface);color:var(--text-secondary)}.customer-stat-box{border:1px solid #d8deec;border-radius:var(--radius-md);background:var(--surface);padding:.55rem .65rem;min-width:138px}.customer-stat-box .label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.customer-stat-box .value{margin-top:.2rem;font-weight:700;color:var(--ink)}.customer-kpi-card{cursor:pointer;text-align:left;transition:box-shadow .15s ease,transform .15s ease}.customer-kpi-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.kpi-note{margin-top:.28rem;color:#5f6983;font-size:var(--text-sm)}.customer-tag-list{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.2rem}.item-tag{display:inline-block;border-radius:var(--radius-pill);padding:2px 8px;font-size:var(--text-xs);font-weight:600;white-space:nowrap;border:1px solid transparent}.tag-blasters{background:var(--tag-blasters-bg);color:var(--tag-blasters-fg);border-color:var(--tag-blasters-border)}.tag-vests{background:var(--tag-vests-bg);color:var(--tag-vests-fg);border-color:var(--tag-vests-border)}.tag-portals{background:var(--tag-portals-bg);color:var(--tag-portals-fg);border-color:var(--tag-portals-border)}.tag-batteries{background:var(--tag-batteries-bg);color:var(--tag-batteries-fg);border-color:var(--tag-batteries-border)}.tag-chargers{background:var(--tag-chargers-bg);color:var(--tag-chargers-fg);border-color:var(--tag-chargers-border)}.tag-accessories{background:var(--tag-accessories-bg);color:var(--tag-accessories-fg);border-color:var(--tag-accessories-border)}.tag-gellets{background:var(--tag-gellets-bg);color:var(--tag-gellets-fg);border-color:var(--tag-gellets-border)}.tag-spare-parts{background:var(--tag-spare-parts-bg);color:var(--tag-spare-parts-fg);border-color:var(--tag-spare-parts-border)}.tag-other{background:var(--tag-other-bg);color:var(--tag-other-fg);border-color:var(--tag-other-border)}.tag-overflow{background:var(--tag-overflow-bg);color:var(--tag-overflow-fg);border-color:var(--tag-overflow-border)}.status-badge,.source-badge{display:inline-block;padding:2px 7px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:700;letter-spacing:.2px;text-transform:uppercase;white-space:nowrap;border:1px solid transparent}.source-form{background:var(--tag-vests-bg);color:var(--tag-vests-fg);border-color:var(--tag-vests-border)}.source-email{background:#e8f7ea;color:#176337;border-color:#b9e3c2}.source-phone{background:var(--tag-spare-parts-bg);color:var(--tag-spare-parts-fg);border-color:var(--tag-spare-parts-border)}.status-delivered{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-border)}.status-in-transit{background:var(--status-info-bg);color:var(--status-info-fg);border-color:var(--status-info-border)}.status-shipped{background:var(--status-info-soft-bg);color:var(--status-info-soft-fg);border-color:var(--status-info-soft-border)}.status-not-shipped{background:var(--status-warn-bg);color:var(--status-warn-fg);border-color:var(--status-warn-border)}.status-label-created{background:var(--status-warn-soft-bg);color:var(--status-warn-soft-fg);border-color:var(--status-warn-soft-border)}.status-exception{background:var(--status-danger-bg);color:var(--status-danger-fg);border-color:var(--status-danger-border)}.status-unknown{background:var(--status-neutral-bg);color:var(--status-neutral-fg);border-color:var(--status-neutral-border)}.status-missing{background:var(--status-neutral-soft-bg);color:var(--status-neutral-soft-fg);border-color:var(--status-neutral-soft-border)}.status-open{background:var(--status-info-soft-bg);color:var(--status-info-soft-fg);border-color:var(--status-info-soft-border)}.status-in_transit{background:var(--status-warn-amber-bg);color:var(--status-warn-amber-fg);border-color:var(--status-warn-amber-border)}.status-fulfilled{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-border)}.status-closed{background:var(--status-neutral-gray-bg);color:var(--status-neutral-gray-fg);border-color:var(--status-neutral-gray-border)}.status-archived{background:var(--status-neutral-pale-bg);color:var(--status-neutral-pale-fg);border-color:var(--status-neutral-pale-border)}.status-overdue{background:var(--status-danger-strong-bg);color:var(--status-danger-strong-fg);border-color:var(--status-danger-strong-border)}.customer-ticket-link{color:#1b4ab2;text-decoration:none;font-weight:600;white-space:nowrap}.customer-ticket-link:hover{text-decoration:underline}.tracking-group{border:1px solid #d8deec;border-radius:var(--radius-md);background:#fbfcfd;padding:.55rem;margin-bottom:.5rem}.tracking-head{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;margin-bottom:.3rem}.tracking-meta{color:var(--text-secondary);font-size:var(--text-sm)}.orders-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.orders-subtitle{color:var(--text-secondary);margin-top:.1rem}.orders-filters{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.orders-filters input,.orders-filters select{font-size:var(--text-md);padding:.45rem .6rem}.orders-table-wrapper{position:relative}.orders-error,.orders-loading,.orders-empty{margin-top:.75rem;color:var(--muted);font-size:var(--text-sm);text-align:center}.orders-attention{border-left:3px solid var(--warn);background:var(--bg-alt);border-radius:var(--radius-md);padding:.5rem .75rem;margin-bottom:.75rem}.orders-attention summary{font-size:var(--text-sm);cursor:pointer;list-style:revert}.orders-attention summary strong{font-weight:600}.orders-attention-body{margin-top:.5rem}.orders-attention-body .customers-table{font-size:var(--text-sm)}.attention-no-date{color:var(--warn);font-weight:600}.attention-past-date{color:var(--bad);font-weight:600}.fusion-link{color:var(--accent);text-decoration:none}.fusion-link:hover{text-decoration:underline}.priority-toggle{border:1px solid #d0d7e6;background:#f8fafc;color:#9ca3af;border-radius:var(--radius-md);padding:4px 8px;cursor:pointer;transition:all .15s ease}.priority-toggle:hover{color:#f59e0b;border-color:#fcd34d}.priority-toggle.active{background:#fff7ed;color:#ea580c;border-color:#fdba74}.classification-pill{display:inline-flex;align-items:center;gap:.35rem;padding:4px 10px;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:600;border:1px solid transparent}.classification-source{text-transform:uppercase;font-size:var(--text-xs);font-weight:700;color:#4b5563;background:#f3f4f6;padding:2px 6px;border-radius:var(--radius-pill)}.classification-core{background:#e0f2fe;color:#0c4a6e;border-color:#bae6fd}.classification-upgrade{background:#fef3c7;color:#92400e;border-color:#fde68a}.classification-repair{background:#fef2f2;color:#b91c1c;border-color:#fecdd3}.classification-infra{background:#ecfccb;color:#365314;border-color:#d9f99d}.classification-consumables{background:#dcfce7;color:#166534;border-color:#bbf7d0}.classification-equipment{background:#ede9fe;color:#5b21b6;border-color:#ddd6fe}.classification-mixed{background:#e5e7eb;color:#374151;border-color:#d1d5db}.orders-drawer{margin-top:1rem;border:1px solid #e1e6ef;background:#fff;border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-md)}.orders-modal{position:fixed;inset:0;z-index:140}.orders-modal-backdrop{position:absolute;inset:0;background:var(--scrim-strong)}.orders-modal-card{position:relative;z-index:1;width:min(1400px,calc(100vw - 32px));max-height:calc(100vh - 32px);margin:16px auto;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-xl);overflow:auto;box-shadow:var(--shadow-lg)}.orders-modal-header{position:sticky;top:0;z-index:2;background:var(--panel);border-bottom:1px solid var(--border);padding:.9rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.orders-modal-title{display:flex;align-items:center;gap:.4rem;font-size:var(--text-md);font-weight:700}.orders-modal-subtitle{color:var(--text-secondary);margin-top:.2rem}.orders-modal-actions{display:flex;align-items:center;gap:.5rem}.orders-modal-body{padding:1rem;display:grid;gap:1rem}.orders-meta-row{display:flex;gap:1.5rem;flex-wrap:wrap;align-items:flex-end}.orders-classification-select{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.orders-classification-select select{padding:.55rem .65rem;min-width:220px}.orders-totals{display:flex;gap:.8rem;font-weight:600;align-items:center}.orders-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.orders-drawer-title{display:flex;align-items:center;gap:.35rem;font-size:var(--text-md);font-weight:700}.orders-drawer-subtitle{color:var(--text-secondary);margin-top:.25rem}.orders-close-btn{border:none;background:transparent;font-size:var(--text-lg);cursor:pointer;color:#9ca3af}.orders-classification{margin-top:.75rem}.orders-label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:.35rem}.orders-classification-actions{display:flex;flex-wrap:wrap;gap:.35rem}.orders-chip{border:1px solid #d1d5db;background:#f9fafb;border-radius:var(--radius-pill);padding:6px 10px;font-size:var(--text-base);cursor:pointer}.orders-chip.selected{background:#111827;color:#fff;border-color:#111827}.orders-reset-btn{margin-top:.35rem;background:none;border:none;color:#1b4ab2;cursor:pointer;padding:0}.orders-auto-note{margin-top:.35rem;color:var(--text-secondary)}.orders-section{margin-top:1rem}.orders-notes{background:#f8fafc;border:1px solid #e5e7eb;border-radius:var(--radius-md);padding:.75rem}.sn-admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.sn-admin-header h3{margin:0}.sn-admin-live-toggle{display:flex;align-items:center;gap:.5rem}.sn-live-dot{width:10px;height:10px;border-radius:var(--radius-pill)}.sn-live-on{background:var(--good)}.sn-live-off{background:var(--muted)}.sn-live-label{font-size:var(--text-sm);color:var(--text-secondary)}.sn-live-btn{font-size:var(--text-xs);font-weight:500;padding:.2rem .5rem;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--stroke)}.sn-live-btn-on{color:var(--good)}.sn-live-btn-off{color:var(--bad)}.sn-carrier-overview{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.75rem}.sn-carrier-card{border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.6rem .75rem}.sn-carrier-api{border-left:3px solid var(--good)}.sn-carrier-link{border-left:3px solid var(--muted)}.sn-carrier-card-header{display:flex;align-items:center;gap:.35rem;margin-bottom:.2rem}.sn-carrier-dot{width:8px;height:8px;border-radius:var(--radius-pill);flex-shrink:0}.sn-carrier-card-title{font-size:var(--text-sm);font-weight:600;color:var(--ink);text-transform:uppercase;letter-spacing:.03em}.sn-carrier-card-name{font-size:var(--text-sm);font-weight:500;color:var(--ink);margin-bottom:.15rem}.sn-carrier-card-desc{font-size:var(--text-xs);color:var(--text-secondary);margin:0 0 .3rem;line-height:1.5}.sn-carrier-emails{display:flex;flex-wrap:wrap;gap:.25rem}.sn-carrier-email-tag{font-size:var(--text-xs);padding:.1rem .4rem;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--muted)}.sn-section-heading{font-size:var(--text-md);color:var(--ink);margin:0 0 .5rem}.sn-layout{display:grid;grid-template-columns:160px 1fr 240px;gap:.75rem;min-height:400px}.sn-status-tabs{display:flex;flex-direction:column;gap:.25rem}.sn-status-tab{text-align:left;padding:.45rem .6rem;border:1px solid transparent;border-radius:var(--radius-md);background:none;cursor:pointer;font-size:var(--text-sm);color:var(--ink);transition:background .15s;display:flex;justify-content:space-between;align-items:center}.sn-status-tab:hover{background:var(--hover-bg)}.sn-status-tab.active{background:var(--surface);border-color:var(--stroke);font-weight:600}.sn-status-tab.disabled-tab{opacity:.5}.sn-tab-disabled{font-size:var(--text-xs);color:var(--muted);font-style:italic}.sn-editor{display:flex;flex-direction:column;gap:.5rem}.sn-field label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--ink);margin-bottom:.2rem}.sn-field-hint{font-weight:400;color:var(--muted);margin-left:.5rem;font-size:var(--text-xs)}.sn-field input[type=text]{width:100%;padding:.45rem .55rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--mono)}.sn-field textarea{width:100%;padding:.45rem .55rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-xs);font-family:var(--mono);line-height:1.5;resize:vertical}.sn-field-row{flex-direction:row;align-items:center}.sn-checkbox{display:flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:400;cursor:pointer}.sn-actions{display:flex;gap:.5rem;align-items:center}.sn-meta{font-size:var(--text-xs);color:var(--muted);margin-top:.25rem}.sn-sidebar{display:flex;flex-direction:column;gap:.75rem}.sn-vars-ref h4,.sn-preview h4{margin:0 0 .3rem;font-size:var(--text-sm);color:var(--ink)}.sn-vars-list{display:flex;flex-direction:column;gap:.15rem}.sn-var-item{display:flex;flex-direction:column;padding:.15rem 0}.sn-var-clickable{background:none;border:none;text-align:left;cursor:pointer;padding:.25rem .3rem;border-radius:var(--radius-sm);transition:background .15s}.sn-var-clickable:hover{background:var(--hover-bg)}.sn-var-code{font-family:var(--mono);font-size:var(--text-xs);color:var(--accent)}.sn-var-desc{font-size:var(--text-xs);color:var(--text-secondary)}.sn-vars-hint{font-size:var(--text-xs);color:var(--muted);margin:0 0 .2rem;font-style:italic}.sn-preview-backdrop{position:fixed;inset:0;z-index:200;background:#0f172a66;display:flex;justify-content:center;align-items:center;padding:2rem}.sn-preview-modal{background:var(--panel);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.sn-preview-modal-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.sn-preview-modal-header h3{margin:0;font-size:var(--text-md)}.sn-preview-close{background:none;border:none;font-size:1.3rem;color:var(--muted);cursor:pointer;padding:.2rem .4rem;line-height:1}.sn-preview-close:hover{color:var(--ink)}.sn-preview-modal-subject{padding:.5rem 1rem;font-size:var(--text-sm);border-bottom:1px solid var(--border);background:var(--surface)}.sn-preview-label{color:var(--muted);font-weight:500}.sn-preview-modal-body{padding:1rem;font-size:var(--text-sm);line-height:1.6;overflow-y:auto}.sn-preview-modal-frame{flex:1 1 auto;width:100%;min-height:60vh;border:none;background:#fff}.changelog-email-preview{margin-top:1.5rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.changelog-email-preview-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);background:var(--panel)}.changelog-email-preview-header h3{margin:0 0 .25rem;font-size:var(--text-md)}.changelog-email-preview-subject{font-size:var(--text-sm)}.changelog-email-preview-widths{display:flex;gap:.5rem;flex-shrink:0}.changelog-email-preview-widths .btn-secondary.active{background:var(--accent);color:var(--accent-contrast, #fff);border-color:var(--accent)}.changelog-email-preview-frame-wrap{display:flex;justify-content:center;padding:1.5rem;background:#f6f7f3;max-height:75vh;overflow-y:auto}.changelog-email-preview-frame{height:70vh;min-height:600px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-md)}.changelog-email-preview-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.changelog-email-preview-as{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm)}.changelog-email-preview-as select{padding:.35rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit;max-width:280px}.changelog-email-preview-empty{padding:3rem 1rem;text-align:center;background:#f6f7f3;font-style:italic}.changelog-screenshot-row{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.changelog-screenshot-thumb{max-width:120px;max-height:60px;border:1px solid var(--border);border-radius:var(--radius-sm);object-fit:cover}.changelog-screenshot-drop{display:inline-block;padding:.35rem .7rem;border:1px dashed var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--muted);cursor:pointer;background:var(--panel)}.changelog-screenshot-drop:hover{color:var(--ink);border-style:solid}.changelog-screenshot-drop.uploading{opacity:.6;cursor:wait}.changelog-credit-tag{display:inline-block;margin-top:.25rem;font-size:var(--text-xs);color:var(--accent, #0e7c66);font-style:italic}.cl-change-credit{margin:.5rem 0 0;font-size:var(--text-sm);font-style:italic;color:var(--accent, #0e7c66)}.cl-backdrop{position:fixed;inset:0;z-index:300;background:#13221b80;backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;padding:2rem 1rem;animation:cl-fade-in .2s ease-out}@keyframes cl-fade-in{0%{opacity:0}to{opacity:1}}.cl-modal{background:var(--panel);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:720px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:cl-slide-up .25s ease-out}@keyframes cl-slide-up{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.cl-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:linear-gradient(135deg,var(--surface) 0%,var(--panel) 100%)}.cl-title{margin:0;font-size:var(--text-xl);font-weight:700;color:var(--ink)}.cl-subtitle{margin:.15rem 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.cl-close{background:none;border:none;font-size:1.5rem;color:var(--muted);cursor:pointer;padding:.1rem .5rem;line-height:1;border-radius:var(--radius-sm);transition:background .15s}.cl-close:hover{background:var(--hover-bg);color:var(--ink)}.cl-body{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:2rem}.cl-loading,.cl-empty{text-align:center;padding:2rem;color:var(--muted);font-size:var(--text-sm)}.cl-entry{display:flex;flex-direction:column;gap:1rem}.cl-entry+.cl-entry{padding-top:2rem;border-top:1px solid var(--border)}.cl-entry-title-row{display:flex;align-items:center;gap:.6rem}.cl-entry-title{margin:0;font-size:var(--text-lg);font-weight:700;color:var(--ink)}.cl-latest-badge{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--accent);padding:.15rem .5rem;border-radius:var(--radius-pill)}.cl-entry-date{margin:.15rem 0 0;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.cl-entry-summary{margin:.5rem 0 0;font-size:var(--text-base);color:var(--text-secondary);line-height:1.5}.cl-changes{display:flex;flex-direction:column;gap:1.5rem}.cl-change{display:flex;flex-direction:column;gap:.75rem}.cl-change-heading{margin:0;font-size:var(--text-md);font-weight:600;color:var(--ink)}.cl-change-description{margin:.25rem 0 0;font-size:var(--text-sm);line-height:1.55;color:var(--text-secondary)}.cl-change-screenshot{border:1px solid var(--stroke);border-radius:var(--radius-md);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm)}.cl-change-screenshot img{display:block;width:100%;height:auto}.rte-container{border:1px solid var(--stroke);border-radius:var(--radius-md);overflow:hidden}.rte-toolbar{display:flex;align-items:center;gap:.15rem;padding:.3rem .4rem;background:var(--surface);border-bottom:1px solid var(--border)}.rte-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:none;color:var(--ink);cursor:pointer;font-size:var(--text-sm);transition:background .15s}.rte-btn:hover{background:var(--hover-bg)}.rte-btn-active{background:var(--hover-bg);color:var(--accent)}.rte-btn-var{width:auto;padding:0 .4rem;font-family:var(--mono);font-size:var(--text-xs);color:var(--accent)}.rte-separator{width:1px;height:18px;background:var(--border);margin:0 .2rem}.rte-var-dropdown-wrap{position:relative}.rte-var-dropdown{position:absolute;bottom:100%;left:0;z-index:200;margin-bottom:4px;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.3rem;min-width:240px;max-height:320px;overflow-y:auto}.rte-var-option{display:flex;flex-direction:column;width:100%;text-align:left;padding:.3rem .4rem;border:none;border-radius:var(--radius-sm);background:none;cursor:pointer;transition:background .15s}.rte-var-option:hover{background:var(--hover-bg)}.rte-var-option-code{font-family:var(--mono);font-size:var(--text-xs);color:var(--accent)}.rte-var-option-desc{font-size:var(--text-xs);color:var(--text-secondary)}.rte-editor-wrap{position:relative}.rte-editor{padding:.5rem .6rem;font-family:var(--sans);font-size:var(--text-sm);line-height:1.6;color:var(--ink);outline:none;overflow-y:auto}.rte-editor a{color:var(--accent)}.rte-editor ul{margin:.3rem 0;padding-left:1.2rem}.rte-placeholder{position:absolute;top:.5rem;left:.6rem;color:var(--muted);font-size:var(--text-sm);pointer-events:none}.rte-var-chip{display:inline-block;padding:.05rem .35rem;margin:0 .1rem;border-radius:var(--radius-sm);background:#e0f2f1;border:1px solid #b2dfdb;color:var(--accent);font-family:var(--mono);font-size:var(--text-xs);font-weight:500;vertical-align:baseline;cursor:default;user-select:all}.tracking-chips{display:flex;flex-wrap:wrap;gap:.35rem}.tracking-list{display:grid;gap:.5rem}.tracking-card{background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.65rem .75rem}.tracking-card-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.tracking-card-status{display:flex;align-items:center;gap:.35rem}.tracking-status-dot{width:8px;height:8px;border-radius:var(--radius-pill);flex-shrink:0}.tracking-status-dot-good{background:var(--good)}.tracking-status-dot-warn{background:var(--accent-2)}.tracking-status-dot-bad{background:var(--bad)}.tracking-status-dot-accent{background:var(--accent)}.tracking-status-dot-muted{background:var(--muted)}.tracking-status-label{font-weight:600;font-size:var(--text-sm)}.tracking-status-label-good{color:var(--good)}.tracking-status-label-warn{color:var(--accent-2)}.tracking-status-label-bad{color:var(--bad)}.tracking-status-label-accent{color:var(--accent)}.tracking-status-label-muted{color:var(--muted)}.tracking-carrier-link{font-family:var(--mono);font-size:var(--text-xs);color:var(--accent);text-decoration:none}.tracking-carrier-link:hover{text-decoration:underline}.tracking-carrier-link-plain{font-family:var(--mono);font-size:var(--text-xs);color:var(--muted)}.tracking-chip-wrapper{position:relative;display:inline-block}.tracking-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .45rem;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--stroke);font-size:var(--text-xs);cursor:pointer;transition:border-color .15s;white-space:nowrap}.tracking-chip:hover{border-color:var(--accent)}.tracking-chip-dot{width:6px;height:6px;border-radius:var(--radius-pill);flex-shrink:0}.tracking-chip-label{font-weight:600}.tracking-chip-number{font-family:var(--mono);color:var(--muted)}.tracking-popover{position:absolute;top:100%;left:0;z-index:150;margin-top:4px;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.6rem .8rem;min-width:280px;max-width:400px}.tracking-popover-header{display:flex;align-items:center;gap:.35rem;margin-bottom:.3rem}.tracking-popover-status{font-weight:600;font-size:var(--text-sm)}.tracking-popover-carrier{font-size:var(--text-xs);color:var(--muted);margin-left:auto}.tracking-popover-detail{font-size:var(--text-xs);color:var(--text-secondary);font-style:italic;margin-bottom:.3rem}.tracking-popover-eta{background:var(--surface-alt, #f3f7f5);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem .65rem;margin-bottom:.4rem}.tracking-popover-eta-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.15rem}.tracking-popover-eta-day{font-size:var(--text-sm);font-weight:600;color:var(--ink)}.tracking-popover-route{display:flex;align-items:center;gap:.4rem;font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:.35rem}.tracking-popover-route-loc{color:var(--ink);font-weight:500}.tracking-popover-route-arrow{color:var(--muted)}.tracking-popover-scan{border-left:2px solid var(--accent);padding:.15rem 0 .15rem .5rem;margin-bottom:.4rem}.tracking-popover-scan-desc{font-size:var(--text-xs);color:var(--ink);font-weight:500}.tracking-popover-scan-meta{display:flex;gap:.5rem;font-size:.65rem;color:var(--muted);margin-top:.1rem}.tracking-popover-rows{border-top:1px solid var(--border);padding-top:.3rem}.tracking-popover-row{display:flex;justify-content:space-between;gap:1rem;padding:.15rem 0;font-size:var(--text-sm)}.tracking-popover-label{color:var(--text-secondary);font-weight:500}.tracking-popover-value{color:var(--ink)}.tracking-popover-mono{font-family:var(--mono)}.tracking-popover-loading{font-size:var(--text-sm);color:var(--text-secondary)}.tracking-popover-events{margin-top:.3rem;border-top:1px dashed var(--stroke);padding-top:.3rem;max-height:200px;overflow-y:auto}.tracking-popover-event{display:grid;grid-template-columns:120px 1fr;gap:.3rem;padding:.12rem 0;font-size:var(--text-xs);border-bottom:1px solid var(--border)}.tracking-popover-event:last-child{border-bottom:none}.tracking-popover-event-date{color:var(--text-secondary);font-family:var(--mono)}.tracking-popover-event-desc{color:var(--ink)}.tracking-popover-event-loc{grid-column:2;color:var(--muted)}.tracking-popover-actions{display:flex;gap:.5rem;margin-top:.5rem;padding-top:.4rem;border-top:1px solid var(--border)}.tracking-popover-action{font-size:var(--text-xs);font-weight:500;color:var(--accent);background:none;border:1px solid var(--stroke);border-radius:var(--radius-sm);padding:.2rem .5rem;cursor:pointer;text-decoration:none;transition:background .15s}.tracking-popover-action:hover{background:var(--hover-bg)}.tracking-popover-action:disabled{color:var(--muted);cursor:default}.tracking-status-detail{font-size:var(--text-xs);color:var(--text-secondary);margin-top:.15rem;font-style:italic}.tracking-no-api{font-size:var(--text-xs);color:var(--muted);margin-top:.15rem}.tracking-card-details{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.3rem}.tracking-detail{font-size:var(--text-xs);color:var(--text-secondary)}.tracking-toggle-events{background:none;border:none;color:var(--accent);font-size:var(--text-xs);cursor:pointer;padding:0;margin-top:.35rem}.tracking-toggle-events:hover{text-decoration:underline}.tracking-events{margin-top:.4rem;border-top:1px dashed var(--stroke);padding-top:.35rem;font-size:var(--text-xs)}.tracking-event{display:grid;grid-template-columns:140px 1fr auto;gap:.4rem;padding:.15rem 0;border-bottom:1px solid var(--border)}.tracking-event:last-child{border-bottom:none}.tracking-event-date{color:var(--text-secondary);font-family:var(--mono)}.tracking-event-desc{color:var(--ink)}.tracking-event-loc{color:var(--text-secondary);text-align:right}.customer-detail-footer{color:var(--text-secondary);font-size:var(--text-base)}.customer-modal{position:fixed;inset:0;z-index:120}.customer-modal-backdrop{position:absolute;inset:0;background:#0f172a73}.customer-modal-card{position:relative;z-index:1;width:min(980px,calc(100vw - 40px));max-height:calc(100vh - 40px);margin:20px auto;background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-lg);overflow:auto;box-shadow:var(--shadow-lg)}.customer-modal-header{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid #e5eaf2;padding:.7rem .9rem;display:flex;align-items:center;justify-content:space-between}.customer-modal-body{padding:.9rem;display:grid;gap:.7rem}.modal-summary,.modal-tracking{margin-bottom:.4rem;font-size:var(--text-base)}.modal-observations{margin:0;background:#f8f9fa;border:1px solid #d8deec;border-radius:var(--radius-md);padding:.7rem;white-space:pre-wrap;font-size:var(--text-sm)}.modal-kpi-view{font-size:var(--text-base)}.kpi-trend-summary{display:flex;flex-wrap:wrap;gap:.8rem}@media(max-width:900px){.customers-panel,.customers-panel.customers-panel-split,.customers-panel.customers-panel-split.with-preview{padding:.7rem;grid-template-columns:1fr}.customers-preview-panel{position:static;max-height:none;overflow:visible}.customers-search-form input{min-width:0;width:100%}.customers-table{font-size:var(--text-sm)}.customers-table th,.customers-table td{padding:.38rem}.customer-modal-card{width:min(100vw - 16px,980px);margin:8px auto;max-height:calc(100vh - 16px)}}@media(max-width:900px){.install-cal-split.with-preview{margin-right:0}.install-cal-preview{position:static;width:auto;max-height:none;overflow:visible;box-shadow:none}}.create-so-overlay{position:fixed;inset:0;background:#13221b73;display:flex;align-items:center;justify-content:center;z-index:100}.create-so-modal{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-lg);padding:1.5rem 1.75rem;width:680px;max-width:92vw;max-height:86vh;min-height:420px;overflow-y:auto;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:1.25rem}.create-so-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.75rem;border-bottom:1px solid var(--stroke)}.create-so-header h3{margin:0;font-size:var(--text-lg);font-weight:700;color:var(--ink)}.create-so-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--muted);padding:.25rem .5rem;border-radius:var(--radius-sm);transition:background .15s}.create-so-close:hover{background:var(--hover-bg)}.create-so-error{color:var(--bad);font-size:var(--text-sm);margin:0;padding:.5rem .75rem;background:#b5303012;border:1px solid rgba(181,48,48,.18);border-radius:var(--radius-md)}.create-so-ai-confidence{font-size:var(--text-sm);color:var(--text-muted);padding:.25rem 0}.create-so-section{display:flex;flex-direction:column;gap:.6rem}.create-so-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.3rem;border-bottom:1px solid var(--border)}.create-so-row{display:flex;gap:.6rem;flex-wrap:wrap}.create-so-field{display:flex;flex-direction:column;gap:.2rem;min-width:130px}.create-so-field-grow{flex:1}.create-so-label{font-size:var(--text-xs);font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.create-so-field input,.create-so-field select,.create-so-field textarea{padding:.4rem .55rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--sans);font-weight:400;color:var(--ink);background:var(--panel);transition:border-color .15s}.create-so-field input:focus,.create-so-field select:focus,.create-so-field textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.create-so-field textarea{resize:vertical}.create-so-autocomplete{position:relative;flex:1}.create-so-autocomplete input{width:100%;padding:.4rem .55rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--sans);color:var(--ink);background:var(--panel);box-sizing:border-box}.create-so-autocomplete input:focus{outline:2px solid var(--accent);outline-offset:-1px}.create-so-dropdown{position:absolute;top:100%;left:0;right:0;z-index:110;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);max-height:220px;overflow-y:auto;list-style:none;margin:3px 0 0;padding:.25rem 0;box-shadow:var(--shadow-md)}.create-so-dropdown li{padding:.35rem .65rem;font-size:var(--text-sm);color:var(--ink);cursor:pointer;border-radius:var(--radius-sm);margin:0 .2rem;transition:background .1s}.create-so-dropdown li:hover{background:var(--hover-bg)}.create-so-dropdown li strong{font-family:var(--mono);font-weight:600;color:var(--accent)}.create-so-shipping{border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.75rem;display:flex;flex-direction:column;gap:.6rem;background:var(--surface)}.create-so-shipping-header{display:flex;align-items:center;justify-content:space-between}.create-so-shipping-title{font-size:var(--text-sm);font-weight:700;color:var(--ink)}.create-so-products{display:flex;flex-direction:column;gap:.35rem}.create-so-products-header{display:grid;grid-template-columns:1fr 72px 88px 28px;gap:.5rem;font-size:var(--text-xs);font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:.15rem 0}.create-so-product-row{display:grid;grid-template-columns:1fr 72px 88px 28px;gap:.5rem;align-items:start}.create-so-qty,.create-so-price{padding:.4rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--mono);color:var(--ink);background:var(--panel);width:100%;box-sizing:border-box;text-align:right}.create-so-qty:focus,.create-so-price:focus{outline:2px solid var(--accent);outline-offset:-1px}.create-so-add-btn{background:none;border:1px dashed var(--stroke);border-radius:var(--radius-md);padding:.3rem .75rem;font-size:var(--text-xs);font-weight:600;color:var(--muted);cursor:pointer;align-self:flex-start;transition:border-color .15s,color .15s}.create-so-add-btn:hover{border-color:var(--accent);color:var(--accent)}.create-so-remove-btn{background:none;border:none;font-size:var(--text-sm);color:var(--muted);cursor:pointer;padding:.25rem .4rem;border-radius:var(--radius-sm);transition:color .15s,background .15s}.create-so-remove-btn:hover{color:var(--bad);background:#b530300f}.create-so-footer{display:flex;justify-content:flex-end;gap:.6rem;padding-top:.75rem;border-top:1px solid var(--stroke)}.create-so-cancel{padding:.45rem 1rem;border:1px solid var(--stroke);border-radius:var(--radius-md);background:none;color:var(--muted);cursor:pointer;font-size:var(--text-sm);font-weight:600;font-family:var(--sans);transition:background .15s}.create-so-cancel:hover{background:var(--hover-bg)}.create-so-submit{padding:.45rem 1.1rem;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--accent),#0a6653);color:#fff;cursor:pointer;font-size:var(--text-sm);font-weight:600;font-family:var(--sans);box-shadow:var(--shadow-sm);transition:opacity .15s}.create-so-submit:hover{opacity:.9}.create-so-submit:disabled{opacity:.45;cursor:not-allowed}.create-so-toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.6rem;padding:.65rem 1rem;background:var(--panel);border:1px solid var(--good);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--text-sm);color:var(--ink);z-index:200;animation:so-toast-in .35s ease-out}.create-so-toast strong{font-family:var(--mono);color:var(--accent)}.create-so-toast-icon{font-size:1.3rem;line-height:1}.create-so-toast-close{background:none;border:none;font-size:1rem;color:var(--muted);cursor:pointer;padding:0 .3rem;margin-left:.3rem}@keyframes so-toast-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.so-new-row{animation:so-new-flash 2s ease-out}.so-new-row td{background:#0e7c6614}.so-new-badge{display:inline-block;padding:.1rem .35rem;margin-right:.4rem;font-size:var(--text-xs);font-weight:700;color:#fff;background:var(--accent);border-radius:var(--radius-sm);letter-spacing:.04em;vertical-align:middle;animation:so-badge-pulse 1.5s ease-in-out 3}@keyframes so-new-flash{0%{background:#0e7c662e}to{background:transparent}}@keyframes so-badge-pulse{0%,to{opacity:1}50%{opacity:.5}}.so-delete-btn{padding:.3rem .7rem;border:1px solid var(--bad);border-radius:var(--radius-md);background:none;color:var(--bad);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:background .15s}.so-delete-btn:hover{background:#b530300f}.so-delete-confirm{display:flex;align-items:center;gap:.4rem;font-size:var(--text-xs);color:var(--bad);font-weight:600}.so-delete-yes{padding:.3rem .6rem;border:none;border-radius:var(--radius-md);background:var(--bad);color:#fff;font-size:var(--text-xs);font-weight:600;cursor:pointer}.suppliers-panel{padding:1rem;display:grid;gap:1rem;max-width:100%;overflow:hidden}.suppliers-header-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.suppliers-section{background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-xl);padding:.9rem;display:grid;gap:.75rem}.suppliers-view-toggle{display:inline-flex;border:1px solid #d7dbe4;border-radius:var(--radius-md);overflow:hidden}.suppliers-view-toggle button{border:none;background:#fff;color:var(--text-secondary);font-size:var(--text-base);font-weight:500;padding:.38rem .85rem;cursor:pointer;transition:background .15s,color .15s}.suppliers-view-toggle button:not(:last-child){border-right:1px solid #d7dbe4}.suppliers-view-toggle button.active{background:var(--accent);color:#fff}.suppliers-view-toggle button:hover:not(.active){background:#f0f4fa}.suppliers-search-form{display:inline-flex;gap:.5rem;align-items:center;flex-wrap:wrap}.suppliers-search-form input{min-width:240px}.suppliers-table{width:100%;border-collapse:collapse;font-size:var(--text-base);background:#fff;border:1px solid #e1e6ef}.suppliers-table th,.suppliers-table td{padding:.48rem .52rem;border-top:1px solid #edf1f8;vertical-align:top}.suppliers-table th{text-align:left;color:var(--text-secondary);font-size:var(--text-sm);letter-spacing:.02em;background:var(--surface)}.suppliers-list-table th{padding:0}.suppliers-bom-table thead th{position:sticky;top:52px;z-index:5;background:var(--surface);box-shadow:0 1px 0 var(--border)}.suppliers-table th.num,.suppliers-table td.num{text-align:right}.supplier-mono{font-family:var(--mono);font-size:var(--text-sm)}.supplier-list-subtext{display:block;color:var(--text-secondary);font-size:var(--text-xs);font-weight:500}.suppliers-sort-btn{border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;display:inline-flex;gap:.25rem;align-items:center;justify-content:inherit;cursor:pointer;padding:.48rem .52rem;width:100%}.suppliers-sort-btn:hover,.suppliers-sort-btn.active{color:var(--accent)}.suppliers-sort-btn .sort-arrow{opacity:.45}.suppliers-sort-btn.active .sort-arrow{opacity:1}.supplier-row:hover{background:#f0f6f4}.supplier-row{cursor:pointer}.supplier-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.supplier-vat{color:#8a93a8;font-size:var(--text-sm);margin-left:.4rem}.supplier-unknown-badge{display:inline-block;background:#fff3e0;color:#d95f02;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.12rem .5rem;border-radius:var(--radius-sm);white-space:nowrap}.supplier-tag{display:inline-block;background:#eef6f3;color:#0e7c66;font-size:var(--text-sm);font-weight:500;padding:.1rem .45rem;border-radius:var(--radius-sm);margin-right:.3rem;margin-bottom:.15rem;white-space:nowrap}.supplier-printed-badge{display:inline-block;background:#ede7f6;color:#6a1b9a;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.12rem .5rem;border-radius:var(--radius-sm);white-space:nowrap}.supplier-cell-truncated{display:flex;flex-wrap:nowrap;align-items:center;gap:.2rem;overflow:hidden;max-width:280px}.supplier-overflow-badge{display:inline-block;background:#e8ecf0;color:var(--text-secondary);font-size:var(--text-sm);font-weight:600;padding:.1rem .4rem;border-radius:var(--radius-sm);white-space:nowrap;cursor:default;flex-shrink:0}.suppliers-bom-stats{display:flex;gap:1rem;align-items:center;font-size:var(--text-base);color:var(--text-secondary)}.supplier-unknown-count{color:#d95f02;font-weight:600}.products-gen-summary{display:flex;gap:.75rem;flex-wrap:wrap;margin:.25rem 0 .5rem}.products-gen-card{flex:1 1 140px;max-width:200px;background:#f8faf9;border:1px solid #d7dbe4;border-radius:var(--radius-md);padding:.6rem .75rem;display:flex;flex-direction:column;gap:.3rem;cursor:pointer;transition:max-width .15s ease}.products-gen-card.expanded{max-width:360px}.products-gen-card-header{display:flex;align-items:center;justify-content:space-between}.products-gen-card-title{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.products-gen-expand-icon{font-size:var(--text-sm);color:#8a93a8}.products-gen-detail{border-top:1px solid #d7dbe4;padding-top:.35rem;margin-top:.15rem;display:flex;flex-direction:column;gap:.3rem}.products-gen-detail-header{font-size:var(--text-xs);font-weight:700;color:#8a93a8;text-transform:uppercase;letter-spacing:.04em}.products-gen-detail-row{display:flex;align-items:baseline;justify-content:space-between;gap:.4rem}.products-gen-detail-info{display:flex;flex-direction:column;min-width:0}.products-gen-detail-code{font-family:var(--mono);font-size:var(--text-sm);color:var(--text-secondary)}.products-gen-detail-name{font-size:var(--text-xs);color:#8a93a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.products-gen-detail-qty{font-family:var(--mono);font-size:var(--text-sm);font-weight:600;color:#1e2533}.products-gen-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.products-gen-qty{font-family:var(--mono);font-weight:600;font-size:var(--text-base);color:#1e2533}.bom-tree-row{cursor:pointer}.bom-tree-row:hover{background:#f0f6f4}.bom-tree-row.selected-row{background:#e8f0fe}.suppliers-bom-table td:first-child{white-space:nowrap}.suppliers-bom-table td:last-child{text-align:center}.suppliers-bom-split{position:relative}.suppliers-preview-panel{position:fixed;top:60px;right:1rem;width:min(1120px,calc(100vw - 2rem));max-height:calc(100vh - 68px);background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-xl);display:grid;gap:.75rem;overflow-y:auto;overscroll-behavior:contain;z-index:15;box-shadow:var(--shadow-md)}.suppliers-preview-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.8rem .9rem 0;position:sticky;top:0;background:#fff;z-index:2;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.suppliers-preview-head h3{margin:0;font-family:var(--mono);font-size:var(--text-md)}.product-detail-content{padding:0 .9rem .9rem;display:grid;gap:.45rem}.product-detail-action-bar{position:sticky;top:40px;z-index:2;display:flex;flex-wrap:wrap;gap:.5rem;padding:.55rem .9rem;background:var(--panel);border-bottom:1px solid var(--border)}.product-detail-action-btn{font-family:var(--font-sans);font-size:var(--text-base);font-weight:600;padding:.4rem .8rem;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--panel);color:var(--accent);cursor:pointer}.product-detail-action-btn:hover:not(:disabled){background:var(--hover-bg)}.product-detail-action-btn:disabled{cursor:default;opacity:.7}.product-detail-action-bar .product-detail-disable-btn,.product-detail-action-bar .product-detail-enable-btn{width:auto;font-weight:600}.supplier-detail-content{gap:.6rem}.supplier-detail-name{display:inline-block;margin-left:.45rem;font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-secondary)}.supplier-country-editor{align-items:center}.supplier-country-editor-controls{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.supplier-country-editor-controls input{min-width:220px;font-size:var(--text-base);padding:.25rem .45rem;border:1px solid var(--stroke);border-radius:var(--radius-sm)}.supplier-country-editor-controls button{padding:.24rem .6rem;font-size:var(--text-base)}.supplier-detail-subheading{margin:.6rem 0 .2rem;font-size:var(--text-base);color:var(--ink)}.supplier-products-table td:nth-child(1),.supplier-products-table td:nth-child(3){white-space:nowrap}.supplier-documents-table td:nth-child(1),.supplier-documents-table td:nth-child(2),.supplier-documents-table td:nth-child(3),.supplier-documents-table td:nth-child(5){white-space:nowrap}.supplier-document-summary{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.25rem}.supplier-document-filter{align-items:center;background:var(--status-neutral-soft-bg);border:1px solid var(--status-neutral-border);border-radius:var(--radius-sm);color:var(--status-neutral-soft-fg);cursor:pointer;display:inline-flex;font-size:var(--text-xs);font-weight:700;min-height:1.35rem;padding:.08rem .45rem;white-space:nowrap}.supplier-document-filter:hover,.supplier-document-filter.active{border-color:var(--accent);color:var(--accent)}.supplier-document-pill{display:inline-flex;align-items:center;width:fit-content;min-height:1.35rem;padding:.08rem .45rem;border:1px solid var(--status-neutral-border);border-radius:var(--radius-sm);background:var(--status-neutral-soft-bg);color:var(--status-neutral-soft-fg);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.supplier-document-type-picker{display:inline-flex;position:relative}.supplier-document-type-button{align-items:center;border:1px solid var(--status-neutral-border);border-radius:var(--radius-sm);color:var(--status-neutral-soft-fg);cursor:pointer;display:inline-flex;font-size:var(--text-xs);font-weight:700;gap:.35rem;justify-content:space-between;min-height:1.65rem;min-width:6.25rem;padding:.08rem .5rem}.supplier-document-review-button,.supplier-document-review-pill{align-items:center;border:1px solid var(--status-neutral-border);border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:var(--text-xs);font-weight:700;gap:.35rem;justify-content:space-between;min-height:1.65rem;min-width:7.25rem;padding:.08rem .5rem}.supplier-document-review-pill{cursor:default;justify-content:center}.supplier-document-review-button:disabled{cursor:wait;opacity:.7}.supplier-document-type-button:disabled{cursor:wait;opacity:.7}.supplier-document-type-menu{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:grid;left:0;min-width:8rem;overflow:hidden;padding:.25rem;position:absolute;top:calc(100% + .25rem);z-index:30}.supplier-document-type-menu button{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--text-sm);justify-content:space-between;min-height:1.9rem;padding:.25rem .55rem;text-align:left}.supplier-document-type-menu button:hover,.supplier-document-type-menu button.active{background:var(--hover-bg);color:var(--accent)}.supplier-document-type-menu button.active:after{content:"✓";font-weight:700}.supplier-document-pill-invoice,.supplier-document-pill-proforma{border-color:var(--status-success-border);background:var(--status-success-bg);color:var(--status-success-fg)}.supplier-document-pill-purchase_order{border-color:var(--status-info-soft-border);background:var(--status-info-soft-bg);color:var(--status-info-soft-fg)}.supplier-document-pill-quote{border-color:var(--status-warn-amber-border);background:var(--status-warn-amber-bg);color:var(--status-warn-amber-fg)}.supplier-document-review-reviewed{border-color:var(--status-success-border);background:var(--status-success-bg);color:var(--status-success-fg)}.supplier-document-review-needs_supplier{border-color:var(--status-info-soft-border);background:var(--status-info-soft-bg);color:var(--status-info-soft-fg)}.supplier-document-review-duplicate,.supplier-document-review-superseded{border-color:var(--status-warn-border);background:var(--status-warn-bg);color:var(--status-warn-fg)}.supplier-document-review-unreviewed{border-color:var(--status-neutral-border);background:var(--status-neutral-soft-bg);color:var(--status-neutral-soft-fg)}.supplier-document-title{font-weight:600;color:var(--ink)}.supplier-document-subtext{display:block;max-width:320px;overflow:hidden;color:var(--text-secondary);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.supplier-document-link{border:0;background:transparent;color:var(--accent);cursor:pointer;font-size:var(--text-xs);font-weight:600;padding:0}.supplier-document-link:hover{text-decoration:underline}.supplier-document-clickable{cursor:pointer}.supplier-document-clickable:hover .supplier-document-title{color:var(--accent)}.supplier-full-page{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;height:calc(100vh - 140px);min-height:560px;overflow:hidden}.supplier-full-header{border-bottom:1px solid var(--border);padding:.85rem 1rem}.supplier-full-header h2{margin:0;font-size:var(--text-xl)}.supplier-full-layout{display:grid;flex:1;grid-template-columns:minmax(360px,var(--supplier-list-width, 47%)) 10px minmax(420px,1fr);min-height:0;overflow:hidden}.supplier-full-left{overflow-y:auto;padding:1rem}.supplier-full-resizer{position:relative;width:10px;height:100%;padding:0;border:0;border-left:1px solid var(--border);border-right:1px solid var(--border);background:var(--surface);cursor:col-resize}.supplier-full-resizer:before{content:"";position:absolute;top:50%;left:50%;width:2px;height:3rem;border-radius:var(--radius-pill);background:var(--stroke);transform:translate(-50%,-50%)}.supplier-full-resizer:hover,.supplier-full-resizer:focus-visible{background:var(--hover-bg);outline:none}.supplier-full-resizer:hover:before,.supplier-full-resizer:focus-visible:before{background:var(--accent)}.supplier-detail-resizing{cursor:col-resize;user-select:none}.supplier-full-meta{display:grid;gap:.35rem;margin-bottom:.75rem}.supplier-commercial-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:.45rem;margin:0 0 .85rem}.supplier-commercial-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0;padding:.55rem .6rem}.supplier-commercial-card.attention{border-left:3px solid var(--warn)}.supplier-commercial-card .label,.supplier-commercial-card .hint{display:block;overflow:hidden;color:var(--text-secondary);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.supplier-commercial-card .label{font-weight:700;text-transform:uppercase}.supplier-commercial-card .value{display:block;margin:.16rem 0;overflow:hidden;color:var(--ink);font-size:var(--text-base);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.supplier-full-qb-section{margin-top:1rem}.supplier-review-panel,.supplier-cost-section,.supplier-data-requests-section,.supplier-document-org-section{border-top:1px solid var(--border);margin-top:.85rem;padding-top:.75rem}.supplier-review-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.supplier-review-header .supplier-detail-subheading{margin-top:0}.supplier-review-subtext{color:var(--text-secondary);font-size:var(--text-sm);margin:.1rem 0 .5rem}.supplier-review-status,.supplier-cost-status{align-items:center;border:1px solid var(--status-neutral-border);border-radius:var(--radius-pill);display:inline-flex;font-size:var(--text-xs);font-weight:700;line-height:1;padding:.24rem .55rem;white-space:nowrap}.supplier-review-status-high,.supplier-review-signal-high .supplier-review-severity,.supplier-cost-status.needs-data{background:var(--status-danger-strong-bg);border-color:var(--status-danger-strong-border);color:var(--status-danger-strong-fg)}.supplier-review-status-medium,.supplier-review-signal-medium .supplier-review-severity{background:var(--status-warn-bg);border-color:var(--status-warn-border);color:var(--status-warn-fg)}.supplier-review-status-ok,.supplier-review-signal-ok .supplier-review-severity,.supplier-cost-status.usable{background:var(--status-success-bg);border-color:var(--status-success-border);color:var(--status-success-fg)}.supplier-review-signal-info .supplier-review-severity{background:var(--status-info-soft-bg);border-color:var(--status-info-soft-border);color:var(--status-info-soft-fg)}.supplier-review-signal-list{display:grid;gap:.4rem}.supplier-review-signal{align-items:flex-start;border:1px solid var(--border);border-radius:var(--radius-md);display:grid;gap:.55rem;grid-template-columns:auto 1fr;padding:.55rem}.supplier-review-signal strong,.supplier-review-signal span{display:block}.supplier-review-signal strong{color:var(--ink);font-size:var(--text-sm)}.supplier-review-signal span{color:var(--text-secondary);font-size:var(--text-xs);margin-top:.1rem}.supplier-review-severity{border:1px solid var(--status-neutral-border);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:700;min-width:3.2rem;padding:.2rem .45rem;text-align:center;text-transform:uppercase}.supplier-review-checklist{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.supplier-review-checklist span{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-secondary);font-size:var(--text-xs);font-weight:700;padding:.18rem .5rem}.supplier-data-request-list{display:grid;gap:.4rem}.supplier-data-request{align-items:flex-start;border:1px solid var(--border);border-radius:var(--radius-md);display:grid;gap:.55rem;grid-template-columns:auto 1fr;padding:.55rem}.supplier-data-request strong,.supplier-data-request span,.supplier-data-request em{display:block}.supplier-data-request strong{color:var(--ink);font-size:var(--text-sm)}.supplier-data-request span,.supplier-data-request em{color:var(--text-secondary);font-size:var(--text-xs);margin-top:.1rem}.supplier-data-request em{font-style:normal}.supplier-data-visibility{border:1px solid var(--status-neutral-border);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:700;min-width:6.5rem;padding:.2rem .45rem;text-align:center;white-space:nowrap}.supplier-data-visibility-supplier-fillable{background:var(--status-info-soft-bg);border-color:var(--status-info-soft-border);color:var(--status-info-soft-fg)}.supplier-data-visibility-internal-only{background:var(--status-neutral-soft-bg);border-color:var(--status-neutral-soft-border);color:var(--status-neutral-soft-fg)}.supplier-document-org-stats{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.45rem}.supplier-document-org-stats span{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-secondary);font-size:var(--text-xs);font-weight:700;padding:.18rem .5rem}.supplier-duplicate-list{display:grid;gap:.4rem}.supplier-duplicate-group{border:1px solid var(--border);border-radius:var(--radius-md);padding:.55rem}.supplier-duplicate-group strong,.supplier-duplicate-group span{display:block}.supplier-duplicate-group strong{color:var(--ink);font-size:var(--text-sm)}.supplier-duplicate-group span{color:var(--text-secondary);font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.supplier-cost-table td:nth-child(2){min-width:14rem}.supplier-cost-row-missing{background:var(--status-warn-bg)}.supplier-full-pdf{background:var(--bg-alt);display:flex;min-height:0;overflow:hidden}.supplier-full-pdf iframe{border:0;flex:1;height:100%;width:100%;background:var(--panel)}.supplier-pdf-empty{align-items:center;align-self:center;color:var(--text-secondary);display:flex;flex-direction:column;font-size:var(--text-base);gap:.45rem;margin:0 auto;padding:1rem;text-align:center}.supplier-pdf-loading{color:var(--text-primary);font-weight:700}.supplier-pdf-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:999px;display:inline-block;height:2rem;width:2rem;animation:supplier-pdf-spin .8s linear infinite}@keyframes supplier-pdf-spin{to{transform:rotate(360deg)}}.supplier-pdf-error{color:var(--bad-fg-soft)}.qb-linked-txn{display:inline-block;font-family:var(--mono);font-size:var(--text-xs);font-weight:500;color:var(--text-primary);background:var(--surface);border:1px solid #d7dbe4;border-radius:var(--radius-pill);padding:1px 7px;margin-right:.3rem;margin-bottom:.15rem;white-space:nowrap}.supplier-detail-empty{margin:0;font-size:var(--text-base);color:var(--text-secondary)}.supplier-cell-inline{display:inline-flex;flex-wrap:wrap;gap:.3rem}.kit-component-sku{display:inline-flex;align-items:center;padding-left:calc(.9rem + min(var(--depth, 1),6)*.7rem);position:relative}.kit-component-sku:before{content:"";position:absolute;left:calc(.2rem + min(var(--depth, 1),6)*.7rem);top:.55rem;width:.6rem;height:1px;background:#cfd6e1}.kit-depth-row td{background:var(--depth-bg, #fbfcfe)}.product-detail-field{display:flex;gap:.6rem;align-items:baseline;font-size:var(--text-base)}.product-detail-label{color:var(--text-secondary);min-width:110px;flex-shrink:0;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.02em}.product-detail-cfn-btn{background:none;border:none;cursor:pointer;color:var(--ink);font-size:var(--text-sm);padding:0;text-align:left}.product-detail-cfn-btn:hover{color:var(--accent)}.product-detail-cfn-placeholder{color:var(--muted);font-style:italic}.product-detail-cfn-edit{display:flex;align-items:center;gap:.3rem}.product-detail-cfn-edit input{font-size:var(--text-sm);padding:.2rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);min-width:180px}.product-detail-gen-select{font-family:var(--font-sans);font-size:var(--text-base);padding:.15rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff;color:#232b3e;cursor:pointer}.product-detail-gen-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #0e7c6626}.demand-pivot-panel{padding:.6rem .8rem 1rem;display:flex;flex-direction:column;gap:.7rem}.demand-pivot-presets{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding-bottom:.4rem;border-bottom:1px solid var(--stroke)}.demand-pivot-presets-label{color:var(--ink-muted, #4a5266);font-size:var(--text-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-right:.2rem}.demand-pivot-preset{font-family:var(--font-sans);font-size:var(--text-sm);padding:.25rem .7rem;border:1px solid var(--stroke);background:#fff;color:var(--ink, #232b3e);border-radius:999px;cursor:pointer;transition:background .1s,border-color .1s}.demand-pivot-preset:hover{background:var(--surface-muted, #f4f5f7);border-color:#9ca3af}.demand-pivot-preset.active{background:var(--accent, #0e7c66);border-color:var(--accent, #0e7c66);color:#fff}.demand-pivot-add-filter-btn{font-family:var(--font-sans);font-size:var(--text-sm);padding:.2rem .7rem;border:1px dashed var(--stroke);background:transparent;color:var(--ink-muted, #4a5266);border-radius:999px;cursor:pointer}.demand-pivot-add-filter-btn:hover{border-color:var(--accent, #0e7c66);color:var(--accent, #0e7c66)}.demand-pivot-filter-chip strong{font-weight:600;color:var(--ink-muted, #4a5266)}.demand-pivot-filter-chip-eq{color:var(--ink-muted, #6b7280);padding:0 .1rem}.demand-pivot-link{border:none;background:transparent;color:var(--ink-muted, #6b7280);font-size:var(--text-sm);cursor:pointer;text-decoration:underline;padding:0 .3rem}.demand-pivot-controls{display:flex;flex-wrap:wrap;gap:.6rem;padding:.4rem 0;border-bottom:1px solid var(--stroke)}.demand-pivot-control{display:flex;flex-direction:column;gap:.15rem;font-size:var(--text-sm)}.demand-pivot-control>span{color:var(--ink-muted, #4a5266);font-size:var(--text-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.demand-pivot-control select{font-family:var(--font-sans);font-size:var(--text-base);padding:.2rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff;color:#232b3e;cursor:pointer;min-width:160px}.demand-pivot-filters{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;padding-bottom:.4rem;border-bottom:1px solid var(--stroke)}.demand-pivot-filters-label{color:var(--ink-muted, #4a5266);font-size:var(--text-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-right:.2rem}.demand-pivot-empty{color:var(--ink-muted, #6b7280);font-size:var(--text-sm);font-style:italic}.demand-pivot-filter-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .4rem .15rem .5rem;background:var(--surface-muted, #f4f5f7);border:1px solid var(--stroke);border-radius:999px;font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs, .75rem)}.demand-pivot-filter-chip>button{border:none;background:transparent;cursor:pointer;font-size:1rem;line-height:1;padding:0 .15rem;color:var(--ink-muted, #6b7280)}.demand-pivot-filter-chip>button:hover{color:#b91c1c}.demand-pivot-filter-add{display:inline-flex;align-items:center;gap:.25rem;margin-left:.4rem}.demand-pivot-filter-add select,.demand-pivot-filter-add input{font-family:var(--font-sans);font-size:var(--text-sm);padding:.15rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff}.demand-pivot-filter-add input{width:10rem}.demand-pivot-filter-add button{font-family:var(--font-sans);font-size:var(--text-sm);padding:.15rem .6rem;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer}.demand-pivot-filter-add button:disabled{opacity:.45;cursor:not-allowed}.demand-pivot-status{margin:.2rem 0;color:var(--ink-muted, #4a5266);font-size:var(--text-sm)}.demand-pivot-error{margin:.2rem 0;padding:.4rem .6rem;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);color:#991b1b;font-size:var(--text-sm)}.demand-pivot-table{border-collapse:collapse;font-size:var(--text-sm);margin-top:.4rem}.demand-pivot-table th,.demand-pivot-table td{border:1px solid var(--stroke);padding:.35rem .6rem;text-align:left}.demand-pivot-table th.num,.demand-pivot-table td.num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono, ui-monospace, monospace)}.demand-pivot-table thead th{background:var(--surface-muted, #f4f5f7);font-weight:600}.demand-pivot-table tbody th{background:var(--surface-muted, #f4f5f7);font-weight:500}.demand-pivot-table tfoot th,.demand-pivot-table tfoot td,.demand-pivot-table .demand-pivot-corner{background:var(--surface-muted, #f4f5f7);font-weight:600}.demand-pivot-table .demand-pivot-total-col{background:#0e7c660f}.demand-pivot-drill{color:inherit;text-decoration:none;border-bottom:1px dotted transparent;cursor:pointer}.demand-pivot-drill:hover{color:var(--accent, #0e7c66);border-bottom-color:var(--accent, #0e7c66)}.classify-table-view{padding:.6rem .8rem 1rem;display:flex;flex-direction:column;gap:.6rem}.classify-intro{padding:.6rem .8rem;background:var(--surface-muted, #f4f5f7);border-left:3px solid var(--accent, #0e7c66);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--ink, #232b3e);line-height:1.5}.classify-intro strong{color:var(--accent, #0e7c66)}.classify-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding-bottom:.4rem;border-bottom:1px solid var(--stroke)}.classify-search{font-family:var(--font-sans);font-size:var(--text-sm);padding:.25rem .6rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff;width:18rem}.classify-filter-select{font-family:var(--font-sans);font-size:var(--text-sm);padding:.2rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff;cursor:pointer}.classify-needs-review{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-sm);color:var(--ink-muted, #4a5266);cursor:pointer}.classify-issue-count{color:#b45309;font-weight:600}.classify-spacer{flex:1}.classify-result-count{color:var(--ink-muted, #6b7280);font-size:var(--text-sm)}.classify-link-btn{border:none;background:transparent;color:var(--accent, #0e7c66);font-size:var(--text-sm);text-decoration:underline;cursor:pointer;padding:0 .4rem}.classify-link-btn:hover{color:#0c6957}.classify-drilldown-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.35rem .5rem;background:#0e7c660f;border:1px solid rgba(14,124,102,.25);border-radius:var(--radius-sm)}.classify-drilldown-label{font-size:var(--text-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted, #4a5266)}.classify-drilldown-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;background:#fff;border:1px solid var(--stroke);border-radius:999px;font-size:var(--text-xs, .75rem)}.classify-drilldown-chip.warn{background:#fef3c7;border-color:#fbbf24}.classify-drilldown-chip strong{font-family:var(--font-mono, ui-monospace, monospace)}.classify-drilldown-chip button{border:none;background:transparent;cursor:pointer;font-size:1rem;line-height:1;padding:0 .1rem;color:var(--ink-muted, #6b7280)}.classify-drilldown-clear{border:none;background:transparent;color:var(--ink-muted, #6b7280);font-size:var(--text-xs, .75rem);cursor:pointer;text-decoration:underline;padding:0 .3rem;margin-left:auto}.classify-error{margin:0;padding:.4rem .6rem;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);color:#991b1b;font-size:var(--text-sm)}.classify-status{color:var(--ink-muted, #6b7280);font-size:var(--text-sm);margin:.2rem 0}.classify-progress-banner{display:flex;align-items:center;gap:.6rem;padding:.45rem .7rem;margin:.4rem 0;background:#0e7c6614;border:1px solid rgba(14,124,102,.3);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--ink, #232b3e)}.classify-progress-label{font-weight:600;flex-shrink:0}.classify-progress-track{flex:1;height:.4rem;background:#0e7c661f;border-radius:999px;overflow:hidden}.classify-progress-fill{height:100%;background:var(--accent, #0e7c66);transition:width .12s ease}.classify-progress-count{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280);flex-shrink:0}.classify-toast{display:flex;align-items:center;gap:.5rem;padding:.5rem .8rem;margin:.4rem 0;border-radius:var(--radius-sm);font-size:var(--text-sm);animation:classifyToastIn .18s ease-out}.classify-toast-success{background:#ecfdf5;border:1px solid #6ee7b7;color:#065f46}.classify-toast-icon{font-weight:700;font-size:1.1em}.classify-toast-text{flex:1;font-weight:600}.classify-toast-dismiss{background:none;border:none;color:inherit;cursor:pointer;font-size:1.2em;line-height:1;padding:0 .2rem;opacity:.6}.classify-toast-dismiss:hover{opacity:1}.classify-toast-undo{background:#fff;color:#065f46;border:1px solid #34d399;border-radius:var(--radius-sm);padding:.2rem .6rem;font-family:var(--font-sans);font-size:var(--text-xs, .75rem);font-weight:600;cursor:pointer}.classify-toast-undo:hover{background:#d1fae5;border-color:#10b981}.classify-empty-state{text-align:center;padding:2.5rem 1rem!important;color:var(--ink-muted, #6b7280)}.classify-empty-title{font-size:var(--text-sm);margin-bottom:.6rem}.classify-empty-clear{display:inline-block;padding:.4rem .9rem;background:var(--accent, #0e7c66);color:#fff;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer}.classify-empty-clear:hover{background:#0c6957}@keyframes classifyToastIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.classify-table-wrap{overflow-x:auto;overflow-y:visible;border:1px solid var(--stroke);border-radius:var(--radius-sm);width:100%;min-width:0}.classify-table{border-collapse:collapse;font-size:var(--text-sm);min-width:max-content}.classify-table-view{min-width:0}.classify-table th,.classify-table td{padding:.3rem .5rem;border-bottom:1px solid var(--stroke);text-align:left;vertical-align:middle;white-space:nowrap}.classify-table thead th{background:var(--surface-muted, #f4f5f7);color:var(--ink-muted, #4a5266);font-size:var(--text-xs, .75rem);text-transform:uppercase;letter-spacing:.04em;font-weight:600;position:sticky;top:0;z-index:1}.classify-row.needs-review>td:first-child{box-shadow:inset 4px 0 #f59e0b}.classify-row.saving{position:relative}.classify-row.saving:after{content:"";position:absolute;right:.4rem;top:50%;transform:translateY(-50%);width:.4rem;height:.4rem;border-radius:50%;background:var(--accent, #0e7c66);opacity:.6;pointer-events:none}.classify-row.selected{background:#0e7c6614}.classify-select-col{width:1.6rem;text-align:center!important;position:sticky!important;left:0;background:var(--surface-muted, #f4f5f7);z-index:3}.classify-table th:nth-child(2),.classify-table td.classify-sku{position:sticky;left:1.6rem;background:#fff;z-index:2;min-width:8rem}.classify-table thead th:nth-child(2){background:var(--surface-muted, #f4f5f7);z-index:3}.classify-table th:nth-child(3),.classify-table td.classify-name{position:sticky;left:9.6rem;background:#fff;z-index:2;box-shadow:2px 0 4px #0000000d}.classify-table thead th:nth-child(3){background:var(--surface-muted, #f4f5f7);z-index:3}.classify-row.needs-review td.classify-sku,.classify-row.needs-review td.classify-name{background:#fffdf6}.classify-row.selected td.classify-sku,.classify-row.selected td.classify-name{background:#f0f9f5}.classify-flag-cell{text-align:center!important;width:4rem}.classify-bulk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;padding:.5rem .7rem;background:var(--accent, #0e7c66);color:#fff;border-radius:var(--radius-sm);font-size:var(--text-sm);position:sticky;top:0;z-index:10}.classify-bulk-count strong{font-size:var(--text-base)}.classify-bulk-spacer{flex:0 0 auto;width:.5rem}.classify-bulk-action{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;background:#ffffff1f;border-radius:var(--radius-sm)}.classify-bulk-label{font-size:var(--text-xs, .75rem);text-transform:uppercase;letter-spacing:.04em;font-weight:600;color:#ffffffd9}.classify-bulk-action select{font-family:var(--font-sans);font-size:var(--text-sm);padding:.15rem .4rem;border:1px solid rgba(255,255,255,.4);background:#fff;color:var(--ink, #232b3e);border-radius:var(--radius-sm);cursor:pointer}.classify-bulk-action button{font-family:var(--font-sans);font-size:var(--text-sm);padding:.15rem .6rem;border:none;background:#fff;color:var(--accent, #0e7c66);border-radius:var(--radius-sm);cursor:pointer;font-weight:600}.classify-bulk-action button:disabled{opacity:.4;cursor:not-allowed}.classify-bulk-compat-btn{font-family:var(--font-sans);font-size:var(--text-xs, .75rem);font-weight:600;padding:.15rem .4rem;border:1px solid rgba(255,255,255,.4);background:#ffffff1a;color:#fff;border-radius:var(--radius-sm);cursor:pointer;min-width:2.4rem}.classify-bulk-compat-btn:hover{background:#ffffff40}.classify-bulk-compat-btn.remove{background:#00000026}.classify-bulk-suggestion-btn{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;padding:.25rem .7rem;background:#fff;color:var(--accent, #0e7c66);border:1px solid #fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.classify-bulk-suggestion-btn:hover{background:#ffffffe6;border-color:#ffffffe6}.classify-bulk-suggestion-note{font-size:var(--text-xs, .75rem);color:#ffffffbf;margin-left:.5rem}.classify-bulk-clear{margin-left:auto;border:none;background:transparent;color:#ffffffd9;font-size:var(--text-sm);text-decoration:underline;cursor:pointer}.classify-sku{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs, .75rem);font-weight:600}.classify-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classify-th-resizable{position:relative;display:block;padding-right:8px}.classify-resize-handle{position:absolute;top:-4px;right:-8px;width:8px;height:calc(100% + 8px);cursor:col-resize;z-index:5;user-select:none}.classify-resize-handle:after{content:"";position:absolute;top:0;left:3px;width:2px;height:100%;background:transparent}.classify-resize-handle:hover:after,.classify-resize-handle.dragging:after{background:var(--accent, #0e7c66);opacity:.6}.classify-cell-select{font-family:var(--font-sans);font-size:var(--text-sm);padding:.1rem .3rem;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;cursor:pointer;max-width:9rem}.classify-cell-select:hover{border-color:var(--stroke);background:#fff}.classify-cell-select:focus{outline:none;border-color:var(--accent, #0e7c66);background:#fff;box-shadow:0 0 0 2px #0e7c6626}.classify-cell-select[data-divergent]{background:#fef3c7}.classify-compat-group{display:inline-flex;gap:.15rem}.classify-compat-btn{font-family:var(--font-sans);font-size:var(--text-xs, .75rem);font-weight:600;padding:.15rem .4rem;border:1px solid var(--stroke);background:#fff;border-radius:var(--radius-sm);cursor:pointer;min-width:1.6rem;color:var(--ink-muted, #6b7280)}.classify-compat-btn:hover{border-color:var(--accent, #0e7c66)}.classify-compat-btn.on{background:var(--accent, #0e7c66);border-color:var(--accent, #0e7c66);color:#fff}.classify-flags{display:inline-flex;gap:.4rem}.classify-flags label{display:inline-flex;align-items:center;gap:.15rem;cursor:pointer;font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280)}.classify-na{color:var(--ink-muted, #9ca3af);font-style:italic}.classify-kt-wrap{position:relative;display:inline-block}.classify-kt-btn{font-family:var(--font-sans);font-size:var(--text-sm);padding:.15rem .5rem;border:1px solid var(--stroke);background:#fff;border-radius:var(--radius-sm);cursor:pointer;max-width:11rem;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.classify-kt-btn.empty{color:var(--ink-muted, #9ca3af);font-style:italic;border-style:dashed}.classify-kt-popover{position:absolute;z-index:10;top:100%;left:0;display:flex;flex-direction:column;gap:.2rem;padding:.5rem;background:#fff;border:1px solid var(--stroke);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000001a;min-width:12rem;max-height:18rem;overflow-y:auto}.classify-kt-row{display:flex;align-items:center;gap:.3rem;font-size:var(--text-sm);cursor:pointer;padding:.1rem .2rem;border-radius:var(--radius-sm)}.classify-kt-row:hover{background:var(--surface-muted, #f4f5f7)}.classify-kt-add input{font-family:var(--font-sans);font-size:var(--text-sm);padding:.15rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);width:100%;margin-top:.3rem}.classify-kt-close{border:none;background:var(--accent, #0e7c66);color:#fff;font-size:var(--text-xs, .75rem);padding:.2rem .6rem;border-radius:var(--radius-sm);cursor:pointer;margin-top:.3rem}.classify-color-add input{font-family:var(--font-sans);font-size:var(--text-sm);padding:.15rem .4rem;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-sm);width:8rem}.classify-issues-cell{max-width:24rem}.classify-issues{display:flex;flex-wrap:wrap;gap:.25rem;max-width:24rem}.classify-issue{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-xs, .75rem);white-space:nowrap}.classify-issue-label{padding:.1rem .4rem;background:#fef3c7;border:1px solid #fbbf24;border-radius:999px 0 0 999px;color:#92400e;font-weight:600}.classify-issue:not(.has-suggestion) .classify-issue-label{border-radius:999px}.classify-issue-apply{padding:.1rem .5rem;background:var(--accent, #0e7c66);border:1px solid var(--accent, #0e7c66);color:#fff;border-radius:0 999px 999px 0;font-size:var(--text-xs, .75rem);font-weight:600;cursor:pointer;font-family:var(--font-sans)}.classify-issue-apply:hover{background:#0c6957}.classify-issue-apply:disabled{opacity:.5;cursor:not-allowed}.classify-lowconf-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.1rem .55rem;background:var(--surface-warning-subtle, #fef2f2);border:1px solid var(--stroke-warning, #fca5a5);border-radius:999px;color:var(--ink-warning, #991b1b);font-family:var(--font-sans);font-size:var(--text-xs, .75rem);font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color 80ms ease}.classify-lowconf-badge:hover{background:var(--surface-warning, #fee2e2);border-color:var(--ink-warning, #991b1b)}.classify-lowconf-badge:focus-visible{outline:2px solid var(--accent, #0e7c66);outline-offset:2px}.classify-lowconf-icon{font-size:.85em;line-height:1}.classify-lowconf-text{font-family:var(--font-mono, ui-monospace, monospace);font-size:.85em}.classify-cell-with-warn{display:inline-flex;align-items:center;gap:.3rem}.classify-compat-btn-wrap{display:inline-flex;align-items:center;gap:.15rem}.classify-lowconf-dot{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;padding:0;background:var(--surface-warning-subtle, #fef2f2);border:1px solid var(--stroke-warning, #fca5a5);border-radius:999px;color:var(--ink-warning, #991b1b);font-size:.7rem;line-height:1;cursor:pointer;transition:background-color 80ms ease,transform 80ms ease}.classify-lowconf-dot:hover{background:var(--surface-warning, #fee2e2);border-color:var(--ink-warning, #991b1b);transform:scale(1.1)}.classify-lowconf-dot:focus-visible{outline:2px solid var(--accent, #0e7c66);outline-offset:2px}.classify-compat-btn.low-conf{border-color:var(--stroke-warning, #fca5a5);box-shadow:0 0 0 1px var(--stroke-warning, #fca5a5) inset}.classify-apply-all-btn{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;padding:.3rem .8rem;background:var(--accent, #0e7c66);color:#fff;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0}.classify-apply-all-btn:hover{background:#0c6957}.classify-autofix-row{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;padding:.55rem .7rem;background:#0e7c660f;border:1px solid rgba(14,124,102,.25);border-radius:var(--radius-sm);font-size:var(--text-sm)}.classify-autofix-blurb{color:var(--ink, #232b3e);line-height:1.4;flex-shrink:0}.classify-autofix-blurb strong{color:var(--accent, #0e7c66)}.classify-autofix-chips{display:flex;flex-wrap:wrap;gap:.3rem;flex:1;min-width:0}.classify-autofix-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;background:#fff;border:1px solid var(--stroke);border-radius:999px;font-family:var(--font-sans);font-size:var(--text-xs, .75rem);color:var(--ink, #232b3e);cursor:pointer;white-space:nowrap}.classify-autofix-chip:hover{border-color:var(--ink-muted, #6b7280)}.classify-autofix-chip.on{background:var(--ink, #232b3e);color:#fff;border-color:var(--ink, #232b3e)}.classify-autofix-chip.conf-high{border-left:3px solid #10b981}.classify-autofix-chip.conf-medium{border-left:3px solid #f59e0b}.classify-autofix-chip.conf-low{border-left:3px solid #ef4444}.classify-autofix-chip.conf-uncertain{border-left:3px solid #9ca3af}.classify-autofix-chip-count{color:var(--ink-muted, #6b7280);font-weight:600}.classify-autofix-chip.on .classify-autofix-chip-count{color:#ffffffb3}.classify-autofix-chip-flag{border-left:3px solid #be123c}.classify-autofix-chip-flag.on{background:#be123c;border-color:#be123c}.classify-flag-icon{margin-right:.3rem;font-size:.85em;cursor:help}.classify-suggested-col{min-width:12rem}.classify-suggested-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .7rem;background:#ecfdf5;color:#065f46;border:1px solid #6ee7b7;border-radius:999px;font-family:var(--font-sans);font-size:var(--text-xs, .75rem);font-weight:600;cursor:pointer;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.classify-suggested-pill:hover:not(:disabled){background:#d1fae5;border-color:#34d399}.classify-suggested-pill.conf-medium{background:#fef3c7;color:#92400e;border-color:#fbbf24}.classify-suggested-pill.conf-medium:hover:not(:disabled){background:#fde68a}.classify-suggested-pill.conf-low{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.classify-suggested-pill.conf-uncertain{background:var(--surface-muted, #f4f5f7);color:var(--ink-muted, #6b7280);border-color:var(--stroke)}.classify-suggested-pill:disabled{opacity:.5;cursor:not-allowed}.classify-detail-col{width:5.5rem;text-align:center!important;position:sticky!important;right:0;background:#fff;box-shadow:-2px 0 4px #0000000d;z-index:4}.classify-table thead .classify-detail-col{background:var(--surface-muted, #f4f5f7);z-index:5}.classify-row.needs-review td.classify-detail-col{background:#fffdf6}.classify-row.selected td.classify-detail-col{background:#f0f9f5}.classify-detail-btn{border:1px solid var(--stroke);background:#fff;color:var(--accent, #0e7c66);font-size:var(--text-sm);font-weight:600;padding:.2rem .6rem;border-radius:var(--radius-sm);cursor:pointer;line-height:1;white-space:nowrap}.classify-detail-btn:hover{background:var(--accent, #0e7c66);color:#fff;border-color:var(--accent, #0e7c66)}.classify-detail-backdrop{position:fixed;inset:0;background:#0000001f;z-index:99}.classify-detail-panel{position:fixed;top:0;right:0;bottom:0;width:min(480px,90vw);background:#fff;border-left:1px solid var(--stroke);box-shadow:-4px 0 16px #00000014;z-index:100;overflow-y:auto;display:flex;flex-direction:column}.cdp-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid var(--stroke);background:var(--surface-muted, #f4f5f7)}.cdp-sku{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-base);font-weight:700}.cdp-name{font-size:var(--text-sm);color:var(--ink-muted, #4a5266);margin-top:.15rem}.cdp-close{border:none;background:transparent;font-size:1.8rem;line-height:1;cursor:pointer;color:var(--ink-muted, #6b7280);padding:0 .4rem}.cdp-close:hover{color:var(--ink, #232b3e)}.cdp-section{padding:.8rem 1.2rem;border-bottom:1px solid var(--stroke)}.cdp-section-title{font-size:var(--text-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted, #4a5266);margin:0 0 .6rem}.cdp-section-hint{font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280);margin:0 0 .6rem;line-height:1.5}.cdp-section-hint .cdp-badge{cursor:default;vertical-align:middle}.cdp-flag-marker{margin-right:.4rem;font-size:.85em}.cdp-flag-cta{padding-top:.6rem!important;padding-bottom:.6rem!important}.cdp-flag-trigger{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .7rem;background:transparent;border:1px dashed var(--stroke, #d1d5db);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-muted, #6b7280);cursor:pointer}.cdp-flag-trigger:hover{border-color:var(--ink-warning, #991b1b);color:var(--ink-warning, #991b1b);background:var(--surface-warning-subtle, #fef2f2)}.cdp-flag-form{display:block;font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280);margin-bottom:.4rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.cdp-flag-optional{font-weight:400;text-transform:none;letter-spacing:0}.cdp-flag-input{width:100%;padding:.4rem .6rem;border:1px solid var(--stroke, #d1d5db);border-radius:var(--radius-sm);font:inherit;margin-bottom:.5rem}.cdp-flagged-section{background:var(--surface-warning-subtle, #fef2f2);border-radius:var(--radius-sm);padding:.7rem .9rem!important;margin-bottom:.6rem}.cdp-flagged-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.cdp-flagged-label{font-weight:700;color:var(--ink-warning, #991b1b);font-size:var(--text-sm)}.cdp-flagged-reason{margin-top:.35rem;font-size:var(--text-sm);color:var(--ink, #232b3e);font-style:italic}.cdp-flagged-noreason{color:var(--ink-muted, #6b7280)}.cdp-issue-count{color:#b45309;margin-left:.3rem}.cdp-issue{padding:.5rem .7rem;margin-bottom:.5rem;border-radius:var(--radius-sm);background:#fef9e7;border:1px solid #fbbf24}.cdp-issue.conf-high{background:#ecfdf5;border-color:#6ee7b7}.cdp-issue.conf-medium{background:#fef9e7;border-color:#fbbf24}.cdp-issue.conf-low{background:#fff1f2;border-color:#fca5a5}.cdp-issue.conf-uncertain{background:#f3f4f6;border-color:#9ca3af}.cdp-issue-row{display:flex;align-items:center;gap:.4rem;margin-bottom:.3rem}.cdp-confidence-pill{font-size:var(--text-xs, .7rem);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .5rem;border-radius:999px}.cdp-confidence-pill.high{background:#059669;color:#fff}.cdp-confidence-pill.medium{background:#d97706;color:#fff}.cdp-confidence-pill.low{background:#dc2626;color:#fff}.cdp-confidence-pill.uncertain{background:#6b7280;color:#fff}.cdp-issue-label{font-weight:600;font-size:var(--text-sm)}.cdp-issue-explanation{font-size:var(--text-sm);color:var(--ink-muted, #4a5266);margin-bottom:.4rem}.cdp-issue-actions{display:flex;gap:.4rem;flex-wrap:wrap}.cdp-btn{padding:.25rem .7rem;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer;border:1px solid var(--stroke);background:#fff}.cdp-btn:disabled{opacity:.5;cursor:not-allowed}.cdp-btn-primary{background:var(--accent, #0e7c66);border-color:var(--accent, #0e7c66);color:#fff}.cdp-btn-primary:hover:not(:disabled){background:#0c6957}.cdp-btn-secondary:hover:not(:disabled){background:var(--surface-muted, #f4f5f7)}.cdp-no-issues{color:var(--ink-muted, #6b7280);font-style:italic}.cdp-fields{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.cdp-fields th{text-align:left;font-weight:500;color:var(--ink-muted, #4a5266);padding:.3rem .4rem .3rem 0;vertical-align:middle;white-space:nowrap;width:7rem}.cdp-help-th{border-bottom:1px dotted var(--ink-muted, #9ca3af);cursor:help}.cdp-val[title]{cursor:help}.cdp-fields td{padding:.3rem .4rem;vertical-align:middle}.cdp-fields tr{border-bottom:1px dotted #eee}.cdp-fields tr:last-child{border-bottom:none}.cdp-val{font-weight:600;color:var(--ink, #232b3e);font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-sm)}.cdp-badge-cell{text-align:right;width:1%;white-space:nowrap}.cdp-badge{display:inline-flex;align-items:center;gap:.2rem;padding:.1rem .45rem;border-radius:999px;font-size:var(--text-xs, .7rem);font-weight:600;border:1px solid transparent;cursor:help}.cdp-badge-muted{background:var(--surface-muted, #f4f5f7);color:var(--ink-muted, #9ca3af);border-color:#e5e7eb}.cdp-badge-human{background:#dbeafe;color:#1e40af;border-color:#93c5fd}.cdp-badge-machine{background:#f3f4f6;color:#374151;border-color:#d1d5db}.cdp-badge-machine.conf-high{background:#d1fae5;color:#065f46;border-color:#6ee7b7}.cdp-badge-machine.conf-medium{background:#fef3c7;color:#92400e;border-color:#fbbf24}.cdp-badge-machine.conf-low{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.cdp-badge-confirmed{background:#ecfdf5;color:#065f46;border-color:#6ee7b7}.cdp-empty{color:var(--ink-muted, #9ca3af);font-style:italic;font-size:var(--text-sm);margin:0}.cdp-footer{margin-top:auto;padding:.6rem 1.2rem;background:var(--surface-muted, #f4f5f7);font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280);border-top:1px solid var(--stroke)}.classify-modal-backdrop{position:fixed;inset:0;background:#0006;z-index:200}.classify-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(640px,95vw);max-height:85vh;background:#fff;border-radius:var(--radius-sm);box-shadow:0 20px 60px #0000004d;z-index:201;display:flex;flex-direction:column;overflow:hidden}.classify-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid var(--stroke);background:var(--surface-muted, #f4f5f7)}.classify-modal-title{font-size:var(--text-lg, 1.1rem);font-weight:700;margin-bottom:.2rem}.classify-modal-subtitle{font-size:var(--text-sm);color:var(--ink-muted, #4a5266);line-height:1.4}.classify-modal-body{padding:.8rem 1.2rem;overflow-y:auto;flex:1}.classify-modal-toolbar{display:flex;align-items:center;gap:.6rem;padding:.5rem 1.2rem;border-bottom:1px solid var(--stroke);background:var(--surface-muted, #f8f9fb);font-size:var(--text-sm)}.classify-modal-master{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;cursor:pointer}.classify-modal-toolbar-spacer{flex:1}.classify-modal-group{margin-bottom:.4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff}.classify-modal-group.open{border-color:var(--stroke-strong, #d0d4dc);box-shadow:0 1px #00000005}.classify-modal-group-summary{display:flex;align-items:center;gap:.5rem;padding:.5rem .7rem;font-size:var(--text-sm)}.classify-modal-group-toggle{flex:1;display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;padding:.1rem 0;text-align:left;cursor:pointer;font:inherit;color:inherit}.classify-modal-chevron{display:inline-block;width:1em;color:var(--ink-muted, #6b7280);font-size:.85em}.classify-modal-group-summary strong{font-weight:600}.classify-modal-group-count{font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280);background:var(--surface-muted, #f4f5f7);padding:.1rem .5rem;border-radius:999px}.classify-modal-row-list{list-style:none;margin:0;padding:.3rem .7rem .7rem 2rem;max-height:18rem;overflow-y:auto}.classify-modal-row-list li{display:flex;gap:.6rem;padding:.15rem 0;font-size:var(--text-sm);border-bottom:1px dotted #eee}.classify-modal-row-list li:last-child{border-bottom:none}.classify-modal-row-list li.unchecked{opacity:.45}.classify-modal-row-label{display:flex;align-items:center;gap:.6rem;width:100%;cursor:pointer}.classify-cascade-list li{display:grid;grid-template-columns:9rem 1fr auto;align-items:baseline;gap:.6rem}.classify-cascade-change{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs, .75rem);white-space:nowrap}.classify-cascade-current{color:var(--ink-muted, #6b7280)}.classify-cascade-next{color:#92400e;font-weight:600}.classify-modal-sku{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs, .75rem);font-weight:600;color:var(--ink-muted, #4a5266);min-width:9rem}.classify-modal-name{color:var(--ink, #232b3e);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classify-modal-more{font-style:italic;color:var(--ink-muted, #9ca3af)}.classify-modal-footer{display:flex;justify-content:flex-end;gap:.6rem;padding:.8rem 1.2rem;border-top:1px solid var(--stroke);background:var(--surface-muted, #f4f5f7)}.product-detail-classification{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--stroke)}.product-classification-editor{display:flex;flex-direction:column;gap:.6rem;font-size:var(--text-base)}.classification-fallback-note{margin:0;padding:.4rem .6rem;background:var(--surface-muted, #f4f5f7);border:1px dashed var(--stroke);border-radius:var(--radius-sm);color:var(--ink-muted, #4a5266);font-size:var(--text-sm)}.classification-error{margin:0;padding:.4rem .6rem;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);color:#991b1b;font-size:var(--text-sm)}.classification-grid{display:grid;grid-template-columns:1fr;gap:.3rem}.classification-row{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:.5rem;min-height:1.8rem}.classification-row-label{color:var(--ink-muted, #4a5266);font-size:var(--text-sm)}.classification-row-control{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.classification-row-hint,.classification-divergent{grid-column:2;font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280)}.classification-divergent{color:#b45309}.classification-select,.classification-number{font-family:var(--font-sans);font-size:var(--text-base);padding:.15rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff;color:#232b3e;cursor:pointer}.classification-number{width:4rem}.classification-select:focus,.classification-number:focus,.classification-label-input:focus,.classification-cost-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #0e7c6626}.classification-checkbox{display:inline-flex;align-items:center;gap:.2rem;font-size:var(--text-sm);cursor:pointer}.classification-cost-edit{display:inline-flex;align-items:baseline;gap:.1rem}.classification-cost-input{width:5rem;font-family:var(--font-sans);font-size:var(--text-base);padding:.15rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff}.classification-labels{border-top:1px solid var(--stroke);padding-top:.5rem;display:flex;flex-direction:column;gap:.4rem}.classification-label-header{color:var(--ink-muted, #4a5266);font-size:var(--text-sm);font-weight:600}.classification-label-subheader{color:var(--ink-muted, #4a5266);font-size:var(--text-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-top:.4rem}.classification-label-chips{display:flex;flex-wrap:wrap;gap:.3rem}.classification-label-empty{color:var(--ink-muted, #6b7280);font-size:var(--text-sm);font-style:italic}.classification-label-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .4rem .15rem .5rem;background:var(--surface-muted, #f4f5f7);border:1px solid var(--stroke);border-radius:999px;font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs, .75rem)}.classification-label-chip.single{background:#ecfdf5;border-color:#a7f3d0}.classification-label-remove{border:none;background:transparent;cursor:pointer;font-size:1rem;line-height:1;padding:0 .15rem;color:var(--ink-muted, #6b7280)}.classification-label-remove:hover{color:#b91c1c}.classification-label-input-row{display:flex;gap:.3rem}.classification-label-input{flex:1;font-family:var(--font-sans);font-size:var(--text-base);padding:.2rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:#fff}.classification-label-suggestions{display:flex;flex-wrap:wrap;gap:.25rem}.classification-label-suggestion{border:1px solid var(--stroke);background:#fff;border-radius:999px;padding:.1rem .5rem;font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs, .75rem);cursor:pointer;color:var(--ink, #232b3e)}.classification-label-suggestion:hover{background:var(--surface-muted, #f4f5f7)}.classification-label-hint{margin:0;font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280)}.classification-fusion-signal{border-top:1px solid var(--stroke);padding-top:.5rem;font-size:var(--text-sm)}.classification-fusion-signal>summary{cursor:pointer;color:var(--ink-muted, #4a5266);font-weight:500}.classification-fusion-grid{display:grid;grid-template-columns:1fr;gap:.25rem;margin-top:.4rem}.classification-fusion-grid>div{display:grid;grid-template-columns:130px 1fr;gap:.4rem}.classification-audit{margin:0;font-size:var(--text-xs, .75rem);color:var(--ink-muted, #6b7280);font-style:italic}.product-detail-actions{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e6ea;display:flex;flex-direction:column;gap:.5rem}.product-detail-label-btn{font-family:var(--font-sans);font-size:var(--text-base);padding:.4rem .9rem;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--panel);color:var(--accent);cursor:pointer;width:100%}.product-detail-label-btn:hover{background:var(--hover-bg)}.inventory-row-actions{display:flex;gap:.25rem;justify-content:flex-end}.inventory-row-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--accent);cursor:pointer;font-size:var(--text-xs);font-weight:600;padding:.2rem .45rem;white-space:nowrap}.inventory-row-btn:hover{background:var(--hover-bg)}.inventory-row-btn-disabled,.inventory-row-btn-disabled:hover{color:var(--muted);background:var(--surface);cursor:not-allowed;opacity:.72}.inventory-disabled-notice{margin-bottom:.6rem;border:1px solid var(--status-warn-border);border-radius:var(--radius-md);background:var(--warn-bg-soft);color:var(--warn-fg-soft);padding:.55rem .65rem;font-size:var(--text-sm)}.inventory-adjustment-list{margin-top:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:.55rem .65rem}.inventory-adjustment-list h5{margin:0 0 .45rem;font-size:var(--text-sm)}.inventory-adjustment-item{display:grid;grid-template-columns:72px 1fr 56px 120px 120px;gap:.5rem;align-items:center;padding:.25rem 0;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);font-size:var(--text-xs)}.inventory-adjustment-item:first-of-type{border-top:none}.inventory-adjustment-status{border:1px solid var(--border);border-radius:var(--radius-pill);padding:.05rem .4rem;text-transform:capitalize;text-align:center;color:var(--muted);background:var(--panel)}.inventory-adjustment-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--ink) 30%,transparent);padding:1rem}.inventory-adjustment-modal{width:min(560px,100%);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg);padding:1rem}.inventory-adjustment-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.inventory-adjustment-header h4{margin:0}.inventory-adjustment-context{display:flex;flex-wrap:wrap;gap:.4rem .75rem;margin-bottom:.75rem;color:var(--muted);font-size:var(--text-sm)}.inventory-adjustment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.inventory-adjustment-grid label,.inventory-adjustment-notes{display:flex;flex-direction:column;gap:.25rem;font-size:var(--text-xs);font-weight:600;color:var(--muted)}.inventory-adjustment-grid input,.inventory-adjustment-grid select,.inventory-adjustment-notes textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-sm);padding:.45rem .55rem}.inventory-adjustment-notes{margin-top:.75rem}.inventory-adjustment-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.9rem}.product-detail-disable-btn{font-family:var(--font-sans);font-size:var(--text-base);padding:.4rem .9rem;border:1px solid #d95f5f;border-radius:var(--radius-sm);background:#fff;color:#d95f5f;cursor:pointer;width:100%}.product-detail-disable-btn:hover{background:#fdf2f2}.product-detail-enable-btn{font-family:var(--font-sans);font-size:var(--text-base);padding:.4rem .9rem;border:1px solid var(--accent);border-radius:var(--radius-sm);background:#fff;color:var(--accent);cursor:pointer;width:100%}.product-detail-enable-btn:hover{background:#eef6f4}.bom-bucket-header-row{background:#eef2e8}.bom-bucket-header{font-weight:700;font-size:var(--text-sm);letter-spacing:.06em;color:#3f5a4f;padding:.5rem .52rem!important}.suppliers-bom-filters{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.suppliers-active-sort-chip{display:inline-flex;align-items:center;font-size:var(--text-sm);color:var(--accent);background:var(--accent-bg, #e6f3f0);border-radius:var(--radius-sm);padding:.2rem .6rem;margin-bottom:.35rem}.suppliers-filter-toggle{display:inline-flex;gap:.35rem;align-items:center;font-size:var(--text-base);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.active2026-badge{display:inline-block;background:#e6f4ea;color:#1a7f37;font-size:var(--text-sm);font-weight:600;padding:.12rem .5rem;border-radius:var(--radius-sm);margin-left:.35rem}.product-enabled-badge{display:inline-block;background:#e6f4ea;color:#1a7f37;font-size:var(--text-sm);font-weight:600;padding:.12rem .5rem;border-radius:var(--radius-sm)}.product-disabled-badge{display:inline-block;background:#fce8e8;color:#b53030;font-size:var(--text-sm);font-weight:600;padding:.12rem .5rem;border-radius:var(--radius-sm)}.bom-disable-btn{border:0;background:transparent;color:#8a93a8;cursor:pointer;font-size:var(--text-md);padding:0 .25rem;line-height:1}.bom-disable-btn:hover{color:var(--bad)}.row-excluded .bom-disable-btn:hover{color:var(--good)}.gen-badge{display:inline-block;font-size:var(--text-xs);font-weight:600;padding:.1rem .45rem;border-radius:var(--radius-sm);letter-spacing:.01em}.gen-badge-1{background:#ede7f6;color:#5e35b1}.gen-badge-2{background:#e6f4ea;color:#1a7f37}.gen-badge-X{background:#e3f2fd;color:#1565c0}.gen-badge-glow{background:#fff8e1;color:#e65100}.gen-badge-nonglow{background:#eceff1;color:#455a64}.kit-badge{display:inline-block;background:#fef3cd;color:#856404;font-size:var(--text-xs);font-weight:700;padding:.08rem .38rem;border-radius:var(--radius-sm);margin-left:.35rem;vertical-align:middle;letter-spacing:.04em}.buildable-count{font-weight:700;color:#1a7f37}.buildable-zero{font-weight:700;color:#b53030}.buildable-count-large{font-size:var(--text-xl);font-weight:800;color:#1a7f37}.buildable-count-large.zero{color:#b53030}.kit-bottleneck-row{background:#fff8e1}.suppliers-disabled-block{margin-top:.5rem}.suppliers-disabled-block summary{cursor:pointer;color:var(--text-secondary);font-weight:600;font-size:var(--text-base)}.detail-hint{color:var(--text-secondary);font-size:var(--text-base);margin-left:.3rem}.detail-section-heading{margin:.5rem 0 .2rem}.detail-list{margin:0;padding-left:1.2rem;font-size:var(--text-base)}.detail-code{color:var(--text-secondary);font-size:var(--text-sm)}.kit-composition-row{display:flex;align-items:baseline;gap:.5rem;margin:.2rem 0 .4rem}.kit-composition-label{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase}.bom-action-cell{text-align:center;width:36px}.sort-clear-btn{margin-left:.5rem;padding:0 .4rem;font-size:var(--text-sm)}.bom-table-compact{font-size:var(--text-base)}.bom-empty-message{color:var(--text-secondary);font-size:var(--text-base)}.bom-disabled-table{margin-top:.5rem}@media(max-width:900px){.suppliers-preview-panel{right:.5rem;left:.5rem;width:auto}.supplier-country-editor-controls{width:100%}.supplier-country-editor-controls input{min-width:0;flex:1 1 auto}}@media(max-width:900px){.suppliers-panel{padding:.7rem}.suppliers-search-form input{min-width:0;width:100%}.suppliers-table{font-size:var(--text-sm)}.suppliers-table th,.suppliers-table td{padding:.38rem}}.hw-report-panel{max-width:1200px;margin:0 auto;padding:1.5rem 2rem 3rem}.hw-report-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem}.hw-report-header h2{margin:0;font-size:var(--text-lg);font-weight:700;color:var(--text-primary, #1a1a2e)}.hw-report-timestamp{font-size:var(--text-sm);color:var(--text-secondary)}.hw-report-summary{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.hw-summary-card{flex:1;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.25rem}.hw-summary-value{font-size:var(--text-2xl);font-weight:700;font-family:var(--font-mono, "IBM Plex Mono", monospace);color:var(--accent, #0e7c66)}.hw-summary-label{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.hw-report-table-wrap{overflow:auto;max-height:calc(100vh - 300px);border:1px solid var(--border);border-radius:var(--radius-md)}.hw-report-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.hw-report-table th,.hw-report-table td{padding:.5rem .65rem;text-align:left;border-bottom:1px solid var(--border)}.hw-report-table th{background:var(--surface);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);white-space:nowrap;position:sticky;top:0;z-index:1}.hw-sortable{cursor:pointer;user-select:none}.hw-sortable:hover{color:var(--text-primary)}.hw-sort-arrow{font-size:var(--text-xs)}.hw-report-table tbody tr:hover{background:var(--hover-bg)}.hw-report-table thead th{border-bottom:2px solid #94a3b8}.hw-group-header td{background:#e2e8f0;border-bottom:1px solid #94a3b8;border-top:2px solid #94a3b8;padding:.45rem .65rem;position:sticky;top:34px;z-index:1}.hw-report-table tbody:first-of-type .hw-group-header td{border-top:none}.hw-group-label{font-weight:700;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;color:#334155}.hw-group-total{font-weight:600;font-size:var(--text-xs);color:#475569}.hw-group-header:hover td{background:#e2e8f0}.hw-grand-total td{background:#cbd5e1;border-top:2px solid #64748b;border-bottom:none;padding:.5rem .65rem;position:sticky;bottom:0;z-index:1}.hw-grand-total-cell{font-weight:700;font-size:var(--text-sm);color:#1e293b}.hw-grand-total .hw-group-label{font-size:var(--text-sm);color:#1e293b}.hw-col-code{min-width:60px;font-family:var(--font-mono, "IBM Plex Mono", monospace);font-weight:600;white-space:nowrap}.hw-col-customer{min-width:160px}.hw-col-meta{text-align:center;white-space:nowrap}.hw-col-week{text-align:center;vertical-align:middle;font-family:var(--font-mono, "IBM Plex Mono", monospace);min-width:62px}.hw-heat-good{background:#d1fae5;color:#065f46}.hw-heat-low{background:#fef3c7;color:#92400e}.hw-heat-high{background:#fee2e2;color:#991b1b}.hw-report-no-data{text-align:center;padding:2rem;color:var(--text-secondary)}.hw-report-loading,.hw-report-empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.hw-report-empty h2{margin:0 0 .5rem}.hw-report-error{text-align:center;padding:2rem}.hw-report-error p{color:var(--bad);margin-bottom:1rem}.hw-unmapped-row td{opacity:.8}.hw-dismiss-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid #cbd5e1;border-radius:var(--radius-sm);background:#fff;color:#94a3b8;font-size:14px;font-weight:700;line-height:1;cursor:pointer;padding:0;transition:background .15s,color .15s,border-color .15s}.hw-dismiss-btn:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.hw-dismiss-btn-off{background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0}.hw-dismiss-btn-off:hover{background:#d1fae5;color:#059669;border-color:#6ee7b7}.hw-unmapped-dismissed td{opacity:.35;text-decoration:line-through}.hw-unmapped-dismissed td:first-child{text-decoration:none;opacity:.6}.hw-unmapped-dismissed .hw-col-week{background:none!important}.hw-cell-ratio{display:inline-flex;align-items:baseline;justify-content:center;gap:1px;white-space:nowrap}.hw-cell-ratio-num{font-weight:700}.hw-cell-ratio-sep{opacity:.4;margin:0 1px}.hw-cell-ratio-den{opacity:.55;font-weight:400}.hw-customer-hover{cursor:default}.hw-detail-modal{position:fixed;top:60px;right:1rem;width:400px;max-height:calc(100vh - 80px);overflow-y:auto;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg, 0 10px 25px rgba(0,0,0,.12));padding:1rem 1.15rem;z-index:20;pointer-events:none;font-size:var(--text-sm)}.hw-detail-modal-timeline{width:440px}.hw-detail-header{font-weight:700;font-size:var(--text-base);margin-bottom:.6rem;color:var(--text-primary)}.hw-detail-row{display:flex;justify-content:space-between;padding:.2rem 0}.hw-detail-label{color:var(--text-secondary)}.hw-detail-value{font-family:var(--font-mono, "IBM Plex Mono", monospace);font-weight:600}.hw-detail-divider{border-top:1px solid var(--border);margin:.5rem 0}.hw-detail-sub{padding:.25rem 0;border-bottom:1px solid var(--border)}.hw-detail-sub:last-child{border-bottom:none}.hw-detail-sub-date{font-weight:600;margin-right:.5rem}.hw-detail-sub-stats{font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:var(--text-xs);color:var(--text-secondary)}.hw-detail-issues{margin-top:.2rem;display:flex;flex-wrap:wrap;gap:.25rem}.hw-detail-issue{display:inline-block;font-size:var(--text-xs);background:#e0e7ff;color:#3730a3;border-radius:var(--radius-sm);padding:1px 6px}.hw-report-legend{display:flex;align-items:center;gap:1rem;margin-top:.75rem;font-size:var(--text-sm);color:var(--text-secondary)}.hw-legend-item{display:flex;align-items:center;gap:.3rem}.hw-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.1)}.hw-has-shipment{position:relative}.hw-has-shipment:after{content:"";position:absolute;top:0;right:0;border-style:solid;border-width:0 10px 10px 0;border-color:transparent #0e7c66 transparent transparent}.hw-detail-shipment{padding:.3rem 0;border-bottom:1px solid var(--border)}.hw-detail-shipment:last-child{border-bottom:none}.hw-detail-shipment-header{display:flex;justify-content:space-between;align-items:baseline}.hw-detail-shipment-code{font-weight:600;font-family:var(--font-mono);font-size:var(--text-xs)}.hw-detail-shipment-class{font-size:var(--text-xs);background:#dbeafe;color:#1e40af;border-radius:var(--radius-sm);padding:1px 6px}.hw-detail-shipment-date{font-size:var(--text-xs);color:var(--text-secondary);margin-top:.1rem}.hw-detail-shipment-items{display:flex;flex-wrap:wrap;gap:.2rem;margin-top:.2rem}.hw-detail-shipment-item{font-size:var(--text-xs);font-family:var(--font-mono);background:#f3f4f6;color:var(--text-secondary);border-radius:var(--radius-sm);padding:1px 5px}.hw-legend-shipment{position:relative;background:#fff}.hw-legend-shipment:after{content:"";position:absolute;top:0;right:0;border-style:solid;border-width:0 8px 8px 0;border-color:transparent #0e7c66 transparent transparent}.hw-timeline-meta{display:block;font-size:var(--text-xs);font-weight:400;color:var(--text-secondary);margin-top:.15rem}.hw-timeline-list{display:flex;flex-direction:column;gap:0}.hw-timeline-row{display:grid;grid-template-columns:56px auto 1fr;gap:.5rem;align-items:baseline;padding:.4rem 0;border-bottom:1px solid var(--border)}.hw-timeline-row:last-child{border-bottom:none}.hw-timeline-date{font-weight:600;font-size:var(--text-xs);white-space:nowrap;color:var(--text-primary)}.hw-timeline-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:var(--radius-sm);white-space:nowrap}.hw-timeline-badge-report{background:#fee2e2;color:#991b1b}.hw-timeline-badge-shipment{background:#d1fae5;color:#065f46}.hw-timeline-detail{font-size:var(--text-xs);color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:.25rem;align-items:baseline}.hw-timeline-class{font-size:10px;font-weight:600;background:#dbeafe;color:#1e40af;border-radius:var(--radius-sm);padding:1px 5px;white-space:nowrap}.hw-timeline-so{font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);opacity:.7}.sa-report-panel{max-width:1400px;margin:0 auto;padding:1.5rem 2rem 3rem}.sa-report-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem}.sa-report-header h2{margin:0;font-size:var(--text-lg);font-weight:700;color:var(--text-primary, #1a1a2e)}.sa-report-timestamp{font-size:var(--text-sm);color:var(--text-secondary)}.sa-report-summary{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.sa-summary-card{flex:1;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.25rem}.sa-summary-value{font-size:var(--text-2xl);font-weight:700;font-family:var(--font-mono, "IBM Plex Mono", monospace);color:var(--accent, #0e7c66)}.sa-summary-label{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.sa-card-sparkline{margin-top:.25rem;opacity:.7}.sa-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.sa-chart-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.35rem .9rem;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;transition:background .15s}.sa-chart-toggle:hover{background:var(--hover-bg);color:var(--ink)}.sa-cellmode-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.sa-cellmode-btn{background:var(--surface);border:none;padding:.35rem .9rem;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.sa-cellmode-btn+.sa-cellmode-btn{border-left:1px solid var(--border)}.sa-cellmode-btn:hover{background:var(--hover-bg);color:var(--ink)}.sa-cellmode-btn.active{background:var(--accent);color:var(--accent-contrast, #fff)}.sa-col-week-empty{color:var(--text-muted, var(--text-secondary));opacity:.4}.sa-sortable{cursor:pointer;user-select:none}.sa-sortable:hover{color:var(--accent)}.sa-sort-arrow{font-size:.6em;opacity:.7}.sa-chart-container{margin-bottom:1.5rem}.sa-chart-svg{width:100%;max-width:560px;height:auto}.sa-bar-games{fill:var(--accent, #0e7c66);opacity:.85}.sa-bar-players{fill:#7dd3fc;opacity:.85}.sa-axis-label{font-size:9px;fill:var(--text-secondary, #6b7280);font-family:var(--font-mono, "IBM Plex Mono", monospace)}.sa-axis-players{fill:#0ea5e9}.sa-grid-line{stroke:var(--border, #e5e7eb);stroke-width:.5}.sa-chart-legend{display:flex;gap:1rem;margin-top:.35rem;font-size:var(--text-sm);color:var(--text-secondary)}.sa-swatch-games{background:var(--accent, #0e7c66)}.sa-swatch-players{background:#7dd3fc}.sa-report-table-wrap{overflow:auto;max-height:calc(100vh - 420px);border:1px solid var(--border);border-radius:var(--radius-md)}.sa-report-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.sa-report-table th,.sa-report-table td{padding:.45rem .55rem;text-align:left;border-bottom:1px solid var(--border)}.sa-report-table th{background:var(--surface);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);white-space:nowrap;position:sticky;top:0;z-index:1}.sa-report-table tbody tr:hover{background:var(--hover-bg)}.sa-col-site{min-width:180px;white-space:nowrap;font-weight:600}.sa-client-link{margin-left:.4rem;font-weight:400}.sa-client-code{margin-left:.4rem;font-weight:400;font-size:.75rem;color:var(--text-secondary)}.sa-col-week{text-align:center;font-family:var(--font-mono, "IBM Plex Mono", monospace);min-width:62px;vertical-align:middle}.sa-col-week .sa-cell-games,.sa-col-total .sa-cell-games,.sa-col-avg .sa-cell-games{display:block;font-size:var(--text-sm);font-weight:600;line-height:1.2}.sa-col-week .sa-cell-players,.sa-col-total .sa-cell-players,.sa-col-avg .sa-cell-players{display:block;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.2}.sa-col-spark{text-align:center;width:80px}.sa-col-total,.sa-col-avg{text-align:center;font-family:var(--font-mono, "IBM Plex Mono", monospace);white-space:nowrap}.sa-sparkline{vertical-align:middle}.sa-heat-low{background:#e0f2fe}.sa-heat-med{background:#bae6fd}.sa-heat-high{background:#7dd3fc;color:#0c4a6e}.sa-report-legend{display:flex;align-items:center;gap:1rem;margin-top:.75rem;font-size:var(--text-sm);color:var(--text-secondary)}.sa-legend-item{display:flex;align-items:center;gap:.3rem}.sa-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.1)}.sa-legend-hint{font-style:italic}.sa-report-loading,.sa-report-empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.sa-report-empty h2{margin:0 0 .5rem}.sa-report-error{text-align:center;padding:2rem}.sa-report-error p{color:var(--bad);margin-bottom:1rem}.reports-panel{margin:0}.reports-tab-nav{display:flex;gap:0;border-bottom:2px solid var(--border);padding:0 1rem}.reports-tab{padding:.65rem 1.2rem;font-size:var(--text-base);font-weight:600;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color .15s,border-color .15s}.reports-tab:hover{color:var(--text-primary, #1a1a2e)}.reports-tab.active{color:var(--accent, #0e7c66);border-bottom-color:var(--accent, #0e7c66)}.reports-tab-archived{opacity:.55;font-style:italic}.reports-archived-badge{display:inline-block;font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;background:var(--warn, #b88516);color:#fff;border-radius:3px;padding:.1rem .35rem;margin-left:.4rem;vertical-align:middle;font-style:normal;font-weight:700}.reports-tab-spacer{flex:1}.reports-tab-action{padding:.45rem .8rem;font-size:var(--text-sm);color:var(--text-secondary);background:none;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;margin:.3rem 0 .3rem .4rem;transition:background .15s,color .15s}.reports-tab-action:hover{background:var(--hover-bg);color:var(--ink)}.reports-tab-action.active{background:var(--surface);color:var(--accent);border-color:var(--accent)}.reports-tab-archive-btn{color:var(--bad, #b53030);border-color:var(--bad, #b53030)}.reports-tab-archive-btn:hover{background:#fef2f2}.reports-confirm-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:100}.reports-confirm-dialog{background:var(--panel, #fff);border-radius:var(--radius-lg, 12px);padding:1.5rem 2rem;max-width:420px;box-shadow:0 8px 32px #0003}.reports-confirm-dialog p{margin:0 0 1.2rem;font-size:var(--text-base);line-height:1.5}.reports-confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.rp-report-panel{padding:.75rem 1rem 0;display:flex;flex-direction:column;height:calc(100vh - 52px);overflow:hidden}.rp-report-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.5rem}.rp-report-header h2{margin:0;font-size:var(--text-lg);font-weight:700;color:var(--text-primary, #1a1a2e)}.rp-report-actions{display:flex;align-items:center;gap:1rem}.rp-report-timestamp{font-size:var(--text-sm);color:var(--text-secondary)}.rp-csv-btn{font-size:var(--text-sm);font-weight:600;padding:.35rem .8rem;background:var(--accent, #0e7c66);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .15s}.rp-csv-btn:hover{opacity:.85}.rp-report-summary{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.rp-summary-card{flex:1;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.25rem}.rp-summary-value{font-size:var(--text-2xl);font-weight:700;font-family:var(--font-mono, "IBM Plex Mono", monospace);color:var(--accent, #0e7c66)}.rp-summary-label{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.rp-group-controls{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:var(--text-base)}.rp-group-controls label{color:var(--text-secondary);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em}.rp-group-btn{padding:.3rem .7rem;font-size:var(--text-sm);font-weight:500;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s}.rp-group-btn:hover{border-color:var(--accent, #0e7c66);color:var(--text-primary, #1a1a2e)}.rp-group-btn.active{background:var(--accent, #0e7c66);border-color:var(--accent, #0e7c66);color:#fff}.rp-gen1-filter{display:flex;align-items:center;gap:.35rem;margin-left:.75rem;padding-left:.75rem;border-left:1px solid var(--border);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;user-select:none}.rp-gen1-filter input{accent-color:var(--accent, #0e7c66)}.rp-report-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md) var(--radius-md) 0 0;overflow:auto;flex:1;min-height:0;position:relative}.rp-report-table{width:100%;border-collapse:collapse;font-size:var(--text-base);table-layout:fixed}.rp-report-table th,.rp-report-table td{padding:.5rem .65rem;text-align:left;border-bottom:1px solid var(--border)}.rp-report-table th{background:var(--surface);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);white-space:normal;word-wrap:break-word;position:sticky;top:0;z-index:10;box-shadow:0 1px 0 var(--border)}.rp-col-name,.rp-col-supplier{word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.rp-col-sku,.rp-col-cost,.rp-col-avg,.rp-col-inv,.rp-col-sos,.rp-col-month{overflow:hidden;text-overflow:ellipsis}.rp-resize-handle{position:absolute;right:0;top:0;bottom:0;width:5px;cursor:col-resize;user-select:none;z-index:11}.rp-resize-handle:hover,.rp-resize-handle.rp-resizing{background:var(--accent, #0e7c66);opacity:.4}.rp-report-table tbody tr:hover{background:var(--hover-bg)}.rp-col-sku{font-family:var(--font-mono, "IBM Plex Mono", monospace);font-weight:600;font-size:var(--text-base);white-space:nowrap}.rp-col-name{min-width:160px}.rp-col-supplier{min-width:120px}.rp-col-cost{text-align:right;font-family:var(--font-mono, "IBM Plex Mono", monospace);white-space:nowrap}.rp-col-avg{text-align:center;font-family:var(--font-mono, "IBM Plex Mono", monospace);white-space:nowrap}.rp-col-inv{text-align:center;font-family:var(--font-mono, "IBM Plex Mono", monospace);font-weight:600;white-space:nowrap}.rp-col-sos{text-align:center;font-family:var(--font-mono, "IBM Plex Mono", monospace);white-space:nowrap;color:var(--text-secondary)}.rp-col-month{text-align:center;font-family:var(--font-mono, "IBM Plex Mono", monospace);min-width:54px}.rp-country-tag{display:inline-block;font-size:var(--text-xs);font-weight:600;background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-sm);padding:0 .3rem;margin-left:.4rem;vertical-align:middle;line-height:1.5}.rp-inv-warning{background:#fef3c7;color:#92400e}.rp-inv-critical{background:#fee2e2;color:#991b1b}.rp-summary-card-alert{border-color:#f59e0b}.rp-summary-card-alert .rp-summary-value{color:#d97706}.rp-row-alert{border-left:3px solid #f59e0b}.rp-totals-row{font-weight:700;background:var(--surface)}.rp-totals-row td{border-bottom:none}.rp-report-no-data{text-align:center;padding:2rem;color:var(--text-secondary)}.rp-report-loading,.rp-report-empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.rp-report-empty h2{margin:0 0 .5rem}.rp-report-error{text-align:center;padding:2rem}.rp-report-error p{color:var(--bad);margin-bottom:1rem}.rp-report-legend{display:flex;align-items:center;gap:1rem;margin-top:.75rem;font-size:var(--text-sm);color:var(--text-secondary)}.rp-report-legend-inline{display:flex;align-items:center;gap:.5rem;margin-left:auto;font-size:var(--text-sm);color:var(--text-secondary)}.rp-legend-btn{display:flex;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:var(--text-sm);font-weight:500;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s;white-space:nowrap}.rp-legend-btn:hover{border-color:var(--accent, #0e7c66);color:var(--text-primary, #1a1a2e)}.rp-legend-btn.active{background:var(--accent, #0e7c66);border-color:var(--accent, #0e7c66);color:#fff}.rp-legend-btn.active .rp-legend-swatch{border-color:#ffffff4d}.rp-legend-clear{font-size:var(--text-sm);padding:.2rem .4rem}.rp-report-table th.rp-frozen-col,.rp-report-table td.rp-frozen-col{position:sticky;left:0;z-index:5;background:#fff;box-shadow:1px 0 0 var(--border)}.rp-report-table th.rp-frozen-col{z-index:12;background:var(--surface)}.rp-group-header td.rp-frozen-col{z-index:11;background:var(--surface)}.rp-report-table tbody tr:hover td.rp-frozen-col{background:var(--hover-bg)}.rp-totals-row td.rp-frozen-col{background:var(--surface)}.rp-row-alert td.rp-frozen-col{background:#fff}.rp-legend-item{display:flex;align-items:center;gap:.3rem}.rp-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.1)}.rp-group-header{cursor:pointer;user-select:none}.rp-group-header td{background:var(--surface);font-weight:700;font-size:var(--text-base);padding:.55rem .65rem;border-bottom:1px solid var(--border);border-top:2px solid var(--border);position:sticky;top:30px;z-index:9}.rp-group-header:first-child td{border-top:none}.rp-group-header:hover td{background:var(--hover-bg, #e8eeeb)}.rp-group-toggle{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--text-secondary);margin-right:.5rem;vertical-align:middle;transition:transform .15s}.rp-group-toggle.collapsed{transform:rotate(-90deg)}.rp-group-label{color:var(--text-primary, #1a1a2e)}.rp-group-summary{margin-left:.75rem;font-weight:500;font-size:var(--text-sm);color:var(--text-secondary)}.detail-extra-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e6ea}.detail-extra-section h4{margin:0 0 .4rem;font-size:var(--text-base);font-weight:700;color:#2d3548}.detail-extra-grid{display:grid;gap:.35rem}.detail-extra-field{display:flex;gap:.6rem;align-items:baseline;font-size:var(--text-base)}.detail-extra-label{color:var(--text-secondary);min-width:130px;flex-shrink:0;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.02em}.detail-extra-value-mono{font-family:var(--mono);font-size:var(--text-sm)}.detail-extra-tags{display:flex;flex-wrap:wrap;gap:.25rem}.detail-extra-tag{display:inline-block;background:#eef6f3;color:#0e7c66;font-size:var(--text-sm);font-weight:500;padding:.1rem .45rem;border-radius:var(--radius-sm)}.detail-extra-text-block{background:#f8fafc;border:1px solid #e5e7eb;border-radius:var(--radius-md);padding:.5rem .65rem;white-space:pre-wrap;font-size:var(--text-sm);color:#374151;max-height:120px;overflow-y:auto}.detail-sub-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);margin-top:.35rem}.detail-sub-table th,.detail-sub-table td{padding:.35rem .45rem;border-bottom:1px solid #edf1f8;text-align:left}.detail-sub-table th{background:var(--surface);color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.detail-sub-table td.num{text-align:right;font-family:var(--mono)}.detail-sub-table-empty{color:var(--text-secondary);font-size:var(--text-sm);padding:.5rem 0}.hidden-fields-disclosure{margin-top:.75rem;border:1px solid #e5e7eb;border-radius:var(--radius-md);background:#fafbfc}.hidden-fields-summary{cursor:pointer;padding:.5rem .7rem;font-size:var(--text-sm);color:var(--text-secondary);font-weight:500;user-select:none}.hidden-fields-summary:hover{color:#374151}.hidden-fields-grid{padding:.4rem .7rem .6rem;display:grid;gap:.25rem}.hidden-fields-grid .detail-extra-field{opacity:.6}.shipping-code-tags{display:inline-flex;flex-wrap:wrap;gap:.2rem;margin-left:.3rem}.shipping-code-tag{display:inline-block;background:#e0f2fe;color:#0c4a6e;font-size:var(--text-xs);font-weight:500;padding:.06rem .35rem;border-radius:var(--radius-sm);font-family:var(--mono)}.order-observations-row td{padding:0 .52rem .5rem;border-top:none;background:#f8fafc}.order-observations-text{white-space:pre-wrap;font-size:var(--text-sm);color:#374151;max-height:100px;overflow-y:auto}.detail-section-loading{color:var(--text-secondary);font-size:var(--text-sm);padding:.5rem 0}.orders-tab-toggle{display:flex;gap:0;border:1px solid #d0d7e6;border-radius:var(--radius-md);overflow:hidden}.orders-tab-toggle button{border:none;background:#f8fafc;color:var(--text-secondary);padding:.5rem 1.2rem;font-size:var(--text-md);font-weight:600;cursor:pointer;transition:background .15s,color .15s}.orders-tab-toggle button+button{border-left:1px solid #d0d7e6}.orders-tab-toggle button:hover{background:#eef2f7}.orders-tab-toggle button.active{background:var(--accent);color:#fff}.orders-count{color:var(--text-secondary);font-size:var(--text-sm)}.pay-badge{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.pay-paid{background:var(--good-bg-soft);color:var(--good-fg-soft)}.pay-partial{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.pay-unpaid{background:var(--status-neutral-bg);color:var(--status-neutral-fg)}.pay-overdue{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.pay-none{color:var(--text-secondary);background:none}.pay-view{padding:.5rem 0}.pay-summary{display:flex;gap:1.5rem;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:.75rem}.pay-warn{color:var(--warn-fg-soft);font-weight:500}.pay-filters{display:flex;gap:.5rem;margin-bottom:.75rem}.pay-search{flex:1;max-width:300px;padding:.35rem .6rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm)}.pay-status-filter{padding:.35rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm);background:#fff}.pay-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.pay-table th{text-align:left;font-weight:500;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);padding:.5rem;border-bottom:2px solid var(--border)}.pay-table td{padding:.5rem;border-bottom:1px solid var(--border);vertical-align:middle}.pay-table tr:hover td{background:var(--hover-bg)}.pay-empty{color:var(--text-secondary);text-align:center;padding:2rem}.pay-items{font-size:var(--text-xs);color:var(--text-secondary);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pay-linked{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono, monospace);font-size:var(--text-xs);background:var(--good-bg-soft);color:var(--good-fg-soft);padding:.15rem .5rem;border-radius:var(--radius-pill)}.pay-unlink{background:none;border:none;cursor:pointer;font-size:var(--text-xs);color:var(--text-secondary);padding:0 .15rem;line-height:1}.pay-unlink:hover{color:var(--bad)}.pay-link-form{display:flex;gap:.3rem;align-items:center;flex-wrap:wrap}.pay-link-search{width:100px;padding:.2rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-xs)}.pay-link-select{max-width:200px;padding:.2rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-xs)}.pay-link-btn{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:.2rem .5rem;font-size:var(--text-xs);cursor:pointer}.pay-link-btn:disabled{opacity:.5;cursor:default}.pay-link-cancel{background:none;border:1px solid var(--stroke);border-radius:var(--radius-sm);padding:.2rem .4rem;font-size:var(--text-xs);cursor:pointer;color:var(--text-secondary)}.pay-link-start{background:none;border:1px dashed var(--stroke);border-radius:var(--radius-sm);padding:.2rem .5rem;font-size:var(--text-xs);color:var(--accent);cursor:pointer}.pay-link-start:hover{background:var(--hover-bg)}.pay-link-cell{position:relative;min-width:180px}.pay-link-cell .td-link-dropdown{position:relative}.pay-link-cell .td-link-list{position:absolute;left:0;right:0;min-width:280px}.pay-link-cell .td-order-check-item{display:flex;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:.4rem .6rem}.pay-link-cell .td-order-check-item:hover{background:var(--hover-bg)}.pay-link-list-wide{min-width:380px!important;max-height:280px!important}.pay-best-match{background:var(--good-bg-soft);border-left:3px solid var(--good-fg-soft)}.pay-expand-btn{background:none;border:none;cursor:pointer;font-size:.7rem;color:var(--text-secondary);padding:.2rem;flex-shrink:0;width:1.2rem}.pay-expand-btn:hover{color:var(--ink)}.pay-inline-detail{padding:.4rem .6rem .5rem 2rem;background:var(--bg-alt);border-bottom:1px solid var(--border);font-size:var(--text-xs)}.pay-inline-detail-meta{color:var(--text-secondary);margin-bottom:.3rem}.pay-inline-detail-items{list-style:none;padding:0;margin:0}.pay-inline-detail-items li{padding:.1rem 0;color:var(--ink)}.pay-match-tag{display:inline-block;margin-left:.4rem;padding:.05rem .35rem;border-radius:var(--radius-pill);background:var(--good-fg-soft);color:#fff;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;vertical-align:middle}.supplier-detail-collapse{margin-top:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs)}.supplier-detail-collapse summary{padding:.4rem .6rem;cursor:pointer;color:var(--text-secondary);font-weight:500;user-select:none}.supplier-detail-collapse summary:hover{background:var(--hover-bg)}.supplier-detail-collapse[open] summary{border-bottom:1px solid var(--border)}.supplier-detail-collapse .product-detail-field{padding:.25rem .6rem}.supplier-order-link{color:var(--accent);text-decoration:none;font-size:var(--text-xs);font-weight:500}.supplier-order-link:hover{text-decoration:underline}.supplier-add-link-form{margin-top:.5rem;padding:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}.supplier-add-link-row{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.4rem}.supplier-add-input{padding:.35rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-xs);min-width:140px}.supplier-add-input-wide{flex:1;min-width:220px}.supplier-add-input-price{width:80px;min-width:80px;flex:0}.supplier-add-detect{font-size:.65rem;color:var(--good-fg-soft);margin-bottom:.3rem}.supplier-add-error{font-size:var(--text-xs);color:var(--bad);margin-bottom:.3rem}.supplier-add-actions{display:flex;gap:.4rem}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin-bottom:1rem}.tpl-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;cursor:pointer;transition:border-color .15s}.tpl-card:hover{border-color:var(--accent)}.tpl-selected{border-color:var(--accent);box-shadow:0 0 0 2px #0e7c6626}.tpl-coming-soon{opacity:.6;cursor:default}.tpl-coming-soon:hover{border-color:var(--border)}.tpl-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.4rem}.tpl-card-title{margin:0;font-size:var(--text-sm);font-weight:600}.tpl-badge-active{font-size:.6rem;padding:.15rem .4rem;border-radius:999px;background:var(--good-bg-soft);color:var(--good-fg-soft);font-weight:600;text-transform:uppercase}.tpl-badge-soon{font-size:.6rem;padding:.15rem .4rem;border-radius:999px;background:var(--warn-bg-soft);color:var(--warn-fg-soft);font-weight:600;text-transform:uppercase}.tpl-card-desc{margin:0;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5}.tpl-card-contact{margin:.4rem 0 0;font-size:var(--text-xs);color:var(--warn-fg-soft);font-weight:500}.tpl-card-meta{margin-top:.5rem;font-size:.65rem;color:var(--text-secondary)}.tpl-preview{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem 1.25rem}.tpl-preview-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.tpl-preview-controls{font-size:var(--text-xs);color:var(--text-secondary);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.tpl-inline-check{display:inline-flex;align-items:center;gap:.25rem}.tpl-core-note{margin-bottom:.7rem;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-size:var(--text-sm)}.create-so-create-customer{float:right;font-size:var(--text-xs);font-weight:500;color:var(--accent);text-decoration:none}.create-so-create-customer:hover{text-decoration:underline}.tpl-unified-table{font-size:var(--text-xs)}.tpl-unified-table td{vertical-align:middle}.tpl-cat-first td{border-top:2px solid var(--border)}.tpl-rule-input{padding:.25rem .4rem;border:1px solid transparent;border-radius:var(--radius-sm);font-size:var(--text-xs);background:transparent;width:100%}.tpl-rule-input:hover{border-color:var(--border);background:#fff}.tpl-rule-input:focus{border-color:var(--accent);background:#fff;outline:none}.tpl-cat-input{width:90px}.tpl-code-input{width:120px;font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--text-secondary)}.tpl-mult-input{width:55px;text-align:right}.tpl-product-name{color:var(--ink);font-size:var(--text-xs)}.tpl-qty-cell{font-weight:600;color:var(--accent)}.tpl-remove-btn{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:.85rem;padding:0 .2rem}.tpl-remove-btn:hover{color:var(--bad)}.tpl-actions{display:flex;gap:.5rem;align-items:center;margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--border)}.tpl-actions>.tpl-remove-btn{border:1px solid var(--border);border-radius:var(--radius-sm);padding:.3rem .65rem;font-size:var(--text-xs)}.tpl-secondary-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--text-primary);cursor:pointer;font-size:var(--text-xs);font-weight:600;padding:.3rem .65rem}.tpl-secondary-btn:hover:not(:disabled){background:var(--hover-bg)}.tpl-secondary-btn:disabled{cursor:default;opacity:.65}.tpl-save-ok{font-size:var(--text-xs);color:var(--good-fg-soft)}.tpl-save-err{font-size:var(--text-xs);color:var(--bad)}.tpl-invalid{color:var(--bad)!important;font-style:italic}.tpl-invalid-input{border-color:var(--bad)!important}.tpl-row-actions{white-space:nowrap;display:flex;gap:.1rem}.tpl-action-btn{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:.55rem;padding:.1rem .15rem;border-radius:2px}.tpl-action-btn:hover:not(:disabled){background:var(--hover-bg);color:var(--ink)}.tpl-action-btn:disabled{opacity:.2;cursor:default}.tpl-totals{display:flex;gap:1.5rem;padding:.5rem 0;font-size:var(--text-xs);color:var(--text-secondary);font-weight:500}.tpl-name-input{font-size:var(--text-md);font-weight:600;border:none;background:transparent;width:100%;padding:0;border-bottom:1px solid transparent}.tpl-name-input:hover{border-bottom-color:var(--border)}.tpl-name-input:focus{border-bottom-color:var(--accent);outline:none}.tpl-desc-input{font-size:var(--text-xs);color:var(--text-secondary);border:none;background:transparent;width:100%;padding:0;margin-top:.15rem;border-bottom:1px solid transparent}.tpl-desc-input:hover{border-bottom-color:var(--border)}.tpl-desc-input:focus{border-bottom-color:var(--accent);outline:none;color:var(--ink)}.tpl-kit-hint{font-size:.6rem;color:var(--text-secondary)}.upgrade-status-badges{display:flex;gap:.25rem;flex-wrap:wrap}.upgrade-badge{font-size:.55rem;padding:.1rem .35rem;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.upgrade-badge-ok{background:var(--good-bg-soft);color:var(--good-fg-soft)}.upgrade-badge-partial{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.upgrade-badge-missing{background:var(--status-neutral-bg);color:var(--status-neutral-fg)}.upgrade-so-link{text-decoration:none;font-family:var(--font-mono, monospace);cursor:pointer}.upgrade-so-link:hover{text-decoration:underline}.upgrade-badge-schedule{background:var(--accent);color:#fff;border:none;cursor:pointer}.upgrade-badge-schedule:hover{opacity:.85}.upgrade-linker{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.35rem;position:relative}.upgrade-linker-actions{display:flex;gap:.25rem;flex-wrap:wrap}.upgrade-link-btn{font-size:.65rem;padding:.2rem .5rem;border-radius:var(--radius-sm, 4px);border:1px dashed var(--border);background:transparent;color:var(--text-secondary);cursor:pointer}.upgrade-link-btn:hover:not(:disabled){border-style:solid;border-color:var(--accent);color:var(--accent)}.upgrade-link-btn:disabled{opacity:.5;cursor:wait}.upgrade-link-dropdown{position:static;width:100%;margin-top:.25rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm, 4px);box-shadow:0 2px 6px #00000014;padding:.35rem}.upgrade-link-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;background:transparent;border:none;width:100%;text-align:left;cursor:pointer;border-radius:var(--radius-sm, 4px)}.upgrade-link-item:hover:not(:disabled){background:var(--hover-bg)}.upgrade-link-item:disabled{opacity:.5;cursor:wait}.upgrade-so-chip{font-family:var(--font-mono, monospace);font-size:.65rem}.upgrade-date-chip{font-size:.65rem;padding:.2rem .5rem;border-radius:999px;border:none;cursor:pointer;font-weight:600}.upgrade-date-scheduled{background:var(--good-bg-soft);color:var(--good-fg-soft)}.upgrade-date-scheduled:hover{opacity:.85}.upgrade-date-overdue{background:var(--danger-bg-soft, var(--warn-bg-soft));color:var(--danger-fg-soft, var(--warn-fg-soft))}.upgrade-date-overdue:hover{opacity:.85}.upgrade-date-missing{background:transparent;color:var(--text-secondary);border:1px dashed var(--border)}.upgrade-date-missing:hover{border-style:solid;color:var(--accent);border-color:var(--accent)}.upgrade-date-input{font-size:.7rem;padding:.15rem .35rem;border:1px solid var(--accent);border-radius:var(--radius-sm, 4px);background:var(--bg);color:var(--ink)}.upgrade-date-mismatch{font-size:.6rem;padding:.15rem .4rem;border-radius:999px;border:1px solid var(--warn-fg-soft);background:var(--warn-bg-soft);color:var(--warn-fg-soft);cursor:pointer;font-weight:600}.upgrade-date-mismatch:hover:not(:disabled){opacity:.85}.upgrade-date-mismatch:disabled{opacity:.5;cursor:wait}.ft-panel{padding:1rem 1.25rem 2rem}.ft-loading,.ft-error{color:var(--muted);padding:2rem;text-align:center}.ft-error{color:var(--danger)}.ft-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1rem}.ft-header h2{margin:0;font-size:1.25rem}.ft-subtitle{color:var(--muted);font-size:.8rem}.ft-refresh{margin-left:auto;font-size:.7rem;padding:.3rem .7rem;border:1px solid var(--border);background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm, 4px);cursor:pointer}.ft-refresh:hover{border-color:var(--accent);color:var(--accent)}.ft-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem}@media(max-width:900px){.ft-cards{grid-template-columns:repeat(2,1fr)}}.ft-card{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.9rem 1rem;text-align:left;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-md, 6px);background:var(--surface);color:var(--ink);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.ft-card:hover{transform:translateY(-1px);box-shadow:0 2px 10px #0000000f}.ft-card-active{border-color:var(--accent);box-shadow:0 0 0 2px #15803d14}.ft-card-count{font-size:1.75rem;font-weight:700;line-height:1}.ft-card-pct{font-size:.7rem;color:var(--muted);margin-top:.15rem}.ft-card-label{font-size:.85rem;font-weight:600;margin-top:.4rem}.ft-card-sub{font-size:.7rem;color:var(--muted)}.ft-card-live .ft-card-count{color:var(--good-fg-soft, #166534)}.ft-card-pipeline .ft-card-count{color:#0369a1}.ft-card-queue .ft-card-count{color:var(--warn-fg-soft, #9a3412)}.ft-card-unknown .ft-card-count{color:var(--muted)}.ft-bar{display:flex;height:22px;border-radius:11px;overflow:hidden;border:1px solid var(--border);background:var(--surface);margin-bottom:1.25rem}.ft-bar-segment{display:flex;align-items:center;justify-content:center;color:#fff;font-size:.65rem;font-weight:600;min-width:0}.ft-bar-segment.ft-card-live{background:#166534}.ft-bar-segment.ft-card-pipeline{background:#0369a1}.ft-bar-segment.ft-card-queue{background:#9a3412}.ft-bar-segment.ft-card-unknown{background:#6b7280}.ft-drilldown{border:1px solid var(--border);border-radius:var(--radius-md, 6px);padding:.85rem 1rem;background:var(--surface)}.ft-drilldown h3{margin:0 0 .6rem;font-size:.95rem}.ft-drilldown-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.3rem 1rem}@media(max-width:700px){.ft-drilldown-list{grid-template-columns:1fr}}.ft-drilldown-list li{display:flex;gap:.6rem;font-size:.8rem}.ft-drilldown-code{font-family:var(--font-mono, monospace);color:var(--muted);min-width:7.5rem}.ft-drilldown-name{color:var(--ink)}.ft-drilldown-empty{color:var(--muted)}.ft-ss4-orphans{margin-top:1.5rem;padding:1rem 1.25rem;border:1px dashed var(--warn-fg-soft);border-radius:var(--radius-md, 6px);background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.ft-ss4-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.ft-ss4-header h3{margin:0;font-size:.95rem;color:var(--warn-fg-soft)}.ft-ss4-icon{font-size:1.1rem}.ft-ss4-count{margin-left:auto;font-weight:700;font-size:1.1rem}.ft-ss4-desc{font-size:.8rem;margin:0 0 .6rem;line-height:1.45}.ft-ss4-desc strong{color:var(--ink)}.ft-ss4-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.25rem 1rem;font-size:.78rem}@media(max-width:700px){.ft-ss4-list{grid-template-columns:1fr}}.ft-ss4-list li{display:flex;justify-content:space-between;gap:.5rem;padding:.15rem 0;border-bottom:1px dotted rgba(154,52,18,.2)}.ft-ss4-deal-name{color:var(--ink);font-weight:500}.ft-ss4-deal-id{color:var(--muted);font-family:var(--font-mono, monospace);font-size:.7rem}.ft-ss4-more{color:var(--muted);border:none!important;font-style:italic}.ft-ss4-summary{font-size:.72rem;color:var(--muted);margin-top:.6rem;padding-top:.5rem;border-top:1px solid rgba(154,52,18,.2)}.upgrade-partial-badge{font-size:.55rem;padding:.12rem .4rem;border-radius:999px;background:var(--warn-bg-soft);color:var(--warn-fg-soft);font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--warn-fg-soft)}.create-so-template{background:var(--bg-alt);border:1px dashed var(--border);border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:.75rem}.create-so-hint{font-size:var(--text-xs);color:var(--text-secondary);margin:.4rem 0 0}.so-table-header{display:flex;align-items:baseline;gap:.75rem}.so-table-header h2{margin-bottom:0}.so-filter-bar{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem}.so-filter-chip{display:inline-flex;align-items:center;gap:.25rem;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;letter-spacing:.2px;cursor:pointer;border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-secondary);transition:opacity .1s;opacity:.5}.so-filter-chip.active{opacity:1}.so-filter-chip.status-open.active,.so-filter-chip.status-shipped.active{background:#dbeafe;color:#1e3a8a;border-color:#bfdbfe}.so-filter-chip.status-delivered.active{background:#d1e7dd;color:#0f5132;border-color:#badbcc}.so-filter-chip.status-overdue.active{background:#fef2f2;color:#b91c1c;border-color:#fecdd3}.so-filter-chip.status-closed.active{background:#e5e7eb;color:#374151;border-color:#d1d5db}.so-filter-chip.status-archived.active{background:#f3f4f6;color:#6b7280;border-color:#e5e7eb}.so-filter-count{font-weight:400;opacity:.7}.so-status-detail{display:block;font-size:var(--text-xs);color:var(--text-secondary);font-weight:400;margin-top:1px}.po-records-toggle{border:none;background:none;color:var(--accent);font-weight:600;font-size:var(--text-md);cursor:pointer;padding:.3rem 0}.po-records-toggle:hover{text-decoration:underline}.shipping-code-wrapper{position:relative;display:inline-block}.shipping-code-tag.clickable{cursor:pointer;border:1px solid transparent;transition:border-color .15s}.shipping-code-tag.clickable:hover{border-color:#7dd3fc}.shipping-popover{position:absolute;top:100%;left:0;z-index:150;margin-top:4px;background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.5rem .75rem;min-width:200px;white-space:nowrap}.shipping-popover-row{display:flex;justify-content:space-between;gap:1rem;padding:.15rem 0;font-size:var(--text-sm)}.shipping-popover-label{color:var(--text-secondary);font-weight:500}.shipping-popover-loading{font-size:var(--text-sm);color:var(--text-secondary)}.warehouse-section{margin-top:1.5rem;border-top:1px solid #e5eaf2;padding-top:1rem}.warehouse-toggle{border:none;background:none;color:var(--accent);font-weight:600;font-size:var(--text-md);cursor:pointer;padding:.3rem 0}.warehouse-toggle:hover{text-decoration:underline}.gs-panel{max-width:1400px;margin:0 auto;padding:1.5rem 2rem}.gs-header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.25rem}.gs-header h2{margin:0;font-size:var(--text-xl)}.gs-timestamp{font-size:var(--text-sm);color:var(--text-secondary)}.gs-summary{display:flex;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.gs-summary-card{flex:1;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem 1rem;display:flex;flex-direction:column}.gs-summary-value{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary)}.gs-summary-label{font-size:var(--text-sm);color:var(--text-secondary)}.gs-search-row{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.gs-search-input{max-width:280px;padding:.4rem .65rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--surface);color:var(--text-primary)}.gs-result-count{font-size:var(--text-sm);color:var(--text-secondary)}.gs-table-wrap{overflow-x:auto}.gs-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.gs-table th,.gs-table td{padding:.5rem .65rem;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.gs-th-sort{cursor:pointer;user-select:none}.gs-th-sort:hover,.gs-th-active{color:var(--accent)}.gs-col-num{text-align:right;font-variant-numeric:tabular-nums}.gs-col-location{display:flex;flex-direction:column;gap:.1rem}.gs-fec-name{font-weight:500}.gs-fec-code{font-size:.75rem;color:var(--text-secondary)}.gs-client-link{font-size:.75rem;color:var(--link, #2563eb);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;font-family:inherit}.gs-client-link:hover{text-decoration-color:var(--link, #2563eb);color:var(--link-hover, #1d4ed8)}.gs-row-clickable{cursor:pointer}.gs-row-clickable:hover td{background:var(--hover)}.gs-util-badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600}.gs-util-high{background:#dcfce7;color:#166534}.gs-util-med{background:#fef9c3;color:#854d0e}.gs-util-low{background:#fee2e2;color:#991b1b}.gs-back-btn{background:none;border:none;color:var(--accent);font-size:var(--text-sm);cursor:pointer;padding:.25rem 0;margin-bottom:.75rem}.gs-back-btn:hover{text-decoration:underline}.gs-heatmap-header{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.gs-heatmap-header h3{margin:0;font-size:var(--text-lg)}.gs-client-code{font-size:var(--text-sm);color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);padding:.1rem .45rem;border-radius:var(--radius-sm)}.gs-heatmap-meta{font-size:var(--text-sm);color:var(--text-secondary)}.gs-heatmap-grid-wrap{overflow-x:auto;margin-bottom:.75rem}.gs-heatmap-grid{border-collapse:collapse;font-size:var(--text-sm)}.gs-heatmap-grid th,.gs-heatmap-grid td{padding:.35rem .5rem;text-align:center;border:1px solid var(--border);min-width:42px}.gs-hm-day-col{width:48px}.gs-hm-hour-col{font-weight:600;font-size:.7rem;color:var(--text-secondary)}.gs-hm-day-label{font-weight:600;text-align:left;background:var(--surface)}.gs-hm-cell{font-variant-numeric:tabular-nums;font-size:.8rem}.gs-heat-empty{background:var(--surface);color:var(--text-secondary)}.gs-heat-low{background:#dbeafe;color:#1e40af}.gs-heat-med{background:#93c5fd;color:#1e3a5f}.gs-heat-high{background:#3b82f6;color:#fff}.gs-heatmap-legend{display:flex;align-items:center;gap:.75rem;font-size:var(--text-sm);color:var(--text-secondary)}.gs-legend-label{font-weight:500}.gs-legend-item{display:flex;align-items:center;gap:.25rem}.gs-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.1)}.gs-loading,.gs-empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.gs-empty h2{margin:0 0 .5rem}.gs-error{text-align:center;padding:2rem}.gs-error p{color:var(--bad);margin-bottom:1rem}.online-store-orders-view{padding:1rem 0}.online-store-orders-view>table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.online-store-filters{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:1rem}.online-store-filters button{border:1px solid var(--stroke);background:var(--panel);color:var(--text-secondary);padding:.3rem .75rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background .15s,color .15s}.online-store-filters button:hover{background:var(--hover-bg)}.online-store-filters button.active{background:var(--accent);color:var(--panel);border-color:var(--accent)}.online-store-filter-count{margin-left:.3rem;opacity:.7}.online-store-refresh{margin-left:auto}.online-store-status{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;text-transform:uppercase}.online-store-status-matched{background:color-mix(in srgb,var(--good) 15%,var(--panel));color:var(--good)}.online-store-status-unmatched{background:color-mix(in srgb,var(--warn) 15%,var(--panel));color:var(--warn)}.online-store-status-resolved{background:color-mix(in srgb,var(--accent) 15%,var(--panel));color:var(--accent)}.online-store-status-failed{background:color-mix(in srgb,var(--bad) 15%,var(--panel));color:var(--bad)}.online-store-status-pending{background:color-mix(in srgb,var(--muted) 15%,var(--panel));color:var(--muted)}.online-store-status-cell{display:inline-flex;align-items:center;gap:.35rem}.online-store-audit{font-size:.7rem;line-height:1;cursor:help}.online-store-audit-ok{color:var(--good)}.online-store-audit-flagged{color:var(--warn)}.online-store-audit-none{color:var(--muted);opacity:.5}.resolve-order-details{background:var(--bg);border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.75rem 1rem;font-size:var(--text-sm)}.resolve-order-details ul{margin:.25rem 0 .5rem 1.25rem;padding:0}.btn-small{border:1px solid var(--stroke);background:var(--panel);color:var(--text-primary);padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;cursor:pointer}.btn-small:hover{background:var(--hover-bg)}.btn-link{background:none;border:none;color:var(--accent);font-weight:600;font-size:inherit;cursor:pointer;padding:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.btn-link:hover{color:color-mix(in srgb,var(--accent) 80%,var(--ink))}.online-store-orders-view .clickable-row td{cursor:pointer}.online-store-orders-view .clickable-row:hover td{background:var(--hover-bg)}.online-store-filters{align-items:center}.online-store-hide-internal{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);cursor:pointer;padding:.3rem .6rem;border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--panel)}.online-store-hide-internal input[type=checkbox]{margin:0;accent-color:var(--accent);cursor:pointer}.online-store-toolbar-spacer{flex:1 1 auto}.online-store-col-picker{position:relative}.online-store-col-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:20;min-width:220px;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000014;padding:.35rem;display:flex;flex-direction:column;gap:.1rem}.online-store-col-menu-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer}.online-store-col-menu-item:hover{background:var(--hover-bg)}.online-store-col-menu-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer;margin:0}.online-store-col-menu-reset{margin-top:.25rem;padding:.4rem .5rem;background:none;border:none;border-top:1px solid var(--stroke);color:var(--accent);font-size:var(--text-xs);font-weight:600;text-align:left;cursor:pointer;border-radius:0}.online-store-col-menu-reset:hover{color:color-mix(in srgb,var(--accent) 80%,var(--ink))}.online-store-orders-view .online-store-cell-right{text-align:right;font-variant-numeric:tabular-nums}.online-store-orders-view .online-store-cell-actions{text-align:right;white-space:nowrap}.online-store-fec-customer{display:flex;flex-direction:column;gap:.1rem;line-height:1.25}.online-store-fec-line{font-weight:600;color:var(--text-primary);display:inline-flex;align-items:center;gap:.4rem}.online-store-customer-line{font-size:var(--text-xs);color:var(--text-secondary)}.online-store-internal-tag{display:inline-block;padding:0 .4rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;background:color-mix(in srgb,var(--muted) 15%,var(--panel));color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.online-store-flow-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.online-store-flow-ok{background:color-mix(in srgb,var(--good) 15%,var(--panel));color:var(--good)}.online-store-flow-no{background:color-mix(in srgb,var(--warn) 12%,var(--panel));color:var(--warn)}.online-store-ops-status,.online-store-priority{display:inline-block;padding:.1rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;text-transform:capitalize;letter-spacing:.02em}.online-store-ops-new{background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--accent)}.online-store-ops-in_progress{background:color-mix(in srgb,var(--warn) 15%,var(--panel));color:var(--warn)}.online-store-ops-shipped{background:color-mix(in srgb,var(--good) 15%,var(--panel));color:var(--good)}.online-store-priority-high{background:color-mix(in srgb,var(--bad) 15%,var(--panel));color:var(--bad)}.online-store-priority-medium{background:color-mix(in srgb,var(--muted) 15%,var(--panel));color:var(--muted)}.online-store-priority-low{background:color-mix(in srgb,var(--accent) 10%,var(--panel));color:var(--text-secondary)}.online-store-shipto{display:flex;flex-direction:column;gap:.1rem;line-height:1.3;min-width:14ch}.online-store-shipto-line1{color:var(--text-primary)}.online-store-shipto-line2{color:var(--text-secondary);font-size:var(--text-xs)}.so-receipt-table tfoot td{border-top:2px solid var(--stroke);font-weight:600;background:color-mix(in srgb,var(--accent) 4%,var(--panel))}.so-receipt-total-label{text-align:right;text-transform:uppercase;letter-spacing:.04em;font-size:var(--text-xs);color:var(--text-secondary)}.so-receipt-grand-total{font-variant-numeric:tabular-nums;color:var(--text-primary)}.qb-invoice-section{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--stroke)}.qb-invoice-section-title{margin:0 0 .35rem;font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.qb-invoice-hint{font-size:var(--text-xs);color:var(--text-secondary);margin:.2rem 0}.qb-invoice-paid{display:inline-block;padding:.35rem .6rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--good) 12%,var(--panel));color:var(--good);font-weight:600;font-size:var(--text-sm);animation:qb-paid-fade-in .4s ease-out}@keyframes qb-paid-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;margin-right:.5rem;vertical-align:-2px;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.create-so-submit.is-busy{cursor:progress;opacity:.9}.qb-invoice-picker{margin-top:.5rem;display:flex;flex-direction:column;gap:.25rem}.qb-invoice-picker-item{display:flex;align-items:flex-start;gap:.6rem;padding:.6rem .75rem;border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--panel);font-size:var(--text-sm);cursor:pointer;transition:border-color .15s,background .15s}.qb-invoice-picker-item:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--stroke))}.qb-invoice-picker-item.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.qb-invoice-picker-item input[type=radio]{margin-top:.2rem;accent-color:var(--accent)}.qb-invoice-picker-meta{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.qb-invoice-picker-name{font-weight:600;color:var(--text-primary);display:inline-flex;align-items:center;gap:.4rem}.qb-invoice-picker-inactive{display:inline-block;padding:0 .4rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bad) 14%,var(--panel));color:var(--bad);font-size:var(--text-xs);font-weight:600;text-transform:uppercase}.qb-invoice-picker-sub,.qb-invoice-picker-history{font-size:var(--text-xs);color:var(--text-secondary)}.qb-invoice-picker-sub code{font-size:var(--text-xs)}.qb-invoice-picker-no-history{font-style:italic}.qb-invoice-chip{display:inline-block;padding:.1rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.qb-invoice-chip-ok{background:color-mix(in srgb,var(--good) 14%,var(--panel));color:var(--good)}.qb-invoice-chip-missing{background:color-mix(in srgb,var(--warn) 14%,var(--panel));color:var(--warn)}.product-photo{display:inline-block;background:var(--bg);border-radius:var(--radius-sm);overflow:hidden;line-height:0;flex-shrink:0}.product-photo img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}.product-photo-thumb{width:56px;height:56px}.product-photo-medium{width:240px;height:240px}.product-photo-original{width:100%;height:auto}.product-photo-row{width:36px;height:36px}.bom-photo-cell{width:44px;padding:.2rem .35rem;position:relative;vertical-align:middle}.bom-photo-th{user-select:none}.bom-photo-resize-handle{position:absolute;top:0;right:-3px;bottom:0;width:8px;cursor:col-resize;z-index:2}.bom-photo-resize-handle:hover,.bom-photo-resize-handle:active{background:color-mix(in srgb,var(--accent) 30%,transparent)}.ob-product-cell-wrap{display:flex;align-items:center;gap:.4rem;min-width:0}.ob-product-cell-wrap>.ob-product-cell-photo{flex-shrink:0}.ob-product-cell-wrap>:last-child{flex:1;min-width:0}.inventory-grid-photo{margin:0 .25rem 0 .1rem;vertical-align:middle}.po-line-items-inline{display:flex;flex-wrap:wrap;gap:.3rem}.po-line-item-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .4rem .1rem .15rem;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap}.online-store-products-cell{display:flex;flex-wrap:wrap;gap:.25rem;max-width:320px}.online-store-products-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .35rem .1rem .15rem;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap}.rp-sku-cell{display:flex;align-items:center;gap:.4rem}.product-detail-photo-wrap{display:flex;justify-content:center;padding:.75rem 0}.create-so-dropdown-with-photos li{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem}.product-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-secondary);font-size:var(--text-sm);border:1px dashed var(--stroke);background:var(--panel)}.product-photo-kit-wrap{position:relative;display:inline-block;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden;cursor:zoom-in}.product-photo-kit-overlay{position:absolute;top:2px;left:2px;z-index:5;background:color-mix(in srgb,var(--warn) 92%,transparent);color:#fff;padding:1px 5px;border-radius:3px;font-size:.58rem;font-weight:700;letter-spacing:.04em;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.18);white-space:nowrap}.product-photo-kit-wrap[style*="240px"] .product-photo-kit-overlay,.product-photo-kit-wrap[style*="200px"] .product-photo-kit-overlay,.product-photo-kit-wrap[style*="180px"] .product-photo-kit-overlay,.product-photo-kit-wrap[style*="140px"] .product-photo-kit-overlay{font-size:.7rem;padding:2px 7px;top:5px;left:5px}.product-photo-kit-badge-only{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;overflow:hidden}.product-photo-kit-badge-only-lbl{font-size:.55rem;font-weight:700;letter-spacing:.06em;padding:0 4px;border-radius:3px;background:color-mix(in srgb,var(--warn) 18%,var(--panel));color:var(--warn);white-space:nowrap}.product-photo-kit-badge-only-count{font-size:.55rem;color:var(--text-secondary);white-space:nowrap;line-height:1}.product-photo-kit-badge-only[style*="240px"] .product-photo-kit-badge-only-lbl,.product-photo-kit-badge-only[style*="200px"] .product-photo-kit-badge-only-lbl,.product-photo-kit-badge-only[style*="180px"] .product-photo-kit-badge-only-lbl,.product-photo-kit-badge-only[style*="140px"] .product-photo-kit-badge-only-lbl{font-size:.8rem;padding:2px 8px}.product-photo-kit-badge-only[style*="240px"] .product-photo-kit-badge-only-count,.product-photo-kit-badge-only[style*="200px"] .product-photo-kit-badge-only-count,.product-photo-kit-badge-only[style*="180px"] .product-photo-kit-badge-only-count,.product-photo-kit-badge-only[style*="140px"] .product-photo-kit-badge-only-count{font-size:.75rem;margin-top:.3rem}.product-photo-kit-collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:1px;background:var(--stroke);border-radius:var(--radius-sm);overflow:hidden;cursor:zoom-in;flex-shrink:0}.product-photo-kit-collage-cell{background:#fff;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.product-photo-kit-collage-empty{width:100%;height:100%;background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--stroke) 30%,transparent) 0 6px,color-mix(in srgb,var(--stroke) 12%,transparent) 6px 12px)}.product-photo-kit-collage-qty{position:absolute;bottom:1px;right:1px;background:#000000c7;color:#fff;padding:0 4px;border-radius:3px;font-size:.62rem;font-weight:700;letter-spacing:.02em}.product-photo-kit-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0}.product-photo-kit-badge-lbl{font-size:.65rem;font-weight:700;letter-spacing:.06em;padding:1px 5px;border-radius:3px;background:color-mix(in srgb,var(--warn) 18%,var(--panel));color:var(--warn)}.product-photo-kit-badge-count{font-size:.6rem;color:var(--text-secondary);white-space:nowrap}.product-photo-kit-hero{position:relative;cursor:zoom-in}.product-photo-kit-hero-badge{position:absolute;top:3px;left:3px;background:color-mix(in srgb,var(--warn) 90%,transparent);color:#fff;padding:1px 5px;border-radius:3px;font-size:.6rem;font-weight:700;letter-spacing:.04em}.kit-lightbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;background:#fff;padding:1.25rem;border-radius:var(--radius-md);max-height:80vh;overflow-y:auto}.kit-lightbox-cell{display:flex;flex-direction:column;align-items:center;gap:.5rem}.kit-lightbox-photo{background:var(--bg)}.kit-lightbox-sku{font-size:var(--text-xs);color:var(--text-secondary);text-align:center}.kit-lightbox-qty{color:var(--text-primary);font-weight:600}.kit-lightbox-cell-direct{grid-column:span 2}.kit-lightbox-direct-img{width:100%;max-height:280px;object-fit:contain;background:var(--bg);border-radius:var(--radius-sm)}.kit-lightbox-direct-tag{display:inline-block;margin-left:.4rem;padding:1px 6px;background:color-mix(in srgb,var(--warn) 18%,var(--panel));color:var(--warn);border-radius:3px;font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.kit-photo-settings{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--stroke)}.kit-photo-settings-row{display:flex;gap:1.25rem;align-items:flex-start;flex-wrap:wrap}.kit-photo-settings-preview-col{display:flex;flex-direction:column;gap:.4rem;flex-shrink:0}.kit-photo-settings-preview-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.kit-photo-settings-form-col{flex:1;min-width:280px;display:flex;flex-direction:column;gap:.85rem}.kit-photo-settings-section{display:flex;flex-direction:column;gap:.35rem}.kit-photo-settings-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.kit-photo-settings-hint{color:var(--text-secondary);font-weight:400;text-transform:none;letter-spacing:0}.kit-photo-settings-help{font-size:var(--text-xs);color:var(--text-secondary);margin:0;line-height:1.4}.kit-photo-settings-select{padding:.35rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);color:var(--text-primary);font-size:var(--text-sm);max-width:220px}.kit-photo-settings-featured-list{list-style:none;padding:0;margin:.4rem 0 0;display:flex;flex-direction:column;gap:.35rem}.kit-photo-settings-featured-row{display:flex;align-items:center;gap:.5rem;padding:.3rem .4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);font-size:var(--text-xs)}.kit-photo-settings-featured-pos{display:inline-block;width:18px;height:18px;border-radius:50%;background:var(--accent);color:var(--panel);font-weight:700;text-align:center;line-height:18px;font-size:.65rem;flex-shrink:0}.kit-photo-settings-featured-name{color:var(--text-secondary);flex:1;min-width:0}.kit-photo-settings-featured-actions{display:flex;gap:.2rem;flex-shrink:0}.kit-photo-settings-featured-actions button{background:transparent;border:1px solid var(--stroke);color:var(--text-secondary);padding:0 .4rem;border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;height:22px;line-height:20px}.kit-photo-settings-featured-actions button:hover{background:var(--hover-bg);color:var(--text-primary)}.kit-photo-settings-featured-actions button:disabled{opacity:.3;cursor:not-allowed}.kit-photo-settings-children-picker{margin-top:.4rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel)}.kit-photo-settings-children-picker summary{padding:.4rem .6rem;font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer}.kit-photo-settings-children-list{list-style:none;padding:0 .4rem .4rem;margin:0;display:grid;grid-template-columns:1fr;gap:.2rem;max-height:240px;overflow-y:auto}.kit-photo-settings-child-btn{display:flex;align-items:center;gap:.4rem;width:100%;padding:.3rem .4rem;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);text-align:left;font-size:var(--text-xs);cursor:pointer;color:var(--text-primary)}.kit-photo-settings-child-btn:hover{background:var(--hover-bg);border-color:var(--stroke)}.kit-photo-settings-child-btn:disabled{opacity:.4;cursor:not-allowed}.kit-photo-settings-actions{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.kit-photo-settings-saved{color:var(--good);font-size:var(--text-xs);font-weight:600}.kit-photo-settings-dirty{color:var(--warn);font-size:var(--text-xs);font-style:italic}.kit-photo-settings-meta{font-size:var(--text-xs);color:var(--text-secondary);margin:0}.product-photo{position:relative}.product-photo img{transition:opacity .2s ease-out;position:relative;z-index:1}.product-photo-skeleton{position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--stroke) 35%,transparent),color-mix(in srgb,var(--stroke) 55%,transparent),color-mix(in srgb,var(--stroke) 35%,transparent));background-size:200% 100%;animation:product-photo-shimmer 1.2s linear infinite;border-radius:var(--radius-sm)}@keyframes product-photo-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.product-photo[role=button]{cursor:zoom-in}.image-lightbox-backdrop{position:fixed;inset:0;background:#000000d1;z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out}.image-lightbox-container{position:relative;max-width:min(95vw,1400px);max-height:90vh;display:flex;flex-direction:column;gap:.75rem;cursor:default}.image-lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#fff;font-size:var(--text-sm)}.image-lightbox-caption{font-weight:600;letter-spacing:.02em}.image-lightbox-actions{display:flex;gap:.5rem}.image-lightbox-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.25);color:#fff;padding:.4rem .85rem;border-radius:var(--radius-md);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:background .15s,border-color .15s}.image-lightbox-btn:hover{background:#fff3;border-color:#fff6}.image-lightbox-img{max-width:100%;max-height:80vh;background:#fff;border-radius:var(--radius-md);box-shadow:0 30px 80px #00000080;object-fit:contain}.image-lightbox-container:fullscreen{max-width:100vw;max-height:100vh;width:100vw;height:100vh;padding:1.5rem;background:#000}.image-lightbox-container:fullscreen .image-lightbox-img{max-height:calc(100vh - 4rem)}.qb-invoice-success{margin-top:.5rem;color:var(--good);font-weight:600;font-size:var(--text-sm)}.online-store-product-list{list-style:none;padding:0;margin:.5rem 0;display:flex;flex-direction:column;gap:.5rem}.online-store-product-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--panel)}.online-store-product-thumb{width:56px;height:56px;object-fit:cover;border-radius:var(--radius-sm);background:var(--bg);flex-shrink:0}.online-store-product-thumb-placeholder{display:flex;align-items:center;justify-content:center;color:var(--text-secondary);border:1px dashed var(--stroke);font-size:var(--text-sm)}.online-store-product-meta{display:flex;flex-direction:column;gap:.1rem;flex:1;min-width:0}.online-store-product-name{font-weight:600;color:var(--text-primary);font-size:var(--text-sm)}.online-store-product-sub{font-size:var(--text-xs);color:var(--text-secondary)}.stripe-match-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:var(--text-sm)}.stripe-match-pill{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;letter-spacing:.02em}.stripe-match-metadata,.stripe-match-unique-amount,.stripe-match-amount-with-ship,.stripe-match-name-disambig{background:color-mix(in srgb,var(--good) 14%,var(--panel));color:var(--good)}.stripe-match-time-closest{background:color-mix(in srgb,var(--warn) 18%,var(--panel));color:var(--warn)}.stripe-match-unknown{background:color-mix(in srgb,var(--muted) 12%,var(--panel));color:var(--muted)}.stripe-match-id{font-size:var(--text-xs);color:var(--text-secondary)}.stripe-match-amount{font-weight:600;font-variant-numeric:tabular-nums}.stripe-match-warning{color:var(--warn);font-size:var(--text-xs);font-weight:600}.sync-stale-warning{background:color-mix(in srgb,var(--warn) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);color:var(--warn);padding:6px 12px;border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:8px}.sync-fresh-note{color:var(--text-secondary);font-size:var(--text-xs);margin-left:8px}.priority-modal{width:min(1200px,96vw);min-height:80vh;max-height:92vh;display:flex;flex-direction:column;gap:0;overflow:hidden}.priority-modal-header{padding:1rem 1.2rem .6rem;border-bottom:1px solid var(--stroke)}.priority-modal-header h2{margin:0 0 .25rem;font-size:var(--text-lg);color:var(--ink)}.priority-modal-header p{margin:0;font-size:var(--text-sm);color:var(--muted)}.priority-modal-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--stroke);flex:1;min-height:0;overflow:hidden}.priority-modal-col{background:var(--panel);display:flex;flex-direction:column;min-height:0}.priority-modal-col h3{margin:0;padding:.6rem .8rem;font-size:var(--text-base);font-weight:600;color:var(--ink);border-bottom:1px solid var(--stroke);flex-shrink:0}.priority-modal-list{flex:1;overflow-y:auto;padding:.4rem;display:flex;flex-direction:column;gap:2px}.priority-modal-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .6rem;border-radius:var(--radius-sm);border:1px solid transparent;cursor:grab;font-size:var(--text-sm);background:var(--panel);user-select:none}.priority-modal-item:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--hover-bg)}.priority-modal-item-dragging{opacity:.4}.priority-modal-item-overlay{box-shadow:var(--shadow-md);border-color:var(--accent);background:var(--panel);cursor:grabbing}.priority-modal-item-rank{font-family:var(--mono);font-weight:700;color:var(--accent);min-width:1.6em;text-align:right;flex-shrink:0;align-self:flex-start;padding-top:.1rem}.priority-modal-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.05rem}.priority-modal-item-so{font-family:var(--mono);font-size:var(--text-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.priority-modal-item-customer{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);line-height:1.2}.priority-modal-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem;flex-shrink:0;align-self:flex-start;padding-top:.05rem}.priority-modal-item-equip{font-family:var(--mono);font-size:var(--text-xs);font-weight:600;color:var(--accent);white-space:nowrap}.priority-modal-item-age{font-family:var(--mono);font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.priority-modal-item-age-warn{color:var(--amber);font-weight:600}.priority-modal-empty{padding:1.5rem .8rem;text-align:center;color:var(--muted);font-size:var(--text-sm);font-style:italic}.priority-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.7rem 1.2rem;border-top:1px solid var(--stroke)}.priority-modal-footer .action-btn:first-child{background:var(--panel);color:var(--ink);border-color:var(--stroke)}.priority-modal-footer .action-btn:first-child:hover{background:var(--hover-bg)}.tk-report-panel{padding:1rem 1.5rem}.tk-report-header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1rem}.tk-report-header h2{margin:0;font-size:var(--text-lg)}.tk-filter-bar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}.tk-filter-group{display:flex;gap:2px}.tk-filter-btn{padding:.3rem .65rem;font-size:var(--text-sm);border:1px solid var(--stroke);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:0}.tk-filter-group .tk-filter-btn:first-child{border-radius:6px 0 0 6px}.tk-filter-group .tk-filter-btn:last-child{border-radius:0 6px 6px 0}.tk-filter-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.tk-search-input{padding:.3rem .65rem;font-size:var(--text-sm);border:1px solid var(--stroke);border-radius:6px;background:var(--panel);color:var(--ink);min-width:180px}.tk-table-wrap{overflow-x:auto;border:1px solid var(--stroke);border-radius:8px}.tk-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.tk-table th{text-align:left;padding:.5rem .6rem;border-bottom:2px solid var(--stroke);background:var(--surface);color:var(--muted);font-weight:600;white-space:nowrap}.tk-sortable{cursor:pointer;user-select:none}.tk-table td{padding:.45rem .6rem;border-bottom:1px solid var(--stroke);vertical-align:middle}.tk-row-unmapped{background:color-mix(in srgb,var(--bad) 6%,transparent)}.tk-subject-link{color:var(--accent);text-decoration:none;font-weight:500}.tk-subject-link:hover{text-decoration:underline}.tk-source-badge{display:inline-block;font-size:var(--text-xs);padding:.15rem .4rem;border-radius:4px;font-weight:600;white-space:nowrap}.tk-source-form{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.tk-source-email{background:color-mix(in srgb,var(--warn) 15%,transparent);color:var(--warn)}.tk-source-voicemail{background:color-mix(in srgb,var(--accent-2) 15%,transparent);color:var(--accent-2)}.tk-source-phone{background:color-mix(in srgb,var(--muted) 15%,transparent);color:var(--muted)}.tk-status-badge{display:inline-block;font-size:var(--text-xs);padding:.15rem .4rem;border-radius:4px;font-weight:600}.tk-status-open{background:color-mix(in srgb,var(--good) 15%,transparent);color:var(--good)}.tk-status-closed{background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted)}.tk-customer-cell{display:flex;align-items:center;gap:.4rem}.tk-customer-code{font-weight:600;font-family:var(--mono);font-size:var(--text-sm)}.tk-mapping-badge{display:inline-block;font-size:var(--text-xs);padding:.1rem .35rem;border-radius:4px;font-weight:600;white-space:nowrap}.tk-badge-property{background:color-mix(in srgb,var(--good) 15%,transparent);color:var(--good)}.tk-badge-inferred{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.tk-badge-manual{background:color-mix(in srgb,#7c3aed 15%,transparent);color:#7c3aed}.tk-badge-unmapped{background:color-mix(in srgb,var(--bad) 15%,transparent);color:var(--bad)}.tk-signals{display:flex;flex-wrap:wrap;gap:.25rem;max-width:280px}.tk-signal-item{display:inline-block;font-size:var(--text-xs);padding:.1rem .3rem;border-radius:3px;background:var(--bg-alt);color:var(--muted);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-assign-btn{padding:.2rem .5rem;font-size:var(--text-xs);border:1px solid var(--stroke);border-radius:4px;background:var(--panel);color:var(--accent);cursor:pointer;font-weight:600}.tk-assign-btn:hover{background:var(--hover-bg)}.tk-edit-inline{display:flex;flex-direction:column;gap:.25rem}.tk-edit-input{padding:.25rem .4rem;font-size:var(--text-sm);font-family:var(--mono);border:1px solid var(--accent);border-radius:4px;width:160px}.tk-edit-actions{display:flex;gap:.25rem}.tk-edit-actions button{padding:.15rem .4rem;font-size:var(--text-xs);border:1px solid var(--stroke);border-radius:4px;cursor:pointer}.tk-edit-actions button:first-child{background:var(--accent);color:#fff;border-color:var(--accent)}.tk-edit-actions button.secondary{background:var(--panel);color:var(--muted)}.tk-empty-row{text-align:center;color:var(--muted);padding:2rem!important}.tk-dropdown{position:relative}.tk-dropdown-list{position:absolute;top:100%;left:0;right:0;z-index:20;max-height:200px;overflow-y:auto;background:var(--panel);border:1px solid var(--stroke);border-radius:0 0 6px 6px;box-shadow:0 4px 12px #0000001f;min-width:220px}.tk-dropdown-item{display:flex;gap:.4rem;padding:.35rem .5rem;font-size:var(--text-sm);cursor:pointer;align-items:baseline}.tk-dropdown-item:hover{background:var(--hover-bg)}.tk-dropdown-item.active{background:color-mix(in srgb,var(--accent) 12%,transparent)}.tk-dropdown-clear{color:var(--bad);font-style:italic;border-bottom:1px solid var(--stroke)}.tk-dropdown-empty{color:var(--muted);font-style:italic;cursor:default}.tk-dropdown-code{font-family:var(--mono);font-weight:600;white-space:nowrap}.tk-dropdown-name{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-tooltip{position:absolute;z-index:20;min-width:240px;max-width:340px;background:var(--panel);border:1px solid var(--stroke);border-radius:8px;box-shadow:0 4px 16px #00000026;padding:.6rem .75rem;pointer-events:none}.tk-tooltip-row{display:flex;justify-content:space-between;gap:.75rem;padding:.15rem 0;font-size:var(--text-xs)}.tk-tooltip-label{color:var(--muted);white-space:nowrap}.tk-tooltip-val{font-weight:500;text-align:right;word-break:break-word}.gellet-panel{padding:0}.gellet-header{display:flex;align-items:baseline;gap:1rem;margin-bottom:.75rem}.gellet-header h2{margin:0;font-size:var(--text-lg);font-weight:600}.gellet-timestamp{font-size:var(--text-xs);color:var(--muted)}.gellet-loading,.gellet-empty{padding:2rem;text-align:center;color:var(--muted)}.gellet-error{padding:2rem;text-align:center;color:var(--bad)}.gellet-error button{margin-top:.5rem}.gellet-no-data{padding:2rem;text-align:center;color:var(--muted);font-size:var(--text-sm)}.gellet-summary{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.gellet-summary-card{display:flex;flex-direction:column;align-items:center;background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.5rem 1rem;min-width:100px}.gellet-summary-value{font-size:var(--text-xl);font-weight:700;font-family:var(--mono)}.gellet-summary-warn{color:var(--bad)}.gellet-summary-label{font-size:var(--text-xs);color:var(--muted);margin-top:.15rem}.gellet-table-wrap{overflow:auto;max-height:calc(100vh - 200px);margin-bottom:.5rem}.gellet-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);white-space:nowrap;table-layout:fixed}.gellet-table th,.gellet-table td{padding:.3rem .5rem;border-bottom:1px solid var(--stroke);text-align:left}.gellet-table thead th{background:var(--bg-alt);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0;z-index:2;white-space:normal;line-height:1.3;vertical-align:bottom}.gellet-col-expand{width:20px;padding-left:.3rem;padding-right:0}.gellet-col-months,.gellet-col-weeks{width:72px;text-align:right;font-family:var(--mono);font-size:var(--text-xs)}.gellet-col-burn{width:80px;text-align:right;font-family:var(--mono);font-size:var(--text-xs)}.gellet-burn-default{font-style:italic;opacity:.7}.gellet-col-code{width:66px;font-family:var(--mono);font-size:var(--text-xs);text-align:left}.gellet-col-name{width:auto;overflow:hidden;text-overflow:ellipsis}.gellet-col-locs{width:42px;text-align:center;font-family:var(--mono);font-size:var(--text-xs)}.gellet-col-num{width:80px;text-align:right;font-family:var(--mono);font-size:var(--text-xs)}.gellet-col-date{width:88px;font-size:var(--text-xs);color:var(--muted)}.gellet-sortable{cursor:pointer;user-select:none}.gellet-sortable:hover{background:var(--hover-bg)}.gellet-th-label{display:inline}.gellet-sort-arrow{font-size:.6rem;opacity:.7}.gellet-heat-red{background:#b530301f;color:var(--bad);font-weight:600}.gellet-heat-yellow{background:#b885161f;color:var(--warn);font-weight:600}.gellet-heat-green{background:#4d9b2f14;color:var(--good)}.gellet-group-header{cursor:pointer;font-weight:600}.gellet-group-header:hover{background:var(--hover-bg)}.gellet-expand-toggle{display:inline-block;font-size:.6rem;color:var(--muted)}.gellet-child-row{font-size:var(--text-xs);color:var(--fg-secondary, var(--muted))}.gellet-indent{padding-left:1.5rem}.gellet-muted{color:var(--muted);font-style:italic}.gellet-code-link{background:none;border:none;padding:0;font:inherit;font-family:var(--mono);font-size:var(--text-xs);color:var(--accent);cursor:pointer;text-decoration:none}.gellet-code-link:hover{text-decoration:underline}.gellet-legend{display:flex;gap:1rem;flex-wrap:wrap;font-size:var(--text-xs);color:var(--muted);padding:.25rem 0}.gellet-legend-item{display:flex;align-items:center;gap:.3rem}.gellet-legend-format{font-style:italic}.gellet-legend-sep{width:1px;align-self:stretch;background:var(--stroke)}.gellet-legend-swatch{display:inline-block;width:12px;height:12px;border-radius:2px;border:1px solid var(--stroke)}.gellet-hover-modal{position:fixed;top:60px;right:1rem;width:380px;max-height:calc(100vh - 80px);overflow-y:auto;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-lg, 0 10px 25px rgba(0,0,0,.12));padding:.75rem 1rem;z-index:20;pointer-events:none;font-size:var(--text-sm)}.gellet-hover-pinned{pointer-events:auto;border-color:var(--accent);box-shadow:var(--shadow-lg, 0 10px 25px rgba(0,0,0,.18))}.gellet-hover-close{float:right;background:none;border:none;font-size:1.2rem;line-height:1;color:var(--muted);cursor:pointer;padding:0 .2rem}.gellet-hover-close:hover{color:var(--fg)}.gellet-row-pinned{outline:2px solid var(--accent);outline-offset:-2px}.gellet-hover-header{font-weight:600;font-size:var(--text-base);margin-bottom:.5rem}.gellet-hover-meta{display:block;font-size:var(--text-xs);font-weight:400;color:var(--muted);margin-top:.15rem}.gellet-hover-empty{font-size:var(--text-xs);color:var(--muted);font-style:italic}.gellet-hover-table{width:100%;border-collapse:collapse;font-size:var(--text-xs)}.gellet-hover-table th{text-align:left;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.25rem .4rem;border-bottom:2px solid var(--stroke);color:var(--muted);white-space:nowrap}.gellet-hover-table td{padding:.25rem .4rem;border-bottom:1px solid var(--stroke)}.gellet-hover-table tbody tr:last-child td{border-bottom:none}.gellet-hw-date{font-family:var(--mono);white-space:nowrap;color:var(--muted)}.gellet-hw-inventory{text-align:right;font-family:var(--mono)}.gellet-hw-shipped{text-align:right;font-family:var(--mono);color:var(--muted)}.gellet-hw-has-ship{color:var(--good);font-weight:600}.gellet-hw-cases{display:block;font-size:.6rem;font-weight:400;color:var(--muted)}.gellet-consumption-toggle{margin-top:1.5rem}.gellet-consumption-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;color:var(--fg);cursor:pointer}.gellet-consumption-btn:hover{background:var(--surface)}.gellet-consumption{margin-top:1rem}.gellet-consumption-stats{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.25rem}.gellet-consumption-heading{font-size:.85rem;font-weight:600;margin:1.25rem 0 .5rem;color:var(--fg)}.gellet-histogram-table{width:100%;border-collapse:collapse;font-size:.78rem;margin-bottom:1rem}.gellet-histogram-table th{text-align:left;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--border);padding:.35rem .5rem}.gellet-histogram-table td{padding:.3rem .5rem;border-bottom:1px solid var(--border-subtle, var(--border))}.gellet-hist-range{width:80px;white-space:nowrap}.gellet-hist-count{width:50px;text-align:right}.gellet-hist-bar{position:relative;width:auto}.gellet-hist-bar-fill{height:16px;background:var(--accent);border-radius:2px;min-width:0;transition:width .2s ease}.gellet-hist-empty td{color:var(--muted)}.gellet-consumption-table{margin-top:.5rem}.gellet-consumption-cust-row{cursor:pointer}.gellet-consumption-cust-row:hover td{background:var(--surface)}.gellet-consumption-weeks-cell{padding:.25rem .5rem .75rem 2rem!important}.gellet-consumption-weeks-table{max-height:none;position:static;box-shadow:none;border:1px solid var(--border);border-radius:6px}.portal-section{max-width:1200px;margin:1rem auto;padding:0 1rem}.portal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.portal-toolbar h2{font-size:var(--text-lg);font-weight:700;color:var(--ink);margin:0}.portal-search{padding:.4rem .75rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--sans);background:var(--panel);color:var(--ink);width:220px}.portal-search:focus{outline:none;border-color:var(--accent)}.portal-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-sm)}.portal-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.portal-table th{position:sticky;top:0;background:var(--surface);padding:.5rem .75rem;text-align:left;font-weight:600;color:var(--muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap}.portal-table td{padding:.5rem .75rem;border-bottom:1px solid var(--border);color:var(--ink)}.portal-table tbody tr:hover{background:var(--hover-bg)}.portal-clickable{cursor:pointer}.portal-sortable{cursor:pointer;user-select:none}.portal-sortable:hover{color:var(--accent)}.portal-num{text-align:right}.portal-mono{font-family:var(--mono)}.portal-badge{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600}.portal-badge-good{background:color-mix(in srgb,var(--good) 15%,transparent);color:var(--good)}.portal-badge-muted{background:var(--surface);color:var(--muted)}.portal-empty{text-align:center;color:var(--muted);padding:2rem .75rem!important}.portal-loading{text-align:center;color:var(--muted);padding:3rem 1rem;font-size:var(--text-base)}.portal-error{text-align:center;color:var(--bad);padding:2rem 1rem;font-size:var(--text-base)}.portal-totals td{font-weight:700;background:var(--surface);border-top:2px solid var(--border)}.portal-detail-row td{padding:0!important;background:var(--surface)}.portal-detail{padding:1rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.portal-detail-section h4{margin:0 0 .5rem;font-size:var(--text-sm);font-weight:700;color:var(--ink)}.portal-subtable{font-size:var(--text-xs);border:1px solid var(--border);border-radius:var(--radius-sm)}.portal-subtable th{position:static}.portal-actions{display:flex;gap:.5rem;align-items:center}.portal-form{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;max-width:500px}.portal-form label{display:flex;flex-direction:column;gap:.2rem;font-size:var(--text-xs);font-weight:600;color:var(--muted)}.portal-form input,.portal-form textarea{padding:.35rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--sans);color:var(--ink);background:var(--panel)}.portal-form input:focus,.portal-form textarea:focus{outline:none;border-color:var(--accent)}.portal-form label:has(textarea){grid-column:1 / -1}.portal-form button{grid-column:1 / -1;justify-self:start}.qb-row-overdue{border-left:3px solid #ef4444;background:#ef44440a}.qb-row-partial{border-left:3px solid #f59e0b;background:#f59e0b0a}.qb-stat-clear .value{color:#16a34a}.qb-stat-clear{border-left:3px solid #16a34a}.qb-stat-due .value{color:#d97706}.qb-stat-due{border-left:3px solid #f59e0b}.qb-stat-overdue .value{color:#dc2626}.qb-stat-overdue{border-left:3px solid #ef4444}.qb-aging-bar{display:flex;height:22px;border-radius:var(--radius-sm);overflow:hidden;margin-top:.3rem;font-size:11px;font-weight:600;line-height:22px}.qb-aging-segment{display:flex;align-items:center;justify-content:center;white-space:nowrap;padding:0 6px;min-width:0}.qb-aging-current{background:#e0f2fe;color:#0c4a6e}.qb-aging-30{background:#fef3c7;color:#92400e}.qb-aging-60{background:#fed7aa;color:#9a3412}.qb-aging-90{background:#fecaca;color:#991b1b}.qb-aging-over90{background:#fca5a5;color:#7f1d1d}.qb-aging-label{font-size:10px;color:var(--text-secondary);margin-top:.2rem;display:flex;justify-content:space-between}.qb-tab-bar{display:flex;gap:.35rem;margin-bottom:.5rem}.qb-tab{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:var(--radius-pill);border:1px solid #d7dbe4;background:transparent;font-size:var(--text-sm);font-weight:500;cursor:pointer;opacity:.7;color:var(--text-primary)}.qb-tab:hover{opacity:1}.qb-tab.active{opacity:1;background:var(--surface);border-color:var(--accent);color:var(--accent)}.qb-tab-count{font-size:11px;background:#e5e7eb;color:#374151;border-radius:var(--radius-pill);padding:0 5px;font-weight:600}.qb-tab.active .qb-tab-count{background:#dbeafe;color:#1e3a8a}.entity-mapping-admin{display:grid;gap:.75rem}.entity-filter-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.entity-search{flex:1;min-width:180px;padding:.4rem .6rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-base)}.entity-count{color:var(--text-secondary);font-size:var(--text-sm);white-space:nowrap}.entity-table-resizable{table-layout:fixed}.entity-table th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;white-space:pre-line;overflow:hidden;position:sticky;top:var(--header-h, 49px);z-index:10;background:#fff;box-shadow:inset 0 -1px #d7dbe4}.col-resize-handle{position:absolute;right:0;top:0;bottom:0;width:5px;cursor:col-resize;background:transparent}.col-resize-handle:hover{background:var(--accent, #0e7c66);opacity:.3}.entity-table-resizable td{overflow:hidden;text-overflow:ellipsis}.entity-code,.entity-fusion-code{font-family:var(--font-mono, monospace);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.entity-indent{display:inline-block;width:1.2rem}.entity-row-unmapped{background:#fffbeb}.entity-type-pills{display:flex;gap:3px;flex-wrap:wrap}.entity-pill{display:inline-block;font-size:10px;padding:1px 6px;border-radius:var(--radius-pill);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.entity-pill-customer{background:#dbeafe;color:#1e3a8a}.entity-pill-supplier{background:#dcfce7;color:#14532d}.entity-pill-prospect{background:#fef3c7;color:#78350f}.entity-pill-employee{background:#f3e8ff;color:#581c87}.entity-pill-contractor{background:#fce7f3;color:#831843}.entity-pill-expense_vendor{background:#fed7aa;color:#7c2d12}.entity-pill-internal{background:#e5e7eb;color:#374151}.entity-pill-org{background:#c7d2fe;color:#3730a3}.entity-pill-loc{background:#e0e7ff;color:#4338ca;font-size:9px}.entity-pill-label{background:#f0f4f8;color:#475569;font-size:9px}.entity-id-pills{display:flex;gap:3px;flex-wrap:wrap}.entity-id-pill{display:inline-flex;align-items:center;gap:2px;background:#f0f4f8;border:1px solid #d1d5db;border-radius:var(--radius-sm);padding:1px 5px;font-size:10px;max-width:160px}.entity-id-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-id-remove{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:12px;padding:0 1px;line-height:1}.entity-id-remove:hover{color:#ef4444}.entity-id-overflow{font-size:10px;color:var(--text-secondary);padding:1px 4px}.entity-empty{color:#d1d5db;font-size:var(--text-sm)}.entity-add-btn{background:none;border:1px solid var(--stroke);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;color:var(--text-secondary);width:24px;height:24px;display:flex;align-items:center;justify-content:center;padding:0}.entity-add-btn:hover{background:var(--hover-bg);color:var(--accent);border-color:var(--accent)}.entity-col-toggle-wrap{position:relative}.entity-col-toggle-btn{padding:.35rem .6rem;border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--panel);font-size:var(--text-sm);cursor:pointer;color:var(--muted);white-space:nowrap}.entity-col-toggle-btn:hover{border-color:var(--accent);color:var(--accent)}.entity-col-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:.4rem 0;z-index:20;min-width:160px}.entity-col-option{display:flex;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:var(--text-sm);cursor:pointer;white-space:nowrap}.entity-col-option:hover{background:var(--hover-bg)}.entity-col-option input[type=checkbox]{margin:0}.entity-resolve-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.entity-resolve-row select{padding:.35rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm)}.entity-resolve-row input{flex:1;min-width:200px;padding:.35rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm)}.entity-resolve-result{font-size:var(--text-sm);color:var(--accent);font-weight:600}.entity-review-block{overflow:hidden}.entity-review-table-wrap{overflow-x:auto}.entity-review-table{min-width:1180px;table-layout:fixed}.entity-review-table th,.entity-review-table td{vertical-align:top;white-space:normal;overflow-wrap:anywhere}.entity-review-table th:nth-child(1){width:92px}.entity-review-table th:nth-child(2){width:220px}.entity-review-table th:nth-child(3){width:230px}.entity-review-table th:nth-child(4){width:150px}.entity-review-table th:nth-child(6){width:96px}.entity-review-table td strong,.entity-review-table td span{display:block}.entity-review-row-exiting{opacity:.62;transition:opacity .16s ease,background-color .16s ease}.entity-review-row-exiting td{background:var(--good-bg-soft)}.entity-review-status{display:inline-flex;width:fit-content;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);padding:.12rem .4rem;font-size:var(--text-xs);font-weight:700;text-transform:capitalize}.entity-review-status-needs_review{border-color:var(--status-warn-border);background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.entity-review-status-source_issue{border-color:var(--border);background:var(--surface);color:var(--text-secondary)}.entity-review-status-resolved{border-color:var(--status-success-border);background:var(--good-bg-soft);color:var(--good-fg-soft)}.entity-review-status-ignored{opacity:.7}.entity-review-suggestion{margin-bottom:.35rem;color:var(--text-primary);font-weight:600}.entity-review-context{display:grid;gap:.12rem;margin-top:.35rem;font-size:var(--text-xs);color:var(--text-secondary)}.entity-review-context strong{color:var(--text-primary)}.entity-review-actions{display:grid;gap:.25rem}.entity-review-actions button,.entity-review-link-action{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--text-primary);cursor:pointer;font-size:var(--text-xs);font-weight:600;padding:.25rem .5rem}.entity-review-actions button:hover,.entity-review-link-action:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.entity-review-detail-row td{padding:0;background:var(--surface)}.entity-review-detail-panel{display:grid;gap:.75rem;padding:.75rem;min-width:1120px}.entity-review-candidate-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.entity-review-link-map{display:grid;gap:.45rem;min-width:1080px}.entity-review-link-section-title{margin-top:.15rem;color:var(--text-primary);font-size:var(--text-sm);font-weight:700}.entity-review-link-section-title-secondary{margin-top:.65rem}.entity-review-source-issue{border:1px solid var(--status-warn-border);border-radius:var(--radius-md);background:var(--warn-bg-soft);color:var(--warn-fg-soft);font-size:var(--text-sm);font-weight:600;padding:.55rem .75rem}.entity-review-link-map-header,.entity-review-link-row{display:grid;grid-template-columns:minmax(180px,1fr) 52px minmax(200px,1.15fr) 76px minmax(200px,1.15fr) 52px minmax(180px,1fr);gap:.45rem}.entity-review-link-row{align-items:stretch}.entity-review-link-row-existing{grid-template-columns:minmax(180px,1fr) 52px minmax(200px,1.15fr) 180px minmax(200px,1.15fr) 52px minmax(180px,1fr)}.entity-review-link-header{color:var(--text-secondary);font-size:var(--text-xs);font-weight:700;text-transform:uppercase}.entity-review-map-card,.entity-review-map-empty{min-height:88px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);padding:.55rem .65rem;display:grid;align-content:start;gap:.18rem;font-size:var(--text-sm)}.entity-review-map-card strong{color:var(--text-primary);line-height:1.2}.entity-review-map-card span{min-width:0;color:var(--text-secondary);overflow-wrap:anywhere}.entity-review-map-card-linked{border-color:var(--status-success-border);background:var(--good-bg-soft)}.entity-review-map-card-warning{border-color:var(--status-warn-border);background:var(--warn-bg-soft)}.entity-review-map-badge{width:fit-content;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-xs);font-weight:700;padding:.08rem .35rem;text-transform:uppercase}.entity-review-map-card-parent{box-shadow:inset 3px 0 0 var(--accent)}.entity-review-map-card-child{box-shadow:inset 3px 0 0 var(--stroke)}.entity-review-map-empty{color:var(--muted);place-content:center;text-align:center}.entity-review-map-location{font-family:var(--font-mono, monospace);font-size:var(--text-xs)}.entity-review-map-location-empty{color:var(--muted)}.entity-review-link-segment{position:relative;display:grid;place-items:center;min-height:88px}.entity-review-link-segment:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:2px solid var(--border)}.entity-review-link-segment-active:before{border-color:var(--good-fg-soft)}.entity-review-link-segment-possible:before{border-style:dashed;border-color:var(--accent)}.entity-review-link-direct{grid-column:4 / 7;position:relative;display:grid;min-height:88px}.entity-review-link-direct:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:2px solid var(--status-warn-border)}.entity-review-link-action{position:relative;z-index:1;background:var(--panel);white-space:nowrap}.entity-review-link-action-success{border-color:var(--status-success-border);background:var(--good-bg-soft);color:var(--good-fg-soft)}.entity-review-company-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);padding:.65rem}.entity-review-company-card-mapped{border-color:var(--status-success-border);background:var(--good-bg-soft)}.entity-review-company-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.entity-review-company-card-header div{min-width:0}.entity-review-company-card-header strong,.entity-review-company-card-header span{display:block}.entity-review-company-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem .75rem;margin-top:.55rem;color:var(--text-secondary);font-size:var(--text-sm)}.entity-review-company-facts span{min-width:0;overflow-wrap:anywhere}@media(max-width:1180px){.entity-review-detail-panel,.entity-review-link-map{min-width:920px}.entity-review-link-map-header,.entity-review-link-row{grid-template-columns:minmax(150px,1fr) 40px minmax(170px,1fr) 56px minmax(170px,1fr) 40px minmax(150px,1fr)}}.entity-add-modal{max-width:400px}.entity-add-modal label{display:grid;gap:.3rem;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary)}.entity-add-modal label select,.entity-add-modal label input{padding:.4rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:400;color:var(--ink)}.entity-modal-subtitle{color:var(--text-secondary);font-size:var(--text-sm);margin:-.3rem 0 .5rem}.entity-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.admin-kpi-value{font-size:var(--text-md);font-weight:700;color:var(--ink)}.admin-kpi-label{color:var(--text-secondary);font-size:var(--text-xs)}.admin-success-banner{background:#dcfce7;color:#14532d;padding:.5rem .75rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500}.routing-phone-banner{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;background:var(--warn-bg-soft);color:var(--warn-fg-soft);border-bottom:1px solid var(--border);font-size:var(--text-sm)}.routing-phone-banner-icon{font-size:1.1rem;line-height:1}.routing-phone-banner-text{flex:1;min-width:0}.routing-phone-banner-text strong{font-weight:600}.routing-phone-banner-actions{display:flex;gap:.4rem;align-items:center}.routing-phone-banner-cta{background:var(--warn-fg-soft);color:var(--surface);border:none;border-radius:var(--radius-sm);padding:.35rem .85rem;font-size:var(--text-xs);font-weight:600;cursor:pointer}.routing-phone-banner-cta:hover{opacity:.9}.routing-phone-banner-dismiss{background:transparent;border:none;color:var(--warn-fg-soft);font-size:1.25rem;line-height:1;cursor:pointer;padding:0 .25rem}.install-cal-split{display:block}.install-cal-split.with-preview{margin-right:min(760px,62vw)}.install-cal-preview{background:#fff;border:1px solid #d7dbe4;border-radius:var(--radius-xl);display:grid;gap:.5rem;position:fixed;top:60px;right:.8rem;width:clamp(620px,58vw,760px);max-height:calc(100vh - 70px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 .9rem .9rem;z-index:10;box-shadow:-2px 0 12px #00000014}.install-cal-preview-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.8rem 0 0;position:sticky;top:0;background:#fff;z-index:2}.install-cal-preview-head h3{margin:0}.install-cal-dnd-rowlabel-shipping .install-cal-lane-label{color:var(--accent-3, #5b7fb5)}.install-cal-dnd-cell-shipping{min-height:44px;padding:.25rem .35rem;display:flex;flex-direction:column;gap:.2rem;border-right:1px solid rgba(0,0,0,.06);border-bottom:2px solid var(--border)}.install-cal-shipping-card{display:flex;align-items:center;gap:.35rem;padding:.15rem .4rem;border-radius:4px;font-size:var(--text-xs);border-left:3px solid var(--accent);background:#0e7c660a;cursor:pointer}.install-cal-shipping-card:hover{background:#0e7c6617}.install-cal-shipping-card.install-cal-card-upgrade{border-left-color:var(--accent-2, #b07d10);background:#b07d100a}.install-cal-shipping-card.install-cal-card-upgrade:hover{background:#b07d1017}.install-cal-shipping-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.install-cal-shipping-date{color:var(--muted);font-size:10px;white-space:nowrap;margin-left:auto}.install-edit-fusion-section{background:var(--surface, #f5f7fb);border:1px solid var(--border, #e1e6ef);border-radius:6px;padding:.6rem .75rem;margin-bottom:.5rem}.install-edit-fusion-label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-bottom:.4rem}.install-edit-fusion-grid{display:grid;gap:.25rem;font-size:var(--text-sm)}.install-edit-fusion-key{color:var(--muted);font-size:var(--text-xs);min-width:80px;display:inline-block}.install-cal-badge-no-so{background:transparent;border:1px dashed var(--accent-2, #b07d10);color:var(--accent-2, #b07d10);font-size:9px;padding:0 .3rem;border-radius:3px;font-weight:600}.install-cal-badge-activated{background:#0e7c661a;color:var(--accent);border:1px solid var(--accent);font-size:9px;padding:0 .3rem;border-radius:3px;font-weight:600}.install-help-signal-btn{background:#fff3e0;border:1px solid #e65100;color:#e65100;border-radius:4px;padding:.2rem .5rem;font-size:var(--text-xs);font-weight:600;cursor:pointer;white-space:nowrap}.install-help-signal-btn:hover{background:#e65100;color:#fff}.install-help-signal-sent{background:#e8f5e9;border-color:var(--accent);color:var(--accent);cursor:default}.install-help-signal-sent:hover{background:#e8f5e9;color:var(--accent)}.install-help-signals{background:#fff3e0;border:1px solid #ffe0b2;border-radius:6px;padding:.5rem .65rem;font-size:var(--text-sm)}.install-help-signals-label{font-weight:600;color:#e65100}.install-help-signals-list{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.3rem}.install-help-signal-entry{font-size:var(--text-xs);color:var(--muted)}.install-edit-details-toggle{background:none;border:1px solid var(--border);border-radius:4px;padding:.35rem .6rem;font-size:var(--text-sm);cursor:pointer;text-align:left;color:var(--fg);font-weight:600}.install-edit-details-toggle:hover{background:var(--surface)}.install-cal-header{padding:1rem 1.25rem .75rem}.install-cal-title-row{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}.install-cal-title-row h2{margin:0;font-size:var(--text-lg);font-weight:700;color:var(--ink)}.install-cal-stats{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);color:var(--muted);font-family:var(--mono)}.install-cal-stat-sep{width:1px;height:.75rem;background:var(--stroke)}.install-cal-controls{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;flex-wrap:wrap}.install-cal-grid-scroll{overflow-x:auto;overflow-y:visible}.install-cal-dnd-grid{display:grid;gap:0;padding:0 0 1rem;grid-template-columns:180px repeat(var(--install-col-count, 1),minmax(220px,280px))}.install-cal-dnd-corner{position:sticky;left:0;z-index:2;background:var(--panel)}.install-cal-dnd-colhdr{display:flex;align-items:center;gap:.35rem;padding:.5rem;border-bottom:1px solid var(--stroke);font-weight:600;font-size:var(--text-sm);color:var(--ink);background:var(--panel);position:sticky;top:0;z-index:1}.install-cal-dnd-colhdr-unsched{border-left:1px dashed var(--stroke)}.install-cal-dnd-rowlabel{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .75rem;position:sticky;left:0;z-index:2;background:var(--panel);border-right:1px solid var(--stroke);border-bottom:1px solid var(--stroke)}.install-cal-lane-label{font-size:var(--text-sm);font-weight:700;letter-spacing:.02em}.install-cal-lane-sublabel{font-size:10px;color:var(--muted);font-weight:400;line-height:1.2}.install-cal-dnd-rowlabel-self_install .install-cal-lane-label{color:var(--accent-2, #b07d10)}.install-cal-dnd-rowlabel-team_install .install-cal-lane-label{color:var(--accent)}.install-cal-dnd-cell{min-height:80px;padding:.35rem;display:flex;flex-direction:column;gap:.35rem;border-right:1px solid var(--stroke-light, rgba(0,0,0,.06));border-bottom:1px solid var(--stroke);transition:background .15s}.install-cal-dnd-cell-unsched{border-left:1px dashed var(--stroke);background:repeating-linear-gradient(-45deg,transparent,transparent 8px,rgba(0,0,0,.015) 8px,rgba(0,0,0,.015) 16px)}.install-cal-dnd-cell-over{background:#0e7c6614;outline:2px dashed var(--accent);outline-offset:-2px}.install-cal-dnd-cell-empty{min-height:48px}.install-cal-card-ghost{opacity:.9;box-shadow:0 8px 24px #0000002e;transform:rotate(1.5deg);pointer-events:none}.install-cal-grid{display:flex;gap:.5rem;padding:.4rem 1.25rem 1rem;overflow-x:auto;align-items:flex-start}.install-cal-week{min-width:220px;max-width:280px;flex:1;background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius-md)}.install-cal-week-unscheduled{border-style:dashed;opacity:.85}.install-cal-week-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;border-bottom:1px solid var(--stroke);font-size:var(--text-sm);font-weight:600;color:var(--ink)}.install-cal-week-date{color:var(--muted);font-size:var(--text-xs);font-weight:400}.install-cal-week-count{margin-left:auto;background:var(--accent);color:#fff;font-size:var(--text-xs);font-weight:600;min-width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);padding:0 .35rem}.install-cal-week-events{display:flex;flex-direction:column;gap:.35rem;padding:.5rem}.install-cal-card{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);padding:0;border-left:3px solid var(--accent);display:flex;flex-direction:row}.install-cal-card-drag-handle{display:flex;align-items:center;padding:0 .3rem;cursor:grab;color:var(--muted);font-size:.7rem;user-select:none;flex-shrink:0;border-right:1px solid var(--stroke)}.install-cal-card-drag-handle:active{cursor:grabbing}.install-cal-card-drag-handle:hover{color:var(--fg);background:#00000008}.install-cal-card-body{flex:1;padding:.5rem .6rem;cursor:pointer;min-width:0}.install-cal-card-body:hover{background:#00000005}.install-cal-card:active{cursor:default}.install-cal-card-upgrade{border-left-color:var(--accent-2);padding:.35rem .5rem;font-size:var(--text-xs)}.install-cal-card-upgrade .install-cal-card-customer{font-size:var(--text-xs);margin-bottom:.15rem}.install-cal-card-ready{background:var(--good-bg-soft);border-left-color:var(--good)}.install-cal-card-ready .install-cal-card-body:hover{background:#16a34a0f}.install-cal-card-header{display:flex;align-items:center;justify-content:space-between;gap:.35rem}.install-cal-card-customer{font-size:var(--text-sm);font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;justify-content:space-between;align-items:baseline;gap:.3rem}.install-cal-card-players{font-size:var(--text-xs);color:var(--muted);font-weight:400;flex-shrink:0}.install-cal-card-meta{display:flex;gap:.5rem;font-size:var(--text-xs);color:var(--muted);margin-top:.15rem}.install-cal-card-location{font-size:var(--text-xs);color:var(--text-secondary);margin-top:.15rem}.install-cal-card-date{font-size:var(--text-xs);color:var(--muted);font-family:var(--mono)}.install-cal-card-notes{font-size:var(--text-xs);color:var(--text-secondary);margin-top:.25rem;max-height:2.4em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.install-method-pill{font-size:var(--text-xs);font-weight:600;padding:.1rem .4rem;border-radius:var(--radius-sm);white-space:nowrap}.install-method-pill-self_install{color:var(--accent-2, #b07d10);background:#b07d101a}.install-method-pill-team_install{color:var(--accent);background:#0e7c661a}.install-cal-badge{font-size:var(--text-xs);font-weight:600;padding:.1rem .4rem;border-radius:var(--radius-sm);white-space:nowrap}.install-cal-badge-new{background:#0e7c661f;color:var(--accent)}.install-cal-badge-upgrade{background:#d95f021f;color:var(--accent-2)}.install-cal-badge-intl{background:#5050c826;color:#3c3caa;font-weight:700;letter-spacing:.03em}.install-cal-badge-ready{background:var(--good-bg-soft);color:var(--good-fg-soft);border:1px solid var(--good);font-weight:700}.install-drop-modal{max-width:460px}.install-drop-subtitle{margin:.25rem 0 0;color:var(--ink);font-size:var(--text-sm);font-weight:600}.install-drop-method{font-weight:500;color:var(--muted)}.install-drop-week-label{margin:.15rem 0 .85rem;color:var(--muted);font-size:var(--text-xs);font-family:var(--font-mono)}.install-drop-day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.4rem;margin-bottom:1rem}.install-drop-day-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:.6rem .3rem;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);cursor:pointer;transition:background .1s,border-color .1s,color .1s;font-family:inherit;color:var(--ink)}.install-drop-day-btn:hover{border-color:var(--accent);background:#00000005}.install-drop-day-btn.selected{background:var(--accent);border-color:var(--accent);color:var(--panel)}.install-drop-day-name{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;font-weight:600;opacity:.85}.install-drop-day-num{font-size:1.25rem;font-weight:700;line-height:1.05}.install-drop-day-month{font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.install-drop-actions{display:flex;gap:.5rem;justify-content:flex-end}.install-intl-callout{display:flex;align-items:flex-start;gap:.3rem;margin-top:.25rem;padding:.3rem .5rem;background:#5050c814;border:1px solid rgba(80,80,200,.2);border-radius:var(--radius-sm);font-size:11px;font-weight:600;color:#3c3caa;line-height:1.35}.install-intl-callout-icon{flex-shrink:0;font-size:13px}.install-finance-hidden .install-finance-col{display:none}.install-cal-list{padding:0 1.25rem 1.25rem;overflow-x:auto}.install-cal-list table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.install-cal-list th{text-align:left;padding:.5rem .6rem;font-weight:600;color:var(--muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--stroke);background:var(--surface);position:sticky;top:0}.install-cal-list td{padding:.45rem .6rem;border-bottom:1px solid var(--border, var(--stroke));color:var(--ink)}.install-cal-list tr:hover td{background:var(--hover-bg)}.install-cal-empty{padding:3rem;text-align:center;color:var(--muted);font-size:var(--text-base)}.install-cal-date-clickable{cursor:pointer;display:inline-flex;align-items:center;gap:.3rem;border-radius:var(--radius-sm);padding:.1rem .25rem;transition:background .15s}.install-cal-date-clickable:hover{background:var(--hover-bg)}.install-cal-date-edit-icon{font-size:var(--text-xs);color:var(--muted);opacity:0;transition:opacity .15s}.install-cal-date-clickable:hover .install-cal-date-edit-icon{opacity:1}.install-cal-date-editor{display:flex;align-items:center;gap:.35rem}.install-cal-date-input{padding:.2rem .35rem;border:1px solid var(--accent);border-radius:var(--radius-sm);font-size:var(--text-xs);font-family:var(--sans);background:var(--panel);color:var(--ink);outline:none}.install-cal-date-saving{font-size:var(--text-xs);color:var(--muted)}.install-card-emails{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--stroke)}.install-card-emails-header{font-size:var(--text-xs);font-weight:600;color:var(--muted);margin-bottom:.35rem}.install-card-emails-status{font-size:var(--text-xs);color:var(--muted);padding:.25rem 0}.install-card-emails-error{color:var(--red)}.install-card-emails-hint{font-weight:400;font-style:italic}.install-card-emails-list{display:flex;flex-direction:column;gap:.3rem;max-height:200px;overflow-y:auto}.install-card-email-row{padding:.35rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--surface)}.install-card-email-subject{font-size:var(--text-xs);font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.install-card-email-meta{display:flex;justify-content:space-between;font-size:.65rem;color:var(--muted);margin-top:.1rem}.install-card-email-snippet{font-size:.65rem;color:var(--text-secondary);margin-top:.15rem;max-height:1.8em;overflow:hidden;text-overflow:ellipsis}.install-cal-card-links{display:flex;gap:.25rem;margin-top:.3rem;flex-wrap:wrap;align-items:center}.install-link-badge-wrap{display:inline-flex;align-items:center;gap:.2rem}.install-link-badge{font-size:.6rem;font-weight:700;padding:.05rem .3rem;border-radius:var(--radius-sm);letter-spacing:.02em;white-space:nowrap;cursor:default}.install-link-badge-active{background:#0e7c6626;color:var(--accent)}.install-link-badge-missing{background:var(--surface);color:var(--muted);border:1px dashed var(--stroke);cursor:pointer}.install-link-badge-missing:hover{border-color:var(--accent);color:var(--accent)}.install-link-inline-editor{display:inline-flex}.install-link-inline-input{width:80px;padding:.1rem .3rem;border:1px solid var(--accent);border-radius:var(--radius-sm);font-size:var(--text-xs);font-family:var(--mono);background:var(--panel);color:var(--ink);outline:none}.install-link-summary{font-size:var(--text-xs);font-weight:600;color:var(--accent)}.install-link-summary-incomplete{color:var(--muted)}.install-cal-card-updated{font-size:var(--text-xs);color:var(--muted);margin-top:.15rem}.install-travel-section{margin-top:.25rem}.install-travel-badge{display:inline-flex;align-items:center;gap:.25rem;border:0;font-size:var(--text-xs);font-weight:600;font-family:inherit;line-height:1.2;padding:.15rem .45rem;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .15s}.install-travel-badge:hover{opacity:.85}.install-travel-booked{background:#0e7c661f;color:var(--accent)}.install-travel-assist{background:var(--status-neutral-bg);color:var(--status-neutral-fg)}.install-travel-none{background:#c878141a;color:var(--accent-2, #b07d10)}.install-travel-loading{font-size:10px;color:var(--muted);font-weight:400;padding:0;margin-top:.15rem}.install-travel-icon{font-size:11px}.install-travel-details{margin-top:.25rem;padding:.35rem;background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-xs)}.install-travel-email{padding:.2rem 0;border-bottom:1px solid var(--stroke-light, rgba(0,0,0,.04))}.install-travel-email:last-child{border-bottom:none}.install-travel-email-subject{font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.install-travel-email-meta{color:var(--muted);font-size:10px}.install-travel-email-snippet{margin-top:.15rem;color:var(--text-secondary);font-size:10px;line-height:1.35;white-space:normal}.install-travel-section-label{font-weight:600;color:var(--muted);margin-top:.35rem;margin-bottom:.1rem;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.install-travel-date-alert{display:flex;align-items:flex-start;gap:.3rem;width:100%;margin-top:.25rem;padding:.3rem .45rem;background:#c8781414;border:1px solid rgba(200,120,20,.2);border-radius:var(--radius-sm);font-size:11px;font-family:inherit;font-weight:600;color:var(--accent-2, #b07d10);text-align:left;line-height:1.35;cursor:pointer}.install-travel-date-alert-icon{flex-shrink:0;font-size:13px}.modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);padding:1.25rem 1.5rem;width:480px;max-width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.install-add-modal{max-width:760px;width:90vw}.install-add-modal h3{margin:0 0 .75rem;font-size:var(--text-lg);color:var(--ink)}.install-add-form{display:grid;gap:.6rem}.install-add-form label{display:grid;gap:.2rem;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary)}.install-add-form label input,.install-add-form label select,.install-add-form label textarea{padding:.4rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:400;font-family:var(--sans);color:var(--ink);background:var(--panel)}.install-add-form label textarea{resize:vertical}.install-add-field{display:grid;gap:.2rem;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary)}.install-add-field-label{display:block}.install-add-row-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem}.install-add-row-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.install-add-row-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.install-add-checkbox-label{display:flex!important;flex-direction:row!important;align-items:center;gap:.4rem;font-size:var(--text-sm);cursor:pointer}.install-add-checkbox-label input[type=checkbox]{width:auto;margin:0}.install-add-links-section{margin-top:.25rem;padding-top:.5rem;border-top:1px solid var(--stroke)}.install-so-link-section{margin-top:0;padding-top:0;border-top:0}.install-add-links-label{font-size:var(--text-xs);font-weight:600;color:var(--muted);display:block;margin-bottom:.4rem}.address-ac-dropdown{position:absolute;top:100%;left:0;right:0;z-index:999;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px #0000001f;list-style:none;margin:.125rem 0 0;padding:.25rem 0;max-height:220px;overflow-y:auto}.address-ac-dropdown li{padding:.4rem .6rem;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.address-ac-dropdown li:hover{background:var(--bg-hover)}.install-add-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.install-edit-modal{max-width:640px;max-height:85vh;overflow-y:auto}.install-edit-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.5rem}.install-edit-header h3{margin:0}.install-edit-actions{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;gap:.5rem}.install-edit-save-group{display:flex;gap:.5rem}.install-edit-delete-confirm{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm)}.btn-danger-outline{background:transparent;color:var(--bad);border:1px solid var(--bad);padding:.35rem .75rem;border-radius:4px;font-size:var(--text-sm);cursor:pointer}.btn-danger-outline:hover{background:var(--bad);color:#fff}.btn-danger{background:var(--bad);color:#fff;border:1px solid var(--bad);padding:.35rem .75rem;border-radius:4px;font-size:var(--text-sm);cursor:pointer}.install-backlog-section{border-top:2px solid var(--border);padding:1rem}.install-backlog-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.75rem}.install-backlog-header h3{margin:0;font-size:var(--text-base)}.install-backlog-add-btn{margin-left:auto;font-size:var(--text-sm);padding:.2rem .6rem}.install-backlog-subtitle{color:var(--muted);font-size:var(--text-sm)}.install-backlog-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.install-backlog-col{display:flex;flex-direction:column;gap:.4rem}.install-backlog-empty{color:var(--muted);font-size:var(--text-sm);padding:1rem;text-align:center}.install-backlog-card-sortable{display:flex;flex-direction:row;border:1px solid var(--border);border-radius:6px;background:var(--surface);overflow:hidden}.install-backlog-drag-grip{display:flex;align-items:center;padding:0 .35rem;cursor:grab;color:var(--muted);font-size:.8rem;user-select:none;flex-shrink:0;border-right:1px solid var(--border)}.install-backlog-drag-grip:active{cursor:grabbing}.install-backlog-drag-grip:hover{color:var(--fg);background:#00000008}.install-backlog-card-content{flex:1;min-width:0}.install-backlog-card-sortable .install-backlog-card{border:none;border-radius:0}.install-backlog-hidden-section{margin-top:.75rem;border-top:1px dashed var(--border);padding-top:.5rem}.install-backlog-hidden-toggle{background:none;border:none;color:var(--muted);cursor:pointer;font-size:var(--text-sm);padding:.25rem 0}.install-backlog-hidden-toggle:hover{color:var(--fg)}.install-backlog-hidden-list{display:flex;flex-direction:column;gap:.3rem;margin-top:.4rem}.install-backlog-hidden-card{display:flex;align-items:center;gap:.5rem;padding:.3rem .5rem;font-size:var(--text-sm);background:var(--surface);border:1px dashed var(--border);border-radius:4px;opacity:.6}.install-backlog-hidden-card:hover{opacity:1}.install-backlog-unhide-btn{margin-left:auto;background:none;border:1px solid var(--border);border-radius:3px;color:var(--fg);cursor:pointer;font-size:.7rem;padding:.15rem .4rem}.install-backlog-unhide-btn:hover{background:var(--accent);color:#fff}.install-autocomplete-wrap{position:relative}.install-autocomplete-list{position:absolute;top:100%;left:0;right:0;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:20;max-height:200px;overflow-y:auto}.install-autocomplete-item{padding:.4rem .6rem;cursor:pointer;font-size:var(--text-sm);display:flex;justify-content:space-between;align-items:center}.install-autocomplete-item:hover{background:var(--accent);color:#fff}.install-autocomplete-code{font-size:.65rem;color:var(--muted);font-family:var(--mono)}.install-autocomplete-item:hover .install-autocomplete-code{color:#ffffffb3}.install-backlog-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.6rem .75rem;font-size:var(--text-sm);display:flex;flex-direction:column;gap:.25rem}.install-backlog-card-inactive{opacity:.55}.install-backlog-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.install-backlog-hide-btn{background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:var(--text-sm);padding:0 .25rem;line-height:1;border-radius:3px}.install-backlog-hide-btn:hover{color:var(--bad);background:var(--surface-hover, rgba(0,0,0,.05))}.install-backlog-card-links{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.15rem}.install-backlog-inactive-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.st-layout{display:flex;height:calc(100vh - var(--header-h));overflow:hidden}.st-panel{padding:2rem;display:flex;align-items:center;justify-content:center}.st-loading{color:var(--muted)}.st-error{color:var(--bad)}.st-btn{padding:.4rem .8rem;font-size:var(--text-sm);border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);cursor:pointer}.st-sidebar{width:220px;min-width:220px;background:var(--panel);border-right:1px solid var(--stroke);display:flex;flex-direction:column;overflow-y:auto}.st-new-ticket-btn{margin:.75rem .75rem 0;padding:8px 0;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;cursor:pointer}.st-new-ticket-btn:hover{opacity:.9}.st-sidebar-search{padding:.75rem}.st-sidebar-search input{width:100%;padding:.4rem .6rem;font-size:var(--text-sm);border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}.st-sidebar-nav{display:flex;flex-direction:column;padding:0 .5rem;gap:1px}.st-sidebar-item{display:flex;align-items:center;gap:.5rem;padding:.45rem .65rem;font-size:var(--text-sm);border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--muted);text-align:left;transition:background .12s}.st-sidebar-item:hover{background:var(--hover-bg)}.st-sidebar-item.active{background:var(--hover-bg);color:var(--accent);font-weight:600}.st-sidebar-icon{font-size:.9rem;width:1.2rem;text-align:center}.st-sidebar-label{flex:1}.st-sidebar-count{font-size:var(--text-xs);font-weight:600;color:var(--accent);min-width:1.2rem;text-align:right}.st-sidebar-unread{font-size:.6rem;font-weight:700;color:#fff;background:var(--accent);border-radius:var(--radius-pill);padding:0 .35rem;min-width:1rem;text-align:center;line-height:1.3}.st-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.st-main-header{padding:.75rem 1.25rem;border-bottom:1px solid var(--stroke);background:var(--panel);display:flex;align-items:center;justify-content:space-between}.st-main-header h2{font-size:var(--text-base);font-weight:600;margin:0;color:var(--ink)}.st-refresh-btn{padding:.3rem .7rem;font-size:var(--text-xs);font-weight:500;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);color:var(--muted);cursor:pointer;transition:background .12s,color .12s}.st-refresh-btn:hover{background:var(--hover-bg);color:var(--ink)}.st-refresh-btn:disabled{opacity:.5;cursor:default}.st-quick-filters{display:grid;grid-template-columns:repeat(4,minmax(9rem,1fr));gap:.65rem;padding:.65rem 1.25rem;border-bottom:1px solid var(--stroke);background:var(--surface)}.st-quick-filters label{display:flex;flex-direction:column;gap:.25rem;color:var(--muted);font-size:var(--text-xs);font-weight:600}.st-quick-filters select{min-width:0;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit;font-size:var(--text-sm);padding:.35rem .5rem}.st-table-wrap{flex:1;overflow:auto}.st-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.st-table th{text-align:left;padding:.55rem .75rem;font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--stroke);white-space:nowrap;background:var(--panel);position:sticky;top:0;z-index:2}.st-sortable{cursor:pointer;user-select:none}.st-sortable:hover{color:var(--ink)}.st-table td{padding:.6rem .75rem;border-bottom:1px solid color-mix(in srgb,var(--stroke) 50%,transparent);vertical-align:middle}.st-table tbody tr:hover{background:var(--hover-bg)}.st-row-unlinked{background:color-mix(in srgb,var(--warn) 5%,transparent)}.st-row-unlinked:hover{background:color-mix(in srgb,var(--warn) 9%,transparent)!important}.st-row-unread td{font-weight:600}.st-row-unread td:first-child:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:4px;vertical-align:middle}.st-empty{text-align:center;color:var(--muted);padding:3rem 1rem!important}.st-col-flag{width:2rem;text-align:center;padding:0!important}.st-flag-btn{background:none;border:none;cursor:pointer;font-size:1rem;color:var(--text-muted);padding:.2rem;line-height:1;opacity:.3;transition:opacity .15s}.st-flag-btn:hover{opacity:.7}.st-flag-btn.st-flagged{color:var(--warning, #e8a838);opacity:1}.st-col-channel{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.st-channel-icon{font-size:1rem;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.st-ch-call .st-channel-icon,.st-ch-call{color:var(--accent)}.st-ch-phone{color:#6d4c41}.st-ch-form{color:#2e7d32}.st-ch-email{color:#00838f}.st-ch-voicemail{color:#ef6c00}.st-ch-whatsapp{color:#25d366}.st-channel-label{font-size:var(--text-xs);color:var(--muted)}.st-col-ticket{max-width:280px}.st-ticket-link{color:var(--accent);text-decoration:none;font-weight:600;font-size:var(--text-sm)}.st-ticket-link:hover{text-decoration:underline}.st-ticket-id{font-family:var(--mono);font-weight:600;font-size:var(--text-sm);color:var(--ink)}.st-ticket-subtitle{display:block;font-size:var(--text-xs);color:var(--muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.st-col-date{white-space:nowrap;font-size:var(--text-xs);color:var(--muted)}.st-col-company{min-width:160px;position:relative}.st-company-linked{cursor:pointer;font-weight:500}.st-company-linked:hover{text-decoration:underline}.st-company-unlinked{cursor:pointer;color:var(--accent);font-style:italic;font-size:var(--text-xs)}.st-company-unlinked:hover{text-decoration:underline}.st-dropdown-wrap{position:relative}.st-dropdown-input{width:100%;padding:.3rem .5rem;font-size:var(--text-sm);border:1px solid var(--accent);border-radius:var(--radius-sm);outline:none}.st-dropdown-list{position:absolute;top:100%;left:0;right:0;min-width:240px;max-height:240px;overflow-y:auto;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:100}.st-dropdown-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.45rem .65rem;font-size:var(--text-sm);border:none;background:none;cursor:pointer;text-align:left}.st-dropdown-item:hover{background:var(--hover-bg)}.st-dropdown-name{font-weight:500}.st-dropdown-code{font-size:var(--text-xs);color:var(--muted);font-family:var(--mono)}.st-dropdown-empty{padding:.6rem;font-size:var(--text-sm);color:var(--muted);text-align:center}.st-col-contact{white-space:nowrap}.st-contact-cell{display:inline-flex;align-items:center;gap:.4rem}.st-contact-avatar{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:50%;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-size:.55rem;font-weight:700;letter-spacing:.02em;flex-shrink:0}.st-contact-name{font-size:var(--text-sm);color:var(--ink)}.st-col-status{white-space:nowrap}.st-status-select{padding:.2rem .4rem;font-size:var(--text-xs);font-weight:600;border:1px solid var(--stroke);border-radius:var(--radius-sm);cursor:pointer;background:var(--panel)}.st-status-badge{display:inline-block;padding:.2rem .5rem;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-sm)}.st-status-new{color:var(--accent);border-color:var(--accent)}.st-status-open{color:var(--accent-2);border-color:var(--warn)}.st-status-pending{color:var(--muted);border-color:var(--stroke)}.st-status-resolved{color:var(--good);border-color:var(--good)}.st-status-closed{color:var(--muted);border-color:var(--stroke);opacity:.6}.st-col-outcome{white-space:nowrap}.st-outcome{font-size:var(--text-xs);font-weight:500}.st-outcome-completed{color:var(--good)}.st-outcome-voicemail{color:var(--accent-2)}.st-outcome-missed{color:var(--bad)}.st-outcome-callback{color:var(--accent);font-weight:600}.st-outcome-emergency{color:#fff;background:var(--bad);padding:.1rem .4rem;border-radius:var(--radius-sm);font-weight:700;font-size:var(--text-xs)}.st-outcome-ringing{color:var(--accent);font-style:italic}.st-text-muted{color:var(--muted);font-size:var(--text-xs)}.st-ticket-expandable{cursor:pointer}.st-vm-indicator{display:block;font-size:var(--text-xs);color:var(--accent);margin-top:2px;font-weight:500}.st-vm-row td{background:var(--surface)!important}.st-vm-cell{padding:0 .75rem .75rem!important;border-bottom:1px solid var(--stroke)!important}.st-vm-content{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md)}.st-vm-audio{width:100%;max-width:400px;height:32px}.st-vm-transcript{font-size:var(--text-sm);color:var(--ink);line-height:1.5;margin:0;font-style:italic}.st-vm-no-transcript{font-size:var(--text-xs);color:var(--muted);margin:0;font-style:italic}.st-row-clickable{cursor:pointer}.st-row-loading{opacity:.6;pointer-events:none}.st-hs-detail{padding:24px;max-width:640px}.st-hs-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.st-hs-detail-field{display:flex;flex-direction:column;gap:2px;font-size:var(--text-sm)}.st-hs-label{font-size:var(--text-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.st-hs-section-title{margin:24px 0 12px;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);padding-bottom:6px}.st-hs-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.st-hs-form-field{display:flex;flex-direction:column;gap:2px}.st-hs-form-field-wide{grid-column:1 / -1}.st-hs-form-value{font-size:var(--text-sm);color:var(--ink)}.st-hs-detail-note{margin-top:24px;font-size:var(--text-sm);color:var(--text-tertiary);font-style:italic}.st-hs-actions{margin-top:24px;padding-top:16px;border-top:1px solid var(--border);display:flex;align-items:center;gap:12px}.st-hs-followup-btn{padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;cursor:pointer;white-space:nowrap}.st-hs-followup-btn:hover{opacity:.9}.st-hs-followup-btn:disabled{opacity:.5;cursor:not-allowed}.st-hs-actions-hint{font-size:var(--text-xs);color:var(--text-tertiary)}.st-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.st-modal{background:var(--surface);border-radius:var(--radius-md);padding:24px;width:420px;max-width:90vw;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;gap:14px}.st-modal-title{font-size:var(--text-base);font-weight:600;margin:0}.st-modal-label{display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm);color:var(--text-secondary)}.st-modal-required{color:var(--danger)}.st-modal-input{padding:8px 10px;font-size:var(--text-sm);border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}.st-modal-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.st-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.st-modal-cancel{padding:8px 16px;background:none;border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;color:var(--text-secondary)}.st-modal-cancel:hover{background:var(--hover-bg)}.td-layout{height:calc(100vh - var(--header-h));display:flex;flex-direction:column;overflow:hidden}.td-layout-split{flex-direction:row;flex-wrap:wrap}.td-layout-split>.td-header{width:100%;flex-basis:100%;padding-top:.3rem;padding-bottom:.3rem}.td-layout-split>.td-body{width:50%;flex:1 1 50%;overflow-y:auto}.td-layout-split>.td-hs-panel{width:50%;flex:1 1 50%}.td-hs-compare-btn{padding:.25rem .6rem;font-size:.75rem;border:1px solid var(--stroke);border-radius:4px;background:var(--surface);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.td-hs-compare-btn:hover{background:var(--panel);color:var(--text-primary)}.td-hs-panel{display:flex;flex-direction:column;border-left:2px solid var(--stroke);background:var(--surface)}.td-hs-panel-header{display:flex;align-items:center;gap:.75rem;padding:.3rem .75rem;border-bottom:1px solid var(--stroke);font-size:.75rem;font-weight:600;color:var(--text-secondary);flex-shrink:0}.td-hs-open-link{font-size:.7rem;font-weight:400}.td-hs-close{margin-left:auto;background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-secondary);padding:0 .25rem}.td-hs-iframe{flex:1;border:none;width:100%}.td-customer-info-grid{display:flex;gap:1rem;font-size:var(--text-sm)}.td-info-label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.td-info-value{font-weight:600}.td-customer-orders{margin-top:.4rem;display:flex;flex-direction:column;gap:.2rem}.td-customer-order{display:flex;gap:.4rem;align-items:center;font-size:var(--text-xs)}.td-order-code{font-family:var(--mono);font-weight:600}.td-order-link-row{display:flex;align-items:center;gap:.3rem}.td-order-unlink{background:none;border:none;color:var(--text-secondary, #9ca3af);cursor:pointer;font-size:1rem;padding:.1rem .3rem;line-height:1;border-radius:var(--radius-sm, 3px)}.td-order-unlink:hover{color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,transparent)}.td-order-actions{display:flex;gap:.4rem;flex-wrap:wrap}.td-order-chips{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.3rem}.td-order-chip{display:inline-flex;align-items:center;gap:.2rem;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:var(--radius-pill);padding:.15rem .5rem;font-size:var(--text-xs)}.td-order-chip-link{font-family:var(--font-mono, monospace);font-weight:600;background:none;border:none;padding:0;color:var(--accent);cursor:pointer;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .15s}.td-order-chip-link:hover{text-decoration-color:var(--accent)}.td-order-chip-code{font-family:var(--font-mono, monospace);font-weight:600}.td-order-chip-x{background:none;border:none;cursor:pointer;font-size:.85rem;color:var(--text-secondary);padding:0;line-height:1}.td-order-chip-x:hover{color:var(--bad)}.td-order-check-item{display:flex;align-items:flex-start;gap:.4rem;padding:.35rem .5rem;cursor:pointer;font-size:var(--text-sm);transition:background .1s}.td-order-check-item:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.td-order-check-item input[type=checkbox]{margin-top:.15rem;cursor:pointer}.td-order-check-info{display:flex;flex-direction:column;gap:.05rem;min-width:0}.td-order-check-code{font-family:var(--font-mono, monospace);font-weight:600;font-size:var(--text-xs)}.td-order-check-customer{font-size:var(--text-xs);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-order-check-meta{font-size:.65rem;color:var(--text-secondary, #9ca3af)}.td-order-done-btn{display:block;width:100%;padding:.35rem;border:none;border-top:1px solid var(--stroke);background:var(--surface);font-size:var(--text-xs);font-weight:600;cursor:pointer;color:var(--accent)}.td-order-done-btn:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.td-opsboard-card{border:1px solid #c8d7c8;border-radius:var(--radius-md);background:#fcfffb;padding:.5rem .6rem!important}.td-opsboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem .75rem;font-size:var(--text-xs)}.td-opsboard-notes{grid-column:1 / -1}.td-sidebar-notes{padding:.65rem;border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--surface)}.td-sidebar-notes-list{display:flex;flex-direction:column;gap:.5rem}.td-sidebar-note{padding-bottom:.5rem;border-bottom:1px solid color-mix(in srgb,var(--stroke) 60%,transparent)}.td-sidebar-note:last-child{padding-bottom:0;border-bottom:none}.td-sidebar-note-meta{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.15rem;font-size:var(--text-xs);color:var(--muted)}.td-sidebar-note-meta span:first-child{color:var(--ink);font-weight:600}.td-sidebar-note-text{font-size:var(--text-xs);line-height:1.45;color:var(--ink);overflow-wrap:anywhere;max-height:5.5rem;overflow:auto}.td-sidebar-note-text p,.td-sidebar-note-text div{margin:0 0 .25rem}.td-sidebar-note-text p:last-child,.td-sidebar-note-text div:last-child{margin-bottom:0}.td-sidebar-note-text ul,.td-sidebar-note-text ol{margin:.2rem 0 .25rem;padding-left:1.1rem}.td-sidebar-note-text a{color:var(--accent)}.td-sidebar-empty{margin:0;font-size:var(--text-xs);color:var(--muted)}.td-sidebar-note-action{align-self:flex-start;margin-top:.35rem;padding:.2rem .45rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);color:var(--accent);font-size:var(--text-xs);font-weight:600;cursor:pointer}.td-sidebar-note-action:hover{background:var(--hover-bg)}.td-order-cls{color:var(--muted)}.td-order-date{color:var(--muted);margin-left:auto}.td-contact-card{padding:.75rem 0;border-bottom:1px solid var(--stroke)}.td-contact-card>label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.4rem}.td-contact-card-body{display:flex;align-items:flex-start;gap:.6rem}.td-contact-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.td-contact-name{font-weight:600;font-size:.85rem;color:var(--text-primary)}.td-contact-email{font-size:.78rem;color:var(--accent);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-contact-email:hover{text-decoration:underline}.td-contact-phone{font-size:.78rem;color:var(--text-secondary)}.td-header{display:flex;align-items:center;gap:.75rem;padding:.6rem 1.25rem;border-bottom:1px solid var(--stroke);background:var(--panel);flex-shrink:0}.td-back-btn{padding:.25rem .5rem;font-size:var(--text-sm);border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);cursor:pointer;color:var(--muted)}.td-back-btn:hover{background:var(--hover-bg);color:var(--ink)}.td-header-id{font-family:var(--mono);font-weight:700;font-size:var(--text-base)}.td-header-subject{font-size:var(--text-sm);color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.td-header-company,.td-header-contact{font-size:var(--text-sm);color:var(--accent)}.td-header-subject:before,.td-header-company:before,.td-header-contact:before{content:"|";margin-right:.75rem;color:var(--stroke)}.td-header-spacer{flex:1}.td-header-nav{display:flex;align-items:center;gap:.35rem}.td-header-count{font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.td-nav-btn{width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);font-size:1rem;cursor:pointer;color:var(--ink);line-height:1}.td-nav-btn:hover:not(:disabled){background:var(--hover-bg)}.td-nav-btn:disabled{opacity:.3;cursor:default}.td-body{display:flex;flex:1;overflow:hidden}.td-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.td-main>.td-timeline{flex:1;overflow-y:auto;padding:1.5rem 2rem}.td-main>.td-notes-section{flex:0 0 auto;max-height:min(34vh,24rem);overflow-y:auto;padding:.75rem 2rem 1rem}.td-main>.td-compose-section{flex-shrink:0;padding:.75rem 2rem 1rem;border-top:1px solid var(--stroke);background:var(--panel)}.td-timeline{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.td-event{display:flex;gap:.75rem}.td-event-avatar{flex-shrink:0;padding-top:2px}.td-avatar{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-size:.65rem;font-weight:700}.td-avatar-vm{background:color-mix(in srgb,var(--accent-2) 15%,transparent);color:var(--accent-2)}.td-avatar-sm{width:1.5rem;height:1.5rem;font-size:.55rem}.td-event-content{flex:1;min-width:0}.td-event-header{display:flex;align-items:baseline;gap:.5rem;font-size:var(--text-sm)}.td-event-time{font-size:var(--text-xs);color:var(--muted)}.td-event-badge{font-size:var(--text-xs);color:var(--muted);padding:.1rem .35rem;border:1px solid var(--stroke);border-radius:var(--radius-sm)}.td-event-meta{font-size:var(--text-xs);color:var(--muted);margin-top:2px}.td-vm-block{margin-top:.5rem;padding:1rem;background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius-md)}.td-audio{width:100%;max-width:500px;height:36px;margin-bottom:.75rem}.td-transcript h4{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 .5rem}.td-transcript-line{font-size:var(--text-sm);line-height:1.6;margin:0 0 .35rem;color:var(--ink)}.td-transcript-pending{font-size:var(--text-xs);color:var(--muted);font-style:italic;margin:0}.td-notes-section{border-top:1px solid var(--stroke);padding-top:1.5rem}.td-notes-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.td-note-card{display:flex;gap:.75rem;padding:.85rem 1rem;background:color-mix(in srgb,var(--warn) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--warn) 20%,transparent);border-radius:var(--radius-md)}.td-note-avatar{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;min-width:2rem;border-radius:50%;background:color-mix(in srgb,var(--muted) 15%,transparent);color:var(--muted);font-size:.6rem;font-weight:700;letter-spacing:.02em}.td-note-body{flex:1;min-width:0}.td-note-header{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.25rem}.td-note-author{font-size:var(--text-sm);font-weight:600;color:var(--ink)}.td-note-time{font-size:var(--text-xs);color:var(--muted)}.td-note-badge{font-size:.6rem;font-weight:500;color:var(--muted);padding:.1rem .35rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em}.td-note-text{font-size:var(--text-sm);color:var(--ink);line-height:1.5;margin:0;overflow-wrap:anywhere}.td-note-text p,.td-note-text div{margin:0 0 .35rem}.td-note-text p:last-child,.td-note-text div:last-child{margin-bottom:0}.td-note-text ul,.td-note-text ol{margin:.25rem 0 .35rem;padding-left:1.25rem}.td-note-text a{color:var(--accent);text-decoration:underline}.td-note-card-slack{background:color-mix(in srgb,var(--accent) 5%,var(--panel));border-color:color-mix(in srgb,var(--accent) 15%,transparent)}.td-note-thread{margin-top:.75rem;padding-top:.6rem;border-top:1px solid color-mix(in srgb,var(--stroke) 60%,transparent)}.td-note-thread-label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--accent);margin-bottom:.5rem}.td-note-reply{display:flex;gap:.5rem;padding:.4rem 0}.td-note-reply+.td-note-reply{border-top:1px solid color-mix(in srgb,var(--stroke) 30%,transparent)}.td-note-reply-body{flex:1;min-width:0}.td-note-reply-body .td-note-author{font-size:var(--text-xs);margin-right:.4rem}.td-note-reply-body .td-note-time{font-size:.6rem}.td-note-reply-body .td-note-text{font-size:var(--text-xs);margin-top:1px}.td-note-compose{display:flex;flex-direction:column;gap:0}.td-note-compose-body{flex:1}.td-note-input{width:100%;padding:.6rem .75rem;font-size:var(--text-sm);font-family:var(--sans);border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);resize:vertical;transition:border-color .15s}.td-note-input:focus{outline:none;border-color:var(--accent)}.td-note-input::placeholder{color:var(--muted)}.td-compose-email .rte-container,.td-compose-note .rte-container{background:var(--panel)}.td-compose-email .rte-editor,.td-compose-note .rte-editor{max-height:10rem}.td-note-actions{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.td-note-submit{padding:.35rem .9rem;font-size:var(--text-xs);font-weight:600;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer}.td-note-submit:hover{opacity:.9}.td-note-submit:disabled{opacity:.5;cursor:default}.td-note-hint{font-size:var(--text-xs);color:var(--muted)}.td-attach-btn{padding:.35rem .75rem;font-size:var(--text-xs);font-weight:500;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);cursor:pointer}.td-attach-btn:hover{background:var(--hover)}.td-attachments-preview{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.td-attachment-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:var(--text-xs);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--fg)}.td-attachment-remove{background:none;border:none;color:var(--muted);cursor:pointer;font-size:var(--text-xs);padding:0;line-height:1}.td-attachment-remove:hover{color:var(--danger)}.td-wa-thread{display:flex;flex-direction:column;gap:.5rem;padding:1rem 2rem}.td-wa-bubble{max-width:75%;padding:.5rem .75rem;border-radius:.5rem;font-size:.875rem;line-height:1.4;word-wrap:break-word}.td-wa-inbound{align-self:flex-start;background:var(--surface);border:1px solid var(--stroke)}.td-wa-outbound{align-self:flex-end;background:var(--accent-bg, #e7f5e7);border:1px solid var(--accent-stroke, #c3e6c3)}.td-wa-body{white-space:pre-wrap}.td-wa-meta{font-size:.7rem;color:var(--text-secondary);text-align:right;margin-top:.25rem}.td-wa-status{color:var(--text-secondary)}.td-wa-read{color:var(--accent, #2e7d32)}.td-wa-media{margin-bottom:.25rem}.td-wa-img{max-width:100%;max-height:300px;border-radius:.25rem;display:block}.td-wa-audio{width:100%;max-width:280px}.td-wa-video{max-width:100%;max-height:300px;border-radius:.25rem}.td-wa-file-link{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--panel);border:1px solid var(--stroke);border-radius:.25rem;font-size:.8rem;text-decoration:none;color:var(--accent, #2e7d32)}.td-wa-caption{font-size:.85rem;margin-top:.25rem;color:var(--text-secondary)}.td-wa-compose{padding:.75rem 0;border-top:1px solid var(--stroke);margin-top:.5rem}.td-wa-input-row{display:flex;gap:.5rem}.td-wa-input{flex:1;padding:.5rem .75rem;border:1px solid var(--stroke);border-radius:1rem;font-size:.875rem;outline:none}.td-wa-input:focus{border-color:var(--accent)}.td-wa-send-btn{padding:.5rem 1rem;background:var(--accent, #2e7d32);color:#fff;border:none;border-radius:1rem;font-size:.875rem;cursor:pointer}.td-wa-send-btn:disabled{opacity:.5;cursor:not-allowed}.td-wa-error{color:var(--danger, #d32f2f);font-size:.8rem;margin-bottom:.5rem}.td-event-outbound .td-event-content{background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.75rem}.td-email-body{white-space:pre-wrap;font-size:var(--text-sm);line-height:1.4;margin-top:.35rem;max-height:400px;overflow-y:auto}.td-email-body-html{white-space:normal}.td-email-body-html img{max-width:100%;height:auto;border-radius:var(--radius-sm);margin:.25rem 0}.td-email-body-html .td-email-inline-image-link{display:inline-flex;max-width:min(520px,100%);margin:.4rem 0;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel)}.td-email-body-html .td-email-inline-image{display:block;width:auto;max-width:100%;max-height:360px;object-fit:contain;margin:0;cursor:zoom-in}.td-email-body-html video{max-width:100%;height:auto}.td-email-body-html a{color:var(--accent)}.td-email-body-html table{max-width:100%;overflow-x:auto}.td-email-loading{font-size:var(--text-sm);color:var(--muted);padding:1rem 0}.td-email-body-html-clipped{max-height:500px;overflow:hidden}.td-email-see-more{border:none;background:none;color:var(--muted);font-size:var(--text-xs);cursor:pointer;padding:.25rem 0;text-decoration:underline}.td-email-see-more:hover{color:var(--accent)}.td-detail-row{display:flex;gap:.75rem}.td-detail-half{flex:1;min-width:0}.td-detail-half .td-detail-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-email-attachments{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.td-email-attachment{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;font-size:var(--text-xs);border:1px solid var(--stroke);border-radius:var(--radius-sm);color:var(--accent);text-decoration:none;background:var(--panel)}.td-email-attachment:hover{background:var(--surface)}.td-email-attachment-wrap{display:flex;flex-direction:column;gap:.25rem}.td-email-attachment-img{max-width:320px;max-height:240px;border-radius:var(--radius-sm);border:1px solid var(--stroke);object-fit:contain;cursor:pointer}.td-email-attachment-video{max-width:480px;max-height:360px;border-radius:var(--radius-sm);border:1px solid var(--stroke);background:#000}.td-compose-tabs{display:flex;gap:0;border-bottom:1px solid var(--stroke);margin-bottom:.75rem}.td-compose-tab{padding:.4rem 1rem;font-size:var(--text-xs);font-weight:600;border:none;background:none;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.td-compose-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.td-compose-tab-note.active{color:var(--warn-fg-soft);border-bottom-color:var(--warn-fg-soft)}.td-compose-tab-hint{margin-left:auto;align-self:center;font-size:var(--text-xs);color:var(--text-secondary);padding-bottom:.4rem}.td-customer-info-empty{margin:.25rem 0 0;font-size:var(--text-xs);color:var(--text-secondary);font-style:italic}.td-compose-email{display:flex;flex-direction:column;gap:.5rem}.td-compose-note{display:flex;gap:.75rem;align-items:flex-start}.td-compose-recipient{display:flex;align-items:center;gap:.5rem;font-size:var(--text-xs)}.td-compose-label{font-size:var(--text-xs);color:var(--muted);font-weight:600;min-width:20px}.td-compose-reply-all-context{margin-top:-.25rem;padding-left:1.7rem;color:var(--text-secondary);font-size:var(--text-xs)}.td-compose-cc{display:flex;align-items:center;gap:.5rem;font-size:var(--text-xs)}.td-compose-cc-input{flex:1;border:1px solid var(--stroke);border-radius:var(--radius-sm);padding:.2rem .5rem;font-size:var(--text-xs);font-family:var(--mono);color:var(--ink);background:var(--panel)}.td-compose-cc-input:focus{outline:none;border-color:var(--accent)}.td-compose-cc-wrap{flex:1;position:relative}.td-cc-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);z-index:10;max-height:120px;overflow-y:auto;margin-top:2px}.td-cc-suggestion{display:block;width:100%;text-align:left;padding:.3rem .5rem;border:none;background:none;font-size:var(--text-xs);font-family:var(--mono);cursor:pointer;color:var(--ink)}.td-cc-suggestion:hover{background:var(--surface);color:var(--accent)}.td-snooze-options{display:flex;flex-wrap:wrap;gap:.3rem}.td-snooze-btn{padding:.2rem .5rem;font-size:var(--text-xs);border:1px solid var(--stroke);border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--muted)}.td-snooze-btn:hover{border-color:var(--accent);color:var(--accent)}.td-snooze-active{display:flex;flex-direction:column;gap:.3rem}.td-snooze-clear{padding:.2rem .5rem;font-size:var(--text-xs);border:1px solid var(--stroke);border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--warn);align-self:flex-start}.td-snooze-clear:hover{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,transparent)}.td-call-btn{width:100%;padding:.4rem .75rem;font-size:var(--text-xs);font-weight:600;border:1px solid var(--good);border-radius:var(--radius-sm);background:none;color:var(--good);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem}.td-call-btn:hover{background:var(--good);color:#fff}.td-call-btn:disabled{opacity:.4;cursor:not-allowed}.td-reply-all-btn{border:1px solid var(--stroke);border-radius:var(--radius-pill);padding:.1rem .5rem;font-size:var(--text-xs);background:none;cursor:pointer;color:var(--muted);margin-left:auto}.td-reply-all-btn:hover{border-color:var(--accent);color:var(--accent)}.td-compose-chip{background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius-pill);padding:.15rem .6rem;font-size:var(--text-xs);font-family:var(--mono)}.td-sidebar{width:280px;min-width:280px;border-left:1px solid var(--stroke);background:var(--panel);overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1.1rem}.td-sidebar-splitter{flex:0 0 6px;width:6px;cursor:col-resize;background:transparent;position:relative;user-select:none}.td-sidebar-splitter:before{content:"";position:absolute;inset:0 2px;background:var(--stroke);opacity:0;transition:opacity .15s}.td-sidebar-splitter:hover:before,.td-sidebar-splitter-active:before{opacity:1;background:var(--accent)}.td-delivery-followup{background:#f0fdf4;border:1px solid var(--good);border-radius:var(--radius-md);padding:.6rem .75rem;display:flex;flex-direction:column;gap:.3rem}.td-delivery-followup-header{display:flex;align-items:center;gap:.35rem;font-weight:600;font-size:var(--text-sm);color:var(--good)}.td-delivery-followup-icon{font-size:var(--text-md)}.td-delivery-followup-text{font-size:var(--text-xs);color:var(--ink);margin:0;line-height:1.4}.td-delivery-followup-btn{align-self:flex-start;font-size:var(--text-xs);font-weight:500;color:var(--accent);background:none;border:1px solid var(--stroke);border-radius:var(--radius-sm);padding:.2rem .5rem;cursor:pointer;transition:background .15s;margin-top:.15rem}.td-delivery-followup-btn:hover{background:var(--hover-bg)}.dfu-container{display:flex;justify-content:center;align-items:flex-start;padding:2rem 1rem;min-height:calc(100vh - 52px);background:var(--bg)}.dfu-card{width:100%;max-width:480px;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.dfu-header{display:flex;align-items:center;gap:.75rem}.dfu-check{font-size:1.5rem;color:var(--good);flex-shrink:0}.dfu-title{margin:0;font-size:var(--text-lg);color:var(--ink)}.dfu-subtitle{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.dfu-context{border:1px solid var(--border);border-radius:var(--radius-md);padding:.5rem .65rem}.dfu-context-row{display:flex;justify-content:space-between;gap:.5rem;padding:.2rem 0;font-size:var(--text-sm)}.dfu-context-label{color:var(--text-secondary);font-weight:500;flex-shrink:0}.dfu-mono{font-family:var(--mono);font-size:var(--text-xs)}.dfu-compose{border:1px solid var(--stroke);border-radius:var(--radius-md);overflow:hidden}.dfu-compose-header{display:flex;justify-content:space-between;padding:.4rem .6rem;background:var(--surface);border-bottom:1px solid var(--border);font-size:var(--text-xs)}.dfu-compose-from{font-weight:600;color:var(--ink)}.dfu-compose-to{color:var(--text-secondary)}.dfu-textarea{width:100%;border:none;padding:.6rem;font-family:var(--sans);font-size:var(--text-base);line-height:1.5;resize:vertical;outline:none;color:var(--ink)}.dfu-send-btn{width:100%;padding:.75rem;font-size:var(--text-base);font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background .15s}.dfu-send-btn:hover{opacity:.9}.dfu-send-btn:disabled{opacity:.5;cursor:default}.dfu-link{background:none;border:none;color:var(--muted);font-size:var(--text-sm);cursor:pointer;text-align:center;padding:.3rem}.dfu-link:hover{color:var(--accent)}.dfu-sent{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;font-size:var(--text-md);color:var(--good);font-weight:600}.dfu-sent-check{font-size:1.2rem}.dfu-loading{text-align:center;padding:2rem;color:var(--muted);font-size:var(--text-sm)}.dfu-error{color:var(--bad);font-size:var(--text-sm);text-align:center}.td-detail-group{display:flex;flex-direction:column;gap:.25rem}.td-detail-group label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:500}.td-detail-value{font-size:var(--text-sm);color:var(--ink);font-weight:500}.td-detail-editable{background:none;border:none;padding:0;text-align:left;cursor:pointer;color:var(--accent)}.td-detail-editable:hover{text-decoration:underline}.td-owner{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);font-weight:600}.td-status-select{padding:.3rem .5rem;font-size:var(--text-sm);font-weight:600;border:1px solid var(--stroke);border-radius:var(--radius-sm);background:var(--panel);cursor:pointer;width:fit-content}.td-link-dropdown{position:relative}.td-link-input{width:100%;padding:.3rem .5rem;font-size:var(--text-sm);border:1px solid var(--accent);border-radius:var(--radius-sm);outline:none}.td-link-list{position:absolute;top:100%;left:0;right:0;min-width:240px;max-height:200px;overflow-y:auto;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:100}.td-link-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4rem .6rem;font-size:var(--text-sm);border:none;background:none;cursor:pointer;text-align:left}.td-link-item:hover{background:var(--hover-bg)}.td-link-code{font-size:var(--text-xs);color:var(--muted);font-family:var(--mono);flex-shrink:0}.td-link-item .td-order-check-customer{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-link-counts{display:inline-flex;gap:.3rem;flex-shrink:0;margin-left:auto}.td-link-count{font-size:.75rem;font-family:var(--mono);font-weight:600;padding:.1rem .45rem;border-radius:999px;background:var(--surface);border:1px solid var(--stroke);color:var(--ink);white-space:nowrap}.td-link-empty{padding:.5rem;font-size:var(--text-sm);color:var(--muted);text-align:center}@media(max-width:860px){.td-body{flex-direction:column}.td-sidebar{width:100%;min-width:0;border-left:none;border-top:1px solid var(--stroke)}}.st-sidebar-divider{height:1px;background:var(--stroke);margin:.5rem .75rem}.oc-panel{padding:1.5rem 2rem;max-width:800px}.oc-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.oc-header h2{font-size:var(--text-lg);font-weight:600;margin:0}.oc-back-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.3rem .6rem;font-size:var(--text-sm);cursor:pointer;color:var(--fg)}.oc-back-btn:hover{background:var(--hover)}.oc-current{padding:.6rem 1rem;border-radius:var(--radius-sm);background:var(--success-bg, #e8f5e9);border:1px solid var(--success-border, #a5d6a7);font-size:var(--text-sm);margin-bottom:1.5rem}.oc-current-none{background:var(--surface-raised);border-color:var(--border);color:var(--muted)}.oc-section{margin-bottom:1.5rem}.oc-section h3{font-size:var(--text-sm);font-weight:600;margin:0 0 .5rem}.oc-hint{font-size:var(--text-xs);color:var(--muted);margin:0 0 .5rem}.oc-team-list{display:flex;flex-direction:column;gap:.4rem}.oc-team-row{display:flex;gap:.4rem;align-items:center}.oc-input{padding:.35rem .5rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg)}.oc-input-name{width:140px}.oc-input-email{width:200px}.oc-input-phone{width:150px}.oc-input-label{width:100%;margin-top:.3rem}.oc-select{padding:.35rem .5rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg)}.oc-remove-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:var(--text-sm);padding:.2rem .4rem}.oc-remove-btn:hover{color:var(--danger)}.oc-add-btn{margin-top:.5rem;padding:.3rem .7rem;font-size:var(--text-xs);border:1px dashed var(--border);border-radius:var(--radius-sm);background:none;color:var(--muted);cursor:pointer}.oc-add-btn:hover{background:var(--hover);color:var(--fg)}.oc-schedule-card{padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:.5rem;background:var(--surface)}.oc-schedule-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.4rem}.oc-to{font-size:var(--text-xs);color:var(--muted)}.oc-toggle-label{display:flex;align-items:center;gap:.3rem;font-size:var(--text-xs);color:var(--fg);cursor:pointer}.oc-date-label{display:flex;flex-direction:column;gap:.2rem;font-size:var(--text-xs);color:var(--muted)}.oc-save-bar{display:flex;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid var(--stroke)}.oc-save-btn{padding:.4rem 1rem;font-size:var(--text-sm);font-weight:600;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer}.oc-save-btn:hover{opacity:.9}.oc-save-btn:disabled{opacity:.5;cursor:default}.oc-error{font-size:var(--text-xs);color:var(--danger)}.oc-success{font-size:var(--text-xs);color:var(--success, #2e7d32)}.sss-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem 1.5rem;margin-bottom:1.5rem}.sss-loading,.sss-error{padding:1rem 1.5rem;font-size:var(--text-sm);color:var(--text-secondary)}.sss-error{color:var(--bad)}.sss-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.sss-title{font-size:var(--text-md);font-weight:600;margin:0 0 .2rem}.sss-subtitle{margin:0;font-size:var(--text-xs);color:var(--text-secondary)}.sss-health-pill{padding:.3rem .7rem;border-radius:999px;font-size:var(--text-xs);font-weight:500;white-space:nowrap}.sss-health-ok{background:var(--good-bg-soft);color:var(--good-fg-soft)}.sss-health-warn{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.sss-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem;margin-bottom:1rem}.sss-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.8rem 1rem}.sss-card-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.sss-card-value{font-size:var(--text-md);font-weight:600;margin-top:.15rem}.sss-card-meta{font-size:var(--text-xs);color:var(--text-secondary);margin-top:.15rem}.sss-card-sub{font-size:var(--text-xs);color:var(--text-secondary);margin-top:.25rem;word-break:break-all}.sss-section-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin:1.1rem 0 .45rem}.sss-routing{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.sss-step{display:grid;grid-template-columns:1.3rem 1.2rem 5rem 1fr auto;align-items:center;gap:.5rem;padding:.45rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-sm)}.sss-step-live{border-color:var(--good-bg-soft)}.sss-step-skip{opacity:.65}.sss-step-voicemail{background:var(--bg-alt)}.sss-step-num{font-size:var(--text-xs);color:var(--text-secondary);text-align:center}.sss-step-icon{text-align:center}.sss-step-live .sss-step-icon{color:var(--good-fg-soft)}.sss-step-skip .sss-step-icon{color:var(--text-secondary)}.sss-step-kind{font-weight:500}.sss-step-name{color:var(--ink)}.sss-step-target{font-size:var(--text-xs);color:var(--text-secondary);text-align:right}.sss-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.sss-table th{text-align:left;font-weight:500;color:var(--text-secondary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;padding:.4rem .5rem;border-bottom:1px solid var(--border)}.sss-table td{padding:.45rem .5rem;border-bottom:1px solid var(--border)}.sss-table tr:last-child td{border-bottom:none}.sss-mono{font-family:var(--font-mono, monospace);font-size:var(--text-xs)}.sss-ok{color:var(--good-fg-soft)}.sss-warn{color:var(--warn-fg-soft)}.sss-link{color:var(--accent);text-decoration:none}.sss-link:hover{text-decoration:underline}.sss-empty{font-size:var(--text-sm);color:var(--text-secondary);padding:.5rem}.sss-health-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.2rem;font-size:var(--text-sm)}.sss-health-list li{padding:.25rem 0}.sss-health-check{display:inline-block;width:1.2rem;text-align:center;font-weight:600}.sss-health-detail{color:var(--text-secondary);font-size:var(--text-xs)}.sss-other{margin-top:1rem;font-size:var(--text-xs);color:var(--text-secondary)}.sss-other summary{cursor:pointer;padding:.3rem 0}.sss-other-list{list-style:none;padding:.4rem 0 0 1rem;margin:0}.sss-other-list li{padding:.25rem 0}.hda-layout{display:grid;grid-template-columns:240px 1fr;gap:1.5rem;min-height:70vh;padding:1rem 1.5rem 2rem}.hda-sidebar{border-right:1px solid var(--border);padding-right:1rem}.hda-nav{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.2rem}.hda-nav-item{width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-sm);padding:.6rem .75rem;cursor:pointer;display:flex;flex-direction:column;gap:.1rem;color:var(--ink)}.hda-nav-item:hover{background:var(--hover-bg)}.hda-nav-active{background:var(--good-bg-soft);color:var(--good-fg-soft)}.hda-nav-active:hover{background:var(--good-bg-soft)}.hda-nav-label{font-size:var(--text-sm);font-weight:500}.hda-nav-hint{font-size:var(--text-xs);color:var(--text-secondary)}.hda-nav-active .hda-nav-hint{color:var(--good-fg-soft);opacity:.8}.hda-main{min-width:0}.hda-save-bar{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;margin-bottom:1rem;border-bottom:1px solid var(--border)}.hda-save-btn{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:.5rem 1rem;font-size:var(--text-sm);font-weight:500;cursor:pointer}.hda-save-btn:disabled{background:var(--border);cursor:default}.hda-status-ok{color:var(--good-fg-soft);font-size:var(--text-xs)}.hda-status-err{color:var(--bad);font-size:var(--text-xs)}.hda-section{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem 1.5rem;margin-bottom:1rem}.hda-section-header{margin-bottom:1rem}.hda-section-header h3{margin:0 0 .25rem;font-size:var(--text-md);font-weight:600}.hda-hint{margin:0;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5}.hda-select{border:1px solid var(--border);border-radius:var(--radius-sm);padding:.35rem .55rem;font-size:var(--text-sm);background:#fff}.hda-inline-label{font-size:var(--text-xs);color:var(--text-secondary)}.hda-remove-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.25rem .55rem;font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer}.hda-remove-btn:hover{background:var(--bad-bg-soft);color:var(--bad-fg-soft);border-color:var(--bad-fg-soft)}.td-answered-by{margin-top:.25rem;color:var(--text-secondary)}.td-answered-by strong{color:var(--ink)}.td-answered-chan{color:var(--good-fg-soft);font-weight:500}.hda-team-list{list-style:none;padding:0;margin:0 0 .75rem;display:flex;flex-direction:column;gap:.4rem}.hda-team-empty{padding:.75rem;font-size:var(--text-sm);color:var(--text-secondary);background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-sm)}.hda-team-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}.hda-team-info{min-width:0}.hda-team-name{font-size:var(--text-sm);font-weight:500;color:var(--ink)}.hda-team-email{font-size:var(--text-xs);color:var(--text-secondary);font-family:var(--font-mono, monospace)}.hda-team-add{display:flex;align-items:center;gap:.6rem;padding:.5rem 0}.hda-priority-list{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.4rem}.hda-priority-empty{padding:.75rem;font-size:var(--text-sm);color:var(--warn-fg-soft);background:var(--warn-bg-soft);border-radius:var(--radius-sm)}.hda-priority-row{display:grid;grid-template-columns:2rem 1fr auto auto;align-items:center;gap:.75rem;padding:.65rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}.hda-priority-num{text-align:center;font-weight:600;color:var(--text-secondary);font-size:var(--text-sm)}.hda-priority-info{min-width:0}.hda-priority-name{font-size:var(--text-sm);font-weight:500}.hda-priority-email{font-size:var(--text-xs);color:var(--text-secondary)}.hda-priority-readiness{margin-top:.2rem;font-size:var(--text-xs);display:flex;gap:.4rem;align-items:center}.hda-priority-readiness-sep{color:var(--text-tertiary, var(--text-secondary))}.hda-priority-warn{color:var(--warn-fg-soft)}.hda-priority-muted{color:var(--text-secondary)}.hda-priority-arrows{display:flex;flex-direction:column;gap:.15rem}.hda-arrow-btn{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);width:1.7rem;height:1rem;font-size:.6rem;line-height:1;cursor:pointer;color:var(--text-secondary);padding:0}.hda-arrow-btn:disabled{opacity:.3;cursor:default}.hda-arrow-btn:hover:not(:disabled){background:var(--hover-bg);color:var(--ink)}.hda-priority-add{display:flex;gap:.6rem;align-items:center;margin-bottom:1rem}.hda-timeouts{display:flex;gap:1.5rem;align-items:center;margin:.75rem 0 1rem;font-size:var(--text-xs);color:var(--text-secondary)}.hda-timeouts label{display:flex;align-items:center;gap:.4rem}.hda-timeouts input{width:4rem;padding:.25rem .4rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs)}.hda-preview{padding:.9rem 1rem;background:var(--bg-alt);border-radius:var(--radius-sm);border:1px dashed var(--border)}.hda-preview-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:.4rem}.hda-preview-list{margin:0;padding-left:1.2rem;font-size:var(--text-sm);color:var(--ink)}.hda-preview-list li{padding:.15rem 0}@media(max-width:900px){.hda-layout{grid-template-columns:1fr}.hda-sidebar{border-right:none;border-bottom:1px solid var(--border);padding-right:0;padding-bottom:.75rem}.hda-nav{flex-direction:row;flex-wrap:wrap}.hda-nav-item{width:auto}.hda-nav-hint{display:none}}.sse-routing-list{list-style:none;padding:0;margin:0 0 .6rem;display:flex;flex-direction:column;gap:.4rem}.sse-routing-row{display:grid;grid-template-columns:1.5rem auto 1fr auto auto auto;align-items:center;gap:.5rem;padding:.45rem .6rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}.sse-routing-num{font-size:var(--text-xs);color:var(--text-secondary);text-align:center}.sse-routing-arrows{display:flex;flex-direction:column;gap:.15rem}.sse-routing-arrow{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);width:1.3rem;height:.9rem;font-size:.6rem;line-height:1;cursor:pointer;color:var(--text-secondary);padding:0}.sse-routing-arrow:disabled{opacity:.3;cursor:default}.sse-routing-arrow:hover:not(:disabled){background:var(--hover-bg);color:var(--ink)}.sse-routing-timeouts{display:flex;gap:1rem;align-items:center;font-size:var(--text-xs);color:var(--text-secondary);margin-top:.5rem}.sse-routing-timeouts label{display:flex;align-items:center;gap:.35rem}.sse-routing-timeouts input{width:4rem;padding:.25rem .4rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs)}.hd-days-row{display:flex;gap:.35rem;flex-wrap:wrap}.hd-day-chip{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:.3rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;background:var(--panel);color:var(--text-secondary);user-select:none;transition:background .15s,color .15s}.hd-day-chip:hover{background:var(--hover)}.hd-day-active{background:var(--accent);color:#fff;border-color:var(--accent)}.hd-day-active:hover{opacity:.9}@media(max-width:860px){.st-sidebar{width:180px;min-width:180px}.st-channel-label{display:none}.st-ticket-subtitle{max-width:160px}}@media(max-width:560px){.st-layout{flex-direction:column}.st-sidebar{width:100%;min-width:0;flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--stroke);height:auto}.st-sidebar-search{display:none}.st-sidebar-nav{flex-direction:row;padding:.35rem .5rem;gap:.25rem}.st-sidebar-item{white-space:nowrap;padding:.3rem .5rem;font-size:var(--text-xs)}}.ob-panel{display:flex;flex-direction:column;gap:.35rem;padding:.4rem 0;height:calc(100vh - 120px);overflow:hidden;max-width:100%}.ob-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;padding:0 .25rem}.ob-filters{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ob-search{border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.4rem .6rem;font-size:var(--text-sm);width:220px}.ob-filters select{border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.4rem .5rem;font-size:var(--text-sm);background:#fff}.ob-toolbar-btn{background:none;border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.3rem .6rem;font-size:var(--text-xs);color:var(--text-secondary, #6b7280);cursor:pointer;white-space:nowrap}.ob-toolbar-btn:hover{background:var(--surface);color:var(--text-primary, #333)}.ob-colsettings-th-btn{background:none;border:none;cursor:pointer;font-size:.85rem;padding:0;line-height:1;color:var(--text-secondary, #6b7280);opacity:.6;transition:opacity .15s}.ob-colsettings-th-btn:hover{opacity:1}.ob-colsettings-popover{position:fixed;z-index:50;background:#fff;border:1px solid var(--stroke);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:260px;max-height:400px;display:flex;flex-direction:column}.ob-colsettings-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid var(--stroke);font-size:var(--text-sm)}.ob-colsettings-reset{background:none;border:none;color:var(--accent);cursor:pointer;font-size:var(--text-xs)}.ob-colsettings-list{overflow-y:auto;padding:.4rem 0}.ob-colsettings-item{display:flex;align-items:center;justify-content:space-between;padding:.2rem .75rem}.ob-colsettings-item:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.ob-colsettings-arrows{display:flex;gap:.15rem}.ob-colsettings-arrows button{background:none;border:1px solid var(--stroke);border-radius:var(--radius-sm, 3px);cursor:pointer;font-size:.55rem;padding:.1rem .3rem;line-height:1;color:var(--text-secondary, #6b7280)}.ob-colsettings-arrows button:disabled{opacity:.3;cursor:default}.ob-colsettings-arrows button:hover:not(:disabled){background:var(--surface)}.ob-table-outer{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.ob-table-wrap{overflow:auto;border:1px solid var(--stroke);border-radius:var(--radius-md);flex:1;min-height:0;position:relative}.ob-table-wrap::-webkit-scrollbar{width:10px;height:10px}.ob-table-wrap::-webkit-scrollbar-track{background:var(--surface, #f5f5f5);border-radius:5px}.ob-table-wrap::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:5px;border:2px solid var(--surface, #f5f5f5)}.ob-table-wrap::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.ob-table-wrap::-webkit-scrollbar-corner{background:var(--surface, #f5f5f5)}@supports not selector(::-webkit-scrollbar){.ob-table-wrap{scrollbar-width:auto;scrollbar-color:#c1c1c1 var(--surface, #f5f5f5)}}.ob-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:var(--text-sm)}.ob-table thead th{position:sticky;top:0;z-index:8;background:var(--surface);border-bottom:2px solid var(--stroke);padding:.5rem .4rem;text-align:left;font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary, #6b7280);white-space:nowrap;user-select:none}.ob-frozen{position:sticky;z-index:3}.ob-table thead th.ob-frozen{z-index:10;background:var(--surface)}.ob-table tbody td.ob-frozen{background:#fff}.ob-table tbody tr:hover td.ob-frozen{background:color-mix(in srgb,var(--accent) 4%,#fff)}.ob-row-hidden td.ob-frozen{background:#fff}.ob-frozen-last{border-right:2px solid var(--stroke)!important;box-shadow:2px 0 4px #0000000f}.ob-resize-handle{position:absolute;right:0;top:0;bottom:0;width:5px;cursor:col-resize;background:transparent;transition:background .15s}.ob-resize-handle:hover,.ob-resize-handle:active{background:var(--accent);opacity:.4}.ob-table tbody td{border-bottom:1px solid var(--stroke-light, #eee);padding:.15rem .3rem;vertical-align:middle;background:#fff}.ob-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 4%,transparent)}.ob-mono{font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);font-size:var(--text-xs)}.ob-num{text-align:right}.ob-derived{color:var(--text-secondary, #6b7280);font-size:var(--text-xs)}.ob-empty{text-align:center;padding:2rem 1rem!important;color:var(--text-secondary, #6b7280)}.ob-editable-cell{cursor:pointer;padding:.25rem .2rem;border-radius:var(--radius-sm, 3px);min-height:1.6em;transition:background .1s}.ob-editable-cell:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);border-bottom:1px dashed var(--stroke)}.ob-editable-cell:focus{outline:2px solid var(--accent);outline-offset:-1px;border-radius:var(--radius-sm, 3px)}.ob-placeholder{color:var(--text-secondary, #9ca3af);font-style:italic}.ob-cell-input{width:100%;border:1px solid var(--accent);border-radius:var(--radius-sm, 3px);padding:.2rem .3rem;font-size:inherit;font-family:inherit;background:#fff;outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}.ob-cell-input:focus{border-color:var(--accent)}.ob-cell-select{padding:.15rem .2rem;cursor:pointer}.ob-cell-textarea{resize:vertical;min-height:2em}.ob-status-stack{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.15rem}.ob-status-eta{font-size:.65rem;color:var(--text-secondary);font-weight:500;line-height:1.1}.ob-badge{display:inline-block;padding:1px 7px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;border:1px solid transparent}.ob-priority-high{background:color-mix(in srgb,var(--bad) 14%,transparent);color:var(--bad);border-color:color-mix(in srgb,var(--bad) 25%,transparent)}.ob-priority-medium{background:color-mix(in srgb,var(--warn) 14%,transparent);color:var(--warn);border-color:color-mix(in srgb,var(--warn) 25%,transparent)}.ob-priority-low{background:color-mix(in srgb,var(--good) 14%,transparent);color:var(--good);border-color:color-mix(in srgb,var(--good) 25%,transparent)}.ob-status-new{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.ob-status-in-progress{background:#fefce8;color:#a16207;border-color:#fde68a}.ob-status-shipped{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.ob-rstatus-na{background:var(--surface);color:var(--text-secondary, #6b7280)}.ob-rstatus-label-created{background:#eff6ff;color:#1d4ed8}.ob-rstatus-pending{background:#fefce8;color:#a16207}.ob-rstatus-on-the-way{background:#f0fdf4;color:#15803d}.ob-ostatus-preparing{background:#fefce8;color:#a16207}.ob-ostatus-shipped{background:#eff6ff;color:#1d4ed8}.ob-ostatus-delivered{background:#f0fdf4;color:#15803d}.ob-tracking-link{font-family:var(--mono);font-size:var(--text-xs);color:var(--accent);text-decoration:none}.ob-tracking-link:hover{text-decoration:underline}.ob-carrier-label{font-size:var(--text-xs);color:var(--text-secondary)}.ob-unmatched{color:var(--warn);font-style:italic;font-size:var(--text-xs);font-weight:600;cursor:help}.ob-row-unmatched td,.ob-row-unmatched td.ob-frozen{background:color-mix(in srgb,var(--warn) 5%,#fff)!important}.ob-action-cell{padding:0!important;text-align:center}.ob-hide-btn{background:none;border:none;color:var(--text-secondary, #9ca3af);cursor:pointer;font-size:.85rem;padding:.15rem .3rem;line-height:1;opacity:0;transition:opacity .15s}.ob-table tbody tr:hover .ob-hide-btn{opacity:1}.ob-hide-btn:hover{color:var(--warn)}.ob-row-hidden{opacity:.45}.ob-row-hidden .ob-hide-btn{opacity:1;color:var(--warn)}.ob-status-checks{display:flex;align-items:center;gap:.5rem}.ob-check-label{display:flex;align-items:center;gap:.25rem;font-size:var(--text-sm);cursor:pointer;white-space:nowrap}.ob-check-label input[type=checkbox]{margin:0;cursor:pointer}.ob-hidden-toggle{color:var(--text-secondary, #6b7280)}.ob-ticket-badges{display:flex;flex-wrap:wrap;gap:.2rem}.ob-return-linked{display:inline-flex;align-items:center;gap:.3rem}.ob-rma-badge{display:inline-flex;align-items:center;padding:.05rem .35rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);font-family:var(--mono);font-size:.6rem;font-weight:700;text-decoration:none;color:var(--accent)}.ob-rma-badge:hover{background:var(--accent);color:#fff}.ob-return-rollup{font-size:.6rem;color:var(--ink-muted, #6b7d72)}.ob-return-cell{display:inline-flex;align-items:center;gap:.3rem}.ob-start-return{font-size:.6rem;font-weight:700;padding:.05rem .3rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-pill, 999px);background:var(--panel, #fffffb);color:var(--accent, #0e7c66);cursor:pointer;white-space:nowrap}.ob-start-return:hover{background:var(--accent-soft, #e3f1ec)}.ob-ticket-badge{display:inline-flex;align-items:center;gap:.15rem;padding:.05rem .35rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);font-size:.6rem;text-decoration:none;color:var(--accent);cursor:pointer;transition:background .15s}.ob-ticket-badge:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}.ob-ticket-badge-id{font-weight:600}.ob-bottom-bar{display:flex;align-items:center;gap:1rem;padding:.5rem 0 6rem}.ob-footer-count{font-size:var(--text-xs);color:var(--text-secondary, #6b7280)}.ob-hidden-count{font-style:italic}.ob-add-row-bottom{font-size:var(--text-xs);padding:.3rem .7rem}.ob-error{background:color-mix(in srgb,var(--bad) 8%,transparent);color:var(--bad);padding:.5rem .75rem;border-radius:var(--radius-md);font-size:var(--text-sm)}.ob-loading{color:var(--text-secondary, #6b7280);padding:2rem;text-align:center}.ob-modal-backdrop{position:fixed;inset:0;background:#0006;z-index:50;display:flex;align-items:center;justify-content:center}.ob-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:min(520px,92vw);display:flex;flex-direction:column}.ob-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.2rem;border-bottom:1px solid var(--stroke)}.ob-modal-header h3{margin:0;font-size:var(--text-base, 1rem)}.ob-modal-close{background:none;border:none;font-size:1.4rem;cursor:pointer;color:var(--text-secondary, #6b7280);padding:.2rem .4rem;line-height:1}.ob-modal-body{padding:1rem 1.2rem;display:flex;flex-direction:column;gap:.75rem}.ob-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem 1.2rem;border-top:1px solid var(--stroke)}.ob-label{display:flex;flex-direction:column;gap:.25rem;font-size:var(--text-sm);font-weight:500}.ob-input{border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.45rem .6rem;font-size:var(--text-sm)}.ob-import-result p{margin:.25rem 0}.ob-unmatched-list{max-height:150px;overflow-y:auto;font-size:var(--text-sm);margin:.5rem 0;padding-left:1.2rem}.ob-conflict{position:relative;border-left:3px solid var(--warn)!important;background:color-mix(in srgb,var(--warn) 6%,transparent)}.ob-conflict-dot{position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:var(--warn);pointer-events:none}.ob-conflict-text{color:var(--warn)!important;font-weight:700;padding:1px 5px;border-radius:var(--radius-sm, 3px);background:color-mix(in srgb,var(--warn) 10%,transparent)}.ob-classification-tag{display:inline-block;margin-left:.3rem;font-size:.65rem;opacity:.7;font-style:italic}.ob-date-wrap{position:relative}.ob-date-trigger{cursor:pointer}.ob-date-popover-panel{position:fixed;z-index:50;background:#fcfffb;border:1px solid #c8d7c8;border-radius:var(--radius-lg);box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f;padding:.6rem .7rem}.ob-date-popover-panel .rdp-root{--rdp-accent-color: var(--accent);--rdp-today-color: var(--accent);--rdp-day-width: 36px;--rdp-day-height: 36px;margin:0;font-size:var(--text-sm)}.ob-date-popover-panel .rdp-month_caption{font-weight:600;font-size:var(--text-sm);padding:.2rem .3rem .4rem}.ob-date-popover-panel .rdp-button_previous,.ob-date-popover-panel .rdp-button_next{border:1px solid var(--stroke);border-radius:var(--radius-md);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:#fff;cursor:pointer;transition:background .15s}.ob-date-popover-panel .rdp-button_previous:hover,.ob-date-popover-panel .rdp-button_next:hover{background:var(--surface)}.ob-date-popover-panel .rdp-weekday{font-size:.7rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary, #6b7280);letter-spacing:.04em}.ob-date-popover-panel .rdp-day{border-radius:var(--radius-md);transition:background .1s}.ob-date-popover-panel .rdp-today:not(.rdp-selected){border:2px solid var(--accent);border-radius:var(--radius-md);font-weight:700}.ob-date-popover-panel .rdp-selected .rdp-day_button{background:var(--accent);color:#fff;border-radius:var(--radius-md);font-weight:600}.ob-date-popover-actions{display:flex;gap:.4rem;justify-content:flex-end;padding-top:.5rem;border-top:1px solid #e2ece2;margin-top:.4rem}.ob-date-popover-actions button{background:#fff;border:1px solid var(--stroke);border-radius:var(--radius-md);padding:.3rem .7rem;font-size:var(--text-xs);font-weight:500;cursor:pointer;color:var(--ink);transition:background .15s,border-color .15s}.ob-date-popover-actions button:hover{background:var(--surface);border-color:var(--accent)}.ob-order-dropdown-wrap{position:relative}.ob-order-dropdown-input{font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);font-size:var(--text-xs)}.ob-order-dropdown-list{position:fixed;z-index:50;background:var(--panel, #fff);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:280px;overflow-y:auto;margin-top:2px}.ob-order-dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4rem .5rem;border:none;background:none;text-align:left;font-size:var(--text-sm);cursor:pointer;transition:background .1s}.ob-order-dropdown-item:hover,.ob-order-dropdown-item.active{background:color-mix(in srgb,var(--accent) 10%,transparent)}.ob-order-dropdown-code{font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);font-weight:600;font-size:var(--text-xs);white-space:nowrap}.ob-order-dropdown-customer{color:var(--text-secondary, #6b7280);font-size:var(--text-xs);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ob-order-dropdown-meta{font-size:.65rem;color:var(--text-secondary, #9ca3af);white-space:nowrap}.so-autocomplete{position:relative;min-width:0}.so-autocomplete-input{width:100%;padding:.4rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);font-family:var(--mono);font-size:var(--text-sm);font-weight:400;color:var(--ink);background:var(--panel)}.so-autocomplete-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.so-autocomplete-selected{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem;align-items:stretch}.so-autocomplete-selected-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;min-width:0;padding:.4rem .5rem;border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);text-align:left;cursor:pointer}.so-autocomplete-selected-main:hover{border-color:var(--accent);background:var(--hover-bg)}.so-autocomplete-clear{border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--surface);color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;padding:0 .65rem;cursor:pointer}.so-autocomplete-clear:hover{border-color:var(--bad);color:var(--bad)}.so-autocomplete-list{position:fixed;z-index:1200;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:320px;overflow-y:auto;padding:.2rem}.so-autocomplete-item,.so-autocomplete-raw{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;width:100%;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);cursor:pointer;font-family:var(--sans);font-size:var(--text-sm);padding:.42rem .5rem;text-align:left}.so-autocomplete-item:hover,.so-autocomplete-item.active,.so-autocomplete-raw:hover{background:var(--hover-bg)}.so-autocomplete-code{font-family:var(--mono);font-size:var(--text-xs);font-weight:700;white-space:nowrap;color:var(--ink)}.so-autocomplete-customer{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);font-size:var(--text-sm)}.so-autocomplete-meta{color:var(--muted);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.so-autocomplete-empty{padding:.65rem .6rem;color:var(--muted);font-size:var(--text-sm)}.so-autocomplete-raw{border-top:1px solid var(--stroke);border-radius:0;color:var(--text-secondary)}.so-autocomplete-raw span{grid-column:2 / -1;font-family:var(--mono);color:var(--ink)}@keyframes ob-fill-flash{0%{background:color-mix(in srgb,var(--accent) 25%,transparent)}to{background:transparent}}.ob-just-filled{animation:ob-fill-flash 1.2s ease-out}.legal-panel{background:var(--panel);border-top:1px solid var(--border);min-height:calc(100vh - 56px);display:flex;flex-direction:column}.legal-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface)}.legal-header h1{margin:0;font-size:var(--text-xl);color:var(--ink)}.legal-header-actions{margin-left:auto;display:flex;align-items:center;gap:.5rem}.legal-search{min-width:280px;padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);color:var(--ink)}.legal-list-summary{margin:.15rem 0 0;color:var(--muted);font-size:var(--text-sm)}.legal-filter-row{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;border-bottom:1px solid var(--border);flex-wrap:wrap;background:var(--panel)}.legal-view-toggle{display:inline-flex;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.legal-document-toggle{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.35rem}.legal-document-toggle button{display:inline-flex;align-items:center;gap:.35rem;min-height:2rem;padding:.3rem .65rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-weight:700}.legal-document-toggle button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel));color:var(--accent)}.legal-document-toggle span{min-width:1.25rem;padding:0 .35rem;border-radius:999px;background:var(--bg-alt);color:var(--ink);font-size:.78rem;text-align:center}.legal-view-toggle button,.legal-terms-toolbar button{min-height:2rem;padding:.3rem .65rem;border:0;border-right:1px solid var(--border);border-radius:0;background:transparent;color:var(--muted);font-weight:700}.legal-view-toggle button:last-child{border-right:0}.legal-view-toggle button.active,.legal-terms-toolbar button.active{background:var(--accent);color:var(--panel)}.legal-filter-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .7rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);font-size:var(--text-base);cursor:pointer}.legal-filter-btn:hover{background:var(--hover-bg)}.legal-filter-btn.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.legal-filter-count{background:var(--bg-alt);color:var(--ink);padding:0 .4rem;border-radius:var(--radius-pill);font-size:var(--text-sm);min-width:1.4rem;text-align:center}.legal-filter-btn.active .legal-filter-count{background:var(--accent);color:var(--panel)}.legal-terms-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;padding:.55rem 1.25rem;border-bottom:1px solid var(--border);background:var(--panel)}.legal-terms-toolbar button,.legal-terms-toolbar select{border:1px solid var(--border);border-radius:999px;background:var(--surface)}.legal-terms-toolbar select{min-height:2rem;padding:.3rem .65rem;color:var(--ink)}.legal-sort-btn,.finance-sort-btn{display:inline-flex;align-items:center;gap:.35rem;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}.legal-sort-right,.finance-sort-right{justify-content:flex-end}.legal-sort-btn:hover,.legal-sort-btn.active,.finance-sort-btn:hover,.finance-sort-btn.active{color:var(--accent)}.legal-sort-arrow,.finance-sort-btn span:last-child{color:var(--muted);font-size:.72rem}.legal-table-wrap{flex:1;overflow:auto;max-width:100%;padding:0}.legal-table{width:100%;min-width:960px;border-collapse:collapse;font-size:var(--text-base)}.legal-terms-table{table-layout:fixed;width:max-content}.legal-terms-table td{font-variant-numeric:tabular-nums}.legal-terms-table th,.legal-terms-table td{overflow:hidden}.legal-column-menu{position:relative}.legal-column-menu summary{display:inline-flex;align-items:center;min-height:2rem;padding:.3rem .75rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink);font-weight:700;cursor:pointer}.legal-column-menu-popover{position:absolute;top:calc(100% + .35rem);right:0;z-index:8;display:grid;grid-template-columns:repeat(2,minmax(210px,1fr));gap:.65rem .85rem;min-width:520px;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow-md)}.legal-column-menu-popover label{display:flex;align-items:center;gap:.4rem;color:var(--ink);font-size:.84rem;white-space:nowrap}.legal-column-menu-popover button{grid-column:1 / -1;justify-self:start}.legal-column-group{display:grid;gap:.3rem;align-content:start}.legal-column-group-head{color:var(--ink);font-weight:800}.legal-column-group-items{display:grid;gap:.22rem;padding-left:1.45rem}.legal-column-group-items label{color:var(--muted);font-size:.8rem}.legal-resizable-th{position:sticky}.legal-resizable-th>span{display:block;padding-right:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legal-column-resizer{position:absolute;top:0;right:-4px;bottom:0;width:8px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;cursor:col-resize}.legal-column-resizer:hover,.legal-resizing .legal-column-resizer{background:color-mix(in srgb,var(--accent) 18%,transparent)}.legal-term-text-block{display:-webkit-box;overflow:hidden;color:var(--ink);-webkit-box-orient:vertical;-webkit-line-clamp:3;line-height:1.25}.legal-billing-summary{display:grid;gap:.28rem}.legal-billing-summary>span{display:grid;gap:.08rem}.legal-billing-summary strong{color:var(--ink);font-size:.86rem}.legal-billing-summary small{display:-webkit-box;overflow:hidden;color:var(--muted);-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25}.legal-term-link{display:inline;min-height:0;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.legal-term-link:hover{color:var(--accent);text-decoration:underline}.legal-term-review-cell{display:grid;gap:.2rem;max-width:260px}.legal-term-review-cell span,.legal-term-review-cell small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legal-term-review-cell small{color:var(--muted);font-size:.76rem}.legal-term-review-pill{justify-self:start;padding:.12rem .5rem;border-radius:999px;font-size:.72rem;font-weight:800}.legal-term-review-ok{background:var(--good-bg-soft);color:var(--good-fg-soft)}.legal-term-review-warn{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.legal-term-review-bad{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.legal-term-open-actions{display:flex;justify-content:flex-start;min-width:112px}.legal-term-open-actions button{width:100%;min-height:1.8rem;padding:.24rem .55rem;border-radius:6px}.legal-terms-sticky-col{position:sticky;left:0;z-index:2;background:var(--panel);box-shadow:1px 0 0 var(--border)}.legal-table thead .legal-terms-sticky-col{z-index:4;background:var(--surface)}.legal-row:hover .legal-terms-sticky-col{background:var(--hover-bg)}.legal-inline-linker{position:relative;display:inline-flex}.legal-inline-linker>button{min-height:1.7rem;padding:.2rem .55rem;border-radius:6px}.legal-inline-linker-popover{position:absolute;top:calc(100% + .3rem);left:0;z-index:7;width:280px;padding:.55rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow-md)}.legal-inline-linker-popover input{width:100%;margin-bottom:.4rem;padding:.35rem .45rem;border:1px solid var(--border);border-radius:6px}.legal-inline-linker-options{display:grid;gap:.25rem;max-height:220px;overflow:auto}.legal-inline-linker-options button{display:grid;gap:.05rem;justify-items:start;min-height:0;padding:.35rem .45rem;border-radius:6px;text-align:left}.legal-inline-linker-options span{color:var(--muted);font-size:.76rem}.legal-table thead th{position:sticky;top:0;background:var(--surface);text-align:left;font-weight:600;color:var(--muted);padding:.55rem .75rem;border-bottom:1px solid var(--border);z-index:1}.legal-table tbody td{padding:.5rem .75rem;border-bottom:1px solid var(--border);color:var(--ink);vertical-align:top}.legal-row{cursor:pointer}.legal-row:hover{background:var(--hover-bg)}.legal-muted{color:var(--muted);font-size:.85em}.legal-pill{display:inline-block;padding:.15rem .6rem;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:600;border:1px solid transparent}.legal-pill-orphan{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.legal-pill-missing-terms{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.legal-pill-has-edits{background:var(--info-bg-soft);color:var(--info-fg-soft)}.legal-pill-complete{background:var(--good-bg-soft);color:var(--good-fg-soft)}.legal-laser-pill{display:inline-block;padding:.18rem .55rem;border-radius:var(--radius-pill, 999px);font-size:.74rem;font-weight:600;border:1px solid transparent;white-space:nowrap}.legal-laser-pill-exempt{background:var(--bad-bg-soft, #fdecea);color:var(--bad-fg-soft, #c0392b);border-color:color-mix(in srgb,var(--bad-fg-soft, #c0392b) 35%,transparent)}.legal-laser-pill-billed{background:var(--good-bg-soft, #e8f5f0);color:var(--good-fg-soft, #0e7c66)}.legal-laser-pill-unknown{background:transparent;color:var(--muted);border-color:var(--border)}.finance-pay-pill{display:inline-block;margin-top:.18rem;padding:.1rem .45rem;border-radius:var(--radius-pill, 999px);font-size:.68rem;font-weight:600;font-variant-numeric:tabular-nums;border:1px solid transparent;line-height:1.4}.finance-pay-paid{background:var(--good-bg-soft, #e8f5f0);color:var(--good-fg-soft, #0e7c66)}.finance-pay-partial{background:var(--warn-bg-soft, #fff7e0);color:var(--warn-fg-soft, #8a6500)}.finance-pay-unpaid{background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted);border-color:var(--border)}.finance-pay-unpaid-overdue{background:var(--bad-bg-soft, #fdecea);color:var(--bad-fg-soft, #c0392b);border-color:color-mix(in srgb,var(--bad-fg-soft, #c0392b) 35%,transparent)}.finance-pay-lag{display:inline-block;padding:.05rem .35rem;border-radius:var(--radius-pill, 999px);font-size:.75rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--text);background:color-mix(in srgb,var(--muted) 8%,transparent)}.finance-pay-lag-warn{background:var(--warn-bg-soft, #fff7e0);color:var(--warn-fg-soft, #8a6500)}.finance-pay-lag-overdue{background:var(--bad-bg-soft, #fdecea);color:var(--bad-fg-soft, #c0392b);font-weight:600}.legal-panel-detail{height:calc(100vh - 56px)}.legal-detail-header{position:sticky;top:0;z-index:12;align-items:flex-start;padding:.85rem 1.25rem;box-shadow:var(--shadow-sm)}.legal-back-btn{flex:0 0 auto;margin-top:1.55rem}.legal-detail-title{flex:1 1 auto;min-width:0}.legal-detail-eyebrow{margin:0 0 .15rem;color:var(--muted);font-size:var(--text-sm);font-weight:700;text-transform:uppercase}.legal-detail-title h1{margin:0;max-width:42rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legal-detail-file{margin:.1rem 0 0;max-width:52rem;overflow:hidden;color:var(--muted);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap}.legal-detail-meta{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.legal-detail-meta span{max-width:24rem;overflow:hidden;padding:.2rem .55rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--panel);color:var(--muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.legal-detail-actions{flex:0 0 auto;margin-top:1.55rem;flex-wrap:wrap}.legal-detail-actions button{min-width:8.75rem}.legal-detail-layout{flex:1;display:grid;grid-template-columns:minmax(360px,var(--legal-form-width, 45%)) 10px minmax(420px,1fr);gap:0;overflow:hidden;min-height:0}.legal-detail-form{overflow-y:auto;padding:1.25rem}.legal-detail-resizer{position:relative;width:10px;height:100%;padding:0;border:0;border-left:1px solid var(--border);border-right:1px solid var(--border);background:var(--surface);cursor:col-resize}.legal-detail-resizer:before{content:"";position:absolute;top:50%;left:50%;width:2px;height:3rem;border-radius:var(--radius-pill);background:var(--stroke);transform:translate(-50%,-50%)}.legal-detail-resizer:hover,.legal-detail-resizer:focus-visible{background:var(--hover-bg);outline:none}.legal-detail-resizer:hover:before,.legal-detail-resizer:focus-visible:before{background:var(--accent)}.legal-resizing{cursor:col-resize;user-select:none}.legal-detail-pdf{background:var(--bg-alt);display:flex;flex-direction:column;min-width:0}.legal-detail-pdf iframe{flex:1;width:100%;border:0;background:var(--panel)}.legal-pdf-toolbar{display:flex;align-items:center;gap:.75rem;min-height:2.75rem;padding:.55rem .75rem;border-bottom:1px solid var(--border);background:var(--surface)}.legal-pdf-toolbar strong{min-width:0;overflow:hidden;color:var(--ink);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.legal-pdf-toolbar a{margin-left:auto;color:var(--accent);font-size:.78rem;font-weight:700;text-decoration:none;white-space:nowrap}.legal-pdf-state{display:flex;min-height:12rem;align-items:center;justify-content:center;padding:1rem;color:var(--muted);font-size:var(--text-base)}.legal-pdf-error{align-items:flex-start;flex-direction:column;justify-content:flex-start;gap:.45rem;color:var(--bad-fg-soft)}.legal-pdf-error span{max-width:100%;overflow-wrap:anywhere;font-size:var(--text-sm)}.legal-section{margin-bottom:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel)}.legal-section-focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 14%,transparent)}.legal-review-focus{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:.8rem .9rem;border:1px solid var(--accent);border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.legal-review-focus strong{display:block;color:var(--ink);font-size:1rem}.legal-review-focus p{margin:.18rem 0 0;color:var(--muted);font-size:.84rem}.legal-review-focus button{flex:0 0 auto}.legal-billing-brief{display:grid;gap:.75rem;margin-bottom:1rem;padding:.9rem;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.legal-secondary-brief{display:grid;gap:.75rem;margin-bottom:1rem;padding:.9rem;border:1px solid var(--info-bg-soft);border-radius:8px;background:var(--panel)}.legal-secondary-brief h2{margin:0;color:var(--ink);font-size:1rem}.legal-secondary-brief p{margin:0;color:var(--muted);font-size:.84rem}.legal-billing-ready{border-color:var(--good-bg-soft)}.legal-billing-needs_review{border-color:var(--warn-bg-soft)}.legal-billing-blocked{border-color:var(--bad-bg-soft)}.legal-billing-brief-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.legal-billing-brief h2{margin:0;color:var(--ink);font-size:1rem}.legal-billing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.legal-billing-grid div{display:grid;gap:.18rem;min-width:0;padding:.65rem;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.legal-billing-grid span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.legal-billing-grid strong{overflow:hidden;color:var(--ink);font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.legal-billing-grid small,.legal-billing-brief p{margin:0;overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.legal-distributor-brief .legal-billing-grid small{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.35}.legal-distributor-brief>p{white-space:normal;color:var(--muted);font-size:.82rem;line-height:1.4;margin-top:.6rem}.legal-distributor-evidence{margin:.75rem 0 0;padding:.55rem .85rem;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 5%,transparent);color:var(--ink);font-style:italic;font-size:.85rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.legal-billing-flags{display:flex;flex-wrap:wrap;gap:.35rem}.legal-entitlement-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.legal-entitlement-chip{display:grid;gap:.18rem;min-width:0;padding:.55rem .65rem;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.legal-entitlement-chip-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem}.legal-entitlement-chip strong,.legal-entitlement-chip span,.legal-entitlement-chip small,.legal-entitlement-chip p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legal-entitlement-chip strong{color:var(--ink);font-size:.82rem}.legal-entitlement-chip span,.legal-entitlement-chip small,.legal-entitlement-chip p{margin:0;color:var(--muted);font-size:.74rem}.legal-entitlement-review{padding:.1rem .35rem;border-radius:999px;background:var(--bg-alt);font-size:.68rem;font-weight:800;text-transform:capitalize}.legal-entitlement-review-confirmed{background:var(--good-bg-soft);color:var(--good-fg-soft)}.legal-entitlement-review-needs_correction{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.legal-entitlement-review-not_applicable{background:var(--bg-alt);color:var(--muted)}.legal-entitlement-actions{display:flex;flex-wrap:wrap;gap:.25rem;padding-top:.2rem}.legal-entitlement-actions button{padding:.18rem .42rem;min-height:1.55rem;border-radius:6px;font-size:.7rem}.legal-entitlement-ok{border-color:var(--good-bg-soft)}.legal-entitlement-warn{border-color:var(--warn-bg-soft)}.legal-entitlement-info{border-color:var(--info-bg-soft)}.legal-billing-flag{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700}.legal-billing-flag-ok{background:var(--good-bg-soft);color:var(--good-fg-soft)}.legal-billing-flag-warn{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.legal-billing-flag-bad{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.legal-billing-flag-info{background:var(--info-bg-soft);color:var(--info-fg-soft)}.legal-section>summary{cursor:pointer;padding:.65rem .85rem;font-weight:600;color:var(--ink);background:var(--surface);border-radius:var(--radius-md) var(--radius-md) 0 0;list-style:none}.legal-section[open]>summary{border-bottom:1px solid var(--border)}.legal-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem .9rem;padding:.9rem}.legal-field{display:flex;flex-direction:column;gap:.2rem;font-size:.85rem}.legal-field input,.legal-field select,.legal-field textarea{min-height:2.3rem;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;background:var(--panel);color:var(--ink)}.legal-field-dirty input,.legal-field-dirty select,.legal-field-dirty textarea{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.legal-field-label{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.legal-field-audit{font-size:.7rem;color:var(--info-fg-soft);background:var(--info-bg-soft);padding:0 .4rem;border-radius:var(--radius-pill);text-transform:none;letter-spacing:0;font-weight:500}.legal-company-picker{padding:0}.legal-company-current{display:flex;flex-direction:column;gap:.3rem;padding:.85rem .9rem .65rem;margin-bottom:0;border-bottom:1px solid var(--border)}.legal-company-row{display:flex;align-items:center;gap:.5rem;min-height:2.6rem;padding:.45rem .65rem;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-md)}.legal-company-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legal-company-row button{margin-left:auto;flex:0 0 auto}.legal-company-search{position:relative;padding:.75rem .9rem .9rem}.legal-company-search input{width:100%;min-height:2.4rem;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);font:inherit}.legal-company-results{position:absolute;top:calc(100% - .9rem);left:.9rem;right:.9rem;margin-top:4px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:10;max-height:280px;overflow-y:auto}.legal-company-result{display:block;width:100%;text-align:left;padding:.45rem .65rem;border:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.legal-company-result:hover{background:var(--hover-bg)}@media(max-width:1120px){.legal-panel-detail{height:auto;min-height:calc(100vh - 56px)}.legal-detail-header{flex-wrap:wrap}.legal-back-btn,.legal-detail-actions{margin-top:0}.legal-detail-actions{margin-left:0;width:100%;justify-content:flex-end}.legal-detail-layout{display:flex;flex-direction:column;overflow:visible}.legal-detail-form{border-right:0}.legal-detail-resizer{display:none}.legal-detail-pdf{min-height:72vh;border-top:1px solid var(--border)}.legal-billing-grid,.legal-entitlement-strip{grid-template-columns:1fr}.legal-billing-grid strong,.legal-billing-grid small,.legal-entitlement-chip strong,.legal-entitlement-chip span,.legal-entitlement-chip small,.legal-entitlement-chip p,.legal-billing-brief p{white-space:normal}}@media(max-width:720px){.legal-header{align-items:stretch;flex-direction:column}.legal-header-actions{margin-left:0;width:100%}.legal-search{min-width:0;width:100%}.legal-section-grid{grid-template-columns:1fr}.legal-detail-title h1,.legal-detail-file{white-space:normal}.legal-detail-meta span{max-width:100%}}.finance-panel{background:var(--panel);border-top:1px solid var(--border);min-height:calc(100vh - 56px);display:flex;flex-direction:column}.finance-panel-focused{background:var(--surface);padding-bottom:6rem}.finance-focus-header{position:sticky;top:0;z-index:8}.finance-focus-subtitle{margin:.2rem 0 0;color:var(--muted);font-size:.86rem}.finance-focus-eyebrow{margin:0 0 .15rem;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.finance-focus-period{color:var(--muted);font-weight:500;font-size:.85em}.finance-consolidated-chip{display:inline-block;margin-left:.6rem;padding:.18rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;vertical-align:middle;white-space:nowrap}.finance-by-location{padding:0 .65rem .55rem;background:var(--panel);border-top:1px solid var(--border)}.finance-by-location-toggle{appearance:none;background:transparent;border:0;padding:.45rem 0;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.finance-by-location-toggle:hover{color:var(--accent)}.finance-by-location-table{display:grid;gap:.18rem;padding-bottom:.35rem;font-variant-numeric:tabular-nums}.finance-by-location-row{display:grid;grid-template-columns:minmax(0,1.8fr) repeat(5,minmax(0,1fr));gap:.7rem;font-size:.78rem;padding:.4rem 0;border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent);align-items:center}.finance-by-location-row>span:not(:first-child){text-align:right;white-space:nowrap}.finance-by-location-head{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-top:0;align-items:end;line-height:1.15}.finance-by-location-name{font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-doc-switcher{display:grid;gap:.35rem;padding:.55rem .65rem;background:var(--panel);border-bottom:1px solid var(--border)}.finance-doc-switcher-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.45rem;padding:.45rem .6rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;font-size:.78rem;text-align:left;cursor:pointer;transition:background 80ms,border-color 80ms}.finance-doc-switcher-item:hover{border-color:var(--accent)}.finance-doc-switcher-item.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.finance-doc-switcher-title{font-weight:600;color:var(--text);text-transform:capitalize}.finance-doc-switcher-pick{font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);white-space:nowrap;align-self:center}.finance-doc-switcher-file{grid-column:1 / -1;font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-resolve-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.75rem 1rem;margin-top:.6rem;border-radius:8px;border:1px solid var(--border)}.finance-resolve-banner-under{background:color-mix(in srgb,var(--warn-fg-soft, #d97706) 8%,var(--surface));border-color:color-mix(in srgb,var(--warn-fg-soft, #d97706) 35%,var(--border))}.finance-resolve-banner-over{background:color-mix(in srgb,var(--accent) 6%,var(--surface));border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}.finance-resolve-banner-resolved{background:var(--panel);border-color:var(--border);opacity:.85}.finance-resolve-banner-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.finance-resolve-banner-text>strong{font-size:.95rem;color:var(--text)}.finance-resolve-banner-text>span{font-size:.78rem;color:var(--muted)}.finance-resolve-backdrop{position:fixed;inset:0;background:var(--scrim, rgba(19, 34, 27, .55));display:flex;align-items:center;justify-content:center;z-index:200;padding:1.5rem}.finance-resolve-dialog{background:var(--surface);border-radius:10px;box-shadow:0 24px 60px #00000040;width:min(640px,100%);max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.finance-resolve-dialog>header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.9rem 1.1rem;border-bottom:1px solid var(--border)}.finance-resolve-dialog>header strong{display:block;font-size:1rem}.finance-resolve-dialog>header span{display:block;font-size:.8rem;margin-top:.15rem}.finance-resolve-close{background:transparent;border:0;color:var(--muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:.1rem .45rem;border-radius:4px}.finance-resolve-close:hover{background:var(--panel);color:var(--text)}.finance-resolve-body{padding:1rem 1.1rem;overflow:auto;display:flex;flex-direction:column;gap:.85rem}.finance-resolve-prompt{margin:0;font-weight:600;color:var(--text)}.finance-resolve-options{display:grid;gap:.45rem}.finance-resolve-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.65rem;align-items:start;padding:.65rem .7rem;border:1px solid var(--border);border-radius:7px;cursor:pointer;background:var(--panel);transition:border-color 80ms,background 80ms}.finance-resolve-option:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 4%,var(--panel))}.finance-resolve-option input[type=radio]{margin-top:.2rem}.finance-resolve-option strong{display:block;font-size:.85rem;color:var(--text)}.finance-resolve-option small{display:block;font-size:.74rem;color:var(--muted);margin-top:.15rem;line-height:1.35}.finance-resolve-step2-head{display:flex;align-items:center;gap:.75rem;padding-bottom:.35rem;border-bottom:1px solid var(--border)}.finance-resolve-step2-head strong{font-size:.85rem;color:var(--text)}.finance-resolve-back-link{background:transparent;border:0;color:var(--accent);font-size:.78rem;cursor:pointer;padding:0}.finance-resolve-back-link:hover{text-decoration:underline}.finance-resolve-billdelta{font-size:.82rem;color:var(--text)}.finance-resolve-line-preview{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.25rem;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.5rem .6rem;font-variant-numeric:tabular-nums}.finance-resolve-line-preview>li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;font-size:.78rem;align-items:baseline}.finance-resolve-line-preview>li>span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-resolve-line-preview>li>strong{color:var(--text);text-align:right}.finance-resolve-line-total{border-top:1px solid var(--border);padding-top:.3rem;margin-top:.2rem}.finance-resolve-line-total>span,.finance-resolve-line-total>strong{color:var(--text)!important;font-weight:700}.finance-resolve-note{display:flex;flex-direction:column;gap:.3rem;font-size:.78rem;color:var(--text)}.finance-resolve-note em{color:var(--muted);font-style:normal;font-size:.72rem}.finance-resolve-note textarea{min-height:5rem;resize:vertical;font:inherit;padding:.5rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.finance-resolve-step2-actions{display:flex;justify-content:flex-end;gap:.5rem;border-top:1px solid var(--border);padding-top:.7rem}.finance-qb-line-loc{display:inline-block;margin-left:.45rem;padding:.08rem .45rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,var(--panel));color:var(--accent);font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;white-space:nowrap}.finance-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;padding:1rem 1.25rem}.finance-tile{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem}.finance-tile-warn{border-color:color-mix(in srgb,var(--warn) 50%,var(--border));background:color-mix(in srgb,var(--warn) 5%,var(--panel))}.finance-tile-title{font-size:.75rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.finance-tile-value{font-size:1.5rem;font-weight:700;color:var(--ink);margin:.25rem 0}.finance-tile-subtitle{font-size:.78rem;color:var(--muted)}.finance-controls{display:flex;gap:.5rem;align-items:center;padding:.4rem 1.25rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap}.finance-controls label{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;color:var(--muted)}.finance-controls select{padding:.22rem .45rem;font-size:.8rem;border:1px solid var(--border);border-radius:4px;background:var(--panel);color:var(--ink)}.finance-period-multi{position:relative;font-size:.85rem;color:var(--muted)}.finance-period-multi>summary{cursor:pointer;list-style:none;padding:.3rem .6rem;border:1px solid var(--border);border-radius:5px;background:var(--panel);color:var(--ink);user-select:none}.finance-period-multi>summary::-webkit-details-marker{display:none}.finance-period-multi>summary:after{content:" ▾";color:var(--muted)}.finance-period-multi[open]>summary:after{content:" ▴"}.finance-period-multi-panel{position:absolute;top:calc(100% + .25rem);left:0;z-index:50;min-width:14rem;max-height:22rem;overflow-y:auto;padding:.6rem;background:var(--panel);border:1px solid var(--border);border-radius:6px;box-shadow:0 6px 24px #0000001f;display:flex;flex-direction:column;gap:.5rem}.finance-period-multi-actions{display:flex;gap:.4rem;padding-bottom:.4rem;border-bottom:1px solid var(--border)}.finance-period-multi-actions button{font-size:.75rem;padding:.2rem .5rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--ink);cursor:pointer}.finance-period-multi-year{display:flex;flex-direction:column;gap:.2rem}.finance-period-multi-year-toggle{display:inline-flex;align-items:center;gap:.4rem;color:var(--ink);font-size:.85rem;padding-bottom:.2rem;border-bottom:1px dashed var(--border)}.finance-period-multi-month{display:inline-flex;align-items:center;gap:.4rem;padding-left:1.2rem;color:var(--ink);font-size:.85rem;cursor:pointer}.finance-period-picker{display:inline-flex;align-items:center;gap:.3rem}.finance-period-picker input[type=month]{padding:.35rem .5rem;border:1px solid var(--border);border-radius:5px;background:var(--panel);color:var(--ink)}.finance-recon-table tbody td{font-variant-numeric:tabular-nums}.finance-team-table{width:max-content;min-width:100%}.finance-team-table th,.finance-team-table td{white-space:nowrap}.finance-team-table-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.6rem}.finance-team-table-header h2{margin:0}.finance-team-table tbody td{font-variant-numeric:tabular-nums;vertical-align:middle}.finance-team-name-col{position:sticky;left:1.75rem;z-index:1;min-width:220px;max-width:300px;background:var(--panel);box-shadow:1px 0 0 var(--border);white-space:normal}.finance-team-table th:first-child,.finance-team-table .finance-expand-toggle{position:sticky;left:0;z-index:2;background:var(--panel)}.finance-team-table thead th:first-child,.finance-team-table .finance-team-total-row td:first-child{z-index:3;background:var(--surface)}thead .finance-team-name-col,.finance-team-total-row .finance-team-name-col{z-index:2;background:var(--surface)}.finance-team-total-row td{border-top:2px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);font-weight:800;font-variant-numeric:tabular-nums}.finance-team-switch{display:inline-flex;align-items:center;gap:.25rem;padding:.18rem;border:1px solid var(--border);border-radius:6px;background:var(--surface)}.finance-team-switch button{min-height:2rem;padding:.25rem .65rem;border:0;border-radius:4px;background:transparent;color:var(--muted);font-weight:700;cursor:pointer}.finance-team-switch button.active{background:var(--accent);color:var(--panel)}.finance-team-stats{display:inline-flex;align-items:center;flex-wrap:wrap;gap:0;color:var(--muted);font-size:.86rem}.finance-team-stats span{display:inline-flex;align-items:center;min-height:1.7rem;padding:0 .45rem}.finance-team-stats span+span{border-left:1px solid var(--border)}.finance-team-notes{margin-left:auto;color:var(--muted);font-size:.84rem}.finance-team-notes summary{cursor:pointer;font-weight:700}.finance-team-notes div{position:absolute;right:1.25rem;z-index:15;max-width:560px;margin-top:.4rem;padding:.75rem;border:1px solid var(--border);border-radius:6px;background:var(--panel);box-shadow:var(--shadow-md)}.finance-team-notes p{margin:0 0 .35rem}.finance-note{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:.4rem;padding:.4rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:.78rem;line-height:1.3}.finance-note strong{color:var(--ink)}.finance-row-toggle{border:0;background:transparent;color:var(--muted);cursor:pointer;font-family:monospace;padding:0}.finance-row-toggle:hover{color:var(--ink)}.finance-unallocated{padding:1rem 1.25rem}.finance-unallocated h2{margin:0 0 .6rem;font-size:1rem}.finance-payroll-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:.75rem}.finance-payroll-flag{display:inline-flex;align-items:center;margin:0 .25rem .25rem 0;padding:.15rem .35rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--muted);font-size:.75rem;font-weight:600}.finance-delta-up{color:var(--warn-fg-soft);font-weight:700}.finance-delta-down{color:var(--info-fg-soft);font-weight:700}.finance-delta-zero{color:var(--muted)}.finance-pay-cell-up{background:var(--warn-bg-soft);color:var(--warn-fg-soft);font-weight:700}.finance-pay-cell-spike{background:var(--bad-bg-soft);color:var(--bad-fg-soft);font-weight:800}.finance-pay-cell-down{background:var(--info-bg-soft);color:var(--info-fg-soft);font-weight:700}.finance-pay-cell-drop{background:var(--info-bg-soft);color:var(--info-fg-soft);font-weight:800}.finance-pay-cell-empty{background:var(--panel)}.finance-var-ok{color:var(--muted)}.finance-var-underbilled{color:var(--bad-fg-soft);font-weight:600}.finance-var-overbilled{color:var(--info-fg-soft);font-weight:600}.finance-var-muted{color:var(--muted)}.finance-tab-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem 0;border-bottom:1px solid var(--border);background:var(--surface)}.finance-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .85rem;border:0;background:transparent;color:var(--muted);font-weight:600;font-size:.9rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.finance-tab:hover{color:var(--ink)}.finance-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.finance-tab-count{background:var(--bg-alt);color:var(--muted);padding:.05rem .5rem;border-radius:999px;font-size:.72rem;font-weight:600}.finance-tab.active .finance-tab-count{background:color-mix(in srgb,var(--accent) 15%,var(--panel));color:var(--accent)}.finance-reasons{display:inline-flex;gap:.3rem;margin-top:.2rem;flex-wrap:wrap}.finance-reason-pill{font-size:.7rem;padding:.05rem .45rem;border-radius:999px;font-weight:500}.finance-reason-large-variance{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.finance-reason-missing-terms{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-reason-no-qb-link{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.finance-reason-no-contract-link{background:var(--bg-alt);color:var(--muted)}.finance-rollup-table tbody td{font-variant-numeric:tabular-nums;vertical-align:middle}.finance-expand-toggle{color:var(--muted);font-family:monospace;text-align:center;width:1.5rem}.finance-edit-btn{padding:.25rem .55rem;font-size:.78rem}.finance-expanded>td{background:var(--surface);padding:0!important}.finance-expanded-inner{width:100%}.finance-expanded-inner thead th{background:var(--bg-alt);font-size:.78rem;padding:.3rem .6rem}.finance-expanded-inner tbody td{padding:.35rem .6rem;font-size:.85rem}.finance-v2-table tbody td{font-variant-numeric:tabular-nums;vertical-align:middle}.finance-v2-table{min-width:1180px}.finance-v2-table-wrap{min-height:28rem}.finance-v2-focus-wrap{min-height:calc(100vh - 118px);border-top:1px solid var(--border)}.finance-v2-focus-wrap .finance-v2-table{min-width:0}.finance-v2-focus-wrap .finance-v2-table thead,.finance-v2-focus-wrap .finance-v2-table>tbody>tr.legal-row{display:none}.finance-v2-audit-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.4rem;padding:.4rem 1.25rem;border-bottom:1px solid var(--border);background:var(--panel)}.finance-audit-metric{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:0;padding:.3rem .55rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--muted);font-size:.72rem;font-weight:600;line-height:1.2}.finance-audit-metric strong{color:var(--ink);font-size:.9rem;font-variant-numeric:tabular-nums}.finance-audit-metric-ok{border-color:var(--ok-bg-soft)}.finance-audit-metric-info{border-color:var(--info-bg-soft)}.finance-audit-metric-warn{border-color:var(--warn-bg-soft)}.finance-audit-metric-bad{border-color:var(--bad-bg-soft)}.finance-v2-command-center{padding:.4rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface)}.finance-readiness-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.6fr) auto;align-items:center;gap:.6rem;min-width:0;padding:.35rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.finance-readiness-panel>div:first-child{display:flex;flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:.4rem;min-width:0;font-size:.78rem}.finance-readiness-panel strong{font-size:.82rem}.finance-readiness-panel span{color:var(--muted);font-size:.74rem}.finance-readiness-meter{height:.5rem;overflow:hidden;border-radius:999px;background:var(--bg-alt)}.finance-readiness-meter span{display:block;height:100%;border-radius:inherit;background:var(--ok-fg-soft)}.finance-queue-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.45rem}.finance-queue-btn{min-height:3.05rem;padding:.45rem .55rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--ink);cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:.12rem;text-align:left}.finance-queue-btn:hover{background:var(--hover-bg)}.finance-queue-btn.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.finance-queue-btn span{color:var(--muted);font-size:.74rem;font-weight:700;line-height:1.1}.finance-queue-btn strong{font-size:1rem;font-variant-numeric:tabular-nums}.finance-sort-direction{min-height:2.3rem;align-self:end}.finance-next-step{display:grid;gap:.08rem;min-width:9rem}.finance-next-step strong{font-size:.82rem}.finance-next-step span{color:var(--muted);font-size:.72rem}.finance-next-step-ok strong{color:var(--ok-fg-soft)}.finance-next-step-info strong{color:var(--info-fg-soft)}.finance-next-step-warn strong{color:var(--warn-fg-soft)}.finance-next-step-bad strong{color:var(--bad-fg-soft)}.finance-next-step-muted strong{color:var(--muted)}.finance-v2-status,.finance-model-pill,.finance-review-pill{display:inline-flex;align-items:center;padding:.12rem .5rem;border-radius:999px;font-size:.72rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.finance-model-derived{background:var(--bg-alt);color:var(--muted)}.finance-model-reviewed{background:var(--ok-bg-soft);color:var(--ok-fg-soft)}.finance-model-needs_review{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-v2-status-matched{background:var(--ok-bg-soft);color:var(--ok-fg-soft)}.finance-v2-status-underbilled,.finance-v2-status-not_billed{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.finance-v2-status-overbilled{background:var(--info-bg-soft);color:var(--info-fg-soft)}.finance-v2-status-missing_source_data,.finance-v2-status-manual_review_required{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-v2-status-not_yet_due,.finance-review-unreviewed{background:var(--bg-alt);color:var(--muted)}.finance-review-reviewed{background:var(--ok-bg-soft);color:var(--ok-fg-soft)}.finance-review-accepted_variance{background:var(--info-bg-soft);color:var(--info-fg-soft)}.finance-review-needs_contract_update{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-review-waived{background:var(--muted-bg-soft, var(--info-bg-soft));color:var(--muted, var(--info-fg-soft))}.finance-decision-brief{display:grid;gap:.75rem;padding:.9rem 1rem 0;background:var(--surface)}.finance-detail-back{align-self:flex-start;display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.85rem;font-weight:600;color:var(--text);background:var(--surface-alt);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:background .12s ease,border-color .12s ease}.finance-detail-back:hover{background:var(--surface-hover);border-color:var(--accent)}.finance-v2-line-source{display:block;margin-top:.25rem;color:var(--text-muted);font-size:.75rem;font-style:italic}.finance-decision-brief-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.finance-decision-brief-head h3{margin:0;font-size:1rem}.finance-decision-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.finance-decision-card,.finance-trust-card{display:grid;gap:.24rem;min-width:0;padding:.65rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.finance-trust-estimate{border-color:var(--warn-bg-soft);background:color-mix(in srgb,var(--warn-bg-soft) 20%,var(--panel))}.finance-trust-candidate{border-color:var(--good-bg-soft)}.finance-decision-card span,.finance-trust-card span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.finance-decision-card strong,.finance-trust-card strong{font-size:1rem;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-decision-card small,.finance-trust-card small{min-height:1.85rem;color:var(--muted);font-size:.76rem}.finance-decision-card button{justify-self:start;margin-top:.25rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:.72rem;font-weight:700;padding:.2rem .55rem}.finance-decision-card button:hover{border-color:var(--accent);color:var(--accent)}.finance-estimate-warning{display:flex;align-items:baseline;gap:.5rem;padding:.4rem .7rem;border:1px solid var(--warn-bg-soft);border-radius:8px;background:color-mix(in srgb,var(--warn-bg-soft) 18%,var(--panel));color:var(--warn-fg-soft);font-size:.82rem;margin-top:.45rem}.finance-estimate-warning strong{flex-shrink:0}.finance-estimate-warning span{color:var(--muted)}.finance-decision-summary-block{flex:1;min-width:0}.finance-decision-title{margin:0 0 .4rem;font-size:var(--text-xl);font-weight:700;color:var(--ink);letter-spacing:-.01em}.finance-decision-period{color:var(--muted);font-weight:500;font-variant-numeric:tabular-nums}.finance-decision-headline{display:flex;align-items:baseline;gap:.6rem;font-size:1.05rem;color:var(--muted);margin-bottom:.4rem;flex-wrap:wrap}.finance-decision-headline strong{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.finance-decision-gap{font-size:1.25rem;font-weight:600}.finance-decision-gap strong{font-size:1.25rem;font-weight:800}.finance-decision-sep{color:var(--stroke);font-weight:300}.finance-decision-gap-over strong{color:var(--warn)}.finance-decision-gap-under strong{color:var(--bad)}.finance-decision-gap-match strong{color:var(--good)}.finance-decision-gap-unknown strong{color:var(--muted);font-weight:500}.finance-decision-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;font-size:var(--text-sm);color:var(--muted)}.finance-decision-meta-item:before{content:"·";margin-right:.45rem;color:var(--stroke)}.finance-trust-chip{display:inline-flex;align-items:center;padding:.1rem .5rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;border:1px solid var(--stroke);background:var(--surface);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.finance-trust-chip.finance-trust-review,.finance-trust-chip.finance-trust-estimate{border-color:color-mix(in srgb,var(--warn) 40%,transparent);background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-trust-chip.finance-trust-incomplete{border-color:color-mix(in srgb,var(--bad) 40%,transparent);background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.finance-trust-chip.finance-trust-candidate{border-color:color-mix(in srgb,var(--good) 40%,transparent);background:var(--good-bg-soft);color:var(--good-fg-soft)}.finance-flag-menu{position:relative;display:inline-block}.finance-flag-trigger{font-weight:500}.finance-flag-menu-pop{position:absolute;top:calc(100% + 4px);right:0;z-index:20;min-width:12rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:.3rem 0;display:flex;flex-direction:column}.finance-flag-menu-item{background:transparent;border:0;text-align:left;padding:.45rem .85rem;font-size:var(--text-sm);color:var(--ink);cursor:pointer;transition:background 80ms ease}.finance-flag-menu-item:hover{background:var(--hover-bg);color:var(--accent)}.finance-estimate-pill{display:inline-flex;margin-top:.25rem;padding:.12rem .48rem;border-radius:999px;background:var(--warn-bg-soft);color:var(--warn-fg-soft);font-size:.7rem;font-weight:700}.finance-row-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.3rem;align-items:center}.finance-payment-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;border:1px solid var(--border);background:var(--surface);color:var(--ink);line-height:1.4}.finance-payment-chip-glyph{font-size:.78rem;line-height:1}.finance-payment-chip-flag{margin-left:.1rem;font-weight:800}.finance-payment-chip-ok{border-color:var(--status-success-border, var(--border));background:var(--status-success-soft, var(--surface));color:var(--ink)}.finance-payment-chip-onfile{color:var(--good, #0e7c66);font-weight:800}.finance-payment-chip-warn{border-color:var(--warn-fg-soft);background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-payment-chip-mismatch{border-color:var(--bad);background:var(--bad-bg-soft, var(--warn-bg-soft));color:var(--bad)}.finance-payment-chip-empty{border-style:dashed;color:var(--muted)}.finance-payment-summary{display:flex;align-items:flex-start;gap:.75rem;margin-top:.6rem;padding:.55rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--surface);font-size:.85rem;color:var(--ink)}.finance-payment-summary-label{font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding-top:.1rem}.finance-payment-summary-block{display:flex;flex-direction:column;gap:.2rem;flex:1}.finance-payment-summary-line{font-size:.85rem}.finance-payment-summary-key{color:var(--muted);font-weight:600;margin-right:.15rem}.finance-payment-summary-flag{display:inline-flex;align-items:center;gap:.35rem;margin-top:.2rem;padding:.25rem .5rem;border-radius:4px;font-size:.78rem;font-weight:600;background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-payment-summary-mismatch{border-color:var(--bad);background:var(--bad-bg-soft, var(--warn-bg-soft))}.finance-payment-summary-mismatch .finance-payment-summary-flag{background:var(--bad);color:var(--bg, #fff)}.finance-payment-summary-warn{border-color:var(--warn-fg-soft)}.finance-payment-summary-empty{border-style:dashed;color:var(--muted)}.finance-drilldown-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}.finance-contract-review{display:flex;flex-direction:column;min-height:0}.finance-contract-review-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.55rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--border);background:var(--panel)}.finance-contract-lanes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface)}.finance-contract-lane{display:flex;align-items:center;justify-content:space-between;gap:.55rem;min-height:2.8rem;padding:.45rem .65rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--ink);cursor:pointer;text-align:left}.finance-contract-lane:hover,.finance-contract-lane.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.finance-contract-lane span{color:var(--muted);font-size:.74rem;font-weight:800}.finance-contract-lane strong{color:var(--ink);font-size:1rem;font-variant-numeric:tabular-nums}.finance-contract-review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:.8rem;padding:1rem 1.25rem;background:var(--surface)}.finance-contract-review-card{display:grid;gap:.75rem;min-width:0;padding:.85rem;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.finance-contract-review-missing_contract{border-color:var(--bad-bg-soft)}.finance-contract-review-needs_terms,.finance-contract-review-estimate_only{border-color:var(--warn-bg-soft)}.finance-contract-review-missing_inputs{border-color:var(--info-bg-soft)}.finance-contract-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.finance-contract-review-head h3{margin:.35rem 0 .15rem;font-size:1rem}.finance-contract-review-head p,.finance-contract-review-detail{margin:0;color:var(--muted);font-size:.82rem;line-height:1.35}.finance-contract-review-head>strong{color:var(--ink);font-size:1.05rem;font-variant-numeric:tabular-nums;white-space:nowrap}.finance-contract-review-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.finance-contract-review-metrics div,.finance-contract-review-facts div,.finance-contract-review-file{display:grid;gap:.15rem;min-width:0;padding:.55rem .6rem;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.finance-contract-review-facts{display:grid;grid-template-columns:minmax(110px,.65fr) minmax(0,1.35fr);gap:.45rem}.finance-contract-review-metrics span,.finance-contract-review-facts span,.finance-contract-review-file span{color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.finance-contract-review-metrics strong,.finance-contract-review-facts strong,.finance-contract-review-file strong{overflow:hidden;color:var(--ink);font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.finance-contract-decision{display:grid;gap:.18rem;padding:.65rem .7rem;border:1px solid var(--warn-bg-soft);border-radius:8px;background:color-mix(in srgb,var(--warn-bg-soft) 15%,var(--panel))}.finance-contract-decision span,.finance-contract-basis>span{color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.finance-contract-decision strong{color:var(--ink);font-size:.84rem;line-height:1.35}.finance-contract-basis{display:grid;gap:.35rem;padding:.65rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.finance-contract-basis p{margin:0;color:var(--ink);font-size:.8rem;line-height:1.35}.finance-contract-basis small{color:var(--warn-fg-soft);font-size:.76rem;font-weight:700}.finance-contract-review-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.finance-contract-issue-missing_contract{background:var(--bad-bg-soft);color:var(--bad-fg-soft)}.finance-contract-issue-needs_terms,.finance-contract-issue-estimate_only{background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-contract-issue-missing_inputs{background:var(--info-bg-soft);color:var(--info-fg-soft)}.finance-decision-checks{display:flex;flex-wrap:wrap;gap:.35rem}.finance-decision-checks span{border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);font-size:.74rem;padding:.18rem .55rem}.finance-v2-workbench{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(340px,1fr) minmax(340px,1fr);gap:.9rem;padding:.9rem 1rem}.finance-v2-pane{min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--panel);overflow:hidden}.finance-v2-pane-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.75rem .85rem;border-bottom:1px solid var(--border);background:var(--surface)}.finance-v2-pane-head button{flex:0 0 auto}.finance-upload-agreement{display:inline-flex;align-items:center;flex:0 0 auto;min-height:2rem;padding:.35rem .65rem;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer;font-size:.82rem;font-weight:700}.finance-upload-agreement:hover:not(.disabled){border-color:var(--accent);color:var(--accent)}.finance-upload-agreement.disabled{cursor:not-allowed;opacity:.55}.finance-upload-agreement input{display:none}.finance-upload-error{margin:0;padding:.45rem .65rem;border-bottom:1px solid var(--border)}.finance-v2-pane-head h3,.finance-review-panel h3{margin:0;font-size:.9rem}.finance-v2-pane-head strong{font-variant-numeric:tabular-nums;white-space:nowrap}.finance-v2-line-list,.finance-qb-doc-list{display:grid;gap:.55rem;padding:.65rem}.finance-contract-pane{min-height:34rem}.finance-contract-evidence{display:grid;grid-template-rows:auto minmax(22rem,1fr);min-height:30rem}.finance-panel-body{display:flex;flex-direction:column;gap:.85rem;padding:.6rem 1rem 1rem}.finance-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.2rem 0}.finance-section-header h2{margin:0 0 .25rem;font-size:1.15rem;font-weight:700;color:var(--ink)}.finance-section-header .legal-muted{font-size:.82rem;line-height:1.45;max-width:56rem;display:block}.finance-stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem}.finance-stat-box{display:flex;flex-direction:column;gap:.2rem;padding:.7rem .85rem;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.finance-stat-box .label{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.finance-stat-box .value{font-size:1.4rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.1}.finance-filter-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.finance-filter-row input[type=search]{margin-left:auto;min-width:16rem;padding:.4rem .7rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.85rem}.finance-renewal-tier-flow{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--text)}.finance-renewal-tier-flow .arrow{color:var(--muted);font-size:.78rem}.finance-renewal-tier-flow .next{font-weight:700}.finance-renewal-row-overdue{background:color-mix(in srgb,var(--bad) 7%,transparent)}.finance-input-mismatch-banner{display:flex;flex-direction:column;gap:.45rem;padding:.65rem .8rem;margin:.4rem 0 .6rem;border:1px solid color-mix(in srgb,var(--bad) 40%,var(--border));border-radius:7px;background:color-mix(in srgb,var(--bad) 5%,var(--panel))}.finance-input-mismatch-head{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--text)}.finance-input-mismatch-grid{display:grid;grid-template-columns:1fr;gap:.3rem .8rem;font-size:.8rem}.finance-input-mismatch-grid>div{display:flex;flex-direction:column;gap:.15rem}.finance-input-mismatch-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.lfa-root{display:flex;flex-direction:column;gap:.9rem}.lfa-subtabs{margin-bottom:.4rem}.lfa-panel{display:flex;flex-direction:column;gap:1rem}.lfa-panel-header h4{margin:0 0 .3rem;font-size:1rem;font-weight:700;color:var(--ink)}.lfa-panel-header p{margin:0;font-size:.82rem;line-height:1.45}.lfa-meta{margin-top:.3rem!important;font-size:.74rem!important;font-style:italic}.lfa-coming-soon{padding:.85rem;border:1px dashed var(--border);border-radius:8px;background:var(--surface);font-style:italic}.lfa-editor-layout{display:grid;grid-template-columns:1fr 320px;gap:1.2rem}@media(max-width:1100px){.lfa-editor-layout{grid-template-columns:1fr}}.lfa-editor-col{display:flex;flex-direction:column;gap:.7rem}.lfa-field{display:flex;flex-direction:column;gap:.3rem}.lfa-field label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.lfa-field input[type=text],.lfa-field input[type=email]{padding:.5rem .7rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.9rem}.lfa-actions{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.3rem}.lfa-test-row{display:flex;align-items:center;gap:.5rem;margin-top:.3rem;padding-top:.7rem;border-top:1px dashed var(--border)}.lfa-test-row label{font-size:.78rem;font-weight:600;color:var(--muted)}.lfa-test-row input{flex:1;padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:.82rem}.lfa-preview-col h5{margin:0 0 .5rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.lfa-var-list{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.25rem;max-height:14rem;overflow-y:auto;border:1px solid var(--border);border-radius:6px;padding:.4rem .5rem;background:var(--surface)}.lfa-var-list li{display:flex;flex-direction:column;gap:.1rem;padding:.3rem 0;border-bottom:1px dashed var(--border);font-size:.78rem}.lfa-var-list li:last-child{border-bottom:none}.lfa-var-list code{font-size:.74rem;color:var(--accent);font-weight:600}.lfa-var-list span{color:var(--muted)}.lfa-preview-card{border:1px solid var(--border);border-radius:7px;background:var(--panel);overflow:hidden}.lfa-preview-subject{display:flex;flex-direction:column;gap:.2rem;padding:.55rem .7rem;border-bottom:1px solid var(--border);background:var(--surface)}.lfa-preview-label{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.lfa-preview-subject strong{font-size:.85rem}.lfa-preview-frame{padding:.9rem 1rem;font-size:.82rem;line-height:1.5;background:#fff;max-height:22rem;overflow-y:auto}.lfa-preview-frame p{margin:0 0 .55rem}.lfa-preview-frame ul{margin:0 0 .55rem 1.2rem}.lfa-tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.85rem}.lfa-tier-card{display:flex;flex-direction:column;gap:.55rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.lfa-tier-card h5{margin:0 0 .2rem;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}.lfa-tier-card textarea{padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.82rem;font-family:inherit;resize:vertical}.lfa-tier-card input[type=number]{padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.85rem;font-variant-numeric:tabular-nums}.lfa-caps-table{display:flex;flex-direction:column;gap:.35rem;padding:.5rem;border:1px dashed var(--border);border-radius:6px;background:var(--surface)}.lfa-caps-empty{font-size:.78rem;color:var(--muted);font-style:italic}.lfa-caps-row{display:flex;align-items:center;gap:.35rem}.lfa-caps-key{flex:1;min-width:0;padding:.35rem .5rem;border:1px solid var(--border);border-radius:5px;background:var(--panel);font-size:.82rem}.lfa-caps-eq{font-size:.85rem;color:var(--muted);font-weight:600}.lfa-caps-dollar{font-size:.85rem;color:var(--muted)}.lfa-caps-amount{width:5.5rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:5px;background:var(--panel);font-size:.82rem;font-variant-numeric:tabular-nums;text-align:right}.lfa-caps-remove{width:1.6rem;height:1.6rem;border:1px solid var(--border);border-radius:4px;background:var(--panel);color:var(--muted);cursor:pointer;font-size:.9rem;line-height:1}.lfa-caps-remove:hover{background:color-mix(in srgb,var(--bad) 8%,var(--panel));border-color:var(--bad);color:var(--bad)}.lfa-caps-add{margin-top:.25rem;padding-top:.4rem;border-top:1px dashed var(--border)}.lfa-caps-error{font-size:.72rem!important;margin:0!important;padding:0!important}.lfa-caps-hint{margin:.3rem 0 0;font-size:.72rem;color:var(--muted);line-height:1.45}.lfa-caps-hint code{background:var(--surface);padding:.05rem .3rem;border-radius:3px;font-size:.7rem;color:var(--accent)}.lfa-section{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.lfa-section:first-of-type{border-top:0;padding-top:0}.lfa-section h5{margin:0 0 .35rem;font-size:.92rem}.lfa-link-button{background:none;border:0;padding:.2rem 0;color:var(--accent);font-size:.85rem;cursor:pointer;text-align:left}.lfa-link-button:hover{text-decoration:underline}.lfa-pill{display:inline-block;margin-left:.4rem;padding:.05rem .4rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--muted) 12%,var(--panel));color:var(--muted);font-size:.7rem;font-weight:600;text-transform:lowercase}.lfa-num{text-align:right;font-variant-numeric:tabular-nums}.lfa-caps-value{font-size:.82rem;color:var(--ink)}.lfa-caps-editor{margin-top:.6rem}.lfa-caps-editor-label{font-size:.82rem;font-weight:600;margin-bottom:.2rem}.lfa-filter-input{width:100%;padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);font-size:.85rem}.lfa-preview-table-wrap{margin-top:.5rem;max-height:50vh;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-md)}.lfa-preview-table{width:100%;border-collapse:collapse;font-size:.82rem}.lfa-preview-table th,.lfa-preview-table td{padding:.35rem .6rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.lfa-preview-table thead th{position:sticky;top:0;background:var(--panel);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.lfa-row-passthrough{background:color-mix(in srgb,var(--muted) 6%,transparent)}.lfa-history-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem}.lfa-history-list li{display:flex;align-items:center;gap:.6rem;font-size:.8rem;padding:.25rem 0;border-bottom:1px dashed var(--border)}.lfa-history-version{font-weight:600;color:var(--accent);min-width:3rem}.lfa-history-meta{color:var(--muted);font-variant-numeric:tabular-nums}.lfa-history-note{flex:1;font-style:italic;color:var(--muted)}.lfa-preview-tier-card{max-width:28rem}.percent-input{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:5px;background:var(--panel);overflow:hidden}.percent-input input{width:4rem;border:0;background:transparent;padding:.35rem .4rem;font-size:.82rem;font-variant-numeric:tabular-nums;text-align:right}.percent-input input:focus{outline:none}.percent-input-sign{padding:0 .5rem 0 .1rem;color:var(--muted);font-size:.78rem;user-select:none}.customer-picker{position:relative;width:100%;max-width:28rem}.customer-picker-input-wrap{position:relative;display:flex;align-items:center}.customer-picker input{width:100%;padding:.45rem 2rem .45rem .7rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);font-size:.88rem}.customer-picker-clear{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);width:1.4rem;height:1.4rem;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;border-radius:50%}.customer-picker-clear:hover{background:color-mix(in srgb,var(--muted) 15%,transparent)}.customer-picker-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);list-style:none;padding:.2rem 0;max-height:18rem;overflow-y:auto;z-index:50}.customer-picker-dropdown li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .7rem;cursor:pointer;font-size:.85rem}.customer-picker-dropdown li:hover,.customer-picker-dropdown li.selected{background:color-mix(in srgb,var(--accent) 10%,transparent)}.customer-picker-name{color:var(--ink)}.customer-picker-code{color:var(--muted);font-family:var(--mono);font-size:.75rem}.customer-picker-empty,.customer-picker-error{margin-top:.4rem;padding:.4rem .7rem;font-size:.8rem;color:var(--muted)}.customer-picker-error{color:var(--bad)}.lfa-derived{margin-top:.3rem;padding:.55rem .7rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);display:flex;flex-direction:column;gap:.35rem}.lfa-derived-row{display:flex;flex-direction:column;gap:.1rem}.lfa-derived-label{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.lfa-derived-value{font-size:.82rem;color:var(--text);font-variant-numeric:tabular-nums}.lfa-derived-note{margin:.2rem 0 0;font-size:.7rem;color:var(--muted);font-style:italic}.renewal-draft-modal{width:min(1200px,96vw);max-height:94vh;display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}.renewal-draft-modal-head{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.2rem;border-bottom:1px solid var(--border);background:var(--panel)}.renewal-draft-modal-head h3{margin:0 0 .25rem;font-size:1.05rem;font-weight:700;color:var(--ink)}.renewal-draft-modal-head .legal-muted{margin:0;font-size:.82rem}.renewal-draft-modal-body{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:1rem;padding:.9rem 1.2rem;overflow:auto}.renewal-draft-contacts h4{margin:0 0 .5rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.renewal-draft-body-field{flex:1;min-height:0}.renewal-draft-body-field .rte-container{flex:1}.renewal-draft-contact-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.5rem .65rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);margin-bottom:.35rem}.renewal-draft-contact-info{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1;font-size:.85rem}.renewal-draft-contact-info .legal-muted{font-size:.78rem}.renewal-draft-contact-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.renewal-draft-more{margin-top:.35rem}.renewal-draft-more-trigger{width:100%;justify-content:flex-start;font-weight:600;background:transparent;border-style:dashed}.renewal-draft-more-trigger:hover:not(:disabled){background:var(--surface)}.renewal-draft-more-panel{margin-top:.35rem;max-height:14rem;overflow-y:auto;border:1px solid var(--border);border-radius:6px;padding:.3rem;background:var(--surface);display:flex;flex-direction:column;gap:.25rem}.renewal-draft-more-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.4rem .55rem;border-radius:4px;background:var(--panel)}.renewal-draft-contact-toggles{display:flex;gap:.6rem;flex-shrink:0}.renewal-draft-contact-toggles label{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:600;color:var(--text);cursor:pointer}.renewal-draft-add-contact{display:flex;gap:.4rem;margin-top:.5rem}.renewal-draft-add-contact input{flex:1;padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:.82rem}.renewal-draft-compose{display:flex;flex-direction:column;gap:.55rem}.renewal-draft-field{display:flex;flex-direction:column;gap:.25rem}.renewal-draft-field>span{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.renewal-draft-field input,.renewal-draft-field textarea{padding:.45rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.85rem;font-family:inherit;resize:vertical}.renewal-draft-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.85rem 1.2rem;border-top:1px solid var(--border);background:var(--panel)}.renewal-draft-footer-left,.renewal-draft-footer-right{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.renewal-draft-footer-left .legal-muted{font-size:.78rem}@media(max-width:800px){.renewal-draft-modal-body{grid-template-columns:1fr}}.finance-contract-extract{display:grid;gap:.45rem;padding:.7rem;border-bottom:1px solid var(--border);background:var(--surface)}.finance-contract-extract p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.35}.finance-contract-focus{display:grid;gap:.55rem}.finance-contract-focus>div{display:grid;gap:.35rem;padding:.6rem .7rem;border:1px solid var(--border);border-radius:7px;background:var(--panel)}.finance-contract-focus span,.finance-v2-line-math span{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.finance-contract-focus p,.finance-v2-line-math small{margin:0;color:var(--muted);font-size:.76rem;line-height:1.32}.finance-entitlement-context{display:grid;gap:.45rem;margin-top:.2rem;padding-top:.55rem;border-top:1px solid var(--border)}.finance-contract-inherited{color:var(--accent);font-style:normal;font-size:.74rem;margin-left:.4rem}.finance-associated-docs{display:grid;gap:.4rem;margin-top:.6rem;padding-top:.55rem;border-top:1px solid var(--border)}.finance-associated-docs summary{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;cursor:pointer}.finance-associated-docs summary span{color:var(--muted);font-size:.74rem}.finance-associated-docs ul{list-style:none;padding:0;margin:.4rem 0 0;display:grid;gap:.35rem}.finance-associated-doc{border:1px solid var(--border);border-radius:6px;padding:.45rem .55rem;background:var(--panel);display:grid;gap:.25rem}.finance-associated-doc-picked{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.finance-associated-doc em{color:var(--accent);font-style:normal;font-size:.74rem}.finance-associated-doc-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.finance-associated-doc-file{font-size:.74rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.finance-associated-doc-row button{flex-shrink:0;font-size:.72rem;padding:.25rem .55rem}.finance-associated-docs-note{margin-top:.4rem;font-size:.72rem;line-height:1.35}.finance-associated-doc-contrib{font-size:.7rem;color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);padding:.2rem .4rem;border-radius:4px;margin-top:.2rem}.finance-entitlement-context summary{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;cursor:pointer}.finance-entitlement-context summary span{color:var(--muted);font-size:.74rem}.finance-entitlement-card{display:flex;flex-direction:column;gap:.3rem;padding:.55rem .65rem;border:1px solid var(--border);border-radius:7px;background:var(--panel)}.finance-entitlement-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.finance-entitlement-head strong{color:var(--ink);font-size:.85rem;flex:1 1 auto;min-width:0}.finance-entitlement-head span{flex-shrink:0;font-size:.74rem;color:var(--muted);white-space:nowrap}.finance-entitlement-card small{color:var(--muted);font-size:.76rem;line-height:1.4}.finance-entitlement-card blockquote{margin:0;padding:.3rem .5rem;border-left:2px solid var(--border);font-size:.74rem;line-height:1.4;color:var(--ink-soft, var(--muted));background:color-mix(in srgb,var(--border) 25%,transparent);border-radius:0 4px 4px 0}.finance-entitlement-card blockquote cite{font-style:normal;font-weight:600;color:var(--muted)}.finance-entitlement-card p{margin:0;font-size:.74rem;line-height:1.4;color:var(--muted)}.finance-entitlement-card em{font-style:normal;font-size:.74rem;color:var(--bad);font-weight:600}.finance-entitlement-paid_separately{border-color:var(--warn-bg-soft)}.finance-entitlement-warning{display:grid;gap:.12rem;padding:.5rem .55rem;border:1px solid var(--warn-bg-soft);border-radius:7px;background:var(--warn-bg-soft);color:var(--warn-fg-soft)}.finance-entitlement-warning strong,.finance-entitlement-warning span{font-size:.76rem}.finance-contract-pdf{position:relative;min-height:22rem;background:var(--bg-alt);display:flex}.finance-pdf-fullscreen{position:absolute;top:.5rem;right:.5rem;z-index:2;font-size:.72rem;padding:.3rem .55rem;background:var(--panel);border:1px solid var(--border);border-radius:5px;cursor:pointer;color:var(--ink);box-shadow:0 1px 3px color-mix(in srgb,var(--ink) 12%,transparent)}.finance-pdf-fullscreen:hover{background:color-mix(in srgb,var(--accent) 8%,var(--panel));border-color:var(--accent)}.finance-contract-pdf iframe{border:0;flex:1;width:100%;min-height:22rem;background:var(--panel)}.finance-pdf-error{color:var(--bad-fg-soft)}.finance-v2-line-card,.finance-qb-doc{border:1px solid var(--border);border-radius:7px;background:var(--surface);overflow:hidden}.finance-v2-line-main,.finance-qb-doc-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.55rem .65rem}.finance-qb-doc-head{grid-template-columns:minmax(0,1fr) auto;align-items:start}.finance-qb-doc-title{display:flex;flex-direction:column;gap:.15rem;min-width:0}.finance-qb-doc-title>span{font-size:.78rem}.finance-qb-doc-chips{display:flex;flex-wrap:wrap;gap:.35rem;padding:0 .65rem .55rem;border-bottom:1px solid var(--border)}.finance-qb-doc-chips:empty{display:none}.finance-v2-line-calc,.finance-v2-required,.finance-v2-empty-evidence{padding:0 .65rem .5rem;color:var(--muted);font-size:.78rem}.finance-v2-line-math{display:grid;grid-template-columns:1fr;gap:.4rem;padding:0 .65rem .55rem}.finance-v2-line-math>div{display:grid;gap:.12rem;min-width:0}.finance-v2-line-math strong{color:var(--ink);font-size:.8rem;line-height:1.25}.finance-v2-empty-evidence{display:grid;gap:.5rem;padding:.75rem}.finance-v2-required{color:var(--warn-fg-soft);font-weight:600}.finance-inline-flags{display:flex;flex-wrap:wrap;gap:.3rem;padding:0 .65rem .55rem}.finance-qb-line .finance-inline-flags{padding:.35rem 0 0}.finance-qb-link-tools{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.65rem;border-bottom:1px solid var(--border);background:var(--surface)}.finance-qb-doc-right{display:inline-flex;align-items:center;gap:.5rem}.finance-qb-refresh-btn{padding:.25rem .55rem!important;font-size:.72rem!important;font-weight:500!important}.finance-qb-delete-btn{color:var(--danger-fg, var(--warn-fg-soft))!important;border-color:var(--danger-fg, var(--warn-fg-soft))!important}.finance-qb-map-picker{border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:.65rem;margin:0 .65rem .65rem;display:flex;flex-direction:column;gap:.55rem}.finance-qb-map-row{display:flex;gap:.5rem;align-items:center}.finance-qb-map-row input{flex:1;padding:.4rem .55rem;border:1px solid var(--border);border-radius:5px;background:var(--surface);font-size:.85rem;font-family:inherit}.finance-qb-map-results{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem;max-height:18rem;overflow-y:auto}.finance-qb-map-results li{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .55rem;border:1px solid var(--border);border-radius:5px}.finance-qb-map-result-info{display:flex;flex-direction:column;min-width:0}.finance-qb-map-result-info>span{font-size:.72rem}.finance-coverage-view{display:flex;flex-direction:column;gap:.65rem;padding:.65rem}.finance-coverage-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.finance-coverage-head h3{margin:0 0 .25rem}.finance-coverage-controls{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.finance-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .7rem;border:1px solid var(--stroke);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);font-size:var(--text-sm);font-family:inherit;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.finance-chip:hover{background:var(--hover-bg);border-color:var(--accent)}.finance-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.finance-chip strong{font-weight:700;font-variant-numeric:tabular-nums}.finance-chip.active strong{color:#fff}.finance-chip-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:.4rem;background:var(--warn-bg-soft, #d4a017);vertical-align:middle}.finance-chip.active .finance-chip-dot{background:#fff}.finance-qbmap-list{display:flex;flex-direction:column;gap:.55rem}.finance-qbmap-parents{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding-bottom:.85rem;border-bottom:1px dashed var(--border)}.finance-qbmap-parents-head{font-size:.78rem;font-weight:600;color:var(--ink);padding:.15rem .1rem .35rem}.finance-qbmap-parent{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:center;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:8px;padding:.65rem .8rem;background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.finance-qbmap-parent.rolled{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.finance-qbmap-parent-main{display:flex;flex-direction:column;gap:.35rem}.finance-qbmap-parent-name{display:flex;align-items:baseline;gap:.5rem}.finance-qbmap-parent-name strong{font-size:.95rem}.finance-qbmap-parent-meta{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.78rem;color:var(--muted)}.finance-qbmap-parent-children{display:flex;gap:.35rem;flex-wrap:wrap}.finance-qbmap-rollup-toggle{display:inline-flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:500;cursor:pointer;user-select:none;padding:.4rem .6rem;border-radius:6px;background:var(--surface);border:1px solid var(--border);color:var(--ink)}.finance-qbmap-rollup-toggle input[type=checkbox]{accent-color:var(--accent);cursor:pointer}.finance-qbmap-rolled-badge{display:inline-flex;align-items:center;font-size:.74rem;color:color-mix(in srgb,var(--accent) 70%,var(--ink));font-weight:500}.finance-qbmap-rollup-needs-qb{align-self:start;font-size:.82rem}.finance-qbmap-parent-picker{grid-column:1 / -1;margin-top:.5rem}.finance-qbmap-parent--rolled{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.finance-qbmap-parent--split{background:var(--surface);border-color:var(--border)}.finance-qbmap-parent--needs-decision{background:color-mix(in srgb,var(--warn-bg-soft, #d4a017) 6%,var(--surface));border-color:color-mix(in srgb,var(--warn-bg-soft, #d4a017) 35%,var(--border))}.finance-qbmap-parent-action{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;min-width:12rem}.finance-qbmap-parent-status{font-size:.82rem;font-weight:600;padding:.3rem .55rem;border-radius:6px}.finance-qbmap-parent-status--rolled{background:color-mix(in srgb,var(--accent) 18%,var(--panel));color:color-mix(in srgb,var(--accent) 80%,var(--ink))}.finance-qbmap-parent-status--split{background:var(--panel);color:var(--muted);border:1px solid var(--border)}.finance-qbmap-parent-choose{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}.finance-qbmap-rollup-primary{background:color-mix(in srgb,var(--accent) 15%,var(--surface));border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.finance-qbmap-link-button{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:.74rem;padding:.15rem .3rem;text-decoration:underline}.finance-qbmap-link-button:hover{color:var(--ink)}.finance-qbmap-link-button:disabled{color:var(--border);cursor:not-allowed;text-decoration:none}.finance-qbmap-row{border:1px solid var(--border);border-radius:8px;padding:.7rem .85rem;background:var(--surface);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1rem}.finance-qbmap-no_cmp_mapping,.finance-qbmap-cmp_has_no_qb_customer{border-left:3px solid var(--bad, #c0392b)}.finance-qbmap-cmp_has_no_billing_contract{border-left:3px solid var(--warn-bg-soft, #d4a017)}.finance-qbmap-qb_customer_inactive_in_period{border-left:3px solid color-mix(in srgb,var(--accent) 60%,var(--warn-bg-soft, #d4a017))}.finance-qbmap-ok{border-left:3px solid var(--accent, #0e7c66)}.finance-qbmap-info{display:flex;flex-direction:column;gap:.3rem;min-width:0}.finance-qbmap-header{display:flex;align-items:baseline;gap:.6rem}.finance-qbmap-header strong{font-size:.92rem}.finance-qbmap-meta{display:flex;gap:.8rem;font-size:.72rem;color:var(--muted);flex-wrap:wrap}.finance-qbmap-fecs{display:flex;gap:.35rem;flex-wrap:wrap}.finance-qbmap-fec{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;padding:.25rem .45rem;border-radius:5px;background:var(--surface);border:1px solid var(--border);color:var(--ink)}.finance-qbmap-fec strong{font-weight:600}.finance-qbmap-fec em{font-style:normal;color:var(--muted)}.finance-qbmap-qb{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.15rem}.finance-qbmap-qb-pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;padding:.25rem .45rem;border-radius:5px;background:color-mix(in srgb,var(--accent) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--ink)}.finance-qbmap-qb-pill.inactive{background:color-mix(in srgb,var(--warn-bg-soft, #d4a017) 12%,var(--panel));border-color:color-mix(in srgb,var(--warn-bg-soft, #d4a017) 50%,var(--border))}.finance-qbmap-qb-pill em{font-style:normal;color:var(--muted)}.finance-qbmap-detach{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:.85rem;padding:0 .2rem;line-height:1}.finance-qbmap-detach:hover{color:var(--bad, #c0392b)}.finance-qbmap-action{display:flex;align-items:flex-start}.finance-qbmap-picker{grid-column:1 / -1;border-top:1px dashed var(--border);padding-top:.55rem;display:flex;flex-direction:column;gap:.4rem}.finance-qbmap-picker input[type=text]{padding:.4rem .5rem;border:1px solid var(--border);border-radius:5px;font-size:.84rem;width:100%}.finance-qbmap-picker ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.finance-qbmap-picker li{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .55rem;border:1px solid var(--border);border-radius:5px}.finance-qbmap-picker li>div{display:flex;flex-direction:column;min-width:0}.finance-qbmap-picker li span.legal-muted{font-size:.72rem}.finance-coverage-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:7px;overflow:hidden;font-size:.85rem}.finance-coverage-table th,.finance-coverage-table td{text-align:left;padding:.55rem .65rem;border-bottom:1px solid var(--border);vertical-align:top}.finance-coverage-table thead th{background:var(--surface-alt, var(--surface));font-weight:600;font-size:.78rem;color:var(--muted)}.finance-coverage-table tr:last-child td{border-bottom:none}.finance-coverage-table .num{text-align:right}.finance-qb-map-result-current{border-color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.finance-qb-map-result-conflict{border-color:var(--warn-bg-soft, var(--border))!important;background:color-mix(in srgb,var(--warn-bg-soft, var(--border)) 25%,var(--panel))}.create-qb-modal{width:min(880px,95vw);max-height:92vh;display:flex;flex-direction:column;padding:0;overflow:hidden}.create-qb-modal-head{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.2rem;border-bottom:1px solid var(--border);background:var(--panel)}.create-qb-modal-head h3{margin:0 0 .25rem;font-size:1.05rem;font-weight:700;color:var(--ink)}.create-qb-modal-head p{margin:0;font-size:.82rem}.create-qb-modal-body{display:flex;flex-direction:column;gap:1rem;padding:.9rem 1.2rem;overflow-y:auto}.create-qb-modal-body section{display:flex;flex-direction:column;gap:.55rem}.create-qb-modal-body h4{margin:0;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.create-qb-invoice-preview{border:1px solid var(--border);border-radius:7px;overflow:hidden;background:var(--panel)}.create-qb-invoice-table{width:100%;border-collapse:collapse;font-size:.85rem}.create-qb-invoice-table thead th{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface);text-align:left;padding:.5rem .7rem;border-bottom:1px solid var(--border)}.create-qb-invoice-table thead th.num,.create-qb-invoice-table tbody td.num,.create-qb-invoice-table tfoot td.num{text-align:right;font-variant-numeric:tabular-nums}.create-qb-invoice-table tbody td{padding:.55rem .7rem;vertical-align:top;border-bottom:1px dashed var(--border)}.create-qb-invoice-table tbody tr:last-child td{border-bottom:none}.create-qb-invoice-table tbody tr.create-qb-line-excluded{opacity:.4}.create-qb-invoice-table tbody tr.create-qb-line-excluded .create-qb-desc-input{text-decoration:line-through}.create-qb-desc-input{width:100%;padding:.4rem .55rem;border:1px solid var(--border);border-radius:5px;background:var(--surface);font-size:.82rem;font-family:inherit;line-height:1.4;resize:vertical}.create-qb-line-meta{margin-top:.25rem;font-size:.7rem}.create-qb-line-unit{font-size:.7rem}.create-qb-invoice-table tfoot td{padding:.6rem .7rem;border-top:1px solid var(--border);background:var(--surface);font-weight:700;font-size:.95rem}.create-qb-rate-note{margin:.3rem 0 0;font-size:.7rem;font-style:italic}.create-qb-template{display:grid;grid-template-columns:1fr;gap:.3rem;padding:.6rem .75rem;border:1px solid var(--border);border-radius:7px;background:var(--surface);font-size:.85rem}.create-qb-template>div{display:grid;grid-template-columns:9rem 1fr;gap:.55rem}.create-qb-template-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.create-qb-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.create-qb-field{display:flex;flex-direction:column;gap:.25rem}.create-qb-field-wide{grid-column:1 / -1}.create-qb-field>span{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.create-qb-field input{padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:.85rem}.create-qb-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.85rem 1.2rem;border-top:1px solid var(--border);background:var(--panel)}.finance-qb-candidates{display:grid;gap:.4rem;max-height:14rem;overflow:auto;padding:.55rem .65rem;border-bottom:1px solid var(--border);background:var(--panel)}.finance-qb-section-head{padding:.5rem .75rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--panel);border-bottom:1px solid var(--border)}.finance-qb-customer-pill{display:inline-flex;align-items:center;gap:.4rem;max-width:22rem}.finance-qb-customer-name{font-size:.78rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.finance-qb-candidate{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.6rem;align-items:center;width:100%;padding:.5rem .55rem;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--ink);cursor:pointer;text-align:left}.finance-qb-candidate:hover:not(:disabled){border-color:var(--accent)}.finance-qb-candidate:disabled{cursor:default;opacity:.72}.finance-qb-candidate span:first-child{display:grid;gap:.08rem;min-width:0}.finance-qb-candidate small{overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.finance-qb-candidate em{color:var(--accent);font-size:.74rem;font-style:normal;font-weight:800}.finance-inline-flags button{border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);cursor:pointer;font-size:.7rem;font-weight:700;padding:.16rem .5rem}.finance-inline-flags button:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.finance-v2-line-grid,.finance-qb-line{display:grid;grid-template-columns:minmax(0,1.4fr) auto auto auto;gap:.65rem;align-items:start;padding:.5rem .65rem;border-top:1px solid var(--border);font-size:.8rem;font-variant-numeric:tabular-nums}.finance-v2-line-grid-header{padding:.4rem .65rem;background:var(--panel);font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.finance-v2-line-grid-header>span{font-weight:600}.finance-v2-usage-cell{display:grid;gap:.15rem;min-width:0}.finance-v2-usage-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:baseline}.finance-v2-usage-label{color:var(--muted);font-size:.74rem}.finance-v2-usage-row strong{text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.finance-v2-usage-eq{font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--text);line-height:1.35}.finance-v2-usage-eq>span{color:var(--muted)}.finance-v2-usage-eq>strong{color:var(--text);font-weight:700}.finance-v2-actual-cell{display:grid;gap:.1rem;justify-items:end}.finance-v2-actual-source{font-size:.7rem;color:var(--muted);white-space:nowrap}.finance-qb-line-header{padding:.4rem .65rem;background:var(--panel);font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.finance-qb-line-header>span{font-weight:600}.finance-qb-line-header>div{font-weight:600}.finance-v2-line-grid span:not(:first-child),.finance-qb-line>span,.finance-qb-line>strong{text-align:right;white-space:nowrap}.finance-qb-line div{min-width:0}.finance-qb-line div span{display:block;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-review-panel{display:grid;grid-template-columns:minmax(200px,.7fr) minmax(260px,.95fr) minmax(300px,1.1fr) auto;gap:.8rem;align-items:center;padding:.85rem 1rem 1rem;border-top:1px solid var(--border);background:var(--surface)}.finance-review-panel p{margin:.25rem 0 0;color:var(--muted);font-size:.8rem}.finance-feedback-fields{display:grid;grid-template-columns:minmax(140px,.75fr) minmax(180px,1fr);gap:.55rem}.finance-feedback-fields label{display:grid;gap:.25rem;color:var(--muted);font-size:.74rem;font-weight:700}.finance-feedback-fields select,.finance-feedback-fields input{min-width:0;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--ink);padding:.45rem .55rem;font:inherit;font-size:.82rem}.finance-review-panel textarea{min-height:4rem;resize:vertical;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--ink);padding:.55rem .65rem;font:inherit}.finance-review-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}@media(max-width:980px){.finance-v2-command-center{grid-template-columns:1fr}.finance-queue-row,.finance-contract-lanes,.finance-decision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-v2-workbench,.finance-review-panel{grid-template-columns:1fr}.finance-review-actions{justify-content:flex-start}}@media(max-width:720px){.finance-controls{align-items:stretch;flex-direction:column}.finance-controls label,.finance-controls select,.finance-controls .legal-search,.finance-sort-direction{width:100%}.finance-controls label{align-items:stretch;flex-direction:column}.finance-contract-lanes,.finance-contract-review-grid,.finance-contract-review-metrics,.finance-contract-review-facts,.finance-decision-grid{grid-template-columns:1fr}.finance-estimate-warning{align-items:flex-start;flex-direction:column}.finance-drilldown-actions{justify-content:flex-start}}.finance-drawer-scrim{position:fixed;inset:0;background:var(--scrim);z-index:100}.finance-drawer{position:fixed;top:0;right:0;bottom:0;width:min(480px,100vw);background:var(--panel);border-left:1px solid var(--border);box-shadow:-4px 0 16px #00000014;z-index:101;display:flex;flex-direction:column;animation:finance-drawer-in .18s ease-out}@keyframes finance-drawer-in{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.finance-drawer-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:.75rem;background:var(--surface)}.finance-drawer-header>div{flex:1}.finance-drawer-body{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.85rem}.finance-drawer-footer{padding:.85rem 1.25rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:.5rem;background:var(--surface)}.qb-entity-link{display:inline-flex;align-items:center;gap:.3rem;color:var(--accent);text-decoration:none;font-weight:600;white-space:nowrap}.qb-entity-link:hover{text-decoration:underline}.qb-entity-link:hover .qb-entity-link-icon{opacity:1}.qb-entity-link-icon{opacity:.55;transition:opacity .12s ease;flex-shrink:0}.qb-entity-link-empty{color:var(--muted)}.qb-context-empty{color:var(--muted);font-style:italic;margin:.5rem 0}.qb-tab.qb-tab-empty{opacity:.42;cursor:not-allowed;font-style:italic}.qb-tab.qb-tab-empty:hover{opacity:.42}.qb-tab-count.qb-tab-count-empty{background:transparent;color:var(--muted);font-weight:500;padding:0 3px;font-variant-numeric:tabular-nums}.qb-th-sortable{padding:0}.qb-th-sort-btn{display:inline-flex;align-items:center;gap:.35rem;width:100%;padding:.4rem .55rem;background:transparent;border:0;font:inherit;color:inherit;text-align:inherit;cursor:pointer;letter-spacing:inherit;transition:color .1s ease}.qb-th-sortable.num .qb-th-sort-btn{justify-content:flex-end}.qb-th-sort-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:3px}.qb-th-sort-label{white-space:nowrap}.qb-th-sort-chevrons{display:inline-flex;flex-direction:column;gap:1px;color:var(--muted);flex-shrink:0;opacity:0;transition:opacity .12s ease,color .12s ease}.qb-th-sort-btn:hover .qb-th-sort-chevrons{opacity:.6}.qb-th-sortable.is-sorted .qb-th-sort-chevrons{opacity:1;color:var(--accent)}.qb-th-sortable.is-sorted .qb-chev-up:not(.is-active),.qb-th-sortable.is-sorted .qb-chev-down:not(.is-active){display:none}.qb-chev-up,.qb-chev-down{display:block;color:inherit}.qb-th-sortable.is-sorted .qb-th-sort-label{color:var(--accent);font-weight:600}.qb-action-col{width:3.5rem;text-align:right;padding-left:.35rem;padding-right:.55rem}.qb-action-col-header{display:inline-block;width:1px}.qb-action-cell-link{font-size:var(--text-xs);font-weight:500;opacity:0;transition:opacity .12s ease}tr:hover .qb-action-cell-link,.qb-action-cell-link:focus-visible{opacity:1}.qb-action-col-wide{width:8.5rem}.qb-row-action-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.18rem .6rem;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-pill);border:1px solid var(--accent);background:transparent;color:var(--accent);cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease;white-space:nowrap}tr:hover .qb-row-action-btn,.qb-row-action-btn:focus-visible{opacity:1}.qb-row-action-btn:hover:not(:disabled){background:var(--accent);color:#fff}.qb-row-action-btn:disabled{cursor:wait;opacity:.5}.qb-row-action-pending{color:var(--muted);font-size:var(--text-xs);font-style:italic;opacity:.85}.qb-action-cell-group{display:inline-flex;align-items:center;gap:.45rem;justify-content:flex-end}.qb-row-in-period>td{background:color-mix(in srgb,var(--accent) 5%,transparent)}.qb-row-in-period>td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.qb-picker-hint{font-size:var(--text-sm);color:var(--muted);margin-bottom:.6rem;padding:.4rem .6rem;background:color-mix(in srgb,var(--accent) 5%,transparent);border-left:2px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.qb-picker-hint strong{color:var(--ink);font-weight:600}.fee-waivers-view{padding:16px 24px;max-width:1100px}.fee-waivers-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.fee-waivers-header h2{margin:0}.fee-waivers-help{color:var(--muted);font-size:13px;margin:0 0 20px}.fee-waivers-help em{color:var(--accent);font-style:normal}.fee-waivers-loading,.fee-waivers-empty,.fee-waivers-error{padding:40px 24px;text-align:center;color:var(--muted)}.fee-waivers-error{color:var(--error)}.fee-waiver-group{margin-bottom:28px}.fee-waiver-group-head{font-size:14px;font-weight:600;color:var(--muted);margin:0 0 8px;border-bottom:1px solid var(--border);padding-bottom:4px}.fee-waiver-group-count{color:var(--muted-2);font-weight:400}.fee-waiver-row{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:8px;overflow:hidden}.fee-waiver-row--compliance_concern{border-left:3px solid var(--warning, #e09f3e)}.fee-waiver-row--operational_credit{border-left:3px solid var(--info, #6ba2c0)}.fee-waiver-row--approved{opacity:.85}.fee-waiver-row--rejected{opacity:.7}.fee-waiver-row-head{display:grid;grid-template-columns:2fr 2fr 1fr 1fr 1.5fr;align-items:center;padding:10px 14px;gap:12px}.fee-waiver-row-head:hover{background:var(--hover)}.fee-waiver-row-customer{display:flex;flex-direction:column}.fee-waiver-row-name{font-weight:600;font-size:14px}.fee-waiver-row-cmp{font-size:11px;color:var(--muted-2);font-family:var(--mono)}.fee-waiver-row-pattern{display:flex;flex-direction:column}.fee-waiver-row-summary{font-size:13px;font-weight:500}.fee-waiver-row-period{font-size:11px;color:var(--muted-2)}.fee-waiver-row-amount{font-weight:600;font-variant-numeric:tabular-nums}.fee-waiver-row-severity{text-align:center}.fee-waiver-row-state{font-size:12px;color:var(--muted)}.fee-waiver-badge{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.fee-waiver-badge--compliance_concern{background:#e09f3e2e;color:var(--warning, #b3771a)}.fee-waiver-badge--operational_credit{background:#6ba2c02e;color:var(--info, #4a7a99)}.fee-waiver-row-body{padding:14px 16px;border-top:1px solid var(--border);background:var(--surface-2, var(--surface))}.fee-waiver-row-detail{font-size:12px;color:var(--muted);margin-bottom:12px;line-height:1.6}.fee-waiver-row-form label{display:block;font-size:13px;margin-bottom:8px}.fee-waiver-row-form textarea{width:100%;padding:8px;font-family:inherit;font-size:13px;border:1px solid var(--border);border-radius:4px;margin-top:4px;box-sizing:border-box}.fee-waiver-row-actions{display:flex;gap:8px;margin-top:8px}.fee-waiver-row-actions button{padding:6px 14px;font-size:13px;cursor:pointer}.fee-waiver-btn-approve{background:var(--success, #2d8c4d);color:#fff;border:1px solid var(--success, #2d8c4d);border-radius:4px;font-weight:600}.fee-waiver-btn-reject{background:transparent;color:var(--error, #c14b3a);border:1px solid var(--error, #c14b3a);border-radius:4px}.fee-waiver-row-awaiting{padding:10px;background:var(--surface);border-radius:4px;color:var(--muted);font-size:13px;font-style:italic}.fee-waiver-row-prior-reason,.fee-waiver-row-prior-rejection{padding:8px 10px;background:var(--surface);border-radius:4px;margin-bottom:10px;font-size:13px}.fee-waiver-row-approval{padding:10px 12px;background:var(--surface);border-radius:4px;font-size:13px;line-height:1.7}.fee-waivers-header-actions{display:flex;gap:8px}.fee-waiver-row-amount-sub{font-size:11px;color:var(--muted-2);font-weight:400}.fee-waiver-date-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.fee-waiver-date-row label{font-size:13px}.fee-waiver-date-row input{width:100%;padding:6px;box-sizing:border-box;font-family:inherit;font-size:13px;border:1px solid var(--border);border-radius:4px;margin-top:4px}.fee-waiver-breakdown{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:10px 12px;margin-bottom:14px}.fee-waiver-breakdown-head{font-size:13px;margin-bottom:8px;color:var(--muted)}.fee-waiver-breakdown-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.fee-waiver-breakdown-table th{text-align:left;font-weight:600;color:var(--muted);padding:4px 8px;border-bottom:1px solid var(--border)}.fee-waiver-breakdown-table td{padding:4px 8px;border-bottom:1px solid var(--border)}.fee-waiver-breakdown-table code{font-size:11px;color:var(--muted)}.fee-waiver-breakdown-empty{color:var(--muted);font-style:italic}.fee-waiver-new-form{background:var(--surface);border:1px solid var(--accent);border-radius:6px;padding:16px;margin-bottom:20px}.fee-waiver-new-form h3{margin:0 0 12px;font-size:16px}.fee-waiver-new-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.fee-waiver-new-grid label,.fee-waiver-new-reason{display:block;font-size:13px}.fee-waiver-new-grid input,.fee-waiver-new-grid select,.fee-waiver-new-reason textarea{width:100%;padding:6px;box-sizing:border-box;font-family:inherit;font-size:13px;border:1px solid var(--border);border-radius:4px;margin-top:4px}.fee-waiver-new-reason{margin-bottom:12px}.fee-waiver-edit-approved,.fee-waiver-edit-pending{margin-top:10px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:4px;font-size:13px}.fee-waiver-edit-approved summary,.fee-waiver-edit-pending summary{cursor:pointer;color:var(--muted);font-weight:500;padding:4px 0}.fee-waiver-edit-approved summary:hover,.fee-waiver-edit-pending summary:hover{color:var(--accent)}.fee-waiver-edit-warning{background:#e09f3e1f;border-left:3px solid var(--warning, #e09f3e);padding:8px 12px;border-radius:0 4px 4px 0;margin:8px 0;font-size:12px;color:var(--warning, #b3771a)}.fee-waiver-edit-approved label,.fee-waiver-edit-pending label{display:block;margin-top:10px;font-size:13px}.fee-waiver-edit-approved textarea,.fee-waiver-edit-pending textarea{width:100%;box-sizing:border-box;padding:8px;margin-top:4px;font-family:inherit;font-size:13px;border:1px solid var(--border);border-radius:4px;resize:vertical}.fee-waiver-edit-approved .fee-waiver-date-row,.fee-waiver-edit-pending .fee-waiver-date-row{margin-top:10px}.fee-waiver-edit-approved .fee-waiver-row-actions,.fee-waiver-edit-pending .fee-waiver-row-actions{margin-top:12px}.products-view-toggle{display:inline-flex;gap:.25rem;margin:.75rem 1rem .5rem;border:1px solid var(--border);border-radius:6px;padding:2px;background:var(--surface);width:fit-content}.products-view-toggle button{background:transparent;border:0;padding:.3rem .75rem;font-size:var(--text-sm);border-radius:4px;cursor:pointer;color:var(--muted)}.products-view-toggle button.active{background:#fff;color:var(--accent);box-shadow:0 1px 2px #00000014}.supplier-intel-panel{padding:0 1rem 1rem}.supplier-intel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.5rem 0 .75rem}.supplier-intel-header h2{margin:0 0 .25rem;font-size:var(--text-md)}.supplier-intel-header p{margin:0;color:var(--muted);font-size:var(--text-sm);max-width:60ch}.supplier-intel-totals{display:flex;gap:1rem;font-size:var(--text-sm);color:var(--muted)}.supplier-intel-totals strong{color:var(--accent)}.supplier-intel-toolbar{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.supplier-intel-toolbar input[type=search]{flex:0 0 24rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:4px;font-size:var(--text-sm)}.supplier-intel-error{background:var(--status-danger-bg);color:var(--status-danger-fg);border:1px solid var(--status-danger-border);padding:.5rem .75rem;border-radius:4px;margin-bottom:.5rem;font-size:var(--text-sm)}.supplier-intel-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:4px;background:#fff;max-height:calc(100vh - 16rem)}.supplier-intel-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-sm)}.supplier-intel-table th,.supplier-intel-table td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:.4rem .55rem;vertical-align:top;background:#fff}.supplier-intel-table th.num,.supplier-intel-table td.num{text-align:right;font-family:var(--mono)}.supplier-intel-table thead th{position:sticky;top:0;background:var(--surface);z-index:4;text-align:left;font-weight:600;color:var(--muted)}.supplier-intel-sticky-col{position:sticky;left:0;z-index:3;background:#fbfdf8;text-align:left}.supplier-intel-table thead .supplier-intel-sticky-col{z-index:5}.supplier-intel-category-row td{background:var(--surface);font-weight:600}.supplier-intel-category-toggle{background:transparent;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-size:var(--text-base);color:var(--text-primary, #111)}.supplier-intel-category-count{font-size:var(--text-xs);color:var(--muted);background:#fff;padding:1px 6px;border-radius:999px;border:1px solid var(--border)}.supplier-intel-warning{color:var(--status-danger-strong-fg);font-size:var(--text-sm)}.supplier-intel-row{cursor:pointer}.supplier-intel-row:hover td{background:#f7faf6}.supplier-intel-row:hover .supplier-intel-sticky-col,.supplier-intel-row-expanded td{background:#f3f8ef}.supplier-intel-component{display:flex;align-items:center;gap:.5rem}.supplier-intel-expand{display:inline-block;width:.7rem;color:var(--muted)}.supplier-intel-component-text{display:flex;flex-direction:column;min-width:0}.supplier-intel-component-text strong{font-size:var(--text-base)}.supplier-intel-mono{font-family:var(--mono);font-size:var(--text-xs);color:var(--muted)}.supplier-intel-subrow td{background:#fafbf9;font-size:var(--text-sm)}.supplier-intel-subrow-name{padding-left:1.75rem!important}.supplier-intel-supplier{display:flex;gap:.5rem}.supplier-intel-subrow-rule{border-left:2px solid var(--border);margin-left:.5rem;width:0;align-self:stretch}.supplier-intel-meta{font-size:var(--text-xs);color:var(--muted);margin-top:2px}.supplier-intel-extra-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem .75rem;margin-top:.5rem;max-width:24rem}.supplier-intel-extra-fields label{display:flex;flex-direction:column;font-size:var(--text-xs);color:var(--muted);gap:2px}.supplier-intel-notes-label{grid-column:1 / -1}.supplier-intel-cell-btn{background:transparent;border:0;padding:0;cursor:text;font:inherit;color:inherit;text-align:inherit;width:100%}.supplier-intel-cell-btn:hover{background:#0e7c660f;outline:1px dashed var(--border);border-radius:3px}.supplier-intel-empty{color:var(--muted);font-style:italic}.supplier-intel-edit input{width:100%;padding:2px 4px;border:1px solid var(--accent);border-radius:3px;font:inherit;background:#fff}.supplier-intel-edit-error{display:block;font-size:var(--text-xs);color:var(--status-danger-strong-fg);margin-top:2px}.supplier-intel-coverage-pill{display:inline-block;font-size:var(--text-xs);padding:1px 8px;border-radius:999px;border:1px solid var(--border);background:#fff;font-family:var(--mono)}.supplier-intel-coverage-high{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-border)}.supplier-intel-coverage-med{background:#fef3c7;color:#78350f;border-color:var(--status-warn-amber-border)}.supplier-intel-coverage-low{background:var(--status-danger-bg);color:var(--status-danger-fg);border-color:var(--status-danger-border)}.supplier-intel-coverage-missing{background:var(--status-danger-strong-bg);color:var(--status-danger-strong-fg);border-color:var(--status-danger-strong-border)}.supplier-intel-muted{color:var(--muted);font-style:italic;font-size:var(--text-xs)}.supplier-intel-mismatch{display:inline-block;margin-left:4px;width:14px;height:14px;line-height:14px;text-align:center;font-size:10px;font-weight:700;border-radius:50%;background:var(--status-warn-amber-border);color:#78350f;cursor:help}.supplier-intel-empty-row{text-align:center;padding:1.5rem!important;color:var(--muted);font-size:var(--text-sm)}.supplier-intel-toolbar-check{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-sm);color:var(--muted);cursor:pointer;user-select:none}.supplier-intel-toolbar-check input{margin:0}.supplier-intel-preferred-toggle{background:transparent;border:0;color:var(--muted);font-size:1rem;cursor:pointer;padding:0 4px 0 0;line-height:1}.supplier-intel-preferred-toggle.active,.supplier-intel-preferred-toggle:hover{color:#d97706}.supplier-intel-subrow-preferred td{background:#fffbeb}.supplier-intel-subrow-preferred .supplier-intel-sticky-col{background:#fef3c7;border-left:3px solid #d97706}.supplier-intel-preferred-badge{color:#d97706;font-weight:600;margin-left:4px}.supplier-intel-order-link{color:var(--accent);font-family:var(--mono);font-size:var(--text-xs);text-decoration:none;white-space:nowrap}.supplier-intel-order-link:hover{text-decoration:underline}.supplier-dir-table textarea{width:100%;padding:4px 6px;border:1px solid var(--accent);border-radius:3px;font:inherit;font-size:var(--text-sm);resize:vertical}.supplier-dir-sortable-th{cursor:pointer}.supplier-dir-sort-btn{background:transparent;border:0;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;padding:0;text-align:inherit}.supplier-dir-sortable-th.active .supplier-dir-sort-btn{color:var(--accent)}.supplier-dir-sort-arrow{font-size:9px;margin-left:2px}.supplier-dir-type-select{background:transparent;border:1px solid transparent;padding:2px 4px;font:inherit;font-size:var(--text-sm);border-radius:3px;cursor:pointer;max-width:100%}.supplier-dir-type-select:hover,.supplier-dir-type-select:focus{border-color:var(--border);outline:none}.supplier-dir-type-select.supplier-dir-type-manufacturer{background:#ecfdf5;color:#065f46}.supplier-dir-type-select.supplier-dir-type-trading_company{background:#eff6ff;color:#1e3a8a}.supplier-dir-type-select.supplier-dir-type-3pl{background:#fef3c7;color:#78350f}.supplier-dir-type-select.supplier-dir-type-other{background:#f3f4f6;color:#374151}.supplier-dir-bucket-chips{display:flex;flex-wrap:wrap;gap:3px}.supplier-dir-bucket-chip{display:inline-block;background:var(--surface);color:var(--muted);font-size:var(--text-xs);padding:1px 6px;border-radius:999px;border:1px solid var(--border)}.supplier-dir-detail{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:1.5rem;padding:.5rem .5rem .75rem 2rem}.supplier-dir-detail-block{display:flex;flex-direction:column;gap:4px}.supplier-dir-detail-label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.supplier-dir-detail-meta{display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm);color:var(--muted)}.supplier-dir-detail-meta strong{color:#111;font-weight:600}.supplier-dir-link{color:var(--accent);font-size:var(--text-sm)}.inv-loc-modal-overlay{position:fixed;inset:0;background:#0f19138c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem}.inv-loc-modal{background:var(--surface, #ffffff);border-radius:6px;box-shadow:0 12px 32px #0f191340;width:min(720px,100%);max-height:90vh;display:flex;flex-direction:column}.inv-loc-modal-header{padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.inv-loc-modal-header h2{margin:0 0 .25rem;font-size:1.1rem}.inv-loc-modal-subtitle{margin:0;color:var(--ink-muted, #6b7d72);font-size:var(--text-sm)}.inv-loc-modal-subtitle code{font-family:var(--font-mono, ui-monospace, monospace);background:var(--surface-alt, #f5f7f1);padding:.1rem .35rem;border-radius:3px}.inv-loc-modal-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--ink-muted, #6b7d72);padding:0}.inv-loc-modal-body{overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem}.inv-loc-section{display:flex;flex-direction:column;gap:.5rem}.inv-loc-section-header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.inv-loc-section-header h3{margin:0;font-size:var(--text-sm, .88rem);font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-muted, #6b7d72)}.inv-loc-section-note{font-size:var(--text-xs, .78rem);color:var(--ink-muted, #6b7d72)}.inv-loc-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.inv-loc-table th,.inv-loc-table td{padding:.45rem .5rem;text-align:left;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.inv-loc-table th{font-weight:500;font-size:var(--text-xs, .78rem);color:var(--ink-muted, #6b7d72);text-transform:uppercase;letter-spacing:.02em}.inv-loc-qty{text-align:right;font-variant-numeric:tabular-nums;width:9rem}.inv-loc-mono{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.inv-loc-subtotal td{font-weight:600;background:var(--surface-alt, #f5f7f1)}.inv-loc-input{width:6rem;padding:.25rem .4rem;border:1px solid var(--border, #cdd6c5);border-radius:3px;text-align:right;font-variant-numeric:tabular-nums}.inv-loc-pref{display:inline-block;margin-left:.5rem;padding:.05rem .4rem;background:var(--accent-soft, #fff8e1);color:var(--accent-strong, #b87b14);font-size:var(--text-xs);border-radius:3px}.inv-loc-meta{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.inv-loc-never{font-style:italic}.inv-loc-actions{display:flex;gap:.4rem;justify-content:flex-end;white-space:nowrap}.inv-loc-save{padding:.25rem .7rem;border:1px solid var(--accent, #245e2f);background:var(--accent, #245e2f);color:#fff;border-radius:3px;cursor:pointer;font-size:var(--text-xs)}.inv-loc-save:disabled{opacity:.5;cursor:not-allowed}.inv-loc-clear{padding:.25rem .5rem;border:1px solid var(--border, #cdd6c5);background:var(--surface, #ffffff);color:var(--ink-muted, #6b7d72);border-radius:3px;cursor:pointer;font-size:1rem;line-height:1}.inv-loc-footer{display:flex;justify-content:space-between;padding:.75rem 1.25rem;border-top:1px solid var(--border-subtle, #e6ebe1);background:var(--surface-alt, #f5f7f1);font-size:var(--text-sm)}.inv-loc-empty{padding:.5rem;color:var(--ink-muted, #6b7d72);font-size:var(--text-sm);font-style:italic}.inv-loc-error{color:var(--danger-red, #c04848);display:flex;gap:.75rem;align-items:center}.inv-loc-link-wrap{padding:.75rem 0 0}.inv-loc-link-toggle{padding:.4rem .9rem;border:1px dashed var(--accent, #245e2f);background:transparent;color:var(--accent, #245e2f);border-radius:4px;cursor:pointer;font-size:var(--text-sm)}.inv-loc-link-toggle:hover{background:var(--surface-alt, #f5f7f1)}.inv-loc-link-panel{border:1px solid var(--border-subtle, #e6ebe1);border-radius:6px;background:var(--surface-alt, #f5f7f1);padding:.85rem 1rem}.inv-loc-link-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.inv-loc-link-header h4{margin:0;font-size:var(--text-sm);color:var(--ink, #2b3a30)}.inv-loc-link-close{padding:.2rem .6rem;border:1px solid var(--border, #cdd6c5);background:var(--surface, #ffffff);color:var(--ink-muted, #6b7d72);border-radius:3px;cursor:pointer;font-size:var(--text-xs)}.inv-loc-link-section-title{margin:.65rem 0 .35rem;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted, #6b7d72)}.inv-loc-link-no-suggest{font-weight:400;text-transform:none;letter-spacing:0;font-style:italic}.inv-loc-link-list{list-style:none;padding:0;margin:0 0 .25rem;border:1px solid var(--border-subtle, #e6ebe1);border-radius:4px;background:var(--surface, #ffffff);max-height:220px;overflow-y:auto}.inv-loc-link-list li{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .7rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);font-size:var(--text-sm)}.inv-loc-link-list li:last-child{border-bottom:0}.inv-loc-link-meta{color:var(--ink-muted, #6b7d72);font-size:var(--text-xs)}.inv-loc-link-peers{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:.4rem}.inv-loc-link-peer-photo{width:36px;height:36px;border-radius:3px;border:1px solid var(--border-subtle, #e6ebe1);object-fit:cover;background:var(--surface-alt, #f5f7f1)}.inv-loc-link-peer-photo--self{border-color:var(--accent, #245e2f);border-width:2px}.inv-loc-link-peer-divider{color:var(--ink-muted, #6b7d72);font-size:var(--text-sm);padding:0 2px}.inv-loc-link-peer-more{display:inline-block;padding:.15rem .4rem;background:var(--border-subtle, #e6ebe1);color:var(--ink-muted, #6b7d72);border-radius:3px;font-size:var(--text-xs);font-weight:600}.inv-loc-link-peers-codes{margin-left:6px;color:var(--ink-muted, #6b7d72);font-size:var(--text-xs);font-family:var(--font-mono, monospace)}.inv-loc-link-empty{color:var(--ink-muted, #6b7d72);font-style:italic;justify-content:center}.inv-loc-link-btn{padding:.25rem .7rem;border:1px solid var(--accent, #245e2f);background:var(--accent, #245e2f);color:#fff;border-radius:3px;cursor:pointer;font-size:var(--text-xs);white-space:nowrap}.inv-loc-link-btn:disabled{opacity:.5;cursor:not-allowed}.inv-loc-link-search-wrap{margin-top:.5rem}.inv-loc-link-search{width:100%;padding:.4rem .6rem;border:1px solid var(--border, #cdd6c5);border-radius:4px;font-size:var(--text-sm);margin-bottom:.4rem}.po-detail-overlay{position:fixed;inset:0;background:#0f19138c;z-index:1100;display:flex;align-items:center;justify-content:center;padding:2rem}.qb-link-modal{background:var(--surface, #ffffff);border-radius:6px;box-shadow:0 12px 32px #0f191340;width:min(640px,100%);max-height:85vh;display:flex;flex-direction:column}.qb-link-body{padding:1rem 1.25rem 1.25rem;overflow-y:auto}.qb-link-section+.qb-link-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-subtle, #e6ebe1)}.qb-link-section-title{margin:0 0 .5rem;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted, #6b7d72)}.qb-link-list{list-style:none;padding:0;margin:0;border:1px solid var(--border-subtle, #e6ebe1);border-radius:4px;background:var(--surface, #ffffff)}.qb-link-list--dropdown{border:0;border-radius:0}.qb-link-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .75rem;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.qb-link-row:last-child{border-bottom:0}.qb-link-row--dense{padding:.4rem .7rem}.qb-link-row-main{flex:1 1 auto;min-width:0}.qb-link-row-name{font-weight:600;font-size:var(--text-sm);color:var(--ink, #2b3a30)}.qb-link-row-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.15rem;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.qb-link-row-email{font-family:var(--font-mono, monospace)}.qb-link-row-balance{color:var(--danger-red, #c04848);font-weight:600}.qb-link-loading,.qb-link-empty{margin:0;padding:.5rem .25rem;font-size:var(--text-sm);color:var(--ink-muted, #6b7d72);font-style:italic}.qb-link-search-wrap{position:relative}.qb-link-search{width:100%;padding:.5rem .7rem;border:1px solid var(--border, #cdd6c5);border-radius:4px;font-size:var(--text-sm);background:var(--surface, #ffffff)}.qb-link-search:focus{outline:none;border-color:var(--accent, #245e2f);box-shadow:0 0 0 2px #245e2f26}.qb-link-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface, #ffffff);border:1px solid var(--border, #cdd6c5);border-radius:4px;box-shadow:0 8px 20px #0f19131f;max-height:320px;overflow-y:auto;z-index:10}.qb-link-dropdown-loading,.qb-link-dropdown-empty{padding:.75rem;font-size:var(--text-sm);color:var(--ink-muted, #6b7d72);font-style:italic;text-align:center}.po-detail-modal{background:var(--surface, #ffffff);border-radius:6px;box-shadow:0 12px 32px #0f191340;width:min(900px,100%);max-height:90vh;display:flex;flex-direction:column}.po-detail-header{padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border-subtle, #e6ebe1);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.po-detail-header h2{margin:0 0 .25rem;font-size:1.1rem}.po-detail-subtitle{margin:0;color:var(--ink-muted, #6b7d72);font-size:var(--text-sm)}.po-detail-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--ink-muted, #6b7d72);padding:0}.po-detail-body{overflow-y:auto;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem}.po-detail-section h3{margin:0 0 .5rem;font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-muted, #6b7d72);display:flex;align-items:baseline;gap:.5rem}.po-detail-section-h3--toggle{cursor:pointer;user-select:none;border-radius:4px;padding:2px 4px;margin-left:-4px}.po-detail-section-h3--toggle:hover{background:var(--surface-alt)}.po-detail-section-h3--toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.po-detail-section-chevron{display:inline-block;width:.75rem;font-size:.7rem;color:var(--ink-muted, #6b7d72)}.po-detail-count{font-size:var(--text-xs);font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink-muted, #6b7d72)}.po-detail-autoflag{font-size:var(--text-xs);font-weight:500;text-transform:none;letter-spacing:0;color:var(--warn-amber, #b87b14);margin-left:auto}.po-detail-loading,.po-detail-empty{margin:0;font-size:var(--text-sm);color:var(--ink-muted, #6b7d72);font-style:italic}.po-detail-error{padding:.5rem .75rem;background:#c0484814;border:1px solid var(--danger-red, #c04848);border-radius:4px;color:var(--danger-red, #c04848);font-size:var(--text-sm)}.po-detail-vendor-missing{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.po-detail-vendor-missing .po-detail-empty{margin:0;flex:1 1 auto}.po-detail-vendor-strip{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.65rem .85rem;background:var(--surface-alt, #f5f7f1);border-radius:4px;font-size:var(--text-sm)}.po-detail-vendor-balance--owed{color:var(--danger-red, #c04848);font-weight:500}.po-detail-vendor-meta{color:var(--ink-muted, #6b7d72);font-weight:400;font-size:var(--text-xs)}.po-detail-vendor-sep{color:var(--ink-muted, #6b7d72);opacity:.5}.po-detail-vendor-overdue{color:var(--danger-red, #c04848)}.po-detail-vendor-note{margin:.5rem 0 0;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.po-detail-bill-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.po-detail-bill-table th,.po-detail-bill-table td{padding:.4rem .5rem;text-align:left;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.po-detail-bill-table th{font-size:var(--text-xs);font-weight:500;text-transform:uppercase;color:var(--ink-muted, #6b7d72)}.po-detail-bill-row--linked{background:#245e2f0f}.po-detail-numeric{text-align:right;font-variant-numeric:tabular-nums}.po-detail-mono{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs)}.po-detail-bill-status{display:inline-block;padding:.05rem .45rem;border-radius:3px;background:var(--surface-alt, #f5f7f1);color:var(--ink-muted, #6b7d72);font-size:var(--text-xs);text-transform:capitalize}.po-detail-bill-status--paid{color:#2a7344;background:#245e2f14}.po-detail-bill-status--partial{color:#b87b14;background:#b87b141a}.po-detail-bill-status--unpaid{color:#c04848;background:#c048481a}.po-detail-bill-status--overdue{color:#fff;background:var(--danger-red, #c04848);font-weight:500}.po-detail-bill-other{display:inline-block;margin-left:.5rem;font-size:var(--text-xs);font-style:italic;color:var(--ink-muted, #6b7d72)}.po-detail-link-actions{display:flex;gap:.5rem;margin-top:.6rem}.po-detail-link-note{flex:1;padding:.35rem .5rem;border:1px solid var(--border, #cdd6c5);border-radius:3px;font-size:var(--text-sm)}.po-detail-link-meta{margin:.35rem 0 0;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72);font-style:italic}.po-detail-save{padding:.35rem .85rem;border:1px solid var(--accent, #245e2f);background:var(--accent, #245e2f);color:#fff;border-radius:3px;cursor:pointer;font-size:var(--text-sm);white-space:nowrap}.po-detail-save:disabled{opacity:.5;cursor:not-allowed}.po-detail-hold-form{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;font-size:var(--text-sm)}.po-detail-hold-form label{display:inline-flex;align-items:center;gap:.3rem}.po-detail-hold-note{flex:1;min-width:14rem;padding:.35rem .5rem;border:1px solid var(--border, #cdd6c5);border-radius:3px}.po-review-row--clickable{cursor:pointer}.po-review-row--clickable:hover{background:var(--surface-alt, #f5f7f1)}.po-review-row--hold-payment{box-shadow:inset 3px 0 0 var(--danger-red, #c04848)}.po-hold-chip{display:inline-block;margin-left:.5rem;padding:.05rem .45rem;border-radius:3px;font-size:var(--text-xs);background:var(--surface-alt, #f5f7f1);color:var(--ink-muted, #6b7d72);white-space:nowrap}.po-hold-chip--payment{background:#c048481f;color:var(--danger-red, #c04848);font-weight:500}.po-hold-chip--parts{background:#b87b141f;color:var(--accent-strong, #b87b14)}.supplier-qb-tab{display:flex;flex-direction:column;gap:.75rem;padding:1rem 0}.supplier-qb-summary{display:flex;justify-content:space-between;align-items:center;padding:.5rem .85rem;background:var(--surface-alt, #f5f7f1);border-radius:4px;font-size:var(--text-sm)}.supplier-qb-summary-spend{color:var(--ink-muted, #6b7d72);display:flex;gap:.5rem;align-items:center}.supplier-qb-summary-sep{opacity:.5}.supplier-qb-sort{background:transparent;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:inherit}.supplier-qb-sort:hover{color:var(--accent, #245e2f)}.supplier-qb-owed{color:var(--danger-red, #c04848);font-weight:600}.supplier-qb-meta{color:var(--ink-muted, #6b7d72)}.supplier-qb-skeleton-row td{padding:.6rem .5rem}.supplier-qb-skel{height:12px;border-radius:3px;background:linear-gradient(90deg,var(--border-subtle, #e6ebe1) 25%,var(--surface-alt, #f5f7f1) 50%,var(--border-subtle, #e6ebe1) 75%);background-size:200% 100%;animation:supplier-qb-shimmer 1.4s ease-in-out infinite}.supplier-qb-skel+.supplier-qb-skel{margin-top:4px}.supplier-qb-skel--mini{width:40px}.supplier-qb-skel--narrow{width:70px}.supplier-qb-skel--wide{width:140px}@keyframes supplier-qb-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.supplier-qb-controls{display:flex;gap:.5rem;align-items:center}.supplier-qb-filter{display:inline-flex;border:1px solid var(--border, #cdd6c5);border-radius:4px;overflow:hidden}.supplier-qb-filter-btn{padding:.3rem .7rem;background:var(--surface, #fff);border:none;border-right:1px solid var(--border, #cdd6c5);cursor:pointer;font-size:var(--text-sm)}.supplier-qb-filter-btn:last-child{border-right:none}.supplier-qb-filter-btn.active{background:var(--accent, #245e2f);color:#fff}.supplier-qb-search{flex:1;padding:.3rem .6rem;border:1px solid var(--border, #cdd6c5);border-radius:3px;font-size:var(--text-sm)}.supplier-qb-reload{padding:.3rem .8rem;border:1px solid var(--border, #cdd6c5);background:var(--surface, #fff);border-radius:3px;cursor:pointer;font-size:var(--text-sm)}.supplier-qb-table-wrap{border:1px solid var(--border-subtle, #e6ebe1);border-radius:4px;overflow:auto;max-height:70vh}.supplier-qb-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.supplier-qb-table th,.supplier-qb-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.supplier-qb-table th{background:var(--surface-alt, #f5f7f1);position:sticky;top:0;font-size:var(--text-xs);font-weight:500;text-transform:uppercase;color:var(--ink-muted, #6b7d72);letter-spacing:.02em}.supplier-qb-name{font-weight:500}.supplier-qb-code{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.supplier-qb-numeric{text-align:right;font-variant-numeric:tabular-nums}.supplier-qb-warn{color:var(--danger-red, #c04848);font-weight:500;font-size:var(--text-xs)}.supplier-qb-info{color:var(--ink-muted, #6b7d72);font-style:italic;font-size:var(--text-xs)}.supplier-qb-row--needs-link{background:#c048480a}.supplier-qb-linked{display:block;font-size:var(--text-sm)}.supplier-qb-bal{font-size:var(--text-xs);color:var(--danger-red, #c04848)}.supplier-qb-edit-btn{padding:.25rem .7rem;border:1px solid var(--accent, #245e2f);background:var(--accent, #245e2f);color:#fff;border-radius:3px;font-size:var(--text-xs);cursor:pointer}.supplier-qb-empty{padding:1rem;text-align:center;color:var(--ink-muted, #6b7d72);font-style:italic}.supplier-qb-linked-list{list-style:none;padding:0;margin:0}.supplier-qb-linked-list li{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.supplier-qb-unlink{padding:.15rem .5rem;border:1px solid var(--border, #cdd6c5);background:var(--surface, #fff);color:var(--danger-red, #c04848);border-radius:3px;cursor:pointer;font-size:var(--text-xs)}.supplier-qb-modal-search{width:100%;padding:.4rem .6rem;border:1px solid var(--border, #cdd6c5);border-radius:3px;margin-bottom:.5rem;font-size:var(--text-sm)}.po-detail-shipment-list{background:var(--surface-alt, #f5f7f1);padding:.3rem .6rem}.po-detail-shipment-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.2rem 0;font-size:var(--text-xs);color:var(--ink, #2a3a30)}.po-detail-shipment-direction{font-weight:700;color:var(--accent, #245e2f)}.po-detail-shipment-note{font-style:italic}.po-detail-shipment-meta{color:var(--ink-muted, #6b7d72)}.po-detail-shipment-delete{margin-left:auto;background:transparent;border:none;color:var(--ink-muted, #6b7d72);font-size:1rem;cursor:pointer;padding:0 .3rem}.po-detail-shipment-form{background:#245e2f0a;padding:.6rem .75rem}.po-detail-shipment-form-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.4rem}.po-detail-shipment-form label{display:inline-flex;flex-direction:column;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.po-detail-shipment-form input,.po-detail-shipment-form select{padding:.25rem .4rem;border:1px solid var(--border, #cdd6c5);border-radius:3px;font-size:var(--text-sm);background:var(--surface, #fff)}.po-detail-shipment-notes-label{flex:1}.po-detail-shipment-notes-label input{width:100%}.create-po-bom-panel{margin-top:.5rem;border:1px solid var(--border-subtle, #e6ebe1);border-radius:4px}.create-po-bom-toggle{width:100%;text-align:left;padding:.5rem .75rem;background:var(--surface-alt, #f5f7f1);border:none;cursor:pointer;font-size:var(--text-sm);font-weight:500;display:flex;align-items:center;gap:.5rem}.create-po-bom-count{margin-left:auto;font-size:var(--text-xs);color:var(--accent, #245e2f);font-weight:600}.create-po-bom-body{padding:.75rem}.create-po-bom-hint{margin:0 0 .6rem;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72);line-height:1.4}.create-po-bom-empty{font-style:italic;color:var(--ink-muted, #6b7d72);font-size:var(--text-sm);margin:0}.create-po-bom-error{color:var(--danger-red, #c04848);font-size:var(--text-sm);margin:0}.create-po-bom-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.create-po-bom-table th,.create-po-bom-table td{padding:.35rem .4rem;text-align:left;border-bottom:1px solid var(--border-subtle, #e6ebe1)}.create-po-bom-table th{font-size:var(--text-xs);font-weight:500;text-transform:uppercase;color:var(--ink-muted, #6b7d72)}.create-po-bom-numeric{text-align:right;font-variant-numeric:tabular-nums}.create-po-bom-short{color:var(--danger-red, #c04848);font-weight:500}.create-po-bom-row--short{background:#c048480a}.create-po-bom-name{font-weight:500}.create-po-bom-code{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.create-po-bom-supplier{width:100%;padding:.2rem .3rem;border:1px solid var(--border, #cdd6c5);border-radius:3px;font-size:var(--text-xs)}.create-po-bom-qty{width:5rem;padding:.2rem .35rem;border:1px solid var(--border, #cdd6c5);border-radius:3px;text-align:right}.create-po-bom-pref{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-panel{display:flex;flex-direction:column;gap:.9rem;padding:1rem}.returns-header{display:flex;align-items:center;gap:.75rem}.returns-header-title{font-size:var(--text-lg);font-weight:700;color:var(--ink, #1c2b22)}.returns-error{border:1px solid var(--status-danger-strong-bg, #f0c4c4);background:var(--status-danger-soft-bg, #fdf0f0);color:var(--status-danger-strong-fg, #b3261e);padding:.6rem .8rem;border-radius:var(--radius-md, 8px);font-size:var(--text-sm)}.returns-empty{color:var(--ink-muted, #6b7d72);font-size:var(--text-base);padding:1rem;border:1px dashed var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb)}.returns-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.6rem}.returns-card{display:flex;flex-direction:column;gap:.35rem;text-align:left;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-lg, 12px);background:var(--panel, #fffffb);padding:.75rem .85rem;cursor:pointer;box-shadow:var(--shadow, 0 10px 26px rgba(19, 34, 27, .09));transition:box-shadow .15s,transform .1s}.returns-card:hover{box-shadow:var(--shadow-md, 0 10px 30px rgba(19, 34, 27, .12));transform:translateY(-1px)}.returns-card-receive{align-self:flex-start;margin-top:.1rem;font-size:var(--text-xs);font-weight:700;padding:.2rem .6rem;border:1px solid var(--accent, #0e7c66);border-radius:999px;background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66);cursor:pointer}.returns-card-receive:hover{background:var(--accent, #0e7c66);color:#fff}.returns-card-top{display:flex;justify-content:space-between;align-items:center}.returns-card-id{font-family:var(--mono);font-size:var(--text-sm);font-weight:700}.returns-card-meta{display:flex;gap:.5rem;font-size:var(--text-sm);color:var(--ink-muted, #6b7d72)}.returns-card-so{font-family:var(--mono)}.returns-card-reason{font-size:var(--text-sm);color:var(--ink, #1c2b22)}.returns-card-status{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-enroute{display:inline-flex;align-items:center;gap:.35rem;align-self:flex-start;font-size:var(--text-xs);font-weight:700;padding:.1rem .5rem;border-radius:var(--radius-pill, 999px);background:var(--bg-subtle, #eef1ea);color:var(--ink-muted, #6b7d72)}.returns-enroute-dot{width:.5rem;height:.5rem;border-radius:50%;background:currentColor}.returns-enroute-in_transit,.returns-enroute-picked_up,.returns-enroute-out_for_delivery{background:var(--status-info-soft-bg, #e8f0fb);color:var(--status-info-soft-fg, #2563a8)}.returns-enroute-delivered{background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66)}.returns-enroute-exception{background:var(--status-danger-soft-bg, #fbe6e2);color:var(--status-danger-soft-fg, #b3402b)}.returns-card-manifest{font-size:var(--text-xs);color:var(--ink, #1c2b22)}.returns-card-discrepancy{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;padding:.1rem .45rem;border-radius:var(--radius-pill, 999px);background:var(--status-danger-soft-bg, #fbe6e2);color:var(--status-danger-soft-fg, #b3402b)}.returns-pipeline-board{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;align-items:start}@media(max-width:1100px){.returns-pipeline-board{grid-template-columns:repeat(2,1fr)}}@media(max-width:860px){.returns-pipeline-board{grid-template-columns:1fr}}.returns-lane{display:flex;flex-direction:column;gap:.5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-lg, 12px);background:var(--bg-subtle, #f1f4ee);padding:.6rem;border-top:3px solid var(--stroke, #c6d0c3)}.returns-lane-with_customer{border-top-color:var(--status-info-soft-fg, #2563a8)}.returns-lane-in_transit{border-top-color:var(--status-warn-soft-fg, #b87514)}.returns-lane-repair{border-top-color:var(--accent, #0e7c66)}.returns-lane-done{border-top-color:var(--ink-muted, #6b7d72)}.returns-lane-head{display:flex;align-items:center;justify-content:space-between;padding:.1rem .25rem}.returns-lane-who{display:flex;flex-direction:column;line-height:1.2}.returns-lane-owner{font-weight:700;font-size:var(--text-sm);color:var(--ink, #1c2b22)}.returns-lane-role{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-lane-count{font-weight:700;font-size:var(--text-base);color:var(--ink-muted, #6b7d72);background:var(--panel, #fffffb);border-radius:var(--radius-pill, 999px);min-width:1.6rem;text-align:center;padding:.05rem .4rem}.returns-lane-cards{display:flex;flex-direction:column;gap:.5rem}.returns-lane-empty{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72);text-align:center;padding:.6rem 0;opacity:.7}.returns-requested{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem;padding:.5rem .6rem;border-radius:var(--radius-md, 8px);background:var(--accent-soft, #e3f1ec)}.returns-requested-item{font-family:var(--mono);font-size:var(--text-sm);font-weight:600;color:var(--ink, #1c2b22)}.returns-requested-hint{font-size:var(--text-xs);font-style:italic;color:var(--ink-muted, #6b7d72);margin-left:auto}.returns-overview{display:flex;flex-direction:column;gap:1rem}.returns-overview-lead{font-size:var(--text-lg);font-weight:700;color:var(--ink, #1c2b22)}.returns-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6rem}.returns-kpi{display:flex;flex-direction:column;gap:.15rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-lg, 12px);background:var(--panel, #fffffb);padding:.7rem .8rem}.returns-kpi-warn{border-color:var(--status-warn-soft-fg, #a8742a);background:var(--status-warn-soft-bg, #fbf3e0)}.returns-kpi-num{font-size:var(--text-2xl, 1.6rem);font-weight:800;color:var(--ink, #1c2b22);line-height:1.1}.returns-kpi-label{font-size:var(--text-sm);font-weight:600;color:var(--ink, #1c2b22)}.returns-kpi-hint{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-flow{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.6rem .8rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-lg, 12px);background:var(--panel, #fffffb)}.returns-flow-lane{display:flex;align-items:baseline;gap:.4rem}.returns-flow-num{font-size:var(--text-xl, 1.3rem);font-weight:800;color:var(--ink, #1c2b22)}.returns-flow-who{font-size:var(--text-sm);color:var(--ink-muted, #6b7d72)}.returns-flow-arrow{color:var(--ink-muted, #6b7d72)}.returns-flow-stuck{margin-left:auto;font-size:var(--text-sm);font-weight:700;color:var(--status-danger-soft-fg, #b3402b);background:var(--status-danger-soft-bg, #fbe6e2);border-radius:var(--radius-pill, 999px);padding:.15rem .6rem}.returns-dash-row-click{width:100%;text-align:left;border:none;background:none;cursor:pointer;font:inherit}.returns-dash-row-click:hover{background:var(--bg-subtle, #f1f4ee)}.returns-manifest{display:flex;flex-direction:column;gap:.5rem;border:1px dashed var(--accent, #0e7c66);border-radius:var(--radius-lg, 12px);background:var(--accent-soft, #e3f1ec);padding:.85rem 1rem}.returns-manifest-title{font-size:var(--text-base);font-weight:700;color:var(--ink, #1c2b22)}.returns-manifest-row{display:flex;gap:.5rem;align-items:center}.returns-manifest-type{flex:0 0 7rem;font-size:var(--text-sm);padding:.4rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb);color:var(--ink, #1c2b22)}.returns-manifest-code{flex:1 1 auto;font-size:var(--text-sm);padding:.4rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb);color:var(--ink, #1c2b22)}.returns-manifest-qty{flex:0 0 4rem;font-size:var(--text-sm);padding:.4rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb);color:var(--ink, #1c2b22)}.returns-manifest-remove{flex:0 0 1.5rem;border:none;background:none;cursor:pointer;color:var(--ink-muted, #6b7d72);font-size:var(--text-sm)}.returns-manifest-spacer{flex:0 0 1.5rem}.returns-manifest-actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.2rem}.returns-header-actions{display:inline-flex;gap:.5rem;align-items:center}.returns-start-btn{font-size:var(--text-sm);font-weight:700;padding:.4rem .85rem;border:none;border-radius:var(--radius-md, 8px);background:var(--accent, #0e7c66);color:#fff;cursor:pointer}.returns-start-btn:hover{background:var(--accent-dark, #0b6553)}.returns-genlabel-btn{align-self:flex-start;font-size:var(--text-sm);font-weight:700;padding:.45rem .9rem;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-md, 8px);background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66);cursor:pointer}.returns-genlabel-btn:disabled{opacity:.6;cursor:default}.returns-label-link{font-weight:700;color:var(--accent, #0e7c66);text-decoration:underline}.returns-shipping{display:flex;flex-direction:column;gap:.75rem;margin:.5rem 0}.returns-ship-block,.returns-ship-outbound{display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--bg-subtle, #f1f4ee);padding:.6rem .75rem}.returns-ship-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.returns-rate-link{font-size:var(--text-sm);font-weight:600;color:var(--accent, #0e7c66);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0}.returns-ship-current{font-size:var(--text-sm);color:var(--ink, #1d2a22)}.returns-ship-error{font-size:var(--text-sm);color:var(--status-danger-soft-fg, #b4342a)}.returns-rates{display:flex;flex-direction:column;gap:.35rem}.returns-rates-loading{font-size:var(--text-sm);color:var(--ink-muted, #6b7d72)}.returns-rate-row{display:flex;align-items:center;gap:.6rem;padding:.4rem .55rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb);cursor:pointer;font-size:var(--text-sm)}.returns-rate-row-on{border-color:var(--accent, #0e7c66);background:var(--accent-soft, #e3f1ec)}.returns-rate-name{font-weight:700}.returns-rate-transit{color:var(--ink-muted, #6b7d72)}.returns-rate-best{font-size:var(--text-xs);font-weight:700;color:var(--accent, #0e7c66);background:var(--accent-soft, #e3f1ec);border:1px solid var(--accent, #0e7c66);border-radius:999px;padding:.05rem .45rem}.returns-rate-cost{margin-left:auto;font-weight:700;font-variant-numeric:tabular-nums}.returns-addr-form{display:flex;flex-direction:column;gap:.4rem;border:1px dashed var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--bg-subtle, #f1f4ee);padding:.6rem .75rem}.returns-addr-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.returns-addr-wide{grid-column:1 / -1}.returns-addr-ok{font-size:var(--text-xs);font-weight:700;color:var(--accent, #0e7c66)}.returns-addr-hint{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-ship-addr-label{display:flex;flex-direction:column;gap:.25rem;font-size:var(--text-xs);font-weight:700;color:var(--ink-muted, #6b7d72);text-transform:uppercase;letter-spacing:.02em}.ob-tracking-cell{display:flex;align-items:center;gap:.35rem}.ob-genlabel-btn{flex:none;font-size:var(--text-xs);font-weight:700;padding:.1rem .4rem;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-sm, 6px);background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66);cursor:pointer;white-space:nowrap}.ob-ship-modal-backdrop{position:fixed;inset:0;background:#141e1973;display:flex;align-items:center;justify-content:center;z-index:1000}.ob-ship-modal{background:var(--panel, #fffffb);border-radius:var(--radius-lg, 12px);padding:1rem 1.2rem;width:min(560px,92vw);box-shadow:0 12px 40px #00000040}.ob-ship-modal-head{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-md);margin-bottom:.5rem}.ob-ship-modal-close{border:none;background:none;cursor:pointer;font-size:var(--text-lg);color:var(--ink-muted, #6b7d72)}.returns-startform{display:flex;flex-direction:column;gap:.6rem;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-lg, 12px);background:var(--panel, #fffffb);padding:.85rem 1rem}.returns-startform-title{font-size:var(--text-base);font-weight:700;color:var(--ink, #1c2b22)}.returns-startform-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem}.returns-startform-field{display:flex;flex-direction:column;gap:.2rem;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-startform-field em{color:var(--status-danger-soft-fg, #b3402b);font-style:normal}.returns-startform-field input{font-size:var(--text-sm);padding:.4rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--bg, #f6f7f3);color:var(--ink, #1c2b22)}.returns-startform-search{position:relative}.returns-startform-search input{width:100%;font-size:var(--text-sm);padding:.45rem .6rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--bg, #f6f7f3);color:var(--ink, #1c2b22)}.returns-startform-selected{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-md, 8px);background:var(--accent-soft, #e3f1ec)}.returns-startform-selected-name{font-weight:700;color:var(--ink, #1c2b22)}.returns-startform-change{margin-left:auto;border:none;background:none;cursor:pointer;font-size:var(--text-xs);font-weight:600;color:var(--accent, #0e7c66);text-decoration:underline}.returns-startform-option-loc{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72);background:var(--bg-subtle, #eef1ea);border-radius:var(--radius-pill, 999px);padding:.05rem .45rem}.returns-startform-dropdown{position:absolute;top:100%;left:0;right:0;z-index:20;margin-top:.2rem;max-height:220px;overflow-y:auto;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb);box-shadow:var(--shadow-md, 0 10px 30px rgba(19, 34, 27, .12))}.returns-startform-option{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;width:100%;text-align:left;border:none;background:none;cursor:pointer;padding:.4rem .6rem;font-size:var(--text-sm)}.returns-startform-option:hover{background:var(--bg-subtle, #f1f4ee)}.returns-startform-option-name{color:var(--ink, #1c2b22)}.returns-startform-option-code{font-family:var(--mono);font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-startform-field small{font-weight:400;opacity:.8}.returns-startform-actions{display:flex;align-items:center;gap:.5rem}.returns-startform-hint{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72);margin-right:auto}.returns-viewtoggle{display:flex;align-items:center;gap:.6rem}.returns-viewtoggle-btns{display:inline-flex;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-pill, 999px);overflow:hidden}.returns-viewtoggle-on,.returns-viewtoggle-off{font-size:var(--text-sm);font-weight:600;padding:.3rem .9rem;border:none;cursor:pointer}.returns-viewtoggle-on{background:var(--accent, #0e7c66);color:#fff}.returns-viewtoggle-off{background:var(--panel, #fffffb);color:var(--ink-muted, #6b7d72)}.returns-viewtoggle-hint{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-unit-pcard-symptom{font-size:var(--text-xs);color:var(--ink-muted, #6b7d72);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.returns-unit-outcome{font-size:var(--text-sm);font-weight:600;color:var(--accent, #0e7c66)}.returns-journey{display:flex;align-items:baseline;flex-wrap:wrap;gap:.35rem}.returns-journey-track{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.3rem;font-size:var(--text-xs);color:var(--ink, #1c2b22)}.returns-journey-step{display:inline-flex;align-items:baseline;gap:.3rem}.returns-journey-arrow{color:var(--ink-muted, #6b7d72)}.returns-unit-outcome-banner{font-size:var(--text-sm);font-weight:700;padding:.35rem .6rem;border-radius:var(--radius-md, 8px);background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66)}.returns-unit-outcome-scrap{background:var(--status-danger-soft-bg, #fbe6e2);color:var(--status-danger-soft-fg, #b3402b)}.returns-status-chip,.returns-stage-chip,.returns-meta-chip{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;padding:.1rem .45rem;border-radius:var(--radius-pill, 999px);background:var(--status-info-soft-bg, #e8f0fb);color:var(--status-info-soft-fg, #2563a8)}.returns-stage-chip{background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66)}.returns-meta-chip{background:var(--status-warn-soft-bg, #fbf3e0);color:var(--status-warn-soft-fg, #a8742a)}.returns-tag-advance{align-self:flex-start;font-size:var(--text-xs);font-weight:700;color:var(--accent-2, #d95f02)}.returns-detail-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;font-size:var(--text-base);padding:.75rem .85rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-lg, 12px);background:var(--panel, #fffffb)}.returns-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted, #6b7d72);margin-right:.35rem}.returns-units{display:grid;gap:.6rem}.returns-unit-card{display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb);padding:.7rem .8rem}.returns-unit-top{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.returns-unit-product{font-family:var(--mono);font-weight:700;font-size:var(--text-sm)}.returns-unit-identity{display:inline-flex;align-items:baseline;gap:.4rem;flex:1 1 auto;min-width:0}.returns-type-badge{flex:none;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.12rem .5rem;border-radius:var(--radius-pill, 999px);background:var(--bg-subtle, #eef1ea);color:var(--ink, #1c2b22)}.returns-type-blaster{background:var(--status-info-soft-bg, #e8f0fb);color:var(--status-info-soft-fg, #2563a8)}.returns-type-vest{background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66)}.returns-type-battery{background:var(--status-warn-soft-bg, #fbf3e0);color:var(--status-warn-soft-fg, #a8742a)}.returns-type-accessory{background:#efe8fb;color:#6b46c1}.returns-type-other{background:var(--bg-subtle, #eef1ea);color:var(--ink-muted, #6b7d72)}.returns-unit-no{font-family:var(--mono);font-weight:700;font-size:var(--text-sm);color:var(--ink, #1c2b22)}.returns-unit-code{font-family:var(--mono);font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-unit-symptom{font-size:var(--text-sm);color:var(--ink, #1c2b22)}.returns-dx{display:grid;gap:.3rem;padding:.5rem .6rem;border-radius:var(--radius-md, 8px);background:var(--bg-subtle, #f1f4ee)}.returns-dx-row{display:grid;grid-template-columns:7.5rem 1fr;gap:.5rem;align-items:baseline}.returns-dx-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted, #6b7d72)}.returns-dx-label-tech{color:var(--accent, #0e7c66)}.returns-dx-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem;font-size:var(--text-sm);color:var(--ink, #1c2b22)}.returns-dx-empty{color:var(--ink-muted, #6b7d72)}.returns-symptom-tag{font-size:var(--text-xs);font-weight:600;padding:.05rem .4rem;border-radius:var(--radius-pill, 999px);background:var(--panel, #fffffb);border:1px solid var(--stroke, #c6d0c3);color:var(--ink-muted, #6b7d72)}.returns-photos{display:flex;flex-wrap:wrap;gap:.4rem}.returns-photo-thumb{display:block;width:64px;height:64px;border-radius:var(--radius-md, 8px);overflow:hidden;border:1px solid var(--stroke, #c6d0c3);background:var(--bg-subtle, #eef1ea)}.returns-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.returns-unit-metaline{display:flex;flex-wrap:wrap;gap:.5rem;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-unit-actions{display:flex;flex-wrap:wrap;gap:.4rem}.returns-stage-btn{font-size:var(--text-xs);font-weight:600;padding:.3rem .6rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--bg, #f6f7f3);color:var(--accent, #0e7c66);cursor:pointer}.returns-stage-btn:hover:not(:disabled){background:var(--accent-soft, #e3f1ec)}.returns-stage-btn:disabled{opacity:.5;cursor:default}.td-returns-card .td-returns-link{font-family:var(--mono);font-size:var(--text-sm);font-weight:700;color:var(--accent, #0e7c66);text-decoration:none}.td-returns-card .td-returns-link:hover{text-decoration:underline}.td-returns-linked{display:flex;align-items:center;gap:.4rem}.td-start-return-btn{font-size:var(--text-sm);font-weight:600;padding:.4rem .7rem;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-md, 8px);background:var(--accent-soft, #e3f1ec);color:var(--accent, #0e7c66);cursor:pointer}.td-start-return-btn:hover:not(:disabled){background:var(--accent, #0e7c66);color:#fff}.td-start-return-btn:disabled{opacity:.5;cursor:default}.returns-suggestion{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:var(--text-xs);color:var(--ink, #1c2b22);padding:.35rem .5rem;border-radius:var(--radius-sm, 4px);background:var(--accent-soft, #e3f1ec)}.returns-suggestion-empty{background:var(--bg, #f6f7f3);color:var(--ink-muted, #6b7d72)}.returns-suggestion-tag{font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--accent, #0e7c66)}.returns-discrepancies{display:flex;flex-wrap:wrap;gap:.4rem}.returns-discrepancy-chip{font-size:var(--text-xs);font-weight:600;padding:.2rem .5rem;border-radius:var(--radius-pill, 999px);background:var(--status-danger-soft-bg, #fdf0f0);color:var(--status-danger-strong-fg, #b3261e)}.returns-tag-extra{font-size:var(--text-xs);font-weight:700;padding:.1rem .4rem;border-radius:var(--radius-pill, 999px);background:var(--status-warning-soft-bg, #fdf6e3);color:var(--status-warning-strong-fg, #8a6d00)}.returns-tag-notreturned{font-size:var(--text-xs);font-weight:700;padding:.1rem .4rem;border-radius:var(--radius-pill, 999px);background:var(--status-danger-soft-bg, #fdf0f0);color:var(--status-danger-strong-fg, #b3261e)}.returns-repair-form{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.returns-repair-input{font-size:var(--text-xs);padding:.25rem .4rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-sm, 4px);background:var(--panel, #fffffb)}.returns-receive{display:flex;flex-direction:column;gap:.75rem}.returns-receive-hint{font-size:var(--text-sm);color:var(--ink-muted, #6b7d72)}.returns-receive-list{display:flex;flex-direction:column;gap:.4rem}.returns-receive-row{display:flex;align-items:center;gap:.6rem;min-height:44px;padding:.4rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb)}.returns-receive-row-off{opacity:.5}.returns-receive-check{flex:0 0 auto;width:32px;height:32px;font-size:var(--text-md);font-weight:700;line-height:1;border:2px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--bg, #f6f7f3);color:#fff;cursor:pointer}.returns-receive-check-on{background:var(--accent, #0e7c66);border-color:var(--accent, #0e7c66)}.returns-receive-product{flex:1 1 auto;display:inline-flex;align-items:center;gap:.4rem}.returns-receive-product-input{flex:1 1 auto;font-family:var(--mono);font-size:var(--text-sm);padding:.35rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-sm, 4px);background:var(--panel, #fffffb)}.returns-receive-num{flex:0 0 5rem;font-size:var(--text-sm);padding:.35rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-sm, 4px);background:var(--panel, #fffffb)}.returns-receive-num:disabled{background:var(--bg, #f6f7f3);opacity:.6}.returns-receive-overage{display:flex;flex-direction:column;gap:.4rem}.returns-receive-overage-head{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm);font-weight:600;color:var(--ink-muted, #6b7d72)}.returns-receive-remove{flex:0 0 auto;width:32px;height:32px;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--bg, #f6f7f3);color:var(--ink-muted, #6b7d72);cursor:pointer}.returns-receive-actions{display:flex;gap:.5rem;justify-content:flex-end}.returns-receive-confirm{font-size:var(--text-sm);font-weight:700;padding:.5rem 1rem;min-height:44px;border:1px solid var(--accent, #0e7c66);border-radius:var(--radius-md, 8px);background:var(--accent, #0e7c66);color:#fff;cursor:pointer}.returns-receive-confirm:disabled{opacity:.5;cursor:default}.returns-dashboard{display:flex;flex-direction:column;gap:1rem}.returns-dash-counts{display:flex;flex-wrap:wrap;gap:.6rem}.returns-dash-stat{display:flex;flex-direction:column;align-items:center;min-width:5.5rem;padding:.5rem .75rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-md, 8px);background:var(--panel, #fffffb);font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-dash-num{font-size:var(--text-lg);font-weight:700;color:var(--ink, #1c2b22)}.returns-dash-stat-warn{background:var(--status-warning-soft-bg, #fdf6e3)}.returns-dash-stat-danger{background:var(--status-danger-soft-bg, #fdf0f0)}.returns-dash-section{display:flex;flex-direction:column;gap:.4rem}.returns-dash-head{font-size:var(--text-sm);font-weight:700;color:var(--ink, #1c2b22)}.returns-dash-sub{font-weight:400;font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-dash-rows{display:flex;flex-direction:column;gap:.3rem}.returns-dash-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.35rem .5rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-sm, 4px);background:var(--panel, #fffffb);font-size:var(--text-xs);color:var(--ink-muted, #6b7d72)}.returns-dash-prod{font-family:var(--mono);font-weight:600;color:var(--ink, #1c2b22)}.returns-dash-delta{color:var(--status-danger-strong-fg, #b3261e);font-weight:600}.returns-dash-age{margin-left:auto;font-weight:600}.returns-dash-count{margin-left:auto;font-weight:700;color:var(--ink, #1c2b22)}.returns-dash-bar{height:8px;border-radius:var(--radius-pill, 999px);background:var(--accent, #0e7c66);min-width:8px}.returns-tabs{display:flex;gap:.3rem;margin-right:auto;margin-left:.5rem}.returns-tab,.returns-tab-active{font-size:var(--text-sm);font-weight:600;padding:.3rem .7rem;border:1px solid var(--stroke, #c6d0c3);border-radius:var(--radius-pill, 999px);background:var(--panel, #fffffb);color:var(--ink-muted, #6b7d72);cursor:pointer}.returns-tab-active{background:var(--accent, #0e7c66);color:#fff;border-color:var(--accent, #0e7c66)}.returns-reconcile{display:flex;flex-direction:column;gap:.6rem}.returns-audit{display:flex;flex-direction:column;gap:.4rem;margin-top:.4rem}.returns-audit-list{display:flex;flex-direction:column;gap:.2rem}.returns-audit-row{display:flex;gap:.5rem;align-items:baseline;font-size:var(--text-xs);font-family:var(--mono);padding:.2rem .4rem;border-radius:var(--radius-sm, 4px);background:var(--bg, #f6f7f3)}.returns-audit-level{font-weight:700;color:var(--accent, #0e7c66)}.returns-audit-at{margin-left:auto;color:var(--ink-muted, #6b7d72)}.returns-audit-empty{font-size:var(--text-sm);color:var(--ink-muted, #6b7d72)}
