/* Přihlášení — tmavý režim. Volba je ve stejném klíči jako portál (dop-portal-theme). */

.login-theme-toggle {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 30;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    color: #475569;
    font-size: 14px;
    cursor: pointer;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
    backdrop-filter: blur(10px);
}

.login-theme-toggle:hover {
    color: #1d4ed8;
    border-color: rgba(37, 99, 235, 0.35);
}

.login-theme-toggle:focus-visible {
    outline: 2px solid #3b82f6;
    outline-offset: 2px;
}

.login-theme-toggle .portal-theme-icon-sun,
html[data-theme="dark"] .login-theme-toggle .portal-theme-icon-moon {
    display: none;
}

html[data-theme="dark"] .login-theme-toggle .portal-theme-icon-sun {
    display: inline-block;
}

html[data-theme="dark"] {
    color-scheme: dark;
    --ink: #e6edf3;
    --muted: #8b9bb0;
    --navy: #e8eef6;
    --navy-mid: #b7c3d4;
    --navy-deep: #08090b;
}

html[data-theme="dark"] body {
    background: #08090b;
    color: var(--ink);
}

html[data-theme="dark"] .login-stage {
    background: #08090b;
}

/* Světlá vlna má bílé plátno. V tmavém režimu je stejný tvar, bez bílého podkladu. */
.login-waves-bg-dark {
    display: none;
}

html[data-theme="dark"] .login-waves-bg:not(.login-waves-bg-dark) {
    display: none;
}

html[data-theme="dark"] .login-waves-bg-dark {
    display: block;
}

html[data-theme="dark"] .login-brand {
    color: var(--ink);
}

html[data-theme="dark"] .brand-logo {
    filter: brightness(0) invert(1);
    opacity: 0.94;
}

html[data-theme="dark"] .brand-mark {
    border-left-color: rgba(255, 255, 255, 0.14);
}

html[data-theme="dark"] .brand-kicker,
html[data-theme="dark"] .brand-lead,
html[data-theme="dark"] .login-card-head p,
html[data-theme="dark"] .login-footnote,
html[data-theme="dark"] .forgot-sent p,
html[data-theme="dark"] .forgot-help {
    color: #8b9bb0;
}

html[data-theme="dark"] .brand-mark strong,
html[data-theme="dark"] .brand-hero h1,
html[data-theme="dark"] .brand-feature-title,
html[data-theme="dark"] .login-card-head h2,
html[data-theme="dark"] .forgot-sent h3 {
    color: #f2f6fb;
}

html[data-theme="dark"] .brand-hero h1 span.highlight,
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .brand-bottom-tagline {
    color: #60a5fa;
}

html[data-theme="dark"] .brand-feature-icon {
    background: rgba(37, 99, 235, 0.16);
    color: #93c5fd;
    box-shadow: none;
}

html[data-theme="dark"] .login-card {
    background: #15181c;
    border-color: rgba(255, 255, 255, 0.08);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}

html[data-theme="dark"] .login-alert--error {
    background: rgba(239, 68, 68, 0.16);
    color: #fca5a5;
    border-color: rgba(248, 113, 113, 0.35);
}

html[data-theme="dark"] .login-alert--success {
    background: rgba(16, 185, 129, 0.14);
    color: #6ee7b7;
    border-color: rgba(52, 211, 153, 0.32);
}

html[data-theme="dark"] .field input {
    background: #101316;
    border-color: #2c323a;
    color: var(--ink);
}

html[data-theme="dark"] .field input::placeholder {
    color: #5f6e82;
}

html[data-theme="dark"] .field input:focus {
    background: #14181d;
    border-color: #3b82f6;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.22);
}

html[data-theme="dark"] .field input.is-invalid {
    background: rgba(239, 68, 68, 0.12);
    border-color: #f87171;
}

html[data-theme="dark"] .field input:-webkit-autofill {
    -webkit-text-fill-color: #e6edf3;
    box-shadow: 0 0 0 1000px #101316 inset;
}

html[data-theme="dark"] .pwd-toggle:hover {
    color: #f2f6fb;
    background: rgba(255, 255, 255, 0.06);
}

html[data-theme="dark"] .btn-secondary {
    background: transparent;
    color: #e6edf3;
    border-color: rgba(255, 255, 255, 0.22);
}

html[data-theme="dark"] .btn-secondary:hover:not(:disabled) {
    background: rgba(255, 255, 255, 0.06);
}

html[data-theme="dark"] .pwd-rules {
    background: rgba(56, 189, 248, 0.08);
    border-color: rgba(56, 189, 248, 0.2);
}

html[data-theme="dark"] .generated-pwd-box,
html[data-theme="dark"] .forgot-help {
    background: #101316;
    border-color: #2c323a;
}

html[data-theme="dark"] .forgot-step {
    color: #6b7a8e;
}

html[data-theme="dark"] .forgot-step span {
    background: #262b32;
    color: #b7c3d4;
}

html[data-theme="dark"] .forgot-steps-sep {
    background: #2c323a;
}

html[data-theme="dark"] .forgot-help strong {
    color: #d5deea;
}

html[data-theme="dark"] .forgot-sent-note,
html[data-theme="dark"] .forgot-resend,
html[data-theme="dark"] .field-hint,
html[data-theme="dark"] .generated-pwd-box small {
    color: #6b7a8e;
}

html[data-theme="dark"] .login-theme-toggle {
    background: rgba(21, 24, 28, 0.88);
    color: #c5d0dc;
    border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

html[data-theme="dark"] .login-theme-toggle:hover {
    color: #fbbf24;
    border-color: rgba(251, 191, 36, 0.4);
}
