:root{--paprika-50:#fff1eb;--paprika-100:#fdc;--paprika-300:#ff9268;--paprika-400:#f26b3a;--paprika-500:#d9501f;--paprika-600:#b53f18;--paprika-700:#8c2f11;--saffron-100:#ffefc2;--saffron-200:#ffe08a;--saffron-300:#facc4b;--saffron-400:#e8b226;--basil-50:#eef6ec;--basil-200:#b6d8b0;--basil-400:#6ba368;--basil-500:#4c8a4a;--basil-700:#2f5a2e;--cream-50:#fffaf4;--cream-100:#fbf1e4;--clay-200:#ecdfcd;--clay-300:#d8c5a8;--bark-400:#a78b70;--bark-500:#8c7158;--bark-600:#73583f;--bark-700:#4a3a2c;--espresso-900:#261810;--bg:var(--cream-50);--surface:#fff;--border:var(--clay-200);--border-strong:var(--clay-300);--text:var(--espresso-900);--muted:var(--bark-600);--soft:var(--bark-500);--brand:var(--paprika-500);--brand-hover:var(--paprika-600);--brand-soft:var(--paprika-50);--danger:#a8281e;--font-display:"Fraunces",Georgia,serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--r-sm:6px;--r-md:10px;--r-lg:16px;--r-full:9999px;--focus:0 0 0 3px var(--saffron-200);--sh-md:0 4px 12px #26181012;--sh-lg:0 12px 32px #2618101a}*{box-sizing:border-box}html,body{background:var(--bg);font-family:var(--font-body);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:16px;line-height:1.55}a{color:inherit}.ti{flex:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.auth-screen{background:var(--cream-50);justify-content:center;align-items:center;min-height:100vh;padding:48px 20px;display:flex;position:relative;overflow:hidden}.auth-screen:before{content:"";background:radial-gradient(circle at 90% 10%, var(--saffron-100) 0%, transparent 38%), radial-gradient(circle at 10% 90%, var(--paprika-50) 0%, transparent 42%);opacity:.55;pointer-events:none;position:absolute;inset:0}.auth-card{z-index:1;border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:440px;box-shadow:var(--sh-lg);background:#fff;padding:40px;position:relative}.auth-logo{color:var(--text);font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:10px;margin-bottom:28px;font-size:18px;font-weight:700;text-decoration:none;display:inline-flex}.auth-logo .logo-mark{background:var(--brand);color:#fff;letter-spacing:-.03em;border-radius:8px;place-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:grid;box-shadow:0 4px 12px #d9501f4d}.auth-card h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 8px;font-size:28px;font-weight:600;line-height:1.2}.auth-card .lead{color:var(--muted);margin:0 0 28px;font-size:15px;line-height:1.55}.auth-card .lead strong{color:var(--text);font-weight:600}.eyebrow{background:var(--basil-50);color:var(--basil-700);border:1px solid var(--basil-200);border-radius:var(--r-full);align-items:center;gap:7px;margin-bottom:18px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.eyebrow .ti{font-size:14px}.field{margin-bottom:16px}.field-label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.input{width:100%;font-family:var(--font-body);border-radius:var(--r-md);border:1px solid var(--border-strong);color:var(--text);background:#fff;padding:11px 14px;font-size:15px;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--soft)}.input:focus{border-color:var(--brand);box-shadow:var(--focus);outline:none}.input:disabled{opacity:.6;cursor:not-allowed}.input-wrap{position:relative}.input-wrap .input{padding-right:42px}.input-trail{width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;place-items:center;font-size:16px;transition:background .15s,color .15s;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.input-trail:hover{color:var(--text);background:var(--cream-100)}.field-grid-2{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;display:grid}.field-grid-2 .field{margin-bottom:0}@media (width<=480px){.field-grid-2{grid-template-columns:1fr}}.row-between{justify-content:space-between;align-items:center;margin:16px 0 22px;font-size:13px;display:flex}.checkbox-row{color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;display:inline-flex}.checkbox-row a{color:var(--brand);font-weight:500;text-decoration:none}.checkbox-row a:hover{text-decoration:underline}.checkbox{border:1.5px solid var(--border-strong);cursor:pointer;background:#fff;border-radius:4px;flex:none;place-items:center;width:18px;height:18px;transition:background .15s,border-color .15s;display:grid}.checkbox:after{content:"";opacity:0;border-bottom:2px solid #fff;border-left:2px solid #fff;width:9px;height:5px;transition:opacity .15s;transform:translateY(-1px)rotate(-45deg)}.checkbox.is-checked{background:var(--brand);border-color:var(--brand)}.checkbox.is-checked:after{opacity:1}.link-muted{color:var(--muted);font-weight:500;text-decoration:none}.link-muted:hover{color:var(--brand)}.btn-primary{border-radius:var(--r-md);background:var(--brand);color:#fff;cursor:pointer;border:none;width:100%;padding:13px 20px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.2;transition:background .15s;box-shadow:0 2px 6px #d9501f40}.btn-primary:hover:not(:disabled){background:var(--brand-hover)}.btn-primary:focus-visible{box-shadow:var(--focus);outline:none}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.password-strength{gap:4px;margin-top:8px;display:flex}.strength-bar{background:var(--clay-200);border-radius:2px;flex:1;height:4px;transition:background .2s}.strength-bar.weak{background:var(--danger)}.strength-bar.medium{background:var(--saffron-400)}.strength-bar.good{background:var(--basil-400)}.strength-bar.strong{background:var(--basil-500)}.strength-meta{color:var(--muted);margin-top:7px;font-size:12px;line-height:1.4}.auth-footer{text-align:center;border-top:1px solid var(--border);color:var(--muted);margin-top:24px;padding-top:20px;font-size:14px}.auth-footer a{color:var(--brand);font-weight:500;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.back-link{color:var(--muted);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--text)}.back-link .ti{font-size:14px}.terms-row{color:var(--muted);cursor:pointer;align-items:flex-start;gap:10px;margin:18px 0 22px;font-size:13px;line-height:1.55;display:flex}.terms-row .checkbox{margin-top:2px}.terms-row a{color:var(--brand);font-weight:500;text-decoration:none}.terms-row a:hover{text-decoration:underline}.form-error{border-radius:var(--r-md);color:var(--danger);background:#fde5e2;border:1px solid #f3c9c4;align-items:flex-start;gap:10px;margin-bottom:22px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.form-error .ti{color:var(--danger);flex-shrink:0;margin-top:1px;font-size:18px}.form-error strong{font-weight:600}.form-notice{background:var(--basil-50);border:1px solid var(--basil-200);border-radius:var(--r-md);color:var(--basil-700);align-items:flex-start;gap:10px;margin-bottom:22px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.form-notice .ti{color:var(--basil-700);flex-shrink:0;margin-top:1px;font-size:18px}.input.is-error{border-color:var(--danger)}.input.is-error:focus{border-color:var(--danger);box-shadow:0 0 0 3px #fde5e2}.field-error{color:var(--danger);align-items:center;gap:5px;margin-top:6px;font-size:12px;font-weight:500;line-height:1.4;display:flex}.field-error .ti{flex-shrink:0;font-size:14px}.field-error a{color:var(--danger);font-weight:600;text-decoration:underline}.auth-icon{border-radius:var(--r-full);background:var(--basil-50);width:56px;height:56px;color:var(--basil-700);border:1px solid var(--basil-200);place-items:center;margin-bottom:20px;font-size:28px;display:grid}.home-shell{max-width:880px;margin:0 auto;padding:48px 24px}.home-shell header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.home-shell h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:32px;font-weight:600}.btn-ghost{border-radius:var(--r-md);border:1px solid var(--border-strong);color:var(--text);cursor:pointer;background:0 0;padding:9px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s}.btn-ghost:hover{background:var(--cream-100)}.home-card{border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-md);color:var(--muted);background:#fff;padding:32px}
