/* WordPress's login page (wp-login.php) in Sepand Afzar's look: the panel's colours and font, right to left.
   Loaded after WordPress's own login.css, only while "صفحه‌ی ورود" is on in the manager panel. */
@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-Regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-Medium.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

body.login.sepand-login {
    --sl-brand: #ce181e;
    --sl-brand-hover: #b01419;
    --sl-brand-soft: #fdecec;
    --sl-text: #111827;
    --sl-muted: #6b7280;
    --sl-border: #d1d5db;
    min-height: 100vh;
    padding: 0 16px;
    box-sizing: border-box;
    background:
        radial-gradient(1200px 420px at 50% -120px, rgba(206, 24, 30, .12), transparent 70%),
        #f4f5f7;
    color: var(--sl-text);
    font-family: "Vazirmatn", Tahoma, "Segoe UI", sans-serif;
}

.sepand-login input,
.sepand-login button,
.sepand-login select,
.sepand-login textarea {
    font-family: inherit;
}

/* the card */
.sepand-login #login {
    width: 100%;
    max-width: 400px;
    margin: 7vh auto 0;
    padding: 32px 28px 24px;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    background: #fff;
    border-top: 4px solid var(--sl-brand);
    border-radius: 20px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 18px 48px rgba(15, 23, 42, .10);
}

/* the logo (WordPress's "W" replaced by Sepand Afzar's) */
.sepand-login #login h1 a,
.sepand-login .wp-login-logo a {
    width: 76px;
    height: 76px;
    margin: 0 auto 6px;
    background-image: url("../img/sepand-logo.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.sepand-login #login h1 a:focus,
.sepand-login .wp-login-logo a:focus {
    border-radius: 50%;
    box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--sl-brand);
    outline: none;
}

.sepand-login-intro {
    margin: 0 0 20px;
    text-align: center;
}

.sepand-login-brand {
    margin: 0 0 14px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    color: var(--sl-text);
}

.sepand-login-brand span {
    color: var(--sl-brand);
}

.sepand-login-title {
    margin: 0;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.6;
    color: var(--sl-text);
}

.sepand-login-subtitle {
    margin: 6px 0 0;
    font-size: 14px;
    line-height: 1.9;
    color: var(--sl-muted);
}

/* the form sits in the card, not in a box of its own */
.sepand-login #loginform,
.sepand-login #lostpasswordform,
.sepand-login #resetpassform,
.sepand-login #registerform {
    margin: 0;
    padding: 0;
    background: none;
    border: 0;
    box-shadow: none;
    overflow: visible;
}

/* #login: WordPress sets these margins with an id selector */
.sepand-login #login form p,
.sepand-login #login form .user-pass-wrap {
    margin-bottom: 16px;
}

.sepand-login form label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.7;
    color: #374151;
}

.sepand-login form .forgetmenot label {
    display: inline;
    margin: 0;
    font-weight: 500;
}

.sepand-login form .input,
.sepand-login input[type="text"],
.sepand-login input[type="email"],
.sepand-login input[type="password"] {
    min-height: 48px;
    margin: 0;
    padding: 8px 14px;
    font-size: 16px;
    line-height: 1.5;
    color: var(--sl-text);
    background: #f9fafb;
    border: 1px solid var(--sl-border);
    border-radius: 12px;
    box-shadow: none;
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.sepand-login form .input:focus,
.sepand-login input[type="text"]:focus,
.sepand-login input[type="email"]:focus,
.sepand-login input[type="password"]:focus {
    background: #fff;
    border-color: var(--sl-brand);
    box-shadow: 0 0 0 3px rgba(206, 24, 30, .16);
    outline: none;
}

/* the "show password" eye keeps WordPress's place, in the panel's colours */
.sepand-login .wp-pwd .button.wp-hide-pw {
    min-height: 48px;
    height: 48px;
    color: var(--sl-muted);
    background: transparent;
    border: 0;
    box-shadow: none;
}

.sepand-login .wp-pwd .button.wp-hide-pw:hover,
.sepand-login .wp-pwd .button.wp-hide-pw:focus {
    color: var(--sl-brand);
    background: transparent;
}

.sepand-login .wp-pwd .button.wp-hide-pw:focus {
    border-radius: 10px;
    box-shadow: 0 0 0 2px var(--sl-brand);
    outline: none;
}

.sepand-login input[type="checkbox"] {
    accent-color: var(--sl-brand);
}

.sepand-login input[type="checkbox"]:focus {
    border-color: var(--sl-brand);
    box-shadow: 0 0 0 2px rgba(206, 24, 30, .3);
}

/* WordPress's own check mark, in the panel's red */
.sepand-login input[type="checkbox"]:checked::before {
    content: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.83%204.89l1.34.94-5.81%208.38H9.02L5.78%209.67l1.34-1.25%202.57%202.4z%27%20fill%3D%27%23ce181e%27%2F%3E%3C%2Fsvg%3E");
}

.sepand-login #login form .forgetmenot {
    float: none;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
}

