/* Meridian Blue module layer. Selector coverage derived from the retired dark module; palette rebuilt for a premium light system. */
/* ═══════════════════════════════════════════════════════════════
   经纬蓝主题 — 账户相关页面覆盖
   登录 / 注册 / 忘记密码 / 协议页 / 修改密码
   仅视觉层，不改变页面结构与逻辑
   ═══════════════════════════════════════════════════════════════ */

/* ── 登录页（login-v2.css） ── */
html[data-ui-theme="meridian"] {
    --ink: #f0ede6;
    --paper: #121211;
    --paper-deep: #1a1917;
    --muted: #a8a49b;
    --line: rgba(175, 194, 216, 0.48);
    --gold: #d4b06a;
    --gold-pale: #f0dca0;
    --login-success: #1C6A4E;
    --login-danger: #A62F39;
}

html[data-ui-theme="meridian"] body {
    background: #080809;
    color: var(--ink);
}

html[data-ui-theme="meridian"] .login-shell {
    background: var(--paper);
}

html[data-ui-theme="meridian"] .auth {
    background:
        radial-gradient(700px circle at var(--auth-x, 50%) var(--auth-y, 35%), rgba(175, 194, 216, 0.16), transparent 54%),
        var(--paper);
}

html[data-ui-theme="meridian"] .auth::before {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
}

html[data-ui-theme="meridian"] .wordmark,
html[data-ui-theme="meridian"] .intro h1,
html[data-ui-theme="meridian"] .signup-line a {
    color: #10233F;
}

html[data-ui-theme="meridian"] .field label,
html[data-ui-theme="meridian"] .label-row label {
    color: #e8e4dc;
}

html[data-ui-theme="meridian"] .input-shell {
    background: rgba(175, 194, 216, 0.16);
    border-color: var(--line);
}

html[data-ui-theme="meridian"] .input-shell:focus-within {
    background: rgba(175, 194, 216, 0.30);
    border-color: rgba(255, 255, 255, 0.28);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.22);
}

html[data-ui-theme="meridian"] .input-shell input {
    color: #10233F;
}

html[data-ui-theme="meridian"] .input-shell input::placeholder {
    color: #7d7a73;
}

html[data-ui-theme="meridian"] .field-number {
    color: #8f8b83;
    border-right-color: rgba(175, 194, 216, 0.30);
}

html[data-ui-theme="meridian"] .text-link,
html[data-ui-theme="meridian"] .password-toggle,
html[data-ui-theme="meridian"] .remember,
html[data-ui-theme="meridian"] .language {
    color: var(--muted);
}

html[data-ui-theme="meridian"] .text-link:hover,
html[data-ui-theme="meridian"] .password-toggle:hover {
    color: #10233F;
}

html[data-ui-theme="meridian"] .form-message {
    background: rgba(175, 194, 216, 0.20);
    border-color: rgba(175, 194, 216, 0.30);
    color: var(--muted);
}

html[data-ui-theme="meridian"] .form-message.error {
    background: rgba(185, 28, 28, 0.15);
    border-color: rgba(248, 113, 113, 0.25);
    color: var(--login-danger);
}

html[data-ui-theme="meridian"] .form-message.success {
    background: rgba(5, 150, 105, 0.15);
    border-color: rgba(28, 106, 78, 0.20);
    color: var(--login-success);
}

html[data-ui-theme="meridian"] .submit {
    background: #f0ede6;
    color: #121211;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.28);
}

html[data-ui-theme="meridian"] .submit:hover:not(:disabled) {
    background: #10233F;
}

html[data-ui-theme="meridian"] .signup,
html[data-ui-theme="meridian"] .legal,
html[data-ui-theme="meridian"] .auth-footer {
    color: #8d8980;
}

html[data-ui-theme="meridian"] .signup a,
html[data-ui-theme="meridian"] .legal a {
    color: #e8e4dc;
}

html[data-ui-theme="meridian"] .legal a:hover {
    color: #10233F;
}

html[data-ui-theme="meridian"] button:focus-visible,
html[data-ui-theme="meridian"] a:focus-visible,
html[data-ui-theme="meridian"] input:focus-visible {
    outline-color: var(--gold);
}

/* ── 注册 / 忘记密码 / 协议页（.bf-account） ── */
html[data-ui-theme="meridian"] .bf-account {
    --bf-ivory: #FFFFFF;
    --bf-charcoal: #10233F;
    --bf-gold: #1457D9;
    --bf-border: rgba(175, 194, 216, 0.42);
    background: #F4F7FB;
    color: #10233F;
    font-family: var(--font-ui);
}

html[data-ui-theme="meridian"] .bf-account .bf-brand-zh,
html[data-ui-theme="meridian"] .bf-account .bf-welcome h1,
html[data-ui-theme="meridian"] .bf-account .bf-doc h1,
html[data-ui-theme="meridian"] .bf-account .bf-doc h2,
html[data-ui-theme="meridian"] .bf-account .bf-doc strong {
    color: #10233F;
}

