:root{--color-bg:#fbf7ef;--color-surface:#fefcf7;--color-text:#2e2430;--color-muted:#6e6470;--color-accent:#ed7a9b;--color-accent-soft:#fdf2f5;--color-accent-line:#ca1c4d;--color-accent-text:#2e2430;--color-secondary:#89cff0;--color-secondary-soft:#e4f4fb;--color-secondary-border:#198abf;--color-secondary-line:#0e5273;--color-highlight:#83639d;--color-highlight-soft:#f5f0f9;--color-highlight-line:#543f65;--color-sun:#feac2c;--color-sun-soft:#feefd2;--color-sun-line:#b87309;--color-danger:#ef4050;--color-danger-soft:#fdf1f2;--color-danger-line:#b22b38;--color-border:#e4dccb;--color-control-rest:#efe8d7;--color-control-line:#2e24301f;--space-2:.2rem;--space-4:.4rem;--space-6:.6rem;--space-8:.8rem;--space-10:1rem;--space-12:1.2rem;--space-14:1.4rem;--space-16:1.6rem;--space-24:2.4rem;--space-32:3.2rem;--space-40:4rem;--space-48:4.8rem;--space-56:5.6rem;--space-64:6.4rem;--radius-4:.4rem;--radius-8:.8rem;--radius-12:1.2rem;--radius-16:1.6rem;--radius-24:2.4rem;--radius-pill:999px;--radius-circle:50%;--control-sm:4rem;--control-md:4.8rem;--control-lg:5.6rem;--leading-flat:1;--leading-title:1.15;--leading-snug:1.3;--leading-caption:1.4;--leading-body:1.5;--font-display:"Fredoka", "Avenir Next", sans-serif;--font-body:"Work Sans", "Helvetica Neue", sans-serif;font-family:var(--font-body);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{font-size:62.5%}body{background:var(--color-bg);color:var(--color-text);font-size:1.6rem;line-height:var(--leading-body);margin:0}h1{line-height:var(--leading-title)}h2,h3,h4,label,legend{line-height:var(--leading-snug)}button,.btn,input,select{line-height:var(--leading-flat)}a{color:var(--color-accent-line);text-underline-offset:3px;font-weight:600;text-decoration-thickness:1.5px;transition:color .15s ease-out}a:hover{color:var(--color-text)}h1,h2,h3{font-family:var(--font-display);font-weight:600}button,.btn{font:inherit;width:fit-content;min-height:var(--control-sm);padding:0 var(--space-16);border-radius:var(--radius-pill);background:var(--color-control-rest);box-shadow:inset 0 0 0 1.5px var(--color-control-line);color:var(--color-text);cursor:pointer;border:none;font-weight:600;transition:background .15s ease-out}button:hover:not(:disabled),.btn:hover:not(:disabled){background:var(--color-border)}.btn-primary,.login-passkey{font-family:var(--font-display);min-height:var(--control-lg);padding:0 var(--space-24);background:var(--color-accent-line);color:#fff;box-shadow:0 1px 2px #2e24301f}.btn-primary:hover:not(:disabled),.login-passkey:hover:not(:disabled){background:var(--color-accent-line);filter:brightness(1.08)}.btn-primary:active,.login-passkey:active{filter:brightness(.94);transform:translateY(1px);box-shadow:0 1px 1px #2e243029}.btn-touch{min-height:var(--control-md)}.btn-block{justify-content:center;width:100%}button:disabled,.btn:disabled{opacity:.5;cursor:default}input,textarea{font:inherit;min-height:var(--control-md);padding:var(--space-4) var(--space-8);border:1.5px solid var(--color-border);border-radius:var(--radius-8);background:var(--color-surface);color:var(--color-text)}input:focus,textarea:focus{outline:2px solid var(--color-accent-line);outline-offset:1px;border-color:var(--color-accent)}
