/* Fortunex authentication uses the public site's typography and flat dark palette. */
:root,
body.theme-dark {
    color-scheme: dark;
    --page-bg: #161616;
    --surface: #161616;
    --surface-soft: #202020;
    --surface-teal: #17362b;
    --surface-deep: #111;
    --text: #d7d7d7;
    --text-strong: #fff;
    --text-muted: #b5b5b5;
    --text-faint: #999;
    --border: #343434;
    --border-strong: #515151;
    --primary: #1b9973;
    --primary-dark: #136f53;
    --primary-soft: #17362b;
    --primary-rgb: 27, 153, 115;
    --cyan: #1b9973;
    --blue: #1b9973;
    --success: #69c99d;
    --success-soft: #19372b;
    --danger: #ef7b84;
    --danger-soft: #3a2024;
    --warning: #e1ae58;
    --warning-soft: #3c301b;
    --radius-sm: 0;
    --radius: 0;
    --radius-lg: 0;
    --shadow: none;
    --shadow-sm: none;
}
body,
button,
input,
select,
textarea {
    font-family: Barlow, Arial, sans-serif;
}
body { font-weight: 400; }
.login-shell { grid-template-columns: minmax(360px, 1fr) minmax(480px, 1fr); }
.login-showcase,
body[data-page="admin-login"] .login-showcase {
    color: #d7d7d7;
    background: #1d1d1d;
    border-right: 1px solid #343434;
}
.login-showcase::after { display: none; }
.login-brand { gap: 20px; }
.login-brand .brand-mark,
body[data-page="admin-login"] .login-brand .brand-mark {
    display: block;
    width: 164px;
    height: 48px;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
}
.login-brand .brand-mark img { width: 100%; height: 100%; object-fit: contain; }
.login-brand .brand-copy small,
body[data-page="admin-login"] .login-brand .brand-copy small {
    color: #d7d7d7;
    letter-spacing: .18em;
}
.showcase-kicker,
body[data-page="admin-login"] .showcase-kicker {
    padding: 0;
    color: #5bc39f;
    background: transparent;
    border: 0;
    border-radius: 0;
    font-size: 14px;
}
.showcase-content h1 { font-weight: 500; letter-spacing: -.035em; }
.showcase-content > p,
.portal-preview small,
.showcase-security,
.showcase-security small { color: #b5b5b5; }
.portal-preview,
.portal-preview.active,
body[data-page="admin-login"] .portal-preview.active {
    background: transparent;
    border-color: #3a3a3a;
    border-radius: 0;
}
.portal-preview-icon,
body[data-page="admin-login"] .portal-preview-icon.admin,
.showcase-security > i {
    color: #5bc39f;
    background: #17362b;
    border-radius: 0;
}
.portal-preview strong,
.showcase-security strong { color: #fff; }
.auth-heading h2 { font-size: 36px; font-weight: 500; letter-spacing: -.025em; }
.auth-heading .eyebrow { font-size: 13px; letter-spacing: .1em; }
.auth-heading p { font-size: 16px; }
.auth-field > span:first-child { font-size: 14px; }
.auth-input-wrap input,
.auth-input-wrap select,
.auth-tab-switcher,
.auth-tab-switcher button,
.password-toggle,
.auth-message,
.test-client-option,
.test-client-avatar,
.auth-submit,
.currency-select-trigger,
.currency-select-menu { border-radius: 0; }
.auth-input-wrap input,
.auth-input-wrap select { background: #202020; font-size: 16px; }
.auth-tab-switcher { gap: 0; padding: 0; border: 0; border-bottom: 1px solid #515151; background: transparent; }
.auth-tab-switcher button { padding: 16px 20px; font-size: 16px; }
.auth-tab-switcher button.active { color: #fff; background: transparent; box-shadow: inset 0 -2px #1b9973; }
.auth-submit,
body[data-page="admin-login"] .auth-submit {
    background: #1b9973;
    border: 1px solid #1b9973;
    box-shadow: none;
    font-size: 16px;
    font-weight: 500;
}
.auth-submit:hover,
body[data-page="admin-login"] .auth-submit:hover { background: #136f53; border-color: #136f53; transform: none; box-shadow: none; }
.registration-consent,
.auth-footnote,
.login-footer { font-size: 13px; }
.login-footer a { text-decoration: underline; text-underline-offset: 4px; }
.login-footer a:hover { color: #fff; }
.privacy-ui { font-family: Barlow, Arial, sans-serif; color: #d7d7d7; }
.privacy-banner,
.privacy-dialog { color: #d7d7d7; background: #202020; border-color: #515151; border-radius: 0; }
.privacy-ui button { color: #fff; background: #1b9973; border-color: #1b9973; border-radius: 0; font-family: inherit; }
.privacy-ui button:hover { background: #136f53; }
.privacy-ui a { color: #70d5b4; }
.privacy-dialog h2 { color: #fff; font-family: inherit; }
.privacy-option { background: #161616; border-color: #515151; border-radius: 0; }
.privacy-option input { accent-color: #1b9973; }
@media (max-width: 920px) {
    .login-shell { grid-template-columns: 1fr; }
    .login-showcase { border-right: 0; border-bottom: 1px solid #343434; }
}
@media (max-width: 520px) {
    .auth-heading h2 { font-size: 30px; }
    .login-main { padding: 36px 20px 80px; }
}
