/* =============================
	 RUNM Auth Screens (Login / Register / Lost Password)
	 Rebuild for clarity, contrast, consistency
	 ============================= */
 :root {--runm-primary:#0057b8;--runm-primary-accent:#1d78ff;--runm-dark:#0b2038;--runm-bg-gradient:linear-gradient(145deg,#003776 0%,#0057b8 55%,#0a6dff 100%);--runm-focus-ring:0 0 0 3px #fff,0 0 0 6px var(--runm-primary-accent);--runm-radius:16px;--runm-field-radius:10px;--runm-transition: .32s cubic-bezier(.4,0,.2,1);}
 body.login {min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--runm-bg-gradient);font-family:'Inter','Segoe UI',system-ui,sans-serif;padding:3rem;}
 #login {width:440px;max-width:100%;background:#ffffff;border-radius:var(--runm-radius);padding:3rem 2.75rem 3.25rem;box-shadow:0 28px 65px -24px rgba(0,50,130,.55),0 14px 34px -18px rgba(0,0,0,.28);}
 #login h1 {margin:0 0 2.3rem;text-align:center;}
#login h1 a {text-indent:0 !important;clip:auto !important;position:relative !important;background:none !important;box-shadow:none;width:auto;height:auto;display:inline-block;margin:0;padding:0;line-height:1;color:#0d2f55 !important;overflow:visible !important;}
 #login h1 a, #login h1 a:visited {color:#0d2f55;}
 #login h1 a.site-title--brand {font-size:2.85rem;font-weight:750;font-style:italic;letter-spacing:.55px;color:transparent;background:linear-gradient(90deg,#ffffff,#d6e8ff);-webkit-background-clip:text;background-clip:text;}
 #login h1 a.site-title--brand:after {content:"";position:absolute;left:0;right:0;bottom:-6px;height:4px;background:linear-gradient(90deg,var(--runm-primary),var(--runm-primary-accent));border-radius:4px;opacity:.92;transform:scaleX(0);transform-origin:left center;animation:runmUnderline .85s .15s cubic-bezier(.83,0,.17,1) forwards;}
 #login h1 a:not(.site-title--brand){font-size:2.5rem;font-weight:700;font-style:italic;color:#0d2f55;letter-spacing:.5px;}

 /* Forms */
