/* Shared administrator and sign-in presentation. */
:root {
    --bg: #10121b;
    --panel: #191d2a;
    --line: #353a50;
    --muted: #a8b0c6;
}
.adminbody {
    background: #10121b;
}
.dashside {
    background: #151824;
    border-color: #30344a;
    z-index: 2;
}
.dashlogo, .authcard .brandmark {
    background: linear-gradient(145deg, #ab67ef, #4a76dd);
    color: #fff;
}
.dashbrand {
    gap: 12px;
}
.dashnav a {
    border: 1px solid transparent;
}
.dashnav a:hover {
    background: #23283a;
}
.dashnav a.active {
    color: #f3eaff;
    background: #312746;
    border-color: #51406e;
}
.dashnav a.active .navsymbol {
    color: #d7b3ff;
}
.dashheading {
    padding: clamp(18px, 3vw, 34px);
    margin: 16px 0 24px;
    gap: 16px;
    border: 1px solid #3b3d56;
    border-radius: 18px;
    background: linear-gradient(115deg, #262039, #191f2e 70%);
}
.dashheading h1 {
    color: #faf8ff;
}
.adminbody .muted {
    font-size: 13px;
    color: #b5bdd1;
}
.adminbody .panel,
.dashstats .stat {
    background: #191d2a;
    border-color: #353a50;
}
.panelhead, .compactrow, .deviceheader {
    border-color: #30354a;
}
.adminbody input, .adminbody select, .adminbody textarea {
    background: #121622;
    border-color: #3d445e;
}
.adminbody input::placeholder {
    color: #8590a9;
}
.adminbody .mainbtn, .authcard .mainbtn {
    background: #6353cf;
    border-color: #8475ed;
}
.adminbody :focus-visible, .authcard :focus-visible {
    outline: 2px solid #d3b4ff;
    outline-offset: 3px;
}
.authwrap {
    background: radial-gradient(ellipse at 50% 0, #302342, transparent 60%), #10121b;
}
.authcard {
    border-color: #41435a;
    padding: clamp(24px, 5vw, 40px);
}
.authcard .brandmark {
    margin-bottom: 22px;
}
.vpn-form {
    padding: 20px;
}
.vpn-form p {
    color: #b5bdd1;
    margin: 16px 0;
}
.vpn-location {
    margin: 0;
}
@media (max-width: 620px) {
    .dashside {
        padding-inline: 10px;
    }
    .dashheading {
        margin-top: 10px;
    }
    .dashbottom {
        display: flex;
        padding: 4px 0;
        justify-content: flex-end;
    }
    .dashbottom .online {
        display: none;
    }
    .dashbottom .dashsignout {
        margin: 0;
    }
}
