:root{--prio-ink: #1f2a44;--prio-cream: #faf6ef;--prio-sand: #f1eadf;--prio-paper: #fffdf9;--prio-line: #e3dacb;--prio-muted: #4a5568;--prio-outline: #8a7f6e;--prio-coral: #e07a4f;--prio-coral-text: #a94e26;--prio-peach: #f7dccd;--prio-peach-text: #8f3f1c;--prio-forest: #276159;--prio-forest-dark: #1d4a44;--prio-mint: #d6e8e4;--font-display: "Fredoka", system-ui, sans-serif;--font-body: "Nunito Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--bg: var(--prio-cream);--surface: var(--prio-paper);--text: var(--prio-ink);--muted: var(--prio-muted);--line: var(--prio-line);--border: var(--prio-outline);--primary: var(--prio-forest);--on-primary: var(--prio-cream);--notice: var(--prio-peach-text);--focus: var(--prio-forest);--size-s: var(--prio-sand);--size-m: var(--prio-mint);--size-l: var(--prio-peach);--size-none: var(--prio-sand);--radius-sm: 8px;--radius: 14px;--radius-lg: 20px;--radius-xl: 24px;--radius-pill: 999px;--tap: 48px;--nav-height: calc(3.5rem + var(--space-1));--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2.5rem;color-scheme:light;font-family:var(--font-body);font-size:.9375rem;line-height:1.5;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:var(--bg)}h1,h2,h3{font-family:var(--font-display);color:var(--text)}h1{font-size:2.125rem;font-weight:600;line-height:1.15}.section-label{margin:0;font-family:var(--font-body);font-size:.75rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--prio-forest)}a{color:var(--primary)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.field{display:grid;gap:var(--space-1)}.field label{font-weight:600}.field input{min-height:var(--tap);padding:0 var(--space-2);font:inherit;color:var(--text);background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius)}.field-error,.notice{margin:0;color:var(--notice)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);width:100%;min-height:var(--tap);padding:0 var(--space-3);font:inherit;font-size:1rem;font-weight:700;color:var(--on-primary);background:var(--primary);border:2px solid var(--primary);border-radius:var(--radius);text-decoration:none;cursor:pointer}.button:disabled{cursor:default;opacity:.75}.button.secondary{color:var(--primary);background:var(--surface);border:2px solid var(--primary)}.switch{position:relative;width:3rem;height:1.75rem;margin:0;appearance:none;background:var(--border);border-radius:var(--radius-pill);cursor:pointer;transition:background .15s}.switch:after{content:"";position:absolute;top:.25rem;left:.25rem;width:1.25rem;height:1.25rem;background:var(--surface);border-radius:50%;transition:transform .15s}.switch:checked{background:var(--primary)}.switch:checked:after{transform:translate(1.25rem)}.sheet{width:100%;max-width:40rem;max-height:90dvh;margin:auto auto 0;padding:var(--space-3);color:var(--text);background:var(--surface);border:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.sheet::backdrop{background:#1f2a444d}.link-button{min-height:44px;min-width:44px;padding:0 var(--space-1);font:inherit;font-weight:700;color:var(--primary);text-decoration:underline;background:none;border:none;cursor:pointer}.link-button:disabled{cursor:default;opacity:.75}.spinner{width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}.switch,.switch:after{transition:none}}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
