@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@600;700&family=DM+Sans:wght@400;500&family=DM+Mono:wght@500&display=swap";:root{--bg:#fff8ee;--surface:#fff;--board:#fbefd9;--ink:#2b2a33;--ink-soft:#6b6878;--line:#e8dcc8;--peach:#ffb5a7;--butter:#ffe08a;--mint:#aee6cf;--sky:#a9d6f5;--lavender:#cdb8f5;--pink:#f8bfdd;--lime:#d3ec9a;--apricot:#ffcb9a;--ok:#7fd1a8;--warn:#ffd27a;--danger:#f29b9b;--r-card:16px;--r-btn:12px;--r-input:12px;--r-piece:6px;--ease-out:cubic-bezier(.2, .8, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:DM Sans,system-ui,sans-serif;font-size:16px;line-height:1.4}h1,h2,h3{font-family:Bricolage Grotesque,system-ui,sans-serif;font-weight:700;line-height:1.2}h1{font-size:40px}h2{font-size:28px}@media (width<=640px){h1{font-size:28px}h2{font-size:20px}}.mono{font-variant-numeric:tabular-nums;font-family:DM Mono,monospace;font-weight:500}.btn{border-radius:var(--r-btn);border:2px solid var(--ink);cursor:pointer;height:48px;transition:transform .1s var(--ease-out), box-shadow .1s var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-width:44px;padding:0 24px;font-family:DM Sans,system-ui,sans-serif;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--butter);color:var(--ink);box-shadow:0 3px 0 var(--ink)}.btn-primary:hover:not(:disabled){transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.btn-secondary{background:var(--surface);color:var(--ink);box-shadow:none}.btn-secondary:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{background:var(--line);color:var(--ink-soft);box-shadow:none;cursor:not-allowed}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-soft);font-size:14px}.field input{border-radius:var(--r-input);border:1.5px solid var(--line);background:var(--surface);height:48px;color:var(--ink);outline:none;padding:0 14px;font-family:DM Sans,system-ui,sans-serif;font-size:16px;transition:border-color .1s}.field input:focus{border:2px solid var(--ink)}.field-error{color:var(--ink);align-items:center;gap:6px;font-size:14px;display:flex}.field-error:before{content:"";background:var(--danger);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}:focus-visible{outline:3px solid var(--ink);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.card{background:var(--surface);border-radius:var(--r-card);border:1.5px solid var(--line);padding:24px}.toast-container{z-index:1000;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--r-card);color:var(--ink);white-space:nowrap;animation:toastIn .15s var(--ease-out) forwards;padding:10px 20px;font-size:14px}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.screen-enter{animation:screenIn .18s var(--ease-out) forwards}@keyframes screenIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}
