/* Acceso AYRO · conserva la paleta de la aplicación. */
[hidden] { display: none !important; }
#auth-screen { min-height:100svh; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); gap:7vw; align-items:center; max-width:1200px; padding:64px 40px; margin:auto; }
.auth-story { padding:20px 0; }
.auth-story .brand { display:flex; gap:12px; align-items:center; margin-bottom:70px; }
.auth-story .brand img { width:50px; height:50px; }
.auth-story h1 { font-size:clamp(38px,4.5vw,62px); line-height:1.12; letter-spacing:-2px; margin:18px 0 24px; }
.auth-story > p:not(.eyebrow) { color:var(--muted); max-width:340px; font-size:16px; }
.auth-story > small { color:var(--muted); display:block; margin-top:40px; }
.auth-chips { display:flex; gap:8px; margin-top:30px; flex-wrap:wrap; }
.auth-chips span { border:1px solid var(--border); border-radius:30px; padding:8px 14px; color:var(--gold); }
.auth-card { border:1px solid #494936; background:linear-gradient(145deg,#22291e,#191e18); border-radius:26px; padding:34px; box-shadow:0 25px 80px #0003; min-width:0; }
.auth-card h2 { font-size:28px; margin:6px 0; letter-spacing:-.7px; }
.auth-card #auth-description { color:var(--muted); margin:8px 0 24px; }
.auth-tabs { display:flex; padding:5px; gap:5px; border:1px solid var(--border); border-radius:12px; margin-bottom:22px; }
.auth-tabs button { flex:1; border:none; background:transparent; padding:9px 6px; }
.auth-tabs button[aria-pressed=true] { background:#39382a; color:var(--gold); }
.auth-card label { display:block; color:var(--muted); margin:16px 0; font-size:13px; }
.auth-card input:not([type=checkbox]) { width:100%; margin-top:7px; padding:13px 12px; border-radius:10px; background:#11170f; border:1px solid #3c4933; color:var(--text); }
.auth-card .auth-check { display:flex; gap:9px; align-items:center; font-size:12px; }
.auth-check input { width:16px; height:16px; margin:0; accent-color:var(--gold); }
.auth-card .full { display:block; width:100%; padding:13px; margin:20px 0 12px; }
.auth-card .text-button { font-size:13px; padding:7px 0; }
#auth-message { color:var(--green); overflow-wrap:anywhere; font-size:13px; min-height:20px; }
#auth-message.error { color:var(--red); }
.auth-footnote { border-top:1px solid var(--border); padding-top:18px; margin-top:20px; color:var(--muted); font-size:11px; }
.session-bar { display:flex; gap:14px; align-items:center; justify-content:space-between; margin-bottom:26px; padding-bottom:18px; border-bottom:1px solid var(--border); }
.session-bar > div { min-width:0; }
#session-email { overflow-wrap:anywhere; font-size:12px; }
#sync-status { display:block; color:var(--muted); font-size:11px; margin-top:4px; }
.session-bar button { font-size:11px; padding:8px 10px; }
#cloud-warning { padding:16px; border:1px solid #a57557; color:var(--red); background:#33251e; border-radius:12px; margin-bottom:20px; }
#cloud-warning p { margin-top:0; }
#cloud-busy { max-width:330px; text-align:center; }
#cloud-busy p { font-size:18px; color:var(--gold); }
#cloud-busy small { color:var(--muted); }
@media(max-width:760px) {
 #auth-screen { max-width:500px; grid-template-columns:1fr; padding:28px 20px; gap:14px; align-items:start; }
 .auth-story { padding:0; }
 .auth-story .brand { margin-bottom:28px; }
 .auth-story h1 { font-size:34px; margin:12px 0; }
 .auth-story h1 br { display:none; }
 .auth-story .auth-chips,.auth-story > small { display:none; }
 .auth-story > p:not(.eyebrow) { font-size:14px; }
 .auth-card { padding:24px; }
 .session-bar { flex-wrap:wrap; }
 .session-bar > div:last-child { display:flex; gap:8px; }
}
