:root,[data-theme="light"]{--paper:#faf7f2;--surface:#fffdf9;--sunken:#f2ede4;--ink:#1c1a17;--ink-muted:#655e54;--on-primary:#faf7f2;--line:#e4ddd1;--line-strong:#8f8576;--live:#b42d25;--live-soft:#fbe8e4;--on-live:#ffffff;--ok:#2c6e47;--ok-soft:#e5f0e8;--warn:#8a5a00;--warn-soft:#faefd6;--focus:#1c1a17;--shadow-raised:0 1px 2px rgba(28,26,23,0.06);--shadow-overlay:0 16px 48px rgba(28,26,23,0.16);--ever:#24533f;--ever-soft:#e7efe9;--on-ever:#faf7f2;--gold:#8d6a1d;--gold-soft:#f6ecd2;}
[data-theme="dark"]{--paper:#161412;--surface:#1f1c19;--sunken:#110f0d;--ink:#f3eee6;--ink-muted:#b5ac9f;--on-primary:#161412;--line:#34302b;--line-strong:#6e665b;--live:#ff7a6b;--live-soft:#3b1d19;--on-live:#1a0d0b;--ok:#72c895;--ok-soft:#18291e;--warn:#e6b04a;--warn-soft:#30250f;--focus:#f3eee6;--shadow-raised:0 1px 2px rgba(0,0,0,0.4);--shadow-overlay:0 16px 48px rgba(0,0,0,0.55);--ever:#9fd0b4;--ever-soft:#17271f;--on-ever:#10231a;--gold:#e2c27a;--gold-soft:#2e2414;}
/* Santa events (part 17): the seasonal accents above (--ever, --ever-soft, --on-ever, --gold,
   --gold-soft) are used only where an event's `santa` is true. Family pages for a Santa event get
   class="qg-santa" on <html> from the server and follow the device's light or dark setting. */
@media (prefers-color-scheme: dark){:root.qg-santa:not([data-theme="light"]){--paper:#161412;--surface:#1f1c19;--sunken:#110f0d;--ink:#f3eee6;--ink-muted:#b5ac9f;--on-primary:#161412;--line:#34302b;--line-strong:#6e665b;--live:#ff7a6b;--live-soft:#3b1d19;--on-live:#1a0d0b;--ok:#72c895;--ok-soft:#18291e;--warn:#e6b04a;--warn-soft:#30250f;--focus:#f3eee6;--shadow-raised:0 1px 2px rgba(0,0,0,0.4);--shadow-overlay:0 16px 48px rgba(0,0,0,0.55);--ever:#9fd0b4;--ever-soft:#17271f;--on-ever:#10231a;--gold:#e2c27a;--gold-soft:#2e2414;}}
:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:14px;--radius-pill:999px;--control-sm:32px;--control-md:40px;--control-lg:56px;--topbar-height:64px;--font-serif:"Cormorant Garamond", "Cormorant", Garamond, "Times New Roman", serif;--font-sans:Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;}
.display{font-family:var(--font-serif);font-size:56px;line-height:60px;font-weight:500;letter-spacing:-0.01em;}
.guest-name{font-family:var(--font-serif);font-size:44px;line-height:48px;font-weight:600;}
.heading-1{font-family:var(--font-serif);font-size:32px;line-height:38px;font-weight:600;}
.heading-2{font-family:var(--font-serif);font-size:24px;line-height:30px;font-weight:600;}
.stat{font-family:var(--font-serif);font-size:40px;line-height:44px;font-weight:500;}
.body{font-family:var(--font-sans);font-size:15px;line-height:22px;font-weight:400;}
.body-strong{font-family:var(--font-sans);font-size:15px;line-height:22px;font-weight:600;}
.label{font-family:var(--font-sans);font-size:13px;line-height:18px;font-weight:500;}
.caption{font-family:var(--font-sans);font-size:12px;line-height:16px;font-weight:400;}
.overline{font-family:var(--font-sans);font-size:11px;line-height:16px;font-weight:600;letter-spacing:0.08em;}