:root {
            --deep-abyss: #020b13;
            --ocean-blue: #061f2f;
            --petrol-depths: #0a3147;
            --liquid-gold: #b8860b;
            --gold-shimmer: #d4a843;
            --gold-pale: #e6c27a;
            --error-red: #c0392b;
            --error-glow: #e74c3c;
            --font-display: 'Playfair Display', serif;
            --font-body-lux: 'Cinzel', serif;
            --font-ui: 'Inter', sans-serif;
        }
        * { margin:0; padding:0; box-sizing:border-box; }
        body {
            font-family: var(--font-ui);
            background: radial-gradient(ellipse at center, #0d3b56 0%, #061e2f 40%, #020c14 100%);
            min-height:100vh;
            display:flex;
            align-items:center;
            justify-content:center;
            overflow:hidden;
        }
        .superia-splash {
            position: fixed; inset:0; z-index:10;
            background: radial-gradient(ellipse at center, #0d3b56 0%, #061e2f 40%, #020c14 100%);
            display:flex; align-items:center; justify-content:center; flex-direction:column;
            overflow:hidden;
        }
        .particles-container { position:absolute; inset:0; pointer-events:none; }
        .particle { position:absolute; width:2px; height:2px; background:#b8860b; border-radius:50%; animation:particleFloat 6s infinite ease-in-out; opacity:0; }
        .particle:nth-child(1) { left:10%; top:20%; animation-delay:0s; }
        .particle:nth-child(2) { left:25%; top:60%; animation-delay:0.8s; }
        .particle:nth-child(3) { left:40%; top:30%; animation-delay:1.6s; }
        .particle:nth-child(4) { left:55%; top:70%; animation-delay:2.4s; }
        .particle:nth-child(5) { left:70%; top:15%; animation-delay:3.2s; }
        .particle:nth-child(6) { left:80%; top:50%; animation-delay:4.0s; }
        .particle:nth-child(7) { left:15%; top:85%; animation-delay:4.8s; }
        .particle:nth-child(8) { left:90%; top:35%; animation-delay:1.2s; }
        .particle:nth-child(9) { left:50%; top:45%; animation-delay:3.6s; }
        .particle:nth-child(10) { left:35%; top:10%; animation-delay:5.2s; }
        .particle:nth-child(11) { left:65%; top:80%; animation-delay:2.0s; }
        .particle:nth-child(12) { left:5%; top:40%; animation-delay:4.4s; }
        @keyframes particleFloat {
            0% { opacity:0; transform:translateY(0) scale(.5); }
            10% { opacity:.8; }
            30% { opacity:.4; transform:translateY(-30px) scale(1.2); }
            50% { opacity:.7; transform:translateY(-15px) scale(.8); }
            70% { opacity:.3; transform:translateY(-40px) scale(1.4); }
            90% { opacity:.6; }
            100% { opacity:0; transform:translateY(-60px) scale(.3); }
        }
        .golden-line {
            position:absolute; top:0; left:50%; transform:translateX(-50%);
            width:1px; height:100%;
            background:linear-gradient(180deg,transparent 0%,rgba(184,134,11,.4) 20%,rgba(184,134,11,.15) 50%,rgba(184,134,11,.4) 80%,transparent 100%);
            animation:goldenLinePulse 3s ease-in-out infinite;
        }
        .golden-line:nth-child(2) { left:48%; animation-delay:0.5s; width:.5px; }
        .golden-line:nth-child(3) { left:52%; animation-delay:1s; width:.5px; }
        @keyframes goldenLinePulse {
            0%,100% { opacity:.3; }
            50% { opacity:.7; }
        }
        .horizontal-line {
            position:absolute; left:50%; transform:translateX(-50%);
            width:300px; height:1px;
            background:linear-gradient(90deg,transparent,rgba(184,134,11,.3),transparent);
            animation:horizontalLinePulse 4s ease-in-out infinite;
        }
        .horizontal-line.top { top:18%; }
        .horizontal-line.bottom { bottom:18%; animation-delay:2s; }
        @keyframes horizontalLinePulse {
            0%,100% { opacity:.2; width:300px; }
            50% { opacity:.6; width:500px; }
        }
        .splash-content {
            position:relative; z-index:2; text-align:center; padding:2rem;
        }
        .brand-tag {
            font-family:'Inter',sans-serif; font-size:.55rem; text-transform:uppercase;
            letter-spacing:6px; color:rgba(184,134,11,.7); margin-bottom:1.5rem;
            animation:fadeInUp 1s ease forwards; opacity:0; animation-delay:0.3s;
        }
        .splash-title {
            font-family:'Cinzel',serif; font-size:clamp(2.2rem, 5vw, 3.8rem); font-weight:600;
            color:#fff; letter-spacing:8px; margin-bottom:.3rem;
            animation:fadeInUp 1s ease forwards; opacity:0; animation-delay:0.5s;
            text-shadow:0 0 60px rgba(184,134,11,.3);
        }
        .splash-title span { color:#b8860b; font-weight:700; }
        .splash-subtitle {
            font-family:'Marcellus',serif; font-size:clamp(0.8rem, 1.5vw, 1.1rem);
            color:rgba(255,255,255,.6); letter-spacing:4px; margin-bottom:2.5rem;
            animation:fadeInUp 1s ease forwards; opacity:0; animation-delay:0.7s;
        }
        .splash-divider {
            display:flex; align-items:center; justify-content:center; gap:15px;
            margin-bottom:2.5rem; animation:fadeInUp 1s ease forwards; opacity:0; animation-delay:0.9s;
        }
        .divider-wing { width:50px; height:1px; background:linear-gradient(90deg,transparent,#b8860b); }
        .divider-wing.right { background:linear-gradient(90deg,#b8860b,transparent); }
        .divider-diamond { width:8px; height:8px; background:#b8860b; transform:rotate(45deg); box-shadow:0 0 20px rgba(184,134,11,.6); }
        .enter-btn {
            font-family:'Cinzel',serif; font-size:.75rem; text-transform:uppercase;
            letter-spacing:5px; color:#fff; background:transparent;
            border:1.5px solid rgba(184,134,11,.4); padding:14px 40px; cursor:pointer;
            transition:all 0.5s ease; position:relative; overflow:hidden;
            animation:fadeInUp 1s ease forwards; opacity:0; animation-delay:1.1s;
        }
        .enter-btn::before {
            content:''; position:absolute; inset:0;
            background:linear-gradient(135deg,rgba(184,134,11,.15) 0%,rgba(184,134,11,.05) 50%,transparent 100%);
            transition:opacity 0.5s ease;
        }
        .enter-btn:hover {
            border-color:#b8860b; color:#b8860b;
            box-shadow:0 0 40px rgba(184,134,11,.2),inset 0 0 40px rgba(184,134,11,.05);
            letter-spacing:8px; transform:translateY(-2px);
        }
        .enter-btn:hover::before { opacity:1; }
        .splash-loader {
            margin-top:2rem; display:flex; gap:6px; justify-content:center;
            animation:fadeInUp 1s ease forwards; opacity:0; animation-delay:1.2s;
        }
        .dot { width:4px; height:4px; background:rgba(184,134,11,.6); border-radius:50%; animation:dotPulse 1.5s ease-in-out infinite; }
        .dot:nth-child(2) { animation-delay:0.2s; }
        .dot:nth-child(3) { animation-delay:0.4s; }
        @keyframes dotPulse {
            0%,100% { opacity:.3; transform:scale(.8); }
            50% { opacity:1; transform:scale(1.5); }
        }
        .version-tag {
            position:absolute; bottom:30px; left:50%; transform:translateX(-50%);
            font-family:'Inter',sans-serif; font-size:.5rem; color:rgba(255,255,255,.25);
            letter-spacing:3px; animation:fadeInUp 1s ease forwards; opacity:0; animation-delay:1.3s;
        }
        @keyframes fadeInUp {
            from { opacity:0; transform:translateY(30px); }
            to { opacity:1; transform:translateY(0); }
        }

        /* Password modal */
        .password-overlay {
            position:fixed; inset:0; background:rgba(0,0,0,.85); z-index:200;
            display:flex; align-items:center; justify-content:center;
            backdrop-filter:blur(10px); animation:fadeIn 0.5s ease;
        }
        .password-overlay.fade-out { opacity:0; transition:opacity 0.3s; }
        .password-box {
            background:linear-gradient(145deg,#0d3b56 0%,#061e2f 100%);
            border:1px solid rgba(184,134,11,.4); border-radius:16px;
            padding:2.5rem; width:90%; max-width:400px; text-align:center;
            box-shadow:0 20px 60px rgba(0,0,0,.8),0 0 40px rgba(184,134,11,.2);
            animation:fadeInUp 0.5s ease;
        }
        .password-box h2 {
            font-family:'Cinzel',serif; color:#fff; font-size:1.2rem;
            letter-spacing:3px; margin-bottom:.3rem;
        }
        .password-box .gold-line {
            width:60px; height:2px;
            background:linear-gradient(90deg,transparent,#b8860b,transparent);
            margin:.8rem auto 1.5rem;
        }
        .password-box input {
            width:100%; padding:12px 16px; background:rgba(255,255,255,.05);
            border:1px solid rgba(184,134,11,.3); border-radius:8px;
            color:#fff; font-family:'Marcellus',serif; font-size:1rem;
            letter-spacing:4px; text-align:center; outline:none;
            transition:border-color 0.3s,box-shadow 0.3s;
        }
        .password-box input:focus {
            border-color:#b8860b; box-shadow:0 0 20px rgba(184,134,11,.3);
        }
        .password-box .btn-row { display:flex; gap:10px; justify-content:center; margin-top:1.5rem; }
        .password-btn {
            font-family:'Cinzel',serif; font-size:.7rem; text-transform:uppercase;
            letter-spacing:3px; padding:10px 24px; border-radius:6px;
            cursor:pointer; transition:all 0.4s ease;
            background:transparent; color:#fff; border:1px solid rgba(184,134,11,.4);
        }
        .password-btn.primary { background:rgba(184,134,11,.2); border-color:#b8860b; }
        .password-btn:hover {
            background:rgba(184,134,11,.3); border-color:#b8860b;
            box-shadow:0 0 20px rgba(184,134,11,.3); transform:translateY(-2px);
        }
        .error-msg { color:#c78b1a; font-size:.7rem; margin-top:.6rem; min-height:1.2em; }
        @keyframes fadeIn {
            from { opacity:0; } to { opacity:1; }
        }