/* Generated from app/globals.css by scripts/sync-brand-tokens.mjs. Do not edit. */
@font-face {
  font-family: "Source Sans 3";
  src: url("/fonts/source-sans-3-shell.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: optional;
  unicode-range: U+0020-007E, U+00A9, U+00B7, U+2013-2014, U+2018-201D, U+2026, U+2302;
}
@font-face {
  font-family: "Source Sans 3";
  src: url("/fonts/source-sans-3-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  unicode-range: U+0080-00A8, U+00AA-00B6, U+00B8-2012, U+2015-2017, U+201E-2025, U+2027-FFFF;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("/fonts/source-serif-4-shell-400.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  unicode-range: U+0020-007E, U+00A9, U+00B7, U+2013-2014, U+2018-201D, U+2026;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("/fonts/source-serif-4-latin-400.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0080-00A8, U+00AA-00B6, U+00B8-2012, U+2015-2017, U+201E-2025, U+2027-FFFF;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("/fonts/source-serif-4-italic-latin-400.woff2") format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "IBM Plex Mono";
  src: url("/fonts/ibm-plex-mono-600-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

/* VenturePath brand system v1.1: shared tokens and identity primitives. */
:root {
  --vp-hosted-response-cache-key: "2026-09-04-v1.1";
  --font-sans: "Source Sans 3", Arial, sans-serif;
  --font-serif: "Source Serif 4", Georgia, serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  --white: #ffffff;
  --type-body: 1rem;
  --space-4: 4px;
  --space-8: 8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-24: 24px;
  --space-32: 32px;
  --space-48: 48px;
  --space-64: 64px;
  --space-96: 96px;
  --vp-journey-rail-expanded-width: clamp(calc(var(--space-96) * 3 + var(--space-4)), 23vw, calc(var(--space-96) * 3 + var(--space-32) + var(--space-8)));
  --radius-4: 4px;
  --radius-8: 8px;
  --radius-12: 12px;
  --tap-min: 44px;
  --focus-ring: var(--gold);
  --surface-disabled: var(--line);
  --text-disabled: var(--muted);
  --scrim: rgba(0,36,57,.48);
  --navy: #002439;
  --navy-2: #002439;
  --navy-3: #07364b;
  --ivory: #fafafb;
  --cream: #f1f0eb;
  --gold: #d9971f;
  --gold-light: #f7e3be;
  --ink: #002439;
  --muted: #45565f;
  --vp-body-on-paper: #45565f;
  --vp-body-on-tint: #002439;
  --vp-body-on-dark: #fafafb;
  --line: #e3e7e9;
  --green: #00706a;
  --green-soft: #d7e7e4;
  --rose: #b4423a;
  --rose-soft: #f8e9e7;
  --blue: #35657f;
  --blue-soft: #e9eef8;
  --shadow: 0 12px 32px rgba(0, 36, 57, 0.08);
  /* motion: the complete permitted set, see docs/brand/BRAND_RULES_v1.1.md */
  --vp-dur-control: 180ms;
  --vp-dur-disclose: 200ms;
  --vp-dur-progress: 240ms;
  --vp-dur-pulse: 1200ms;
  --vp-ease-out: cubic-bezier(0.25, 1, 0.5, 1);
  --type-micro: clamp(.75rem, calc(.708rem + .208vw), .875rem);
  --type-small: clamp(.8125rem, calc(.771rem + .208vw), .9375rem);
  --type-body-compact: clamp(.9375rem, calc(.917rem + .104vw), 1rem);
  --type-lead: clamp(1.125rem, calc(1.083rem + .208vw), 1.25rem);
  --type-card-title: clamp(1.125rem, calc(1rem + .625vw), 1.5rem);
  --type-section-title: clamp(1.5rem, calc(1.375rem + .625vw), 1.875rem);
  --type-display-md: clamp(1.875rem, calc(1.589rem + 1.43vw), 2.875rem);
  --type-display-lg: clamp(2.125rem, calc(1.696rem + 2.14vw), 3.625rem);
  --type-workspace-display: clamp(2rem, calc(1.708rem + 1.458vw), 2.875rem);
}

/* Personal notifications share the application brand tokens. */
.vp-home-top-actions, .vp-notifications-header nav { display: flex; align-items: center; justify-content: flex-end; gap: var(--space-8); }
.vp-home-top-actions { padding: var(--space-8) var(--space-24); background: var(--ivory); border-bottom: 1px solid var(--line); }
.vp-home-top-actions > a, .vp-notifications-header nav > a, .vp-notifications-back { display: inline-flex; align-items: center; min-height: var(--tap-min); padding-inline: var(--space-12); color: var(--green); font-weight: 700; }
.vp-notification-bell { position: relative; flex-shrink: 0; }
.vp-notification-trigger { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: var(--tap-min); min-height: var(--tap-min); border: 1px solid var(--line); border-radius: var(--radius-8); background: var(--ivory); color: var(--navy); cursor: pointer; }
.vp-notification-trigger svg, .vp-notification-delete svg { width: var(--space-24); height: var(--space-24); }
.vp-notification-count { position: absolute; inset-block-start: 0; inset-inline-end: 0; padding-inline: var(--space-4); background: var(--rose); color: var(--ivory); border-radius: var(--radius-4); font: 600 var(--type-micro)/1.4 var(--font-mono); }
.vp-notification-popover { position: absolute; z-index: 100; inset-block-start: calc(100% + var(--space-8)); inset-inline-end: 0; width: min(calc(var(--space-96) * 4), calc(100vw - var(--space-48))); max-height: 70vh; overflow: auto; padding: var(--space-16); background: var(--ivory); color: var(--navy); border: 1px solid var(--line); border-radius: var(--radius-12); box-shadow: var(--shadow); text-align: start; }
.vp-notification-popover header { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-8); }
.vp-notification-popover h2 { margin: 0; font: 400 var(--type-card-title)/1.3 var(--font-serif); }
.vp-notification-popover p, .vp-notification-popover header > span { font-size: var(--type-body-compact); }
.vp-notification-popover ul { list-style: none; margin: 0; padding: 0; }
.vp-notification-popover li + li { border-top: 1px solid var(--line); }
.vp-notification-popover li a { display: grid; gap: var(--space-4); padding-block: var(--space-12); min-height: var(--tap-min); color: var(--navy); text-decoration: none; overflow-wrap: anywhere; }
.vp-notification-popover li strong { font-size: var(--type-body); }
.vp-notification-popover li span, .vp-notification-popover small { font-size: var(--type-small); color: var(--muted); }
.vp-notification-register-link { display: inline-flex; align-items: center; min-height: var(--tap-min); color: var(--green); font-weight: 700; }
.vp-notification-kind { display: inline-block; padding: var(--space-4) var(--space-8); border-radius: var(--radius-4); background: var(--blue-soft); color: var(--navy); font-size: var(--type-small); font-weight: 600; }
.vp-notification-kind.overdue { background: var(--rose-soft); color: var(--rose); }
.vp-notification-kind.approval, .vp-notification-kind.review { background: var(--gold-light); color: var(--navy); }
.vp-notifications-page { min-height: 100vh; background: var(--cream); color: var(--navy); font: 400 1rem/1.6 var(--font-sans); }
.vp-notifications-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--space-16); padding: var(--space-16) max(var(--space-24), env(safe-area-inset-right)) var(--space-16) max(var(--space-24), env(safe-area-inset-left)); background: var(--ivory); border-bottom: 1px solid var(--line); }
.vp-notifications-header > a { max-width: calc(var(--space-96) * 2); }
.vp-notifications-main { max-width: calc(var(--space-96) * 13); margin-inline: auto; padding: var(--space-24); padding-block-end: max(var(--space-48), env(safe-area-inset-bottom)); }
.vp-notifications-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--space-16); margin-block: var(--space-16) var(--space-24); }
.vp-notifications-heading h1 { margin: 0; font: 400 var(--type-display-md)/1.08 var(--font-serif); }
.vp-notifications-heading p { margin-block: var(--space-8); }
.vp-notifications-page button, .vp-project-attention button { min-height: var(--tap-min); padding: var(--space-8) var(--space-12); border: 1px solid var(--line); border-radius: var(--radius-8); font: 700 1rem/1.5 var(--font-sans); background: var(--ivory); color: var(--green); cursor: pointer; }
.vp-notifications-page button:disabled { color: var(--text-disabled); background: var(--surface-disabled); cursor: default; }
.vp-notification-filters, .vp-notification-selected, .vp-notification-empty, .vp-notification-error { padding: var(--space-24); border: 1px solid var(--line); border-radius: var(--radius-8); background: var(--ivory); margin-block: var(--space-16); }
.vp-notification-filters label { display: grid; gap: var(--space-8); font-weight: 600; min-width: 0; }
.vp-notification-filters input:not([type=radio]), .vp-notification-filters select { width: 100%; min-width: 0; box-sizing: border-box; min-height: var(--space-48); padding: var(--space-8) var(--space-12); border: 1px solid var(--muted); border-radius: var(--radius-8); font: 400 1rem/1.5 var(--font-sans); background: var(--ivory); color: var(--navy); }
.vp-notification-filters p { font-size: var(--type-small); color: var(--muted); }
.vp-notification-filters summary { cursor: pointer; min-height: var(--tap-min); padding-block: var(--space-8); color: var(--green); font-weight: 700; }
.vp-notification-filter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-16); margin-block: var(--space-16); }
.vp-notification-filters fieldset { min-width: 0; margin: 0; padding: var(--space-12); border: 1px solid var(--line); border-radius: var(--radius-8); }
.vp-notification-filters fieldset label { display: flex; align-items: center; min-height: var(--tap-min); gap: var(--space-8); font-weight: 400; }
.vp-notification-filters input[type=radio] { width: var(--space-24); height: var(--space-24); margin: 0; accent-color: var(--navy); }
.vp-notification-table { width: 100%; border-collapse: collapse; background: var(--ivory); font-size: var(--type-body-compact); }
.vp-notification-table th, .vp-notification-table td { text-align: start; padding: var(--space-16); border-bottom: 1px solid var(--line); vertical-align: top; overflow-wrap: anywhere; }
.vp-notification-table th { color: var(--muted); font-weight: 600; }
.vp-notification-table tr.unread { background: var(--blue-soft); }
.vp-notification-table td:nth-child(2) { width: 40%; }
.vp-notification-table td a { display: flex; align-items: center; min-height: var(--tap-min); color: var(--navy); font-weight: 700; text-decoration: underline; }
.vp-notification-table td small, .vp-notification-table td > span { display: block; margin-block: var(--space-4); }
.vp-notification-table small { font-size: var(--type-small); }
.vp-notification-table .vp-notification-kind { display: inline-block; }
.vp-notification-delete { min-width: var(--tap-min); display: flex; align-items: center; justify-content: center; }
.vp-notification-pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: var(--space-16); padding-block: var(--space-24); }
.vp-notification-dialog { max-width: min(calc(var(--space-96) * 5), calc(100vw - var(--space-48))); padding: var(--space-24); border: 1px solid var(--line); border-radius: var(--radius-12); color: var(--navy); background: var(--ivory); box-shadow: var(--shadow); }
.vp-notification-dialog::backdrop { background: var(--scrim); }
.vp-notification-dialog div { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var(--space-8); }
.vp-notification-dialog h2 { font: 400 var(--type-section-title)/1.15 var(--font-serif); }
.vp-notifications-page a:focus-visible, .vp-notifications-page button:focus-visible, .vp-notification-trigger:focus-visible, .vp-notification-popover a:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; box-shadow: 0 0 0 4px var(--navy); }
@media (max-width: 720px) {
  .vp-notifications-main { padding: var(--space-16); }
  .vp-notification-filter-grid { grid-template-columns: minmax(0, 1fr); }
  .vp-notification-filters { padding: var(--space-16); }
  .vp-notification-table thead { position: absolute; clip-path: inset(50%); width: 1px; height: 1px; overflow: hidden; }
  .vp-notification-table, .vp-notification-table tbody, .vp-notification-table tr, .vp-notification-table td { display: block; width: auto; }
  .vp-notification-table tr { padding: var(--space-12); border-bottom: 1px solid var(--muted); }
  .vp-notification-table td, .vp-notification-table td:nth-child(2) { width: auto; padding: var(--space-8); border: 0; }
  .vp-notification-table td::before { content: attr(data-label); display: block; color: var(--muted); font-size: var(--type-small); }
  .vp-notification-popover { position: fixed; inset-inline: var(--space-16); inset-block-start: calc(env(safe-area-inset-top) + var(--space-96)); width: auto; }
}

