/* Soidraw — scheme 01. Scoped to the standalone native login screens. */
body.yw-branded-login {
    --yw-base: #0c120b;
    --yw-text: #e2e9dc;
    --yw-muted: #b4bdb0;
    --yw-green: #a8cc79;
    --yw-ui: "Fusion UI CJK", "Cousine", "Microsoft YaHei", monospace;
    --yw-pixel: "Fusion UI CJK", "Pixeloid Sans", sans-serif;
    margin: 0;
    min-height: 100vh;
    height: auto;
    background: var(--yw-base);
    color: var(--yw-text);
    color-scheme: dark;
    font: 14px/1.7 "Cousine", "Microsoft YaHei", sans-serif;
    font-synthesis: none;
}
.yw-branded-login *, .yw-branded-login *::before, .yw-branded-login *::after { box-sizing: border-box; }
.yw-branded-login .yw-login-stage a { color: var(--yw-green); text-decoration: none; text-underline-offset: 5px; }
.yw-branded-login .yw-login-stage a:hover { color: #c3e09c; text-decoration: underline; }
.yw-branded-login .yw-login-stage :is(a, button, input, select):focus-visible { outline: 2px solid var(--yw-green); outline-offset: 3px; box-shadow: none; }
.yw-login-chrome { font-family: var(--wp--preset--font-family--cousine, "Cousine"); font-size: var(--wp--preset--font-size--medium, 18px); line-height: 24px; color: var(--wp--preset--color--contrast, #fff); }
.yw-login-chrome > :is(header, main, footer) { margin-block: 0; }
.yw-login-stage { padding: clamp(24px, 4vw, 64px) clamp(16px, 2.85vw, 48px); background: var(--yw-login-grass) center / auto repeat var(--wp--preset--color--primary, #418527); }
.yw-login-panel { display: grid; grid-template-columns: minmax(0, 440px); grid-template-rows: auto auto; justify-content: center; width: 100%; max-width: 540px; margin-inline: auto; padding: 40px 24px 32px; border: 1px solid var(--wp--preset--color--contrast, #fff); background: var(--wp--preset--color--base, #0c120b); color: var(--yw-text); font: 14px/1.7 "Cousine", "Microsoft YaHei", sans-serif; }
.yw-branded-login #login { grid-area: 1 / 1; width: 100%; min-width: 0; padding: 0; margin: 0; border: 0; background: transparent; }
/* Core owns this element; shared Header is now the visible brand/home link. */
.yw-branded-login #login > .wp-login-logo { display: none; }
.yw-login-heading { margin-bottom: 28px; }
.yw-branded-login .yw-login-eyebrow { font: 11px/1.5 "Pixeloid Sans", sans-serif; letter-spacing: 1.5px; color: var(--yw-green); margin: 0 0 10px; }
.yw-login-heading h2 { font: 400 30px/1.25 var(--yw-pixel); margin: 0 0 12px; color: var(--yw-text); }
.yw-branded-login .yw-login-description { font-size: 14px; line-height: 1.7; color: var(--yw-muted); margin: 0; }
.yw-branded-login #login form { padding: 0; margin: 0; border: 0; background: none; box-shadow: none; overflow: visible; color: var(--yw-text); }
.yw-branded-login #login form p { margin: 0 0 22px; }
.yw-branded-login #login label { display: inline-block; margin-bottom: 8px; color: var(--yw-text); font: 400 16px/1.5 var(--yw-ui); }
.yw-branded-login #login input:is([type=text], [type=password], [type=email]) { display: block; width: 100%; min-height: 50px; padding: 12px 14px; margin: 0; background: #182218; border: 1px solid #687c60; border-radius: 0; color: var(--yw-text); font: 400 18px/1.4 "Cousine", "Microsoft YaHei", sans-serif; box-shadow: none; caret-color: var(--yw-green); }
.yw-branded-login #login input:hover { border-color: #8b9e80; }
.yw-branded-login #login input:focus { border-color: var(--yw-green); outline: 2px solid var(--yw-green); outline-offset: 2px; }
.yw-branded-login #login input:is([type=text], [type=password], [type=email]):autofill { box-shadow: 0 0 0 1000px #182218 inset; -webkit-text-fill-color: var(--yw-text); }
.yw-branded-login #login .user-pass-wrap { margin-bottom: 22px; }
.yw-branded-login #login .wp-pwd { position: relative; margin: 0; }
.yw-branded-login #login .wp-pwd input { padding-right: 50px; }
.yw-branded-login #login .wp-hide-pw { position: absolute; top: 1px; right: 1px; width: 48px; height: calc(100% - 2px); min-height: 0; padding: 0; border: 0; border-radius: 0; color: #a9bb9d; background: transparent; box-shadow: none; display: grid; place-items: center; }
.yw-branded-login #login .wp-hide-pw:hover { color: var(--yw-text); background: #293724; }
.yw-branded-login #login .wp-hide-pw .dashicons { top: auto; width: 22px; height: 22px; font-size: 22px; line-height: 1; }
.yw-branded-login #loginform { display: flex; flex-wrap: wrap; column-gap: 8px; }
.yw-branded-login #loginform > :is(p, div) { flex-basis: 100%; min-width: 0; }
.yw-branded-login #loginform > .forgetmenot { flex: 1 1 auto; order: 10; float: none; display: flex; align-items: center; gap: 8px; margin: 0 0 26px; }
.yw-branded-login #loginform .forgetmenot label { margin: 0; font-size: 14px; }
.yw-branded-login #loginform > .yw-login-forgot { flex: 0 1 auto; order: 11; font: 14px/1.7 var(--yw-ui); margin: 0 0 26px; align-self: center; }
.yw-branded-login #login input[type=checkbox] { width: 16px; height: 16px; min-width: 16px; margin: 0; border: 1px solid #86977b; border-radius: 0; background: #182218; box-shadow: none; }
.yw-branded-login #login input[type=checkbox]:checked::before { color: var(--yw-green); }
.yw-branded-login #login .wp-tooltip__toggle { color: #a9bb9d; background: transparent; border: 0; padding: 0; }
.yw-branded-login .wp-tooltip__bubble { max-width: min(300px, calc(100vw - 24px)); color: var(--yw-text); background: #25321e; border: 1px solid #8b9e80; border-radius: 0; font: 13px/1.7 "Cousine", "Microsoft YaHei", sans-serif; }
.yw-branded-login #login .submit { clear: both; width: 100%; margin: 0; order: 12; }
.yw-branded-login #login :is(.button-primary, #wp-submit) { display: block; float: none; width: 100%; min-height: 48px; height: auto; padding: 8px 16px; border: 2px solid #d1d1d1; border-radius: 0; background: #999; color: #fff; font: 400 18px/1.5 var(--yw-pixel); text-shadow: 2px 2px #3b3b3b; box-shadow: inset -2px -4px #0006, inset 2px 2px #ffffff77; cursor: pointer; }
.yw-branded-login #login :is(.button-primary, #wp-submit):hover { background: #a4a4a4; border-color: #e2e9dc; }
.yw-branded-login #login :is(.button-primary, #wp-submit):disabled { cursor: default; opacity: .5; }
.yw-branded-login #login :is(.button-primary, #wp-submit):active { padding-top: 10px; padding-bottom: 6px; background: #818181; }
.yw-branded-login #login #nav { margin: 24px 0 0; padding: 0; text-align: center; font: 14px/1.75 var(--yw-ui); color: var(--yw-muted); }
.yw-branded-login #login #nav a { color: var(--yw-green); }
.yw-branded-login.login-action-login #nav { font-size: 0 !important; }
.yw-branded-login.login-action-login #nav .wp-login-register { font-size: 14px; }
.yw-branded-login.login-action-login #nav:has(.wp-login-register)::before { content: var(--yw-register-prompt); font-size: 14px; margin-right: 8px; }
.yw-branded-login.login-action-login #nav .wp-login-lost-password, .yw-branded-login #backtoblog { display: none; }
.yw-branded-login #login :is(.message, .notice, #login_error) { margin: 0 0 24px; padding: 12px 14px; border: 0; border-left: 3px solid var(--yw-green); color: #e0ead7; background: #1f3218; box-shadow: none; overflow-wrap: anywhere; font-size: 14px; line-height: 1.7; }
.yw-branded-login #login :is(.notice-error, #login_error) { border-color: #d78b75; background: #35201a; color: #f0d2c8; }
.yw-branded-login #login .notice p { margin: 0; }
.yw-branded-login #login .notice ul { margin: 0; padding-left: 18px; }
.yw-branded-login #login #reg_passmail, .yw-branded-login #login .description { font-size: 13px; line-height: 1.7; color: var(--yw-muted); }
.yw-branded-login #login .cf-turnstile { width: fit-content; max-width: 100%; margin: 0 auto 22px !important; }
.yw-branded-login #login .cf-turnstile-br { display: none; }
.yw-branded-login #login .pw-weak { margin: 16px 0; }
.yw-branded-login #login .pw-weak label { font-size: 14px; }
.yw-branded-login #pass-strength-result { margin: 12px 0; border-radius: 0; color: #17210f; font: 14px/1.5 var(--yw-ui); }
.yw-branded-login .language-switcher { grid-area: 2 / 1; justify-self: center; max-width: 100%; margin: 24px 0 0; padding: 0; }
.yw-branded-login #language-switcher { display: flex; flex-wrap: nowrap; align-items: center; gap: 6px; padding: 0; }
.yw-branded-login #language-switcher label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.yw-branded-login #language-switcher select { width: 110px; min-width: 0; max-width: 100%; min-height: 32px; height: auto; margin: 0; padding: 5px 22px 5px 4px; background-color: #10190e; color: var(--yw-text); border: 0; border-bottom: 1px solid #79896d; border-radius: 0; box-shadow: none; font: 12px/1.5 var(--yw-ui); }
.yw-branded-login #language-switcher .button { flex-shrink: 0; min-height: 32px; padding: 4px 6px; margin: 0; background: #202c18; border: 1px solid #687c60; border-radius: 0; color: var(--yw-text); box-shadow: none; font: 12px/1.5 var(--yw-ui); }
@media (max-width: 480px) {
    .yw-login-stage { padding: 24px 16px; }
    .yw-login-panel { padding: 28px 20px 24px; }
    .yw-login-heading { margin-bottom: 24px; }
    .yw-login-heading h2 { font-size: 28px; }
    .yw-branded-login #login input:is([type=text], [type=password], [type=email]) { min-height: 48px; font-size: 16px; }
    .yw-branded-login #login form p, .yw-branded-login #login .user-pass-wrap { margin-bottom: 20px; }
    .yw-branded-login #login .submit { margin-bottom: 0; }
}
@media (max-width: 360px) {
    .yw-login-panel { padding-inline: 20px; }
    .yw-branded-login #language-switcher select { width: 83px; }
}
@media (prefers-reduced-motion: reduce) {
    .yw-branded-login #login .shake { animation: none; }
}
