:root{--paper-50:#fbf6ea;--paper-100:#f6efde;--paper-200:#efe6d0;--paper-300:#e5d9bd;--paper-400:#c9b994;--ink-900:#241b16;--ink-800:#2e2619;--ink-700:#4b3e2a;--ink-600:#6b5a3f;--ink-500:#8e7a58;--ink-400:#b7a278;--ink-300:#d8c8a0;--sky-base:#3a7ea8;--sky-deep:#26587a;--sky-wash:#d6e6ef;--moss-base:#5a7a3f;--moss-deep:#3b5528;--moss-wash:#dde6cf;--sunset-base:#c15a2b;--sunset-deep:#8a3d18;--sunset-wash:#f3d9c6;--twilight-base:#7a4569;--twilight-deep:#542e47;--twilight-wash:#e8d5e2;--sun:#e8b84a;--rain:#7aa9c8;--leaf:#8ab368;--berry:#b25a66;--fg-primary:var(--ink-800);--fg-secondary:var(--ink-700);--fg-tertiary:var(--ink-600);--fg-muted:var(--ink-500);--fg-on-accent:var(--paper-50);--bg-page:var(--paper-100);--bg-raised:var(--paper-50);--bg-sunken:var(--paper-200);--bg-deep:var(--paper-300);--bg-disabled:var(--paper-400);--border-subtle:var(--ink-300);--border-ink:var(--ink-400);--border-strong:var(--ink-700);--accent:var(--sky-base);--accent-deep:var(--sky-deep);--accent-wash:var(--sky-wash);--accent-ink:var(--paper-50);--status-ok:var(--moss-base);--status-warn:var(--sunset-base);--status-danger:var(--berry);--font-display:var(--font-literata),"Iowan Old Style","Georgia",serif;--font-body:var(--font-nunito),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-subheading:var(--font-shantell),var(--font-nunito),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-hand:var(--font-caveat),"Segoe Script",cursive;--font-mono:ui-monospace,"SF Mono",Menlo,monospace;--font-modal-headline:var(--font-literata),"Iowan Old Style","Georgia",serif;--font-modal-subheading:var(--font-plex-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-modal-body:var(--font-plex-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--fs-caption:13px;--fs-label:15px;--fs-body:17px;--fs-body-lg:19px;--fs-h4:22px;--fs-h3:28px;--fs-h2:40px;--fs-h1:56px;--fs-display:72px;--fs-mega:96px;--lh-tight:1.08;--lh-snug:1.25;--lh-body:1.5;--lh-loose:1.7;--tracking-tight:-0.02em;--tracking-normal:0;--tracking-wide:0.02em;--tracking-caps:0.08em;--weight-heading:600;--tracking-heading:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-14:56px;--space-18:72px;--space-24:96px;--app-page-max:880px;--app-page-gutter:var(--space-6);--app-page-top:var(--space-6);--app-page-bottom:var(--space-24);--app-page-pad-y:var(--space-10);--app-page-pad-x:var(--space-10);--app-page-gap:var(--space-6);--breakpoint-mobile:720px;--app-page-gutter-sm:var(--space-4);--app-page-pad-sm:var(--space-6);--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-xl:32px;--radius-pill:999px;--shadow-raised:0 1px 0 rgba(36,27,22,.18),0 2px 4px rgba(36,27,22,.10),0 8px 14px -6px rgba(36,27,22,.14);--shadow-card:0 1px 0 rgba(36,27,22,.14),0 4px 10px rgba(36,27,22,.08),0 18px 32px -16px rgba(36,27,22,.18);--shadow-hero:0 1px 0 rgba(36,27,22,.18),0 8px 20px rgba(36,27,22,.10),0 40px 60px -30px rgba(36,27,22,.28);--shadow-pressed:inset 0 2px 0 rgba(36,27,22,.14),inset 0 -1px 0 rgba(255,255,255,.25),0 1px 0 rgba(36,27,22,.20);--bevel-top:inset 0 1px 0 rgba(255,253,245,.65);--bevel-bottom:inset 0 -2px 0 rgba(36,27,22,.14);--bevel-all:inset 0 1px 0 rgba(255,253,245,.65),inset 0 -2px 0 rgba(36,27,22,.14);--focus-ring:0 0 0 3px var(--paper-50),0 0 0 6px var(--accent);--ease-gentle:cubic-bezier(.2,.8,.2,1);--ease-settle:cubic-bezier(.34,1.2,.64,1);--dur-fast:120ms;--dur-feedback:180ms;--dur-entry:320ms;--dur-narrative:640ms;--texture-paper:radial-gradient(ellipse at 50% 0%,rgba(255,253,245,.5) 0%,transparent 60%),radial-gradient(ellipse at 100% 100%,rgba(201,185,148,.18) 0%,transparent 50%),repeating-linear-gradient(0deg,rgba(75,62,42,.012) 0px,rgba(75,62,42,.012) 1px,transparent 1px,transparent 3px),repeating-linear-gradient(90deg,rgba(75,62,42,.012) 0px,rgba(75,62,42,.012) 1px,transparent 1px,transparent 3px),var(--paper-100);--texture-leather:radial-gradient(ellipse at 30% 20%,rgba(255,253,245,.08) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(36,27,22,.22) 0%,transparent 60%),var(--accent-deep)}[data-theme=sky]{--accent:var(--sky-base);--accent-deep:var(--sky-deep);--accent-wash:var(--sky-wash)}[data-theme=moss]{--accent:var(--moss-base);--accent-deep:var(--moss-deep);--accent-wash:var(--moss-wash)}[data-theme=sunset]{--accent:var(--sunset-base);--accent-deep:var(--sunset-deep);--accent-wash:var(--sunset-wash)}[data-theme=twilight]{--accent:var(--twilight-base);--accent-deep:var(--twilight-deep);--accent-wash:var(--twilight-wash)}body,html{background:var(--texture-paper);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:500;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body,h1,h2,h3,h4,html{color:var(--fg-primary)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-heading);line-height:var(--lh-tight);letter-spacing:var(--tracking-heading);margin:0;text-wrap:balance}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-h4)}.display{font-size:var(--fs-display);font-weight:800;line-height:var(--lh-tight);letter-spacing:var(--tracking-tight)}.display,.mega{font-family:var(--font-display)}.mega{font-size:var(--fs-mega);font-weight:900;line-height:.96;letter-spacing:-.03em}p{margin:0;text-wrap:pretty}.caption{letter-spacing:var(--tracking-wide)}.caption,.eyebrow{font-size:var(--fs-caption);color:var(--fg-tertiary)}.eyebrow{font-family:var(--font-body);font-weight:700;letter-spacing:var(--tracking-caps);text-transform:uppercase}.hand{font-family:var(--font-hand);font-weight:600}a{color:var(--accent-deep);-webkit-text-decoration-color:color-mix(in oklab,var(--accent) 40%,transparent);text-decoration-color:color-mix(in oklab,var(--accent) 40%,transparent);text-decoration-thickness:2px;text-underline-offset:3px;transition:-webkit-text-decoration-color var(--dur-feedback) var(--ease-gentle);transition:text-decoration-color var(--dur-feedback) var(--ease-gentle);transition:text-decoration-color var(--dur-feedback) var(--ease-gentle),-webkit-text-decoration-color var(--dur-feedback) var(--ease-gentle)}a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-decoration-thickness:3px}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}::selection{background:var(--accent-wash);color:var(--fg-primary)}