.vp-error-recovery { min-height:100vh; display:grid; place-items:center; padding:var(--space-32); background:var(--navy); color:var(--ivory); font-family:var(--font-sans),Arial,sans-serif; }
.vp-error-recovery section { width:min(100%,680px); padding:clamp(var(--space-24),6vw,var(--space-48)); border:1px solid rgb(from var(--gold-light) r g b / .35); border-radius:var(--radius-12); background:var(--navy-3); box-shadow:var(--shadow); }
.vp-error-recovery small { color:var(--gold-light); font-weight:700; letter-spacing:.12em; }
.vp-error-recovery h1 { margin:var(--space-12) 0; font-family:var(--font-serif),Georgia,serif; font-size:var(--type-section-title); font-weight:400; line-height:1.08; }
.vp-error-recovery p { color:var(--line); font-size:var(--type-body); line-height:1.6; }
.vp-error-recovery-actions { display:flex; flex-wrap:wrap; gap:var(--space-8); margin-top:var(--space-24); }
.vp-error-recovery-actions button,.vp-error-recovery-actions a { min-height:44px; padding:var(--space-12) var(--space-16); border:1px solid var(--gold); border-radius:var(--radius-8); background:var(--ivory); color:var(--navy); font:inherit; font-weight:700; text-decoration:none; cursor:pointer; }
.vp-dialog-backdrop { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; padding:var(--space-16); background:rgb(from var(--navy) r g b / .72); }
.vp-dialog { width:min(100%,560px); padding:var(--space-24); border:1px solid var(--line); border-radius:var(--radius-12); background:var(--ivory); color:var(--navy); box-shadow:var(--shadow); }
.vp-dialog:modal { max-width:calc(100% - var(--space-32)); max-height:calc(100dvh - var(--space-32)); overflow:auto; margin:auto; }
.vp-dialog::backdrop { background:rgb(from var(--navy) r g b / .48); }
.vp-dialog small { color:var(--green); font-weight:700; letter-spacing:.12em; }
.vp-dialog h2 { margin:var(--space-8) 0 var(--space-8); font-family:var(--font-serif); font-size:var(--type-section-title); font-weight:400; }
.vp-dialog p { color:var(--muted); line-height:1.55; }
.vp-dialog label { display:grid; gap:var(--space-4); margin-top:var(--space-16); font-weight:700; }
.vp-dialog textarea { min-height:110px; resize:vertical; padding:var(--space-12); border:1px solid var(--blue); border-radius:var(--radius-8); font:inherit; }
.vp-dialog>div { display:flex; justify-content:flex-end; gap:var(--space-8); margin-top:var(--space-24); }
.vp-dialog button { min-height:44px; padding:var(--space-8) var(--space-16); border:1px solid var(--blue); border-radius:var(--radius-8); background:var(--ivory); color:var(--navy); font:inherit; font-weight:700; cursor:pointer; }
.vp-dialog button.primary { border-color:var(--navy); background:var(--navy); color:var(--ivory); }
.vp-dialog button:disabled { cursor:not-allowed; opacity:.52; }
.vp-version-notice { position:fixed; z-index:1000; right:16px; bottom:16px; display:flex; align-items:center; gap:var(--space-12); padding:var(--space-12) var(--space-12); border:1px solid var(--gold); border-radius:var(--radius-12); background:var(--navy); color:var(--ivory); box-shadow:var(--shadow); font-family:var(--font-sans),Arial,sans-serif; }
.vp-version-notice button { min-height:44px; padding:var(--space-8) var(--space-8); border:0; border-radius:var(--radius-8); background:var(--gold); color:var(--navy); font-weight:700; cursor:pointer; }
.vp-noscript { padding:var(--space-12) var(--space-16); background:var(--rose); color:var(--white); font:700 var(--type-body)/1.5 var(--font-sans); text-align:center; }
.vp-pre-release-banner { position:relative; z-index:80; display:flex; align-items:center; justify-content:center; gap:var(--space-12); min-height:42px; padding:var(--space-8) var(--space-16); border-bottom:1px solid var(--rose); background:var(--gold-light); color:var(--navy); font:600 var(--type-body-compact)/1.5 var(--font-sans); text-align:center; }
.vp-pre-release-banner strong { flex:0 0 auto; padding:var(--space-4) var(--space-8); border-radius:var(--radius-12); background:var(--navy); color:var(--ivory); font-size:var(--type-micro); letter-spacing:.08em; text-transform:uppercase; }
.vp-interim-legal-notice { margin:var(--space-16) 0; padding:var(--space-16) var(--space-16); border:2px solid var(--rose); border-radius:var(--radius-8); background:var(--ivory); color:var(--navy); }
.vp-interim-legal-notice strong { display:block; color:var(--rose); font-size:var(--type-body-compact); letter-spacing:.06em; text-transform:uppercase; }
.vp-interim-legal-notice p { margin:var(--space-4) 0 0; color:var(--muted); font-size:var(--type-body-compact); line-height:1.5; }

