/* TenderScribe production adapter for the supplied Juris design system. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root {
  --indigo-25: #F7F9FE;
  --indigo-50: #EEF1FD;
  --indigo-100: #E3E9FC;
  --indigo-200: #C9D4F9;
  --indigo-300: #A3B4F2;
  --indigo-400: #6E88EA;
  --indigo-500: #4C6BE4;
  --indigo-600: #3B5ADB;
  --indigo-700: #3049B4;
  --indigo-800: #27397F;
  --indigo-900: #1D2A55;
  --slate-50: #F6F8FC;
  --slate-100: #EDF0F7;
  --slate-200: #E2E6F1;
  --slate-300: #C3CADD;
  --slate-400: #98A1BC;
  --slate-500: #737D9C;
  --slate-600: #5A6486;
  --slate-700: #3E4869;
  --slate-900: #1E2749;
  --white: #FFFFFF;
  --surface-page: var(--white);
  --surface-subtle: var(--slate-50);
  --surface-sidebar: var(--indigo-50);
  --surface-card: var(--white);
  --surface-hover: var(--indigo-25);
  --surface-selected: var(--indigo-100);
  --text-heading: var(--indigo-900);
  --text-body: var(--slate-700);
  --text-muted: var(--slate-500);
  --text-faint: var(--slate-400);
  --text-link: var(--indigo-600);
  --text-on-accent: var(--white);
  --border-subtle: var(--slate-100);
  --border-default: var(--slate-200);
  --border-strong: var(--slate-300);
  --accent: var(--indigo-600);
  --accent-hover: var(--indigo-700);
  --accent-soft: var(--indigo-100);
  --focus-ring: rgba(59, 90, 219, .35);
  --status-info-dot: #4D82F3;
  --status-info-bg: #EAF2FE;
  --status-info-text: #33518F;
  --status-success-dot: #0E9F6E;
  --status-success-bg: #E6F6F0;
  --status-success-text: #1F6B4E;
  --status-warning-dot: #DB9A2B;
  --status-warning-bg: #FBF0DC;
  --status-warning-text: #8A5E14;
  --status-danger-dot: #D64545;
  --status-danger-bg: #FBE9E9;
  --status-danger-text: #933030;
  --font-sans: 'Inter', -apple-system, 'Segoe UI', sans-serif;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-md: 14px;
  --text-lg: 16px;
  --text-xl: 20px;
  --text-2xl: 24px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-frame: 24px;
  --radius-pill: 999px;
  --shadow-card: 0 1px 2px rgba(29, 42, 85, .05);
  --shadow-pop: 0 4px 16px rgba(29, 42, 85, .10);
  --shadow-frame: 0 24px 64px rgba(23, 31, 84, .20);
  --ring: 0 0 0 3px var(--focus-ring);
  --ease-standard: cubic-bezier(.2, .6, .2, 1);
  --duration-fast: 120ms;
  --duration-normal: 200ms;
  --sidebar-width: 232px;
  --register-width: 272px;
  --evidence-width: 420px;
  --surface-register: #F5F7FA;
  --surface-ai: #EFF8F4;
  --surface-ai-strong: #DDF1E8;
  --surface-buyer: #F3F6FC;
  --surface-action: #FFF8EA;
  --surface-evidence: #F4F8F7;
  --surface-control: #F7F8FB;
  --teal-600: #287D6B;
  --teal-700: #206455;
  --amber-600: #A56D18;

  /* Compatibility aliases for the existing production UI. */
  --ink: var(--text-heading);
  --ink-2: var(--text-body);
  --muted: var(--text-muted);
  --paper: var(--surface-subtle);
  --panel: var(--surface-card);
  --line: var(--border-default);
  --line-strong: var(--border-strong);
  --blue: var(--accent);
  --blue-pale: var(--accent-soft);
  --amber: var(--status-warning-text);
  --amber-pale: var(--status-warning-bg);
  --red: var(--status-danger-text);
  --red-pale: var(--status-danger-bg);
  --green: var(--status-success-text);
  --green-pale: var(--status-success-bg);
  --shadow: var(--shadow-card);
  font-family: var(--font-sans);
  color: var(--text-body);
  background: var(--surface-sidebar);
}

html, body { height: 100%; }
body { font-family: var(--font-sans); font-size: var(--text-md); line-height: 1.5; color: var(--text-body); background: var(--surface-sidebar); -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font-family: var(--font-sans); }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: none; box-shadow: var(--ring); }
h1, h2, h3, h4 { font-family: var(--font-sans); color: var(--text-heading); letter-spacing: 0; }

/* Application frame. The Juris rail is widened so every destination stays named. */
.app-shell { height: 100vh; min-height: 680px; grid-template-columns: var(--sidebar-width) minmax(0, 1fr); background: var(--surface-sidebar); overflow: hidden; }
.sidebar { position: relative; width: var(--sidebar-width); height: 100vh; padding: 16px 12px; border: 0; background: var(--surface-sidebar); color: var(--text-body); align-items: stretch; gap: 8px; }
.brand { width: auto; height: 48px; margin: 0 0 16px; padding: 0 8px; justify-content: flex-start; gap: 11px; border-radius: var(--radius-lg); background: transparent; box-shadow: none; }
.brand-mark { width: 40px; height: 40px; flex: 0 0 40px; display: block; border: 0; border-radius: 0; background: transparent; object-fit: contain; }
.brand-copy { display: block !important; min-width: 0; }
.brand-copy strong { color: var(--text-heading); font-size: var(--text-sm); font-weight: 700; }
.brand-copy small { margin-top: 2px; color: var(--text-muted); font-size: 10px; }
.nav-label { display: block !important; padding: 6px 12px 3px; color: var(--text-muted); font-size: 10px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.main-nav { width: 100%; display: flex; flex-direction: column; align-items: stretch; gap: 4px; }
.main-nav button { width: 100%; height: 42px; min-height: 42px; padding: 0 12px; border: 0; border-radius: var(--radius-md); background: transparent; color: var(--slate-600); display: inline-flex; align-items: center; justify-content: flex-start; gap: 11px; transition: background var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard); }
.main-nav button:hover { background: var(--indigo-100); color: var(--accent); }
.main-nav button.active { border: 0; background: var(--surface-card); color: var(--accent); box-shadow: var(--shadow-card); }
.main-nav button svg { width: 19px; height: 19px; flex: 0 0 19px; stroke-width: 1.8; }
.nav-text { display: inline !important; width: auto !important; color: inherit !important; font-size: var(--text-sm) !important; font-weight: 500; text-align: left !important; }
.manage-label { margin-top: 8px; }
.manage-nav { margin-top: 0; }
.sidebar-note { display: grid !important; margin: auto 0 8px; padding: 12px; border: 1px solid var(--indigo-200); border-radius: var(--radius-lg); background: rgba(255,255,255,.55); gap: 4px; }
.sidebar-note .eyebrow { color: var(--accent); }
.sidebar-note strong { color: var(--text-heading); font-size: var(--text-sm); line-height: 1.35; }
.sidebar-note > span:last-child { color: var(--text-muted); font-size: 10px; }
.workspace-switcher-control { position: relative; min-width: 0; margin-top: 3px; }
.workspace-switcher-control[hidden] { display: none !important; }
.workspace-switcher-control select { appearance: none; width: 100%; min-height: 40px; padding: 8px 34px 8px 11px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); color: var(--text-heading); font: 500 var(--text-xs)/1.3 var(--font-sans); cursor: pointer; text-overflow: ellipsis; }
.workspace-switcher-control select:hover { border-color: var(--indigo-300); }
.workspace-switcher-control select:focus-visible { outline: 0; border-color: var(--accent); box-shadow: var(--ring); }
.workspace-switcher-control svg { position: absolute; right: 10px; top: 50%; width: 15px; height: 15px; color: var(--text-muted); pointer-events: none; transform: translateY(-50%); }
.workspace-switcher-control.switching { opacity: .58; }
.user-card { width: auto; margin: 0; padding: 10px 8px 0; border: 0; border-top: 1px solid var(--indigo-200); justify-content: flex-start; }
.user-card > span:last-child { display: block; }
.user-card strong { color: var(--text-heading); font-size: var(--text-xs); }
.user-card small { color: var(--text-muted); font-size: 10px; }
.avatar { width: 38px; height: 38px; border-radius: 50%; background: var(--indigo-300); color: var(--indigo-900); font-size: 12px; font-weight: 600; }
.avatar.has-photo, .profile-settings-avatar.has-photo, .member-avatar.has-photo { overflow: hidden; background: var(--surface-subtle); }
.avatar img, .profile-settings-avatar img, .member-avatar img { width: 100%; height: 100%; display: block; object-fit: cover; }

.main-stage { min-width: 0; height: calc(100vh - 20px); margin: 10px 10px 10px 0; border-radius: var(--radius-xl); overflow: hidden; background: var(--surface-page); display: flex; flex-direction: column; box-shadow: var(--shadow-card); }
.topbar { position: relative; top: auto; z-index: 15; height: 56px; min-height: 56px; padding: 0 28px; border-bottom: 1px solid var(--border-subtle); background: var(--surface-page); flex: 0 0 auto; }
.breadcrumbs { color: var(--text-heading); font-size: var(--text-md); font-weight: 600; }
.breadcrumb-trail { min-width: 0; display: flex; align-items: center; gap: 5px; overflow: hidden; }
.breadcrumb-trail button, .breadcrumb-trail span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.breadcrumb-trail button { padding: 4px 2px; border: 0; background: transparent; color: var(--text-muted); font: inherit; cursor: pointer; }
.breadcrumb-trail button:hover { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.breadcrumb-trail button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 3px; }
.breadcrumb-trail i { width: 14px; height: 14px; flex: 0 0 auto; color: var(--text-subtle); }
.breadcrumb-separator { flex: 0 0 auto; color: var(--text-subtle); font-weight: 400; }
.breadcrumb-trail span[aria-current="page"] { color: var(--text-heading); }
.top-actions { gap: 12px; }
.mode-pill { color: var(--status-success-text); font-size: 11px; letter-spacing: .04em; }
.mode-pill span { background: var(--status-success-dot); }
.text-button { border: 0; background: transparent; color: var(--text-muted); font-size: var(--text-sm); font-weight: 500; cursor: pointer; }
.text-button:hover { color: var(--accent); }
.icon-button { width: 34px; height: 34px; border: 1px solid transparent; border-radius: var(--radius-md); background: transparent; color: var(--slate-600); }
.icon-button:hover { border-color: transparent; background: var(--surface-hover); color: var(--accent); }
.icon-button svg { width: 18px; height: 18px; stroke-width: 1.8; }
#app { min-height: 0; flex: 1; overflow: auto; background: var(--surface-page); }
.view { min-height: 100%; }
.loading { height: 100%; color: var(--text-muted); }
.loading span { border-color: var(--border-default); border-top-color: var(--accent); }

/* Shared Juris primitives applied to TenderScribe's production classes. */
.button { min-height: 38px; padding: 9px 16px; border: 1px solid transparent; border-radius: var(--radius-md); background: transparent; color: var(--text-heading); font-size: var(--text-md); font-weight: 600; line-height: 1.2; transition: background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard); }
.button.primary, .button.blue { border-color: var(--accent); background: var(--accent); color: var(--text-on-accent); }
.button.primary:hover, .button.blue:hover { border-color: var(--accent-hover); background: var(--accent-hover); }
.button.secondary { border-color: var(--border-default); background: var(--surface-card); color: var(--text-heading); }
.button.secondary:hover { border-color: var(--border-strong); background: var(--surface-hover); }
.button.ghost { color: var(--accent); background: transparent; }
.button.ghost:hover { background: var(--surface-hover); }
.button.danger { border-color: var(--status-danger-text); background: var(--status-danger-text); color: #fff; }
.button.ghost.danger { border-color: transparent; background: transparent; color: var(--status-danger-text); }
.button.ghost.danger:hover { background: var(--status-danger-bg); }
.button:disabled { opacity: .45; }
.card, .question-sheet, .settings-card, .topic-card, .knowledge-answer, .review-panel, .collaboration-panel, .version-panel { border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); overflow: hidden; }
.card-head { min-height: 52px; padding: 14px 18px; border-bottom: 1px solid var(--border-default); }
.card-head h2 { color: var(--text-heading); font-size: var(--text-md); font-weight: 600; }
.eyebrow { color: var(--accent); font-size: 11px; font-weight: 600; letter-spacing: .07em; }
.muted { color: var(--text-muted); }
.status { padding: 4px 11px; border: 0; border-radius: var(--radius-pill); gap: 7px; color: var(--status-info-text); background: var(--status-info-bg); font-size: var(--text-xs); font-weight: 500; letter-spacing: 0; text-transform: none; }
.status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--status-info-dot); }
.status.active, .status.clear, .status.approved, .status.current { color: var(--status-success-text); background: var(--status-success-bg); }
.status.active::before, .status.clear::before, .status.approved::before, .status.current::before { background: var(--status-success-dot); }
.status.warning, .status.review, .status.expiring, .status.quarantined, .status.AI-extracted { color: var(--status-warning-text); background: var(--status-warning-bg); }
.status.warning::before, .status.review::before, .status.expiring::before, .status.quarantined::before, .status.AI-extracted::before { background: var(--status-warning-dot); }
.status.risk, .status.evidence_gap, .status.expired, .status.retired, .status.unconfirmed, .status.superseded { color: var(--status-danger-text); background: var(--status-danger-bg); }
.status.risk::before, .status.evidence_gap::before, .status.expired::before, .status.retired::before, .status.unconfirmed::before, .status.superseded::before { background: var(--status-danger-dot); }

