/* Copia estática para entorno sin Node */
/* === INICIO === */
/* Paleta personalizada */
:root { --color-primary: rgb(38,186,165); --color-secondary: rgb(55,95,122); --color-bg-soft: #f1f7f6; --color-border: rgba(0,0,0,0.08); }
body.auth-layout { background: linear-gradient(135deg, var(--color-secondary) 0%, var(--color-primary) 100%); min-height: 100vh; display: flex; align-items: center; justify-content: center; font-family: 'Figtree', sans-serif; }
.auth-card { background: #fff; border: 1px solid var(--color-border); border-radius: 20px; padding: 2.75rem 2.5rem 2.2rem; width: 100%; max-width: 420px; box-shadow: 0 8px 28px -6px rgba(0,0,0,.18), 0 2px 8px -2px rgba(0,0,0,.08); position: relative; }
.auth-card h1 { margin:0 0 .75rem; font-size:1.9rem; font-weight:700; color: var(--color-secondary); letter-spacing:.5px; }
.auth-subtitle { font-size:.9rem; color:#517d93; margin-bottom:1.75rem; }
.form-group { margin-bottom:1.1rem; }
.form-group label { display:block; font-size:.75rem; font-weight:600; text-transform:uppercase; letter-spacing:.5px; color: var(--color-secondary); margin-bottom:.35rem; }
.form-group input { width:100%; padding:.75rem .9rem; border:1px solid var(--color-border); border-radius:10px; background: var(--color-bg-soft); font-size:.95rem; transition:border-color .18s, box-shadow .18s; }
.form-group input:focus { outline:none; border-color: var(--color-primary); box-shadow:0 0 0 3px rgba(38,186,165,.25); }
.btn-primary,.btn-secondary { display:inline-block; width:100%; text-align:center; font-weight:600; letter-spacing:.5px; border:none; cursor:pointer; padding:.85rem 1rem; border-radius:14px; font-size:.95rem; transition:background .2s, transform .15s, box-shadow .2s; }
.btn-primary { background: var(--color-primary); color:#fff; }
.btn-primary:hover { background: rgb(33,164,146); }
.btn-primary:active { transform:translateY(1px); }
.btn-secondary { background: var(--color-secondary); color:#fff; }
.btn-secondary:hover { background: rgb(46,81,104); }
.btn-secondary:active { transform:translateY(1px); }
.auth-switch { margin-top:1.3rem; font-size:.85rem; text-align:center; color:#4b6575; }
.auth-switch a { color: var(--color-primary); font-weight:600; text-decoration:none; }
.auth-switch a:hover { text-decoration:underline; }
.remember-row { display:flex; align-items:center; gap:.5rem; margin-top:.4rem; }
.remember-row input[type=checkbox] { accent-color: var(--color-primary); width:16px; height:16px; }
.auth-icon { position:absolute; top:-42px; left:calc(50% - 42px); width:84px; height:84px; background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%); border-radius:50%; box-shadow:0 6px 18px -4px rgba(0,0,0,.25); display:flex; align-items:center; justify-content:center; color:#fff; font-size:2rem; font-weight:700; letter-spacing:1px; }
/* Password toggle */
.password-wrapper { position:relative; }
.password-wrapper input { padding-right:2.6rem; }
.password-toggle { position:absolute; top:50%; right:.7rem; transform:translateY(-50%); background:none; border:none; cursor:pointer; padding:.25rem; display:flex; align-items:center; justify-content:center; color:var(--color-secondary); }
.password-toggle:hover { color:var(--color-primary); }
@media (max-width:500px){ .auth-card { padding:2.2rem 1.6rem 1.8rem; } .auth-card h1 { font-size:1.6rem; } }
/* === FIN === */