        :root {
            --bs-primary: #00295d;
            --bs-primary-rgb: 0, 41, 93;
            --bs-link-color: #00295d;
            --bs-link-hover-color: #001f45;
            --auth-bg: #e6edf7;
            --auth-bg-accent: linear-gradient(145deg, #eef3fb 0%, #dfe8f5 48%, #d3deef 100%);
            --auth-pattern: url("../../img/00_Mainpattern.svg");
            --auth-pattern-repeat: no-repeat;
            --auth-pattern-position: center center;
            --auth-pattern-size: cover;
            --auth-pattern-opacity: 0.08;
            --auth-pattern-filter: saturate(0.6) brightness(1.08) contrast(0.95);
            --auth-pattern-blend: normal;
            --auth-geo: linear-gradient(124deg, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0.18) 28%, transparent 28%, transparent 52%, rgba(17, 41, 84, 0.06) 52%, rgba(17, 41, 84, 0.06) 73%, transparent 73%, transparent 100%);
            --auth-geo-opacity: 0.8;
        }
        body {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            background-color: var(--auth-bg);
            background-image: var(--auth-pattern), var(--auth-bg-accent);
            background-repeat: var(--auth-pattern-repeat), no-repeat;
            background-position: var(--auth-pattern-position), center top;
            background-size: var(--auth-pattern-size), cover;
        }
        body.light {
            --auth-bg: #00295d;
            --auth-bg-accent: linear-gradient(146deg, #07366f 0%, #00295d 48%, #00224f 100%);
            --auth-pattern-opacity: 0.22;
            --auth-pattern-filter: brightness(0.78) saturate(0.95) contrast(1.06);
            --auth-pattern-blend: multiply;
            --auth-geo-opacity: 1;
            color: #f1f4f8;
        }
        body.auth-force-light {
            --auth-bg: #00295d;
            --auth-bg-accent: linear-gradient(146deg, #07366f 0%, #00295d 48%, #00224f 100%);
            --auth-pattern-opacity: 0.22;
            --auth-pattern-filter: brightness(0.78) saturate(0.95) contrast(1.06);
            --auth-pattern-blend: multiply;
            --auth-geo-opacity: 1;
            color: #f1f4f8;
        }
        body.dark {
            --auth-bg: #00295d;
            --auth-bg-accent: linear-gradient(146deg, #07366f 0%, #00295d 48%, #00224f 100%);
            --auth-pattern-opacity: 0.22;
            --auth-pattern-filter: brightness(0.78) saturate(0.95) contrast(1.06);
            --auth-pattern-blend: multiply;
            --auth-geo-opacity: 1;
            color: #f1f4f8;
        }
        body::before {
            content: "";
            position: fixed;
            inset: 0;
            pointer-events: none;
            z-index: 0;
            opacity: var(--auth-pattern-opacity);
            filter: var(--auth-pattern-filter);
            mix-blend-mode: var(--auth-pattern-blend);
            background-image: var(--auth-pattern);
            background-repeat: var(--auth-pattern-repeat);
            background-position: var(--auth-pattern-position);
            background-size: var(--auth-pattern-size);
        }
        body::after {
            content: "";
            position: fixed;
            inset: 0;
            pointer-events: none;
            z-index: 0;
            opacity: var(--auth-geo-opacity);
            background-image: var(--auth-geo);
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center center;
        }
        body > div { position: relative; z-index: 1; }
        .card { width: 100%; max-width: 460px; border-radius: 14px; box-shadow: 0 10px 32px rgba(0,0,0,.25); }
        .brand { color: #00295d; text-align: center; margin-bottom: 1rem; }
        .login-logo { display: block; width: 100%; max-width: 10rem; height: auto; margin: 0 auto 0.5rem; }
        body.dark .card { background: #1a2433; color: #f1f4f8; }
        body.dark .brand { color: #cfe3ff; }
        body.dark .form-control { background: #0f1723; border-color: #2a3a52; color: #f1f4f8; }
        .btn-primary { background: #00295d; border-color: #00295d; }
        .btn-primary:hover, .btn-primary:focus, .btn-primary:active { background: #001f45; border-color: #001f45; }
        .btn-outline-primary { color: #00295d; border-color: #00295d; }
        .btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active { color: #fff; background: #00295d; border-color: #00295d; }
        a { color: #00295d; }
        a:hover, a:focus { color: #001f45; }
        body.dark a { color: #cfe3ff; }
        body.dark a:hover, body.dark a:focus { color: #e6f0ff; }