* { box-sizing: border-box; }
html { background: var(--cream); -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; color: var(--ink); font-family: var(--font-sans); background: var(--cream); font-size: var(--type-body); line-height: 1.625; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img, svg, canvas { max-width: 100%; height: auto; }
.sr-only { 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; }
.iv-synthesis-statements h5 { margin:var(--space-8) 0; font:600 var(--type-small)/1.5 var(--font-sans); }
.iv-synthesis-statements ul { margin:var(--space-8) 0; padding-left:var(--space-24); }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--gold)!important;
  outline-offset: 2px!important;
  box-shadow: 0 0 0 6px var(--navy)!important;
}

.vp-brand-logo { display:inline-flex; align-items:center; line-height:0; }
.vp-brand-logo img { display:block; width:100%; height:auto; }
.vp-brand-logo-full { width:232px!important; }
.vp-brand-logo-mark { display:none!important; width:46px!important; height:46px!important; }
.vp-brand-logo-compact { gap:var(--space-8); line-height:1; }
.vp-brand-logo-compact .vp-brand-logo-mark { display:block!important; width:30px!important; height:30px!important; }
.vp-brand-wordmark { display:inline-flex; align-items:baseline; font-family:var(--font-serif); font-size:var(--type-card-title); letter-spacing:-.025em; }
.vp-brand-wordmark b,.vp-brand-wordmark i { font-weight:600; font-style:normal; }
.vp-brand-logo-compact.knockout .vp-brand-wordmark b { color:var(--ivory); }
.vp-brand-logo-compact.knockout .vp-brand-wordmark i { color:var(--ivory); }
.vp-brand-logo-compact.primary .vp-brand-wordmark b,.vp-brand-logo-compact.navy .vp-brand-wordmark b { color:var(--navy); }
.vp-brand-logo-compact.primary .vp-brand-wordmark i,.vp-brand-logo-compact.teal .vp-brand-wordmark i { color:var(--green); }

