:root{--color-primary: #5b3df5;--color-primary-hover: #4a2fd9;--color-accent: #ff7a1a;--color-bg: #f7f7fb;--color-surface: #ffffff;--color-surface-alt: #f0effa;--color-border: #e3e1ef;--color-text: #1c1a2e;--color-text-muted: #5f5c75;--color-error: #c62828;--color-error-bg: #fdecea;--color-info: #1f5fbf;--color-info-bg: #e8f0fd;--radius: 12px;--color-ink: #1c1a2e;--color-lime: #d6ff6b;--color-lime-soft: #f3ffd5;--color-peach: #fff2ed;--color-pink: #feeffe;--font-display: "Bricolage Grotesque", system-ui, sans-serif;--header-height: 88px;color-scheme:light}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}h1,h2,h3{line-height:1.2;margin:0 0 .75rem}h1,h2,.display{font-family:var(--font-display);font-weight:800;letter-spacing:-.03em;line-height:1}a{color:var(--color-primary)}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 1rem}.page{padding:3rem 0}.page-header{margin-bottom:2rem}.page-header p{max-width:65ch;color:var(--color-text-muted)}.muted{color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.5rem}.grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:42px;padding:.5rem 1.1rem;border:1px solid transparent;border-radius:10px;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-outline{border-color:var(--color-primary);color:var(--color-primary);background:transparent}.btn-outline:hover{background:var(--color-surface-alt)}.btn-ghost{background:transparent;color:var(--color-text-muted)}.btn-ghost:hover{background:var(--color-surface-alt);color:var(--color-text)}.btn-block{width:100%}.btn-link{padding:0;border:0;background:none;color:var(--color-primary);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}.btn-pill{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:44px;padding:0 1.25rem;border:1px solid transparent;border-radius:999px;font:inherit;font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .2s,border-color .2s,transform .2s}.btn-pill:active{transform:scale(.98)}.btn-pill--lg{height:auto;padding:1.25rem 2.5rem;font-size:1.05rem}@media(max-width:480px){.btn-pill--lg{padding:1rem 1.75rem}}.btn-pill--dark{background:var(--color-ink);color:#fff}.btn-pill--dark:hover{background:var(--color-primary)}.btn-pill--light{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.btn-pill--light:hover{border-color:var(--color-ink)}.btn-pill--ghost{background:transparent;color:var(--color-text)}.btn-pill--ghost:hover{background:#1c1a2e0f}.btn-pill--lime{background:var(--color-lime);color:var(--color-ink)}.btn-pill--lime:hover{background:#fff}.form-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.1rem}.form-field label{font-weight:600}.form-field input,.form-field textarea,.form-field select{width:100%;padding:.65rem .8rem;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);color:var(--color-text);font:inherit}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:2px solid var(--color-primary);outline-offset:1px;border-color:transparent}.form-field input[aria-invalid=true],.form-field textarea[aria-invalid=true],.form-field select[aria-invalid=true]{border-color:var(--color-error)}.hint{color:var(--color-text-muted);font-size:.8rem}.field-error{color:var(--color-error);font-size:.8rem}.alert{margin:1rem 0 0;padding:.75rem 1rem;border-radius:10px;font-size:.9rem}.alert-error{background:var(--color-error-bg);color:var(--color-error)}.alert-info{background:var(--color-info-bg);color:var(--color-info)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
