:root{color-scheme:dark;--c-surface-0: oklch(13% .012 240);--c-surface-1: oklch(16% .013 240);--c-surface-2: oklch(19% .014 240);--c-surface-3: oklch(23% .015 240);--c-surface-4: oklch(28% .016 240);--c-surface-5: oklch(34% .018 240);--c-on-surface: oklch(94% .01 240);--c-on-surface-muted: oklch(72% .015 240);--c-on-surface-faint: oklch(50% .02 240);--c-outline: oklch(35% .018 240);--c-outline-soft: oklch(27% .014 240);--c-primary: oklch(83% .16 175);--c-primary-strong: oklch(78% .18 175);--c-primary-soft: oklch(34% .07 175);--c-on-primary: oklch(15% .04 175);--c-accent: oklch(80% .16 65);--c-accent-soft: oklch(32% .08 65);--c-on-accent: oklch(18% .04 65);--c-error: oklch(70% .2 25);--c-error-soft: oklch(32% .1 25);--c-on-error: oklch(98% .005 0);--c-bg-tint-1: oklch(20% .04 175 / .35);--c-bg-tint-2: oklch(20% .04 65 / .18);--c-glass-bar: oklch(16% .013 240 / .78);--c-glass-panel: oklch(13% .012 240 / .85);--c-qr-paper: oklch(98% .005 80);--font-display: "Bricolage Grotesque", "Iowan Old Style", Georgia, serif;--font-body: "Geist", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--type-display-lg: 600 clamp(2.4rem, 4.5vw + 1rem, 4.5rem)/1.02 var(--font-display);--type-display-md: 600 clamp(1.8rem, 2.5vw + 1rem, 2.6rem)/1.05 var(--font-display);--type-headline: 500 1.35rem/1.2 var(--font-display);--type-title: 500 1.05rem/1.3 var(--font-display);--type-body: 400 .95rem/1.5 var(--font-body);--type-body-sm: 400 .82rem/1.45 var(--font-body);--type-label: 500 .74rem/1.2 var(--font-body);--type-mono-sm: 400 .78rem/1.4 var(--font-mono);--r-xs: 4px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--r-2xl: 28px;--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--s-8: 4rem;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.2, 0, 0, 1);--ease-emphasized-out: cubic-bezier(.05, .7, .1, 1);--ease-emphasized-in: cubic-bezier(.3, 0, .8, .15);--dur-1: 90ms;--dur-2: .16s;--dur-3: .24s;--dur-4: .36s;--dur-5: .52s;--hairline: inset 0 0 0 1px var(--c-outline-soft);--hairline-strong: inset 0 0 0 1px var(--c-outline);--focus-ring: 0 0 0 2px var(--c-surface-0), 0 0 0 4px var(--c-primary)}[data-theme=light]{color-scheme:light;--c-surface-0: oklch(98% .005 80);--c-surface-1: oklch(96% .006 80);--c-surface-2: oklch(93% .008 80);--c-surface-3: oklch(89% .01 80);--c-surface-4: oklch(82% .012 80);--c-surface-5: oklch(72% .015 80);--c-on-surface: oklch(20% .01 240);--c-on-surface-muted: oklch(40% .015 240);--c-on-surface-faint: oklch(58% .02 240);--c-outline: oklch(78% .01 240);--c-outline-soft: oklch(88% .008 240);--c-primary: oklch(58% .16 175);--c-primary-strong: oklch(52% .18 175);--c-primary-soft: oklch(92% .08 175);--c-on-primary: oklch(98% .01 175);--c-accent: oklch(62% .16 60);--c-accent-soft: oklch(94% .06 60);--c-on-accent: oklch(98% .01 60);--c-error: oklch(58% .2 25);--c-error-soft: oklch(94% .06 25);--c-on-error: oklch(98% .005 0);--c-bg-tint-1: oklch(92% .06 175 / .4);--c-bg-tint-2: oklch(92% .05 60 / .25);--c-glass-bar: oklch(96% .006 80 / .78);--c-glass-panel: oklch(94% .008 80 / .85);--hairline: inset 0 0 0 1px oklch(82% .01 240);--hairline-strong: inset 0 0 0 1px oklch(72% .012 240);--focus-ring: 0 0 0 2px var(--c-surface-0), 0 0 0 4px var(--c-primary)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font:var(--type-body);color:var(--c-on-surface);background:radial-gradient(ellipse 80% 50% at 20% 0%,var(--c-bg-tint-1),transparent 60%),radial-gradient(ellipse 60% 40% at 90% 100%,var(--c-bg-tint-2),transparent 60%),var(--c-surface-0);background-attachment:fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"ss01","cv11";transition:background-color var(--dur-3) var(--ease-standard),color var(--dur-3) var(--ease-standard)}::selection{background:var(--c-primary);color:var(--c-on-primary)}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:600;margin:0}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,textarea,select{font:inherit;color:inherit;background:transparent;border:0;outline:none}ul,ol{list-style:none;padding:0;margin:0}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--c-surface-3);border-radius:999px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--c-surface-5);background-clip:content-box}.app-shell{min-height:100vh;display:flex;flex-direction:column}.surface{background:var(--c-surface-1);border-radius:var(--r-lg);box-shadow:var(--hairline)}.surface-2{background:var(--c-surface-2)}.surface-3{background:var(--c-surface-3)}.btn{--bg: var(--c-surface-3);--fg: var(--c-on-surface);display:inline-flex;align-items:center;justify-content:center;gap:.4em;padding:.6rem 1rem;font:var(--type-label);letter-spacing:.02em;border-radius:var(--r-md);background:var(--bg);color:var(--fg);transition:background var(--dur-2) var(--ease-standard),color var(--dur-2) var(--ease-standard),transform var(--dur-1) var(--ease-emphasized-out);white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;isolation:isolate}.btn:hover{background:var(--c-surface-4)}.btn:active{transform:translateY(1px) scale(.98)}.btn:focus-visible{box-shadow:var(--focus-ring)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{--bg: var(--c-primary);--fg: var(--c-on-primary);font-weight:600}.btn-primary:hover{--bg: var(--c-primary-strong)}.btn-accent{--bg: var(--c-accent);--fg: var(--c-on-accent);font-weight:600}.btn-ghost{--bg: transparent;box-shadow:var(--hairline)}.btn-ghost:hover{background:var(--c-surface-2)}.btn-sm{padding:.35rem .7rem;font-size:.75rem;border-radius:var(--r-sm)}.btn-icon{width:2.25rem;height:2.25rem;padding:0;border-radius:var(--r-md)}.input{width:100%;padding:.75rem .9rem;background:var(--c-surface-2);color:var(--c-on-surface);border-radius:var(--r-md);box-shadow:var(--hairline);transition:box-shadow var(--dur-2) var(--ease-standard)}.input::placeholder{color:var(--c-on-surface-faint)}.input:focus-visible{box-shadow:inset 0 0 0 1px var(--c-primary),var(--focus-ring)}.section-label{font:var(--type-label);letter-spacing:.18em;text-transform:uppercase;color:var(--c-on-surface-muted)}.chip{display:inline-flex;align-items:center;gap:.3em;padding:.15rem .55rem;font:var(--type-label);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;background:var(--c-surface-3);color:var(--c-on-surface-muted)}.chip-primary{background:var(--c-primary-soft);color:var(--c-primary)}.chip-accent{background:var(--c-accent-soft);color:var(--c-accent)}.chip-error{background:var(--c-error-soft);color:var(--c-error)}.live-dot{width:8px;height:8px;border-radius:999px;background:var(--c-primary);box-shadow:0 0 0 4px var(--c-primary-soft);animation:live-pulse 1.6s var(--ease-standard) infinite}@keyframes live-pulse{0%,to{box-shadow:0 0 0 4px var(--c-primary-soft);opacity:1}50%{box-shadow:0 0 0 8px transparent;opacity:.55}}.wordmark{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;font-stretch:90%;line-height:.95}.wordmark em{font-style:italic;font-weight:500;font-stretch:75%;color:var(--c-primary)}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fade-up var(--dur-5) var(--ease-emphasized-out) both}.fade-up-delay-1{animation-delay:80ms}.fade-up-delay-2{animation-delay:.16s}.fade-up-delay-3{animation-delay:.24s}.fade-up-delay-4{animation-delay:.32s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}.row{display:flex;align-items:center;gap:var(--s-3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}.col{display:flex;flex-direction:column;gap:var(--s-3)}.stack-sm>*+*{margin-top:var(--s-2)}.stack-md>*+*{margin-top:var(--s-3)}.stack-lg>*+*{margin-top:var(--s-5)}.muted{color:var(--c-on-surface-muted)}.faint{color:var(--c-on-surface-faint)}.mono{font-family:var(--font-mono);font-size:.8rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
