*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:'Plus Jakarta Sans',system-ui,sans-serif;background:#f6f1e9;color:#1a1512;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}.hidden{display:none!important}
:root{--cream:#f6f1e9;--cream2:#efe8dd;--ink:#1a1512;--stone:#776d63;--line:rgba(26,21,18,.12);--line2:rgba(26,21,18,.2);--card:#ffffff;--accent:#e84d1c;--accent2:#c93f12;--success:#1f7a3f;--error:#b42318;--shadow:0 18px 44px rgba(33,26,20,.08)}
.topbar{position:sticky;top:0;z-index:20;height:72px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;background:rgba(246,241,233,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#1a1512;color:#fff;font-family:'Fraunces',serif;font-weight:900}.brand-name{font-family:'Fraunces',serif;font-size:1.1rem;font-weight:900}.brand-sub{font-size:.77rem;color:var(--stone)}
.pill-link{padding:10px 14px;border-radius:999px;border:1px solid var(--line2);background:#fff;font-size:.86rem;font-weight:700}
.shell{max-width:1280px;margin:0 auto;padding:34px 24px 56px}.auth-layout{display:grid;grid-template-columns:1.02fr .98fr;gap:18px;align-items:stretch}
.hero-card,.auth-card{background:var(--card);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}
.hero-card{padding:34px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(180deg,#fff,#fbf8f3)}
.eyebrow{margin:0 0 10px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--accent)}
.hero-card h1,.auth-card h2{margin:0;font-family:'Fraunces',serif;line-height:1.04;letter-spacing:-.03em}.hero-card h1{font-size:3rem;max-width:12ch}.auth-card h2{font-size:2rem}
.hero-copy,.muted{color:var(--stone);line-height:1.65}.hero-copy{font-size:1rem;max-width:56ch;margin-top:14px}.hero-points{display:grid;gap:12px;margin-top:22px}.hero-point{padding:16px 18px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.76)}.hero-point strong{display:block;font-size:.95rem;margin-bottom:4px}.hero-point span{font-size:.88rem;color:var(--stone)}
.auth-card{padding:28px}.tab-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tab{padding:10px 16px;border-radius:999px;border:1px solid var(--line2);background:#fff;color:#40372f;font-weight:700;cursor:pointer}.tab.active{background:#1a1512;color:#fff;border-color:#1a1512}
.panel{display:none}.panel.active{display:block}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field span{font-size:.84rem;font-weight:700;color:#4c433b}
input{width:100%;padding:13px 14px;border-radius:14px;border:1px solid var(--line2);background:#fff;color:#1a1512;outline:none}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(232,77,28,.12)}
.input-action-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.inline-btn{padding:11px 13px;border-radius:12px;border:1px solid var(--line2);background:#fff;font-weight:700;cursor:pointer;white-space:nowrap}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.stack-mobile .btn,.stack-mobile a{min-width:180px}.btn{padding:12px 16px;border-radius:14px;border:1px solid var(--line2);background:#fff;color:#1a1512;font-weight:800;cursor:pointer}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent2)}.btn.secondary{background:var(--cream2)}.btn:disabled{opacity:.65;cursor:not-allowed}
.status{min-height:18px;margin-top:12px;font-size:.88rem}.status.visible.success{color:var(--success)}.status.visible.error{color:var(--error)}
.password-meter{margin-top:14px}.meter-bar{height:9px;border-radius:999px;background:#ece5db;overflow:hidden}.meter-bar span{display:block;height:100%;width:0;border-radius:999px;transition:width .2s ease}.meter-bar span.weak{background:#cc3d2c}.meter-bar span.okay{background:#e0a130}.meter-bar span.good{background:#66a33b}.meter-bar span.strong{background:#217d43}.meter-text{margin-top:8px;font-size:.84rem;color:var(--stone)}
.logged-in-panel{padding:8px 2px}.toast{position:fixed;right:20px;bottom:20px;z-index:50;background:#1a1512;color:#fff;padding:12px 16px;border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.18)}.toast.hidden{display:none}.toast.error{background:#7e1d12}.toast.success{background:#1f7a3f}
@media (max-width: 980px){.auth-layout{grid-template-columns:1fr}.hero-card h1{font-size:2.35rem}}
@media (max-width: 640px){.topbar{padding:0 16px}.shell{padding:18px 16px 40px}.field-grid{grid-template-columns:1fr}.auth-card h2{font-size:1.7rem}.hero-card{padding:24px}.hero-card h1{font-size:2rem}.stack-mobile .btn,.stack-mobile a{width:100%;min-width:0}}

.support-note{margin-top:18px;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:#fbf8f3;color:var(--stone);font-size:.9rem;line-height:1.6}.support-note a{color:var(--accent);font-weight:700}