html[data-ui-theme="meridian"] .bf-account .bf-brand-en,
html[data-ui-theme="meridian"] .bf-account .bf-welcome p,
html[data-ui-theme="meridian"] .bf-account .bf-doc .meta,
html[data-ui-theme="meridian"] .bf-account .reg-sms-hint,
html[data-ui-theme="meridian"] .bf-account .bf-legal-links {
    color: #425774;
}

html[data-ui-theme="meridian"] .bf-account .bf-welcome a,
html[data-ui-theme="meridian"] .bf-account .bf-doc-actions a {
    color: #10233F;
    border-bottom-color: rgba(20, 87, 217, 0.46);
}

html[data-ui-theme="meridian"] .bf-account .bf-welcome a:hover,
html[data-ui-theme="meridian"] .bf-account .bf-doc-actions a:hover {
    color: #1457D9;
}

html[data-ui-theme="meridian"] .bf-account .bf-glass-card {
    background: #FFFFFF;
    border-color: rgba(175, 194, 216, 0.36);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

html[data-ui-theme="meridian"] .bf-account .reg-field label {
    color: #10233F;
}

html[data-ui-theme="meridian"] .bf-account .reg-field input {
    background: #EAF1FA;
    border-color: rgba(175, 194, 216, 0.42);
    color: #10233F;
}

html[data-ui-theme="meridian"] .bf-account .reg-field input:focus {
    border-color: rgba(20, 87, 217, 0.46);
    box-shadow: 0 0 0 3px rgba(20, 87, 217, 0.12);
}

html[data-ui-theme="meridian"] .bf-account .reg-sms-btn {
    background: #EAF1FA;
    border-color: rgba(175, 194, 216, 0.42);
    color: #10233F;
}

html[data-ui-theme="meridian"] .bf-account .reg-sms-btn:hover:not(:disabled) {
    border-color: rgba(20, 87, 217, 0.38);
    color: #1457D9;
}

html[data-ui-theme="meridian"] .bf-account .reg-submit {
    background: transparent;
    border: 1px solid rgba(20, 87, 217, 0.46);
    color: #10233F;
    box-shadow: 0 0 16px rgba(20, 87, 217, 0.10);
}

html[data-ui-theme="meridian"] .bf-account .reg-submit:hover {
    background: rgba(20, 87, 217, 0.12);
    border-color: #1457D9;
}

html[data-ui-theme="meridian"] .bf-account .reg-error {
    background: rgba(185, 28, 28, 0.15);
    border-color: rgba(166, 47, 57, 0.24);
    color: #A62F39;
}

html[data-ui-theme="meridian"] .bf-account .reg-sms-msg.is-error {
    color: #A62F39;
}

html[data-ui-theme="meridian"] .bf-account .reg-sms-msg.is-success {
    color: #1C6A4E;
}

html[data-ui-theme="meridian"] .bf-account .bf-legal-links {
    border-top-color: rgba(175, 194, 216, 0.30);
}

html[data-ui-theme="meridian"] .bf-account .bf-legal-links a {
    color: #425774;
}

html[data-ui-theme="meridian"] .bf-account .bf-legal-links a:hover {
    color: #10233F;
}

html[data-ui-theme="meridian"] .bf-account .bf-doc p,
html[data-ui-theme="meridian"] .bf-account .bf-doc ul {
    color: #c8c8c8;
}

html[data-ui-theme="meridian"] .bf-account .bf-doc-actions {
    border-top-color: rgba(175, 194, 216, 0.30);
}

html[data-ui-theme="meridian"] .bf-account-topbar .language-switch {
    color: #425774;
}

html[data-ui-theme="meridian"] .bf-account-topbar .language-switch:hover {
    color: #10233F;
}

/* ── 修改密码（Layout 内 .bf-workspace） ── */
html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-form-card {
    background: #FFFFFF;
    border-color: rgba(175, 194, 216, 0.36);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-form-label {
    color: #10233F;
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-form-input {
    background: #EAF1FA;
    border-color: rgba(175, 194, 216, 0.42);
    color: #10233F;
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-form-input:focus {
    border-color: rgba(20, 87, 217, 0.46);
    box-shadow: 0 0 0 3px rgba(20, 87, 217, 0.12);
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-form-error {
    color: #A62F39;
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-alert-success {
    background: rgba(20, 87, 217, 0.10);
    border-color: rgba(20, 87, 217, 0.25);
    color: #10233F;
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-alert-error {
    background: rgba(185, 28, 28, 0.15);
    border-color: rgba(166, 47, 57, 0.24);
    color: #A62F39;
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-btn-primary {
    background: transparent;
    border: 1px solid rgba(20, 87, 217, 0.46);
    color: #10233F;
    box-shadow: 0 0 16px rgba(20, 87, 217, 0.10);
}

html[data-ui-theme="meridian"] body.portal-beefur .portal-main .bf-workspace .portal-btn-primary:hover {
    background: rgba(20, 87, 217, 0.12);
    border-color: #1457D9;
    color: #10233F;
}
