:root {
  color-scheme: light;
  --color-background: #faf7f4;
  --color-surface: #ffffff;
  --color-surface-raised: #fdfbf9;
  --color-surface-subtle: #f4efeb;
  --color-border: #d9dee1;
  --color-border-strong: #b8c0c5;
  --color-text: #1c1629;
  --color-text-muted: #5f6970;
  --color-text-strong-muted: #4f5960;
  --color-text-on-ink: #ffffff;
  --color-text-on-ink-muted: #c1b9c7;
  --color-ink-surface: #1c1629;
  --color-ink-raised: #2a2235;
  --color-accent: #f08a6a;
  --color-accent-soft: #f5a88e;
  --color-accent-text: #9b3f2e;
  --color-status-success: #1f6b4f;
  --color-status-warning: #80580f;
  --color-status-danger: #a9342f;
  --color-status-conflict: #713986;
  --color-status-unknown: #59656d;
  --color-focus: #713986;
  --color-focus-on-ink: #ffb59d;
  --color-disabled-text: #5f6970;
  --color-disabled-surface: #f4efeb;
  --shadow-selected: 0 8px 28px rgba(28, 22, 41, 0.08);
  --shadow-overlay: 0 18px 48px rgba(28, 22, 41, 0.18);
  --navy: var(--color-text);
  --navy-2: var(--color-ink-raised);
  --navy-3: #3a3245;
  --salmon: var(--color-accent);
  --salmon-soft: var(--color-accent-soft);
  --cream: var(--color-background);
  --white: var(--color-surface);
  --gray: var(--color-text-muted);
  --gray-light: var(--color-border-strong);
  --gray-on-ink: var(--color-text-on-ink-muted);
  --gray-lighter: var(--color-border);
  --green: var(--color-status-success);
  --yellow: var(--color-status-warning);
  --red: var(--color-status-danger);
  --purple: var(--color-status-conflict);
  --unknown: var(--color-status-unknown);
  --na: #56616a;
  --shadow: var(--shadow-overlay);
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --color-background: #15111f;
  --color-surface: #211b2c;
  --color-surface-raised: #292233;
  --color-surface-subtle: #302838;
  --color-border: #4b4354;
  --color-border-strong: #6f6577;
  --color-text: #faf7f4;
  --color-text-muted: #c1b9c7;
  --color-text-strong-muted: #d1cad6;
  --color-text-on-ink: #ffffff;
  --color-text-on-ink-muted: #c1b9c7;
  --color-ink-surface: #1c1629;
  --color-ink-raised: #332a40;
  --color-accent: #f5a88e;
  --color-accent-soft: #ffc2ad;
  --color-accent-text: #f5a88e;
  --color-status-success: #79d6ad;
  --color-status-warning: #f1c56f;
  --color-status-danger: #ff9e96;
  --color-status-conflict: #ddaeea;
  --color-status-unknown: #c7ced2;
  --color-focus: #ffb59d;
  --color-disabled-text: #c1b9c7;
  --color-disabled-surface: #302838;
  --shadow-selected: 0 8px 28px rgba(0, 0, 0, 0.34);
  --shadow-overlay: 0 18px 52px rgba(0, 0, 0, 0.56);
  --navy-2: #332a40;
  --navy-3: #43384e;
  --na: #bac2c7;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) { color-scheme: dark; }
}