.login #loginform, .login #registerform, .login #lostpasswordform {background:transparent;padding:0;margin:0 0 1.9rem;box-shadow:none;border:0 !important;}
.login #registerform {border:0 !important;}
.login #loginform p.submit, .login #registerform p.submit {margin-top:1.5rem;display:flex;justify-content:center;}
 .login form .input, .login input[type=text], .login input[type=email], .login input[type=password] {background:#f3f7fd;border:1px solid #c1ccd6;padding:.85rem 1rem;font-size:1rem;border-radius:var(--runm-field-radius);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;}
 .login form .input:focus {background:#fff;border-color:var(--runm-primary);box-shadow:0 0 0 3px rgba(0,112,255,.25);outline:none;}
 .login form label {display:block;font-size:.70rem;font-weight:650;letter-spacing:.75px;text-transform:uppercase;color:#0f2944;margin:0 0 .35rem;}
 .login input[type=checkbox]{border-radius:4px;accent-color:var(--runm-primary);}

/* Remember me row alignment */
.login form p.forgetmenot {display:flex;align-items:center;gap:.55rem;margin:.75rem 0 .35rem;padding:0;font-size:.72rem;letter-spacing:.4px;color:#17324a;font-weight:500;}
.login form p.forgetmenot input[type=checkbox]{margin:0;transform:translateY(1px);}
.login form p.forgetmenot label {margin:0;display:inline;font-size:.68rem;font-weight:600;letter-spacing:.65px;}

/* Extra spacing before submit when recaptcha placeholder present */
#runm-recaptcha-placeholder + p.submit {margin-top:1.1rem;}

/* Microcopy privacidad */
.runm-privacy-note {font-size:.66rem;line-height:1.25;color:#415569;letter-spacing:.35px;margin:.55rem 0 0;text-align:center;opacity:.85;}
.runm-privacy-note strong {color:var(--runm-primary);font-weight:600;}

 /* Messages */
 .login .message, .login .success, .login #login_error {border-left:4px solid var(--runm-primary);box-shadow:0 6px 18px -10px rgba(0,0,0,.18);border-radius:10px;padding:1rem 1.15rem;margin:0 0 1.6rem;font-size:.92rem;line-height:1.4;}
 .login .message {background:#f0f6ff;}
 .login #login_error {border-left-color:#d93025;background:#ffecec;}

 /* Primary Button */
.login .button-primary {background:linear-gradient(145deg,var(--runm-primary) 0%,var(--runm-primary-accent) 95%);border:0;border-radius:14px;padding:.95rem 2.2rem;font-weight:650;letter-spacing:.55px;font-size:1.05rem;cursor:pointer;box-shadow:0 8px 22px -10px rgba(0,60,140,.55),0 4px 10px -4px rgba(0,0,0,.35);transition:var(--runm-transition);position:relative;min-width:160px;}
 .login .button-primary:hover {filter:brightness(1.08);transform:translateY(-2px);}
 .login .button-primary:active {transform:translateY(0);}
 .login .button-primary:focus {box-shadow:var(--runm-focus-ring);outline:none;}
 .login .button-primary:disabled {opacity:.55;cursor:not-allowed;box-shadow:none;filter:none;}

 /* Secondary Links (back / register) */
 .login #backtoblog, .login #nav {margin:1.2rem 0 .5rem;text-align:center;padding:0;}
 .login #backtoblog a, .login #nav a {color:var(--runm-primary) !important;font-weight:600;text-decoration:none;position:relative;display:inline-block;padding:.15rem .2rem;}
 .login #backtoblog a:after, .login #nav a:after {content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--runm-primary-accent);transition:width .25s ease;}
 .login #backtoblog a:hover:after, .login #nav a:hover:after, .login #backtoblog a:focus-visible:after, .login #nav a:focus-visible:after {width:100%;}
 .login #backtoblog a:focus-visible, .login #nav a:focus-visible {outline:none;box-shadow:0 0 0 3px rgba(0,95,190,.25),0 0 0 6px rgba(0,95,190,.4);border-radius:4px;}

 /* Password toggle */
 .runm-pass-toggle {position:absolute;right:6px;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.05);border:1px solid #b7c4cf;border-radius:7px;font-size:.62rem;font-weight:600;letter-spacing:.55px;text-transform:uppercase;padding:.45rem .55rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;color:#17324a;transition:.25s ease;}
 .runm-pass-toggle:hover {background:rgba(0,0,0,.09);}
 .runm-pass-toggle:focus {outline:none;box-shadow:0 0 0 3px rgba(0,112,255,.3);}
 .runm-pass-toggle[aria-pressed="true"] {background:var(--runm-primary);border-color:var(--runm-primary);color:#fff;}

 /* reCAPTCHA placeholder */
 .runm-recaptcha-box {margin:.6rem 0 1.1rem;padding:.85rem 1rem;border:1px dashed #9fb3c4;border-radius:10px;font-size:.72rem;text-align:center;background:#f3f7fb;color:#24415b;letter-spacing:.5px;font-weight:500;}

 /* Register / Lost password CTA (injected) */
 /* CTA de registro inyectada eliminada en PHP; se mantienen enlaces estándar visibles */
 .runm-login-register-cta {display:none;} /* legacy safeguard: si quedara cacheado */

/* Registro headline mejorado */
.runm-register-headline {background:#f3f7fd;border:1px solid #c1ccd6;margin:0 0 1.25rem;padding:1.05rem 1.15rem 1.15rem;border-radius:12px;box-shadow:0 6px 18px -10px rgba(0,0,0,.06);position:relative;overflow:hidden;}
.runm-register-headline:before {content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 14% 20%,rgba(0,123,255,.18),transparent 60%),radial-gradient(circle at 90% 85%,rgba(0,90,210,.15),transparent 65%);}
.runm-register-headline__title {display:flex;align-items:center;gap:.55rem;font-size:1.05rem;font-weight:700;color:#0d2f55;letter-spacing:.3px;margin:0 0 .4rem;}
.runm-register-headline__title-icon {width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--runm-primary) 0%,var(--runm-primary-accent) 100%);color:#fff;font-size:1.05rem;box-shadow:0 4px 10px -4px rgba(0,70,160,.4);}
.runm-register-headline__benefits {list-style:none;margin:.2rem 0 0;padding:0 0 0 .15rem;font-size:.78rem;line-height:1.35;color:#1c3852;display:grid;gap:.35rem;}
.runm-register-headline__benefits li {position:relative;padding-left:1.15rem;}
.runm-register-headline__benefits li:before {content:"";position:absolute;left:0;top:.45rem;width:.55rem;height:.55rem;border-radius:3px;transform:rotate(45deg);background:linear-gradient(135deg,var(--runm-primary),var(--runm-primary-accent));box-shadow:0 0 0 2px #fff;}
.runm-register-headline__subtitle {display:block;font-size:.8rem;line-height:1.35;color:#1c3852;margin:0 0 .55rem;font-weight:500;letter-spacing:.2px;}
@media (max-width:560px){.runm-register-headline__title{font-size:.98rem;} .runm-register-headline__benefits{font-size:.74rem;}}

 /* Accessibility helpers */
 .runm-visually-hidden {position:absolute !important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;white-space:nowrap;}
 #login .runm-status[aria-live] {margin:.75rem 0 0;font-size:.78rem;color:#0f2944;}

 /* Animations */
 @keyframes runmUnderline {to {transform:scaleX(1);} }
 @media (prefers-reduced-motion:reduce){#login h1 a.site-title--brand:after{animation:none;transform:scaleX(1);} .login .button-primary{transition:none;} .runm-pass-toggle{transition:none;}}

 /* Responsiveness */
 @media (max-width:560px){body.login{padding:1.6rem;}#login{padding:2.2rem 1.6rem 2.4rem;width:100%;}#login h1 a.site-title--brand{font-size:2.35rem;} .login form .input{font-size:.97rem;} }
 @media (max-width:380px){#login{padding:2rem 1.25rem 2.2rem;}#login h1 a.site-title--brand{font-size:2.1rem;} }

 /* Hide language & privacy */
 .login #language-switcher, .login .privacy-policy-page-link {display:none !important;}
