:root{--bg:#f5f5f7;--surface:#fff;--surface-raised:#fff;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--separator:rgba(0,0,0,.08);--accent:#0071e3;--accent-contrast:#fff;--success:#1a7f37;--warning:#9a5b00;--danger:#d70015;--focus-ring:#0071e3;--shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.06);--radius:16px;--radius-sm:10px}@media (prefers-color-scheme:dark){:root{--bg:#000;--surface:#1c1c1e;--surface-raised:#2c2c2e;--text-primary:#f5f5f7;--text-secondary:#98989d;--separator:hsla(0,0%,100%,.12);--accent:#0a84ff;--accent-contrast:#fff;--success:#32d74b;--warning:#ffb340;--danger:#ff453a;--focus-ring:#409cff;--shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.4)}}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.47;-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}a{color:var(--accent)}button{font-family:inherit}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--separator)}.label{font-size:13px;font-weight:590;color:var(--text-secondary);letter-spacing:.01em}.text-field{width:100%;padding:12px 14px;font-size:16px;border-radius:var(--radius-sm);border:1px solid var(--separator);background:var(--bg);color:var(--text-primary)}.text-field:focus-visible{border-color:var(--focus-ring)}.btn-primary{width:100%;padding:12px 16px;font-size:16px;font-weight:590;border-radius:var(--radius-sm);border:none;background:var(--accent);color:var(--accent-contrast);cursor:pointer;transition:opacity .15s ease}.btn-primary:hover{opacity:.88}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:8px 14px;font-size:14px;font-weight:590;border-radius:var(--radius-sm);border:1px solid var(--separator);background:transparent;color:var(--text-primary);cursor:pointer}.btn-secondary:hover{background:var(--separator)}