* { box-sizing: border-box; }
html { min-width: 320px; max-width: 100%; overflow-x: hidden; background: var(--color-background); }
body { max-width: 100%; overflow-x: hidden; margin: 0; color: var(--color-text); background: var(--color-background); font-family: Inter, system-ui, sans-serif; }
button, input, select { font: inherit; }
button { cursor: pointer; }
input::placeholder { color: var(--color-text-muted); opacity: 1; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.shell { min-height: 100vh; min-width: 0; }
.topbar { height: 58px; display: flex; align-items: center; justify-content: space-between; padding: 0 32px; color: var(--color-text-on-ink); background: var(--color-ink-surface); }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--color-text-on-ink); text-decoration: none; font: 500 12px/1 JetBrains Mono, monospace; letter-spacing: .16em; }
.brand-mark { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; background: var(--salmon); color: var(--color-ink-surface); font-family: DM Sans, sans-serif; font-weight: 600; letter-spacing: 0; }
.topbar-context { color: var(--gray-on-ink); font: 500 10px/1 JetBrains Mono, monospace; letter-spacing: .12em; }
main { max-width: 1600px; min-width: 0; margin: 0 auto; padding: 36px 32px 56px; }
.hero { min-width: 0; display: flex; justify-content: space-between; gap: 32px; align-items: center; }
.hero > div { min-width: 0; }
.eyebrow { margin: 0 0 12px; color: var(--color-accent-text); font: 500 11px/1 JetBrains Mono, monospace; letter-spacing: .16em; }
h1 { margin: 0; font: 600 clamp(30px, 4vw, 40px)/1.05 DM Sans, sans-serif; letter-spacing: -.03em; }
.hero-copy { max-width: 720px; margin: 10px 0 0; color: var(--gray); font-size: 15px; line-height: 1.55; }
.secondary-button { min-height: 44px; padding: 0 16px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 10px; background: var(--white); font-weight: 600; }
.secondary-button:hover { border-color: var(--salmon); }
.hero-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 8px; }
.persistence-status { color: var(--gray); text-align: right; font: 500 9px/1.4 JetBrains Mono, ui-monospace, monospace; letter-spacing: .08em; text-transform: uppercase; }
.more-menu { position: relative; }
.more-menu > summary { min-height: 44px; display: grid; place-items: center; padding: 0 16px; cursor: pointer; list-style: none; border: 1px solid var(--gray-lighter); border-radius: 10px; background: var(--white); font-size: 12px; font-weight: 700; }
.more-menu > summary::-webkit-details-marker { display: none; }
.more-menu > div { position: absolute; z-index: 5; right: 0; top: calc(100% + 6px); min-width: 170px; display: grid; gap: 6px; padding: 8px; border: 1px solid var(--gray-lighter); border-radius: 12px; background: var(--white); box-shadow: var(--shadow); }
.more-menu:not([open]) > div { display: none; }
.more-menu .secondary-button { width: 100%; text-align: left; }
.theme-control { display: grid; gap: 5px; padding: 4px; color: var(--gray); font-size: 10px; font-weight: 700; }
.theme-control select { min-width: 150px; min-height: 44px; padding: 0 32px 0 10px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 9px; background: var(--white); }
.work-boundary { max-width: 760px; margin: 18px 0 0; color: var(--gray); font-size: 13px; line-height: 1.5; }
.toolbar { min-width: 0; display: flex; justify-content: space-between; gap: 20px; align-items: center; margin: 36px 0 22px; }
.search-wrap { position: relative; display: block; width: min(460px, 100%); min-width: 0; }
.search-wrap svg { position: absolute; left: 14px; top: 50%; width: 18px; transform: translateY(-50%); fill: none; stroke: var(--gray); stroke-width: 1.8; }
.search-wrap input { width: 100%; height: 46px; padding: 0 16px 0 43px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 12px; outline: none; background: var(--white); }
.search-wrap input:focus { border-color: var(--salmon); box-shadow: 0 0 0 3px rgba(240,138,106,.12); }
.summary { color: var(--gray); font: 500 11px/1.5 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.loading { padding: 48px; text-align: center; color: var(--gray); }
[hidden] { display: none !important; }
.draft-notice { display: flex; justify-content: space-between; gap: 18px; margin: -18px 0 32px; padding: 12px 16px; color: #6e261f; border: 1px solid rgba(180,59,53,.35); border-radius: 10px; background: #fff0ed; font-size: 12px; line-height: 1.45; }
.draft-notice strong { letter-spacing: .04em; }
.workspace-controls { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-top: 34px; }
.view-switch { display: inline-flex; padding: 4px; border: 1px solid var(--gray-lighter); border-radius: 12px; background: rgba(255,255,255,.7); }
.view-switch button { min-height: 44px; padding: 0 16px; border: 0; border-radius: 8px; color: var(--gray); background: transparent; font-size: 12px; font-weight: 700; }
.view-switch button[aria-pressed="true"] { color: var(--white); background: var(--navy); }
.disclosure-controls { display: flex; gap: 8px; }
button:focus-visible, input:focus-visible, select:focus-visible, a:focus-visible, summary:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 2px; }
.active-work { min-width: 0; margin-top: 24px; }
.active-work > .toolbar { margin: 18px 0; }
.next-work-card { overflow: hidden; border: 1px solid rgba(240,138,106,.48); border-radius: 16px; background: var(--white); box-shadow: 0 8px 28px rgba(28,22,41,.05); }
.next-work-heading { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px; }
.next-work-heading h2 { margin: 5px 0 4px; font: 600 26px/1.15 DM Sans,sans-serif; letter-spacing: -.02em; }
.next-work-heading p { margin: 0; color: var(--gray); font-size: 12px; line-height: 1.5; }
.queue-rule { color: var(--color-accent-text) !important; font: 700 10px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace !important; letter-spacing: .06em; }
.continue-packet { flex: 0 0 auto; min-height: 44px; padding: 0 18px; color: var(--white); border: 1px solid var(--navy); border-radius: 10px; background: var(--navy); font-size: 12px; font-weight: 700; }
.why-next { margin: 0; padding: 11px 24px; color: var(--gray); border-block: 1px solid var(--gray-lighter); background: #fdfbf9; font-size: 12px; line-height: 1.5; }
.next-work-facts { display: grid; grid-template-columns: 1fr minmax(280px,2fr) 1fr 1fr; margin: 0; }
.next-work-facts div { min-width: 0; display: grid; gap: 6px; padding: 18px 24px; border-right: 1px solid var(--gray-lighter); }
.next-work-facts div:last-child { border-right: 0; }
.next-work-facts dt { color: var(--gray); font: 700 9px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; text-transform: uppercase; }
.next-work-facts dd { margin: 0; overflow-wrap: anywhere; font-size: 12px; line-height: 1.5; }
.packet-steps { display: grid; grid-template-columns: repeat(4,1fr); margin: 0; padding: 0; counter-reset: packet-step; border-top: 1px solid var(--gray-lighter); list-style: none; }
.packet-steps li { display: flex; align-items: center; gap: 9px; padding: 14px 24px; color: var(--gray); font-size: 11px; }
.packet-steps li::before { counter-increment: packet-step; content: counter(packet-step); width: 22px; height: 22px; display: grid; place-items: center; flex: 0 0 auto; color: var(--navy); border-radius: 7px; background: rgba(240,138,106,.2); font-weight: 700; }
.active-queue-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin: 30px 0 12px; }
.active-queue-heading h2, .matrix-intro h2 { margin: 0; font: 600 21px/1.2 DM Sans,sans-serif; }
.active-queue-heading p, .matrix-intro p { margin: 5px 0 0; color: var(--gray); font-size: 12px; line-height: 1.5; }
.active-queue-heading > span { color: var(--gray); font: 600 10px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; }
.active-queue-list { display: grid; gap: 10px; min-width: 0; }
.active-queue-card { min-width: 0; overflow: hidden; border: 1px solid var(--gray-lighter); border-radius: 13px; background: var(--white); }
.active-queue-card.selected { border-color: rgba(38,122,90,.42); box-shadow: 0 0 0 2px rgba(38,122,90,.08); }
.queue-card-heading { min-width: 0; display: grid; grid-template-columns: 28px minmax(0,1fr) auto; gap: 9px; align-items: start; padding: 12px; }
.queue-card-heading > div { min-width: 0; }
.queue-card-heading h3 { margin: 0; overflow-wrap: anywhere; font: 600 14px/1.25 DM Sans,sans-serif; }
.queue-card-heading p { margin: 3px 0 0; color: var(--gray); font-size: 9px; line-height: 1.4; }
.queue-position { width: 26px; height: 26px; display: grid; place-items: center; color: var(--navy); border-radius: 8px; background: rgba(240,138,106,.18); font-size: 10px; font-weight: 800; }
.queue-card-heading button { min-height: 44px; padding: 0 10px; border: 1px solid var(--gray-lighter); border-radius: 8px; background: var(--cream); font-size: 9px; font-weight: 700; white-space: nowrap; }
.queue-card-meta { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 0; border-block: 1px solid var(--gray-lighter); }
.queue-card-meta div { min-width: 0; padding: 8px 11px; }
.queue-card-meta dt, .queue-card-detail strong { color: var(--gray); font: 700 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; text-transform: uppercase; }
.queue-card-meta dd { margin: 3px 0 0; overflow-wrap: anywhere; font-size: 9px; line-height: 1.35; }
.queue-card-detail { display: grid; grid-template-columns: 76px minmax(0,1fr); gap: 8px; padding: 9px 11px; border-bottom: 1px solid var(--gray-lighter); }
.queue-card-detail:last-child { border-bottom: 0; }
.queue-card-detail p { margin: 0; overflow-wrap: anywhere; font-size: 9px; line-height: 1.45; }
.review-gate-summary { background: #fdfbf9; }
.primary-button { min-height: 44px; padding: 0 18px; color: var(--white); border: 1px solid var(--navy); border-radius: 10px; background: var(--navy); font-size: 12px; font-weight: 700; }
.primary-button:hover { background: var(--navy-2); }
.active-work-split { min-width: 0; display: grid; grid-template-columns: minmax(340px,.78fr) minmax(540px,1.22fr); gap: 20px; align-items: start; }
.active-work-split .active-queue-heading { margin-top: 0; }
.active-work-split .active-queue-list { max-height: 1100px; overflow-y: auto; overflow-x: clip; padding-right: 2px; }
.packet-workbench { min-width: 0; overflow: hidden; border: 1px solid var(--gray-lighter); border-radius: 16px; background: var(--white); box-shadow: 0 10px 32px rgba(28,22,41,.06); }
.workbench-empty { min-height: 240px; display: grid; place-content: center; gap: 8px; padding: 32px; color: var(--gray); text-align: center; }
.workbench-empty strong { color: var(--navy); font-size: 17px; }
.workbench-header { display: flex; justify-content: space-between; align-items: start; gap: 24px; padding: 24px; color: var(--color-text-on-ink); background: var(--color-ink-surface); }
.workbench-header h2 { margin: 4px 0; font: 600 28px/1.1 DM Sans,sans-serif; letter-spacing: -.025em; }
.workbench-header h2:focus { outline: none; }
.workbench-header h2:focus-visible { border-radius: 4px; outline: 3px solid var(--color-focus-on-ink); outline-offset: 3px; }
.workbench-header p { max-width: 52ch; margin: 0; color: var(--gray-on-ink); font-size: 11px; line-height: 1.5; }
.workbench-kicker { color: var(--salmon-soft) !important; font: 700 9px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace !important; letter-spacing: .08em; text-transform: uppercase; }
.workbench-progress { flex: 0 0 auto; display: grid; gap: 4px; text-align: right; }
.workbench-progress strong { color: var(--salmon-soft); font-size: 27px; }
.workbench-progress span { color: var(--gray-on-ink); font-size: 9px; }
.workbench-section { padding: 22px 24px; border-top: 1px solid var(--gray-lighter); }
.section-heading { display: flex; justify-content: space-between; align-items: start; gap: 20px; margin-bottom: 14px; }
.section-heading > div { display: flex; align-items: baseline; gap: 10px; }
.section-heading h3 { margin: 0; font: 600 16px/1.25 DM Sans,sans-serif; }
.section-heading > p { max-width: 36ch; margin: 0; color: var(--gray); text-align: right; font-size: 9px; line-height: 1.5; }
.section-number { margin: 0; color: var(--color-accent-text); font: 700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace; }
.coordination-fields { display: grid; grid-template-columns: minmax(0,1fr) minmax(150px,.7fr) auto; gap: 10px; align-items: end; }
.coordination-fields label, .evidence-link-form label { min-width: 0; display: grid; gap: 6px; color: var(--gray); font-size: 9px; font-weight: 700; }
.coordination-fields input, .evidence-link-form input { width: 100%; min-width: 0; height: 44px; padding: 0 12px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 9px; background: var(--white); font-size: 11px; }
.workbench-next-action { margin: 0; padding: 15px 16px; color: var(--navy); border-radius: 10px; background: rgba(240,138,106,.12); font-size: 12px; line-height: 1.55; }
.workbench-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; padding: 0; list-style: none; }
.workbench-steps li { position: relative; display: grid; gap: 7px; padding: 12px 8px; color: var(--gray); border-top: 2px solid var(--gray-lighter); font-size: 9px; }
.workbench-steps li span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; background: var(--cream); }
.workbench-steps li.done { color: var(--green); border-color: var(--green); }
.workbench-steps li.current { color: var(--navy); border-color: var(--salmon); }
.workbench-steps li.current span { color: var(--color-ink-surface); background: var(--salmon); }
.packet-evidence-list { display: grid; gap: 7px; margin: 0 0 14px; padding: 0; list-style: none; }
.packet-evidence-list li { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 11px 12px; border: 1px solid var(--gray-lighter); border-radius: 9px; }
.packet-evidence-list li div { min-width: 0; display: grid; gap: 3px; }
.packet-evidence-list strong { overflow-wrap: anywhere; font-size: 11px; }
.packet-evidence-list span { color: var(--gray); font-size: 8px; text-transform: uppercase; }
.packet-evidence-list a, .control-file-status a { flex: 0 0 auto; color: var(--navy); font-size: 9px; font-weight: 700; text-decoration-color: var(--salmon); text-underline-offset: 3px; }
.evidence-empty, .claim-gate { margin: 0 0 14px; padding: 11px 12px; color: #6e4a13; border-radius: 9px; background: #fff9eb; font-size: 10px; line-height: 1.5; }
.evidence-link-form { display: grid; grid-template-columns: minmax(130px,.8fr) minmax(200px,1.4fr) auto; gap: 10px; align-items: end; }
.field-error { grid-column: 1 / -1; margin: 0; color: var(--red); font-size: 10px; }
input[aria-invalid="true"] { border-color: var(--red); box-shadow: 0 0 0 2px rgba(180,59,53,.1); }
.evidence-boundary { margin: 10px 0 0; color: var(--gray); font-size: 9px; line-height: 1.5; }
.workbench-checklist { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.workbench-check { min-width: 0; min-height: 44px; display: flex; gap: 10px; align-items: start; padding: 11px; border: 1px solid var(--gray-lighter); border-radius: 9px; }
.workbench-check.complete { background: rgba(38,122,90,.06); border-color: rgba(38,122,90,.25); }
.workbench-check input { width: 18px; height: 18px; flex: 0 0 auto; margin: 0; accent-color: var(--salmon); }
.workbench-check input:disabled { cursor: not-allowed; }
.workbench-check span { min-width: 0; display: grid; gap: 3px; }
.workbench-check strong { overflow-wrap: anywhere; font-size: 10px; line-height: 1.4; }
.workbench-check small { color: var(--gray); font-size: 8px; line-height: 1.35; }
.blockers-section { background: #fdfbf9; }
.blockers-section > p { margin: 0; color: var(--gray); font-size: 10px; line-height: 1.55; }
.machine-conflicts { display: grid; gap: 5px; margin: 10px 0 0; padding-left: 18px; color: var(--purple); font-size: 10px; line-height: 1.5; }
.control-file-status { margin-top: 10px !important; padding-top: 10px; border-top: 1px solid var(--gray-lighter); }
.control-file-status.ready { color: var(--green) !important; }
.review-blockers { display: grid; gap: 6px; margin: 0; padding-left: 18px; color: var(--red); font-size: 10px; line-height: 1.5; }
.review-ready { margin: 0; color: var(--green); font-size: 11px; font-weight: 700; }
.review-criteria { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }
.review-criteria span { padding: 6px 8px; color: var(--gray); border-radius: 999px; background: var(--cream); font-size: 8px; font-weight: 700; }
.review-criteria span.met { color: var(--green); background: rgba(38,122,90,.1); }
.workbench-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 16px; }
.current-review-state { padding: 10px 12px; color: var(--green); font-size: 10px; font-weight: 700; }
.blocked-action { margin: 10px 0 0; color: var(--gray); text-align: right; font-size: 9px; line-height: 1.4; }
.current-packet-state { padding: 8px 11px; color: var(--green); border-radius: 999px; background: rgba(38,122,90,.1); font-size: 10px; font-weight: 700; }
.next-work-card.selected { border-color: rgba(38,122,90,.35); }
.workflow-lanes { margin-top: 24px; border: 1px solid var(--gray-lighter); border-radius: 14px; background: var(--white); }
.workflow-lanes > summary { min-height: 48px; display: flex; align-items: center; padding: 0 18px; cursor: pointer; font-size: 12px; font-weight: 700; }
.workflow-lanes > p { margin: 0; padding: 0 18px 16px; color: var(--gray); font-size: 11px; }
.workflow-lanes .board { padding: 0 14px 14px; }
.matrix-intro { margin-bottom: 16px; }
.tracker-shell { min-width: 0; }
.tracker-summary { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-bottom: 14px; }
.tracker-summary > div { display: flex; align-items: baseline; gap: 9px; padding: 16px 18px; border: 1px solid var(--gray-lighter); border-radius: 12px; background: var(--white); }
.tracker-summary strong { font-size: 26px; line-height: 1; }
.tracker-summary span { color: var(--gray); font-size: 11px; }
.tracker-summary .attention { border-color: rgba(180,59,53,.28); background: #fff8f6; }
.tracker-summary .attention strong { color: var(--red); }
.evidence-legend { display: flex; flex-wrap: wrap; gap: 7px; padding: 12px 0 18px; }
.evidence-state { display: inline-flex; align-items: center; gap: 6px; width: max-content; max-width: 100%; padding: 5px 8px; border-radius: 999px; font: 700 9px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: nowrap; }
.state-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.evidence-state[data-state="verified"] { color: var(--green); background: rgba(38,122,90,.1); }
.evidence-state[data-state="missing"] { color: var(--red); background: rgba(180,59,53,.1); }
.evidence-state[data-state="stale"] { color: var(--yellow); background: rgba(152,107,22,.11); }
.evidence-state[data-state="conflicting"] { color: var(--purple); background: rgba(122,62,145,.1); }
.evidence-state[data-state="unknown"] { color: var(--unknown); background: rgba(104,115,124,.11); }
.evidence-state[data-state="not_applicable"] { color: var(--na); background: rgba(154,162,168,.16); }
.carrier-ledger { overflow: hidden; border: 1px solid var(--gray-lighter); border-radius: 16px; background: var(--white); box-shadow: 0 8px 28px rgba(28,22,41,.04); }
.carrier-ledger-row + .carrier-ledger-row { border-top: 1px solid var(--gray-lighter); }
.carrier-ledger-toggle { width: 100%; min-width: 0; display: grid; grid-template-columns: 34px minmax(190px,1.25fr) minmax(220px,1.5fr) 100px 112px; align-items: center; gap: 14px; padding: 17px 20px; text-align: left; color: var(--navy); border: 0; background: var(--white); }
.carrier-ledger-toggle:hover, .carrier-ledger-toggle[aria-expanded="true"] { background: #fdf9f6; }
.disclosure-icon { width: 24px; height: 24px; display: grid; place-items: center; color: var(--color-accent-text); border: 1px solid rgba(240,138,106,.45); border-radius: 7px; font-weight: 800; }
.carrier-ledger-identity { min-width: 0; display: grid; gap: 4px; }
.carrier-ledger-identity strong { font-size: 15px; }
.carrier-ledger-identity small, .carrier-ledger-state { overflow: hidden; color: var(--gray); font-size: 10px; line-height: 1.4; text-overflow: ellipsis; }
.carrier-ledger-identity small { white-space: nowrap; }
.carrier-ledger-count { color: var(--green); font: 600 10px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace; }
.carrier-ledger-count strong { font-size: 16px; }
.carrier-ledger-count.unresolved { color: var(--red); }
.carrier-ledger-panel { padding: 0 20px 22px 68px; background: #fdfbf9; }
.next-gap { display: grid; grid-template-columns: 92px 1fr; gap: 12px; padding: 13px 15px; border-left: 3px solid var(--salmon); background: rgba(240,138,106,.08); font-size: 11px; line-height: 1.5; }
.next-gap strong { color: var(--color-accent-text); text-transform: uppercase; letter-spacing: .08em; }
.product-evidence-header > [role="row"], .product-evidence-grid { display: grid; grid-template-columns: minmax(190px,1.5fr) repeat(7,minmax(96px,1fr)); gap: 8px; align-items: center; }
.product-evidence-header { padding: 20px 8px 8px; color: var(--gray); font: 700 8px/1.25 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .06em; text-transform: uppercase; }
.product-evidence-grid { padding: 11px 8px; border-top: 1px solid var(--gray-lighter); background: var(--white); }
.product-cell { min-width: 0; display: grid; gap: 4px; }
.product-cell strong { overflow-wrap: anywhere; font-size: 12px; }
.product-cell span { color: var(--gray); font: 500 8px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace; text-transform: uppercase; }
.evidence-cell { min-width: 0; }
.product-note { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 8px 10px 13px; color: var(--gray); background: var(--white); font-size: 10px; line-height: 1.45; }
.product-source-links { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 6px 0 0; padding-left: 16px; }
.product-source-links a { color: var(--navy); text-decoration-color: var(--salmon); text-underline-offset: 2px; }
.product-catalog { margin: 18px 0 4px; overflow: hidden; border: 1px solid var(--gray-lighter); border-radius: 14px; background: var(--white); }
.product-catalog-heading { display: grid; grid-template-columns: minmax(220px,.8fr) minmax(260px,1.2fr); gap: 24px; align-items: end; padding: 20px; }
.product-catalog-heading h3 { margin: 4px 0 0; font: 600 21px/1.1 DM Sans,sans-serif; letter-spacing: -.02em; }
.product-catalog-heading > p { margin: 0; color: var(--gray); font-size: 10px; line-height: 1.55; }
.catalog-eyebrow { margin: 0; color: var(--color-accent-text); font: 700 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; }
.catalog-boundary { padding: 11px 20px; color: #6e4a13; border-block: 1px solid rgba(152,107,22,.22); background: #fff9eb; font-size: 10px; line-height: 1.5; }
.catalog-categories { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.catalog-category + .catalog-category { border-left: 1px solid var(--gray-lighter); }
.catalog-category h4 { display: flex; justify-content: space-between; margin: 0; padding: 14px 16px; border-bottom: 1px solid var(--gray-lighter); font: 700 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .07em; text-transform: uppercase; }
.catalog-category h4 span { min-width: 22px; padding: 3px 6px; border-radius: 999px; color: var(--green); background: rgba(38,122,90,.1); text-align: center; }
.catalog-category ul { display: grid; margin: 0; padding: 0; list-style: none; }
.catalog-category li { display: grid; gap: 5px; padding: 15px 16px; border-top: 1px solid rgba(227,230,232,.65); }
.catalog-category li:first-child { border-top: 0; }
.catalog-category li strong { overflow-wrap: anywhere; font-size: 12px; line-height: 1.35; }
.catalog-category li > span, .catalog-empty span { color: var(--gray); font-size: 9px; line-height: 1.4; }
.catalog-category li p { margin: 3px 0; color: var(--gray); font-size: 9px; line-height: 1.5; }
.catalog-category a { width: max-content; max-width: 100%; color: var(--navy); font-size: 9px; font-weight: 700; text-decoration-color: var(--salmon); text-underline-offset: 2px; }
.catalog-empty { display: grid; gap: 7px; min-height: 118px; align-content: start; padding: 18px 16px; color: var(--gray); background: #fdfbf9; }
.catalog-empty strong { color: var(--navy); font-size: 11px; }
.product-note button, .no-results button { flex: 0 0 auto; padding: 6px 9px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 7px; background: var(--cream); font-size: 9px; font-weight: 700; }
.no-results { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 32px; border: 1px dashed var(--gray-light); border-radius: 14px; background: var(--white); }
.census-shell { min-width: 0; margin-top: 26px; }
.registry-orientation { display: grid; gap: 7px; max-width: 860px; margin-bottom: 20px; }
.registry-orientation .eyebrow { margin: 0; }
.registry-orientation h2 { margin: 0; font: 600 clamp(30px,4vw,46px)/1 DM Sans,sans-serif; letter-spacing: -.035em; }
.registry-orientation p:not(.eyebrow) { max-width: 70ch; margin: 0; color: var(--gray); font-size: 13px; line-height: 1.55; }
.registry-search { position: sticky; z-index: 4; top: 0; display: grid; gap: 9px; margin-bottom: 12px; padding: 16px 0; border-block: 1px solid var(--gray-lighter); background: var(--cream); }
.registry-search > label { color: var(--gray); font: 700 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .08em; text-transform: uppercase; }
.registry-search input { width: 100%; min-width: 0; min-height: 52px; padding: 0 16px; color: var(--navy); border: 1px solid var(--gray-light); border-radius: 11px; background: var(--white); font-size: 15px; }
.registry-search input:focus { border-color: var(--salmon); box-shadow: 0 0 0 3px rgba(240,138,106,.14); }
.registry-search-actions { min-width: 0; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.registry-search-modes { min-width: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.registry-search-modes button, #registryFiltersButton { min-height: 44px; padding: 0 13px; color: var(--gray); border: 1px solid var(--gray-lighter); border-radius: 9px; background: var(--white); font-size: 11px; font-weight: 700; }
.registry-search-modes button[aria-pressed="true"] { color: var(--white); border-color: var(--navy); background: var(--navy); }
#registryFiltersButton { flex: 0 0 auto; color: var(--navy); }
#registryActiveFilterCount { margin-left: 5px; color: var(--color-accent-text); font: 700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace; }
.registry-help { margin: 0 0 12px; border-bottom: 1px solid var(--gray-lighter); }
.registry-help > summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; color: var(--navy); font-size: 11px; font-weight: 700; }
.registry-help > p { max-width: 86ch; margin: 0 0 12px; color: var(--gray); font-size: 11px; line-height: 1.55; }
.census-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; padding: 12px; border: 1px solid var(--gray-lighter); background: var(--color-surface-raised); }
.census-filters label { min-width: 0; display: grid; flex: 1 1 180px; gap: 4px; color: var(--gray); font: 700 8px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .06em; text-transform: uppercase; }
.census-filters select { width: 100%; min-width: 0; min-height: 44px; padding: 0 28px 0 10px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 9px; background: var(--white); font-size: 11px; text-transform: none; }
.census-filters .registry-group-toggle { min-height: 44px; display: flex; align-items: center; flex-direction: row; gap: 9px; padding: 0 10px; border: 1px solid var(--gray-lighter); border-radius: 9px; background: var(--white); color: var(--navy); font: 700 10px/1.35 DM Sans,sans-serif; letter-spacing: 0; text-transform: none; }
.registry-group-toggle input { width: 18px; height: 18px; flex: 0 0 auto; margin: 0; accent-color: var(--salmon); }
#registryFilterChips:not(:empty) { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
.registry-filter-chip, .registry-clear-filters { min-height: 44px; padding: 5px 10px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 999px; background: var(--white); font-size: 9px; font-weight: 700; line-height: 1.35; }
.registry-filter-chip { border-color: rgba(240,138,106,.45); background: var(--color-surface-subtle); }
.registry-clear-filters { color: var(--color-accent-text); }
.registry-master-detail { min-width: 0; display: grid; gap: 18px; align-items: start; overflow-anchor: none; }
#registryResults, #registryDossier { min-width: 0; overflow: hidden; border: 1px solid var(--gray-lighter); background: var(--white); }
#registryResults > p { margin: 0; padding: 13px 15px; color: var(--gray); border-bottom: 1px solid var(--gray-lighter); font: 600 10px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; }
.registry-result-list { max-height: min(880px,calc(100vh - 270px)); margin: 0; padding: 0; overflow-y: auto; overflow-x: hidden; list-style: none; }
.registry-result-list li + li { border-top: 1px solid var(--gray-lighter); }
.registry-result { width: 100%; min-width: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px 14px; padding: 13px 15px; text-align: left; color: var(--navy); border: 0; border-left: 4px solid transparent; background: var(--white); }
.registry-result:hover { background: var(--color-surface-raised); }
.registry-result[aria-pressed="true"] { border-left-color: var(--salmon); background: var(--color-surface-subtle); box-shadow: inset 0 0 0 1px rgba(240,138,106,.22); }
.registry-result > span { min-width: 0; overflow-wrap: anywhere; color: var(--gray); font-size: 9px; line-height: 1.45; }
.registry-result-name { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.registry-result-name strong { color: var(--navy); font: 600 13px/1.3 DM Sans,sans-serif; }
.registry-result-name small { flex: 0 0 auto; color: var(--gray); font: 700 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; }
.registry-result-familiar { grid-column: 1 / -1; }
.registry-result-familiar strong { color: var(--navy); }
.registry-selected-label { width: max-content; max-width: 100%; padding: 3px 7px; color: var(--color-accent-text) !important; border: 1px solid rgba(240,138,106,.38); border-radius: 999px; background: var(--color-surface-subtle); font-weight: 700; }
.registry-family-groups { display: grid; }
.registry-family-group + .registry-family-group { border-top: 1px solid var(--gray-lighter); }
.registry-family-heading { display: grid; gap: 3px; padding: 12px 15px; background: var(--color-surface-raised); border-bottom: 1px solid var(--gray-lighter); }
.registry-family-heading h3 { margin: 0; overflow-wrap: anywhere; color: var(--navy); font: 600 13px/1.35 DM Sans,sans-serif; }
.registry-family-heading p { margin: 0; color: var(--gray); font-size: 9px; line-height: 1.45; }
.registry-family-group .registry-result-list { max-height: none; }
.registry-dossier-header { padding: 24px 26px; color: var(--color-text-on-ink); background: var(--color-ink-surface); }
.registry-dossier-header .eyebrow { margin-bottom: 8px; color: var(--color-accent-soft); }
.registry-dossier-header h3 { margin: 0; overflow-wrap: anywhere; font: 600 clamp(24px,3vw,34px)/1.08 DM Sans,sans-serif; letter-spacing: -.025em; }
.registry-dossier-header p:last-child { margin: 8px 0 0; color: var(--gray-on-ink); font-size: 11px; }
.registry-guidance { min-width: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 20px; padding: 18px 26px 20px; border-bottom: 1px solid var(--gray-lighter); background: var(--color-surface-raised); }
.registry-guidance-item { min-width: 0; display: grid; align-content: start; gap: 5px; padding-left: 12px; border-left: 3px solid var(--salmon); }
.registry-guidance-item h4 { margin: 0; color: var(--navy); font: 700 10px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .045em; }
.registry-guidance-item p { margin: 0; color: var(--gray); font-size: 10px; line-height: 1.55; }
.registry-guidance-action { grid-column: 1 / -1; grid-template-columns: max-content minmax(0,1fr); align-items: center; padding: 12px 0 0; border-top: 1px solid var(--gray-lighter); border-left: 0; }
#registryOpenActiveWorkButton { min-height: 44px; }
.registry-dossier-section { border-top: 1px solid var(--gray-lighter); }
.registry-mobile-section-summary { display: none; }
.registry-mobile-section-summary::-webkit-details-marker { display: none; }
.registry-desktop-section-heading { min-height: 52px; display: flex; align-items: center; margin: 0; padding: 0 26px; color: var(--navy); font: 700 11px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .055em; text-transform: uppercase; }
.registry-mobile-section-title { display: none; }
.registry-section-body { min-width: 0; display: grid; gap: 12px; padding: 0 26px 24px; }
.registry-dossier-section:not([open]) > .registry-section-body { display: none; }
.registry-section-body > p { margin: 0; color: var(--gray); font-size: 11px; line-height: 1.6; }
.registry-section-body > ul { display: grid; gap: 7px; margin: 0; padding-left: 18px; color: var(--gray); font-size: 11px; line-height: 1.5; }
.registry-section-body dl, .registry-product dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; margin: 0; border-top: 1px solid var(--gray-lighter); }
.registry-section-body dl div, .registry-product dl div { min-width: 0; display: grid; gap: 4px; padding: 10px 12px 10px 0; border-bottom: 1px solid var(--gray-lighter); }
.registry-section-body dt, .registry-product dt { color: var(--gray); font: 700 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .04em; text-transform: uppercase; }
.registry-section-body dd, .registry-product dd { margin: 0; overflow-wrap: anywhere; color: var(--navy); font-size: 11px; line-height: 1.45; }
.registry-products { min-width: 0; border-top: 1px solid var(--gray-lighter); }
.registry-product { min-width: 0; display: grid; gap: 12px; padding: 18px 0; border-bottom: 1px solid var(--gray-lighter); }
.registry-product h5 { margin: 0; overflow-wrap: anywhere; color: var(--navy); font: 600 16px/1.3 DM Sans,sans-serif; }
.registry-verification-list { min-width: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid var(--gray-lighter); }
.registry-verification-list span { min-width: 0; padding: 10px; overflow-wrap: anywhere; color: var(--unknown); font-size: 10px; line-height: 1.45; }
.registry-verification-list span + span { border-left: 1px solid var(--gray-lighter); }
.registry-verification-list strong { display: block; margin-bottom: 3px; color: var(--navy); font-size: 8px; text-transform: uppercase; }
.registry-product > p { margin: 0; color: var(--gray); font-size: 10px; line-height: 1.5; }
.registry-product a, .registry-section-body a { min-height: 44px; display: inline-flex; align-items: center; color: var(--navy); font-size: 10px; font-weight: 700; text-decoration-color: var(--salmon); text-underline-offset: 3px; }
.registry-link-unavailable { display: inline-block; color: var(--gray); font-size: 10px; line-height: 1.5; }
.registry-section-body .secondary-button { width: max-content; max-width: 100%; }
.census-pagination { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 16px 18px; border: 1px solid var(--gray-lighter); border-top: 0; border-radius: 0 0 16px 16px; background: var(--white); }
.census-pagination button { min-height: 44px; padding: 0 13px; color: var(--navy); border: 1px solid var(--gray-lighter); border-radius: 8px; background: var(--cream); font-size: 10px; font-weight: 700; }
.census-pagination button:disabled { cursor: not-allowed; color: var(--color-disabled-text); background: var(--color-disabled-surface); }
.census-pagination span { color: var(--gray); font: 600 9px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; text-align: center; }
.board { min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(280px, 1fr)); gap: 18px; align-items: start; }
.lane { min-width: 0; max-width: 100%; min-height: 540px; padding: 14px; border: 1px solid rgba(121,133,141,.16); border-radius: 16px; background: rgba(255,255,255,.48); }
.lane.drag-over { outline: 2px solid var(--salmon); background: rgba(240,138,106,.07); }
.lane-header { display: flex; justify-content: space-between; gap: 12px; padding: 6px 4px 16px; border-bottom: 1px solid var(--gray-lighter); }
.lane-title { display: flex; align-items: center; gap: 9px; margin: 0; font: 600 14px/1 DM Sans, sans-serif; }
.lane-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--gray-light); }
[data-lane="in_progress"] .lane-dot { background: var(--yellow); }
[data-lane="waiting_review"] .lane-dot { background: var(--green); }
.lane-count { min-width: 26px; height: 22px; display: grid; place-items: center; padding: 0 7px; color: var(--color-text-strong-muted); border-radius: 999px; background: var(--gray-lighter); font: 500 11px/1 JetBrains Mono, monospace; }
.lane-description { min-height: 34px; margin: 10px 4px 14px; color: var(--gray); font-size: 11px; line-height: 1.45; }
.card-list { display: grid; gap: 10px; min-height: 420px; }
.card { position: relative; min-width: 0; max-width: 100%; padding: 16px; border: 1px solid var(--gray-lighter); border-radius: 13px; background: var(--white); box-shadow: 0 3px 10px rgba(28,22,41,.03); }
.card:hover { transform: translateY(-2px); border-color: rgba(240,138,106,.6); box-shadow: var(--shadow); }
.card.dragging { opacity: .42; }
.card-main { width: 100%; padding: 0; text-align: left; color: inherit; border: 0; background: none; }
.card-top { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.card h3 { margin: 0; font: 600 17px/1.2 DM Sans, sans-serif; letter-spacing: -.01em; }
.reporter { flex: 0 0 auto; padding: 5px 8px; color: var(--color-accent-text); border-radius: 999px; background: rgba(240,138,106,.12); font: 500 9px/1 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.card-state { margin: 10px 0 0; color: var(--gray); font-size: 11px; line-height: 1.45; }
.progress-row { display: flex; align-items: center; gap: 10px; margin-top: 15px; }
.progress-track { flex: 1; height: 6px; overflow: hidden; border-radius: 999px; background: var(--gray-lighter); }
.progress-bar { height: 100%; border-radius: inherit; background: var(--salmon); }
.progress-label { color: var(--gray); font: 500 9px/1 JetBrains Mono, monospace; }
.card-actions { display: grid; grid-template-columns: 44px 1fr 44px; gap: 8px; margin-top: 14px; }
.move-button { min-width: 44px; height: 44px; border: 1px solid var(--gray-lighter); border-radius: 9px; color: var(--navy); background: var(--cream); font-weight: 600; }
.move-button:disabled { cursor: not-allowed; color: var(--color-disabled-text); background: var(--color-disabled-surface); }
.open-button { min-height: 44px; border: 0; border-radius: 9px; color: var(--navy); background: rgba(240,138,106,.12); font-size: 11px; font-weight: 600; }
.empty-lane { display: grid; place-items: center; min-height: 160px; padding: 24px; text-align: center; color: var(--gray); border: 1px dashed var(--gray-light); border-radius: 12px; font-size: 12px; line-height: 1.5; }
.drawer-backdrop { position: fixed; inset: 0; z-index: 20; background: rgba(28,22,41,.34); backdrop-filter: blur(2px); }
.drawer { position: fixed; z-index: 21; top: 0; right: 0; width: min(560px, 100%); height: 100vh; padding: 34px; overflow-y: auto; transform: translateX(105%); background: var(--white); box-shadow: -24px 0 60px rgba(28,22,41,.16); }
.drawer[aria-hidden="true"] { display: none; }
.drawer.open { display: block; transform: translateX(0); }
.drawer-close { position: absolute; top: 18px; right: 22px; width: 44px; height: 44px; color: var(--gray); border: 0; background: transparent; font-size: 30px; line-height: 1; }
.drawer-eyebrow { margin: 22px 0 10px; color: var(--color-accent-text); font: 500 10px/1 JetBrains Mono, monospace; letter-spacing: .14em; text-transform: uppercase; }
.drawer h2 { margin: 0 50px 0 0; font: 500 36px/1.05 DM Sans, sans-serif; letter-spacing: -.03em; }
.drawer-state { display: inline-flex; margin-top: 16px; padding: 7px 10px; border-radius: 999px; background: var(--cream); color: var(--gray); font: 500 10px/1 JetBrains Mono, monospace; text-transform: uppercase; }
.detail-section { padding: 22px 0; border-bottom: 1px solid var(--gray-lighter); }
.detail-section h3 { margin: 0 0 8px; font: 600 12px/1.3 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.detail-section p { margin: 0; color: var(--gray); font-size: 13px; line-height: 1.65; }
.next-action { padding: 16px; border-left: 3px solid var(--salmon); border-radius: 0 10px 10px 0; background: rgba(240,138,106,.08); }
.checklist { display: grid; gap: 9px; margin-top: 14px; }
.check-item { display: flex; gap: 11px; align-items: flex-start; padding: 12px; border: 1px solid var(--gray-lighter); border-radius: 10px; color: var(--navy); font-size: 12px; line-height: 1.4; }
.check-item input { width: 17px; height: 17px; margin: 0; accent-color: var(--salmon); }
.check-item.complete { color: var(--gray); background: var(--cream); text-decoration: line-through; }
.review-gate { margin-top: 14px; color: var(--gray); font-size: 11px; line-height: 1.5; }
.review-gate.ready, .packet-status.ready { color: var(--green); font-weight: 600; }
.packet-status { margin-top: 14px !important; }
.detail-section a { color: var(--navy); text-decoration-color: var(--salmon); text-underline-offset: 3px; }
.evidence-links { display: grid; gap: 8px; margin: 0; padding-left: 18px; color: var(--gray); font-size: 12px; }
.source-note { margin-top: 12px !important; font-size: 11px !important; }
.drawer-actions { display: flex; flex-wrap: wrap; gap: 10px; padding-top: 22px; }
.drawer-actions button { min-height: 40px; padding: 0 14px; border: 1px solid var(--gray-lighter); border-radius: 10px; background: var(--cream); font-size: 12px; font-weight: 600; }
.drawer-actions button.primary { color: var(--white); border-color: var(--navy); background: var(--navy); }
.drawer-actions button:disabled { cursor: not-allowed; color: var(--color-disabled-text); background: var(--color-disabled-surface); }
.toast { position: fixed; z-index: 40; left: 50%; bottom: 24px; max-width: min(460px, calc(100vw - 32px)); padding: 12px 16px; transform: translate(-50%, 120px); color: var(--white); border-radius: 10px; background: var(--navy); box-shadow: var(--shadow); font-size: 12px; line-height: 1.4; }
.toast.show { transform: translate(-50%, 0); }

:root[data-theme="dark"] .draft-notice {
  color: #ffb8b0;
  border-color: rgba(255, 158, 150, .42);
  background: #351f28;
}
:root[data-theme="dark"] .view-switch { background: rgba(33, 27, 44, .8); }
:root[data-theme="dark"] .why-next,
:root[data-theme="dark"] .review-gate-summary,
:root[data-theme="dark"] .blockers-section,
:root[data-theme="dark"] .carrier-ledger-panel,
:root[data-theme="dark"] .catalog-empty { background: var(--color-surface-raised); }
:root[data-theme="dark"] .tracker-summary .attention,
:root[data-theme="dark"] .evidence-empty,
:root[data-theme="dark"] .claim-gate,
:root[data-theme="dark"] .catalog-boundary,
:root[data-theme="dark"] .registry-section-body [role="note"] { color: var(--color-status-warning) !important; background: #30281f; }
:root[data-theme="dark"] .carrier-ledger-toggle:hover,
:root[data-theme="dark"] .carrier-ledger-toggle[aria-expanded="true"] { background: var(--color-surface-subtle); }
:root[data-theme="dark"] .registry-result[aria-pressed="true"] { background: rgba(245,168,142,.1); }
:root[data-theme="dark"] .lane { background: rgba(33, 27, 44, .72); }
:root[data-theme="dark"] .drawer-backdrop { background: rgba(8, 6, 13, .72); }
:root[data-theme="dark"] .next-work-card,
:root[data-theme="dark"] .packet-workbench,
:root[data-theme="dark"] .card { box-shadow: var(--shadow-selected); }

@media (max-width: 768px) {
  .active-work-split { grid-template-columns: minmax(0,1fr); }
  .active-work-split .active-queue-list { max-height: none; overflow: visible; padding-right: 0; }
  .board { grid-template-columns: minmax(0,1fr); }
  .packet-workbench { margin-top: 4px; }
}

@media (min-width: 1024px) {
  .shell[data-view="registry"] main { padding-bottom: 18px; }
  .registry-master-detail { min-height: calc(100vh - 36px); grid-template-columns: minmax(340px,.38fr) minmax(0,.62fr); }
  #registryDossier { position: sticky; top: 18px; max-height: calc(100vh - 36px); overflow-y: auto; }
}

@media (max-width: 900px) {
  .registry-master-detail { grid-template-columns: minmax(0,1fr); }
  #registryResults { order: 1; }
  #registryDossier { order: 2; position: static; max-height: none; overflow: visible; }
  .registry-result-list { max-height: 32rem; }
}

@media (min-width: 1200px) {
  .active-work-split { grid-template-columns: minmax(340px,.78fr) minmax(540px,1.22fr); }
}

@media (max-width: 940px) {
  .active-work-split { grid-template-columns: minmax(0,1fr); }
  .active-work-split .active-queue-list { max-height: none; overflow: visible; padding-right: 0; }
  .active-work-split .active-queue-table { max-height: none; overflow: visible; }
  .active-work-split .active-queue-table table { min-width: 0; }
  .active-work-split .active-queue-table thead { display: none; }
  .active-work-split .active-queue-table tbody, .active-work-split .active-queue-table tr { display: grid; }
  .active-work-split .active-queue-table tr + tr { border-top: 8px solid var(--cream); }
  .active-work-split .active-queue-table th, .active-work-split .active-queue-table td { min-width: 0 !important; display: grid; grid-template-columns: 112px minmax(0,1fr); gap: 10px; padding: 10px 14px; overflow-wrap: anywhere; }
  .active-work-split .active-queue-table th::before, .active-work-split .active-queue-table td[data-label]::before { content: attr(data-label); color: var(--gray); font: 700 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; text-transform: uppercase; }
  .active-work-split .active-queue-table td:last-child { display: block; }
  .active-work-split .active-queue-table td:last-child button { width: 100%; min-height: 44px; }
  .board { grid-template-columns: 1fr; }
  .lane { min-height: 0; }
  .card-list { min-height: 120px; }
  .hero { align-items: flex-start; }
  .toolbar { align-items: flex-end; flex-wrap: wrap; }
  .census-filters { order: 3; flex-basis: 100%; justify-content: flex-start; }
  .carrier-ledger-toggle { grid-template-columns: 34px minmax(180px,1fr) 100px 112px; }
  .carrier-ledger-state { display: none; }
  .product-evidence-header > [role="row"], .product-evidence-grid { grid-template-columns: minmax(170px,1.25fr) repeat(7,minmax(90px,1fr)); overflow-x: auto; }
}
@media (max-width: 760px) {
  .draft-notice { display: grid; }
  .workspace-controls { align-items: stretch; flex-direction: column; }
  .view-switch { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .view-switch button { min-height: 44px; padding-inline: 8px; text-align: center; }
  .disclosure-controls { width: 100%; }
  .disclosure-controls .secondary-button { flex: 1; }
  .next-work-heading { align-items: stretch; flex-direction: column; padding: 18px; }
  .continue-packet { width: 100%; }
  .why-next { padding-inline: 18px; }
  .next-work-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .next-work-facts div { padding: 14px 18px; border-right: 0; border-bottom: 1px solid var(--gray-lighter); }
  .packet-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .packet-steps li { padding: 12px 18px; }
  .coordination-fields, .evidence-link-form { grid-template-columns: 1fr 1fr; }
  .coordination-fields button, .evidence-link-form button { grid-column: 1 / -1; width: 100%; }
  .workbench-checklist { grid-template-columns: 1fr; }
  .active-queue-table { overflow: visible; }
  .active-queue-table table { min-width: 0; }
  .active-queue-table thead { display: none; }
  .active-queue-table tbody, .active-queue-table tr { display: grid; }
  .active-queue-table tr + tr { border-top: 8px solid var(--cream); }
  .active-queue-table th, .active-queue-table td { min-width: 0 !important; display: grid; grid-template-columns: 92px minmax(0,1fr); gap: 10px; padding: 10px 14px; overflow-wrap: anywhere; }
  .active-queue-table th::before, .active-queue-table td[data-label]::before { content: attr(data-label); color: var(--gray); font: 700 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; text-transform: uppercase; }
  .active-queue-table td:last-child { display: block; }
  .active-queue-table td:last-child button { width: 100%; min-height: 44px; }
  .tracker-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .carrier-ledger-toggle { grid-template-columns: 30px minmax(0,1fr) auto; gap: 9px; padding: 15px 14px; }
  .carrier-ledger-count { display: none; }
  .carrier-ledger-count.unresolved { display: block; }
  .carrier-ledger-panel { padding: 0 12px 16px; }
  .next-gap { grid-template-columns: 1fr; }
  .product-evidence-header { display: none; }
  .product-catalog-heading { grid-template-columns: 1fr; gap: 10px; }
  .catalog-categories { grid-template-columns: 1fr; }
  .catalog-category + .catalog-category { border-left: 0; border-top: 1px solid var(--gray-lighter); }
  .product-evidence-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; overflow: visible; padding: 14px; border: 1px solid var(--gray-lighter); border-radius: 10px 10px 0 0; }
  .product-cell { grid-column: 1 / -1; padding-bottom: 7px; border-bottom: 1px solid var(--gray-lighter); }
  .evidence-cell { display: grid; gap: 5px; }
  .evidence-cell::before { content: attr(data-label); color: var(--gray); font: 700 8px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .05em; text-transform: uppercase; }
  .product-note { align-items: flex-start; flex-direction: column; border: 1px solid var(--gray-lighter); border-top: 0; border-radius: 0 0 10px 10px; }
  .evidence-state { white-space: normal; }
}
@media (max-width: 620px) {
  .topbar { height: 44px; padding: 0 12px; }
  .topbar-context { display: none; }
  main { padding: 10px 12px 36px; }
  .draft-notice { margin: 0 0 8px; padding: 7px 9px; font-size: 9px; }
  .draft-notice span { display: none; }
  .hero { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; align-items: start; }
  h1 { font-size: 23px; }
  .hero-copy { margin-top: 4px; font-size: 10px; line-height: 1.35; }
  .hero-actions { width: 100%; justify-content: flex-end; margin: 7px 0 0; }
  .persistence-status { display: none; }
  .more-menu > summary { min-height: 44px; padding-inline: 11px; font-size: 10px; }
  .work-boundary { margin-top: 7px; font-size: 9px; line-height: 1.35; }
  .shell[data-view="registry"] .hero, .shell[data-view="registry"] .work-boundary { display: none; }
  .shell[data-view="registry"] .workspace-controls { margin-top: 8px; }
  .workspace-controls { margin-top: 9px; }
  .view-switch { padding: 3px; }
  .view-switch button { min-height: 44px; padding: 3px; font-size: 8px; line-height: 1.2; }
  .active-work { margin-top: 9px; }
  .next-work-card { display: flex; flex-direction: column; }
  .next-work-heading { display: contents; }
  .next-work-heading > div { order: 1; padding: 11px 12px 7px; }
  .next-work-heading h2 { margin: 3px 0 2px; font-size: 19px; }
  .next-work-heading p { font-size: 9px; line-height: 1.3; }
  .queue-rule { font-size: 8px !important; }
  .next-work-facts { display: contents; }
  .next-work-facts .fact-unresolved { order: 2; }
  .next-work-facts .fact-next-action { order: 3; }
  .continue-packet { order: 4; width: auto; min-height: 44px; margin: 5px 12px 12px; }
  .current-packet-state { order: 4; min-height: 44px; display: grid; place-items: center; margin: 5px 12px 12px; text-align: center; }
  .why-next { order: 5; display: block; }
  .next-work-facts .fact-owner { order: 6; display: block; }
  .next-work-facts .fact-due { order: 7; display: block; }
  .packet-steps { order: 8; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .next-work-facts div { padding: 7px 12px; border: 0; }
  .next-work-facts dt { font-size: 7px; }
  .next-work-facts dd { font-size: 9px; line-height: 1.35; }
  .workbench-header, .section-heading { align-items: flex-start; flex-direction: column; }
  .workbench-progress { text-align: left; }
  .workbench-section { padding: 18px 16px; }
  .section-heading > p { text-align: left; }
  .coordination-fields, .evidence-link-form { grid-template-columns: 1fr; }
  .coordination-fields button, .evidence-link-form button, .field-error { grid-column: 1; }
  .workbench-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .active-work > .toolbar { margin: 10px 0 8px; }
  .secondary-button { width: max-content; }
  .toolbar { align-items: stretch; flex-direction: column; gap: 8px; }
  .search-wrap input { height: 44px; }
  .active-queue-card button, .packet-workbench button, .packet-workbench input { min-height: 44px; }
  .packet-workbench a { min-height: 44px; display: inline-flex; align-items: center; }
  .workbench-check { min-height: 44px; align-items: center; }
  .census-filters { display: grid; grid-template-columns: 1fr; width: 100%; max-height: min(66vh,560px); overflow-y: auto; overscroll-behavior: contain; }
  .census-filters select { width: 100%; }
  .registry-group-toggle { min-height: 44px; }
  .census-shell { max-width: 100%; margin-top: 12px; overflow-x: hidden; }
  .registry-orientation { gap: 4px; margin-bottom: 8px; }
  .registry-orientation .eyebrow { font-size: 8px; line-height: 1.25; }
  .registry-orientation h2 { font-size: 24px; }
  .registry-orientation p:not(.eyebrow) { font-size: 10px; line-height: 1.4; }
  .registry-search { position: static; gap: 7px; margin-bottom: 6px; padding: 8px 0; }
  .registry-search > label { font-size: 8px; }
  .registry-search input { min-height: 44px; padding-inline: 12px; font-size: 12px; }
  .registry-search-actions { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 6px; }
  .registry-search-modes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4px; }
  .registry-search-modes button { min-width: 0; min-height: 44px; padding: 3px 5px; font-size: 8px; line-height: 1.2; }
  #registryFiltersButton { min-height: 44px; padding-inline: 9px; font-size: 9px; }
  #registryActiveFilterCount { display: block; margin: 3px 0 0; font-size: 7px; }
  .registry-filter-chip, .registry-clear-filters { min-height: 44px; border-radius: 10px; }
  .registry-help { margin-bottom: 6px; }
  .registry-help > summary { min-height: 44px; font-size: 10px; }
  .registry-help > p { font-size: 9px; }
  .registry-master-detail { gap: 10px; }
  #registryResults, #registryDossier { max-width: 100%; overflow-x: hidden; }
  #registryResults > p { padding: 8px 10px; font-size: 8px; }
  .registry-result-list { max-height: 228px; overflow-y: auto; overflow-x: hidden; }
  .registry-result { min-height: 88px; display: grid; grid-template-columns: minmax(0,1fr); gap: 4px; padding: 10px 11px; }
  .registry-result-name, .registry-result-familiar { grid-column: 1; }
  .registry-result-name strong { font-size: 12px; }
  .registry-selected-label { min-height: 28px; display: inline-flex; align-items: center; }
  .registry-result-dense { display: none; }
  .registry-family-heading { padding: 10px 11px; }
  .census-pagination { display: grid; grid-template-columns: 44px minmax(0,1fr) 44px; gap: 6px; padding: 7px; }
  .census-pagination button { min-width: 44px; min-height: 44px; padding: 0 5px; font-size: 0; }
  .census-pagination button:first-child::before { content: '‹'; font-size: 20px; }
  .census-pagination button:last-child::before { content: '›'; font-size: 20px; }
  .census-pagination span { align-self: center; font-size: 7px; }
  #registryResults .registry-empty-state { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr); justify-items: stretch; gap: 8px; padding: 18px 14px; }
  #registryResults .registry-empty-state strong, #registryResults .registry-empty-state p { min-width: 0; margin: 0; overflow-wrap: anywhere; line-height: 1.45; }
  #registryResults .registry-empty-state button { width: 100%; min-width: 0; min-height: 44px; }
  .registry-dossier-header { padding: 18px 14px; }
  .registry-dossier-header h3 { font-size: 23px; }
  .registry-guidance { grid-template-columns: minmax(0,1fr); gap: 12px; padding: 14px 14px 16px; }
  .registry-guidance-item { padding-left: 10px; }
  .registry-guidance-item p { font-size: 9px; }
  .registry-guidance-action { grid-column: 1; grid-template-columns: minmax(0,1fr); padding: 12px 0 0; }
  #registryOpenActiveWorkButton { width: 100%; min-height: 44px; }
  .registry-mobile-section-summary { min-height: 44px; display: flex; align-items: center; justify-content: space-between; padding: 0 14px; cursor: pointer; list-style: none; color: var(--navy); font: 700 10px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .055em; text-transform: uppercase; }
  .registry-mobile-section-summary::after { content: '+'; color: var(--color-accent-text); font-size: 18px; }
  .registry-dossier-section[open] > .registry-mobile-section-summary::after { content: '−'; }
  .registry-desktop-section-heading { display: none; }
  .registry-mobile-section-title { display: inline; }
  .registry-section-body { gap: 10px; padding: 0 14px 16px; }
  .registry-section-body dl, .registry-product dl { grid-template-columns: minmax(0,1fr); }
  .registry-section-body dl div, .registry-product dl div { padding-right: 0; }
  .registry-verification-list { grid-template-columns: minmax(0,1fr); }
  .registry-verification-list span + span { border-left: 0; border-top: 1px solid var(--gray-lighter); }
  .registry-product { padding: 14px 0; }
  .registry-product h5 { font-size: 15px; }
  .registry-product a, .registry-section-body a { min-height: 44px; }
  .census-pagination { align-items: stretch; flex-direction: column; }
  .summary { padding-left: 2px; }
  .drawer { padding: 28px 20px; }
  .drawer h2 { font-size: 31px; }
}
@media (prefers-reduced-motion: no-preference) {
  .card { transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease; }
  .drawer { transition: transform .24s ease; }
  .toast { transition: transform .22s ease; }
  .registry-result { transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease; }
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: 0s !important; }
}


/* Embedded companion views (Add a carrier, Intake plan, Carrier readiness,
   Audit coordination). Framed so each artifact keeps its own styling and stays
   maintained in one place. The frame owns its scrolling; the dashboard shell
   never scrolls sideways because of it. */
.embed-shell {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
.embed-note {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted, #6b6b6b);
}
.embed-frame {
  width: 100%;
  min-height: min(1100px, calc(100vh - 210px));
  border: 1px solid var(--line, #e4e4e4);
  border-radius: 12px;
  background: var(--surface, #fff);
  display: block;
}
@media (max-width: 720px) {
  .embed-frame { min-height: calc(100vh - 160px); }
}
