:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f9fafb;--border: #e5e7eb;--border-strong: #d1d5db;--text: #111827;--muted: #6b7280;--faint: #9ca3af;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-weak: #eff6ff;--pos: #047857;--neg: #b91c1c;--ok: #065f46;--ok-bg: #ecfdf5;--warn: #b45309;--warn-bg: #fffbeb;--err: #b91c1c;--err-bg: #fef2f2;--hl: #fef9c3;--sel: #dbeafe;--row-h: 24px;--radius: 6px;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--shadow: 0 4px 16px rgba(17, 24, 39, .12)}.bc-view .topbar{flex:none}.bc-chips{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;flex:none}.bc-chips .label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;margin-right:4px}.bc-chip{height:24px;padding:0 8px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);cursor:pointer;font-variant-numeric:tabular-nums}.bc-chip b{margin-right:4px}.bc-chip.is-on{background:var(--accent-weak);border-color:var(--accent);color:var(--accent)}.bc-kpis{flex:none}.bc-kpis .kpi b{font-variant-numeric:tabular-nums}.bc-kpis .is-warn b{color:var(--warn)}.bc-kpis .is-err b{color:var(--neg, #b91c1c)}.bc-kpis .is-on{text-decoration:underline}.bc-queue{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:2px 10px;border:1px solid var(--border-strong);border-radius:12px}.bc-queue .bar{width:120px;height:4px;background:var(--surface-2);border-radius:2px;overflow:hidden}.bc-queue .bar i{display:block;height:100%;background:var(--accent)}.bc-queue.is-warn{border-color:#fde68a;background:var(--warn-bg);color:var(--warn)}.bc-banner{flex:none}.bc-work{flex:1;display:flex;min-height:0}.bc-table-wrap{flex:1;min-width:0;overflow:auto;background:var(--surface)}.bc-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1280px}.bc-table th{position:sticky;top:0;z-index:2;background:var(--surface-2);text-align:left;font-weight:600;color:var(--muted);padding:5px 6px;border-bottom:1px solid var(--border-strong)}.bc-table th.bc-sortable{cursor:pointer;user-select:none}.bc-table th.bc-sortable:hover{color:var(--text)}.bc-table td{padding:3px 6px;border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bc-table tr.is-sel td{background:var(--accent-weak)}.bc-table tbody tr:not(.spacer-row):hover td{background:var(--surface-2);cursor:pointer}.bc-table .mono{font-family:var(--mono, ui-monospace, monospace)}.mp{display:inline-block;vertical-align:middle;min-width:20px;margin-right:2px;padding:0 2px;border-radius:3px;font-size:10px;font-weight:600;text-align:center;border:1px solid transparent}.mp-off{color:var(--border-strong)}.mp-todo{border-color:var(--border-strong);color:var(--muted)}.mp-ok{background:var(--accent-weak);border-color:var(--accent);color:var(--accent)}.mp-nf,.mp-err{background:#fee2e2;border-color:#fca5a5;color:#b91c1c}.pill{display:inline-block;padding:0 6px;border-radius:8px;font-size:11px;background:var(--surface-2);color:var(--muted)}.pill-pulled{background:#dcfce7;color:#166534}.pill-error{background:#fee2e2;color:#b91c1c}.pill-queued{background:var(--accent-weak);color:var(--accent)}.plus{margin-left:4px;padding:0 4px;border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:10px}.bc-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);gap:8px}.bc-panel{width:420px;flex:none;overflow:auto;background:var(--surface);border-left:1px solid var(--border-strong);padding:10px 12px}.bc-panel table{width:100%;border-collapse:collapse}.bc-panel th,.bc-panel td{text-align:left;padding:3px 4px;border-bottom:1px solid var(--border);vertical-align:top}.bc-panel .partial{background:#fef9c3}.bc-panel .unlisted{color:var(--muted)}.bc-banner:not(.is-error){background:var(--accent-weak);color:var(--accent);border-bottom-color:var(--border)}.bc-table .spacer-row td{padding:0;border:0}.bc-panel .msg.err{color:var(--err)}.bc-table tr.grp td{background:var(--surface-2);font-weight:600}.bc-table td.indent{padding-left:22px}.wms-ok{color:#166534}.wms-warn{color:var(--warn)}.bc-panel .mismatch{background:var(--warn-bg);color:var(--warn)}.field input[type=checkbox]{width:auto;height:auto}.bc-table td.grp-bc{cursor:pointer;text-decoration:underline dotted}.bc-panel .bc-h{margin:12px 0 4px}.bc-panel .bc-line{padding:2px 0}.bc-panel .bc-foot{margin-top:12px}.bc-table tr.grp.is-sel td{background:var(--accent-weak)}.bc-table td.num{font-variant-numeric:tabular-nums;font-weight:600}.mp-avail{border:1px dashed #16a34a;color:#166534;background:#f0fdf4}.bc-kpis .kpi-avail b{color:#166534}.mp-gone{text-decoration:line-through}.bc-panel .bc-stock{margin:4px 0 0;font-weight:600}.bc-panel .tag{font-size:10px;padding:0 5px;border-radius:6px;background:var(--surface-2);color:var(--muted)}.btn-sm{height:20px;padding:0 6px;font-size:11px}.mp-pending{position:relative;overflow:hidden;border-color:#f59e0b;color:#b45309;background:#fef3c7}.mp-pending.mp-entering{animation:mp-enter .35s ease-out both;animation-delay:var(--enter, 0ms)}.mp-pending:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);transform:translate(-120%);animation:mp-sweep 1.4s ease-in-out infinite;animation-delay:var(--sweep, .35s)}.mp-settle{animation:mp-settle .45s ease-out both;animation-delay:var(--settle, 0ms)}@keyframes mp-settle{0%{background:#fef3c7;border-color:#f59e0b;color:#b45309}}@keyframes mp-enter{0%{background:transparent;border-color:var(--border-strong);color:var(--muted)}}@keyframes mp-sweep{0%{transform:translate(-120%)}55%,to{transform:translate(120%)}}.pill-pulling{background:#fef3c7;color:#b45309;animation:pill-pulse 1.4s ease-in-out infinite;animation-delay:var(--phase, 0ms)}@keyframes pill-pulse{0%,to{opacity:1}50%{opacity:.55}}.bc-table tr.grp{cursor:pointer}.pill-new{background:#ede9fe;color:#6d28d9;font-weight:600;margin-left:4px}.bc-kpis .kpi-review b{color:#6d28d9}.bc-panel .bc-rel-title{color:var(--muted);display:inline-block;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.bc-table tr.found td{color:var(--muted);font-style:italic}.bc-table tr.found td.mono a{color:inherit}.pill-found-new{background:#ede9fe;color:#6d28d9;font-style:normal}.bc-table tr.found .mp{font-style:normal}.bc-table-wrap{overflow-anchor:none}.bc-table tbody tr:not(.spacer-row)>td{height:28px;box-sizing:border-box}.bc-table tr.found a.mp{text-decoration:none;cursor:pointer}.bc-table tr.found a.mp:hover{filter:brightness(.92)}.bc-table tr.found td.found-unv{color:var(--warn);text-decoration:underline dashed}.bc-panel .tag-unv{background:var(--warn-bg);color:var(--warn);white-space:nowrap}.bc-queue.is-warn{color:var(--warn);border-color:var(--warn)}.bc-progress{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.bc-progress .bc-queue{margin-left:0}.bc-progress .bc-queue .bar{width:80px}.bc-progress:empty{display:none}.bc-pull{position:relative;display:inline-block;overflow:hidden;vertical-align:middle;min-width:110px;padding:0 6px;line-height:18px;border:1px solid #f59e0b;border-radius:4px;background:#fef3c7;color:#b45309}.bc-pull.bc-pull-entering{animation:mp-enter .35s ease-out both;animation-delay:var(--enter, 0ms)}.bc-pull:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);transform:translate(-120%);animation:mp-sweep 1.4s ease-in-out infinite;animation-delay:var(--sweep, .35s)}.bc-settle{display:inline-block;padding:0 6px;margin-left:-7px;line-height:18px;border:1px solid transparent;border-radius:4px;animation:bc-settle .45s ease-out both;animation-delay:var(--settle, 0ms)}@keyframes bc-settle{0%{background:#fef3c7;border-color:#f59e0b;color:#b45309}}@media(prefers-reduced-motion:reduce){.mp-pending.mp-entering,.mp-settle,.mp-pending:after,.pill-pulling,.bc-pull.bc-pull-entering,.bc-pull:after,.bc-settle{animation:none}}.bc-panel .low-conf{color:var(--warn)}.bc-panel .bc-low-note{margin:0 0 4px;font-size:11px}.bc-table td.low-conf{color:var(--warn)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font:12px/1.35 var(--font);color:var(--text);background:var(--bg);display:grid;grid-template-rows:auto auto auto auto 1fr;overflow:hidden}[hidden]{display:none!important}.view{display:contents}.bc-view{grid-row:1 / -1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.seg a{display:inline-flex;align-items:center;height:24px;padding:0 8px;color:var(--muted);text-decoration:none}.seg a.is-on{background:var(--accent-weak);color:var(--accent);font-weight:600}button,input,select{font:inherit;color:inherit}.btn{height:26px;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;white-space:nowrap}.btn:hover{background:var(--surface-2)}label.btn{display:inline-flex;align-items:center}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{border-color:transparent;background:transparent;color:var(--muted)}.btn-ghost:hover{color:var(--text);background:var(--surface-2)}.link-btn{border:0;background:none;color:var(--accent);cursor:pointer;padding:0 4px}.topbar{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;position:relative;z-index:20}.brand{font-weight:700;font-size:13px;margin-right:6px;letter-spacing:.2px}.spacer{flex:1}.chip{position:relative;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border:1px dashed var(--border-strong);border-radius:13px;background:var(--surface);color:var(--muted);cursor:pointer}.chip.is-loaded{border-style:solid;border-color:#a7f3d0;background:var(--ok-bg);color:var(--ok)}.chip.is-warn{border-style:solid;border-color:#fde68a;background:var(--warn-bg);color:var(--warn)}.chip.is-error{border-style:solid;border-color:#fecaca;background:var(--err-bg);color:var(--err)}.chip-count{font-variant-numeric:tabular-nums;font-weight:600}.popover{position:absolute;top:calc(100% + 4px);left:0;min-width:300px;max-width:480px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:8px;color:var(--text);cursor:default;z-index:30}.popover-row{display:flex;align-items:center;gap:8px;padding:3px 0}.popover-row .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popover .msg{font-size:11px;padding:2px 0}.popover .msg.err{color:var(--err)}.popover .msg.warn{color:var(--warn)}.field{display:inline-flex;align-items:center;gap:4px;color:var(--muted)}.field input{width:58px;height:26px;padding:0 6px;border:1px solid var(--border-strong);border-radius:var(--radius);text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.field select{height:26px;padding:0 4px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text)}.field input.is-override{border-color:#fde68a;background:var(--warn-bg);color:var(--warn)}.owned{display:inline-flex;align-items:center;gap:6px}.owned-status{color:var(--muted);white-space:nowrap}.owned-status.is-warn{color:var(--warn)}.seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius);overflow:hidden}.seg button{height:24px;padding:0 8px;border:0;background:var(--surface);color:var(--muted);cursor:pointer}.seg button.is-on{background:var(--accent-weak);color:var(--accent);font-weight:600}.progress{position:relative;height:22px;background:var(--accent-weak);border-bottom:1px solid var(--border)}.progress-fill{position:absolute;inset:0 auto 0 0;width:0;background:#bfdbfe;transition:width .2s}.progress.indeterminate .progress-fill{width:30%;animation:slide 1.1s infinite ease-in-out}@keyframes slide{0%{left:-30%}to{left:100%}}.progress-msg{position:relative;padding:0 12px;line-height:22px;color:var(--accent-hover)}.banner{display:flex;gap:12px;padding:8px 12px;background:var(--err-bg);color:var(--err);border-bottom:1px solid #fecaca;white-space:pre-line}.banner-close{margin-left:auto;border:0;background:none;color:inherit;cursor:pointer;font-size:14px}.kpis{display:flex;align-items:center;gap:14px;padding:6px 12px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;position:relative;z-index:15}.kpi{display:flex;align-items:baseline;gap:5px}.kpi-value{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.kpi-label{color:var(--muted)}.fchip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 4px 0 8px;border-radius:11px;background:var(--accent-weak);color:var(--accent-hover)}.fchip button{border:0;background:none;color:inherit;cursor:pointer;padding:0 3px}.search{width:240px;height:26px;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius)}.menu{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;max-height:60vh;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:4px;z-index:30}.menu-item{display:flex;align-items:center;gap:6px;width:100%;padding:4px 8px;border:0;background:none;text-align:left;border-radius:4px;cursor:pointer}.menu-item:hover{background:var(--surface-2)}.menu-item .grow{flex:1}.menu-check{display:flex;align-items:center;gap:6px;padding:2px 8px;cursor:pointer}.menu hr{border:0;border-top:1px solid var(--border);margin:4px 0}.workspace{display:flex;min-width:0;min-height:0;position:relative}.table-wrap{flex:1;min-width:0;overflow:auto;background:var(--surface)}.grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content}.grid th{position:sticky;top:0;z-index:3;height:28px;padding:0 6px;background:var(--surface-2);border-bottom:1px solid var(--border-strong);border-right:1px solid var(--border);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);text-align:left;user-select:none}.grid th.num{text-align:right}.th-inner{display:flex;align-items:center;gap:3px;height:100%;overflow:hidden;cursor:pointer}.grid th.num .th-inner{justify-content:flex-end}.th-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sort-arrow{color:var(--accent);font-size:9px}.filter-btn{border:0;background:none;color:var(--faint);cursor:pointer;font-size:9px;padding:0 2px}.filter-btn.is-active{color:var(--accent)}.col-resize{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:4}.grid td{height:var(--row-h);padding:0 6px;border-bottom:1px solid #f1f3f5;border-right:1px solid #f7f8f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--surface)}.grid td.num{text-align:right;font-variant-numeric:tabular-nums}.grid td.pos{color:var(--pos);font-weight:600}.grid td.neg{color:var(--neg)}.grid tbody tr{cursor:default}.grid tbody tr:hover td{background:#f8fafc}.grid tr.is-hl td{background:var(--hl)}.grid tr.is-sel td{background:var(--sel)}.grid .sticky-col{position:sticky;left:0;z-index:2;border-right:1px solid var(--border-strong)}.grid th.sticky-col{z-index:5}.grid .spacer-row td{height:auto;padding:0;border:0;background:transparent}.copyable{font-family:var(--mono);font-size:11px;cursor:copy}.copyable:hover{text-decoration:underline dotted}.muted{color:var(--muted)}.col-filter{position:fixed;z-index:40;width:240px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px}.cf-sort{display:flex;gap:4px;margin-bottom:6px}.cf-sort a{flex:1;padding:3px 6px;border-radius:4px;text-align:center;cursor:pointer;background:var(--surface-2)}.cf-sort a.is-active{background:var(--accent-weak);color:var(--accent);font-weight:600}.cf-search input{width:100%;height:24px;padding:0 6px;border:1px solid var(--border-strong);border-radius:4px}.cf-actions{display:flex;justify-content:space-between;padding:4px 0}.cf-actions a{color:var(--accent);cursor:pointer}.cf-list{max-height:260px;overflow:auto}.cf-list label{display:flex;align-items:center;gap:6px;padding:1px 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cf-range .range-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.cf-range label{width:30px;color:var(--muted)}.cf-range input{flex:1;height:24px;padding:0 6px;border:1px solid var(--border-strong);border-radius:4px}.range-hint{color:var(--muted);font-size:11px}.detail{width:330px;flex:none;overflow:auto;background:var(--surface);border-left:1px solid var(--border-strong);padding:10px 12px}.detail-head{display:flex;gap:8px;align-items:flex-start}.detail-title{flex:1;font-size:13px;font-weight:600;line-height:1.3}.detail-close{border:0;background:none;font-size:16px;color:var(--muted);cursor:pointer}.badge{display:inline-block;padding:1px 6px;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:11px}.badge.owned{background:var(--warn-bg);color:var(--warn)}.badge.false-match{background:var(--err-bg);color:var(--err)}td.false-match{color:var(--err);font-weight:600}td.direct-match{color:var(--ok)}.detail h3{margin:12px 0 4px;font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted)}.kv{display:grid;grid-template-columns:auto 1fr;gap:2px 10px}.kv dt{color:var(--muted)}.kv dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}.wf{font-variant-numeric:tabular-nums}.wf-row{display:flex;justify-content:space-between;padding:2px 0;border-bottom:1px dashed #f1f3f5}.wf-row.total{border-bottom:0;border-top:1px solid var(--border-strong);margin-top:3px;padding-top:4px;font-weight:700}.wf-row .pos{color:var(--pos)}.wf-row .neg{color:var(--neg)}.kv dd.pos{color:var(--pos);font-weight:600}.kv dd.neg{color:var(--neg)}.links{display:flex;gap:10px;flex-wrap:wrap}.links a{color:var(--accent);text-decoration:none}.links a:hover{text-decoration:underline}.modal{width:min(560px,92vw);padding:0;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.modal::backdrop{background:#11182759}.modal-head{display:flex;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);font-weight:600;font-size:13px}.modal-body{padding:12px 14px;display:grid;gap:10px}.modal-body label.block{display:grid;gap:3px;font-weight:600}.modal-foot{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 14px;border-top:1px solid var(--border)}.radio-row{display:flex;gap:14px}.status{font-size:12px;color:var(--muted)}.status.ok{color:var(--ok)}.status.warn{color:var(--warn)}.status.err{color:var(--err)}.toast{position:fixed;bottom:16px;left:50%;transform:translate(-50%);padding:6px 12px;border-radius:var(--radius);background:#111827;color:#fff;z-index:60;box-shadow:var(--shadow)}.empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center;padding:24px}.empty h1{font-size:16px;color:var(--text);margin:0 0 8px}.empty p{margin:2px 0}#supplierDialog{width:min(1040px,94vw)}.sp-body{display:block;padding:12px 14px;max-height:min(72vh,760px);overflow:auto}.sp-beta{padding:0 6px;border-radius:9px;background:var(--accent-weak);color:var(--accent);font-size:11px;font-weight:600;margin-left:6px}.sp-empty{padding:28px 18px;border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;background:var(--surface-2)}.sp-drop-title{margin:0 0 4px;font-weight:600;font-size:14px}#supplierDialog.is-dropping .sp-empty{border-color:var(--accent);background:var(--accent-weak)}#supplierDialog.is-dropping .sp-body{outline:2px dashed var(--accent);outline-offset:-6px}.sp-empty p{margin:0 0 6px}.sp-file{display:flex;align-items:baseline;gap:10px;margin-bottom:2px}.sp-sheet,.sp-controls label{display:inline-flex;align-items:center;gap:5px;color:var(--muted)}.sp-hint{margin:0 0 8px;font-size:12px}.sp-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}.sp-preview{border-collapse:separate;border-spacing:0;font-size:12px;min-width:100%}.sp-preview th,.sp-preview td{border-bottom:1px solid var(--border);padding:3px 8px;text-align:left;white-space:nowrap;min-width:90px;max-width:420px;overflow:hidden;text-overflow:ellipsis}.sp-preview thead th{position:sticky;top:0;background:var(--surface);border-bottom:1px solid var(--border-strong);padding:4px}.sp-preview th[scope=row]{width:34px;padding:0;background:var(--surface-2);border-right:1px solid var(--border)}.sp-rownum{width:100%;height:100%;padding:3px 0;border:0;background:none;color:var(--faint);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.sp-rownum:hover{background:var(--sel);color:var(--text)}.sp-preview tr.is-skipped td{color:var(--faint);font-style:italic}.sp-preview tr.is-skipped td.is-mapped{background:none}.sp-preview tr.is-header td{background:var(--surface-2);font-weight:600;color:var(--text)}.sp-preview tr.is-header .sp-rownum{background:var(--accent);color:#fff}.sp-preview td.is-mapped{background:var(--accent-weak)}.sp-col{width:100%;min-width:86px;font:inherit;color:var(--muted);border:1px solid var(--border);border-radius:4px;background:var(--surface);padding:1px 2px}.sp-col:has(option[value=ean]:checked),.sp-col:has(option[value=price]:checked),.sp-col:has(option[value=quantity]:checked){color:var(--accent);border-color:var(--accent);font-weight:600}.sp-expanded{margin:8px 0;max-height:220px;overflow:auto}.sp-preview th.sp-how{width:150px;min-width:150px;color:var(--muted)}.sp-preview th.sp-outcome{width:150px;min-width:150px;padding:3px 8px;font-weight:500;color:var(--muted)}.sp-preview th.sp-outcome.is-ok{color:var(--ok)}.sp-preview th.sp-outcome.is-warn{color:var(--warn)}.sp-preview th.sp-outcome.is-err{color:var(--err)}.sp-added{padding:0 5px;border-radius:8px;background:var(--accent-weak);color:var(--accent);font-size:11px}.sp-preview tr.is-added td{background:var(--accent-weak)}.sp-rate{color:var(--accent);font-size:12px}.sp-preview td.is-converted{color:var(--accent);font-weight:600}.sp-controls input[type=number]{width:88px}.sp-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:10px 0 6px}.sp-switch{color:var(--text);white-space:nowrap}.sp-gain{color:var(--accent);font-weight:600;white-space:nowrap}.sp-reads{margin:0 0 4px;color:var(--muted);font-size:12px}.sp-reads .mono{color:var(--text)}.sp-numbers{color:var(--faint)}.sp-numbers .link-btn{margin-left:4px}.sp-result{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.sp-summary{margin:0 0 6px;font-weight:600}.sp-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}.sp-chip{padding:1px 8px;border-radius:10px;font-size:12px;background:var(--surface-2);color:var(--muted)}.sp-chip.is-ok{background:var(--ok-bg);color:var(--ok)}.sp-chip.is-warn{background:var(--warn-bg);color:var(--warn)}.sp-chip.is-err{background:var(--err-bg);color:var(--err)}.sp-result p.muted{margin:4px 0 0;font-size:12px}.fp-modal{width:min(640px,92vw)}.fp-scroll{max-height:60vh;overflow:auto}.fp-table{width:100%;border-collapse:collapse}.fp-table th{text-align:left;color:var(--muted);font-weight:600;position:sticky;top:0;background:var(--surface)}.fp-table th,.fp-table td{padding:4px 6px;border-bottom:1px solid var(--border)}.sp-keepa{margin:0;padding:6px 14px;border-top:1px solid var(--border)}.tb-sep{width:1px;height:20px;background:var(--border)}.tb-menu{position:relative}.tb-menu>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center}.tb-menu>summary::-webkit-details-marker{display:none}.tb-menu .menu-list{position:absolute;right:0;top:calc(100% + 4px);min-width:190px;padding:4px;display:grid;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:30}.tb-menu .menu-item{text-align:left;padding:6px 10px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);cursor:pointer;white-space:nowrap;font:inherit}.tb-menu .menu-item:hover,.tb-menu .menu-item:focus-visible{background:var(--surface-2)}.topbar .owned-status{max-width:210px;overflow:hidden;text-overflow:ellipsis}.sp-sum{border-collapse:collapse;margin:2px 0 6px;font-size:13px}.sp-sum td,.sp-sum th{padding:3px 10px 3px 0;text-align:left;vertical-align:baseline}.sp-sum th{font-weight:600;white-space:nowrap}.sp-sum td.num{text-align:right;font-weight:700;font-variant-numeric:tabular-nums;min-width:48px}.sp-sum tr.is-ok td.num{color:var(--ok)}.sp-sum tr.is-warn td.num,.sp-sum tr.is-warn th{color:var(--warn)}.sp-sum tr.is-muted td.num{color:var(--muted)}.sp-plus{color:var(--ok);font-weight:600}.rn-modal{width:min(980px,94vw)}.rn-scroll{max-height:62vh;overflow:auto}.rn-table{width:100%;border-collapse:collapse}.rn-table th{text-align:left;color:var(--muted);font-weight:600;position:sticky;top:0;background:var(--surface)}.rn-table th,.rn-table td{padding:5px 6px;border-bottom:1px solid var(--border);white-space:nowrap}.rn-table .num{text-align:right;font-variant-numeric:tabular-nums}.rn-table .rn-name{max-width:260px;overflow:hidden;text-overflow:ellipsis}.rn-files .btn+.btn{margin-left:4px}.rn-note{margin:6px 0 0;font-size:12px}.detail-sub{margin-top:4px;display:flex;gap:6px;align-items:center}.dt-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.dt-tile{display:grid;gap:1px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.dt-tile-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted)}.dt-tile b{font-size:16px;font-variant-numeric:tabular-nums}.dt-tile.pos{background:var(--ok-bg);border-color:#a7f3d0}.dt-tile.pos b{color:var(--pos)}.dt-tile.neg{background:var(--err-bg);border-color:#fecaca}.dt-tile.neg b{color:var(--neg)}.dt-basis{margin:6px 0 0;font-size:12px}.dt-prices dt.is-used,.dt-prices dd.is-used{color:var(--text);font-weight:600}.badge.used{margin-left:6px;background:var(--accent-weak);color:var(--accent)}.kv dd.dt-wrap{white-space:normal;overflow-wrap:anywhere}.dt-links{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.dt-links a.btn{display:inline-flex;align-items:center;text-decoration:none;color:var(--text)}.btn,.link-btn,.menu-item,.bc-chip,.chip,.grid tbody td,.bc-table td{transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.detail.is-entering{animation:dt-enter .22s ease-out}.detail.is-swapping>*{animation:dt-fade .18s ease-out}@keyframes dt-enter{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}@keyframes dt-fade{0%{opacity:.35}to{opacity:1}}dialog.modal[open]{animation:modal-in .18s ease-out}dialog.modal[open]::backdrop{animation:backdrop-in .18s ease-out}@keyframes modal-in{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:none}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.tb-menu[open] .menu-list{animation:pop-in .14s ease-out}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.banner:not([hidden]),.toast:not([hidden]){animation:pop-in .2s ease-out}#enricherView:not([hidden])>:is(.topbar,.kpis,.workspace),#barcodesView:not([hidden]){animation:backdrop-in .2s ease-out}@media(prefers-reduced-motion:reduce){.btn,.link-btn,.menu-item,.bc-chip,.chip,.grid tbody td,.bc-table td{transition:none}.detail.is-entering,.detail.is-swapping>*,dialog.modal[open],dialog.modal[open]::backdrop,.tb-menu[open] .menu-list,.banner:not([hidden]),.toast:not([hidden]),#enricherView:not([hidden])>:is(.topbar,.kpis,.workspace),#barcodesView:not([hidden]){animation:none}}.qty-split{color:var(--accent);font-weight:600}.grid tr.is-variant td{background:#f8fafc}.grid tr.has-variant td{border-bottom-color:transparent}.grid tr.is-variant td.sticky-col{box-shadow:inset 3px 0 0 var(--accent)}.grid tr.is-variant td.variant-label{color:var(--accent);font-style:italic}.grid tr.is-variant.is-sel td{background:var(--accent-weak)}.preset-pick{display:grid;gap:1px;cursor:pointer}.preset-sum{font-size:11px;white-space:normal}.grid tr.is-skipped td{opacity:.5}.grid tr.is-skipped:hover td,.grid tr.is-skipped.is-sel td{opacity:.85}.skip-mark{color:var(--muted);font-style:italic}.sk-modal{width:min(820px,94vw)}.sk-controls{display:flex;gap:8px}.sk-controls .search{flex:1}.li-counts{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.li-count{padding:3px 8px;border:1px solid var(--border);border-radius:999px;font-size:12px}.ct-modal{width:min(900px,94vw)}.ct-add-modal{width:min(600px,94vw)}.ct-row-head{display:grid;gap:2px}.ct-name{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-grid{display:grid;gap:10px}.ct-region{display:grid;gap:4px}.ct-region-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em}.ct-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:6px}.ct-tile{display:grid;gap:3px;padding:6px 7px;border:1px solid var(--border);border-radius:6px;background:var(--surface);cursor:text}.ct-tile:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-weak)}.ct-tile.is-set{border-color:var(--accent);background:var(--accent-weak)}.ct-tile.is-current .ct-tile-head b:after{content:" ●";color:var(--accent);font-size:9px;vertical-align:middle}.ct-tile-head{display:flex;justify-content:space-between;align-items:baseline;font-size:12px}.ct-tile .ct-num{text-align:right;font-variant-numeric:tabular-nums}.ct-tile-sum{min-height:14px;font-size:10.5px;text-align:right}.ct-new-name{font:inherit;font-weight:400;padding:4px 8px;border:1px solid var(--border-strong);border-radius:var(--radius)}.ct-num{width:100%;min-width:0;font:inherit;padding:3px 6px;border:1px solid var(--border-strong);border-radius:var(--radius)}.ct-table .ct-num{width:72px}.ct-table th.num{text-align:right}.ct-table td.num{text-align:right;font-variant-numeric:tabular-nums}.ct-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ct-name{flex:0 1 320px;font:inherit;padding:3px 8px;border:1px solid var(--border-strong);border-radius:var(--radius)}.mark-badge.is-po{background:var(--ok-bg);color:var(--ok)}.ct-copy{font-weight:600}.ct-tip{margin:0}.ct-run{font-size:12px}.sk-table .sk-title{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-head>.muted{margin-left:6px;font-weight:400}.dt-marks{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.dt-marks:empty{display:none}.mark-badge{display:inline-flex;align-items:center;gap:4px;min-height:22px;padding:0 9px;border-radius:11px;background:#f3f4f6;color:#374151;font-size:12px}.mark-badge.is-false{background:var(--err-bg);color:var(--err);font-weight:600}.mark-badge.is-enriched{background:var(--warn-bg);color:#92400e}.dt-hint{margin:6px 0 0;font-size:11px}.ctx-menu{position:fixed;z-index:60;min-width:230px;max-width:320px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 28px #11182729;font-size:12px;animation:pop-in .12s ease-out}.ctx-head{display:grid;gap:1px;padding:6px 8px;margin-bottom:4px;border-bottom:1px solid var(--border)}.ctx-head b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctx-head span{color:var(--muted);font-size:11px}.ctx-label{padding:4px 8px 2px;color:var(--muted);font-size:11px}.ctx-sep{height:1px;margin:4px 2px;background:var(--border)}.ctx-item{display:flex;align-items:center;gap:8px;width:100%;min-height:28px;padding:3px 8px;border:0;border-radius:5px;background:none;color:var(--text);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.ctx-item:hover:not(:disabled),.ctx-item:focus-visible,.ctx-item[aria-haspopup]:focus{background:var(--accent-weak);outline:none}.ctx-item:disabled{color:var(--faint);cursor:default}.ctx-item.is-danger{color:var(--err)}.ctx-icon{display:inline-flex;flex:none;color:var(--muted)}.ctx-icon.is-star{color:#ca8a04}.ctx-icon.is-check{color:#16a34a}.ctx-item.is-danger .ctx-icon{color:currentColor}.ctx-item:disabled .ctx-icon{color:var(--faint)}.ctx-item.is-checked{font-weight:600}.ctx-item.is-checked:before{content:"";flex:none;width:8px;height:8px;margin:0 3px;border-radius:50%;background:#374151}.ctx-text{display:grid;flex:1;min-width:0}.ctx-links{display:flex;align-items:center;gap:2px;padding:2px 4px}.ctx-links-label{color:var(--faint);font-size:11px;padding:0 2px 0 4px}.ctx-links-sep{width:1px;align-self:stretch;margin:2px 4px;background:var(--border)}.ctx-item.ctx-link{width:auto;flex-direction:column;gap:1px;min-height:0;padding:4px 6px;font-size:10.5px;color:var(--muted);text-align:center}.ctx-link .ctx-icon{color:var(--text)}.ctx-sub{color:var(--faint);font-size:11px;font-weight:400}.ctx-sub.is-false{color:var(--err)}.ctx-arrow{margin-left:auto;color:var(--faint);font-size:14px}@media(prefers-reduced-motion:reduce){.ctx-menu{animation:none}}.st-h{margin:4px 0 2px;font-size:13px}.st-h+.st-note{margin:0 0 6px}.st-row{display:flex;align-items:center;gap:8px;margin-bottom:14px}.cf-modal{width:min(440px,94vw)}.cf-modal .modal-body p{margin:0 0 8px;line-height:1.45}.btn.btn-danger{background:var(--err);border-color:var(--err);color:#fff;font-weight:600}.btn.btn-danger:hover{background:#991b1b}.st-modal{width:min(560px,94vw)}.st-table td.num input{width:72px;height:24px;padding:0 6px;border:1px solid var(--border-strong);border-radius:4px;font-variant-numeric:tabular-nums}.st-table input.is-override{border-color:#fde68a;background:var(--warn-bg);color:var(--warn)}.st-table tr.is-current td{background:var(--accent-weak);font-weight:600}.st-table{margin-bottom:14px}.st-cur{margin-left:4px;font-size:11px}.fb-modal{width:min(1040px,94vw)}.fb-body{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:18px}.fb-form{display:grid;gap:10px}.fb-area,.fb-form input[type=text]{width:100%;font:inherit;padding:6px 8px;border:1px solid var(--border-strong);border-radius:var(--radius);font-weight:400}.fb-area{resize:vertical}.fb-label{display:block;font-weight:600;margin-bottom:3px}.fb-shot{min-height:44px;padding:8px 10px;border:1px dashed var(--border-strong);border-radius:var(--radius);display:flex;align-items:center}.fb-shot:focus{outline:2px solid var(--accent-weak);border-color:var(--accent)}.fb-thumb{display:flex;align-items:center;gap:10px}.fb-thumb img{max-height:90px;max-width:220px;border:1px solid var(--border);border-radius:4px}.fb-ctx{max-height:180px;overflow:auto;margin:6px 0 0;padding:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);font:11px/1.4 var(--mono)}.fb-foot{display:flex;align-items:center;gap:8px}.fb-earlier{border-left:1px solid var(--border);padding-left:18px;min-width:0}.fb-list{max-height:60vh;overflow-y:auto;display:grid;gap:8px}.fb-item{border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;display:grid;gap:4px}.fb-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fb-text{white-space:pre-wrap;overflow-wrap:anywhere}.fb-reply{background:var(--accent-weak);border-radius:4px;padding:4px 8px;white-space:pre-wrap}.fb-status{font-size:11px;font-weight:600;border-radius:8px;padding:1px 7px;background:#f3f4f6;color:#374151}.fb-status.is-planned{background:var(--warn-bg);color:var(--warn)}.fb-status.is-done{background:var(--ok-bg);color:var(--ok)}.fb-status.is-wont-do{background:#f3f4f6;color:var(--muted)}@media(max-width:820px){.fb-body{grid-template-columns:1fr}.fb-earlier{border-left:0;padding-left:0}}.si-modal{width:min(360px,calc(100vw - 32px))}.si-form .block{display:flex;flex-direction:column;gap:4px;margin:10px 0}.si-form input{padding:6px 8px}.si-error{color:var(--err);min-height:1.2em;margin:4px 0}.gk-modal{--gk-bg: #f6f7f9;--gk-surface: #fff;--gk-surface-2: #f9fafb;--gk-border: #e5e7eb;--gk-border-strong: #d1d5db;--gk-text: #111827;--gk-muted: #6b7280;--gk-accent: #2563eb;--gk-accent-hover: #1d4ed8;--gk-accent-weak: #eff6ff;--gk-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;width:calc(100vw - 32px);max-width:1880px;height:calc(100vh - 32px);max-height:none;padding:0;border:1px solid var(--gk-border);border-radius:8px;box-shadow:0 4px 16px #1118271f;display:none;flex-direction:column;overflow:hidden;box-sizing:border-box;font:12px/1.35 var(--gk-font);color:var(--gk-text);background:var(--gk-surface)}.gk-modal *,.gk-modal *:before,.gk-modal *:after{box-sizing:border-box}.gk-modal [hidden]{display:none!important}.gk-modal button{font:inherit;color:inherit}.gk-modal[open]{display:flex;animation:gk-in .18s ease-out}.gk-modal::backdrop{background:#11182759}.gk-modal:focus{outline:none}.gk-spacer{flex:1}.gk-muted{color:var(--gk-muted);margin-left:6px;font-weight:400}.gk-head{display:flex;align-items:center;gap:12px;height:48px;flex:none;padding:0 14px;border-bottom:1px solid var(--gk-border);font-weight:600;font-size:13px}.gk-title{font-size:15px}.gk-close{border:0;background:none;cursor:pointer;padding:0}.gk-btn-text{height:28px;padding:0 12px;border:1px solid var(--gk-border-strong);border-radius:6px;background:var(--gk-surface);cursor:pointer;white-space:nowrap}.gk-btn-text:hover:not(:disabled){background:var(--gk-surface-2)}.gk-btn-text:disabled{opacity:.5;cursor:default}.gk-btn-text.is-pri{background:var(--gk-accent);border-color:var(--gk-accent);color:#fff;font-weight:600}.gk-btn-text.is-pri:hover{background:var(--gk-accent-hover)}.gk-screen{position:absolute;left:0;top:0;transform-origin:0 0}.gk-frame{position:absolute;left:0;top:0;opacity:0;z-index:0;transition:opacity 0s linear .2s}.gk-tip{position:absolute;background:#fff;border:1px solid #c7c7c7;box-shadow:0 2px 6px #0003;padding:5px 8px;font-size:12px;line-height:1.45;white-space:pre-line;z-index:3}.gk-dd{position:absolute;background:#fff;border:1px solid #767676;box-shadow:0 4px 10px #0003;padding:2px 0;font-size:13px;z-index:6}.gk-prompt{position:absolute;width:448px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #0000004d;font-size:13px;display:flex;flex-direction:column;gap:10px;z-index:6}.gk-fp{position:absolute;width:960px;height:560px;background:#f3f3f3;border:1px solid #8a8a8a;border-radius:8px;box-shadow:0 16px 48px #00000059;font:12px/1.3 Segoe UI,system-ui,sans-serif;color:#1b1b1b;overflow:hidden;z-index:6}.gk-keys{display:flex;align-items:center;gap:5px;color:var(--gk-muted);font-weight:400;margin-right:8px}.gk-keys kbd{font:11px ui-monospace,Menlo,monospace;min-width:18px;height:20px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gk-border-strong);border-bottom-width:2px;border-radius:4px;background:var(--gk-surface-2);color:var(--gk-text)}.gk-keys kbd+:not(kbd){margin-left:4px}.gk-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--gk-muted)}.gk-body{display:flex;flex:1;min-height:0}.gk-nav{padding:12px 10px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.gk-nav-i{display:flex;align-items:center;gap:10px;width:100%;min-height:40px;padding:0 10px;border:0;border-radius:6px;background:none;cursor:pointer;text-align:left;font-size:13px;color:var(--gk-text)}.gk-nav-i:hover{background:var(--gk-border)}.gk-n{flex:none;min-width:24px;height:24px;padding:0 5px;border-radius:12px;border:1.5px solid var(--gk-border-strong);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--gk-muted)}.gk-nav-i.is-sub{min-height:34px;padding-left:26px;font-size:12px}.gk-nav-i.is-seen .gk-n{border-color:var(--gk-accent);color:var(--gk-accent)}.gk-nav-i.is-open{font-weight:600}.gk-nav-i.is-open .gk-n{border-color:var(--gk-accent);color:var(--gk-accent)}.gk-nav-i.is-on{background:var(--gk-accent-weak);font-weight:600}.gk-nav-i.is-on .gk-n{background:var(--gk-accent);border-color:var(--gk-accent);color:#fff}.gk-wip-tag{margin-left:auto;flex:none;font-size:10px;font-weight:600;color:#92400e;background:#fef3c7;border-radius:8px;padding:1px 6px}.gk-main{display:flex;flex:1;min-width:0;min-height:0;padding:12px 16px}.gk-stage-wrap{flex:1;min-width:0;min-height:0;display:flex;justify-content:center;align-items:flex-start}.gk-stage{position:relative;flex:none;border:1px solid var(--gk-border-strong);border-radius:6px;overflow:hidden;background:var(--gk-bg)}.gk-frame.is-on{opacity:1;z-index:1;transition:opacity .18s}.gk-cursor{position:absolute;width:24px;height:26px;pointer-events:none;z-index:9;transition:left .7s cubic-bezier(.4,0,.2,1),top .7s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.gk-cursor svg{transition:transform .12s;transform-origin:2px 2px}.gk-cursor.is-down svg{transform:scale(.82)}.gk-rip{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;border:3px solid var(--gk-accent);pointer-events:none;z-index:8;opacity:0}.gk-rip.is-go{animation:gk-rip .55s ease-out forwards}.gk-rtag{position:absolute;margin:22px 0 0 20px;background:var(--gk-accent);color:#fff;border-radius:5px;padding:2px 8px;font-size:12px;z-index:9;white-space:nowrap}.gk-dd div{height:20px;display:flex;align-items:center;padding:0 6px}.gk-dd .is-hl{background:#1a73e8;color:#fff}.gk-prompt b{font-size:14px}.gk-prompt-in{height:30px;border:2px solid #0b57d0;border-radius:4px;padding:0 8px;display:flex;align-items:center}.gk-caret{display:inline-block;width:1px;height:15px;background:currentColor;margin-left:1px;animation:gk-blink 1s steps(1) infinite}.gk-prompt-btns{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.gk-prompt-ok,.gk-prompt-cancel{width:80px;height:32px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;font-weight:500}.gk-prompt-ok{background:#0b57d0;color:#fff}.gk-prompt-cancel{border:1px solid #747775;color:#0b57d0}.gk-fp-title{height:32px;display:flex;align-items:center;padding-left:12px}.gk-fp-wb{width:46px;text-align:center;color:#444}.gk-fp-bar{height:44px;display:flex;align-items:center;gap:6px;padding:0 10px;border-bottom:1px solid #e5e5e5;background:#f9f9f9}.gk-fp-ar{width:28px;text-align:center;color:#666}.gk-fp-crumb{flex:1;height:30px;border:1px solid #e0e0e0;border-radius:4px;background:#fff;display:flex;align-items:center;padding:0 10px}.gk-fp-search{width:220px;height:30px;border:1px solid #e0e0e0;border-radius:4px;background:#fff;display:flex;align-items:center;padding:0 10px;color:#767676}.gk-fp-mid{display:flex;height:388px;background:#fff}.gk-fp-side{width:200px;flex:none;border-right:1px solid #ececec;padding:8px 6px;display:flex;flex-direction:column;gap:2px;background:#fafafa}.gk-fp-side div{height:28px;display:flex;align-items:center;padding:0 10px;border-radius:4px}.gk-fp-side .is-on{background:#e5f1fb}.gk-fp-list{flex:1;min-width:0}.gk-fp-h,.gk-fp-r{display:grid;grid-template-columns:330px 150px 190px 1fr;align-items:center;padding:0 12px}.gk-fp-h{height:28px;color:#5a5a5a;border-bottom:1px solid #ececec}.gk-fp-r{height:32px}.gk-fp-r span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gk-fp-r.is-sel{background:#cce8ff}.gk-fp-nm{display:flex;align-items:center;gap:8px}.gk-fp-foot{height:96px;border-top:1px solid #e5e5e5;padding:12px 16px;display:flex;flex-direction:column;gap:12px}.gk-fp-row{display:flex;align-items:center;gap:10px}.gk-fp-btns{justify-content:flex-end}.gk-fp-in{height:28px;border:1px solid #c8c8c8;border-bottom-color:#8a8a8a;border-radius:4px;background:#fff;display:flex;align-items:center;padding:0 8px}.gk-fp-name{flex:1}.gk-fp-type{width:300px}.gk-fp-btn{width:84px;height:28px;border:1px solid #c8c8c8;border-radius:4px;background:#fff;display:inline-flex;align-items:center;justify-content:center}.gk-fp-btn.is-pri{background:#005fb8;border-color:#005fb8;color:#fff}.gk-side{width:380px;flex:none;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--gk-border);background:var(--gk-surface-2)}.gk-side .gk-nav{flex:1;width:auto;border-right:0}.gk-ctl{display:flex;justify-content:flex-end;gap:8px;flex:none;padding:10px 12px;border-top:1px solid var(--gk-border)}.gk-ctl .gk-btn-text{height:34px;padding:0 18px;font-size:13px}.gk-says{flex:none;margin:2px 0 8px 22px;padding:0 0 0 12px;border-left:2px solid var(--gk-accent);list-style:none;display:flex;flex-direction:column;gap:4px;counter-reset:gk-say}.gk-nav-i.is-sub+.gk-says{margin-left:38px}.gk-say button{display:flex;gap:9px;width:100%;padding:6px 8px;border:1px solid transparent;border-radius:6px;background:none;cursor:pointer;text-align:left;font-size:13px;line-height:1.45;color:var(--gk-muted)}.gk-say button:before{counter-increment:gk-say;content:counter(gk-say);flex:none;width:20px;height:20px;border-radius:10px;border:1.5px solid var(--gk-border-strong);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:600}.gk-say button:hover{background:var(--gk-surface)}.gk-say.is-seen button{color:var(--gk-text)}.gk-say.is-seen button:before{border-color:var(--gk-accent);color:var(--gk-accent)}.gk-say.is-on button{color:var(--gk-text);background:var(--gk-surface);border-color:#bfdbfe;box-shadow:0 1px 3px #11182714;font-size:15px}.gk-say.is-on button:before{background:var(--gk-accent);border-color:var(--gk-accent);color:#fff}@media(max-width:1100px){.gk-body{flex-direction:column-reverse}.gk-side{width:auto;max-height:45%;border-right:0;border-top:1px solid var(--gk-border)}}.gk-marks,.gk-notes{position:absolute;inset:0;pointer-events:none}.gk-marks{z-index:2}.gk-marks>*{animation:gk-fade .25s ease-out}.gk-notes{z-index:7}.gk-dim{fill:#11182752}.gk-mark{position:absolute;border:4px solid var(--gk-accent);border-radius:8px}.gk-mark.is-top .gk-mark-n{top:auto;bottom:-18px}.gk-mark.is-left .gk-mark-n{left:4px}.gk-mark-n{position:absolute;left:-18px;top:-18px;min-width:36px;height:36px;padding:0 8px;border-radius:18px;background:var(--gk-accent);color:#fff;font:700 20px/36px var(--gk-font);text-align:center}.gk-note{position:absolute;width:0;height:0;animation:gk-fade .25s ease-out}.gk-note:before{content:"";position:absolute;left:-9px;top:-9px;width:18px;height:18px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 5px #f59e0b4d}.gk-note-b{position:absolute;width:max-content;max-width:520px;padding:14px 18px;border-radius:10px;background:#fffbeb;border:2px solid #f59e0b;box-shadow:0 6px 20px #0000002e;color:#1f2937;font:500 24px/1.35 var(--gk-font)}.gk-note.is-below .gk-note-b{top:26px;left:-30px}.gk-note.is-above .gk-note-b{bottom:26px;left:-30px}.gk-note.is-flip .gk-note-b{left:auto;right:-30px}.gk-note.is-right .gk-note-b{left:26px;top:-30px}.gk-note.is-left .gk-note-b{right:26px;top:-30px}@keyframes gk-fade{0%{opacity:0}}@keyframes gk-rip{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(1.2)}}@keyframes gk-blink{50%{opacity:0}}@keyframes gk-in{0%{opacity:0;transform:translateY(4px)}}
