:root{--bg:#f6f1ea;--card:#fffdf9;--text:#2b2420;--muted:#7a6d63;--accent:sienna;--accent-dark:#7c3e21;--border:#e4d9cc;--error:#b3261e;--success:#2e7d32;color:var(--text);font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 20% 10%, #fbe9d7 0, transparent 45%), var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;margin:0;padding:2rem 1rem;display:flex}main{visibility:hidden;width:100%;max-width:420px}body.ready main{visibility:visible}.brand{text-align:center;letter-spacing:.01em;background:linear-gradient(120deg, var(--accent-dark), #d2883f 60%, var(--accent));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 1.75rem;font-family:Playfair Display,Georgia,serif;font-size:clamp(2.4rem,8vw,3.4rem);font-weight:700}.brand:after{content:"";background:var(--accent);opacity:.6;border-radius:2px;width:64px;height:3px;margin:.6rem auto 0;display:block}a.brand-link{text-decoration:none}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.75rem;box-shadow:0 10px 30px #50321414}h2{margin:0 0 1rem;font-size:1.3rem}p{line-height:1.5}.tabs{border-bottom:1px solid var(--border);gap:.25rem;margin-bottom:1.25rem;display:flex}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:.7rem}.tabs button[aria-selected=true]{color:var(--accent-dark);border-bottom-color:var(--accent);font-weight:600}form{flex-direction:column;gap:.9rem;display:flex}form[hidden]{display:none}.row{gap:.75rem;display:flex}.row>label{flex:1;min-width:0}label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.9rem;display:flex}input{border:1px solid var(--border);width:100%;font:inherit;color:var(--text);background:#fff;border-radius:8px;padding:.65rem .75rem}input:focus{outline:2px solid var(--accent);outline-offset:-1px}button.primary{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:.75rem 1.25rem;font-weight:600}button.primary:hover{background:var(--accent-dark)}button:disabled{opacity:.6;cursor:wait}.link{color:var(--accent-dark);font-size:.9rem}.center{text-align:center}.message{border-radius:8px;margin:1rem 0 0;padding:.75rem;font-size:.9rem}.message[hidden]{display:none}.message.error{color:var(--error);background:#fdecea}.message.success{color:var(--success);background:#e8f5e9}.message.info{color:var(--text);background:#f3ede6}