input, select, textarea { color: var(--text-heading); }
label { color: var(--text-heading); }
.intake-card input, .intake-card select, .setup-table input, .setup-table select, .setup-table textarea,
.setup-question-fields input, .setup-question-fields textarea, .returnable-controls input, .returnable-controls select,
.settings-form-grid input, .settings-form-grid select, .settings-form-grid textarea, .inline-settings-form input, .inline-settings-form select,
.member-row select, .integration-fields input, .integration-fields select, .auth-form input,
.knowledge-query input, .knowledge-query select, .source-library-control input, .source-library-control select,
.collaboration-panel textarea, .collaboration-panel select, .version-controls select, dialog input, dialog select, dialog textarea {
  min-height: 40px; padding: 9px 12px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); color: var(--text-heading); font-size: var(--text-md);
}
input:hover, select:hover, textarea:hover { border-color: var(--border-strong); }
input:focus, select:focus, textarea:focus { border-color: var(--accent); }
input[type="checkbox"] { accent-color: var(--accent); }

.page-pad { max-width: none; margin: 0; padding: 24px 28px 40px; }
.page-heading { align-items: center; margin-bottom: 22px; }
.page-heading h1 { margin: 3px 0 5px; color: var(--text-heading); font: 700 var(--text-xl)/1.25 var(--font-sans); letter-spacing: 0; }
.page-heading p { max-width: 760px; color: var(--text-muted); font-size: var(--text-sm); line-height: 1.5; }
.heading-actions { gap: 10px; }

/* Dashboard mirrors the system's compact header + table-led content model. */
.home-view { max-width: none; }
.home-heading { align-items: center; }
.home-heading h1 { font: 700 var(--text-xl)/1.25 var(--font-sans); }
.continue-card { margin-bottom: 20px; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.continue-main { padding: 24px; }
.continue-main h2 { margin: 8px 0 5px; color: var(--text-heading); font: 700 var(--text-lg)/1.3 var(--font-sans); }
.continue-main > p { color: var(--text-muted); font-size: var(--text-sm); }
.progress-track { height: 6px; border-radius: var(--radius-pill); background: var(--slate-100); overflow: hidden; }
.progress-track span { border-radius: var(--radius-pill); background: var(--accent); }
.continue-progress { color: var(--text-muted); font-size: var(--text-xs); }
.next-action { padding: 24px; border-left: 1px solid var(--border-default); background: var(--indigo-25); }
.next-action > strong { color: var(--text-heading); font-size: var(--text-md); }
.next-action p { color: var(--text-muted); font-size: var(--text-sm); }
.home-grid { gap: 16px; }
.tender-list-row { min-height: 68px; padding: 14px 18px; border-bottom-color: var(--border-subtle); background: var(--surface-card); }
.tender-list-row:hover { background: var(--surface-hover); }
.tender-list-row strong { color: var(--text-heading); font-size: var(--text-md); }
.tender-list-row small { color: var(--text-muted); font-size: var(--text-xs); }
.tender-row-progress b { color: var(--text-heading); font: 600 var(--text-lg)/1 var(--font-sans); }
.activity-list li { border-bottom-color: var(--border-subtle); }
.action-queue button:hover strong { color: var(--accent); }
.section-heading { margin-bottom: 14px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.section-heading h2, .tender-navigation-head h2 { margin: 0; color: var(--text-heading); font-size: var(--text-lg); font-weight: 700; }
.section-heading p, .tender-navigation-head p { margin: 3px 0 0; color: var(--text-muted); font-size: var(--text-sm); }
.open-tender-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.pursuit-continue-card { height: 100%; margin: 0; grid-template-columns: 1fr; }
.pursuit-continue-card .continue-main { padding: 20px; }
.pursuit-continue-card .next-action { padding: 18px 20px 20px; border-left: 0; border-top: 1px solid var(--border-default); }
.pursuit-continue-card .next-action .button { margin-top: auto; }
.pursuit-continue-card .next-action { display: flex; flex-direction: column; align-items: flex-start; }
.home-attention { margin-top: 20px; }

/* Tender selection is a navigation surface, not a setup screen. */
.tender-navigation-group { margin-top: 18px; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); overflow: hidden; }
.tender-navigation-group.closed { margin-top: 22px; }
.tender-navigation-head { min-height: 66px; padding: 14px 18px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--border-default); }
.tender-navigation-head > span { min-width: 30px; padding: 4px 10px; border-radius: var(--radius-pill); background: var(--indigo-50); color: var(--accent); font-size: var(--text-xs); font-weight: 600; text-align: center; }
.tender-navigation-row { min-height: 92px; padding: 14px 18px; display: grid; grid-template-columns: minmax(230px, 1.35fr) minmax(96px, .45fr) minmax(180px, .8fr) auto auto; align-items: center; gap: 18px; border-bottom: 1px solid var(--border-subtle); }
.tender-navigation-row:last-child { border-bottom: 0; }
.tender-navigation-row:hover { background: var(--surface-hover); }
.tender-nav-main h3 { margin: 4px 0 3px; color: var(--text-heading); font-size: var(--text-md); font-weight: 600; }
.tender-nav-main p, .tender-nav-progress small { margin: 0; color: var(--text-muted); font-size: var(--text-xs); }
.tender-nav-deadline small, .tender-nav-deadline strong { display: block; }
.tender-nav-deadline small { color: var(--text-muted); font-size: 10px; }
.tender-nav-deadline strong { margin-top: 4px; color: var(--text-heading); font-size: var(--text-xs); }
.tender-nav-progress .progress-track { margin: 0 0 7px; }
.tender-nav-state .status { white-space: nowrap; }

/* Tender journey becomes the Juris tab pattern. */
.tender-journey { border: 0; border-bottom: 1px solid var(--border-default); border-radius: 0; background: var(--surface-card); overflow: visible; }
.setup-view > .tender-journey { margin-bottom: 24px; }
.response-pane > .tender-journey { margin: 0; padding: 0 20px; }
.tender-journey button { min-height: 50px; padding: 9px 14px; border: 0; border-bottom: 2px solid transparent; background: transparent; grid-template-columns: 22px minmax(0, 1fr); column-gap: 8px; margin-bottom: -1px; }
.tender-journey button:hover { background: var(--surface-hover); }
.tender-journey button.active { border-bottom-color: var(--accent); background: transparent; box-shadow: none; }
.tender-journey button > span { width: 20px; height: 20px; border-color: var(--border-strong); color: var(--text-muted); font-size: 10px; }
.tender-journey button.active > span { border-color: var(--accent); background: var(--accent); color: var(--white); }
.tender-journey strong { color: var(--text-heading); font-size: var(--text-sm); font-weight: 600; }
.tender-journey small { color: var(--text-muted); font-size: 10px; }

