:root{--fondo:#f4f6f9;--caja:#fff;--texto:#16202c;--suave:#5b6878;--borde:#d8dee6;--acento:#1f5fbf;--error:#b42318}
@media (prefers-color-scheme:dark){:root{--fondo:#0e141b;--caja:#17202a;--texto:#e8edf3;--suave:#9aa8b8;--borde:#2c3846;--acento:#5b9cf5;--error:#f27a6e}}
*{box-sizing:border-box}
html,body{margin:0;background:var(--fondo);color:var(--texto);font:16px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.caja{max-width:380px;margin:12vh auto 0;padding:28px 22px;background:var(--caja);border:1px solid var(--borde);border-radius:14px}
@media (max-width:440px){.caja{margin:8vh 16px 0}}
h1{margin:0 0 4px;font-size:1.45rem}
.sub{margin:0 0 22px;color:var(--suave);font-size:.95rem}
label{display:block;margin:14px 0 6px;font-weight:600;font-size:.92rem}
input{width:100%;padding:12px 13px;font-size:1rem;border:1px solid var(--borde);border-radius:10px;background:var(--fondo);color:var(--texto)}
input:focus{outline:2px solid var(--acento);outline-offset:1px}
button{margin-top:22px;width:100%;padding:13px;font-size:1rem;font-weight:700;border:0;border-radius:10px;background:var(--acento);color:#fff;cursor:pointer}
.aviso{margin:16px 0 0;color:var(--error);font-weight:600}
