:root{--pn:#7b1fa2;--blue:#0d6efd;--pink:#e91e63;--yellow:#ffc107;--ink:#1f1830;--muted:#6b6478;--glass:rgba(255,255,255,.72)}
*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);min-height:100vh;background:linear-gradient(135deg,#f7ecff 0%,#eef6ff 45%,#fff8d9 100%)}
.auth-bg{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden}.auth-bg:before,.auth-bg:after{content:"";position:absolute;border-radius:999px;filter:blur(6px);opacity:.75}.auth-bg:before{width:460px;height:460px;background:linear-gradient(135deg,var(--pn),var(--pink));left:-160px;top:-140px}.auth-bg:after{width:380px;height:380px;background:linear-gradient(135deg,var(--blue),var(--yellow));right:-120px;bottom:-120px}
.auth-card{position:relative;z-index:1;width:min(440px,100%);padding:28px;border:1px solid rgba(255,255,255,.7);border-radius:28px;background:var(--glass);box-shadow:0 28px 80px rgba(51,25,84,.22);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:12px}.brand span{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--pn),var(--pink));display:grid;place-items:center;color:#fff;font-weight:800;box-shadow:0 12px 25px rgba(123,31,162,.28)}.brand b{display:block;font-size:20px}.brand small{display:block;color:var(--muted)}h1{margin:26px 0 6px;font-size:32px}p{color:var(--muted);line-height:1.45}form{display:grid;gap:10px;margin-top:18px}label{font-weight:700;font-size:13px;color:#3d314d}input{width:100%;border:1px solid rgba(82,70,100,.18);border-radius:15px;padding:14px 15px;background:rgba(255,255,255,.85);font:inherit;outline:none}input:focus{border-color:var(--pn);box-shadow:0 0 0 4px rgba(123,31,162,.12)}button{border:0;border-radius:16px;padding:14px 16px;margin-top:8px;background:linear-gradient(135deg,var(--pn),var(--pink));color:#fff;font-weight:800;font-size:15px;cursor:pointer;box-shadow:0 14px 24px rgba(123,31,162,.25)}button:hover{transform:translateY(-1px)}.alert,.success{padding:12px 14px;border-radius:14px;margin:14px 0;font-size:14px}.alert{background:#fff0f2;color:#9f1239;border:1px solid #fecdd3}.success{background:#ebfff3;color:#166534;border:1px solid #bbf7d0}.auth-foot{text-align:center;margin-top:18px;color:var(--muted)}a{color:var(--pn);font-weight:800;text-decoration:none}


/* Icono PowerNote + PWA */
.brand span{overflow:hidden;background:rgba(255,255,255,.78)}
.brand span img{width:100%;height:100%;object-fit:contain;padding:4px;display:block}
.install-auth{width:100%;border:1px solid rgba(123,31,162,.22);background:rgba(255,255,255,.72);color:var(--pn);box-shadow:none;margin-top:10px}
.install-auth:hover{background:#fff}
@media(max-width:520px){.auth-bg{padding:14px}.auth-card{padding:22px;border-radius:22px}h1{font-size:27px}.brand b{font-size:18px}}

/* Acceso administrativo especial */
.admin-auth-card{border-color:rgba(123,31,162,.28)}
.admin-hint{margin-top:14px;padding:12px 14px;border-radius:14px;background:rgba(123,31,162,.08);border:1px solid rgba(123,31,162,.14);color:#5b4771;font-size:13px;line-height:1.45;text-align:center}
