/* Shared account presentation; WordPress recovery also loads this without Bootstrap. */
@font-face { font-family: Inter; font-style: normal; font-weight: 400 700; font-display: swap; src: url('fonts/inter-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020-2029, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Inter; font-style: normal; font-weight: 400 700; font-display: swap; src: url('fonts/inter-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
body.amour-auth { --auth-bg: #070309; --auth-panel: #0c0611f5; --auth-border: #35143c; --auth-text: #f7f0fa; --auth-muted: #bfb3c8; --auth-pink: #e92bca; --auth-gradient: linear-gradient(110deg, #e92bca, #a52bf3); position: relative; isolation: isolate; box-sizing: border-box; min-width: 0; height: auto; min-height: 100vh; margin: 0; color: var(--auth-text); background: radial-gradient(ellipse at 12% 12%, #75126550, transparent 45%), radial-gradient(ellipse at 92% 88%, #50118c50, transparent 48%), var(--auth-bg); font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; font-size: 14px; line-height: 1.6; color-scheme: dark; -webkit-font-smoothing: antialiased; }
.amour-auth *, .amour-auth *::before, .amour-auth *::after { box-sizing: border-box; }
body.amour-auth::before { content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: linear-gradient(#e92bca05 1px, transparent 1px), linear-gradient(90deg, #e92bca05 1px, transparent 1px); background-size: 56px 56px; }
.amour-auth-shell { display: grid; align-items: center; justify-items: center; min-height: 100svh; padding: 3rem 1rem 4.5rem; }
.amour-auth-card, body.amour-auth--core #login { width: min(100%, 480px); margin: 0; padding: 2.25rem; border: 1px solid #e92bca38; border-radius: 1.5rem; background: var(--auth-panel); box-shadow: 0 30px 100px #0007, 0 0 40px #e92bca0d; }
.amour-auth-home { display: block; margin-bottom: 2rem; text-align: center; text-decoration: none; }
.amour-auth-home .amour-logo-lockup { --amour-logo-w: min(260px, 72vw); }
.amour-auth-brand { display: inline-block; white-space: nowrap; font-size: clamp(1.05rem, 5vw, 1.5rem); font-weight: 700; letter-spacing: -.045em; line-height: 1.4; color: var(--auth-text); }
.amour-auth-brand > span:first-child { color: var(--auth-pink); }
.amour-auth-brand .amour-auth-brand__domain { color: var(--auth-muted); font-size: .72em; font-weight: 500; letter-spacing: -.025em; }
.amour-auth-intro { margin: 0 0 1.5rem; text-align: center; }
.amour-auth-icon { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; margin: 0 0 1rem; border: 1px solid #e92bca50; border-radius: 1rem; color: #ff88e9; background: linear-gradient(145deg, #e92bca1c, #a52bf30c); box-shadow: 0 0 24px #e92bca12; }
.amour-auth .amour-auth-eyebrow { margin: 0 0 .6rem; color: #ff88e9; font-size: .65rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.amour-auth .amour-auth-intro :is(h1, h2) { margin: 0 0 .65rem; color: var(--auth-text); font-size: clamp(1.6rem, 4vw, 2rem); font-weight: 700; line-height: 1.2; letter-spacing: -.045em; }
.amour-auth .amour-auth-description { margin: 0 auto; max-width: 330px; color: var(--auth-muted); font-size: .85rem; line-height: 1.65; }
.amour-auth-form { margin: 0; }
.amour-auth-field { margin-bottom: 1.1rem; }
.amour-auth-form label, body.amour-auth--core #login label { display: block; margin-bottom: .45rem; color: var(--auth-muted); font-size: .8rem; font-weight: 500; line-height: 1.5; }
.amour-auth-form input:is([type='text'], [type='password']), body.amour-auth--core #login input:is([type='text'], [type='password'], [type='email']) { display: block; width: 100%; min-height: 52px; margin: 0; padding: .8rem .95rem; border: 1px solid var(--auth-border); border-radius: .85rem; outline: 0; color: var(--auth-text); background: #100817; box-shadow: none; font-family: inherit; font-size: 16px; line-height: 1.4; transition: border-color .18s, box-shadow .18s; }
.amour-auth-form input:focus, body.amour-auth--core #login input:focus { border-color: var(--auth-pink); box-shadow: 0 0 0 3px #e92bca20; }
.amour-auth input:-webkit-autofill { -webkit-text-fill-color: var(--auth-text); box-shadow: 0 0 0 1000px #100817 inset !important; caret-color: var(--auth-text); }
.amour-auth-password { position: relative; }
.amour-auth-password #user_pass { padding-right: 3.25rem; }
.amour-auth-password__toggle { position: absolute; top: 4px; right: 4px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: .65rem; color: var(--auth-muted); background: transparent; cursor: pointer; }
.amour-auth-password__toggle:hover { color: #ff88e9; background: #e92bca12; }
.amour-auth-password__slash { display: none; }
.amour-auth-password__toggle[aria-pressed='true'] .amour-auth-password__slash { display: block; }
.amour-auth-options { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .3rem .8rem; margin: -.2rem 0 1.2rem; }
.amour-auth-form .amour-auth-remember { display: inline-flex; align-items: center; min-height: 40px; gap: .55rem; margin: 0; cursor: pointer; font-weight: 400; }
.amour-auth-form input[type='checkbox'] { width: 17px; height: 17px; margin: 0; accent-color: var(--auth-pink); }
.amour-auth a { color: #ff88e9; text-decoration: none; text-underline-offset: 3px; }
.amour-auth a:hover { color: #ffb0ef; }
.amour-auth-options > a { display: inline-flex; align-items: center; min-height: 40px; font-size: .8rem; }
.amour-auth-submit, body.amour-auth--core #login .button-primary { display: inline-flex; align-items: center; justify-content: center; gap: .65rem; float: none; width: 100%; min-height: 52px; margin: 0; padding: .8rem 1.25rem; border: 1px solid #f955df60; border-radius: 999px; color: #0b0310; background: var(--auth-gradient); box-shadow: 0 0 25px #e92bca2b; text-shadow: none; text-decoration: none; font-family: inherit; font-size: .9rem; font-weight: 700; line-height: 1.5; cursor: pointer; transition: box-shadow .18s, filter .18s; }
.amour-auth-submit:hover, body.amour-auth--core #login .button-primary:hover { color: #0b0310; background: var(--auth-gradient); box-shadow: 0 0 32px #e92bca45; filter: brightness(1.08); }
.amour-auth :is(a, button, input[type='submit'], input[type='checkbox']):focus-visible { outline: 2px solid #ff88e9; outline-offset: 4px; }
.amour-auth-back { display: flex; align-items: center; justify-content: center; gap: .5rem; min-height: 44px; margin: 1rem 0 .2rem; font-size: .8rem; }
.amour-auth-policy { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .55rem; margin-top: 1rem; padding-top: 1.2rem; border-top: 1px solid var(--auth-border); color: var(--auth-muted); font-size: .7rem; }
.amour-auth-policy a { color: var(--auth-muted); }
.amour-auth-notice, body.amour-auth--core #login :is(.notice, .message), body.amour-auth--core #login #login_error { margin: 0 0 1.4rem; padding: .85rem 1rem; border: 1px solid #e92bca40; border-left: 3px solid var(--auth-pink); border-radius: .75rem; color: var(--auth-muted); background: #e92bca0c; box-shadow: none; font-size: .82rem; line-height: 1.65; overflow-wrap: anywhere; }
.amour-auth-notice--error, body.amour-auth--core #login :is(.notice-error, #login_error) { border-color: #ff8eae60; border-left-color: #ff8eae; color: #ffb8cd; background: #ff8eae0b; }
.amour-auth [hidden] { display: none !important; }
/* Native reset/recovery forms retain their WordPress actions and fields. */
body.amour-auth--core { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100svh; padding: 3rem 1rem 4.5rem; }
body.amour-auth--core #login { flex-shrink: 0; }
body.amour-auth--core #login .wp-login-logo { margin: 0 0 2rem; padding: 0; }
body.amour-auth--core #login .wp-login-logo a { display: block; width: auto; height: auto; margin: 0; padding: 0; overflow: visible; border: 0; border-radius: 0; background: none; box-shadow: none; text-indent: 0; text-decoration: none; }
body.amour-auth--core #login form { margin: 1.3rem 0 0; padding: 0; overflow: visible; border: 0; background: transparent; box-shadow: none; }
body.amour-auth--core #login form > p { margin: 0 0 1.15rem; }
body.amour-auth--core #login form .input { margin-bottom: .5rem; }
body.amour-auth--core #login p.submit { margin: 1.3rem 0 0; }
body.amour-auth--core #login :is(#nav, #backtoblog) { margin: 1rem 0 0; padding: 0; text-align: center; font-size: .8rem; }
body.amour-auth--core #login :is(#nav, #backtoblog) a { display: inline-flex; align-items: center; min-height: 40px; color: #ff88e9; }
body.amour-auth--core #login .privacy-policy-page-link { margin: 1.1rem 0 0; padding-top: 1rem; border-top: 1px solid var(--auth-border); text-align: center; font-size: .7rem; }
body.amour-auth--core #login .privacy-policy-link { color: var(--auth-muted); }
body.amour-auth--core #login .notice p { margin: 0; }
body.amour-auth--core.login-action-lostpassword #login .notice-info { padding: 0; border: 0; background: transparent; text-align: center; }
body.amour-auth--core #login .wp-hide-pw { position: absolute; top: 4px; right: 4px; width: 44px; height: 44px; min-height: 44px; padding: 0; border: 0; color: var(--auth-muted); background: transparent; box-shadow: none; }
body.amour-auth--core #login .wp-pwd { position: relative; }
body.amour-auth--core #login .wp-pwd input { padding-right: 3.2rem; }
body.amour-auth--core #login #pass-strength-result { margin: .6rem 0; padding: .6rem; border: 1px solid var(--auth-border); border-radius: .6rem; color: var(--auth-text); background: #1d1026; font-size: .8rem; }
body.amour-auth--core #login #pass-strength-result.strong { border-color: #58c29d; color: #93e3c7; background: #0d2b24; }
body.amour-auth--core #login #pass-strength-result:is(.bad, .short) { border-color: #ff8eae60; color: #ffb8cd; background: #2d1020; }
body.amour-auth--core #login .description { margin: .7rem 0; color: var(--auth-muted); font-size: .75rem; }
body.amour-auth--core #login .pw-weak { margin: .8rem 0; }
body.amour-auth--core #login .forgetmenot { float: none; margin: .8rem 0; }
body.amour-auth--core #login .forgetmenot label { display: inline; }
body.amour-auth--core .language-switcher { max-width: 100%; margin: 1rem 0 0; color: var(--auth-muted); }
body.amour-auth--core .language-switcher select { max-width: 100%; border-color: var(--auth-border); border-radius: .5rem; color: var(--auth-text); background-color: #100817; }
body.amour-auth--core .language-switcher .button { border-color: var(--auth-border); color: #ff88e9; background: #100817; }
body.amour-auth--core .button-primary:disabled { opacity: .5; cursor: not-allowed; }
@media (max-width: 575.98px) {
    .amour-auth-shell { padding: 1.25rem .75rem 4.5rem; }
    .amour-auth-card, body.amour-auth--core #login { padding: 1.6rem 1.2rem; border-radius: 1.15rem; }
    body.amour-auth--core { padding: 1.25rem .75rem 4.5rem; }
    .amour-auth-home, body.amour-auth--core #login .wp-login-logo { margin-bottom: 1.5rem; }
    .amour-auth-options { gap: 0 .5rem; }
    .amour-auth-options > a, .amour-auth-form .amour-auth-remember { font-size: .75rem; }
}
@media (prefers-reduced-motion: reduce) { .amour-auth input, .amour-auth-submit, body.amour-auth--core #login .button-primary { transition: none; } }
