:root{--cream:#fdf7f0;--cream-2:#fbebdc;--blush:#fadac8;--blush-2:#f5c8b2;--ink:#463028;--ink-soft:#6b4a3f;--muted:#a06e6e;--faint:#dcb4aa;--accent:#e68264;--accent-dark:#c95e3f;--paper-line:#46302814;--shadow-sm:0 2px 8px #4630280f;--shadow:0 8px 24px #46302814;--shadow-lg:0 20px 60px #4630281f;--serif:"Playfair Display", Georgia, serif;--sans:"Inter", -apple-system, system-ui, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100dvh}body{font-family:var(--sans);color:var(--ink);background:radial-gradient(circle at 85% 10%, #ffc88259 0%, transparent 45%), linear-gradient(180deg, var(--cream) 0%, var(--cream-2) 50%, var(--blush) 100%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern", "liga", "ss01";transition:background 1.2s var(--ease), color 1.2s var(--ease);background-attachment:fixed;font-weight:400;overflow-x:hidden}body.mode-sleep{--cream:#1f1419;--cream-2:#2c1d26;--blush:#38222e;--blush-2:#452a38;--ink:#f5e0cc;--ink-soft:#d9bc9d;--muted:#b88a78;--faint:#6b4458;--accent:#f5a87e;--accent-dark:#e8855a;--paper-line:#f5e0cc1a;--shadow-sm:0 2px 8px #0000004d;--shadow:0 8px 24px #00000059;--shadow-lg:0 20px 60px #00000073;background:radial-gradient(circle at 80% 15%,#f5aa781f 0%,#0000 45%),radial-gradient(circle at 15% 85%,#5a326440 0%,#0000 50%),linear-gradient(#1a0f15 0%,#2c1d26 50%,#38222e 100%)}body.mode-sleep:before{opacity:.3}body:before{content:"";pointer-events:none;mix-blend-mode:multiply;z-index:1;background-image:radial-gradient(circle at 12% 20%,#46302805 .5px,#0000 1px),radial-gradient(circle at 77% 38%,#46302805 .5px,#0000 1px),radial-gradient(circle at 45% 72%,#46302805 .5px,#0000 1px),radial-gradient(circle at 92% 85%,#46302805 .5px,#0000 1px);background-size:150px 150px,180px 180px,200px 200px,220px 220px;position:fixed;inset:0}#root{z-index:2;position:relative}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea{color:inherit;font-family:inherit}.serif{font-family:var(--serif)}.serif-italic{font-family:var(--serif);font-style:italic}.display{font-family:var(--serif);letter-spacing:-.02em;font-style:italic;font-weight:900}.kicker{font-family:var(--sans);letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.muted{color:var(--muted)}.app{flex-direction:column;min-height:100dvh;display:flex}.page{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:32px 40px 140px}.btn{font-family:var(--sans);letter-spacing:.5px;transition:transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:14px 28px;font-size:14px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--ink);color:var(--cream);box-shadow:var(--shadow)}.btn-primary:hover{box-shadow:var(--shadow-lg);background:#2f1f18}.btn-accent{background:var(--accent);color:var(--cream)}.btn-accent:hover{background:var(--accent-dark)}.btn-ghost{color:var(--ink);border:1px solid var(--paper-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff80}.btn-ghost:hover{background:#ffffffbf}.divider{background:var(--paper-line);height:1px;margin:24px 0}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.fade-in{animation:fade-in .6s var(--ease) both}.d-1{animation-delay:50ms}.d-2{animation-delay:.15s}.d-3{animation-delay:.25s}.d-4{animation-delay:.35s}.d-5{animation-delay:.45s}.d-6{animation-delay:.55s}.chip{letter-spacing:.5px;border:1px solid var(--paper-line);color:var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff9;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:12px;font-weight:700;display:inline-flex}.chip .dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.row{align-items:center;display:flex}.col{flex-direction:column;display:flex}.gap-sm{gap:8px}.gap{gap:16px}.gap-lg{gap:24px}.center{justify-content:center;align-items:center}.between{justify-content:space-between}@media (width<=768px){.page{padding:24px 20px 120px}}