/* Setup uses expandable table rows and inset indigo detail panels. */
.new-import-drawer, .setup-team-panel, .readiness-disclosure, .setup-section-disclosure { border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); overflow: hidden; }
.new-import-drawer > summary, .setup-team-panel > summary, .readiness-disclosure > summary, .setup-section-disclosure > summary { border: 0; background: var(--surface-card); }
.new-import-drawer > summary:hover, .setup-team-panel > summary:hover, .readiness-disclosure > summary:hover, .setup-section-disclosure > summary:hover { background: var(--surface-hover); }
.setup-results { margin-top: 0; padding-top: 0; border-top: 0; }
.setup-hero { padding: 4px 0 20px; display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--border-default); }
.setup-reference { display: inline-flex; margin-bottom: 7px; color: var(--accent); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.setup-hero h1 { margin: 0; color: var(--text-heading); font: 700 26px/1.18 var(--font-sans); letter-spacing: -.025em; }
.setup-hero p { margin: 7px 0 0; color: var(--text-muted); font-size: var(--text-sm); }
.setup-hero .button svg { width: 16px; height: 16px; }
.setup-overview { margin-top: 16px; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); overflow: hidden; }
.setup-overview-head { min-height: 82px; padding: 16px 18px; display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.setup-overview-head h2 { margin: 3px 0 2px; color: var(--text-heading); font-size: var(--text-lg); font-weight: 650; }
.setup-overview-head p { margin: 0; color: var(--text-muted); font-size: var(--text-xs); }
.setup-overview-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--border-subtle); background: var(--surface-subtle); }
.setup-overview-facts > button { min-width: 0; padding: 13px 15px; display: flex; align-items: flex-start; gap: 10px; border: 0; border-right: 1px solid var(--border-subtle); border-radius: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.setup-overview-facts > button:last-child { border-right: 0; }
.setup-overview-facts > button:hover { background: var(--surface-card); }
.setup-overview-facts svg { width: 18px; height: 18px; flex: 0 0 18px; color: var(--teal-600); }
.setup-overview-facts .attention svg { color: var(--amber-600); }
.setup-overview-facts span, .setup-overview-facts small, .setup-overview-facts strong { display: block; min-width: 0; }
.setup-overview-facts small { color: var(--text-muted); font-size: 10px; }
.setup-overview-facts strong { margin-top: 3px; color: var(--text-heading); font-size: var(--text-xs); line-height: 1.35; }
.setup-overview-facts .setup-fact-arrow { width: 14px; height: 14px; margin: 2px 0 0 auto; color: var(--text-faint); }
.setup-content-stage { scroll-margin-top: 76px; }
.setup-overview-dashboard { max-width: 1080px; margin: 20px auto 0; }
.setup-task-list { display: grid; border-top: 1px solid var(--border-subtle); }
.setup-task-row { width: 100%; min-height: 66px; padding: 12px 16px; display: grid; grid-template-columns: 38px minmax(0, 1fr) auto 16px; gap: 12px; align-items: center; border: 0; border-bottom: 1px solid var(--border-subtle); border-radius: 0; background: var(--surface-card); color: inherit; font: inherit; text-align: left; cursor: pointer; transition: background .16s ease, border-color .16s ease; }
.setup-task-row:last-child { border-bottom: 0; }
.setup-task-row:hover { background: var(--surface-hover); }
.setup-task-row:focus-visible { position: relative; z-index: 1; outline: 3px solid color-mix(in srgb, var(--accent) 22%, transparent); outline-offset: -3px; }
.setup-task-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--status-success-bg); color: var(--status-success-text); }
.setup-task-row.attention .setup-task-icon { background: var(--status-warning-bg); color: var(--status-warning-text); }
.setup-task-icon svg { width: 18px; height: 18px; }
.setup-task-copy { min-width: 0; display: grid; gap: 2px; }
.setup-task-copy strong { color: var(--text-heading); font-size: var(--text-md); font-weight: 650; }
.setup-task-copy small { color: var(--text-muted); font-size: var(--text-xs); line-height: 1.4; }
.setup-task-state { min-width: 82px; display: inline-flex; align-items: center; justify-content: flex-end; gap: 6px; color: var(--status-success-text); font-size: 11px; font-weight: 650; }
.setup-task-row.attention .setup-task-state { color: var(--status-warning-text); }
.setup-task-state svg { width: 15px; height: 15px; }
.setup-task-row > .setup-fact-arrow { width: 16px; height: 16px; color: var(--text-faint); }
.setup-focused-head { max-width: 1180px; margin: 18px auto 12px; }
.setup-back-button { min-height: 36px; margin: 0 0 10px; padding: 6px 4px; display: inline-flex; align-items: center; gap: 7px; border: 0; border-radius: var(--radius-md); background: transparent; color: var(--accent); font: 600 var(--text-sm)/1.4 var(--font-sans); cursor: pointer; }
.setup-back-button:hover { text-decoration: underline; }
.setup-back-button:focus-visible { outline: 3px solid color-mix(in srgb, var(--accent) 22%, transparent); outline-offset: 2px; }
.setup-back-button svg { width: 16px; height: 16px; }
.setup-focused-title { min-height: 86px; padding: 17px 19px; display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 14px; align-items: center; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.setup-focused-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--accent-soft); color: var(--accent); }
.setup-focused-icon svg { width: 20px; height: 20px; }
.setup-focused-title h2 { margin: 2px 0 3px; color: var(--text-heading); font-size: var(--text-xl); font-weight: 700; letter-spacing: -.015em; }
.setup-focused-title p { max-width: 760px; margin: 0; color: var(--text-muted); font-size: var(--text-sm); }
.setup-section-count { justify-self: end; padding: 6px 10px; border-radius: var(--radius-pill); background: var(--surface-subtle); color: var(--text-muted); font-size: 11px; font-weight: 650; white-space: nowrap; }
.setup-focused-card { max-width: 1180px; margin: 12px auto 0; overflow: hidden; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.setup-focused-card > .card-head { min-height: 62px; margin: 0; padding: 13px 16px; border-bottom: 1px solid var(--border-subtle); }
.setup-focused-card > .card-head h3 { margin: 0; color: var(--text-heading); font-size: var(--text-md); }
.setup-focused-card > .card-head small { display: block; margin-top: 3px; color: var(--text-muted); font-size: var(--text-xs); }
.setup-focused-card .response-matrix { border: 0; }
.setup-content-stage[data-active-setup-section="team"] .setup-team-panel { max-width: 1180px; margin: 12px auto 0; }
.setup-source-list { max-width: 1000px; margin: 12px auto 0; display: grid; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); overflow: hidden; }
.setup-source-row { min-height: 72px; padding: 12px 16px; display: grid; grid-template-columns: 38px minmax(0, 1fr) auto auto; gap: 12px; align-items: center; border-bottom: 1px solid var(--border-subtle); }
.setup-source-row:last-child { border-bottom: 0; }
.setup-source-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--surface-subtle); color: var(--accent); }
.setup-source-icon svg { width: 18px; height: 18px; }
.setup-source-row > div { min-width: 0; display: grid; gap: 3px; }
.setup-source-row strong { overflow: hidden; color: var(--text-heading); font-size: var(--text-sm); text-overflow: ellipsis; white-space: nowrap; }
.setup-source-row small { color: var(--text-muted); font-size: var(--text-xs); }
.setup-content-stage[data-active-setup-section="analysis"] > .analysis-outcome,
.setup-content-stage[data-active-setup-section="analysis"] > .warning-callout { max-width: 1180px; margin-right: auto; margin-left: auto; }
.intake-run-card { margin-top: 14px; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); overflow: hidden; }
.intake-run-head { min-height: 66px; padding: 13px 17px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.intake-run-head strong, .intake-run-head small { display: block; }
.intake-run-head strong { margin-top: 3px; color: var(--text-heading); font-size: var(--text-sm); }
.intake-run-head small { margin-top: 2px; color: var(--text-muted); font-size: var(--text-xs); }
.intake-run-stages { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border-top: 1px solid var(--border-subtle); background: var(--surface-subtle); }
.intake-run-stages > span { min-width: 0; padding: 12px 14px; display: grid; grid-template-columns: 16px 1fr; column-gap: 7px; border-right: 1px solid var(--border-subtle); }
.intake-run-stages > span:last-child { border-right: 0; }
.intake-run-stages svg { width: 15px; height: 15px; color: var(--teal-600); }
.intake-run-stages .attention svg { color: var(--amber-600); }
.intake-run-stages small, .intake-run-stages strong { grid-column: 2; display: block; }
.intake-run-stages small { color: var(--text-muted); font-size: 10px; text-transform: capitalize; }
.intake-run-stages strong { margin-top: 3px; color: var(--text-heading); font-size: var(--text-xs); line-height: 1.35; }
.intake-run-issues { padding: 13px 17px; border-top: 1px solid var(--border-subtle); background: var(--amber-50); font-size: var(--text-xs); }
.intake-issues-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.intake-issues-heading span { color: var(--text-muted); }
.intake-run-issues .intake-issue-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 0; list-style: none; }
.intake-issue-summary li { min-width: 0; }
.intake-issue-summary button { width: 100%; min-height: 72px; padding: 11px 12px; display: grid; grid-template-columns: minmax(0, 1fr) 16px; gap: 4px 10px; border: 1px solid #ead8aa; border-radius: var(--radius-md); background: rgba(255,255,255,.68); color: inherit; text-align: left; cursor: pointer; }
.intake-issue-summary button:hover { border-color: var(--amber-600); background: #fff; }
.intake-issue-summary strong, .intake-issue-summary span { display: block; }
.intake-issue-summary strong { color: var(--text-heading); }
.intake-issue-summary span { color: var(--text-muted); line-height: 1.45; }
.intake-issue-summary svg { grid-column: 2; grid-row: 1 / 3; align-self: center; width: 15px; color: var(--amber-600); }

.analysis-review-dialog { width: min(920px, calc(100% - 30px)); max-height: calc(100dvh - 34px); overflow: hidden; }
.analysis-review-dialog form { max-height: calc(100dvh - 34px); padding: 0; overflow: auto; }
.analysis-review-head { position: sticky; top: 0; z-index: 2; padding: 21px 23px 17px; border-bottom: 1px solid var(--border-subtle); background: var(--surface-card); }
.analysis-review-head p { max-width: 680px; margin: 0; color: var(--text-muted); }
.analysis-review-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; border-bottom: 1px solid var(--border-subtle); background: var(--border-subtle); }
.analysis-review-summary span { padding: 13px 18px; display: grid; gap: 3px; background: var(--surface-subtle); }
.analysis-review-summary small { color: var(--text-muted); text-transform: uppercase; letter-spacing: .06em; }
.analysis-review-summary strong { color: var(--text-heading); font-size: var(--text-lg); }
.analysis-review-groups { padding: 18px 22px 4px; display: grid; gap: 10px; }
.analysis-review-group { border: 1px solid var(--border-default); border-radius: var(--radius-md); background: #fff; overflow: hidden; }
.analysis-review-group > summary { min-height: 60px; padding: 12px 14px; display: grid; grid-template-columns: minmax(0, 1fr) auto 18px; gap: 12px; align-items: center; list-style: none; cursor: pointer; }
.analysis-review-group > summary::-webkit-details-marker { display: none; }
.analysis-review-group > summary div { display: grid; gap: 3px; }
.analysis-review-group > summary span { color: var(--text-muted); font-weight: 400; }
.analysis-review-group > summary b { min-width: 30px; padding: 4px 8px; border-radius: 999px; background: var(--amber-50); color: var(--amber-700); text-align: center; }
.analysis-review-group.technical > summary b { background: var(--surface-subtle); color: var(--text-muted); }
.analysis-review-group > summary svg { width: 16px; color: var(--text-muted); transition: transform .16s ease; }
.analysis-review-group[open] > summary svg { transform: rotate(180deg); }
.analysis-review-items { border-top: 1px solid var(--border-subtle); }
.analysis-group-guidance { padding: 10px 14px; display: flex; align-items: center; justify-content: space-between; gap: 15px; background: var(--amber-50); color: var(--text-muted); }
.analysis-review-item { margin: 0 !important; padding: 12px 14px; display: grid !important; grid-template-columns: minmax(0, 1fr) 240px; gap: 15px !important; align-items: center; border-top: 1px solid var(--border-subtle); font-weight: 400 !important; }
.analysis-review-item:first-of-type { border-top: 0; }
.analysis-review-item > span { color: var(--text-body); line-height: 1.5; }
.analysis-review-item select { width: 100%; margin: 0; }
.analysis-technical-item { margin: 0 !important; padding: 10px 14px; border-top: 1px solid var(--border-subtle); color: var(--text-muted); }
.analysis-technical-item:first-child { border-top: 0; }
.analysis-review-notes { margin: 16px 22px 0 !important; }
.analysis-review-notes > span { color: var(--text-muted); font-weight: 400; }
.analysis-review-actions { position: sticky; bottom: 0; z-index: 2; padding: 14px 22px; border-top: 1px solid var(--border-subtle); background: var(--surface-card); }
.analysis-review-actions > span { margin-right: auto; color: var(--text-muted); }

.analysis-outcome { margin: 16px 0; border: 1px solid var(--border-default); border-left: 4px solid var(--status-success-dot); border-radius: var(--radius-lg); background: var(--surface-card); overflow: hidden; box-shadow: var(--shadow-card); }
.analysis-outcome.warning { border-left-color: var(--amber-600); }
.analysis-outcome.danger { border-left-color: var(--status-danger-dot); }
.analysis-outcome-main { padding: 18px 20px 16px; display: flex; gap: 13px; align-items: flex-start; }
.analysis-outcome-main h2 { margin: 3px 0 4px; font-size: var(--text-xl); }
.analysis-outcome-main p { max-width: 760px; margin: 0; color: var(--text-muted); }
.analysis-outcome-icon { width: 32px; height: 32px; display: grid; flex: 0 0 32px; place-items: center; border-radius: 50%; background: var(--status-success-bg); color: var(--status-success-text); }
.analysis-outcome.warning .analysis-outcome-icon { background: var(--status-warning-bg); color: var(--status-warning-text); }
.analysis-outcome.danger .analysis-outcome-icon { background: var(--status-danger-bg); color: var(--status-danger-text); }
.analysis-outcome-icon svg { width: 17px; height: 17px; }
.analysis-outcome-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); background: var(--surface-subtle); }
.analysis-outcome-facts span { min-height: 58px; padding: 10px 18px; display: grid; gap: 2px; align-content: center; border-left: 1px solid var(--border-subtle); }
.analysis-outcome-facts span:first-child { border-left: 0; }
.analysis-outcome-facts small { color: var(--text-muted); }
.analysis-outcome-facts strong { color: var(--text-heading); font-size: var(--text-lg); }
.analysis-material-list { display: grid; }
.analysis-material-list button { width: 100%; padding: 13px 18px; display: flex; gap: 16px; align-items: center; justify-content: space-between; border: 0; border-top: 1px solid var(--border-subtle); background: #fff; color: var(--text-body); text-align: left; cursor: pointer; }
.analysis-material-list button:first-child { border-top: 0; }
.analysis-material-list button:hover { background: var(--surface-subtle); }
.analysis-material-list button span { display: grid; gap: 3px; }
.analysis-material-list button strong { color: var(--text-heading); }
.analysis-material-list button small { color: var(--text-muted); font-weight: 400; }
.analysis-material-list button svg { width: 17px; flex: 0 0 17px; color: var(--brand-600); }
.analysis-source-notice { margin: 0; padding: 11px 18px; display: flex; gap: 8px; align-items: center; border-top: 1px solid var(--border-subtle); color: var(--text-muted); background: var(--surface-subtle); }
.analysis-source-notice svg { width: 15px; flex: 0 0 15px; }
.intake-issue-summary li { padding: 10px 12px; border: 1px solid var(--border-subtle); border-radius: var(--radius-md); background: var(--surface-card); }
.intake-issue-summary strong, .intake-issue-summary span { display: block; }
.intake-issue-summary strong { color: var(--text-heading); }
.intake-issue-summary span { margin-top: 3px; line-height: 1.45; }
.intake-technical-log { margin-top: 10px; border-top: 1px solid var(--border-subtle); padding-top: 10px; }
.intake-technical-log > summary { width: fit-content; color: var(--blue-700); font-weight: 600; cursor: pointer; }
.intake-technical-log > ul { max-height: 280px; overflow-y: auto; padding-right: 12px; }
.setup-system-checks { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--border-default); }
.setup-system-checks > div { margin-bottom: 10px; }
.setup-system-checks h2 { margin: 3px 0; color: var(--text-heading); font-size: var(--text-md); }
.setup-system-checks p { margin: 0; color: var(--text-muted); font-size: var(--text-xs); }
.setup-system-checks .readiness-disclosure { margin-bottom: 0; box-shadow: none; }
.setup-new-tender { margin-top: 24px; box-shadow: none; }
.readiness-disclosure { margin-bottom: 16px; }
.readiness-disclosure > summary { min-height: 66px; padding: 14px 18px; }
.readiness-disclosure[open] > .pilot-readiness-card { background: var(--indigo-25); }
.setup-team-panel { margin: 16px 0; }
.setup-team-panel > summary { padding: 14px 18px; }
.setup-team-panel > summary strong { color: var(--text-heading); font: 600 var(--text-md)/1.35 var(--font-sans); }
.setup-team-panel form { padding: 16px 18px; border-top-color: var(--border-default); background: var(--indigo-25); }
.setup-section-disclosure { margin-top: 12px; }
.setup-section-disclosure > summary { min-height: 62px; }
.setup-section-disclosure[open] > summary { background: var(--indigo-25); }
.response-matrix { padding: 12px; background: var(--indigo-25); }
.setup-question-card { border-color: var(--border-default); border-radius: var(--radius-md); box-shadow: var(--shadow-card); }
.setup-question-top { padding: 14px 16px; }
.setup-question-top h3 { color: var(--text-heading); font: 600 var(--text-md)/1.35 var(--font-sans); }
.setup-question-top p { color: var(--text-muted); font-size: var(--text-sm); }
.setup-question-facts { border-color: var(--border-subtle); background: var(--surface-subtle); }
.setup-question-facts span { border-color: var(--border-subtle); }
.setup-question-facts small { color: var(--text-muted); font-size: 10px; }
.setup-question-facts strong { color: var(--text-heading); font-size: var(--text-xs); }
.setup-question-detail summary { color: var(--accent); }
.setup-question-fields, .setup-card-actions { background: var(--indigo-25); }
.returnables-board { background: var(--indigo-25); }
.returnable-card { border-color: var(--border-default); background: var(--surface-card); }
.question-save-state { margin-right: auto; color: var(--text-muted); font-size: 11px; font-weight: 600; }
.has-unsaved-changes { border-color: var(--amber-500); }
.has-unsaved-changes .question-save-state { color: var(--status-warning-text); }
.returnable-filter-bar { padding: 12px 16px; display: flex; align-items: center; flex-wrap: wrap; gap: 7px; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-default); background: var(--surface-card); }
.returnable-filter { min-height: 32px; padding: 6px 10px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--border-default); border-radius: 999px; background: var(--surface-card); color: var(--text-body); font: 600 11px/1 var(--font-sans); cursor: pointer; }
.returnable-filter:hover { border-color: var(--accent); color: var(--accent); }
.returnable-filter.active { border-color: var(--accent); background: var(--accent-soft); color: var(--accent); }
.returnable-filter span { min-width: 18px; padding: 3px 5px; border-radius: 999px; background: var(--surface-subtle); color: var(--text-muted); font-size: 9px; text-align: center; }
.returnable-filter-bar > small { margin-left: auto; color: var(--text-muted); font-size: 10px; }
.returnable-group-actions { padding: 10px 16px; display: grid; grid-template-columns: minmax(220px, 360px) auto auto; align-items: end; justify-content: end; gap: 10px; border-top: 1px solid var(--border-subtle); background: var(--surface-subtle); }
.returnable-group-actions label { color: var(--text-muted); font: 600 10px/1.35 var(--font-sans); }
.returnable-group-actions select { min-height: 36px; padding: 7px 9px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); color: var(--text-heading); font: 500 12px/1.4 var(--font-sans); }
.returnable-group-actions .group-preserve { min-height: 36px; display: flex; align-items: center; gap: 7px; color: var(--text-body); white-space: nowrap; }
.returnable-group-actions .group-preserve input { width: 15px; height: 15px; }
.submission-grid { padding: 16px; background: var(--indigo-25); }

