/* ============================================================
   Autenticación (entrar / registro / reset) — presentación sobre
   tokens de wp-base.css. Sin url() (WhiteNoise-safe).
   ============================================================ */
/* En auth ocultamos el top bar global; el logo va centrado sobre la tarjeta. */
body.wp-auth .wp-topbar{ display:none; }
body.wp-auth .wp-main{ flex:1; display:flex; align-items:center; justify-content:center; padding:36px 16px 56px; }

.wp-authwrap{ display:flex; flex-direction:column; align-items:center; gap:26px; width:100%; max-width:430px; margin:0 auto; }

/* Marca */
.wp-auth-brand{ display:flex; flex-direction:column; align-items:center; gap:10px; text-decoration:none; }
.wp-auth-mono{ height:50px; width:auto; display:block; }
.wp-auth-wm{ display:flex; flex-direction:column; align-items:center; line-height:1; }
.wp-auth-wm-name{ font-family:var(--wp-display); font-size:1.15rem; color:var(--wp-ink); }
.wp-auth-wm-tag{ font-family:var(--wp-sans); font-size:.58rem; letter-spacing:.3em; text-transform:uppercase; color:var(--wp-ink-mute); margin-top:3px; }

/* Tarjeta */
.wp-authcard{ width:100%; max-width:none; background:var(--wp-surface); border:1px solid var(--wp-line); border-radius:var(--wp-r-lg); padding:34px 32px; box-shadow:var(--wp-shadow); position:relative; overflow:hidden; }
.wp-authcard::before{ content:""; position:absolute; left:0; right:0; top:0; height:3px; background:var(--wp-accent); }
.wp-auth-title{ font-family:var(--wp-display); font-weight:300; font-size:1.6rem; text-align:center; margin:0 0 5px; }
.wp-auth-sub{ text-align:center; color:var(--wp-ink-soft); font-size:.9rem; margin:0 0 22px; }
.wp-auth-text{ color:var(--wp-ink-soft); font-size:.92rem; }

/* Campos */
.wp-authfield{ margin-bottom:16px; }
.wp-authfield > label{ display:block; font-size:.82rem; font-weight:500; color:var(--wp-ink-soft); margin-bottom:7px; }
.wp-auth-inwrap{ position:relative; }
.wp-auth-ic{ position:absolute; left:13px; top:50%; transform:translateY(-50%); color:var(--wp-ink-mute); font-size:18px; pointer-events:none; }
.wp-auth-inwrap input{ box-sizing:border-box; width:100%; font:inherit; font-size:.92rem; color:var(--wp-ink); background:var(--wp-surface); border:1px solid var(--wp-line); border-radius:var(--wp-r); padding:12px 14px 12px 40px; transition:border-color var(--wp-t), box-shadow var(--wp-t); }
.wp-auth-inwrap input:focus{ outline:none; border-color:var(--wp-accent); box-shadow:0 0 0 3px rgba(58,74,102,.14); }
.wp-auth-inwrap:has(.wp-auth-eye) input{ padding-right:42px; }
.wp-auth-eye{ position:absolute; right:10px; top:50%; transform:translateY(-50%); color:var(--wp-ink-mute); font-size:18px; cursor:pointer; background:none; border:0; padding:4px; display:flex; }
.wp-auth-eye:hover{ color:var(--wp-ink); }
.wp-auth-help{ font-size:.76rem; color:var(--wp-ink-mute); margin:6px 0 0; }
.wp-auth-help ul{ margin:0; padding-left:18px; }

/* Errores y avisos (acordes a la paleta, no rojo chillón) */
.wp-auth-err{ display:flex; align-items:flex-start; gap:8px; background:var(--wp-no-bg); border:1px solid #e3c9c9; color:var(--wp-no-fg); border-radius:var(--wp-r); padding:11px 13px; margin:0 0 16px; font-size:.86rem; }
.wp-auth-err i{ font-size:17px; flex-shrink:0; margin-top:1px; }
.wp-auth-fielderr{ color:var(--wp-no-fg); font-size:.8rem; margin:5px 0 0; }
.wp-auth-note{ background:var(--wp-yes-bg); border:1px solid #cdddc8; color:var(--wp-yes-fg); border-radius:var(--wp-r); padding:11px 13px; margin:0 0 14px; font-size:.86rem; }

/* Botón slate a todo el ancho */
.wp-auth-btn{ display:block; width:100%; box-sizing:border-box; font-family:var(--wp-sans); font-size:.98rem; font-weight:500; padding:13px; border-radius:var(--wp-r-btn); border:1px solid var(--wp-accent); background:var(--wp-accent); color:#fff; cursor:pointer; text-align:center; text-decoration:none; margin-top:4px; transition:background var(--wp-t), transform var(--wp-t), box-shadow var(--wp-t); }
.wp-auth-btn:hover{ background:var(--wp-accent-deep); color:#fff; transform:translateY(-1px); box-shadow:var(--wp-shadow-sm); }
.wp-auth-btn--ghost{ background:transparent; color:var(--wp-ink); border:1px solid var(--wp-line); }
.wp-auth-btn--ghost:hover{ background:var(--wp-surface-2); color:var(--wp-ink); }

/* Enlaces */
.wp-auth-forgot{ text-align:center; margin-top:16px; }
.wp-auth-forgot a{ font-size:.85rem; }
.wp-auth-alt{ text-align:center; margin-top:18px; padding-top:18px; border-top:1px solid var(--wp-line-soft); font-size:.9rem; color:var(--wp-ink-soft); }
.wp-auth-alt a{ font-weight:500; }
.wp-auth-back{ text-align:center; margin-top:16px; font-size:.88rem; }

@media (max-width:480px){ .wp-authcard{ padding:28px 22px; } }
