/* Screen-only semantic overrides: the accepted day and print palettes stay intact. */
@media screen {
 html[data-display-mode=day]{color-scheme:light;}
 html[data-display-mode=night] {
  color-scheme:dark;
  --night-canvas:color-mix(in srgb,var(--sky-skyNight,#35394f) 40%,#111117);
  --night-surface:color-mix(in srgb,var(--sky-surfaceTint,#fff7ed) 8%,var(--night-canvas));
  --color-ink:#f5f1f4;--color-ink-soft:#d3cbd6;--color-muted:#c6bdce;--color-ink-muted:#c6bdce;
  --color-accent:color-mix(in srgb,var(--sky-accent,#945649) 38%,#fff) !important;
  --color-accent-strong:color-mix(in srgb,var(--sky-accentSecondary,#655d9f) 38%,#fff) !important;
  --color-success:#9cd9ba;--color-danger:#ffadb9;--color-focus:#b8cbff;
  --surface-canvas:var(--night-canvas) !important;
  --surface-soft:var(--night-surface) !important;
  --surface-raised:color-mix(in srgb,var(--night-surface) 92%,white) !important;
  --surface-border:#ffffff30;--surface-scrim:#08080fb3;
  --glass-fill:color-mix(in srgb,var(--night-surface) 85%,transparent) !important;
  --glass-border:#ffffff30;--glass-highlight:#ffffff12;
  --material-content:linear-gradient(145deg,var(--night-surface),var(--surface-raised));
  --material-control:var(--glass-fill);--material-modal:var(--surface-raised);--material-edge:var(--surface-border);
  --shadow-soft:0 12px 32px #0003;
 }
 html[data-display-mode=night],html[data-display-mode=night] body,
 html[data-display-mode=night] :is(#loadingOverlay,#authGate,.shared-horizon){background-color:var(--night-canvas) !important;color:var(--color-ink);}
 html[data-display-mode=night] .shared-horizon{background:radial-gradient(ellipse at 10% 30%,color-mix(in srgb,var(--sky-accent) 14%,transparent),transparent 70%),radial-gradient(ellipse at 90% 70%,color-mix(in srgb,var(--sky-accentSecondary) 16%,transparent),transparent 70%),var(--night-canvas) !important;}
 html[data-display-mode=night] .shared-horizon::before{background:radial-gradient(ellipse,color-mix(in srgb,var(--sky-accent) 20%,transparent),transparent 70%);}
 html[data-display-mode=night] .shared-horizon::after{background:radial-gradient(ellipse,color-mix(in srgb,var(--sky-accentSecondary) 18%,transparent),transparent 70%);}
 html[data-display-mode=night] :is(.soft-surface,.us-couple-hero,.v2-question-card,.v2-bottom-nav,.auth-card,.loading-card,dialog,.schedule-calendar){background:var(--material-content) !important;color:var(--color-ink);border-color:var(--surface-border);}
 html[data-display-mode=night] :is(.glass-control,.schedule-days .is-selected,.schedule-editor-group,.schedule-system-row,.schedule-context,.pet-creation){background:var(--surface-soft);color:var(--color-ink);}
 html[data-display-mode=night] :is(.pet-creation h2,.pet-creation label,.pet-eyebrow){color:var(--color-ink);}
 html[data-display-mode=night] #rhythmFull .act-tab.active{background:color-mix(in srgb,var(--sky-accent) 28%,var(--night-surface));color:var(--color-ink);}
 html[data-display-mode=night] :is(input:not([type=range]):not([type=color]),textarea,select){background:var(--surface-soft);color:var(--color-ink);border-color:var(--surface-border);}
 html[data-display-mode=night] :is(button,.primary-button,.secondary-button){color:var(--color-ink);}
 html[data-display-mode=night] :is(.primary-button,[aria-pressed=true],[aria-selected=true]){background:color-mix(in srgb,var(--sky-accent) 26%,var(--night-surface));border-color:var(--color-accent);}
 html[data-display-mode=night] :is(.secondary-button,.text-action){background:var(--surface-soft);}
 html[data-display-mode=night] .v2-person:not(:has(img)){background:var(--surface-raised);color:var(--color-ink);}
 html[data-display-mode=night] :disabled{opacity:.5;}
 html[data-display-mode=night] :is(.error,[aria-invalid=true]){color:var(--color-danger);border-color:var(--color-danger);}
 html[data-display-mode=night] ::placeholder{color:var(--color-muted);opacity:1;}
 html[data-display-mode=night] :focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;}
 html[data-display-mode=night] {
  --identity-self-strong:color-mix(in srgb,var(--identity-self) 35%,white) !important;
  --identity-partner-strong:color-mix(in srgb,var(--identity-partner) 35%,white) !important;
  --identity-us-strong:var(--color-ink-soft) !important;
  --identity-self-soft:color-mix(in srgb,var(--identity-self) 20%,var(--night-surface)) !important;
  --identity-partner-soft:color-mix(in srgb,var(--identity-partner) 20%,var(--night-surface)) !important;
  --identity-us-soft:var(--surface-soft) !important;
 }
}
/* Guided Experience: component-local contrast, without tinting media or sky. */
@media screen {
 html[data-display-mode=night] :is(.memory-home-section,.memory-answer-card,.memory-story-card,.memory-empty){background:var(--surface-raised);border-color:var(--surface-border);}
 html[data-display-mode=night] .memory-home-section :is(time,.memory-section-heading span){color:var(--color-ink-soft);}
 /* Shared Sky uses the accepted day DOM and geometry in both modes.
    Only label colors adapt; the renderer still follows real time and weather. */
 html[data-display-mode=night] .shared-sky-module{--sky-person-ink:color-mix(in srgb,var(--identity-self) 18%,white);--sky-person-partner-ink:color-mix(in srgb,var(--identity-partner) 18%,white);--sky-person-secondary:#f1edf3;--sky-weather-ink:#000;--sky-weather-night-ink:#f5f6fb;}
 html[data-display-mode=night] .shared-sky-person{color:var(--sky-person-ink);}
 html[data-display-mode=night] .shared-sky-person.is-partner{color:var(--sky-person-partner-ink);}
 html[data-display-mode=night] .shared-sky-person span{color:var(--sky-person-secondary);}
 html[data-display-mode=night] .shared-sky-weather-side{color:var(--sky-weather-ink);}
 html[data-display-mode=night] .shared-sky-weather-side[data-tone=dark]{color:var(--sky-weather-night-ink);}
 html[data-display-mode=night] .together-todos .todo-filters button{--filter-ink:var(--color-ink);}
 html[data-display-mode=night] .together-todos .todo-filters [data-todo-filter=me]{--filter-ink:var(--identity-self-strong);}
 html[data-display-mode=night] .together-todos .todo-filters [data-todo-filter=partner]{--filter-ink:var(--identity-partner-strong);}
 /* Keep the accepted day paper, pin and tilt; tint the same paper at night. */
 html[data-display-mode=night] .together-note{--note-paper:#403a2c;background-color:var(--note-paper);background-image:linear-gradient(105deg,transparent 55%,#ffffff09),repeating-linear-gradient(0deg,#ffffff04 0 1px,transparent 1px 4px);border-color:#ffffff12;box-shadow:2px 8px 14px #0004;color:var(--color-ink);}
 html[data-display-mode=night] .together-note[data-note-tint=sky]{--note-paper:#293e49;}
 html[data-display-mode=night] .together-note[data-note-tint=rose]{--note-paper:#49343d;}
 html[data-display-mode=night] .together-note[data-note-tint=lilac]{--note-paper:#3b344b;}
 html[data-display-mode=night] #rhythmAdjuster .rhythm-adjust-row button:not(:disabled){color:var(--color-ink);background:var(--surface-soft);border-color:var(--color-accent);}
 html[data-display-mode=night] #rhythmAdjuster .rhythm-adjust-row button:disabled{color:var(--color-ink-soft);background:var(--surface-soft);border-color:var(--surface-border);opacity:.45;}
}
