:root{
    color-scheme:dark;
    --bg:#02070d;
    --panel:#08111a;
    --panel-2:#09141f;
    --line:#153247;
    --blue:#1cbcff;
    --red:#ff3642;
    --text:#edf5ff;
    --muted:#8ea0b2;
}

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);font-family:"Segoe UI",Arial,sans-serif;color:var(--text)}
body{min-height:100vh;overflow-x:hidden}

.auth-page{
    position:relative;
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:32px 18px;
    overflow:hidden;
    background:radial-gradient(circle at top,#0d1a27 0%,#04080e 45%,#02070d 100%);
}

.auth-bg{
    position:absolute;inset:-6%;
    background:
        linear-gradient(180deg,rgba(2,7,13,.45),rgba(2,7,13,.86)),
        url('../img/glowna-reference.png') center/cover no-repeat;
    filter:blur(10px) saturate(1.05);
    transform:scale(1.06);
    opacity:.82;
}

.auth-card{
    position:relative;
    z-index:1;
    width:min(100%,540px);
    padding:28px 28px 24px;
    clip-path:polygon(3% 0,97% 0,100% 5%,100% 95%,97% 100%,3% 100%,0 95%,0 5%);
    background:
        linear-gradient(180deg,rgba(8,16,25,.96),rgba(5,11,18,.98));
    border:1px solid rgba(40,95,129,.42);
    box-shadow:
        0 0 0 1px rgba(255,58,68,.12),
        0 25px 80px rgba(0,0,0,.55),
        inset 0 0 0 1px rgba(22,163,224,.14),
        inset 0 0 28px rgba(12,53,78,.22);
}

.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;margin-bottom:22px}
.brand-mark{
    width:54px;height:54px;flex:0 0 54px;
    clip-path:polygon(50% 0,84% 14%,100% 50%,84% 86%,50% 100%,16% 86%,0 50%,16% 14%);
    background:
        radial-gradient(circle at 50% 38%,rgba(255,107,107,.3),transparent 38%),
        linear-gradient(180deg,#ff3946 0%,#a00f19 100%);
    box-shadow:0 0 24px rgba(255,52,66,.22),inset 0 0 0 1px rgba(255,176,176,.24);
}
.brand-text strong{display:block;font-size:2rem;line-height:1;font-weight:900;letter-spacing:.02em}
.brand-text strong span{color:var(--red)}
.brand-text small{display:block;margin-top:3px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#b1bdc8}

.auth-header{margin-bottom:18px}
.eyebrow{margin:0 0 8px;font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;color:#ff5562}
.auth-header h1{margin:0 0 10px;font-size:2rem;line-height:1.05}
.subtitle{margin:0;color:var(--muted);font-size:.96rem;line-height:1.55}

.auth-alert{
    margin:18px 0 0;
    padding:12px 14px;
    color:#ffd7da;
    background:rgba(255,54,66,.10);
    border:1px solid rgba(255,54,66,.42);
    box-shadow:inset 0 0 18px rgba(255,54,66,.08);
}

.auth-form{display:grid;gap:14px;margin-top:20px}
.auth-form label{display:grid;gap:8px}
.auth-form span{font-size:.83rem;letter-spacing:.07em;text-transform:uppercase;color:#c3d1dd}
.auth-form input{
    width:100%;height:52px;padding:0 16px;
    color:var(--text);
    background:linear-gradient(180deg,#09131d,#050b12);
    border:1px solid rgba(55,92,118,.55);
    outline:0;
    box-shadow:inset 0 0 14px rgba(10,43,63,.22);
    font-size:1rem;
}
.auth-form input:focus{
    border-color:rgba(28,188,255,.9);
    box-shadow:0 0 0 1px rgba(28,188,255,.35), inset 0 0 14px rgba(28,188,255,.16);
}
.auth-form input::placeholder{color:#6f8190}

.submit-button{
    margin-top:6px;height:54px;padding:0 18px;
    border:0;cursor:pointer;
    color:#fff;font-weight:800;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;
    clip-path:polygon(3% 0,97% 0,100% 20%,100% 80%,97% 100%,3% 100%,0 80%,0 20%);
    background:linear-gradient(180deg,#ff4450 0%,#b31420 100%);
    box-shadow:0 0 22px rgba(255,54,66,.22), inset 0 0 0 1px rgba(255,225,225,.25);
}
.submit-button:hover,.submit-button:focus-visible{filter:brightness(1.08);outline:0}

.demo-box{
    margin-top:22px;padding:16px 18px;
    background:rgba(10,18,28,.72);
    border:1px solid rgba(44,87,118,.42);
}
.demo-box h2{margin:0 0 10px;font-size:.9rem;letter-spacing:.12em;text-transform:uppercase;color:#6ed4ff}
.demo-box dl{margin:0;display:grid;gap:8px}
.demo-box dl div{display:flex;justify-content:space-between;gap:16px}
.demo-box dt{color:#97aab8}
.demo-box dd{margin:0;font-weight:700}

.auth-links{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:20px}
.auth-links a{color:#b6c7d6;text-decoration:none}
.auth-links a:hover,.auth-links a:focus-visible{color:#fff;text-decoration:underline;outline:0}

@media (max-width:640px){
    .auth-card{padding:22px 18px 20px}
    .brand-text strong{font-size:1.72rem}
    .auth-header h1{font-size:1.74rem}
    .auth-links{flex-direction:column}
}

.auth-alert.success{
    color:#d8ffea;
    background:rgba(38,187,110,.1);
    border-color:rgba(38,187,110,.45);
}
.demo-box p{margin:0;color:#a9bac7;line-height:1.5}
.demo-box code{color:#71d8ff}

.support-choice{
    padding:18px;
    border:1px solid rgba(255,65,76,.5);
    background:linear-gradient(180deg,rgba(42,8,13,.62),rgba(5,12,19,.96));
    box-shadow:inset 0 0 20px rgba(255,45,57,.08);
}
.support-choice h2{margin:0 0 10px;color:#ff5964;font-size:1rem;letter-spacing:.08em;text-transform:uppercase}
.support-choice>p{margin:0;color:#c2d0db;font-size:.9rem;line-height:1.55}
.support-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.support-options label{display:flex;grid-template:none;align-items:center;gap:9px;padding:12px;border:1px solid rgba(48,97,126,.52);background:#07111a;cursor:pointer}
.support-options input{width:18px;height:18px;flex:0 0 18px;padding:0;accent-color:#ff3a47}
.support-options span{font-size:.73rem}
.blik-details{margin-top:14px;padding:14px;border:1px solid rgba(42,184,255,.48);background:rgba(4,28,42,.82)}
.blik-details[hidden]{display:none}
.blik-details>span{display:block;color:#79d9ff;font-size:.72rem}
.blik-details strong{display:block;margin-top:7px;color:#fff;font-size:1.25rem;letter-spacing:.08em}
.blik-details p{margin:10px 0 0;color:#cbd9e4;font-size:.86rem;line-height:1.4}
.blik-details b{color:#ff6570}
.auth-alert.success a{color:#fff;font-weight:800}
@media(max-width:560px){.support-options{grid-template-columns:1fr}}