/* Evidence-first response desk: questions, drafting and approved knowledge stay
   in one non-overlapping grid so source selection is part of the writing task. */
.workbench { height: 100%; min-height: 0; grid-template-columns: var(--register-width) minmax(0, 1fr); background: var(--surface-page); }
.workbench.evidence-open { grid-template-columns: var(--register-width) minmax(0, 1fr) minmax(320px, var(--evidence-width)); }
.question-register { position: relative; border-right: 1px solid var(--border-default); background: var(--surface-register); overflow: hidden; display: flex; flex-direction: column; }
.register-head { padding: 18px 12px 14px 16px; border-bottom-color: var(--border-default); background: var(--surface-register); display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.register-head h2 { color: var(--text-heading); font-size: var(--text-lg); font-weight: 700; }
.register-head p { color: var(--text-muted); font-size: var(--text-xs); }
.question-list { min-height: 0; flex: 1; padding: 8px; display: flex; flex-direction: column; align-content: flex-start; gap: 6px; overflow: auto; }
.question-row { min-height: 68px; flex: 0 0 auto; padding: 10px 11px; border: 1px solid #E1E6EF; border-radius: var(--radius-md); background: rgba(255,255,255,.58); }
.question-row:hover { border-color: #D4DCE8; background: var(--surface-card); }
.question-row.active { border-color: #CBD5E4; background: var(--surface-card); box-shadow: 0 3px 9px rgba(29,42,85,.06); }
.question-row.approved { border-color: #CDE6D8; background: #F7FBF8; }
.question-row.approved:hover { border-color: #AED6C0; background: #F2F9F5; }
.question-row.approved.active { border-color: #A8D2BA; background: #F5FAF7; }
.question-row.active::before { content: ""; position: absolute; left: 0; top: 12px; bottom: 12px; width: 3px; border-radius: var(--radius-pill); background: var(--accent); }
.question-row.approved.active::before { background: var(--status-success-dot); }
.question-row { position: relative; }
.question-row strong { color: var(--text-heading); font-size: var(--text-sm); font-weight: 600; }
.question-row-top, .question-row-meta { color: var(--text-muted); font-size: 10px; }
.question-group-note { color: var(--accent); font: 600 10px/1.35 var(--font-sans); }
.risk-dot { width: 7px; height: 7px; }
.risk-dot.approved { background: var(--status-success-dot); box-shadow: 0 0 0 3px var(--status-success-bg); }
.response-pane { background: var(--surface-page); }
.workspace-toolbar { max-width: none; min-height: 58px; margin: 0; padding: 10px 24px; border-bottom: 1px solid var(--border-subtle); }
.workspace-toolbar strong { color: var(--text-heading); font-size: var(--text-md); }
.workspace-toolbar span { color: var(--text-muted); font-size: var(--text-xs); }
.response-inner { max-width: 980px; padding: 14px 16px 44px; }
.question-sheet { border-color: var(--border-default); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.sheet-meta { padding: 12px 18px; border-bottom-color: var(--border-default); color: var(--text-muted); font: 500 var(--text-xs)/1.4 var(--font-sans); }
.question-copy { padding: 17px 18px; border-bottom-color: var(--border-default); }
.question-copy h1 { margin: 8px 0 10px; color: var(--text-heading); font: 700 var(--text-xl)/1.3 var(--font-sans); }
.buyer-ask { grid-template-columns: 112px minmax(0, 1fr); border-color: var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); overflow: hidden; }
.buyer-ask-label { border-right-color: var(--border-default); background: var(--indigo-50); }
.buyer-ask-label span { color: var(--accent); }
.buyer-question-rich { color: var(--text-body); font: var(--text-md)/1.6 var(--font-sans); }
.buyer-question-rich li::before { background: var(--accent); }
.criterion { border-left-color: var(--accent); color: var(--text-body); font-size: var(--text-sm); }
.criterion strong { color: var(--accent); }
.shared-evaluation-lenses { margin-top: 12px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); overflow: hidden; }
.shared-evaluation-lenses-head { padding: 11px 13px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--border-default); background: var(--indigo-25); }
.shared-evaluation-lenses-head > div { display: grid; gap: 3px; }
.shared-evaluation-lenses-head strong { color: var(--text-heading); font: 650 var(--text-sm)/1.35 var(--font-sans); }
.shared-evaluation-lenses-head > span { padding: 5px 8px; border-radius: var(--radius-pill); background: var(--accent-soft); color: var(--accent); font: 650 10px/1 var(--font-sans); }
.shared-evaluation-lens-list { display: grid; }
.shared-evaluation-lens-list .evaluation-lens-card { margin: 0; border: 0; border-radius: 0; }
.shared-evaluation-lens-list .evaluation-lens-card + .evaluation-lens-card { border-top: 1px solid var(--border-subtle); }
.response-plan-simple { margin: 12px 14px 0; padding: 13px 15px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--indigo-25); box-shadow: none; }
.response-plan.confirmed { box-shadow: none; }
.response-plan-simple .response-plan-head h2 { color: var(--text-heading); font: 600 var(--text-lg)/1.3 var(--font-sans); }
.response-plan-simple .response-plan-head p { color: var(--text-muted); font-size: var(--text-sm); }
.plan-facts { border-color: var(--border-default); border-radius: var(--radius-md); }
.plan-facts span { border-color: var(--border-default); }
.plan-facts small { color: var(--text-muted); font-size: 10px; }
.plan-facts strong { color: var(--text-heading); font-size: var(--text-sm); }
.agent-prepared-plan .response-plan-head { align-items: flex-start; }
.agent-prepared-plan .response-plan-head > div { max-width: 680px; }
.agent-prepared-plan .plan-facts { margin-top: 14px; }
.agent-plan-note { margin: 12px 0 0; color: var(--text-muted); font-size: var(--text-xs); line-height: 1.55; }
.response-brief { margin: 10px 14px 0; border: 1px solid #E8DDBE; border-radius: var(--radius-md); background: var(--indigo-50); overflow: hidden; }
.response-brief summary { min-height: 56px; padding: 10px 13px; border-left: 0; }
.response-brief summary strong { color: var(--text-heading); font: 600 var(--text-md)/1.3 var(--font-sans); }
.brief-badges { align-items: center; gap: 8px; }
.brief-badges span { padding: 6px 9px; border-radius: var(--radius-sm); font: 600 11px/1.25 var(--font-sans); letter-spacing: 0; }
.brief-badges .brief-toggle { padding-inline: 5px; color: var(--accent); font-size: 11px; font-weight: 600; }
.response-brief:not([open]) .brief-toggle::after { font-size: 11px; }
.brief-body { padding: 0 13px 13px; border-left: 0; }
.brief-group { border-color: var(--border-default); border-radius: var(--radius-md); overflow: hidden; }
.brief-requirement-row p { color: var(--text-body); font-size: var(--text-sm); }
.assignment-strip { margin: 10px 14px 0; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-subtle); overflow: hidden; }
.assignment-strip-bottom { margin: 0; }
.assignment-strip div { padding: 9px 11px; }
.assignment-strip div { border-right-color: var(--border-default); }
.assignment-strip span { color: var(--text-muted); }
.assignment-strip strong { color: var(--text-heading); font-size: var(--text-xs); }
.editor-head { margin-top: 12px; padding: 10px 14px; border-top: 1px solid var(--border-default); border-bottom-color: var(--border-default); }
.editor-head strong { color: var(--text-heading); font-size: var(--text-sm); }
.editor-head.approved { background: #F3F7F5; border-color: #CDE6D8; }
.word-count { color: var(--text-muted); font: var(--text-xs)/1.3 var(--font-sans); }
.draft-editor { min-height: 420px; padding: 18px 20px; background: var(--surface-card); color: var(--text-heading); font: var(--text-md)/1.7 var(--font-sans); }
.draft-editor:focus { background: var(--surface-card); }
.draft-editor.approved { resize: none; background: #F1F3F5; color: #556171; cursor: default; }
.draft-editor.approved:focus { outline: 0; background: #F1F3F5; }
.response-lock-state { display: inline-flex; align-items: center; gap: 5px; padding: 4px 8px; border-radius: var(--radius-pill); background: var(--status-success-bg); color: var(--status-success-text); font-size: var(--text-xs); font-weight: 600; }
.response-lock-state svg { width: 13px; height: 13px; }
.response-review-actions { border-color: var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.response-review-actions.approved { border-color: #CDE6D8; background: #F7FBF8; box-shadow: none; }
.response-review-actions.approved > .button { flex: 0 0 auto; }
.approval-readiness { border: 0; border-radius: var(--radius-md); background: var(--status-success-bg); color: var(--status-success-text); }
.approval-readiness.risk { background: var(--status-danger-bg); color: var(--status-danger-text); }
.score-ring { border-color: var(--accent); color: var(--text-heading); font: 700 var(--text-lg)/1 var(--font-sans); }

.evidence-rail { position: relative; z-index: 1; inset: auto; width: auto; min-width: 0; height: 100%; max-height: none; border: 0; border-left: 1px solid var(--border-default); border-radius: 0; background: var(--surface-page); box-shadow: none; transform: none; transition: none; overflow: hidden; display: none; flex-direction: column; }
.workbench.evidence-open .evidence-rail { display: flex; transform: none; }
.rail-head { min-height: 94px; padding: 18px 20px; border-bottom-color: var(--border-default); background: var(--surface-page); }
.rail-head h2 { color: var(--text-heading); font-size: var(--text-lg); font-weight: 700; }
.rail-head p { color: var(--text-muted); font-size: var(--text-xs); }
.evidence-toolbar { border-bottom-color: var(--border-default); background: var(--surface-page); }
.evidence-toolbar button { color: var(--text-muted); font-size: var(--text-sm); }
.evidence-toolbar button.active { color: var(--accent); border-bottom-color: var(--accent); }
.evidence-list { min-height: 0; flex: 1; overflow: auto; padding: 12px; background: var(--indigo-25); }
.evidence-card { border-color: var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.evidence-card.selected { border-color: var(--indigo-300); box-shadow: inset 3px 0 var(--accent), var(--shadow-card); }
.evidence-number, .citation-number { border-radius: var(--radius-sm); background: var(--accent); font-family: var(--font-sans); }
.evidence-card h3 { color: var(--text-heading); font-size: var(--text-sm); }
.evidence-card p { color: var(--text-body); font: var(--text-sm)/1.55 var(--font-sans); }
.evidence-source { border-top-color: var(--border-subtle); color: var(--text-muted); font-size: var(--text-xs); }
.context-action { border-top-color: var(--border-subtle); color: var(--accent); font-size: var(--text-xs); }
.source-check { border-color: var(--border-strong); border-radius: var(--radius-sm); }
.selected .source-check { border-color: var(--accent); background: var(--accent); }

/* Tables, library, knowledge, quality and settings inherit the same component language. */
.metric-grid { border-color: var(--border-default); border-radius: var(--radius-lg); background: var(--border-default); overflow: hidden; }
.metric { background: var(--surface-card); }
.metric span, .metric small { color: var(--text-muted); }
.metric strong { color: var(--text-heading); font: 700 var(--text-xl)/1.2 var(--font-sans); }
.table-card, .source-library-control { border-color: var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.data-table th { padding: 12px 14px; border-bottom-color: var(--border-default); background: var(--surface-card); color: var(--text-heading); font-size: var(--text-sm); font-weight: 600; letter-spacing: 0; text-transform: none; }
.data-table td { padding: 14px; border-bottom-color: var(--border-subtle); color: var(--text-body); font-size: var(--text-md); }
.data-table tr:hover td { background: var(--surface-hover); }
.data-table strong { color: var(--text-heading); font-size: var(--text-sm); }
.data-table small { color: var(--text-muted); font-size: var(--text-xs); }
.source-library-control form { background: var(--surface-card); }
.topic-card::before { background: var(--accent); }
.topic-card h3, .knowledge-result h3, .knowledge-answer h2, .coverage-heading h2 { color: var(--text-heading); font-family: var(--font-sans); }
.answer-copy { border-left-color: var(--accent); border-radius: var(--radius-md); background: var(--indigo-50); color: var(--text-heading); font: var(--text-md)/1.65 var(--font-sans); }
.settings-layout { gap: 20px; }
.settings-nav button { border-color: var(--border-default); border-left: 0; border-radius: var(--radius-md); color: var(--text-body); }
.settings-nav button:hover { background: var(--surface-hover); }
.settings-nav button.active { border-left: 0; background: var(--surface-selected); color: var(--accent); }
.settings-card-head { border-bottom-color: var(--border-default); }
.settings-card-head h2 { color: var(--text-heading); font: 600 var(--text-lg)/1.3 var(--font-sans); }
.settings-state { border: 0; border-radius: var(--radius-pill); background: var(--status-info-bg); color: var(--status-info-text); }
.settings-page, .settings-page button, .settings-page input, .settings-page select, .settings-page textarea { font-family: var(--font-sans); }
.settings-heading { margin-bottom: 22px; }
.settings-readiness span { color: var(--text-muted); font: 500 10px/1.4 var(--font-sans); }
.settings-readiness strong { color: var(--text-heading); font: 700 13px/1.25 var(--font-sans); }
.settings-nav strong { color: inherit; font: 650 13px/1.35 var(--font-sans); }
.settings-nav span { color: var(--text-muted); font: 400 10px/1.45 var(--font-sans); }
.settings-card-head .eyebrow { font-size: 10px; }
.settings-card-head h2 { margin-top: 5px; }
.settings-card-head, .profile-settings-identity { min-height: 72px; padding: 17px 20px; }
.profile-settings-identity { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; align-items: center; gap: 14px; border-bottom: 1px solid var(--border-default); background: linear-gradient(90deg, var(--indigo-25), var(--surface-card) 62%); }
.profile-settings-avatar { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; background: var(--accent); color: var(--white); font: 700 13px/1 var(--font-sans); }
.profile-photo-panel { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 20px; border-bottom: 1px solid var(--border-default); background: var(--surface-card); }
.profile-photo-panel > div:first-child { display: grid; gap: 3px; }
.profile-photo-panel strong { color: var(--text-heading); font-size: var(--text-sm); }
.profile-photo-panel span { color: var(--text-muted); font-size: var(--text-xs); }
.profile-photo-actions { display: flex; align-items: center; gap: 10px; flex: 0 0 auto; }
.profile-photo-actions .button { cursor: pointer; }
.profile-photo-actions .button i, .operations-back-button i { width: 16px; height: 16px; }
.text-button.danger { color: var(--danger-700, #9f2d26); }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.profile-settings-identity h2 { margin: 3px 0 2px; color: var(--text-heading); font: 700 18px/1.25 var(--font-sans); }
.profile-settings-identity p { margin: 0; color: var(--text-muted); font-size: 11px; }
.profile-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.profile-notification-settings { grid-column: 1 / -1; padding: 14px; display: grid; grid-template-columns: 110px 1fr 1fr; align-items: center; gap: 12px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-subtle); }
.profile-notification-settings > span { color: var(--text-heading); font: 650 11px/1.35 var(--font-sans); }
.profile-notification-settings .check-setting { min-height: 48px; padding: 8px 10px; border: 0; background: var(--surface-card); }
.member-row { align-items: center; }
.member-row select, .member-profile-fields input, .member-profile-fields select { min-height: 40px; padding: 8px 10px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); color: var(--text-heading); font: 500 13px/1.4 var(--font-sans); }
.member-identity strong { color: var(--text-heading); font: 650 13px/1.35 var(--font-sans); }
.member-identity small { color: var(--text-muted); font: 400 10px/1.4 var(--font-sans); }
.member-profile-fields { grid-column: 1 / -1; margin: 2px 0 0 48px; border-top: 1px solid var(--border-subtle); }
.member-profile-fields > summary { min-height: 34px; padding: 9px 0; color: var(--accent); font: 600 11px/1.35 var(--font-sans); }
.member-profile-fields > div { padding: 12px 0 4px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.member-profile-fields label { display: grid; gap: 5px; color: var(--text-muted); font: 600 10px/1.35 var(--font-sans); }
.inline-settings-form.add-member-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.inline-settings-form.add-member-grid > .button { align-self: end; justify-self: stretch; }
.form-note { color: var(--text-muted); font: 400 10px/1.5 var(--font-sans); }

/* Quality workspace: a decision dashboard first, detailed controls on demand. */
.operations-heading { margin-bottom: 18px; }
.operations-heading .heading-actions { flex-wrap: wrap; justify-content: flex-end; }
.operations-back-button { display: inline-flex; align-items: center; gap: 7px; }
.operations-heading ~ [hidden] { display: none !important; }
.operations-subnav { margin: 0 0 22px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-control); overflow: hidden; }
.operations-subnav button { min-width: 0; min-height: 66px; padding: 13px 15px; display: flex; align-items: center; gap: 11px; border: 0; border-right: 1px solid var(--border-default); background: transparent; color: var(--text-muted); text-align: left; cursor: pointer; }
.operations-subnav button:last-child { border-right: 0; }
.operations-subnav button:hover { background: var(--surface-hover); color: var(--text-heading); }
.operations-subnav button.active { background: var(--surface-card); color: var(--accent); box-shadow: inset 0 -3px 0 var(--accent); }
.operations-subnav svg { width: 18px; height: 18px; flex: 0 0 auto; }
.operations-subnav span { min-width: 0; display: grid; gap: 3px; }
.operations-subnav strong { color: inherit; font: 650 var(--text-sm)/1.25 var(--font-sans); }
.operations-subnav small { color: var(--text-muted); font: 400 var(--text-xs)/1.35 var(--font-sans); }

.quality-dashboard { display: grid; gap: 16px; }
.quality-readiness-card { position: relative; padding: 22px; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 24px; border: 1px solid var(--border-default); border-left: 4px solid var(--status-warning-text); border-radius: var(--radius-lg); background: linear-gradient(100deg, var(--status-warning-bg), var(--surface-card) 52%); box-shadow: var(--shadow-card); }
.quality-readiness-card.ready { border-left-color: var(--status-success-text); background: linear-gradient(100deg, var(--status-success-bg), var(--surface-card) 52%); }
.quality-readiness-card.attention { border-left-color: var(--status-danger-text); background: linear-gradient(100deg, var(--status-danger-bg), var(--surface-card) 52%); }
.quality-readiness-card h2 { margin: 6px 0 5px; color: var(--text-heading); font: 700 var(--text-xl)/1.25 var(--font-sans); }
.quality-readiness-card p { margin: 0; color: var(--text-muted); font: 400 var(--text-sm)/1.45 var(--font-sans); }
.quality-readiness-state { min-width: 150px; display: grid; justify-items: start; gap: 7px; }
.quality-readiness-state strong { color: var(--text-heading); font: 650 var(--text-sm)/1.35 var(--font-sans); }
.quality-readiness-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.quality-dashboard-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.quality-dashboard-card { min-height: 210px; padding: 18px; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.quality-dashboard-card > div { flex: 1; }
.quality-dashboard-card h3 { margin: 7px 0 6px; color: var(--text-heading); font: 650 var(--text-lg)/1.3 var(--font-sans); }
.quality-dashboard-card p { margin: 0; color: var(--text-muted); font: 400 var(--text-sm)/1.5 var(--font-sans); }
.quality-dashboard-card .text-action { margin-top: auto; color: var(--accent); font: 650 var(--text-sm)/1.3 var(--font-sans); }
.quality-card-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--surface-selected); color: var(--accent); }
.quality-card-icon.evidence { background: var(--surface-ai); color: var(--teal-700); }
.quality-card-icon.processing { background: var(--status-warning-bg); color: var(--status-warning-text); }
.quality-card-icon svg { width: 19px; height: 19px; }
.quality-dashboard > .readiness-disclosure { margin: 0; }
.operations-quality-section + .quality-grid, .quality-grid + .quality-grid { margin-top: 16px; }
.operations-quality-empty { margin-top: 14px; padding: 18px 20px; display: grid; gap: 4px; text-align: left; }
.operations-quality-empty strong { color: var(--text-heading); font: 650 var(--text-sm)/1.35 var(--font-sans); }
.operations-quality-empty span { color: var(--text-muted); font: 400 var(--text-xs)/1.45 var(--font-sans); }

.operations-audit-disclosure { margin-top: 22px; overflow: hidden; }
.operations-audit-disclosure > summary { min-height: 82px; padding: 18px 20px; display: flex; align-items: center; justify-content: space-between; gap: 20px; list-style: none; cursor: pointer; }
.operations-audit-disclosure > summary::-webkit-details-marker { display: none; }
.operations-audit-disclosure > summary:hover { background: var(--surface-hover); }
.operations-audit-disclosure > summary h2 { margin: 5px 0 3px; color: var(--text-heading); font: 650 var(--text-lg)/1.3 var(--font-sans); }
.operations-audit-disclosure > summary p { margin: 0; color: var(--text-muted); font: 400 var(--text-xs)/1.45 var(--font-sans); }
.audit-disclosure-action { display: inline-flex; align-items: center; gap: 8px; color: var(--accent); font: 650 var(--text-sm)/1.3 var(--font-sans); white-space: nowrap; }
.audit-disclosure-action svg { width: 16px; height: 16px; transition: transform var(--duration-fast) var(--ease-standard); }
.operations-audit-disclosure[open] .audit-disclosure-action svg { transform: rotate(180deg); }
.audit-explorer-body { border-top: 1px solid var(--border-default); overflow: auto; }
.audit-explorer-toolbar { min-height: 56px; padding: 10px 16px; display: flex; align-items: center; justify-content: space-between; gap: 16px; color: var(--text-muted); font: 400 var(--text-xs)/1.4 var(--font-sans); }

@media (max-width: 980px) {
  .operations-subnav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .operations-subnav button:nth-child(2) { border-right: 0; }
  .operations-subnav button:nth-child(-n+2) { border-bottom: 1px solid var(--border-default); }
  .quality-readiness-card { grid-template-columns: minmax(0, 1fr) auto; }
  .quality-readiness-actions { grid-column: 1 / -1; justify-content: flex-start; }
  .quality-dashboard-grid { grid-template-columns: 1fr; }
  .quality-dashboard-card { min-height: 0; }
}

@media (max-width: 640px) {
  .operations-subnav { grid-template-columns: 1fr; }
  .operations-subnav button { min-height: 58px; border-right: 0; border-bottom: 1px solid var(--border-default); }
  .operations-subnav button:last-child { border-bottom: 0; }
  .operations-subnav button.active { box-shadow: inset 3px 0 0 var(--accent); }
  .quality-readiness-card { grid-template-columns: 1fr; }
  .quality-readiness-actions, .quality-readiness-state { grid-column: auto; }
  .quality-readiness-actions { justify-content: stretch; }
  .quality-readiness-actions .button { width: 100%; }
  .operations-audit-disclosure > summary, .audit-explorer-toolbar { align-items: flex-start; flex-direction: column; }
}

dialog { border: 0; border-radius: var(--radius-xl); box-shadow: var(--shadow-pop); color: var(--text-body); }
dialog::backdrop { background: rgba(29, 42, 85, .45); }
.dialog-head { border-bottom-color: var(--border-default); }
.dialog-head h2 { color: var(--text-heading); font-family: var(--font-sans); }
.toast { border-radius: var(--radius-md); background: var(--indigo-900); font-size: var(--text-sm); box-shadow: var(--shadow-pop); }
.toast.error { background: var(--status-danger-text); }

/* Personal workspace controls: panels can collapse, resize and retain their layout. */
.panel-collapse-button { width: 30px; height: 30px; padding: 0; display: inline-grid; place-items: center; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: rgba(255,255,255,.75); color: var(--text-muted); cursor: pointer; }
.panel-collapse-button:hover { border-color: var(--indigo-300); background: var(--surface-card); color: var(--accent); }
.panel-collapse-button svg { width: 16px; height: 16px; stroke-width: 1.8; }
.sidebar-collapse-button { position: absolute; z-index: 3; top: 26px; right: 12px; width: 30px; height: 30px; border-radius: var(--radius-md); background: var(--surface-card); box-shadow: none; }
.sidebar .brand { padding-right: 42px; }
.register-collapse-button { flex: 0 0 auto; background: var(--surface-card); }
.panel-resizer { position: absolute; z-index: 8; top: 0; bottom: 0; width: 8px; cursor: col-resize; touch-action: none; }
.panel-resizer::after { content: ""; position: absolute; top: 0; bottom: 0; left: 3px; width: 2px; background: transparent; transition: background var(--duration-fast) var(--ease-standard); }
.panel-resizer:hover::after, .panel-resizing .panel-resizer::after { background: var(--indigo-300); }
.sidebar-resizer { right: -4px; }
.register-resizer { right: -4px; }
.evidence-resizer { left: -4px; }
.panel-resizing { cursor: col-resize !important; user-select: none !important; }
.panel-resizing * { cursor: col-resize !important; }
.register-expand-button { display: none; }
.workbench.register-collapsed { grid-template-columns: 52px minmax(0, 1fr); }
.workbench.register-collapsed.evidence-open { grid-template-columns: 52px minmax(0, 1fr) minmax(320px, var(--evidence-width)); }
.workbench.register-collapsed .register-head, .workbench.register-collapsed .question-list { display: none; }
.workbench.register-collapsed .register-expand-button { width: 52px; height: 100%; padding: 18px 0; display: flex; flex-direction: column; align-items: center; gap: 12px; border: 0; background: var(--surface-register); color: var(--accent); cursor: pointer; }
.workbench.register-collapsed .register-expand-button span { writing-mode: vertical-rl; transform: rotate(180deg); color: var(--text-heading); font-size: var(--text-xs); font-weight: 600; }
.workbench.register-collapsed .register-resizer { display: none; }
.rail-panel-controls { display: flex; align-items: center; gap: 4px; }

body.sidebar-collapsed .sidebar { padding-left: 14px; padding-right: 14px; align-items: center; }
body.sidebar-collapsed .sidebar-collapse-button { top: 25px; right: -15px; z-index: 20; width: 28px; height: 28px; border-radius: 999px; box-shadow: 0 4px 12px rgba(36, 55, 94, .14); }
body.sidebar-collapsed .sidebar .brand { padding-right: 0; }
body.sidebar-collapsed .brand { width: 44px; padding: 0; justify-content: center; }
body.sidebar-collapsed .brand-copy, body.sidebar-collapsed .nav-label, body.sidebar-collapsed .sidebar-note, body.sidebar-collapsed .nav-text, body.sidebar-collapsed .user-card > span:last-of-type, body.sidebar-collapsed .user-menu-chevron { display: none !important; }
body.sidebar-collapsed .main-nav { align-items: center; }
body.sidebar-collapsed .main-nav button { width: 44px; padding: 0; justify-content: center; }
body.sidebar-collapsed .user-card { width: 44px; padding: 10px 0 0; justify-content: center; }
body.responsive-compact-navigation .sidebar-collapse-button,
body.responsive-compact-navigation .sidebar-resizer { display: none; }

.user-card { appearance: none; cursor: pointer; text-align: left; background: transparent; color: inherit; }
.user-card:hover { background: rgba(255,255,255,.55); border-radius: var(--radius-md); }
.user-menu-chevron { width: 15px; height: 15px; margin-left: auto; color: var(--text-muted); }
.account-popover { position: fixed; z-index: 80; left: 14px; bottom: 70px; width: min(320px, calc(100vw - 28px)); border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-pop); overflow: hidden; }
.account-popover[hidden] { display: none !important; }
.account-popover-head { padding: 16px; display: flex; align-items: center; gap: 11px; border-bottom: 1px solid var(--border-default); }
.account-popover-head strong, .account-popover-head small { display: block; }
.account-popover-head strong { color: var(--text-heading); font-size: var(--text-sm); }
.account-popover-head small { margin-top: 2px; color: var(--text-muted); font-size: var(--text-xs); }
.account-meta { padding: 12px 16px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; background: var(--surface-control); }
.account-meta small, .account-meta strong { display: block; }
.account-meta small { color: var(--text-muted); font-size: 10px; }
.account-meta strong { margin-top: 3px; color: var(--text-heading); font-size: var(--text-xs); }
.account-setting { margin: 0; padding: 12px 16px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid var(--border-subtle); text-transform: none; }
.account-setting span strong, .account-setting span small { display: block; }
.account-setting span strong { color: var(--text-heading); font-size: var(--text-xs); }
.account-setting span small { margin-top: 2px; color: var(--text-muted); font-size: 10px; }
.account-setting input { width: 16px; min-height: 16px; }
.account-actions { padding: 12px 16px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid var(--border-default); }

/* Semantic colour zones: indigo means navigation/action, teal means AI/evidence, amber means human follow-up. */
.question-register, .register-head, .workbench.register-collapsed .register-expand-button { background: var(--surface-register); }
.question-row:hover { background: #E9EDF3; }
.question-row.active { border-color: #D8DFEA; background: var(--surface-card); }
.buyer-ask { background: var(--surface-buyer); }
.buyer-ask-label { background: #E8EEF9; }
.criterion { margin-top: 14px; padding: 12px 14px; border: 1px solid #E5EAF2; border-left: 3px solid #7D90B6; border-radius: var(--radius-md); background: #FAFBFD; }
.agent-prepared-plan { border-left: 3px solid var(--teal-600); background: var(--surface-ai); }
.agent-prepared-plan .eyebrow { color: var(--teal-700); }
.agent-prepared-plan .plan-facts { border-color: #CFE6DD; background: rgba(255,255,255,.72); }
.agent-prepared-plan .status.clear { color: var(--teal-700); background: var(--surface-ai-strong); }
.draft-control-panel { margin: 0 14px 16px; border: 1px solid var(--border-default); border-left: 3px solid var(--amber-500); border-radius: var(--radius-md); background: var(--surface-card); overflow: hidden; }
.draft-control-panel.ready { border-left-color: var(--teal-600); }
.draft-control-summary { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 16px 18px; }
.draft-control-summary h3 { margin: 3px 0 5px; color: var(--text-heading); font: 600 var(--text-md)/1.35 var(--font-sans); }
.draft-control-summary p { margin: 0; max-width: 760px; color: var(--text-muted); font-size: var(--text-sm); }
.draft-control-summary > span { flex: 0 0 auto; padding: 5px 9px; border-radius: var(--radius-pill); color: var(--text-muted); background: var(--surface-subtle); font-size: var(--text-xs); }
.draft-control-detail { border-top: 1px solid var(--border-default); }
.draft-control-detail summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 18px; cursor: pointer; color: var(--text-heading); font-size: var(--text-sm); font-weight: 600; }
.draft-control-detail summary::marker { display: none; }
.draft-control-detail summary svg { width: 16px; height: 16px; }
.draft-control-detail ul { margin: 0; padding: 0 38px 15px; color: var(--text-body); font-size: var(--text-sm); }
.draft-control-detail li + li { margin-top: 6px; }
.draft-mode-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 9px; padding: 12px 18px; border-top: 1px solid var(--border-default); background: var(--surface-subtle); }
.draft-mode-actions > span { margin-right: auto; color: var(--text-muted); font-size: var(--text-sm); }
.claim-provenance-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--border-default); }
.claim-provenance-list article { padding: 12px 18px; border-right: 1px solid var(--border-default); border-bottom: 1px solid var(--border-default); }
.claim-provenance-list p { margin: 0 0 5px; color: var(--text-body); font-size: var(--text-sm); }
.claim-provenance-list article > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.claim-provenance-list small { color: var(--text-muted); font-size: var(--text-xs); }
@media (max-width: 760px) { .draft-control-summary { flex-direction: column; gap: 10px; } .claim-provenance-list { grid-template-columns: 1fr; } .draft-mode-actions { align-items: stretch; flex-direction: column; } .draft-mode-actions .button { width: 100%; } }
.response-brief { background: var(--surface-action); }
.response-brief .eyebrow, .response-brief summary > span { color: var(--amber-600); }
.assignment-strip { background: var(--surface-control); }
.evidence-list { background: var(--surface-evidence); }
.evidence-card.selected { border-color: #9ACDBF; box-shadow: inset 3px 0 var(--teal-600), var(--shadow-card); }
.selected .source-check { border-color: var(--teal-600); background: var(--teal-600); }
.source-library-control { background: var(--surface-control); }
.source-library-control form { background: var(--surface-control); }
.metric-grid .metric:nth-child(1) { background: #F3F6FC; }
.metric-grid .metric:nth-child(2) { background: #EFF8F4; }
.metric-grid .metric:nth-child(3) { background: #FFF8EA; }
.metric-grid .metric:nth-child(4) { background: #F7F3FC; }

/* Dense workspace type scale: labels stay legible, values stop overpowering headings. */
.page-heading h1 { font-size: 24px; line-height: 1.2; }
.page-heading p { font-size: 14px; line-height: 1.5; }
.card-head h2, .section-heading h2, .tender-navigation-head h2 { font-size: 16px; }
.settings-card-head h2, .rail-head h2, .register-head h2 { font-size: 16px; }
.source-library-control form { grid-template-columns: minmax(230px, 1.4fr) repeat(4, minmax(130px, .72fr)); gap: 12px; padding: 16px 18px; }
.source-library-control .source-search { grid-column: auto; }
.source-library-control label { gap: 6px; color: var(--text-body); font-size: 11px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.source-library-control input, .source-library-control select { min-height: 40px; padding: 8px 11px; font-size: 13px; font-weight: 500; }
.source-library-control input::placeholder { color: var(--text-faint); font-weight: 400; }
.source-library-control .button { min-height: 40px; font-size: 13px; }
.source-library-pagination { font-size: 11px; }
.data-table th { font-size: 12px; }
.data-table td { font-size: 13px; }
.settings-form-grid label, .inline-settings-form label, .integration-fields label, .setup-question-fields label, .returnable-controls label, dialog label { font-size: 11px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.settings-form-grid input, .settings-form-grid select, .inline-settings-form input, .inline-settings-form select, .integration-fields input, .integration-fields select, .setup-question-fields input, .setup-question-fields select, .returnable-controls input, .returnable-controls select, dialog input, dialog select { font-size: 13px; font-weight: 500; }
.assignment-strip span, .plan-facts small, .sheet-meta, .eyebrow { font-size: 10px; }
.assignment-strip strong, .plan-facts strong { font-size: 12px; }

/* Setup forms share one readable control scale; legacy serif and micro-copy are removed. */
.setup-team-panel form label,
.setup-question-fields label,
.returnable-controls label,
.submission-card label,
.outcome-form label {
  color: var(--text-muted);
  font: 600 11px/1.35 var(--font-sans);
  letter-spacing: 0;
  text-transform: none;
}
.setup-team-panel form input,
.setup-team-panel form select,
.setup-question-fields input,
.setup-question-fields select,
.setup-question-fields textarea,
.returnable-controls input,
.returnable-controls select,
.submission-card textarea,
.outcome-form input,
.outcome-form select,
.outcome-form textarea {
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  background: var(--surface-card);
  color: var(--text-heading);
  font: 500 13px/1.4 var(--font-sans);
}
.setup-question-fields textarea,
.submission-card textarea,
.outcome-form textarea { resize: vertical; }
.setup-team-panel > p { color: var(--text-muted); font-size: 11px; line-height: 1.45; }
.setup-question-fields .wide-title { grid-column: span 2; }
.question-edit-note { margin: 2px 0 0; color: var(--text-muted); font-size: 11px; line-height: 1.45; }
.returnables-overview span { color: var(--text-muted); font: 500 11px/1.35 var(--font-sans); }
.returnables-overview strong { margin-top: 5px; color: var(--text-heading); font: 700 20px/1.2 var(--font-sans); }
.returnable-group > summary strong { color: var(--text-heading); font: 600 13px/1.35 var(--font-sans); }
.returnable-group > summary span { color: var(--text-muted); font-size: 11px; }
.returnable-copy p { color: var(--text-body); font: 400 13px/1.55 var(--font-sans); }
.returnable-copy small { color: var(--text-muted); font: 400 10px/1.45 var(--font-sans); }
.mandatory-tag, .optional-tag { font: 700 9px/1.2 var(--font-sans); }

/* Export is a focused workflow destination, separate from requirements setup. */
.export-view { max-width: 1440px; margin: 0 auto; }
.export-hero { padding-top: 18px; }
.export-readiness {
  margin-top: 18px;
  padding: 16px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid var(--border-default);
  border-left: 4px solid var(--amber-500);
  border-radius: var(--radius-lg);
  background: var(--status-warning-bg);
}
.export-readiness.clear { border-left-color: var(--teal-600); background: var(--status-success-bg); }
.export-readiness h2 { margin: 4px 0; color: var(--text-heading); font: 700 18px/1.3 var(--font-sans); }
.export-readiness p { margin: 0; color: var(--text-muted); font-size: 12px; line-height: 1.5; }
.export-grid { margin-top: 16px; display: grid; grid-template-columns: minmax(320px, .9fr) minmax(420px, 1.1fr); gap: 16px; align-items: start; }
.export-grid .submission-card,
.export-grid .outcome-form { padding: 20px; border-radius: var(--radius-lg); }
.submission-card h2,
.outcome-form h2 { margin: 8px 0 12px; color: var(--text-heading); font: 700 18px/1.3 var(--font-sans); }
.submission-card p,
.outcome-form p { color: var(--text-muted); font: 400 12px/1.55 var(--font-sans); }
.submission-card small { color: var(--text-muted); font-size: 10px; line-height: 1.5; }
.submission-gate { font: 500 11px/1.5 var(--font-sans); }
.submission-gate li { margin: 5px 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.submission-gate li .text-action { flex: 0 0 auto; font-size: 10px; white-space: nowrap; }
.operations-readiness { margin-bottom: 18px; padding: 16px; border: 1px solid var(--border-default); border-radius: var(--radius-lg); background: var(--surface-control); }
.operations-readiness > div:first-child h2 { margin: 4px 0; color: var(--text-heading); font: 700 18px/1.3 var(--font-sans); }
.operations-readiness > div:first-child p { margin: 0 0 12px; color: var(--text-muted); font-size: 12px; }

/* Quality and operations retain the same sans-serif hierarchy as the bid workflow. */
.metric strong { color: var(--text-heading); font: 700 21px/1.2 var(--font-sans); }
.rag-index-strip > div:first-child > strong,
.queue-health-strip > div:first-child > strong { color: var(--text-heading); font: 700 16px/1.3 var(--font-sans); }
.rag-index-strip p,
.queue-health-strip p { font: 400 11px/1.5 var(--font-sans); }
.rag-index-stats small { font: 600 9px/1.25 var(--font-sans); }
.rag-index-stats strong { font: 700 11px/1.3 var(--font-sans); }
.quality-summary h2 { color: var(--text-heading); font: 700 20px/1.3 var(--font-sans); }
.quality-summary p,
.extraction-benchmark .empty-state { font: 400 12px/1.55 var(--font-sans); }
.extraction-benchmark .card-head h2,
.benchmark-list h3 { color: var(--text-heading); font-family: var(--font-sans); }

/* End users see decisions and improvements; the scoring rubric stays backstage. */
.quality-feedback { margin: 14px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); overflow: hidden; }
.quality-feedback-head { padding: 12px 14px; border-bottom: 1px solid var(--border-default); background: var(--surface-control); }
.quality-feedback-head h3 { margin: 0; color: var(--text-heading); font-size: var(--text-sm); }
.quality-feedback-head p { margin: 3px 0 0; color: var(--text-muted); font-size: var(--text-xs); }
.quality-feedback-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.quality-feedback-item { min-width: 0; padding: 12px 14px; border-right: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.quality-feedback-item:nth-child(2n) { border-right: 0; }
.quality-feedback-item > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.quality-feedback-item strong { color: var(--text-heading); font-size: var(--text-xs); }
.quality-feedback-item span { padding: 3px 7px; border-radius: var(--radius-pill); font-size: 10px; font-weight: 600; }
.quality-feedback-item.strong span { background: var(--status-success-bg); color: var(--status-success-text); }
.quality-feedback-item.watch span { background: var(--status-warning-bg); color: var(--status-warning-text); }
.quality-feedback-item.risk span { background: var(--status-danger-bg); color: var(--status-danger-text); }
.quality-feedback-item p { margin: 7px 0 0; color: var(--text-body); font-size: var(--text-xs); line-height: 1.5; }

/* The response page shows actions first; the complete scoring matrix stays available on demand. */
.review-panel-compact { margin-top: 12px; box-shadow: none; }
.review-panel-compact .review-summary { min-height: 64px; padding: 12px 14px; gap: 12px; }
.review-panel-compact .review-summary h3 { margin: 0 0 3px; color: var(--text-heading); font-size: var(--text-sm); line-height: 1.35; }
.review-panel-compact .review-summary p { color: var(--text-muted); font-size: var(--text-xs); line-height: 1.4; }
.review-score { min-width: 68px; padding: 7px 9px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-control); text-align: center; }
.review-score small, .review-score strong { display: block; }
.review-score small { color: var(--text-muted); font-size: 9px; font-weight: 600; line-height: 1.2; }
.review-score strong { margin-top: 2px; color: var(--text-heading); font-size: var(--text-lg); line-height: 1.1; }
.review-priorities { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.review-priority { min-width: 0; padding: 10px 14px; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 9px; align-items: start; border-right: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.review-priority:nth-child(2n) { border-right: 0; }
.review-priority strong { display: block; color: var(--text-heading); font-size: var(--text-xs); line-height: 1.35; }
.review-priority p { margin: 3px 0 0; color: var(--text-muted); font-size: 11px; line-height: 1.42; }
.review-priority .check-state { margin-top: 4px; }
.review-priority-mark { margin-top: 1px; padding: 3px 6px; border-radius: var(--radius-pill); background: var(--status-warning-bg); color: var(--status-warning-text); font-size: 9px; font-weight: 600; line-height: 1.2; }
.review-detail { border-top: 1px solid var(--border-default); }
.review-detail > summary { min-height: 44px; padding: 10px 14px; display: flex; align-items: center; gap: 10px; color: var(--text-heading); cursor: pointer; list-style: none; }
.review-detail > summary::-webkit-details-marker { display: none; }
.review-detail > summary span { font-size: var(--text-xs); font-weight: 600; }
.review-detail > summary small { margin-left: auto; color: var(--text-muted); font-size: 10px; }
.review-detail > summary svg { width: 15px; height: 15px; color: var(--text-muted); transition: transform var(--duration-fast) var(--ease-standard); }
.review-detail[open] > summary svg { transform: rotate(180deg); }
.review-detail-body { border-top: 1px solid var(--border-subtle); background: var(--surface-subtle); }
.review-detail-body .quality-feedback { margin: 12px; }

/* Quality findings stay quiet until the drafter chooses to inspect them. */
.quality-guide-disclosure { margin-top: 10px; border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-card); box-shadow: none; }
.quality-guide-disclosure > summary { min-height: 48px; padding: 9px 14px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; color: var(--text-heading); cursor: pointer; list-style: none; }
.quality-guide-disclosure > summary::-webkit-details-marker { display: none; }
.quality-guide-disclosure > summary > svg:first-child { width: 18px; height: 18px; color: var(--brand-primary); }
.quality-guide-disclosure > summary > div { min-width: 0; display: flex; align-items: baseline; gap: 8px; }
.quality-guide-disclosure > summary strong { flex: 0 0 auto; font-size: var(--text-sm); line-height: 1.3; white-space: nowrap; }
.quality-guide-disclosure > summary div > span { overflow: hidden; color: var(--text-muted); font-size: var(--text-xs); text-overflow: ellipsis; white-space: nowrap; }
.quality-guide-chevron { width: 16px; height: 16px; color: var(--text-muted); transition: transform var(--duration-fast) var(--ease-standard); }
.quality-guide-disclosure[open] .quality-guide-chevron { transform: rotate(180deg); }
.quality-guide-body { padding: 12px 14px 14px; border-top: 1px solid var(--border-subtle); background: var(--surface-subtle); }
.quality-guide-note, .quality-guide-empty { margin: 0; color: var(--text-muted); font-size: var(--text-xs); line-height: 1.5; }
.quality-guide-intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.quality-guide-intro > span { flex: 0 0 auto; padding: 3px 7px; border-radius: var(--radius-pill); background: var(--surface-control); color: var(--text-muted); font-size: 10px; font-weight: 600; }
.quality-guide-items { margin-top: 10px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--border-default); border-radius: var(--radius-md); overflow: hidden; background: var(--surface-card); }
.quality-guide-items article { min-width: 0; padding: 11px 12px; border-right: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.quality-guide-items article:nth-child(2n) { border-right: 0; }
.quality-guide-items article strong { color: var(--text-heading); font-size: var(--text-xs); }
.quality-guide-items article p { margin: 4px 0 0; color: var(--text-body); font-size: var(--text-xs); line-height: 1.45; }

@media (max-width: 1100px) {
  .intake-run-stages { grid-template-columns: 1fr 1fr; }
  .intake-run-issues .intake-issue-summary { grid-template-columns: 1fr; }
  .setup-hero { align-items: flex-start; flex-direction: column; }
  .setup-overview-facts { grid-template-columns: 1fr 1fr; }
  .setup-overview-facts > button:nth-child(2) { border-right: 0; }
  .setup-overview-facts > button:nth-child(-n+2) { border-bottom: 1px solid var(--border-subtle); }
  .returnable-group-actions { grid-template-columns: 1fr; justify-content: stretch; }
  .inline-settings-form.add-member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .member-profile-fields > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .review-priorities { grid-template-columns: 1fr; }
  .review-priority { border-right: 0; }
  .review-detail > summary small { display: none; }
  .quality-guide-items { grid-template-columns: 1fr; }
  .quality-guide-items article { border-right: 0; }
}

@media (max-width: 700px) {
  .intake-run-head, .intake-issues-heading { align-items: flex-start; flex-direction: column; }
  .intake-run-head .button { width: 100%; }
  .analysis-review-summary { grid-template-columns: 1fr; }
  .analysis-review-item { grid-template-columns: 1fr; }
  .analysis-group-guidance { align-items: flex-start; flex-direction: column; }
  .analysis-review-actions { align-items: stretch; flex-direction: column; }
  .analysis-review-actions .button { width: 100%; }
  .analysis-outcome-facts { grid-template-columns: 1fr; }
  .analysis-outcome-facts span { border-left: 0; border-top: 1px solid var(--border-subtle); }
  .analysis-outcome-facts span:first-child { border-top: 0; }
  .setup-task-row { grid-template-columns: 36px minmax(0, 1fr) 16px; }
  .setup-task-state { grid-column: 2; justify-self: start; justify-content: flex-start; min-width: 0; }
  .setup-task-row > .setup-fact-arrow { grid-column: 3; grid-row: 1 / 3; }
  .setup-focused-title { grid-template-columns: 38px minmax(0, 1fr); }
  .setup-section-count { grid-column: 1 / -1; justify-self: start; margin-left: 52px; }
  .setup-source-row { grid-template-columns: 36px minmax(0, 1fr) auto; }
  .setup-source-row > .status { grid-column: 2; justify-self: start; }
  .setup-source-row > .button { grid-column: 1 / -1; width: 100%; }
}

/* Evidence is presented as a drafting decision, with the retained source one click away. */
.evidence-decision-card {
  padding: 14px;
  cursor: default;
  border-color: var(--border-default);
  border-radius: var(--radius-lg);
  background: var(--surface-card);
  box-shadow: 0 1px 2px rgba(36, 55, 94, .04);
}
.evidence-decision-card:hover { border-color: var(--indigo-200); }
.evidence-decision-card.selected {
  border-color: #8FC8B8;
  box-shadow: inset 3px 0 var(--teal-600), 0 5px 14px rgba(36, 55, 94, .07);
}
.evidence-decision-card .evidence-card-top {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 30px;
  gap: 9px;
  align-items: start;
}
.evidence-decision-card .evidence-number {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: var(--accent);
  color: #fff;
  font: 700 11px/1 var(--font-sans);
}
.evidence-card-title { min-width: 0; }
.evidence-decision-card .evidence-alignment {
  margin: 0 0 4px;
  color: var(--text-muted);
  font: 750 10px/1.25 var(--font-sans);
  letter-spacing: .045em;
}
.evidence-decision-card .evidence-alignment.direct { color: var(--teal-700); }
.evidence-decision-card .evidence-alignment.related { color: var(--amber-600); }
.evidence-decision-card .evidence-card-title h3 {
  margin: 0;
  display: block;
  color: var(--text-heading);
  font: 650 13px/1.4 var(--font-sans);
  -webkit-line-clamp: initial;
}
.evidence-select-control {
  width: 30px;
  height: 30px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.evidence-select-control .source-check,
.evidence-decision-card > .evidence-card-top > .source-check {
  width: 20px;
  height: 20px;
  border: 1px solid var(--border-strong);
  border-radius: 999px;
  background: var(--surface-card);
  color: #fff;
  font: 700 11px/1 var(--font-sans);
}
.evidence-select-control[aria-pressed="true"] .source-check {
  border-color: var(--teal-600);
  background: var(--teal-600);
}
.evidence-select-control:hover .source-check,
.evidence-select-control:focus-visible .source-check { border-color: var(--teal-600); }
.evidence-role-line {
  margin: 10px 0 0 33px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.evidence-role-line span {
  padding: 3px 7px;
  border-radius: var(--radius-pill);
  background: var(--surface-control);
  color: var(--text-muted);
  font: 650 9px/1.25 var(--font-sans);
}
.evidence-role-line span:first-child { color: var(--teal-700); background: var(--surface-ai); }
.evidence-synthetic-warning {
  margin-top: 10px;
  padding: 8px 9px;
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #E8C47B;
  border-radius: var(--radius-md);
  background: var(--status-warning-bg);
  color: var(--status-warning-text);
}
.evidence-synthetic-warning svg { width: 15px; height: 15px; flex: 0 0 auto; }
.evidence-synthetic-warning strong { font: 700 9px/1.35 var(--font-sans); text-transform: uppercase; letter-spacing: .025em; }
.evidence-card-section { margin-top: 12px; }
.evidence-card-section > span,
.evidence-source > span {
  display: block;
  margin-bottom: 4px;
  color: var(--text-muted);
  font: 750 9px/1.3 var(--font-sans);
  letter-spacing: .045em;
  text-transform: uppercase;
}
.evidence-decision-card .evidence-card-section p {
  margin: 0;
  color: var(--text-body);
  font: 400 12px/1.52 var(--font-sans);
}
.evidence-utility p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.evidence-decision-card .requirement-match {
  margin: 12px 0 0;
  padding: 9px 10px;
  border: 0;
  border-left: 3px solid var(--accent);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  background: var(--surface-action);
}
.evidence-decision-card .requirement-match strong {
  margin: 0 0 4px;
  color: var(--accent);
  font: 750 9px/1.3 var(--font-sans);
  letter-spacing: .04em;
}
.evidence-decision-card .requirement-match span {
  color: var(--text-body);
  font: 500 11px/1.48 var(--font-sans);
}
.evidence-decision-card .requirement-match small {
  display: block;
  margin-top: 5px;
  color: var(--text-muted);
  font: 500 9px/1.35 var(--font-sans);
}
.evidence-why {
  padding-top: 11px;
  border-top: 1px solid var(--border-subtle);
}
.evidence-decision-card .evidence-why p { color: var(--text-muted); font-size: 11px; }
.evidence-decision-card .evidence-source {
  margin-top: 12px;
  padding: 10px;
  border: 0;
  border-radius: var(--radius-md);
  background: var(--surface-control);
}
.evidence-decision-card .evidence-source strong,
.evidence-decision-card .evidence-source p,
.evidence-decision-card .evidence-source small { display: block; }
.evidence-decision-card .evidence-source strong {
  color: var(--text-heading);
  font: 650 10px/1.4 var(--font-sans);
  overflow-wrap: anywhere;
}
.evidence-decision-card .evidence-source p {
  margin: 3px 0 0;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: var(--text-body);
  font: 500 10px/1.42 var(--font-sans);
}
.evidence-decision-card .evidence-source small {
  margin-top: 4px;
  color: var(--text-muted);
  font: 400 9px/1.4 var(--font-sans);
  text-transform: capitalize;
}
.evidence-exclusion-note {
  margin-top: 10px;
  padding: 9px 10px;
  border-left: 3px solid var(--status-danger-text);
  background: var(--status-danger-bg);
  color: var(--status-danger-text);
  font: 500 10px/1.45 var(--font-sans);
}
.evidence-decision-card .evidence-card-actions {
  margin-top: 10px;
  padding-top: 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  border-top: 1px solid var(--border-default);
}
.evidence-decision-card .context-action {
  min-height: 32px;
  margin: 0;
  padding: 5px 0;
  border: 0;
  color: var(--accent);
  font: 650 10px/1.3 var(--font-sans);
}
.evidence-decision-card .evidence-decision-action { color: var(--status-danger-text); text-align: right; }
.evidence-decision-card.excluded { border-color: #DDBAB1; background: #FFFAF8; }

.evidence-context-drawer .context-dialog { padding: 0; }
.evidence-context-drawer .dialog-head { padding: 20px 22px 17px; }
.evidence-context-drawer .dialog-head h2 { margin-right: 16px; font-size: 18px; }
.evidence-context-drawer .evidence-context-meta {
  padding: 0;
  display: grid;
  grid-template-columns: 1.3fr .8fr .8fr;
  gap: 1px;
  border: 0;
  background: var(--border-default);
}
.evidence-context-drawer .evidence-context-meta > div {
  min-width: 0;
  padding: 11px 14px;
  background: var(--surface-control);
}
.evidence-context-reality {
  margin: 14px 22px 0;
  padding: 11px 12px;
  display: flex;
  gap: 9px;
  border: 1px solid #E8C47B;
  border-radius: var(--radius-md);
  background: var(--status-warning-bg);
  color: var(--status-warning-text);
}
.evidence-context-reality svg { width: 17px; height: 17px; flex: 0 0 auto; }
.evidence-context-reality strong,
.evidence-context-reality span { display: block; }
.evidence-context-reality strong { font-size: 11px; }
.evidence-context-reality span { margin-top: 3px; font-size: 10px; }
.evidence-context-scroll {
  min-height: 0;
  flex: 1;
  padding: 18px 22px 22px;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.evidence-context-section {
  padding: 17px 18px;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-lg);
  background: var(--surface-card);
}
.evidence-context-section + .evidence-context-section { margin-top: 12px; }
.evidence-context-section h3 {
  margin: 7px 0 8px;
  color: var(--text-heading);
  font: 650 14px/1.4 var(--font-sans);
}
.evidence-context-section > p {
  margin: 0;
  color: var(--text-body);
  font: 400 13px/1.6 var(--font-sans);
  white-space: pre-wrap;
}
.evidence-selection-reason { border-left: 3px solid var(--teal-600); }
.evidence-context-requirements {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--border-subtle);
}
.evidence-context-requirements strong { color: var(--text-heading); font-size: 11px; }
.evidence-context-requirements ul { margin: 7px 0 0; padding-left: 18px; }
.evidence-context-requirements li { color: var(--text-body); font-size: 11px; line-height: 1.5; }
.evidence-boundary-note {
  margin: 7px 0 12px !important;
  padding: 9px 10px;
  border-left: 3px solid var(--accent);
  background: var(--surface-action);
  color: var(--text-muted) !important;
  font-size: 11px !important;
}
.evidence-verbatim .full-context {
  min-height: 220px;
  max-height: none;
  margin: 0;
  padding: 16px;
  border-color: var(--border-default);
  border-radius: var(--radius-md);
  background: #FCFCFD;
  color: var(--text-body);
  white-space: pre-wrap;
  font: 400 13px/1.68 var(--font-sans);
}
.evidence-context-fallback { color: var(--text-muted) !important; font-style: italic !important; }
.evidence-context-drawer .dialog-actions {
  margin: 0;
  padding: 12px 22px;
  border-top: 1px solid var(--border-default);
  background: var(--surface-card);
}

@media (max-width: 700px) {
  dialog.evidence-context-drawer { width: 100vw; max-width: 100vw; }
  .evidence-context-drawer .evidence-context-meta { grid-template-columns: 1fr; }
  .evidence-context-drawer .evidence-context-meta > div { border-bottom: 1px solid var(--border-default); }
  .evidence-context-scroll { padding: 14px; }
  .evidence-context-section { padding: 14px; }
  .evidence-decision-card .evidence-card-actions { grid-template-columns: 1fr; }
  .evidence-decision-card .context-action {
    min-height: 44px;
    text-align: left;
  }
}

/* Juris-styled authentication shell. */
.auth-body { padding: 28px; background: linear-gradient(135deg, var(--indigo-400), var(--indigo-700)); display: grid; place-items: center; }
.auth-shell { width: min(1100px, 100%); min-height: min(720px, calc(100vh - 56px)); grid-template-columns: 1fr 1fr; border-radius: var(--radius-frame); background: var(--surface-sidebar); box-shadow: var(--shadow-frame); overflow: hidden; }
.auth-brief { min-height: 100%; padding: 36px 44px; background: var(--surface-sidebar); color: var(--text-body); }
.auth-brand { color: var(--text-heading); }
.auth-brand .brand-mark { width: 40px; height: 40px; display: block; border-radius: 0; background: transparent; object-fit: contain; }
.auth-brand small { color: var(--text-muted); }
.auth-thesis { margin: auto 0 64px; }
.auth-thesis h1 { color: var(--text-heading); font: 700 var(--text-2xl)/1.25 var(--font-sans); letter-spacing: 0; }
.auth-thesis p { color: var(--text-muted); font-size: var(--text-md); }
.custody-line { border-top-color: var(--indigo-200); }
.custody-line li::before { background: var(--accent); }
.custody-line li > span, .custody-line small { color: var(--text-muted); }
.custody-line strong { color: var(--text-heading); }
.auth-entry { min-height: 100%; margin: 10px 10px 10px 0; padding: 40px 64px; border-radius: var(--radius-xl); background: var(--surface-card); }
.auth-form-wrap h2 { color: var(--text-heading); font: 700 var(--text-2xl)/1.25 var(--font-sans); }
.auth-error { border: 0; border-radius: var(--radius-md); background: var(--status-danger-bg); color: var(--status-danger-text); }

@media (max-width: 980px) {
  .continue-card, .home-grid { grid-template-columns: 1fr; }
  .next-action { border-left: 0; border-top: 1px solid var(--border-default); }
  .workbench { grid-template-columns: var(--register-width) minmax(0, 1fr); }
  .workbench.evidence-open { grid-template-columns: minmax(190px, var(--register-width)) minmax(300px, 1fr) minmax(300px, var(--evidence-width)); overflow-x: auto; }
  .page-pad { padding: 22px 20px 36px; }
  .open-tender-grid { grid-template-columns: 1fr; }
  .tender-navigation-row { grid-template-columns: minmax(220px, 1fr) 120px auto; }
  .tender-nav-deadline { display: none; }
  .tender-nav-progress { grid-column: 1 / 3; }
  .source-library-control form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .source-library-control .source-search { grid-column: 1 / -1; }
  .export-grid { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  body { background: var(--surface-page); }
  .app-shell { display: block; min-height: 0; }
  .sidebar { position: fixed; z-index: 40; top: auto; bottom: 0; width: 100%; height: calc(64px + env(safe-area-inset-bottom)); padding: 8px 8px calc(8px + env(safe-area-inset-bottom)); flex-direction: row; align-items: center; justify-content: center; background: var(--surface-sidebar); border-top: 1px solid var(--border-default); }
  .brand, .nav-label, .sidebar-note, .user-card { display: none !important; }
  .main-nav, .manage-nav { width: auto; flex: 1; margin: 0; padding: 0; border: 0; flex-direction: row; justify-content: space-around; }
  .manage-nav { flex: .66; }
  .main-nav button { width: 44px; height: 44px; min-height: 44px; flex: 0 1 44px; padding: 0; border: 0; justify-content: center; gap: 0; }
  .main-nav button.active { border: 0; background: var(--surface-card); }
  .main-nav button svg { margin: 0; }
  .nav-text { display: none !important; }
  .sidebar-collapse-button, .sidebar-resizer, .register-collapse-button, .register-resizer { display: none; }
  .workbench.register-collapsed .register-head, .workbench.register-collapsed .question-list { display: flex; }
  .workbench.register-collapsed .register-expand-button { display: none; }
  .main-stage { height: calc(100vh - 64px - env(safe-area-inset-bottom)); margin: 0; border-radius: 0; padding-bottom: 0; }
  .topbar { height: 54px; min-height: 54px; padding: 0 16px; }
  .mode-pill { display: none; }
  .workbench { display: block; height: 100%; overflow: auto; }
  .question-register { max-height: 220px; border-right: 0; border-bottom: 1px solid var(--border-default); }
  .question-list { display: flex; flex-direction: row; overflow-x: auto; }
  .question-row { min-width: 200px; }
  .response-pane { overflow: visible; }
  .response-pane > .tender-journey { margin: 0; padding: 0 8px; }
  .tender-journey small { display: none; }
  .workspace-toolbar { padding: 9px 14px; }
  .response-inner { padding: 16px 12px 36px; }
  .question-copy { padding: 20px; }
  .question-copy h1 { font-size: var(--text-lg); }
  .buyer-ask { grid-template-columns: 1fr; }
  .buyer-ask-label { border-right: 0; border-bottom: 1px solid var(--border-default); }
  .evidence-rail { position: relative; inset: auto; width: 100%; height: auto; min-height: 420px; border-top: 1px solid var(--border-default); border-left: 0; }
  .workbench.evidence-open .evidence-rail { display: flex; }
  .evidence-resizer { display: none; }
  .quality-feedback-list { grid-template-columns: 1fr; }
  .quality-feedback-item { border-right: 0; }
  .tender-navigation-row { grid-template-columns: 1fr auto; gap: 12px; }
  .tender-nav-progress { grid-column: 1 / -1; }
  .tender-nav-state { display: none; }
  .source-library-control form { grid-template-columns: 1fr; }
  .source-library-control .source-search { grid-column: auto; }
  .setup-question-fields .wide-title { grid-column: auto; }
  .setup-overview-facts { grid-template-columns: 1fr; }
  .setup-overview-facts > button { border-right: 0; border-bottom: 1px solid var(--border-subtle); }
  .setup-overview-facts > button:last-child { border-bottom: 0; }
  .setup-overview-dashboard, .setup-focused-head, .setup-focused-card, .setup-source-list,
  .setup-content-stage[data-active-setup-section="team"] .setup-team-panel { max-width: none; }
  .returnable-filter-bar > small { width: 100%; margin-left: 0; }
  .profile-settings-identity { grid-template-columns: 44px minmax(0, 1fr); }
  .profile-settings-identity .settings-state { grid-column: 1 / -1; justify-self: start; }
  .profile-photo-panel { align-items: flex-start; flex-direction: column; }
  .operations-heading .heading-actions { width: 100%; justify-content: flex-start; }
  .profile-form-grid, .profile-notification-settings, .inline-settings-form.add-member-grid, .member-profile-fields > div { grid-template-columns: 1fr; }
  .profile-notification-settings > span { margin-bottom: 2px; }
  .member-profile-fields { margin-left: 0; }
  .export-readiness { align-items: flex-start; flex-direction: column; }
  .auth-body { padding: 0; background: var(--surface-sidebar); }
  .auth-shell { min-height: 100vh; display: block; border-radius: 0; box-shadow: none; }
  .auth-brief { min-height: auto; padding: 26px 24px 32px; }
  .auth-thesis { margin: 48px 0 38px; }
  .auth-entry { min-height: 580px; margin: 0; padding: 44px 24px 24px; border-radius: var(--radius-xl) var(--radius-xl) 0 0; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
