/* VenA shared theme contract v1. Dark is default; data-v-theme="light" opts in.
   Load after page CSS. Geometry/content/authentication are deliberately unchanged. */
@import url("/web/design/vena-dark.css?v=20261005-night-watch-v2");

/* One content width: direct first-div wrappers fill main, not a second narrow lane.
   Keep the outer main/header alignment and inner cards, images and prose limits. */
html[data-v-theme] :is(body.vena-ui,body:has(> .v-topbar)) main > div:first-of-type {
  width:100%;max-width:none;min-width:0;box-sizing:border-box;
}

html[data-v-theme] :is(body.vena-ui,body:has(> .v-topbar)) {
  --v-page-background:var(--v-bg);--v-topbar-background:rgb(13 18 25 / .94);--v-footer-background:rgb(13 18 25 / .7);
  --v-card-background:rgb(255 255 255 / .035);--v-hover-background:rgb(255 255 255 / .055);
  --v-control-background:linear-gradient(180deg,#243040,#1d2735);
  --v-rollout-feature:#1a383c;--v-rollout-status:#254c4f;--v-rollout-input:#1b2c3b;
  --v-rollout-accent:#8cdddf;--v-rollout-on-accent:#12343a;--v-rollout-muted:#adc0ce;
  --ink:var(--v-text);--muted:var(--v-muted);--surface:var(--v-surface);--mist:var(--v-surface-raised);
  --line:var(--v-line);--accent:var(--v-brand);--accent-deep:var(--v-info-text);--shadow:var(--v-shadow);
}
html[data-v-theme="light"] :is(body.vena-ui,body:has(> .v-topbar)) {
  color-scheme:light;
  --v-bg:#f6f8f4;--v-surface:#fff;--v-surface-raised:#edf4f0;--v-surface-input:#fff;
  --v-text:#14201d;--v-muted:#53625f;--v-muted-soft:#63746c;
  --v-line:#d7e3dd;--v-line-strong:#b9cbc2;--v-input-line:#9badA3;
  --v-brand:#0f6f5f;--v-brand-deep:#084d42;--v-on-brand:#fff;
  --v-blue:#346783;--v-blue-deep:#254e65;--v-focus:#086856;
  --v-info-bg:#e4f1f2;--v-info-text:#185b64;--v-success-bg:#e4f3e9;--v-success-text:#205d3b;
  --v-warning-bg:#fff1dd;--v-warning-text:#774400;--v-danger-bg:#fcebea;--v-danger-text:#922d23;
  --v-purple-bg:#f0eafa;--v-purple-text:#62417e;--v-shadow:0 12px 32px rgb(16 32 29 / .09);
  --v-topbar-background:rgb(255 255 255 / .96);--v-footer-background:#edf4f0;
  --v-card-background:#fff;--v-hover-background:#edf4f0;--v-control-background:#edf4f0;
  --v-rollout-feature:#e4f1f2;--v-rollout-status:#d2e9e5;--v-rollout-input:#fff;
  --v-rollout-accent:#0f6f5f;--v-rollout-on-accent:#fff;--v-rollout-muted:#53625f;
  background:var(--v-bg);color:var(--v-text);
}
html[data-v-theme] :is(.vena-ui,body:has(> .v-topbar)) .v-topbar {background:var(--v-topbar-background)}
html[data-v-theme] :is(.vena-ui,body:has(> .v-topbar)) .v-footer {background:var(--v-footer-background)}
html[data-v-theme] :is(.vena-ui,body:has(> .v-topbar)) :is(.v-card,.v-widget,.v-card--flat) {background:var(--v-card-background)}
html[data-v-theme] body:has(> .v-topbar) > main.v-home .v-card {background:var(--v-card-background)}
html[data-v-theme] :is(.vena-ui,body:has(> .v-topbar)) :is(.v-card--interactive:hover,.v-navlinks a:hover,.v-mobile-nav a:hover) {background:var(--v-hover-background)}
html[data-v-theme] :is(.vena-ui,body:has(> .v-topbar)) .v-button:not(.v-button--primary):not(.v-button--secondary):not(.v-button--danger):not(.v-button--ghost) {background:var(--v-control-background)}
html[data-v-theme] :is(body.vena-ui,body:has(> .v-topbar)) .v-theme-toggle {
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 2.75rem;
  width:2.75rem;height:2.75rem;min-height:2.75rem;padding:0;margin:0;
  border:1px solid var(--v-line-strong);border-radius:.875rem;background:var(--v-surface-raised);
  color:var(--v-text);font:1.5rem/1 system-ui,sans-serif;cursor:pointer;box-shadow:none;
}
html[data-v-theme] :is(body.vena-ui,body:has(> .v-topbar)) .v-theme-toggle:focus-visible {outline:3px solid var(--v-focus);outline-offset:3px}
html[data-v-theme] body :is(.v-brand,.topbar .brand) .v-logo-light{display:none}
html[data-v-theme="light"] body :is(.v-brand,.topbar .brand) .v-logo-dark{display:none}
html[data-v-theme="light"] body :is(.v-brand,.topbar .brand) .v-logo-light{display:block}
html[data-v-theme] :is(.v-brand,.topbar .brand) img{filter:none}
@media(max-width:62rem) {html[data-v-theme] body:has(> .v-topbar) .v-navlinks{display:none}html[data-v-theme] body:has(> .v-topbar) .v-mobile-nav{display:block;margin-left:auto}}
@media(max-width:24rem) {html[data-v-theme] body:has(> .v-topbar) .v-nav{gap:.5rem}html[data-v-theme] body:has(> .v-topbar) .v-brand img{max-width:8rem}}

/* Authenticated app forum: retain its compact header, controls and IDs. */
html[data-v-theme] body.v-forum-app {background:var(--v-bg);color:var(--v-text);--accent:var(--v-info-text);--accent-deep:var(--v-info-text)}
html[data-v-theme="light"] body.v-forum-app {--accent:var(--v-brand);--accent-deep:var(--v-brand-deep)}
html[data-v-theme] body.v-forum-app .topbar {background:var(--v-topbar-background);gap:.75rem}
html[data-v-theme] body.v-forum-app .topbar .brand {margin-right:auto}
html[data-v-theme] body.v-forum-app .topbar .brand{display:flex;align-items:center;gap:.5rem;min-width:0}
html[data-v-theme] body.v-forum-app .topbar .brand img{width:6rem;height:auto;object-fit:contain;flex-shrink:0}
@media(max-width:30rem){html[data-v-theme] body.v-forum-app .topbar .brand img{width:5rem}html[data-v-theme] body.v-forum-app .topbar .brand span{font-size:.85rem}html[data-v-theme] body.v-forum-app .topbar .quiet{white-space:nowrap}}
@media(max-width:24rem){html[data-v-theme] body.v-forum-app .topbar{gap:.5rem}html[data-v-theme] body.v-forum-app .topbar .brand img{width:4rem}html[data-v-theme] body.v-forum-app .topbar .brand span{font-size:.8rem}}
/* Keep the established forum typography, not the website's compact heading reset. */
html[data-v-theme] body.v-forum-app{font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
html[data-v-theme] body.v-forum-app :is(h1,h2,h3,h4){letter-spacing:normal;text-wrap:wrap;font-weight:700}
html[data-v-theme] body.v-forum-app .intro h1{font-size:clamp(2rem,6vw,3.4rem);line-height:1.08;margin:0}
html[data-v-theme] body.v-forum-app h2{font-size:1.5em;line-height:inherit}
html[data-v-theme] body.v-forum-app h3{font-size:1.17em;line-height:inherit}
html[data-v-theme] body.v-forum-app p{margin:1em 0}
html[data-v-theme] body.v-forum-app button{font:inherit;font-weight:850}
html[data-v-theme] body.v-forum-app .toolbar label{min-width:max-content}
html[data-v-theme] body.v-forum-app .toolbar select{min-width:0}
html[data-v-theme] body.v-forum-app .eyebrow{margin:0 0 7px}
html[data-v-theme] body.v-forum-app .panel h2{margin:0 0 8px}
html[data-v-theme] body.v-forum-app .role{margin:0}
html[data-v-theme] body.v-forum-app .topic h3{margin:5px 0;font-size:1.15rem}
html[data-v-theme] body.v-forum-app .topic p{margin:7px 0 0}
html[data-v-theme] body.v-forum-app .detail-head h2{margin:4px 0 6px}
html[data-v-theme] body.v-forum-app .dialog-head h2{margin:0}
@media(max-width:30rem) {html[data-v-theme] body.v-forum-app .topbar .brand{font-size:1rem;white-space:nowrap}html[data-v-theme] body.v-forum-app .topbar .quiet{font-size:.8rem;padding-inline:.25rem}}
html[data-v-theme] body.v-forum-app :is(.topic,.panel,dialog,input,select,textarea) {background:var(--v-surface);color:var(--v-text);border-color:var(--v-line-strong)}
html[data-v-theme] body.v-forum-app .topic:hover {border-color:var(--v-focus)}
html[data-v-theme] body.v-forum-app dialog::backdrop {background:rgb(0 0 0 / .55)}
html[data-v-theme] body.v-forum-app .primary {background:var(--v-brand);color:var(--v-on-brand)}
html[data-v-theme] body.v-forum-app .primary:hover {background:var(--v-brand-deep)}
html[data-v-theme] body.v-forum-app :is(.danger,.message) {color:var(--v-danger-text)}
html[data-v-theme] body.v-forum-app .danger {background:var(--v-danger-bg);border:1px solid var(--v-danger-text)}
html[data-v-theme] body.v-forum-app .message.success {color:var(--v-success-text)}
html[data-v-theme] body.v-forum-app :is(input,textarea)::placeholder {color:var(--v-muted-soft)}
html[data-v-theme] body.v-forum-app :focus-visible {outline-color:var(--v-focus)}
html[data-v-theme] body.v-forum-app .skip-link {background:var(--v-surface-raised);color:var(--v-text)}

/* Aid uses its existing geometry/typography and role/DB workflow unchanged. */
html[data-v-theme="light"] body.aid-page .aid-night-watch {--aid-surface:var(--v-surface);--aid-surface-2:var(--v-surface-raised);--aid-line:var(--v-line);--aid-muted:var(--v-muted);--aid-cyan:var(--v-info-text);color:var(--v-text)}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(.aid-nw-panel,.aid-nw-role-panel,.aid-result,.aid-tile,.aid-category-link,.aid-flow-category,.aid-flow-all,.aid-flow-role-choices a) {background:var(--v-surface);color:var(--v-text);border-color:var(--v-line);box-shadow:none}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(h1,h2,h3,strong,.aid-steps li,.aid-national-emergency) {color:var(--v-text)}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(.aid-search input,.aid-search button) {background:var(--v-surface-input);color:var(--v-text);border-color:var(--v-input-line)}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(.aid-nw-info,.aid-source-info,.aid-nw-choice-icon,.aid-nw-preview-icon,.aid-flow-symbol,.aid-category-icon) {background:var(--v-info-bg);color:var(--v-info-text);border-color:var(--v-line-strong)}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(.aid-nw-info > span,.aid-source-info-icon) {background:var(--v-surface-raised);color:var(--v-info-text)}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(.aid-nw-official,.aid-flow-warning,.aid-nw-guide .aid-notice,.aid-contact) {background:var(--v-danger-bg);border-color:#e5c0bd;color:var(--v-text)}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(.aid-nw-official a,.aid-compact-contact a,.aid-nw-official-link,.aid-nw-back) {color:var(--v-danger-text);background:transparent}
html[data-v-theme="light"] body.aid-page .aid-night-watch :is(.aid-result[aria-current],.aid-category-link[aria-current],.aid-flow-role-choices [aria-current],.aid-result:hover,.aid-category-link:hover) {background:var(--v-info-bg);border-color:var(--v-focus)}
html[data-v-theme="light"] body.aid-page .aid-night-watch .aid-flow-all.aid-flow-avoid {background:var(--v-warning-bg);border-color:#c9984d}
html[data-v-theme="light"] body.aid-page .aid-night-watch .aid-flow-avoid :is(h3,li) {color:var(--v-warning-text);border-color:#d9b67e}

/* Rollout: replace fixed dark colors without affecting switches/countdowns. */
html[data-v-theme] body #vena-rollout {color:var(--v-text)}
html[data-v-theme] body #vena-rollout :is(.vr-muted,.vr-small,.vr-note,.vr-step-text small,.vr-upcoming small) {color:var(--v-rollout-muted)}
html[data-v-theme] body #vena-rollout .vr-eyebrow {color:var(--v-info-text)}
html[data-v-theme] body #vena-rollout :is(select,input:not([type=checkbox]),.vr-upcoming,.vr-signup) {background:var(--v-rollout-input);color:var(--v-text);border-color:var(--v-input-line)}
html[data-v-theme] body #vena-rollout .vr-feature {background:var(--v-rollout-feature);border-color:var(--v-line-strong)}
html[data-v-theme] body #vena-rollout .vr-status {background:var(--v-rollout-status);color:var(--v-text)}
html[data-v-theme] body #vena-rollout :is(.vr-primary,.vr-dot.current) {background:var(--v-rollout-accent);color:var(--v-rollout-on-accent)}
html[data-v-theme] body #vena-rollout :is(.vr-secondary,.vr-dot) {background:var(--v-surface-raised);color:var(--v-text)}
html[data-v-theme] body #vena-rollout .vr-share {border-color:var(--v-line)}
html[data-v-theme] body #vena-rollout .vr-error {background:var(--v-warning-bg);color:var(--v-warning-text);border-color:var(--v-warning-text)}
html[data-v-theme] body #vena-rollout :focus-visible {outline-color:var(--v-focus)}
html[data-v-theme] body #vena-rollout .vr-consent input {accent-color:var(--v-rollout-accent)}
@media print {html[data-v-theme] :is(body.vena-ui,body:has(> .v-topbar)){background:#fff;color:#111}html[data-v-theme] .v-theme-toggle{display:none}}