.vp-route-loading { min-height:100vh; padding:var(--space-32); display:grid; place-items:center; background:var(--cream); }
.vp-route-loading>section { width:min(760px,100%); padding:var(--space-24); border:1px solid var(--green-soft); border-top:4px solid var(--gold); background:var(--ivory); }
.vp-route-loading .vp-brand-logo-full { width:190px!important; }
.vp-route-loading p { margin:var(--space-24) 0 var(--space-12); color:var(--navy); font-family:var(--font-serif); font-size:var(--type-section-title); }
.vp-loading-layout { display:grid; grid-template-columns:120px minmax(0,1fr) 150px; gap:var(--space-16); border-top:1px solid var(--green-soft); padding-top:var(--space-16); }
.vp-loading-layout>i,.vp-loading-layout>span,.vp-loading-layout>span i { display:block; background:var(--line); }
.vp-loading-layout>i { min-height:150px; }
.vp-loading-layout>span { padding:var(--space-16); background:var(--cream); }
.vp-loading-layout>span i { height:14px; margin-bottom:var(--space-16); }
.vp-loading-layout>span i:nth-child(2) { width:82%; }
.vp-loading-layout>span i:nth-child(3) { width:58%; }

@media (max-width:680px) {
  .vp-pre-release-banner { align-items:flex-start; gap:var(--space-8); padding-inline:var(--space-12); font-size:var(--type-small); }
  .vp-brand-logo.responsive-mark .vp-brand-logo-full { display:block!important; width:46px!important; height:46px!important; }
  .vp-loading-layout { grid-template-columns:1fr; }
  .vp-loading-layout>i { display:none; }
}

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

