/* Luvpic Login — страница wp-login.php. Фон вешаем на html и фиксированный слой:
   градиент на body при html,body{height:100%} повторялся и давал «полосу» внизу. */
html{background:#f1f1f7!important;height:auto!important;min-height:100%}
body.login.lpl-login{--ink:#1f2330;--ink2:#2c3140;--muted:#6c6f7e;--line:#e3e0f0;--line2:#d3cfe5;--brass:#804fed;--brass-d:#5b34ae;height:auto!important;min-height:100vh;min-height:100dvh;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 16px calc(40px + env(safe-area-inset-bottom));box-sizing:border-box;background:none!important;font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
body.lpl-login::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(70% 50% at 50% -8%,rgba(150,112,248,.18),transparent 70%) no-repeat}
body.lpl-login *,body.lpl-login *::before,body.lpl-login *::after{box-sizing:border-box}
body.lpl-login #login{width:420px;max-width:100%;margin:0;padding:0}

/* логотип — сама иконка сайта, без плашки и тени */
body.lpl-login h1.wp-login-logo{margin:0 0 22px}
body.lpl-login h1.wp-login-logo a{display:block;width:52px;height:52px;margin:0 auto;padding:0;background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:0;box-shadow:none;outline:0}
body.lpl-login h1.wp-login-logo a:focus{box-shadow:none}
body.lpl-login h1.wp-login-logo a:focus-visible{outline:3px solid rgba(128,79,237,.4);outline-offset:6px;border-radius:12px}
body.lpl-login.lpl-nologo h1.wp-login-logo a{width:auto;height:auto;background:none!important;text-indent:0;overflow:visible;font:800 26px/1.1 'Inter',system-ui,sans-serif;letter-spacing:-.02em;color:var(--ink);text-align:center;text-decoration:none}

/* карточка: с JS шапка и форма собираются в .lpl-sheet; без JS — две склеенные части */
body.lpl-login .lpl-sheet,body.lpl-login .lpl-wp-card,body.lpl-login #loginform,body.lpl-login #lostpasswordform,body.lpl-login #resetpassform,body.lpl-login #registerform{margin:0;padding:28px 26px 24px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:0 24px 50px -38px rgba(31,35,48,.45);overflow:visible}
body.lpl-login .lpl-wp-card:has(+ #loginform){border-bottom:0;border-radius:26px 26px 0 0;box-shadow:none;padding-bottom:0}
body.lpl-login .lpl-wp-card + #loginform{border-top:0;border-radius:0 0 26px 26px;padding-top:0}
body.lpl-login .lpl-sheet .lpl-wp-card,body.lpl-login .lpl-sheet #loginform{margin:0;padding:0;background:none;border:0;border-radius:0;box-shadow:none}

body.lpl-login .lpl-wp-h{display:flex;flex-direction:column;gap:5px;margin:0 0 20px}
body.lpl-login .lpl-wp-h b{font-size:23px;font-weight:800;letter-spacing:-.02em;line-height:1.2;color:var(--ink)}
body.lpl-login .lpl-wp-h span{font-size:14px;color:var(--muted);line-height:1.5}
body.lpl-login .lpl.is-wp{margin:0;padding:0;background:none;border:0;box-shadow:none}
body.lpl-login .lpl.is-wp .lpl-or{margin:20px 0 16px}

/* поля */
body.lpl-login form p{margin:0}
body.lpl-login #loginform > p:first-of-type,body.lpl-login .user-pass-wrap{margin:0 0 14px}
body.lpl-login form label{display:block;margin:0 0 6px;font-size:13px;font-weight:600;color:var(--ink2);line-height:1.4}
body.lpl-login form .input,body.lpl-login input[type=text],body.lpl-login input[type=password],body.lpl-login input[type=email]{display:block;width:100%;height:48px;min-height:0;margin:0;padding:0 14px;border:1px solid var(--line2);border-radius:13px;background:#fff;box-shadow:none;font-size:15px;line-height:1.2;color:var(--ink);transition:border-color .15s,box-shadow .15s}
body.lpl-login form .input:focus,body.lpl-login input[type=text]:focus,body.lpl-login input[type=password]:focus,body.lpl-login input[type=email]:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(128,79,237,.18);outline:0}
body.lpl-login .wp-pwd{position:relative;margin:0}
body.lpl-login .wp-pwd .input{padding-right:50px}
body.lpl-login .button.wp-hide-pw{position:absolute!important;top:0!important;right:2px!important;display:flex!important;align-items:center;justify-content:center;width:46px!important;height:48px!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;color:var(--muted)}
body.lpl-login .button.wp-hide-pw:hover{color:var(--ink)}
body.lpl-login .button.wp-hide-pw:focus-visible{outline:2px solid rgba(128,79,237,.5);outline-offset:-6px;border-radius:10px}
body.lpl-login .button.wp-hide-pw .dashicons{position:static!important;top:auto!important;width:20px;height:20px;font-size:20px;line-height:1}

/* «Запомнить меня» и «Забыли пароль?» в одну строку */
body.lpl-login .lpl-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 18px}
body.lpl-login .forgetmenot{float:none;display:flex;align-items:center;gap:8px;margin:0 0 16px}
body.lpl-login .lpl-row .forgetmenot{margin:0}
body.lpl-login .forgetmenot label{display:inline;margin:0;font-size:13.5px;font-weight:500;color:var(--muted)}
body.lpl-login input[type=checkbox]{width:18px;height:18px;min-width:18px;margin:0;border:1px solid var(--line2);border-radius:5px;box-shadow:none}
body.lpl-login input[type=checkbox]:checked{background:var(--ink);border-color:var(--ink)}
body.lpl-login input[type=checkbox]:checked::before{filter:brightness(0) invert(1)}
body.lpl-login input[type=checkbox]:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(128,79,237,.18)}
body.lpl-login .lpl-lost{flex:none;font-size:13.5px;font-weight:600;color:var(--brass-d);text-decoration:none;white-space:nowrap}
body.lpl-login .lpl-lost:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* кнопки */
body.lpl-login .submit{margin:0;padding:0}
body.lpl-login .button-primary{float:none;display:block;width:100%;height:50px;min-height:0;margin:0;padding:0 18px;border:0;border-radius:14px;background:var(--ink);box-shadow:none;color:#fff;font-size:15.5px;font-weight:700;line-height:50px;text-shadow:none;transition:background .15s,transform .15s}
body.lpl-login .button-primary:hover,body.lpl-login .button-primary:focus{background:var(--ink2);color:#fff;box-shadow:none}
body.lpl-login .button-primary:focus-visible{outline:3px solid rgba(128,79,237,.45);outline-offset:2px}
body.lpl-login .button-primary:active{transform:translateY(1px)}
body.lpl-login .button:not(.button-primary):not(.wp-hide-pw){border-radius:10px}

/* документы — внутри карточки под кнопкой */
body.lpl-login .lpl-wp-legal{width:420px;max-width:100%;margin:18px auto 0}
body.lpl-login .lpl-sheet .lpl-wp-legal{width:auto;margin:20px 0 0;padding:16px 0 0;border-top:1px solid var(--line)}
body.lpl-login .lpl-wp-legal .lpl-legal{margin:0!important;text-align:center}
body.lpl-login:has(.lpl-wp-legal) .privacy-policy-page-link{display:none}

/* ссылки под карточкой */
body.lpl-login #nav,body.lpl-login #backtoblog{margin:18px 0 0;padding:0;text-align:center;font-size:13.5px;color:var(--muted)}
body.lpl-login #nav[hidden]{display:none}
body.lpl-login #nav a,body.lpl-login #backtoblog a{color:var(--brass-d);text-decoration:none;border-bottom:1px solid rgba(91,52,174,.3)}
body.lpl-login #nav a:hover,body.lpl-login #backtoblog a:hover{color:var(--ink);border-color:currentColor}
body.lpl-login #nav + #backtoblog{margin-top:10px}
body.lpl-login .privacy-policy-page-link{margin:14px 0 0;text-align:center}
body.lpl-login .privacy-policy-page-link a{color:var(--muted);font-size:12px}

/* сообщения */
body.lpl-login #login_error,body.lpl-login .message,body.lpl-login .notice,body.lpl-login .success{margin:0 0 14px;padding:12px 16px;border:1px solid var(--line);border-left:4px solid var(--brass);border-radius:14px;background:#fff;box-shadow:none;font-size:13.5px;line-height:1.5}
body.lpl-login #login_error{border-left-color:#b3363c}
body.lpl-login .language-switcher{margin-top:16px}
body.lpl-login .language-switcher select,body.lpl-login .language-switcher .button{height:34px;border-radius:10px}

@media (max-width:480px){
  body.login.lpl-login{justify-content:flex-start;padding:28px 12px calc(32px + env(safe-area-inset-bottom))}
  body.lpl-login h1.wp-login-logo{margin-bottom:18px}
  body.lpl-login h1.wp-login-logo a{width:46px;height:46px}
  body.lpl-login .lpl-sheet,body.lpl-login .lpl-wp-card,body.lpl-login #loginform,body.lpl-login #lostpasswordform,body.lpl-login #resetpassform,body.lpl-login #registerform{padding:22px 18px 20px;border-radius:22px}
  body.lpl-login .lpl-wp-card:has(+ #loginform){border-radius:22px 22px 0 0;padding-bottom:0}
  body.lpl-login .lpl-wp-card + #loginform{border-radius:0 0 22px 22px;padding-top:0}
  body.lpl-login .lpl-wp-h b{font-size:21px}
  body.lpl-login form .input,body.lpl-login input[type=text],body.lpl-login input[type=password],body.lpl-login input[type=email]{font-size:16px}
}
@media (prefers-reduced-motion:reduce){body.lpl-login .button-primary,body.lpl-login form .input{transition:none}}
