:root{--radius:10px}*{box-sizing:border-box}fieldset{min-width:0}[hidden]:not([hidden=until-found]){display:none!important}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}h1{margin:0;font-size:1.5rem;line-height:1.25}h2,h3,h4,h5,h6,p{margin:0}a{color:inherit}img{max-width:100%;height:auto}.muted{color:var(--muted);font-size:.9375rem}.auth-layout{justify-content:center;align-items:center;min-height:100dvh;padding:2.5rem 1.25rem;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:100%;padding:2rem;display:flex}.card__header{flex-direction:column;gap:.375rem;display:flex}.fieldset{border:0;flex-direction:column;gap:1rem;margin:0;padding:0;display:flex}.fieldset:disabled{opacity:.6}.field{flex-direction:column;gap:.375rem;display:flex}.field label{font-size:.9375rem;font-weight:500}.field input{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border-strong);border-radius:8px;padding:.625rem .75rem}.field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border-strong);border-radius:8px;min-height:2.75rem;padding:.625rem .75rem;font-size:1rem}select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;accent-color:var(--accent)}.button{font:inherit;text-align:center;cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.6875rem 1.125rem;text-decoration:none;display:inline-block}.button:disabled{cursor:default;opacity:.6}.button--primary{background:var(--accent);width:100%;color:var(--accent-text);font-weight:600}.button--secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong);padding:.6875rem .75rem;font-size:.875rem;font-weight:500}.button--quiet{color:var(--muted);border-color:var(--border-strong);background:0 0;padding:.6875rem .75rem;font-size:.875rem}.alert{border:1px solid;border-radius:8px;padding:.75rem .875rem;font-size:.9375rem}.alert--error{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.alert--warning{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}
