:root{--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--slate-400: #94a3b8;--slate-500: #64748b;--slate-600: #475569;--slate-700: #334155;--slate-800: #1e293b;--slate-900: #0f172a;--white: #ffffff;--black: #000000;--navy-900: #102a43;--blue-50: #eff6ff;--blue-100: #dbeafe;--blue-200: #bfdbfe;--blue-600: #0b5fff;--blue-700: #1d4ed8;--blue-900: #1e3a8a;--green-50: #f0fdf4;--green-100: #dcfce7;--green-200: #bbf7d0;--green-400: #4ade80;--green-600: #16a34a;--green-800: #166534;--amber-50: #fffbeb;--amber-100: #fef3c7;--amber-200: #fde68a;--amber-400: #fbbf24;--amber-600: #d97706;--amber-800: #92400e;--red-50: #fef2f2;--red-100: #fee2e2;--red-200: #fecaca;--red-300: #fca5a5;--red-400: #f87171;--red-600: #dc2626;--red-700: #b91c1c;--red-800: #991b1b;--red-900: #7f1d1d;--orange-200: #fed7aa;--orange-800: #9a3412;--indigo-100: #e0e7ff;--indigo-800: #3730a3;--cyan-100: #cffafe;--cyan-800: #155e75;--alpha-white-08: rgba(255, 255, 255, .08);--alpha-white-14: rgba(255, 255, 255, .14);--alpha-white-75: rgba(255, 255, 255, .75);--alpha-white-85: rgba(255, 255, 255, .85);--alpha-amber-16: rgba(251, 191, 36, .16);--alpha-amber-35: rgba(251, 191, 36, .35);--color-canvas: #f4f6f8;--color-surface: var(--white);--color-surface-sunken: var(--slate-50);--color-shell: var(--navy-900);--color-text: #1a1a1a;--color-text-strong: var(--slate-900);--color-text-secondary: var(--slate-700);--color-text-muted: var(--slate-500);--color-text-subtle: var(--slate-400);--color-text-on-shell: var(--white);--color-text-on-shell-muted: var(--alpha-white-75);--color-border-subtle: var(--slate-100);--color-border: var(--slate-200);--color-border-strong: var(--slate-300);--color-accent: var(--blue-600);--color-accent-strong: var(--blue-700);--color-accent-surface: var(--blue-50);--color-accent-on: var(--white);--status-ok-surface: var(--green-50);--status-ok-bg: var(--green-100);--status-ok-border: var(--green-200);--status-ok-solid: var(--green-600);--status-ok-text: var(--green-800);--status-ok-on-shell: var(--green-400);--status-warn-surface: var(--amber-50);--status-warn-bg: var(--amber-100);--status-warn-border: var(--amber-200);--status-warn-solid: var(--amber-600);--status-warn-text: var(--amber-800);--status-warn-accent: var(--amber-400);--status-warn-on-shell: var(--amber-200);--status-danger-surface: var(--red-50);--status-danger-bg: var(--red-100);--status-danger-border: var(--red-200);--status-danger-border-strong: var(--red-300);--status-danger-solid: var(--red-600);--status-danger-text: var(--red-700);--status-danger-text-strong: var(--red-800);--status-danger-deep: var(--red-900);--status-danger-on-shell: var(--red-400);--status-danger-on-deep: var(--red-200);--status-info-surface: var(--blue-50);--status-info-bg: var(--blue-100);--status-info-border: var(--blue-200);--status-info-solid: var(--blue-600);--status-info-text: var(--blue-700);--status-info-text-strong: var(--blue-900);--status-neutral-bg: var(--slate-100);--status-neutral-text: var(--slate-600);--space-2: .125rem;--space-4: .25rem;--space-6: .375rem;--space-8: .5rem;--space-10: .625rem;--space-12: .75rem;--space-16: 1rem;--space-20: 1.25rem;--space-24: 1.5rem;--space-32: 2rem;--font-family-sans: "Segoe UI", system-ui, sans-serif;--font-family-mono: ui-monospace, "Cascadia Code", Consolas, monospace;--font-size-2xs: .75rem;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-md: .9375rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.25rem;--line-height-tight: 1.3;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-pill: 999px;--shadow-panel: 0 1px 3px rgba(0, 0, 0, .08);--shadow-overlay: 0 4px 16px rgba(0, 0, 0, .12);--shadow-focus: 0 0 0 2px rgba(11, 95, 255, .15);--shadow-ring-accent: 0 0 0 1px rgba(11, 95, 255, .125);--shadow-ring-danger: 0 0 0 1px var(--status-danger-solid);--shadow-inset-selected: inset 0 0 0 1px rgba(0, 0, 0, .08);--z-sticky-header: 2;--z-inline-hint: 40;--z-popover: 50;--transition-fast: .15s}.panel,.cases-table,.intake-source-panel,.intake-content-panel,.workspace-rail,.workspace-main,.feedback-panel,.empty-state-card,.kb-preview-card,.kb-detail-meta,.kb-detail-content,.kb-detail-review,.kb-upload-panel,.kb-validation-report,.kb-coverage-card,.kb-ledger-card{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-panel)}.panel-bordered,.kb-doc-card,.sample-case-card,.audit-timeline-body,.kb-reader{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.popover,.rerun-popover,.add-evidence-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:var(--z-popover);padding:var(--space-12);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay)}.btn,.primary-btn,.secondary-btn,.feedback-form button{display:inline-flex;align-items:center;margin-top:var(--space-6);padding:var(--space-6) var(--space-12);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;cursor:pointer;text-decoration:none}.btn:hover,.primary-btn:hover,.secondary-btn:hover{text-decoration:none}.btn-primary,.primary-btn{background:var(--color-accent);color:var(--color-accent-on);border-color:var(--color-accent)}.btn:disabled,.primary-btn:disabled,.secondary-btn:disabled{opacity:.5;cursor:not-allowed}.page-header-actions .primary-btn,.page-header-actions .secondary-btn,.workspace-step-actions .primary-btn,.workspace-step-actions .secondary-btn,.audit-pagination .secondary-btn,.rerun-popover-actions .primary-btn,.add-evidence-actions .primary-btn,.sample-case-card-actions .primary-btn{margin-top:0}.text-btn{padding:0;border:none;background:transparent;color:var(--color-accent);cursor:pointer;font:inherit}.text-btn:hover{text-decoration:underline}.text-btn:disabled{opacity:.5;cursor:not-allowed;text-decoration:none}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--slate-600);cursor:pointer}.icon-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.field-control,.intake-tier-columns input,.intake-tier-columns select,.intake-tier-columns textarea,.feedback-form input,.feedback-form select,.feedback-form textarea,.kb-form-field input,.kb-form-field select,.kb-form-field textarea,.audit-filter-bar select,.audit-date-field input,.kb-search-input,.kb-filter-select,.kb-tag-input,.kb-deprecate-confirm input,.rerun-popover-textarea,.add-evidence-textarea,.kb-ledger-reviewer,.kb-ledger-notes{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm)}.field-control,.intake-tier-columns input,.intake-tier-columns select,.intake-tier-columns textarea,.feedback-form input,.feedback-form select,.feedback-form textarea,.kb-form-field input,.kb-form-field select,.kb-form-field textarea,.audit-filter-bar select,.audit-date-field input,.kb-search-input,.kb-filter-select,.kb-tag-input,.kb-deprecate-confirm input{font:inherit}.rerun-popover-textarea,.add-evidence-textarea,.intake-tier-columns textarea{resize:vertical}.pill,.status-pill,.backend-status,.quality-badge,.role-badge{display:inline-flex;align-items:center;font-weight:600;border-radius:var(--radius-pill)}.tag,.sample-badge-sample,.sample-badge-uploaded,.sample-badge-fillin,.hidden-badge{display:inline-block;font-size:var(--font-size-2xs);font-weight:600;padding:var(--space-2) var(--space-6);border-radius:var(--radius-xs);margin-left:var(--space-6);vertical-align:middle}.data-table,.cases-table,.gamification-mock-table,.kb-coverage-table,.kb-ledger-table,.step-output table,.kb-reader table{width:100%;border-collapse:collapse}:root{color:var(--color-text);background:var(--color-canvas);font-family:var(--font-family-sans);line-height:var(--line-height-normal)}*{box-sizing:border-box}body{margin:0}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}.app-shell{height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-header{flex-shrink:0;display:flex;align-items:center;gap:var(--space-16);padding:var(--space-12) var(--space-24);background:var(--color-shell);color:var(--white)}.brand{display:inline-flex;align-items:center;gap:var(--space-12);color:var(--white);font-weight:700;font-size:var(--font-size-xl);text-decoration:none}.brand:hover{text-decoration:none;opacity:.95}.brand-logo-wrap{display:inline-flex;align-items:center;background:var(--black);border-radius:var(--radius-xs);padding:var(--space-2) var(--space-8);line-height:0}.brand-logo{height:28px;width:auto;display:block}.brand-title{font-weight:600;font-size:var(--font-size-lg);letter-spacing:.01em}.subtitle{opacity:.75;font-size:var(--font-size-md);margin-left:auto}.backend-status{gap:var(--space-6);font-size:var(--font-size-xs);padding:var(--space-4) var(--space-10);white-space:nowrap;margin-left:var(--space-16);background:var(--alpha-white-08)}.backend-status-green{color:var(--status-ok-on-shell)}.backend-status-red{color:var(--status-danger-on-shell)}.backend-status-slate{color:var(--color-text-on-shell-muted)}.backend-status-time{opacity:.6;font-weight:400}.role-badge{margin-left:auto;padding:var(--space-4) var(--space-10);font-size:var(--font-size-2xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--status-warn-on-shell);background:var(--alpha-amber-16);border:1px solid var(--alpha-amber-35);white-space:nowrap}.offline-banner{flex-shrink:0;display:flex;align-items:center;gap:var(--space-10);padding:var(--space-10) var(--space-24);background:var(--status-danger-deep);color:var(--status-danger-on-deep);font-size:var(--font-size-sm);font-weight:500}.app-nav{display:flex;align-items:center;gap:var(--space-4);margin-left:var(--space-24)}.app-nav-link{display:inline-flex;align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-12);border-radius:var(--radius-sm);color:var(--color-text-on-shell-muted);font-size:var(--font-size-md);font-weight:500;text-decoration:none}.app-nav-link:hover{color:var(--white);text-decoration:none;background:var(--alpha-white-08)}.app-nav-link.active{color:var(--white);background:var(--alpha-white-14)}.current-user{margin-left:var(--space-16);font-size:var(--font-size-sm);opacity:.85;white-space:nowrap}.logout-btn{display:inline-flex;align-items:center;gap:var(--space-6);margin-left:var(--space-8);color:var(--alpha-white-85);white-space:nowrap}.logout-btn:hover{color:var(--white)}.auth-loading{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--color-text-muted)}.login-shell{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--color-canvas)}.login-card{display:flex;flex-direction:column;gap:var(--space-12);width:100%;max-width:340px;padding:var(--space-32);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay)}.login-brand{display:flex;align-items:center;justify-content:center;gap:var(--space-12);margin-bottom:var(--space-8)}.login-brand-title{font-weight:700;font-size:var(--font-size-xl);color:var(--color-shell)}.login-submit{justify-content:center}.password-field{position:relative;display:flex}.password-field input{padding-right:2.25rem}.password-toggle-btn{position:absolute;top:0;right:0;bottom:0;width:2.25rem;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;color:var(--color-text-muted);cursor:pointer}.password-toggle-btn:hover{color:var(--color-accent)}.app-main{flex:1 1 auto;min-height:0;padding:var(--space-24);overflow-y:auto}.workspace.page{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-16);margin-bottom:var(--space-16)}.page-header-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-4)}.page-header-actions{display:flex;align-items:center;gap:var(--space-12);flex-shrink:0}.page-header-actions .primary-btn,.page-header-actions .secondary-btn{margin-top:0}.upload-row{display:flex;align-items:center;gap:var(--space-12)}.cases-table-wrapper{overflow:visible}.cases-table{overflow:clip;font-size:var(--font-size-xs)}.cases-table th,.cases-table td{padding:var(--space-8) var(--space-10);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.cases-table thead th{position:sticky;top:0;z-index:2;background:var(--color-surface);font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);white-space:nowrap}.sort-header{display:inline-flex;align-items:center;gap:var(--space-4);padding:0;border:none;background:transparent;font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer}.sort-header svg{color:var(--color-text-subtle)}.sort-header:hover,.sort-header-active{color:var(--color-text)}.sort-header-active svg{color:var(--color-accent)}.cases-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-12);margin-bottom:var(--space-16)}.cases-search-wrap{position:relative;flex:1 1 260px;max-width:360px}.cases-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:var(--color-text-subtle);pointer-events:none}.cases-search-input{width:100%;padding:var(--space-8) var(--space-8) var(--space-8) var(--space-32);font-size:var(--font-size-sm)}.cases-filter-select{padding:var(--space-8) var(--space-12);font-size:var(--font-size-sm);background:var(--color-surface)}.cases-count-summary{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);margin-left:auto}.cases-count{display:inline-flex;align-items:baseline;gap:var(--space-4);padding:var(--space-4) var(--space-10);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap}button.cases-count{cursor:pointer}button.cases-count:hover{border-color:var(--color-border-strong);color:var(--color-text)}.cases-count strong{color:var(--color-text);font-weight:700}.cases-count-attention strong{color:var(--status-warn-text)}.cases-count-active{border-color:var(--color-accent);color:var(--color-text);box-shadow:0 0 0 1px var(--color-accent) inset}.link-button{padding:0;border:none;background:transparent;color:var(--color-accent);font:inherit;cursor:pointer;text-decoration:underline}.cases-table .col-datetime{white-space:nowrap}.cases-table .col-tokens{text-align:right;white-space:nowrap}.last-step-cell{display:inline-flex;align-items:flex-start;gap:var(--space-6);max-width:12rem}.last-step-name{overflow-wrap:break-word}.asset-cell{display:flex;flex-direction:column;gap:var(--space-2);max-width:15rem;overflow-wrap:break-word}.asset-cell-service{color:var(--color-text-muted);font-size:var(--font-size-xs)}.asset-cell-type{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-6)}.status-pill.service-class-badge{gap:var(--space-4);font-size:var(--font-size-2xs);padding:var(--space-2) var(--space-6);border-radius:var(--radius-xs)}.actor-cell{padding:0;border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}.actor-cell:hover{color:var(--color-accent);text-decoration:underline}.actor-cell-ip{display:block;color:var(--color-text-subtle);font-size:var(--font-size-2xs);font-weight:400}.actor-stack{display:flex;flex-direction:column;gap:var(--space-4)}.actor-stack-label{color:var(--color-text-subtle);font-size:var(--font-size-2xs);margin-right:var(--space-4)}.case-actions{display:flex;flex-wrap:nowrap;gap:var(--space-8);align-items:center}.text-btn.danger-btn{color:var(--status-danger-text)}.text-btn.danger-btn:hover{color:var(--status-danger-text-strong)}.intake-source-panel{padding:var(--space-16);margin-bottom:var(--space-16)}.intake-panel{margin-bottom:var(--space-16)}.intake-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-16);margin-bottom:var(--space-16)}.intake-mode-tabs{display:flex;gap:var(--space-8);margin-bottom:var(--space-16)}.intake-content-panel{padding:var(--space-20)}.tab-btn{padding:var(--space-8) var(--space-12);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);cursor:pointer;font:inherit}.tab-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--white)}.intake-form-panel{max-height:60vh;overflow:auto;padding-right:var(--space-4)}.intake-form-section{margin-bottom:var(--space-24)}.intake-section-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-12);flex-wrap:wrap;margin-bottom:var(--space-12)}.intake-section-header h3{margin:0;display:flex;align-items:center;gap:var(--space-8)}.intake-section-icon{color:var(--color-text-muted);flex-shrink:0}.intake-section-progress{font-size:var(--font-size-xs);color:var(--status-warn-text);white-space:nowrap}.intake-section-progress.complete{color:var(--status-ok-text)}.tier-dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;flex-shrink:0}.tier-dot-1{background:var(--status-danger-solid)}.tier-dot-2{background:var(--status-warn-solid)}.tier-dot-3{background:var(--slate-400)}.intake-tier-columns{display:flex;gap:0 var(--space-24);align-items:flex-start}.intake-tier-column{flex:1;min-width:0}.intake-tier-column+.intake-tier-column{border-left:1px solid var(--color-border);padding-left:var(--space-24)}.tier-column-header{display:flex;align-items:center;gap:var(--space-6);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--slate-600);margin-bottom:var(--space-10)}.tier-column-count{font-weight:400;text-transform:none;letter-spacing:normal;color:var(--color-text-subtle)}.tier-column-fields{display:grid;gap:var(--space-12)}.tier-column-fields label{display:grid;gap:var(--space-6);font-size:var(--font-size-md)}.tier-column-3 .tier-column-fields input,.tier-column-3 .tier-column-fields select,.tier-column-3 .tier-column-fields textarea{border-color:var(--color-border)}.tier-column-3 .field-label{color:var(--color-text-muted)}.field-label{display:flex;flex-wrap:wrap;gap:var(--space-6);align-items:center}.or-group-info-icon{display:inline-flex;color:var(--color-text-subtle);cursor:help}.intake-tier-columns input,.intake-tier-columns select,.intake-tier-columns textarea{width:100%;min-height:2.35rem;padding:var(--space-8);line-height:var(--line-height-tight);box-sizing:border-box}.field-missing .field-label{color:var(--status-danger-text)}.field-missing input,.field-missing select,.field-missing textarea{border-color:var(--status-danger-solid);box-shadow:var(--shadow-ring-danger)}.service-class-help{display:grid;gap:var(--space-4);font-size:var(--font-size-xs);font-weight:400;line-height:var(--line-height-normal);color:var(--color-text-muted)}.service-class-suggestion{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-6);color:var(--color-text-secondary)}.service-class-help .text-btn{font-size:var(--font-size-xs)}.service-class-conflict{color:var(--status-warn-text)}.intake-form-notes{margin-bottom:var(--space-16)}.intake-form-notes p{margin:var(--space-6) 0}.intake-form-actions,.intake-upload-panel{margin-top:var(--space-16)}.intake-source-panel{margin-bottom:var(--space-16)}.intake-source-panel h3{margin:0 0 var(--space-6)}.intake-source-inline{margin-top:var(--space-6)}.workspace-breadcrumb-row{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:var(--space-16);margin-bottom:var(--space-16)}.workspace-breadcrumb{display:flex;align-items:center;gap:var(--space-6);font-size:var(--font-size-md)}.workspace-breadcrumb .back-link{margin-bottom:0}.breadcrumb-sep{color:var(--color-text-subtle)}.breadcrumb-current{font-weight:600}.service-class-block{flex-shrink:0;display:flex;align-items:center;gap:var(--space-12);padding:var(--space-8) var(--space-12);margin-bottom:var(--space-16);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.service-class-block-unset{background:var(--color-surface-sunken)}.service-class-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill)}.service-class-body{flex:1 1 auto;min-width:0;display:grid;gap:var(--space-2)}.service-class-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-6);font-size:var(--font-size-md)}.service-class-label{font-weight:600}.service-class-required{color:var(--color-text-secondary)}.service-class-basis{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-normal)}.service-class-basis .service-class-conflict{color:var(--status-warn-text)}.service-class-actions{position:relative;flex:0 0 auto}.service-class-actions .primary-btn,.service-class-actions .secondary-btn{margin-top:0}.service-class-popover{width:400px}.service-class-popover-title{margin:0 0 var(--space-8);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary)}.service-class-options{display:grid;gap:var(--space-6)}.service-class-option{display:flex;align-items:flex-start;gap:var(--space-8);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.service-class-option:hover{background:var(--color-surface-sunken)}.service-class-option.selected{border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.service-class-option input[type=radio]{margin:var(--space-2) 0 0}.service-class-option-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-pill)}.service-class-option-text{display:grid;gap:var(--space-2);font-size:var(--font-size-sm)}.service-class-option-label{font-weight:600}.service-class-option-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-normal)}.service-class-popover-note{margin:var(--space-8) 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-normal)}.service-class-error{margin:var(--space-8) 0 0;font-size:var(--font-size-xs);color:var(--status-danger-text)}.service-class-popover-actions{display:flex;align-items:center;gap:var(--space-12);margin-top:var(--space-10)}.service-class-popover-actions .primary-btn{margin-top:0}.service-class-popover-actions .text-btn{font-size:var(--font-size-sm)}.workspace-grid{display:grid;grid-template-columns:280px minmax(0,1fr) 320px;gap:var(--space-16);flex:1 1 auto;min-height:0}.workspace-rail,.workspace-main{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden}.workspace-rail{padding:var(--space-16)}.workspace-main{padding:0 var(--space-16) var(--space-16)}.feedback-panel{padding:var(--space-16)}.rail-heading{margin:0 0 var(--space-12);font-size:var(--font-size-md);color:var(--color-text-secondary)}.workspace-rail-right{display:flex;flex-direction:column;gap:var(--space-16)}.step-list{list-style:none;margin:0;padding:0}.step-list li{position:relative}.step-list li.selected{background:var(--color-accent-surface);border-radius:var(--radius-sm)}.step-select{display:flex;align-items:flex-start;gap:var(--space-10);width:100%;border:none;background:transparent;text-align:left;padding:var(--space-8) var(--space-6);border-radius:var(--radius-sm);cursor:pointer}.step-node{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:50%;flex:0 0 auto}.step-list li:not(:last-child) .step-node:after{content:"";position:absolute;top:100%;left:50%;width:2px;height:1.35rem;background:var(--color-border);transform:translate(-50%)}.step-node.step-node-running:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid transparent;border-top-color:var(--status-info-text);animation:spin 1s linear infinite}.step-body{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;padding-top:var(--space-2)}.step-title-row{display:flex;align-items:center;gap:var(--space-6)}.step-title{font-weight:600;font-size:var(--font-size-md)}.step-status-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.status-pill{gap:var(--space-6);font-size:var(--font-size-xs);padding:var(--space-4) var(--space-10);white-space:nowrap}.status-pill-green{background:var(--status-ok-bg);color:var(--status-ok-text)}.status-pill-amber{background:var(--status-warn-bg);color:var(--status-warn-text)}.status-pill-red{background:var(--status-danger-bg);color:var(--status-danger-text-strong)}.status-pill-blue{background:var(--status-info-bg);color:var(--status-info-text)}.status-pill-slate{background:var(--slate-100);color:var(--slate-600)}.status-pill-cyan{background:var(--cyan-100);color:var(--cyan-800)}.status-pill-orange{background:var(--orange-200);color:var(--orange-800)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon-spin{animation:spin 1s linear infinite}.step-output{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-20) var(--space-24);margin:var(--space-16) 0}.step-output>:not(.table-wrap):not(.sub-output),.sub-output>:not(.table-wrap){max-width:76ch}.step-output pre{white-space:pre-wrap;max-width:76ch}.step-output table{font-size:var(--font-size-md)}.step-output th,.step-output td{padding:var(--space-8) var(--space-12);border:1px solid var(--color-border-strong);text-align:left;vertical-align:top}.step-output th{background:var(--color-surface-sunken);font-weight:600}.step-output tbody tr:nth-child(2n){background:var(--color-surface-sunken)}.step-output .table-wrap{overflow-x:auto;margin:var(--space-16) 0}.priority-badge{display:inline-block;font-size:var(--font-size-xs);font-weight:700;padding:var(--space-4) var(--space-10);border-radius:var(--radius-pill);white-space:nowrap}.priority-critical{background:var(--red-200);color:var(--red-900)}.priority-important{background:var(--amber-200);color:var(--amber-800)}.priority-nice-to-have{background:var(--orange-200);color:var(--orange-800)}.step-output-export-root{position:fixed;left:-100000px;top:0;width:702px;max-width:702px;background:#fff;color:#111;z-index:-1;pointer-events:none;font-family:Arial,Segoe UI,sans-serif;font-size:10pt;line-height:1.4}.step-export-header{margin-bottom:14pt;padding-bottom:8pt;border-bottom:1px solid #ccc}.step-export-kicker{margin:0 0 4pt;font-size:9pt;color:#555;text-transform:uppercase;letter-spacing:.04em}.step-export-header h1{margin:0;font-size:14pt;font-weight:700;line-height:1.25}.step-output-export.step-output{max-height:none!important;overflow:visible!important;height:auto!important;margin:0;padding:0;border:none;border-radius:0;font-size:10pt;line-height:1.4}.step-output-export h1{font-size:13pt;margin:14pt 0 6pt}.step-output-export h2{font-size:11.5pt;margin:12pt 0 5pt}.step-output-export h3{font-size:10.5pt;margin:10pt 0 4pt}.step-output-export h4{font-size:10pt;margin:8pt 0 4pt}.step-output-export p,.step-output-export li{font-size:10pt;margin:0 0 6pt}.step-output-export ul,.step-output-export ol{margin:0 0 8pt;padding-left:18pt}.step-output-export table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse;font-size:8.5pt;margin:8pt 0}.step-output-export th,.step-output-export td{padding:4pt 5pt;border:1px solid #bbb;text-align:left;vertical-align:top;word-break:break-word;overflow-wrap:anywhere}.step-output-export th{background:#f3f4f6;font-weight:600}.step-output-export pre,.step-output-export code{font-family:Consolas,Courier New,monospace;font-size:8.5pt;white-space:pre-wrap;word-break:break-word}.step-output-export .table-wrap{overflow:visible!important;margin:8pt 0}.step-output-export details,.step-output-export .sub-output{margin-top:10pt;padding-top:8pt;border-top:1px dashed #ccc}.sub-output{margin-top:var(--space-16);padding-top:var(--space-16);border-top:1px dashed var(--color-border-strong)}.workspace-step-header{position:sticky;top:0;z-index:var(--z-sticky-header);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-16);margin:0 calc(-1 * var(--space-16)) var(--space-16);padding:var(--space-16);background:var(--color-surface);border-bottom:1px solid var(--color-border-subtle);border-radius:var(--radius-md) var(--radius-md) 0 0}.workspace-step-heading h1{margin:0 0 var(--space-8);font-size:var(--font-size-2xl)}.workspace-step-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-10)}.workspace-step-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-8);flex-shrink:0}.workspace-step-actions .primary-btn,.workspace-step-actions .secondary-btn{margin-top:0}.workspace-blocked-reason{margin:0 0 var(--space-16)}.step-download{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-4)}.step-download-actions{display:flex;flex-wrap:wrap;gap:var(--space-8)}.step-download-error{margin:0;font-size:var(--font-size-sm);color:var(--status-danger-text)}.feedback-form{display:grid;gap:var(--space-12)}.feedback-form label{display:grid;gap:var(--space-4);font-size:var(--font-size-md)}.feedback-form input,.feedback-form select,.feedback-form textarea{padding:var(--space-8)}.feedback-history-block{margin:var(--space-12) 0 var(--space-16)}.feedback-history-label{display:block;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-subtle);margin-bottom:var(--space-8)}.feedback-history-empty{margin:0}.feedback-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-10)}.feedback-history li{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:var(--space-8) var(--space-10);background:var(--color-surface-sunken)}.feedback-history-head{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap}.feedback-history-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.feedback-history-comment{margin:var(--space-6) 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.feedback-verdict-field{display:grid;gap:var(--space-6)}.feedback-verdict-label{font-size:var(--font-size-md)}.verdict-segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-8)}.feedback-form .verdict-option{justify-content:center;gap:var(--space-6);padding:var(--space-6) var(--space-8);margin-top:0;border:1px solid transparent;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.feedback-form .verdict-option-green{background:var(--status-ok-surface);border-color:var(--status-ok-border);color:var(--status-ok-text)}.feedback-form .verdict-option-amber{background:var(--status-warn-surface);border-color:var(--status-warn-border);color:var(--status-warn-text)}.feedback-form .verdict-option-red{background:var(--status-danger-surface);border-color:var(--status-danger-border);color:var(--status-danger-text-strong)}.feedback-form .verdict-option-slate{background:var(--color-surface-sunken);border-color:var(--color-border);color:var(--slate-600)}.feedback-form .verdict-option:hover{filter:brightness(.97)}.feedback-form .verdict-option.selected{color:var(--white);box-shadow:var(--shadow-inset-selected)}.feedback-form .verdict-option-green.selected{background:var(--status-ok-solid);border-color:var(--status-ok-solid)}.feedback-form .verdict-option-amber.selected{background:var(--status-warn-solid);border-color:var(--status-warn-solid)}.feedback-form .verdict-option-red.selected{background:var(--status-danger-solid);border-color:var(--status-danger-solid)}.feedback-form .verdict-option-slate.selected{background:var(--slate-600);border-color:var(--slate-600)}.feedback-logged-as{margin:0;font-size:var(--font-size-sm)}.feedback-form .feedback-save-btn{justify-self:start}.token-meta,.muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.step-version-picker{display:inline-flex;align-items:center;gap:var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-sm)}.step-version-nav{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2);border:none;background:transparent;color:inherit;cursor:pointer;border-radius:var(--radius-xs)}.step-version-nav:hover:not(:disabled){background:var(--slate-100)}.step-version-nav:disabled{opacity:.35;cursor:not-allowed}.step-version-label{white-space:nowrap}.step-version-instructions-toggle{display:inline-flex;align-items:center;padding:var(--space-2);border:none;background:transparent;color:var(--color-accent);cursor:pointer;border-radius:var(--radius-xs)}.step-version-instructions-toggle:hover{background:var(--slate-100)}.step-version-instructions{display:block;margin-top:var(--space-4);padding:var(--space-6) var(--space-10);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-secondary);max-width:400px;word-break:break-word}.version-history-banner,.stale-upstream-banner{margin:0 0 var(--space-16);padding:var(--space-10) var(--space-12);background:var(--status-warn-surface);border:1px solid var(--status-warn-border);border-radius:var(--radius-sm);color:var(--status-warn-text);font-size:var(--font-size-sm)}.stale-upstream-banner .text-btn{color:var(--status-warn-text);font-weight:600}.workspace-intake-blocked{flex:1;min-height:0;overflow-y:auto}.step-error{color:var(--status-danger-text);background:var(--status-danger-surface);border:1px solid var(--status-danger-border);padding:var(--space-12);border-radius:var(--radius-sm);margin:var(--space-8) 0}.step-error ul{margin:var(--space-6) 0 var(--space-6) var(--space-20);padding:0}.step-error li>ul{margin-top:var(--space-4)}.empty-state{color:var(--color-text-muted);padding:var(--space-32);text-align:center}.step-pending{max-width:42rem;margin:var(--space-24) auto;padding:var(--space-24);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-sunken)}.step-pending-description{margin:0;color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.step-pending-hint{margin:var(--space-12) 0 0;color:var(--color-text-subtle);font-size:var(--font-size-sm)}.back-link{display:inline-block;margin-bottom:var(--space-4)}.step-eval-badge{padding:var(--space-2);flex:0 0 auto}.stage-quality{border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius-md);padding:var(--space-12) var(--space-16);margin:var(--space-16) 0 0;background:var(--color-surface)}.stage-quality.badge-green{border-left-color:var(--status-ok-solid)}.stage-quality.badge-amber{border-left-color:var(--status-warn-solid)}.stage-quality.badge-red{border-left-color:var(--status-danger-solid)}.stage-quality-header{display:flex;align-items:center;gap:var(--space-12);flex-wrap:wrap}.quality-badge{gap:var(--space-6);font-size:var(--font-size-xs);padding:var(--space-2) var(--space-8)}.quality-badge.badge-green{background:var(--status-ok-bg);color:var(--status-ok-text)}.quality-badge.badge-amber{background:var(--status-warn-bg);color:var(--status-warn-text)}.quality-badge.badge-red{background:var(--status-danger-bg);color:var(--status-danger-text-strong)}.quality-accepted{font-size:var(--font-size-xs);color:var(--status-ok-text)}.quality-reason{margin:var(--space-10) 0 0;font-size:var(--font-size-md);color:var(--color-text-secondary)}.quality-checks{list-style:none;margin:var(--space-12) 0 0;padding:0;display:grid;gap:var(--space-10)}.quality-checks>li{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-10)}.check-head{display:flex;align-items:center;gap:var(--space-8);font-size:var(--font-size-2xs)}.check-status{display:inline-flex;align-items:center;gap:var(--space-4);text-transform:uppercase;font-weight:700;letter-spacing:.03em}.check-pass .check-status{color:var(--status-ok-text)}.check-fail .check-status{color:var(--status-danger-text)}.check-warn .check-status{color:var(--status-warn-text)}.check-name{font-family:var(--font-family-mono);color:var(--color-text-secondary)}.check-severity{color:var(--color-text-subtle);cursor:help}.check-message{font-size:var(--font-size-sm);margin-top:var(--space-2)}.check-detail{margin:var(--space-4) 0 0;padding-left:var(--space-16);font-size:var(--font-size-xs);color:var(--color-text-muted)}.quality-judge{margin-top:var(--space-16);border-top:1px solid var(--color-border-subtle);padding-top:var(--space-10)}.quality-judge summary{cursor:pointer;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.quality-judge summary:hover{color:var(--color-text-secondary)}.quality-judge ul{list-style:none;margin:var(--space-10) 0 0;padding:0;display:grid;gap:var(--space-12)}.quality-judge li{min-width:0}.judge-score-row{display:flex;align-items:baseline;gap:var(--space-8);font-size:var(--font-size-sm)}.judge-score{font-weight:700;flex:0 0 auto}.judge-score.score-1,.judge-score.score-2{color:var(--status-danger-text)}.judge-score.score-3{color:var(--status-warn-text)}.judge-score.score-4,.judge-score.score-5{color:var(--status-ok-text)}.judge-dim{text-transform:capitalize;min-width:0}.judge-reason{margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);overflow-wrap:break-word;word-break:break-word}.quality-accept{margin-top:var(--space-16);border-top:1px solid var(--color-border-subtle);padding-top:var(--space-10)}.quality-accept-row{display:flex;gap:var(--space-8);align-items:center;margin-top:var(--space-6)}@media (max-width: 1200px){.workspace.page{height:auto;overflow:visible}.workspace-grid{grid-template-columns:240px minmax(0,1fr);flex:none;min-height:0}.workspace-rail,.workspace-main{height:auto;overflow:visible}.workspace-rail-right{grid-column:1 / -1}}@media (max-width: 960px){.workspace-grid{grid-template-columns:1fr}.workspace-step-header{position:static}.intake-tier-columns{flex-direction:column;gap:var(--space-16)}.intake-tier-column+.intake-tier-column{border-left:none;padding-left:0;border-top:1px solid var(--color-border);padding-top:var(--space-16)}.intake-panel-header{flex-direction:column}}.empty-state-card{display:flex;align-items:flex-start;gap:var(--space-16);border:1px solid var(--color-border);padding:var(--space-20) var(--space-24)}.gamification-banner{color:var(--color-text-muted);margin-bottom:var(--space-20)}.gamification-banner strong{display:block;color:var(--color-text);font-size:var(--font-size-lg);margin-bottom:var(--space-4)}.gamification-mock-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-16);opacity:.7}.gamification-mock-card{background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-16) var(--space-20)}.gamification-mock-card h3{margin:0 0 var(--space-12);font-size:var(--font-size-md);color:var(--slate-600)}.gamification-badge-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-10)}.gamification-badge-list li{display:flex;align-items:center;gap:var(--space-10);font-size:var(--font-size-md)}.gamification-badge-list li.earned{color:var(--status-ok-text)}.gamification-badge-list li.locked{color:var(--color-text-subtle)}.gamification-mock-table{font-size:var(--font-size-md)}.gamification-mock-table th,.gamification-mock-table td{padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--color-border-subtle);text-align:left}.kb-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-16)}.kb-preview-card{border:1px solid var(--color-border);padding:var(--space-16) var(--space-20)}.kb-preview-card h3{display:flex;align-items:center;gap:var(--space-6);margin:0 0 var(--space-8);font-size:var(--font-size-md);color:var(--color-shell)}.kb-preview-card p{margin:0;font-size:var(--font-size-sm)}.audit-filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-10);align-items:center;margin-bottom:var(--space-16)}.audit-filter-bar select,.audit-date-field input{padding:var(--space-6) var(--space-10);background:var(--color-surface)}.audit-date-field{display:inline-flex;align-items:center;gap:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-muted)}.audit-table td{vertical-align:middle}.audit-detail-row td{background:var(--color-surface-sunken);padding:var(--space-16)}.audit-event-detail{display:grid;gap:var(--space-10)}.audit-feedback-detail{display:grid;gap:var(--space-6)}.audit-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-16);margin-top:var(--space-16)}.audit-pagination .secondary-btn{margin-top:0}.audit-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.audit-timeline-item{position:relative;display:flex;gap:var(--space-12);padding-bottom:var(--space-20)}.audit-timeline-item:not(:last-child):before{content:"";position:absolute;left:.3rem;top:1rem;bottom:0;width:2px;background:var(--color-border)}.audit-timeline-marker{flex:0 0 auto;width:.65rem;height:.65rem;border-radius:50%;margin-top:var(--space-6);background:var(--slate-400)}.audit-timeline-marker.marker-step_execution{background:var(--status-info-text)}.audit-timeline-marker.marker-gate_decision{background:var(--status-warn-solid)}.audit-timeline-marker.marker-feedback{background:var(--slate-500)}.audit-timeline-marker.marker-service_class_set{background:var(--slate-700)}.audit-timeline-body{flex:1 1 auto;min-width:0;padding:var(--space-12) var(--space-16)}.audit-timeline-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8)}.audit-timeline-meta{margin-left:auto;font-size:var(--font-size-xs)}.audit-timeline-summary{margin:var(--space-8) 0;font-size:var(--font-size-md);color:var(--color-text-secondary)}.kb-page{max-width:1400px}.kb-filters{display:flex;align-items:center;gap:var(--space-12);margin-bottom:var(--space-16)}.kb-search-wrap{position:relative;flex:1 1 auto;max-width:420px}.kb-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:var(--color-text-subtle);pointer-events:none}.kb-search-input{width:100%;padding:var(--space-8) var(--space-8) var(--space-8) var(--space-32);font-size:var(--font-size-md)}.kb-filter-select{padding:var(--space-8) var(--space-12);font-size:var(--font-size-md);background:var(--color-surface)}.kb-doc-list{display:flex;flex-direction:column;gap:var(--space-8)}.kb-doc-card{display:block;width:100%;text-align:left;padding:var(--space-12) var(--space-16);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);font:inherit;color:inherit}.kb-doc-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-ring-accent)}.kb-doc-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-6)}.kb-doc-title{font-weight:600;font-size:var(--font-size-md)}.kb-doc-badges{display:flex;align-items:center;gap:var(--space-6);flex-shrink:0}.kb-badge{font-size:var(--font-size-2xs);font-weight:600;padding:var(--space-2) var(--space-8);border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.02em}.kb-badge-always{background:var(--status-info-bg);color:var(--status-info-text)}.kb-doc-card-meta{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-bottom:var(--space-4)}.kb-meta-item{display:inline-flex;align-items:center;gap:var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-muted)}.kb-meta-params{color:var(--status-info-text);font-weight:500}.kb-doc-description{margin:var(--space-6) 0 0;font-size:var(--font-size-sm);color:var(--slate-600);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kb-doc-tags{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-top:var(--space-6)}.kb-tag{font-size:var(--font-size-2xs);padding:var(--space-2) var(--space-8);background:var(--slate-100);border:1px solid var(--color-border);border-radius:var(--radius-xs);color:var(--slate-600)}.kb-detail-header{margin-bottom:var(--space-16)}.kb-detail-header h1{margin:var(--space-8) 0 var(--space-4)}.kb-detail-actions{display:flex;gap:var(--space-8);margin-top:var(--space-8)}.kb-detail-grid{display:grid;grid-template-columns:280px minmax(0,1fr) 320px;gap:var(--space-16);align-items:start}.kb-detail-meta,.kb-detail-content,.kb-detail-review{padding:var(--space-16)}.kb-detail-meta h3,.kb-detail-content h3,.kb-detail-review h3{margin:0 0 var(--space-12);font-size:var(--font-size-md);color:var(--color-text-secondary)}.kb-meta-dl{display:grid;grid-template-columns:auto 1fr;gap:var(--space-6) var(--space-12);font-size:var(--font-size-sm);margin:0}.kb-meta-dl dt{color:var(--color-text-muted);font-weight:500}.kb-meta-dl dd{margin:0;word-break:break-word}.kb-meta-file{font-size:var(--font-size-xs);font-family:var(--font-family-mono)}.kb-section-list{list-style:none;margin:0;padding:0;max-height:60vh;overflow-y:auto}.kb-section-item{border-bottom:1px solid var(--color-border-subtle);font-size:var(--font-size-sm)}.kb-section-item:last-child{border-bottom:none}.kb-section-btn{display:flex;align-items:center;gap:var(--space-8);width:100%;padding:var(--space-8);border:none;background:transparent;font:inherit;text-align:left;color:inherit;cursor:pointer;border-radius:var(--radius-xs)}.kb-section-btn:hover{background:var(--color-accent-surface);color:var(--color-accent)}.kb-section-approved{background:var(--status-ok-surface)}.kb-section-heading{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-section-chars{flex-shrink:0;font-size:var(--font-size-xs);color:var(--color-text-subtle)}.kb-section-check{color:var(--status-ok-solid);flex-shrink:0}.kb-section-hint{margin:0 0 var(--space-6);font-size:var(--font-size-xs)}.kb-content-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-8)}.kb-content-header h3{margin:0}.kb-viewer-toggle{display:inline-flex;align-items:center;gap:var(--space-4);flex-shrink:0}.kb-reader{max-height:70vh;overflow-y:auto;padding:var(--space-4) var(--space-16) var(--space-16);font-size:var(--font-size-md);line-height:var(--line-height-relaxed);scroll-behavior:smooth}.kb-reader :target,.kb-reader h1[id],.kb-reader h2[id],.kb-reader h3[id]{scroll-margin-top:.5rem}.kb-reader h1{font-size:var(--font-size-2xl)}.kb-reader h2{font-size:var(--font-size-xl);border-bottom:1px solid var(--color-border-subtle);padding-bottom:var(--space-4)}.kb-reader h3{font-size:var(--font-size-lg)}.kb-reader img{max-width:100%;height:auto;border:1px solid var(--color-border);border-radius:var(--radius-xs)}.kb-reader table{font-size:var(--font-size-sm);margin:var(--space-12) 0;display:block;overflow-x:auto}.kb-reader th,.kb-reader td{border:1px solid var(--color-border-strong);padding:var(--space-6) var(--space-10);text-align:left;vertical-align:top}.kb-reader th{background:var(--color-surface-sunken)}.kb-reader pre{white-space:pre-wrap;background:var(--color-surface-sunken);padding:var(--space-12);border-radius:var(--radius-sm);overflow-x:auto}.kb-reader code{font-size:.85em}.kb-curation-status{margin-bottom:var(--space-12)}.kb-curation-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6) 0;font-size:var(--font-size-sm)}.kb-curation-label{color:var(--color-text-muted)}.kb-curation-value{font-weight:500}.kb-hash{font-size:var(--font-size-xs);color:var(--color-text-muted)}.kb-approved-sections{margin-bottom:var(--space-12);font-size:var(--font-size-sm)}.kb-approved-sections summary{cursor:pointer;font-weight:500;color:var(--color-text-secondary)}.kb-approved-sections ul{margin:var(--space-8) 0 0;padding-left:var(--space-20)}.kb-approved-sections li{margin-bottom:var(--space-4)}.kb-review-history{margin-bottom:var(--space-12)}.kb-review-history h4{margin:0 0 var(--space-8);font-size:var(--font-size-md);color:var(--color-text-secondary)}.kb-review-entry{border-left:3px solid var(--color-border);padding:var(--space-8) 0 var(--space-8) var(--space-12);margin-bottom:var(--space-8)}.kb-review-entry-head{display:flex;align-items:center;gap:var(--space-8);font-size:var(--font-size-sm)}.kb-verdict{display:inline-block;font-size:var(--font-size-xs);font-weight:600;padding:var(--space-2) var(--space-6);border-radius:var(--radius-xs);margin-top:var(--space-4)}.kb-verdict-use_in_full{background:var(--status-ok-bg);color:var(--status-ok-text)}.kb-verdict-use_in_part{background:var(--status-warn-bg);color:var(--status-warn-text)}.kb-verdict-do_not_use{background:var(--status-danger-bg);color:var(--status-danger-text-strong)}.kb-review-notes{margin:var(--space-4) 0 0;font-size:var(--font-size-sm);color:var(--slate-600)}.kb-review-btn{width:100%;justify-content:center;margin-top:var(--space-8)}.kb-review-form{margin-top:var(--space-12);padding-top:var(--space-12);border-top:1px solid var(--color-border)}.kb-form-field{display:grid;gap:var(--space-4);margin-bottom:var(--space-10);font-size:var(--font-size-sm)}.kb-form-field span{font-weight:500;color:var(--color-text-secondary)}.kb-form-field input,.kb-form-field select,.kb-form-field textarea{width:100%;padding:var(--space-8);font-size:var(--font-size-sm)}.kb-section-picker{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-10);margin-bottom:var(--space-10);max-height:200px;overflow-y:auto}.kb-section-picker legend{font-size:var(--font-size-xs);font-weight:600;color:var(--slate-600);padding:0 var(--space-4)}.kb-section-check-label{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-4) 0;font-size:var(--font-size-sm);cursor:pointer}.kb-tags-section{margin-top:var(--space-16);padding-top:var(--space-12);border-top:1px solid var(--color-border)}.kb-tags-section h4{display:flex;align-items:center;gap:var(--space-6);margin:0 0 var(--space-8);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.kb-tag-input{width:100%;padding:var(--space-8);font-size:var(--font-size-sm);margin-bottom:var(--space-8)}.kb-tag-actions{display:flex;gap:var(--space-8);align-items:center}.kb-deprecate-btn{margin-top:var(--space-16);display:block}.kb-deprecate-confirm{margin-top:var(--space-12);padding:var(--space-12);border:1px solid var(--status-danger-bg);border-radius:var(--radius-sm);background:var(--status-danger-surface)}.kb-deprecate-confirm input{width:100%;padding:var(--space-8);margin-top:var(--space-8)}.kb-deprecate-actions{display:flex;gap:var(--space-8);align-items:center;margin-top:var(--space-8)}.kb-view-header{margin-bottom:var(--space-16)}.kb-view-header h1{margin:var(--space-8) 0 0}.kb-view-header p{margin:var(--space-4) 0 0}.kb-upload-panel{padding:var(--space-20);max-width:560px}.kb-upload-success{display:flex;align-items:flex-start;gap:var(--space-10);padding:var(--space-12);border-radius:var(--radius-sm);background:var(--status-ok-surface);border:1px solid var(--status-ok-border);margin-bottom:var(--space-16);color:var(--status-ok-text)}.kb-validation-report{padding:var(--space-20);max-width:700px}.kb-validation-status{display:flex;align-items:center;gap:var(--space-10);font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--space-16)}.kb-valid{color:var(--status-ok-text)}.kb-invalid{color:var(--status-danger-text-strong)}.kb-validation-stats{display:flex;gap:var(--space-20);margin-bottom:var(--space-16);font-size:var(--font-size-md);color:var(--slate-600)}.kb-validation-section{margin-top:var(--space-16)}.kb-validation-section h3{display:flex;align-items:center;gap:var(--space-6);margin:0 0 var(--space-8);font-size:var(--font-size-md)}.kb-validation-errors h3{color:var(--status-danger-text-strong)}.kb-validation-warnings h3{color:var(--status-warn-text)}.kb-validation-section ul{margin:0;padding-left:var(--space-24);font-size:var(--font-size-sm)}.kb-validation-section li{margin-bottom:var(--space-4)}.kb-coverage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));gap:var(--space-16)}.kb-coverage-card{padding:var(--space-16) var(--space-20);border:1px solid var(--color-border)}.kb-coverage-card h3{margin:0 0 var(--space-6);font-size:var(--font-size-md);display:flex;align-items:center;gap:var(--space-6)}.kb-coverage-gap{border-color:var(--status-warn-accent);background:var(--status-warn-surface)}.kb-gap-icon{color:var(--status-warn-solid)}.kb-coverage-table{font-size:var(--font-size-sm);margin-top:var(--space-8)}.kb-coverage-table th,.kb-coverage-table td{padding:var(--space-6) var(--space-10);border-bottom:1px solid var(--color-border-subtle);text-align:left}.kb-coverage-table th{font-weight:600;color:var(--slate-600);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.02em}.kb-coverage-zero td{background:var(--status-danger-surface)}.kb-count-zero{color:var(--status-danger-solid);font-weight:600}.rerun-popover-wrapper{position:relative;display:inline-block}.rerun-popover{width:360px}.rerun-popover-label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-4)}.rerun-popover-textarea{width:100%;margin-top:var(--space-6);padding:var(--space-8);font-size:var(--font-size-sm);min-height:72px;font-family:inherit}.rerun-popover-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.rerun-popover-actions{display:flex;align-items:center;gap:var(--space-12);margin-top:var(--space-8)}.rerun-popover-actions .primary-btn{margin-top:0}.rerun-popover-actions .text-btn{font-size:var(--font-size-sm)}.add-evidence-wrapper{position:relative;display:inline-block}.add-evidence-popover{width:460px}.add-evidence-label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-4)}.add-evidence-textarea{width:100%;margin-top:var(--space-6);padding:var(--space-8);font-size:var(--font-size-sm);min-height:180px;font-family:inherit}.add-evidence-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.add-evidence-note,.add-evidence-hint{margin:var(--space-8) 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-normal)}.add-evidence-hint{position:absolute;top:calc(100% + 6px);right:0;z-index:var(--z-inline-hint);width:320px;padding:var(--space-8) var(--space-10);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.add-evidence-error{margin:var(--space-8) 0 0;font-size:var(--font-size-xs);color:var(--status-danger-text)}.add-evidence-actions{display:flex;align-items:center;gap:var(--space-12);margin-top:var(--space-10)}.add-evidence-actions .primary-btn{margin-top:0}.add-evidence-actions .text-btn{font-size:var(--font-size-sm)}.add-evidence-list{margin:var(--space-10) 0 0;padding-left:var(--space-16);font-size:var(--font-size-xs);color:var(--color-text-muted)}.sample-library-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-12);margin-bottom:var(--space-16)}.sample-category-tabs{display:flex;flex-wrap:wrap;gap:var(--space-8)}.sample-case-list{display:flex;flex-direction:column;gap:var(--space-12)}.sample-case-card{padding:var(--space-16)}.sample-case-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-6)}.sample-case-title{font-weight:600;font-size:var(--font-size-lg)}.sample-badge{font-size:var(--font-size-2xs);font-weight:600;padding:var(--space-2) var(--space-8);border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.02em;flex-shrink:0}.sample-badge-full{background:var(--status-ok-bg);color:var(--status-ok-text)}.sample-badge-partial{background:var(--status-warn-bg);color:var(--status-warn-text)}.sample-badge-minimal{background:var(--indigo-100);color:var(--indigo-800)}.sample-badge-faulty{background:var(--status-danger-bg);color:var(--status-danger-text-strong)}.sample-case-meta{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-bottom:var(--space-8)}.sample-case-summary{margin:var(--space-6) 0 var(--space-10);font-size:var(--font-size-md);color:var(--color-text-secondary);line-height:var(--line-height-normal);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.sample-case-summary.expanded{-webkit-line-clamp:unset;overflow:visible}.sample-case-card-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);margin-top:var(--space-8)}.sample-case-card-actions-right{display:flex;align-items:center;gap:var(--space-8)}.sample-case-card-actions .primary-btn{margin-top:0}.icon-btn-danger{color:var(--status-danger-text);border-color:var(--status-danger-border-strong)}.icon-btn-danger:hover{border-color:var(--status-danger-text);color:var(--status-danger-text-strong);background:var(--status-danger-surface)}.sample-badge-sample{background:var(--indigo-100);color:var(--indigo-800)}.sample-badge-uploaded{background:var(--slate-200);color:var(--color-text-secondary)}.sample-badge-fillin{background:var(--cyan-100);color:var(--cyan-800)}.hidden-badge{background:var(--status-danger-bg);color:var(--status-danger-text-strong)}.cases-table tbody tr.case-row-hidden{background:var(--color-surface-sunken);color:var(--color-text-muted)}.icon-btn-inert{opacity:.5;cursor:not-allowed}.icon-btn-inert:hover{border-color:var(--color-border-strong);color:var(--slate-600)}.page-header-actions .secondary-btn{gap:var(--space-6)}.kb-extract-result{background:var(--color-accent-surface);border:1px solid var(--status-info-border);color:var(--status-info-text-strong);border-radius:var(--radius-sm);padding:var(--space-10) var(--space-12);margin-bottom:var(--space-16);font-size:var(--font-size-sm)}.kb-ledger-panel{margin-top:var(--space-24);padding-top:var(--space-20);border-top:2px solid var(--color-border)}.kb-ledger-panel-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16)}.kb-ledger-panel-header h3,.kb-view-header h1{display:flex;align-items:center;gap:var(--space-8)}.kb-ledger-panel h4{margin:var(--space-16) 0 var(--space-8);font-size:var(--font-size-md)}.kb-ledger-queue{display:flex;flex-direction:column;gap:var(--space-12)}.kb-ledger-card{border:1px solid var(--color-border);padding:var(--space-12) var(--space-16)}.kb-ledger-card-head{display:flex;align-items:center;gap:var(--space-10);flex-wrap:wrap;margin-bottom:var(--space-8)}.kb-ledger-kind{font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.03em;background:var(--slate-100);color:var(--slate-600);padding:var(--space-2) var(--space-8);border-radius:var(--radius-xs)}.kb-ledger-reagent{font-weight:600;color:var(--color-text-strong)}.kb-ledger-value{font-variant-numeric:tabular-nums;color:var(--slate-800)}.kb-ledger-basis{font-size:var(--font-size-xs);color:var(--slate-600)}.kb-ledger-basis-missing{color:var(--status-warn-text);font-weight:600}.kb-ledger-quote{margin:var(--space-6) 0;padding:var(--space-6) var(--space-12);border-left:3px solid var(--color-border-strong);background:var(--color-surface-sunken);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-style:italic}.kb-ledger-note{margin:var(--space-4) 0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.kb-ledger-card-meta{display:flex;align-items:center;gap:var(--space-12);flex-wrap:wrap;margin:var(--space-6) 0}.kb-ledger-src{font-size:var(--font-size-2xs);color:var(--color-text-muted)}.kb-ledger-edit{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-10);padding:var(--space-12);margin:var(--space-8) 0;background:var(--color-surface-sunken);border-radius:var(--radius-sm)}.kb-ledger-decision{display:flex;align-items:center;gap:var(--space-10);flex-wrap:wrap;margin-top:var(--space-8);padding-top:var(--space-10);border-top:1px dashed var(--color-border)}.kb-ledger-reviewer,.kb-ledger-notes{padding:var(--space-6) var(--space-8);font-size:var(--font-size-sm)}.kb-ledger-notes{flex:1;min-width:140px}.kb-ledger-gate{display:flex;align-items:center;gap:var(--space-6);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.kb-ledger-actions{display:flex;align-items:center;gap:var(--space-8)}.kb-ledger-tabs{display:flex;gap:var(--space-8)}.kb-tab-active{background:var(--slate-800);color:var(--white);border-color:var(--slate-800)}.kb-ledger-table{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;font-size:var(--font-size-sm)}.kb-ledger-table th,.kb-ledger-table td{text-align:left;padding:var(--space-8) var(--space-12);border-bottom:1px solid var(--color-border-subtle)}.kb-ledger-table th{background:var(--color-surface-sunken);font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.kb-ledger-rejected{opacity:.55}.kb-alwayson-section{margin-top:var(--space-16);padding-top:var(--space-12);border-top:1px solid var(--color-border);min-width:0}.kb-alwayson-toggle{display:flex;align-items:center;gap:var(--space-6);width:100%;padding:0;background:none;border:none;cursor:pointer;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);text-align:left}.kb-alwayson-toggle:hover{color:var(--color-text-strong)}.kb-alwayson-toggle-label{flex:1;min-width:0}.kb-alwayson-count{flex-shrink:0;font-size:var(--font-size-2xs);font-weight:400;padding:var(--space-2) var(--space-6);border-radius:var(--radius-xs);background:var(--slate-100);color:var(--slate-600)}.kb-alwayson-folded{margin:var(--space-6) 0 0;font-size:var(--font-size-2xs);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.kb-alwayson-body{margin-top:var(--space-12)}.kb-alwayson-help,.kb-alwayson-promote{font-size:var(--font-size-2xs);line-height:1.5;margin:0 0 var(--space-12)}.kb-alwayson-promote{padding:var(--space-8);border-radius:var(--radius-xs);background:var(--status-info-bg);color:var(--status-info-text)}.kb-alwayson-promote code{font-size:inherit}.kb-alwayson-rows{list-style:none;margin:0;padding:0}.kb-alwayson-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-8);padding:var(--space-6) 0;border-bottom:1px solid var(--color-border);min-width:0}.kb-alwayson-row:last-child{border-bottom:none}.kb-alwayson-off .kb-alwayson-stage{color:var(--color-text-secondary)}.kb-alwayson-stage{flex:1 1 auto;min-width:0;font-size:var(--font-size-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-alwayson-segmented{display:flex;flex:0 0 auto;border:1px solid var(--color-border);border-radius:var(--radius-xs);overflow:hidden}.kb-alwayson-segmented button{padding:var(--space-2) var(--space-6);min-width:2.6rem;border:none;border-right:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-2xs);cursor:pointer}.kb-alwayson-segmented button:last-child{border-right:none}.kb-alwayson-segmented button:hover:not(.is-active){background:var(--slate-100)}.kb-alwayson-segmented button.is-active{background:var(--status-info-bg);color:var(--status-info-text);font-weight:600}.kb-alwayson-cost{flex:1 0 100%;font-size:var(--font-size-2xs);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.kb-alwayson-over{color:var(--status-danger-text);font-weight:500}.kb-alwayson-warn{display:flex;align-items:flex-start;gap:var(--space-6);margin:var(--space-12) 0 0;font-size:var(--font-size-2xs);line-height:1.5;color:var(--status-warn-text)}.kb-alwayson-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);margin-top:var(--space-12)}.kb-alwayson-history{margin-top:var(--space-16);padding-top:var(--space-12);border-top:1px solid var(--color-border);min-width:0}.kb-alwayson-history h4{margin:0 0 var(--space-8);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.kb-alwayson-history ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-8);font-size:var(--font-size-2xs)}.kb-alwayson-history li{min-width:0;overflow-wrap:anywhere}.kb-alwayson-note{margin-top:var(--space-2);color:var(--color-text-secondary);font-style:italic}
