/* Estilos compartidos por los dos accesos. Copia idéntica en Adoradores. */
.access-page{margin:0;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px 12px;background:radial-gradient(circle at 70% 0%,#124a75,#071d3e 55%);color:#f1f8ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.5}
.access-page .admin-head{display:none}
.access-page .access-main{flex:none;width:min(100%,520px);margin:auto auto 0;padding:0}
.access-page .card{width:min(100%,520px);margin:auto 0 0;overflow:hidden;border:1px solid #5688a9;border-radius:25px;background:#0f2b4a;box-shadow:0 28px 80px #0009;text-align:center;padding:0}
.access-page .art{height:150px;background:#0b3b62 url('/assets/rio-manantial.png') center 55%/cover;position:relative}
.access-page .art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0f2b4a 0%,#0f2b4a22 55%,transparent)}
.access-page .content{padding:0 clamp(23px,5vw,40px) 36px}
.access-page .logo{position:relative;display:block;width:145px;height:145px;object-fit:contain;margin:-72px auto 5px;filter:drop-shadow(0 7px 14px #000a)}
.access-page .eyebrow{display:block;color:#8bdfff;font-size:.77rem;font-weight:850;letter-spacing:.17em}
.access-page .card h1{font-family:inherit;font-size:clamp(1.85rem,5vw,2.6rem);line-height:1.1;color:#fff;margin:8px 0 9px}
.access-page .card p{color:#d1e5f1;font-family:inherit;font-size:1rem;line-height:1.4;margin:0 auto 23px}
.access-page .card form.login{display:grid;gap:15px;text-align:left;margin:0 auto;font-family:inherit}
.access-page .card form.login label{display:grid;gap:7px;font-family:inherit;font-size:1rem;font-weight:750;color:#f1f8ff}
.access-page .card form.login input,.access-page .card form.login select{width:100%;min-height:48px;border:1px solid #79bddf;border-radius:10px;background:#e9f5fd;color:#0b2c4d;padding:12px;font-family:inherit;font-size:16px;line-height:1.5}
.access-page .card form.login input:focus,.access-page .card form.login select:focus{box-shadow:0 0 0 4px #2eb5ec5c}
.access-page .card form.login button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin:0;border:0;border-radius:12px;background:#079bdc;color:#fff;padding:11px 19px;box-shadow:0 8px 20px #001b3990;font-family:inherit;font-size:1rem;font-weight:800;line-height:1.5;cursor:pointer}
.access-page .card .return-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin-top:19px;padding:8px 14px;border:1px solid #5a89a5;border-radius:9px;background:#123854;color:#c4e6f5;text-decoration:none;font-family:inherit;font-size:.82rem;font-weight:750;line-height:1.5}
.access-page .card .return-button:hover{background:#1a4e70;color:#fff}
.access-page .login-footer{width:min(100%,520px);margin:18px auto auto;padding:16px 0 0;border-top:1px solid rgba(155,211,245,.22);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#8fb8d0;text-align:center;font-family:inherit;font-size:.78rem;line-height:1.5}
.access-page .login-footer .footer-brand{display:flex;align-items:center;gap:8px}
.access-page .login-footer img{width:31px;height:31px;object-fit:contain}
.access-page .login-footer small{width:auto;margin:0;color:#7fa7bf;font-family:inherit;font-size:.75rem;line-height:1.5}
.access-page .card .error{color:#fff;margin-bottom:18px}
.access-page .card .locked p{margin:8px 0 0;color:#f8dce1}
.access-page a:focus-visible,.access-page button:focus-visible,.access-page input:focus-visible,.access-page select:focus-visible{outline:3px solid #9ce9ff;outline-offset:3px}
@media(max-width:540px){.access-page{padding:16px 10px}.access-page .access-main{width:min(100%,520px)}.access-page .card{border-radius:18px}.access-page .art{height:125px}.access-page .content{padding:0 22px 26px}.access-page .logo{width:128px;height:128px;margin-top:-64px}.access-page .login-footer{margin-top:13px;padding-top:13px}}
