/* Shared UI palette. Fixed device and artwork colours have explicit, descriptive roles. */
:root {
  --color-paper: #f5f2e9;
  --color-paper-raised: #fbf8f1;
  --color-ink: #1f2a23;
  --color-ink-muted: #4e5c4c;
  --color-line: #d6d2c4;
  --color-green: #365b40;
  --color-green-deep: #25352d;
  --color-green-soft: #e0e8dd;
  --color-copper: #8c5126;
  --color-white: #ffffff;
  --color-black: #000000;
  /* Fixed art and device roles do not change with the chrome theme. */
  --art-book-shadow: #543c24;
  --art-book-spine: #5d3625;
  --art-desk-fallback: #7d684c;
  --art-diagram-teal: #236870;
  --art-game-ready: #d8ff94;
  --art-game-ready-bright: #d6fa9c;
  --art-game-ready-glow: #c1ed84;
  --art-game-ready-ring: #8ab466;
  --art-game-timing-zone: #9ebd7c;
  --art-garden-stage: #817f65;
  --art-plant-label-border: #c2ab7f;
  --art-plant-label-hole: #968256;
  --art-plant-label-paper: #f7e7be;
  --art-plant-label-stake: #cfb783;
  --art-seed-packet-border: #cbbb8e;
  --art-seed-packet-number: #796e4c;
  --art-sky-day: #a4c2cd;
  --art-spiral-orange: #ffc074;
  --art-spiral-teal: #50e4df;
  --device-laptop-focus: #f5d5a4;
  --device-laptop-pool-icon: #a0d1d2;
  --device-laptop-tank-icon: #c1b495;
  --device-phone-action-ink: #26362b;
  --device-phone-address: #e5c89d;
  --device-phone-background: #1e2522;
  --device-phone-button: #2c3730;
  --device-phone-button-border: #576257;
  --device-phone-button-ink: #fff4de;
  --device-phone-camera: #070a0c;
  --device-phone-camera-ring: #111719;
  --device-phone-focus: #f3d294;
  --device-phone-footnote: #b9c1b7;
  --device-phone-heading: #fff5e4;
  --device-phone-ink: #f9f1df;
  --device-phone-location: #b5c0b5;
  --device-phone-monogram: #d6b382;
  --device-phone-monogram-ink: #282d25;
  --device-phone-primary: #e5c596;
  --device-phone-secondary: #e1ddcf;
  --object-focus-edge: #142e28;
  --object-focus-rim: #fff8dc;
  --object-halo-cool: #cfedff;
  --object-halo-warm: #ffe6a0;
  --object-label-action: #ffe1ac;
  --object-label-border: #d8e5c9;
  --object-label-ink: #fffaf0;
  --object-label-surface: #20352c;
  --object-open-badge: #fff6dc;
  --object-rim-cool: #e7f7ff;
  --object-rim-warm: #fff1cb;
  --object-shadow: #172016;
  /* Explicit visitor-selected night chrome; paper close-ups keep light ink roles. */
  --chrome-night-paper: #1c2420;
  --chrome-night-paper-raised: #24302a;
  --chrome-night-ink: #ece6d6;
  --chrome-night-ink-muted: #b9c2b3;
  --chrome-night-line: #3a463e;
  --chrome-night-green: #9cc3a4;
  --chrome-night-green-soft: #2e3d33;
  --chrome-night-copper: #e0a36f;
  --chrome-switch-track: var(--color-ink-muted);
  --chrome-switch-knob: var(--color-paper-raised);
  --chrome-switch-active-knob: var(--color-paper-raised);
  --font-ui: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --font-reading: Georgia,"Times New Roman",serif;
  --ui-font: var(--font-ui);
  --text-eyebrow: 11px;
  --text-xs: 12px;
  --text-sm: 14px;
  --text-base: 16px;
  --text-lg: 18px;
  --text-xl: 22px;
  --text-heading: 28px;
  --text-display: 36px;
  --text-hero: 48px;
  --text-ui: 15px;
  --radius-control: 8px;
  --control-min: 44px;
  --paper-ink: var(--color-green-deep);
  --paper-muted: var(--color-ink-muted);
  --paper-green: var(--color-green);
  --paper-accent: var(--color-copper);
}

/* Scope the theme to chrome, never to the photo paper or device screens. */
body[data-world-ready="true"][data-world-light="night"] :is(.world-header,.world-dock) {
  --color-paper: var(--chrome-night-paper);
  --color-paper-raised: var(--chrome-night-paper-raised);
  --color-ink: var(--chrome-night-ink);
  --color-ink-muted: var(--chrome-night-ink-muted);
  --color-line: var(--chrome-night-line);
  --color-green: var(--chrome-night-green);
  --color-green-soft: var(--chrome-night-green-soft);
  --color-copper: var(--chrome-night-copper);
  --color-green-deep: var(--chrome-night-green);
  --focus: var(--chrome-night-copper);
  --chrome-switch-track: var(--chrome-night-line);
  --chrome-switch-knob: var(--chrome-night-ink);
  --chrome-switch-active-knob: var(--chrome-night-paper);
}