.sepand-login .wp-tooltip__toggle:focus {
    box-shadow: 0 0 0 2px var(--sl-brand);
    outline: none;
}

.sepand-login form .forgetmenot input[type="checkbox"] {
    margin: 0;
}

/* the sign-in button: full width, the panel's red */
.sepand-login #login form .submit,
.sepand-login #login p.submit {
    float: none;
    clear: both;
    margin: 0;
    padding: 0;
}

.sepand-login .button.button-primary,
.sepand-login .button-primary.button-large {
    float: none;
    width: 100%;
    min-height: 48px;
    padding: 0 18px;
    font-size: 16px;
    font-weight: 700;
    line-height: 46px;
    color: #fff;
    text-shadow: none;
    background: var(--sl-brand);
    border: 1px solid var(--sl-brand);
    border-radius: 12px;
    box-shadow: 0 8px 18px rgba(206, 24, 30, .24);
    transition: background-color .15s ease, box-shadow .15s ease;
}

.sepand-login .button.button-primary:hover,
.sepand-login .button.button-primary:active {
    color: #fff;
    background: var(--sl-brand-hover);
    border-color: var(--sl-brand-hover);
}

.sepand-login .button.button-primary:focus {
    color: #fff;
    background: var(--sl-brand-hover);
    border-color: var(--sl-brand-hover);
    box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--sl-brand);
    outline: none;
}

.sepand-login .button.button-secondary:not(.wp-hide-pw) {
    color: var(--sl-brand);
    border-color: var(--sl-brand);
    border-radius: 10px;
}

/* messages and errors */
.sepand-login #login_error,
.sepand-login .message,
.sepand-login .notice,
.sepand-login .success {
    margin: 0 0 18px;
    padding: 12px 14px;
    font-size: 14px;
    line-height: 1.9;
    background: #eff6ff;
    border: 0;
    border-inline-start: 4px solid #2563eb;
    border-radius: 12px;
    box-shadow: none;
}

.sepand-login #login_error,
.sepand-login .notice-error {
    background: var(--sl-brand-soft);
    border-inline-start-color: var(--sl-brand);
}

.sepand-login .success,
.sepand-login .notice-success {
    background: #ecfdf5;
    border-inline-start-color: #059669;
}

.sepand-login #login_error a,
.sepand-login .message a {
    color: var(--sl-brand);
}

/* links under the form */
.sepand-login #nav,
.sepand-login #backtoblog {
    margin: 18px 0 0;
    padding: 0;
    font-size: 14px;
    text-align: center;
    text-shadow: none;
}

.sepand-login #nav a,
.sepand-login #backtoblog a,
.sepand-login .privacy-policy-page-link a {
    color: var(--sl-brand);
    font-weight: 500;
    text-decoration: none;
}

.sepand-login #nav a:hover,
.sepand-login #backtoblog a:hover,
.sepand-login #nav a:focus,
.sepand-login #backtoblog a:focus {
    color: var(--sl-brand-hover);
    text-decoration: underline;
    box-shadow: none;
}

/* the plans link below takes the place of "← Go to the site" */
.sepand-login.sepand-login-has-plans-link #backtoblog {
    display: none;
}

.sepand-login .privacy-policy-page-link {
    margin: 14px 0 0;
    text-align: center;
}

.sepand-login-foot {
    max-width: 400px;
    margin: 18px auto 28px;
    direction: rtl;
    text-align: center;
    font-size: 14px;
    line-height: 1.9;
    color: var(--sl-muted);
}

.sepand-login-foot p {
    margin: 0 0 4px;
}

.sepand-login-foot a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    padding: 0 16px;
    font-weight: 600;
    color: var(--sl-brand);
    text-decoration: none;
    background: #fff;
    border: 1px solid rgba(206, 24, 30, .25);
    border-radius: 999px;
}

.sepand-login-foot a:hover,
.sepand-login-foot a:focus {
    color: #fff;
    background: var(--sl-brand);
    border-color: var(--sl-brand);
    outline: none;
}

.sepand-login .language-switcher {
    direction: rtl;
}

@media (max-width: 480px) {
    .sepand-login #login {
        margin-top: 16px;
        padding: 24px 18px 20px;
        border-radius: 16px;
    }

    .sepand-login #login h1 a,
    .sepand-login .wp-login-logo a {
        width: 64px;
        height: 64px;
    }

    .sepand-login-title {
        font-size: 17px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sepand-login form .input,
    .sepand-login input,
    .sepand-login .button {
        transition: none;
    }
}