.iv-maintenance-content{border:0;padding:0;margin:0;min-width:0;width:100%}
.iv-maintenance-notice,.iv-save-conflicts,.iv-linked-framework{margin:var(--space-16) var(--space-32);padding:var(--space-16);border:1px solid var(--green-soft);border-radius:var(--radius-12);background:var(--ivory);color:var(--navy-3)}
.iv-maintenance-notice{display:flex;gap:var(--space-24);align-items:center;justify-content:space-between;background:var(--rose-soft);border-color:var(--gold-light)}
.iv-maintenance-notice p{margin:var(--space-8) 0}.iv-maintenance-notice button{margin:var(--space-4)}
.iv-maintenance-notice.iv-save-permission-notice{margin-inline-end:var(--space-64)}
.iv-save-conflicts summary{font-weight:700;cursor:pointer}.iv-save-conflicts fieldset{min-width:0;margin:var(--space-16) 0;border:1px solid var(--green-soft);border-radius:var(--radius-8);padding:var(--space-16)}
.iv-conflict-copies{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16)}.iv-conflict-copies label{min-width:0}.iv-conflict-copies pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;overflow:auto;font:inherit;background:var(--white);padding:var(--space-12);border-radius:var(--radius-8)}.iv-conflict-copies input{width:auto;margin-right:var(--space-8)}
.iv-framework-editor{min-width:0}.iv-framework-editor output{display:block;font-weight:700;margin:var(--space-16) 0}.iv-framework-coverage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8);margin-bottom:var(--space-16)}
.iv-framework-coverage>div{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-12);background:var(--ivory);border:1px solid var(--green-soft);border-radius:var(--radius-8)}.iv-framework-coverage .addressed{background:var(--cream);border-color:var(--green-soft)}.iv-framework-coverage .not_material{background:var(--cream);border-color:var(--gold-light)}.iv-framework-coverage button{font-size:var(--type-small);padding:var(--space-4);min-height:32px}
.iv-framework-row{min-width:0;margin:var(--space-16) 0;padding:var(--space-16);border:1px solid var(--green-soft);border-radius:var(--radius-12)}.iv-framework-row legend{font-weight:700;padding:0 var(--space-8)}.iv-framework-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-12)}.iv-framework-fields label{display:flex;flex-direction:column;min-width:0;gap:var(--space-4)}.iv-framework-fields .wide{grid-column:1/-1}.iv-framework-fields input,.iv-framework-fields select,.iv-framework-fields textarea{width:100%;min-width:0}.iv-framework-row>button{margin-top:var(--space-12)}.iv-preserved-prose{white-space:pre-wrap;overflow-wrap:anywhere}.iv-linked-framework{margin:0 0 var(--space-16)}
@media(max-width:650px){.iv-maintenance-notice{display:block}.iv-maintenance-notice,.iv-save-conflicts{margin:var(--space-12);padding:var(--space-12)}.iv-conflict-copies,.iv-framework-fields{grid-template-columns:1fr}.iv-framework-coverage{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Brand v1.1 shared accessibility primitives. */
:where(small,sub,sup) { font-size:var(--type-micro); }
:where(input,select,textarea,button) { font-family:var(--font-sans); }
:where(button,[role="button"],summary) { min-height:44px!important; min-width:44px!important; }
:where(input,select,textarea):not([type="checkbox"]):not([type="radio"]):not([type="range"]) { font-size:var(--type-body)!important; min-height:48px; }
:where(input[type="checkbox"],input[type="radio"]) { width:24px!important; height:24px!important; min-width:24px; flex:none; accent-color:var(--navy); }
:where(label):has(>input[type="checkbox"],>input[type="radio"]) { min-height:44px; }
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible { outline:3px solid var(--gold)!important; outline-offset:3px!important; box-shadow:0 0 0 6px var(--navy)!important; }
:where(button,input,select,textarea):disabled { background:var(--line)!important; color:var(--muted)!important; opacity:1!important; cursor:not-allowed; }
.vp-skip { position:fixed; top:var(--space-8); left:var(--space-8); transform:translateY(-180%); z-index:20000; min-height:44px; padding:var(--space-8) var(--space-16); background:var(--ivory); color:var(--navy); font-weight:700; }
.vp-skip:focus { transform:none; }
.vp-boot-watchdog { position:fixed; left:var(--space-16); right:var(--space-16); bottom:calc(var(--space-16) + env(safe-area-inset-bottom, 0px)); z-index:19000; display:grid; gap:var(--space-8); max-width:560px; margin-inline:auto; padding:var(--space-16); border:1px solid var(--line); border-radius:var(--radius-8); background:var(--ivory); color:var(--navy); font:400 var(--type-body)/1.5 var(--font-sans); box-shadow:var(--shadow); }
.vp-boot-watchdog>div { display:flex; flex-wrap:wrap; gap:var(--space-8); }
.vp-boot-watchdog button { min-height:var(--space-48); padding:var(--space-8) var(--space-16); border:1px solid var(--navy); border-radius:var(--radius-8); background:var(--white); color:var(--navy); font:700 var(--type-body)/1.2 var(--font-sans); cursor:pointer; }
.vp-boot-watchdog button:first-child { background:var(--navy); color:var(--white); }
.vp-sr-only { 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; }
body .vp-version-notice { right:var(--space-8); bottom:calc(var(--space-16) + env(safe-area-inset-bottom)); left:auto; max-width:calc(100% - 16px); gap:var(--space-8); padding:var(--space-4) var(--space-8); min-height:52px; font-size:var(--type-micro); line-height:1.2; }
body .vp-version-notice span { white-space:nowrap; }
body .vp-version-notice button { flex:none; white-space:nowrap; min-height:44px; padding:var(--space-4) var(--space-8); font:600 var(--type-small)/1.5 var(--font-sans); }
body .vp-version-notice button:last-child { background:transparent; color:var(--ivory); }
.vp-skeleton,[role="status"].vp-workspace-loading { color:var(--muted); padding:var(--space-24); border-radius:var(--radius-8); background:var(--cream); }
.vp-skeleton::before { content:""; display:block; width:min(12rem,80%); height:8px; margin-bottom:var(--space-16); background:var(--line); border-radius:var(--radius-4); }
body .vp-dialog-backdrop,body .vp-profile-scrim { background:rgb(from var(--navy) r g b / .48); }
body .vp-pre-release-banner { padding-top:calc(var(--space-8) + env(safe-area-inset-top)); }
body .vp-pre-release-banner strong { font:600 var(--type-micro)/1.5 var(--font-mono); border-radius:var(--radius-4); }
body .vp-profile-modal { padding-top:calc(var(--space-16) + env(safe-area-inset-top)); padding-bottom:calc(var(--space-16) + env(safe-area-inset-bottom)); }
body .vp-profile-settings { font-size:var(--type-body); }
body .vp-profile-settings .vp-capability-radios { display:block; padding:0; border:0; }
body .vp-profile-settings .vp-capability-radios>legend { font:600 var(--type-body)/1.5 var(--font-sans); }
body .vp-capability-radios>fieldset { margin:var(--space-16) 0; border:0; padding:0; min-width:0; }
body .vp-capability-radios>fieldset>legend { padding:0; margin-bottom:var(--space-8); font:600 var(--type-body)/1.5 var(--font-sans); }
body .vp-capability-radios .vp-rating-options { display:flex; gap:var(--space-4); flex-wrap:wrap; }
body .vp-capability-radios .vp-rating-options label { position:relative; display:flex; align-items:center; justify-content:center; gap:var(--space-4); min-width:56px; min-height:44px; padding:var(--space-4); border:1px solid var(--muted); border-radius:var(--radius-4); background:var(--white); color:var(--navy); cursor:pointer; font-size:var(--type-body); }
body .vp-capability-radios .vp-rating-options label:has(:checked) { background:var(--green-soft); border:2px solid var(--green); }
body .vp-capability-radios .vp-rating-options label>span { padding:0; }
.vp-rating-key { display:flex; flex-wrap:wrap; column-gap:var(--space-32); row-gap:var(--space-8); padding-left:var(--space-24); font-size:var(--type-small); }
.vp-context-conflict { padding:var(--space-16); border:2px solid var(--gold); background:var(--gold-light); color:var(--navy); }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
body :where(input[type="checkbox"],input[type="radio"]) { min-height:24px!important; height:24px!important; }
body .vp-profile-inputs { min-width:0; margin:0; padding:0; border:0; }
body .iv-topbar-brand { display:flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; }

html { font-synthesis:none; }
body .iv-bmc-footnote>a { display:inline-flex; align-items:center; min-height:44px; }
