:root{--sand-50:#fbf9f4;--sand-100:#f5f1e8;--sand-200:#eae3d5;--sand-300:#dbd1be;--sand-400:#c3b79e;--sand-500:#a89a7c;--sand-600:#8a7c60;--sand-700:#6b5f49;--sand-800:#4a4234;--sand-900:#2c2820;--sage-50:#f0f4ee;--sage-100:#dce7d6;--sage-200:#bfd3b4;--sage-300:#9dbb8e;--sage-400:#7da36b;--sage-500:#5f8a4f;--sage-600:#4a6e3e;--sage-700:#3a5631;--sage-800:#2b3f25;--sage-900:#1d2b19;--sky-50:#eef4f6;--sky-100:#d8e7ed;--sky-200:#b6d2dd;--sky-300:#8fb8c9;--sky-400:#6b9fb5;--sky-500:#4e869e;--sky-600:#3d6b80;--sky-700:#305364;--sky-800:#243e4a;--sky-900:#182931;--amber-300:#ebc578;--amber-500:#d9a441;--amber-700:#9e7526;--clay-300:#e4a691;--clay-500:#c97b63;--clay-700:#96513c;--brand:var(--sage-500);--brand-hover:var(--sage-600);--brand-active:var(--sage-700);--brand-subtle:var(--sage-100);--brand-on:#fff;--accent:var(--sky-500);--accent-hover:var(--sky-600);--accent-subtle:var(--sky-100);--accent-on:#fff;--bg:var(--sand-100);--surface:#fff;--surface-sunken:var(--sand-50);--surface-raised:#fff;--overlay:#2c28206b;--text:var(--sand-900);--text-muted:var(--sand-700);--text-subtle:var(--sand-500);--text-on-brand:#fff;--text-link:var(--sky-600);--text-link-hover:var(--sky-700);--border:var(--sand-200);--border-strong:var(--sand-300);--border-focus:var(--sage-400);--ring:#5f8a4f59;--success:var(--sage-500);--success-subtle:var(--sage-100);--success-on:#fff;--warning:var(--amber-500);--warning-subtle:#fbf0d8;--warning-on:var(--sand-900);--danger:var(--clay-500);--danger-subtle:#f7e4dd;--danger-on:#fff;--info:var(--sky-500);--info-subtle:var(--sky-100);--info-on:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark],.dark{--brand:var(--sage-300);--brand-hover:var(--sage-200);--brand-active:#b4cda7;--brand-subtle:#9dbb8e29;--brand-on:#1a1815;--accent:var(--sky-300);--accent-hover:var(--sky-200);--accent-subtle:#8fb8c929;--accent-on:#16211e;--bg:#1a1815;--surface:#242019;--surface-sunken:#1e1b15;--surface-raised:#2e2921;--overlay:#0a09079e;--text:#ede8de;--text-muted:#c0b7a5;--text-subtle:#8c826e;--text-on-brand:#1a1815;--text-link:var(--sky-300);--text-link-hover:var(--sky-200);--border:#ede8de1f;--border-strong:#ede8de38;--border-focus:var(--sage-300);--ring:#9dbb8e66;--success:var(--sage-300);--success-subtle:#9dbb8e2e;--success-on:#1a1815;--warning:var(--amber-300);--warning-subtle:#ebc57829;--warning-on:#1a1815;--danger:var(--clay-300);--danger-subtle:#e4a69129;--danger-on:#1a1815;--info:var(--sky-300);--info-subtle:#8fb8c929;--info-on:#16211e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--font-display:"Quicksand", "Zen Maru Gothic", ui-rounded, "Hiragino Maru Gothic ProN", "Segoe UI", system-ui, sans-serif;--font-body:"Nunito Sans", "Zen Kaku Gothic New", system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", "Segoe UI", sans-serif;--font-mono:"DM Mono", "Zen Kaku Gothic New", ui-monospace, "SFMono-Regular", Menlo, monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3rem;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.65;--leading-cjk:1.8;--tracking-tight:-.01em;--tracking-normal:0;--tracking-wide:.04em;--heading-font:var(--font-display);--heading-weight:var(--fw-bold);--body-font:var(--font-body);--numeric-font:var(--font-mono);--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--border-1:1px;--border-2:2px;--control-sm:36px;--control-md:44px;--control-lg:52px;--container-max:1200px;--gutter:var(--space-4);--shadow-xs:0 1px 2px #4a42340f;--shadow-sm:0 2px 6px #4a423414;--shadow-md:0 6px 16px #4a42341a;--shadow-lg:0 14px 32px #4a42341f;--shadow-xl:0 24px 56px #4a423429;--shadow-inset:inset 0 1px 3px #4a42341a;--ease-standard:cubic-bezier(.4, 0, .2, 1);--ease-soft:cubic-bezier(.32, .72, .36, 1);--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.32s}:root[data-theme=dark],.dark{--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 2px 8px #0000005c;--shadow-md:0 6px 18px #00000070;--shadow-lg:0 16px 36px #00000085;--shadow-xl:0 26px 60px #0009;--shadow-inset:inset 0 1px 3px #0006}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-body);font-size:var(--text-md);line-height:var(--leading-normal);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);font-weight:var(--heading-weight);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--text);margin:0}p{margin:0}a{color:var(--text-link);transition:color var(--duration-fast) var(--ease-standard);text-decoration:none}a:hover{color:var(--text-link-hover);text-decoration:underline}.eyebrow{font-family:var(--font-body);font-weight:var(--fw-bold);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-subtle)}::selection{background:var(--brand-subtle)}:focus-visible{box-shadow:0 0 0 3px var(--ring);border-radius:var(--radius-sm);outline:none}html,body,#root{height:100%}body{background:var(--bg);overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,h5,h6{letter-spacing:var(--tracking-normal)}.tracking-tight{letter-spacing:var(--tracking-tight)}.cjk{line-height:var(--leading-cjk)}.scroll-area{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-y:auto}.scroll-area::-webkit-scrollbar{width:0;height:0}.numeric{font-family:var(--font-mono);font-variant-numeric:tabular-nums}button{font-family:inherit}input,textarea,select{font-family:inherit;font-size:var(--text-md);color:inherit}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
