:root{--bg: oklch(.985 .008 75);--bg-deep: oklch(.965 .012 70);--panel: oklch(.965 .012 70);--card: #ffffff;--ink: oklch(.22 .015 260);--ink-dim: oklch(.5 .012 260);--ink-mute: oklch(.68 .01 260);--hair: oklch(.9 .012 70);--hair-soft: oklch(.94 .01 70);--clay: oklch(.62 .09 50);--clay-soft: oklch(.92 .04 60);--clay-deep: oklch(.45 .09 50);--sage: oklch(.58 .07 155);--sage-soft: oklch(.93 .04 155);--rose: oklch(.6 .11 25);--amber: oklch(.7 .1 75);--serif: "Newsreader", Georgia, serif;--sans: "Inter Tight", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--ease: cubic-bezier(.3,.7,.4,1)}body[data-palette=cool-mist]{--bg: oklch(.985 .005 220);--bg-deep: oklch(.965 .008 220);--panel: oklch(.965 .008 220);--card: #ffffff;--ink: oklch(.22 .02 240);--ink-dim: oklch(.5 .015 230);--ink-mute: oklch(.68 .012 225);--hair: oklch(.9 .01 220);--hair-soft: oklch(.94 .008 220);--clay: oklch(.55 .13 240);--clay-soft: oklch(.92 .04 240);--clay-deep: oklch(.4 .13 240);--sage: oklch(.58 .09 175);--sage-soft: oklch(.93 .04 175);--rose: oklch(.6 .13 15);--amber: oklch(.7 .11 70)}body[data-palette=forest-earth]{--bg: oklch(.97 .012 95);--bg-deep: oklch(.95 .018 95);--panel: oklch(.95 .018 95);--card: #ffffff;--ink: oklch(.24 .025 130);--ink-dim: oklch(.5 .018 125);--ink-mute: oklch(.68 .015 120);--hair: oklch(.88 .018 100);--hair-soft: oklch(.93 .012 100);--clay: oklch(.5 .11 145);--clay-soft: oklch(.9 .05 145);--clay-deep: oklch(.36 .1 145);--sage: oklch(.62 .1 120);--sage-soft: oklch(.93 .04 120);--rose: oklch(.55 .15 35);--amber: oklch(.7 .12 80)}body[data-palette=graphite-mono]{--bg: oklch(.98 0 0);--bg-deep: oklch(.96 0 0);--panel: oklch(.96 0 0);--card: #ffffff;--ink: oklch(.18 0 0);--ink-dim: oklch(.5 0 0);--ink-mute: oklch(.68 0 0);--hair: oklch(.9 0 0);--hair-soft: oklch(.94 0 0);--clay: oklch(.32 0 0);--clay-soft: oklch(.92 0 0);--clay-deep: oklch(.18 0 0);--sage: oklch(.55 .09 155);--sage-soft: oklch(.93 .04 155);--rose: oklch(.55 .13 25);--amber: oklch(.7 .1 75)}body[data-palette=midnight-ink]{--bg: oklch(.18 .012 260);--bg-deep: oklch(.14 .012 260);--panel: oklch(.22 .014 260);--card: oklch(.26 .014 260);--ink: oklch(.95 .005 260);--ink-dim: oklch(.75 .008 260);--ink-mute: oklch(.55 .01 260);--hair: oklch(.32 .014 260);--hair-soft: oklch(.28 .014 260);--clay: oklch(.72 .13 50);--clay-soft: oklch(.32 .06 50);--clay-deep: oklch(.85 .13 50);--sage: oklch(.7 .13 155);--sage-soft: oklch(.32 .05 155);--rose: oklch(.7 .15 25);--amber: oklch(.78 .13 75)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01" on,"cv11" on;transition:background-color .2s var(--ease),color .2s var(--ease)}.wordmark{font-family:var(--serif);font-weight:400;font-style:italic;font-variation-settings:"opsz" 36;letter-spacing:-.01em;color:var(--ink)}.eyebrow{font-family:var(--mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-mute);margin:0}.display{font-family:var(--serif);font-weight:400;font-variation-settings:"opsz" 60;letter-spacing:-.02em;line-height:1.05;margin:0}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-pill);font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--hair);background:var(--card);color:var(--ink-dim)}.pill-clay{background:var(--clay-soft);border-color:transparent;color:#6d3714}.pill-sage{background:var(--sage-soft);border-color:transparent;color:#19482c}.pill-amber{background:#fdecd1;border-color:transparent;color:#694500;color:oklch(.42 .1 75)}.pill-rose{background:#ffe7e4;background:oklch(.95 .04 25);border-color:transparent;color:var(--rose)}.pill-violet{background:#f1ebff;background:oklch(.95 .04 300);border-color:transparent;color:#8670c0}.pill-mute{background:var(--hair-soft);border-color:transparent;color:var(--ink-dim)}.btn-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:600;font-size:15px;background:var(--ink);color:var(--bg);padding:14px 22px;border-radius:var(--radius-md);letter-spacing:-.005em;transition:transform .15s var(--ease),background .2s var(--ease);text-decoration:none}.btn-primary:hover{background:#282e38}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{background:var(--ink-mute);cursor:not-allowed}.btn-ghost{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:500;font-size:14px;background:transparent;color:var(--ink-dim);padding:10px 14px;border-radius:10px;border:1px solid var(--hair);transition:border-color .15s var(--ease),color .15s var(--ease);text-decoration:none}.btn-ghost:hover{border-color:var(--ink-mute);color:var(--ink)}.btn-ghost:disabled{cursor:not-allowed;opacity:.5}.card{background:var(--card);border:1px solid var(--hair);border-radius:14px}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border:1px solid var(--hair);border-radius:6px;background:var(--card);color:var(--ink-mute);font-family:var(--mono);font-size:11px}.input,input[type=text].input,input[type=email].input,input[type=password].input,input[type=search].input,select.input,textarea.input{width:100%;padding:10px 14px;background:var(--card);border:1px solid var(--hair);border-radius:10px;color:var(--ink);font-family:var(--sans);font-size:14px;outline:none;transition:border-color .15s var(--ease)}.input:focus{border-color:var(--clay)}@keyframes warm-spin{to{transform:rotate(360deg)}}@keyframes warm-ring{0%{transform:scale(.6);opacity:.4}to{transform:scale(1.3);opacity:0}}@keyframes warm-breathe{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.06);opacity:1}}@keyframes warm-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
