:root{--background: #f5f5f0;--surface: #fff;--ink: #232820;--muted: #6a7065;--accent: #d5ec9a;--accent-ink: #556e32;--wash: #f0f2eb;--line: #e4e7de;--danger: #ab332b;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--ink);background:var(--background);font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-underline-offset:4px}:focus-visible{outline:3px solid var(--accent-ink);outline-offset:4px}h1,h2,p{margin-top:0}p{line-height:1.65}.page{max-width:600px;margin:0 auto;padding:48px 0 0}.eyebrow{font-size:.68rem;font-weight:750;letter-spacing:2px;text-transform:uppercase;color:var(--accent-ink);margin-bottom:16px}.page-title{margin-bottom:12px;font-size:clamp(2rem,6vw,2.75rem);line-height:1.1;letter-spacing:-1.8px;font-weight:750}.subtitle{color:var(--muted);font-size:.9rem;margin-bottom:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;background:var(--accent);color:var(--ink);border:1px solid transparent;border-radius:8px;font-size:.875rem;font-weight:650;text-decoration:none}.button:hover{background:#c9e28b}.button.secondary{background:var(--surface);border-color:var(--line)}.button.secondary:hover{background:var(--wash)}.button.danger{color:var(--danger);background:#fbefed}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:transparent;color:var(--muted);border-radius:8px}.icon-button:hover{color:var(--ink);background:var(--wash)}.state{text-align:center;padding:52px 24px;background:var(--surface);border-radius:12px}.state-symbol{display:flex;justify-content:center;align-items:center;background:var(--wash);width:56px;height:56px;border-radius:50%;margin:0 auto 20px;color:var(--accent-ink)}.state h2{font-size:1.25rem;letter-spacing:-.5px;margin-bottom:8px}.state p{color:var(--muted);font-size:.875rem;max-width:310px;margin:0 auto 24px}.error-message{color:var(--danger);background:#fbefed;padding:14px 16px;font-size:.875rem;border-radius:8px;line-height:1.6}.field{margin-bottom:24px}.field label{display:block;margin-bottom:9px;font-size:.85rem;font-weight:650}.field input:not([type=file]){display:block;width:100%;min-height:50px;padding:12px 14px;border:1px solid #bfc5b6;background:var(--surface);color:var(--ink);border-radius:8px;font-size:1rem}.field input::placeholder{color:#777e70}.field .hint{margin:8px 0 0;font-size:.75rem;color:var(--muted)}.field input[aria-invalid=true]{border-color:var(--danger)}.field .validation{margin:8px 0 0;color:var(--danger);font-size:.8rem}.form-panel{background:var(--surface);padding:32px;border-radius:12px;margin-top:32px}.form-panel .submit{width:100%}.form-footer{margin:20px 0 0;color:var(--muted);text-align:center;font-size:.875rem}.spinner{width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:spin .8s linear infinite}.loading-state{color:var(--muted);padding:40px 16px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:.85rem}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:660px){.page{padding:32px 12px 0}.page>header{padding:0 8px}.form-panel{padding:24px 20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}
