/* Login page — same studio theme as the editor (style.css), one centred card. */
.topbar .lang-switch{margin-left:auto}
.login-shell{display:flex;justify-content:center;padding:56px 16px 72px}
.login-card{width:100%;max-width:420px;padding:30px 30px 22px}
.login-card h1{font-size:22px;font-weight:600;letter-spacing:-.3px;margin-bottom:20px}
.login-tabs{display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--field);border:1px solid var(--line-soft);margin-bottom:18px}
.login-tabs button{flex:1;border:0;background:none;color:var(--muted);font-size:13.5px;min-height:34px;border-radius:999px}
.login-tabs button[aria-selected=true]{background:var(--raise-2);color:var(--text);font-weight:600}
.google-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;border-radius:999px;border:0;background:#fff;color:#1f1f1f;font-weight:500;font-size:14px}
.google-button:hover{background:#f1f3f1}
.google-button svg{width:18px;height:18px;flex:none}
.login-or{display:flex;align-items:center;gap:12px;color:var(--faint);font-size:12px;margin:18px 0 6px}
.login-or::before,.login-or::after{content:"";flex:1;height:1px;background:var(--line-soft)}
.login-field{display:block;font-size:13px;font-weight:500;margin-top:12px}
.login-field input,.password-wrap{display:flex;width:100%;margin-top:6px}
.login-field input{background:var(--field);border:1px solid var(--line);border-radius:10px;color:var(--text);min-height:42px;padding:8px 12px;font:inherit;font-size:14px;font-weight:400}
.login-field input:hover{border-color:rgba(255,255,255,.2)}
.login-field input:focus{outline:none;border-color:rgba(166,233,140,.7);box-shadow:0 0 0 3px rgba(166,233,140,.12)}
.password-wrap{position:relative;margin-top:0}
.password-wrap input{padding-right:62px}
.show-password{position:absolute;right:6px;top:50%;transform:translateY(-50%);margin-top:3px;border:0;background:none;color:var(--muted);font-size:12px;padding:4px 8px}
.show-password:hover{color:var(--text)}
.login-hint{font-size:12px;color:var(--faint);margin-top:6px}
.login-check{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--muted);margin-top:14px;line-height:1.5;cursor:pointer}
.login-check input{margin:3px 0 0;accent-color:var(--accent);width:15px;height:15px;flex:none}
.login-submit{width:100%;margin-top:18px;text-decoration:none}
.login-forgot{display:block;margin:12px auto 0}
.login-note{font-size:12px;color:var(--faint);margin-top:16px;line-height:1.6}
.google-note{margin-top:8px;text-align:center}
.login-links a[href="privacy.html"]{color:var(--muted);font-weight:600}
.login-state p{color:#c6ccc4;line-height:1.7}
.login-state .secondary{width:100%;margin-top:10px}
.login-state .quiet{display:block;margin:12px auto 0}
.login-email{font-weight:600;color:var(--text)!important;margin-top:8px;word-break:break-all}
.login-message{min-height:1.5em;margin-top:14px;font-size:13px;color:var(--accent)}
.login-message.error{color:var(--danger)}
.danger-link{color:var(--danger)!important;text-decoration-color:rgba(255,138,122,.35)!important}
.delete-confirm{margin-top:12px;padding:14px;border:1px solid rgba(255,138,122,.35);border-radius:12px;background:rgba(255,138,122,.06)}
.delete-confirm p{font-size:13px;margin-bottom:10px}
.delete-confirm .quiet{display:block;margin:10px auto 0}
.danger-button{width:100%;min-height:40px;border-radius:999px;border:0;background:var(--danger);color:#2a0b06;font-weight:600}
.login-links{display:flex;justify-content:center;gap:18px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line-soft)}
.login-links button{border:0;background:none;color:var(--faint);font-size:12px;padding:2px 0}
.login-links button:hover{color:var(--text)}
.login-links a{color:var(--faint);font-size:12px;padding:2px 0}
.login-links a:hover{color:var(--text)}
@media(max-width:480px){.login-shell{padding:28px 12px 48px}.login-card{padding:24px 18px 18px}}
