:root {
    --ink:#f5f4f8;
    --muted:#92919d;
    --line:rgba(255,255,255,.1);
    --panel:rgba(24,24,34,.8);
    --violet:#9b8cff;
    --violet-2:#7667ec;
    --bg:#101016
}
.premium-verified-badge {
    align-items: center;
    background: #2f80ed;
    border: 2px solid #eaf2ff;
    border-radius: 50%;
    box-shadow: 0 2px 7px #2f80ed66;
    color: #fff;
    display: inline-flex;
    font: 700 9px/1 Arial,sans-serif;
    height: 16px;
    justify-content: center;
    margin-left: 6px;
    vertical-align: 3px;
    width: 16px;
}
.moderation-toolbar {
    align-items: center;
    gap: 18px;
    margin: 24px 0;
    justify-content: space-between;
}
.moderation-toolbar .filter-bar {
    align-items: center;
    display: flex;
    gap: 10px;
}
.moderation-toolbar select {
    appearance: none;
    background: #0b1730 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23aab9d5' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 14px center;
    border: 1px solid #29466e;
    border-radius: 10px;
    color: #edf3ff;
    min-height: 44px;
    min-width: 190px;
    padding: 0 40px 0 14px;
}
.moderation-toolbar .button-small {
    min-height: 44px;
    padding: 0 18px;
}
.report-analytics-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 2fr) minmax(240px, .72fr);
    margin-top: 22px;
}
.report-trend-card {
    min-height: 320px;
}
.report-trend-card .admin-ref-heading {
    align-items: flex-start;
}
.report-trend-card .admin-ref-heading h2 {
    margin-top: 5px;
}
.report-trend-card .admin-ref-heading p {
    color: #8797b5;
    font-size: 11px;
    margin: 7px 0 0;
}
.report-section-label {
    color: #a892ff;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.4px;
}
.report-range-chip {
    background: #0d1d38;
    border: 1px solid #29466e;
    border-radius: 9px;
    color: #b9c8df;
    font-size: 10px;
    padding: 10px 12px;
    white-space: nowrap;
}
.report-chart-legend {
    color: #9eacc4;
    display: flex;
    font-size: 10px;
    gap: 18px;
    justify-content: flex-end;
    margin: 18px 0 3px;
}
.report-chart-legend i {
    border-radius: 50%;
    display: inline-block;
    height: 7px;
    margin-right: 5px;
    width: 7px;
}
.report-line-chart {
    background: repeating-linear-gradient(to bottom, transparent 0, transparent 71px, #1a3152 72px);
    height: 190px;
    margin: 0 0 0 24px;
    position: relative;
}
.report-line-chart svg {
    height: 100%;
    overflow: visible;
    width: 100%;
}
.report-line-chart line {
    stroke: #1a3152;
    stroke-width: 1;
}
.report-line-chart polyline {
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.report-line-chart .report-line-area {
    fill: url(#reportOpenFill);
    stroke: none;
}
.report-line-chart .report-line.open {
    stroke: #a363ed;
    stroke-width: 3;
}
.report-line-chart .report-line.resolved {
    stroke: #ef3e91;
    stroke-width: 2.5;
}
.report-y-label {
    color: #7185aa;
    font-size: 9px;
    left: -24px;
    position: absolute;
}
.report-y-label.top {
    top: 10px;
}
.report-y-label.middle {
    top: 82px;
}
.report-y-label.bottom {
    bottom: 3px;
}
.report-chart-labels {
    color: #7185aa;
    display: flex;
    font-size: 9px;
    justify-content: space-between;
    margin: 7px 0 0 24px;
}
.report-summary-stack {
    display: grid;
    gap: 16px;
}
.report-summary-stack .report-card {
    min-height: 0;
}
.report-summary-stack .stat-mark {
    float: none;
    position: absolute;
    right: 65px;
    top: 26px;
}
.report-card-arrow {
    color: #a892ff;
    font-size: 19px;
    position: absolute;
    right: 20px;
    top: 20px;
}
.report-card-link {
    position: relative;
}
@media (max-width: 600px) {
    .moderation-toolbar {
        align-items: stretch;
        flex-direction: column;
    }
    .moderation-toolbar .filter-bar {
        align-items: stretch;
        flex-direction: column;
    }
    .moderation-toolbar select {
        min-width: 0;
        width: 100%;
    }
    .report-analytics-grid {
        grid-template-columns: 1fr;
    }
    .report-range-chip {
        padding: 8px 9px;
    }
}
.profile-summary .premium-verified-badge {
    height: 18px;
    vertical-align: 3px;
    width: 18px;
}


.admin-sidebar-top .brand-logo-link, .admin-sidebar .admin-sidebar-top .brand-logo-link {
    margin: 0;
    width: 190px;
}
.admin-sidebar-top .brand-logo-link img {
    display: block;
    width: 100%;
}
@media (max-width: 800px) {
    .admin-sidebar-top .brand-logo-link, .admin-sidebar .admin-sidebar-top .brand-logo-link {
        margin: 0;
        width: 38px;
    }
    .admin-sidebar-top .brand-logo-link img {
        height: 38px;
        object-fit: cover;
        object-position: left;
        width: 38px;
    }
}

.member-brand {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-bottom: 24px;
}
.member-brand img {
    display: block;
    height: auto;
    max-width: 218px;
    width: 100%;
}
.member-brand small {
    color: #7182ab;
    font: 500 10px/1.2 Inter, sans-serif;
    letter-spacing: .2px;
    margin-left: 5px;
}
.admin-sidebar-top .brand-logo-link {
    display: block;
    height: auto;
    margin: 0;
    width: 190px;
}
.admin-sidebar-top .brand-logo-link img {
    display: block;
    width: 100%;
}
@media (max-width: 800px) {
    .admin-sidebar-top .brand-logo-link {
        width: 38px;
    }
    .admin-sidebar-top .brand-logo-link img {
        height: 38px;
        object-fit: cover;
        object-position: left;
        width: 38px;
    }
}
body.panel-body .match-card-actions button.text-link, body.panel-body .action-row button.text-link {
    appearance: none;
    background: #0b1730;
    border: 1px solid #29466e;
    border-radius: 8px;
    color: #b9c8df;
    cursor: pointer;
    font: 600 11px/1 Inter, sans-serif;
    padding: 9px 12px;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
}
body.panel-body .match-card-actions button.text-link:hover, body.panel-body .action-row button.text-link:hover {
    background: #172b4b;
    border-color: #8f7cff;
    color: #fff;
}
.broadcast-card {
    padding: clamp(24px, 4vw, 42px);
}
.broadcast-card textarea {
    background: #08152b;
    border: 1px solid #29466e;
    border-radius: 10px;
    color: #eef4ff;
    font: 14px/1.6 Inter,sans-serif;
    min-height: 170px;
    padding: 14px 15px;
    resize: vertical;
    width: 100%;
}
.broadcast-card textarea:focus {
    border-color: #8b7cff;
    box-shadow: 0 0 0 3px #8b7cff1f;
    outline: none;
}
.broadcast-footer {
    align-items: center;
    border-top: 1px solid #1b3151;
    display: flex;
    justify-content: space-between;
    margin-top: 22px;
    padding-top: 22px;
}
.broadcast-footer span {
    color: #7f91ae;
    font-size: 11px;
}
@media (max-width: 650px) {
    .broadcast-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 15px;
    }
}
* {
    box-sizing:border-box
}
html {
    background:var(--bg)
}
body {
    margin:0;
    background:radial-gradient(circle at 72% 4%,#24203d 0,transparent 32rem),var(--bg);
    color:var(--ink);
    font-family:'Inter',sans-serif;
    min-height:100vh
}
body.error-page-body {
    background: #030a1b;
}
.error-shell-forbidden {
    background: linear-gradient(145deg, #0b1b38, #061127);
    border: 1px solid #29466e;
    border-radius: 24px;
    box-shadow: 0 28px 90px #0008;
    margin-top: 32px;
    margin-bottom: 48px;
    padding: clamp(48px, 8vw, 92px) clamp(28px, 7vw, 92px);
}
.error-shell-forbidden:after {
    color: #6f82ff0b;
    content: '403';
}
.error-shell-forbidden .error-code {
    color: #a99cff;
    border-color: #8c7bff88;
}
.shell {
    width:min(1440px,calc(100% - 64px));
    margin:auto
}
.topbar {
    height:92px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    position:relative;
    z-index:2
}
.brand {
    font:700 23px 'Manrope';
    color:#fff;
    text-decoration:none;
    letter-spacing:-1px
}
.brand span {
    color:var(--violet)
}
.brand i {
    display:inline-block;
    width:6px;
    height:6px;
    background:#ff9c7c;
    border-radius:50%;
    margin:0 0 13px 2px
}
.nav-links {
    display:flex;
    align-items:center;
    gap:30px
}
.nav-links a,.nav-button {
    color:#c2c0cb;
    text-decoration:none;
    font-size:14px;
    background:none;
    border:0;
    cursor:pointer
}
.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    padding:15px 19px;
    border-radius:10px;
    border:1px solid #aaa0ff;
    background:linear-gradient(135deg,#a599ff,#7667eb);
    color:white;
    text-decoration:none;
    font-weight:600;
    box-shadow:0 12px 30px #7667eb35
}
.button span {
    font-size:20px;
    line-height:10px
}
.button-small {
    padding:11px 16px;
    font-size:13px;
    gap:8px
}
.button-wide {
    width:100%;
    font:600 15px 'Inter';
    cursor:pointer
}
.inline-form {
    display:inline
}
.hero {
    min-height:600px;
    display:flex;
    align-items:center;
    gap:5%;
    padding:38px 0 65px
}
.hero-copy {
    width:51%;
    position:relative;
    z-index:1
}
.eyebrow {
    font-size:11px;
    color:#aaa7b8;
    letter-spacing:1.7px;
    font-weight:700
}
.pulse {
    display:inline-block;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#82e0b0;
    box-shadow:0 0 0 5px #82e0b01c;
    margin:0 9px 1px 1px
}
.hero h1,.auth-panel h1 {
    font:600 clamp(48px,6vw,78px)/.98 'Manrope';
    letter-spacing:-4px;
    margin:23px 0
}
.hero h1 em,.auth-panel h1 em,h2 em {
    font-style:normal;
    color:var(--violet)
}
.hero-lead {
    font-size:17px;
    color:var(--muted);
    line-height:1.65;
    max-width:440px
}
.hero-actions {
    display:flex;
    align-items:center;
    gap:28px;
    margin-top:34px
}
.text-link {
    font-size:13px;
    color:#c4bfff;
    text-decoration:none
}
.hero-art {
    width:49%;
    height:490px;
    position:relative
}
.orbit {
    border:1px solid #7769df45;
    border-radius:50%;
    position:absolute;
    transform:rotate(-23deg)
}
.orbit-a {
    width:470px;
    height:250px;
    top:110px;
    left:20px
}
.orbit-b {
    width:420px;
    height:190px;
    top:140px;
    left:42px;
    transform:rotate(38deg)
}
.glow-ball {
    position:absolute;
    width:280px;
    height:280px;
    border-radius:50%;
    background:#7d6bf7;
    filter:blur(70px);
    opacity:.2;
    top:95px;
    left:115px
}
.profile-card {
    position:absolute;
    display:flex;
    align-items:center;
    gap:12px;
    background:#242431e8;
    border:1px solid #ffffff18;
    box-shadow:0 20px 45px #0008;
    border-radius:14px;
    padding:13px 16px;
    z-index:1
}
.profile-card strong,.profile-card small {
    display:block
}
.profile-card strong {
    font-size:13px
}
.profile-card small {
    color:#9795a7;
    font-size:11px;
    margin-top:4px
}
.card-main {
    top:200px;
    left:105px;
    width:255px
}
.card-float {
    padding:10px 13px
}
.card-top {
    top:90px;
    right:0;
    transform:rotate(5deg)
}
.card-bottom {
    bottom:62px;
    right:32px;
    transform:rotate(-4deg)
}
.avatar {
    width:37px;
    height:37px;
    border-radius:12px;
    display:grid;
    place-items:center;
    color:#292335;
    font-weight:700
}
.avatar-lilac {
    background:#c9baff
}
.avatar-peach {
    background:#ffc5a5
}
.heart {
    margin-left:auto;
    color:#ff9eaf;
    font-size:25px
}
.spark {
    color:#a69aff
}
.mini-icon,.stat-mark {
    display:grid;
    place-items:center;
    border-radius:11px;
    width:36px;
    height:36px;
    background:#7468de;
    color:#fff
}
.feature-row {
    border-top:1px solid var(--line);
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
    padding:32px 0
}
.feature-row>div {
    position:relative;
    padding-left:52px
}
.feature-row strong {
    font-size:14px
}
.feature-row p {
    font-size:12px;
    color:var(--muted);
    line-height:1.5;
    margin:7px 0 0
}
.feature-icon {
    position:absolute;
    left:0;
    top:1px;
    color:var(--violet);
    font-size:24px
}
.auth-shell {
    min-height:calc(100vh - 92px);
    display:grid;
    grid-template-columns:1fr 410px;
    gap:15%;
    align-items:center;
    padding:30px 0 75px
}
.auth-panel h1 {
    font-size:62px;
    margin:20px 0
}
.auth-panel>p {
    color:var(--muted);
    max-width:340px;
    line-height:1.7
}
.quote {
    border-left:1px solid var(--violet);
    margin-top:62px;
    padding:3px 0 3px 18px;
    color:#c7c3d3;
    font-size:13px;
    line-height:1.6
}
.quote small {
    display:block;
    color:#777586;
    margin-top:7px
}
.form-card {
    background:linear-gradient(145deg,#22212d,#181820);
    border:1px solid var(--line);
    border-radius:18px;
    padding:32px;
    box-shadow:0 30px 70px #0005
}
.form-heading h2 {
    font:600 30px 'Manrope';
    margin:0 0 7px
}
.form-heading p {
    font-size:13px;
    color:var(--muted);
    margin:0 0 29px
}
.auth-alert {
    border:1px solid;
    border-radius:12px;
    display:grid;
    gap:4px;
    line-height:1.5;
    margin:0 0 20px;
    padding:13px 15px
}
.auth-alert strong {
    font-size:12px
}
.auth-alert span {
    color:#9db0cc;
    font-size:11px
}
.auth-alert-success {
    background:#77d6a914;
    border-color:#77d6a94d;
    color:#9ae0bd
}
.auth-alert-error {
    background: #ff6f7d12;
    border-color: #ff829055;
    color: #ffb0b9;
}
.field {
    margin-bottom:19px
}
.field label,.field-label {
    font-size:12px;
    color:#bab7c6;
    display:flex;
    justify-content:space-between;
    margin-bottom:8px
}
.field-label a {
    color:var(--violet);
    text-decoration:none;
    font-size:11px
}
input {
    width:100%;
    padding:14px 15px;
    border-radius:8px;
    border:1px solid #363542;
    background:#14141c;
    color:white;
    outline:none;
    font:14px 'Inter'
}
input:focus {
    border-color:var(--violet);
    box-shadow:0 0 0 3px #9b8cff1c
}
.country-select-shell {
    align-items: center;
    background: #0b1730;
    border: 1px solid #29466e;
    border-radius: 9px;
    display: flex;
    min-height: 48px;
    overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.country-select-shell:focus-within {
    border-color: var(--violet);
    box-shadow: 0 0 0 3px #9b8cff1c;
}
.country-select-icon {
    align-items: center;
    background: #1a2850;
    border-radius: 8px;
    color: #b8adff;
    display: inline-flex;
    flex: 0 0 30px;
    font-size: 17px;
    height: 30px;
    justify-content: center;
    margin-left: 9px;
}
.country-select {
    appearance: none;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%23b9c8df' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 14px center;
    border: 0;
    border-radius: 0;
    color: #edf3ff;
    cursor: pointer;
    flex: 1;
    font: 14px/1.6 Inter, sans-serif;
    min-width: 0;
    outline: 0;
    padding: 12px 42px 12px 12px;
    width: 100%;
}
.country-select option {
    background: #101e39;
    color: #edf3ff;
}
.check {
    display:flex;
    gap:9px;
    align-items:center;
    color:#92909f;
    font-size:12px;
    margin:3px 0 23px
}
.check input {
    width:14px;
    height:14px;
    accent-color:var(--violet)
}
.form-foot {
    text-align:center;
    color:#858391;
    font-size:12px;
    margin:24px 0 0
}
.form-foot a {
    color:#b7adff;
    text-decoration:none
}
.legal {
    font-size:10px;
    color:#777581;
    text-align:center;
    line-height:1.5;
    margin:17px 0 0
}
.member-count {
    display:flex;
    align-items:center;
    gap:15px;
    margin-top:53px;
    color:#888594;
    font-size:12px;
    line-height:1.5
}
.member-count strong {
    color:#ddd9e7
}
.stacked-avatars {
    display:flex
}
.stacked-avatars i {
    display:grid;
    place-items:center;
    width:31px;
    height:31px;
    border:2px solid #201e2b;
    border-radius:50%;
    margin-left:-7px;
    background:#a69aff;
    color:#30293e;
    font-style:normal;
    font-size:11px
}
.stacked-avatars i:first-child {
    margin-left:0;
    background:#ffb99e
}
.stacked-avatars i:nth-child(2) {
    background:#9dd6c3
}
.stacked-avatars i:nth-child(3) {
    background:#d6b1ff
}
.dashboard {
    padding:50px 0 80px
}
.dashboard-head {
    display:flex;
    justify-content:space-between;
    align-items:end;
    margin-bottom:35px
}
.dashboard h1 {
    font:600 40px 'Manrope';
    letter-spacing:-2px;
    margin:17px 0 8px
}
.dashboard-head p {
    color:var(--muted);
    font-size:14px;
    margin:0
}
.stat-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:17px
}
.stat-card {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    padding:21px
}
.stat-card-link {
    color:inherit;
    display:block;
    transition:transform .2s ease,border-color .2s ease
}
.stat-card-link:hover {
    border-color:#8275ed88;
    transform:translateY(-3px)
}
.stat-card-link .trend {
    display:block;
    margin-top:3px
}
.stat-card small {
    display:block;
    color:#9693a1;
    font-size:12px;
    margin:23px 0 7px
}
.stat-card strong {
    display:block;
    font:600 32px 'Manrope'
}
.trend {
    font-size:11px;
    color:#7ed3ab
}
.stat-mark {
    float:right
}
.blue {
    background:#6689df
}
.peach {
    background:#d48177
}
.welcome-card {
    margin-top:18px;
    padding:39px 44px;
    border-radius:16px;
    border:1px solid #8275ed55;
    background:linear-gradient(105deg,#26233c,#1c1b2b);
    position:relative;
    overflow:hidden
}
.welcome-card h2 {
    font:600 32px/1.15 'Manrope';
    margin:15px 0
}
.welcome-card p {
    color:var(--muted);
    font-size:13px;
    margin-bottom:25px
}
.card-orb {
    position:absolute;
    right:110px;
    top:30px;
    font-size:125px;
    color:#978aff35
}
.dashboard-panels {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:18px
}
.dashboard-panel {
    min-width:0;
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    padding:4px 18px 18px
}
.dashboard-panel .section-heading {
    margin:18px 4px 13px
}
.dashboard-panel .section-heading h2 {
    margin-top:6px
}
.dashboard-feed {
    display:grid;
    gap:2px
}
.dashboard-feed-item {
    display:flex;
    align-items:flex-start;
    gap:11px;
    min-width:0;
    padding:12px 5px;
    border-radius:10px;
    color:inherit
}
.dashboard-feed-item:hover {
    background:#ffffff06
}
.feed-icon {
    flex:0 0 30px;
    width:30px;
    height:30px;
    border-radius:10px;
    display:grid;
    place-items:center;
    color:#231e35;
    font-size:13px
}
.feed-icon.violet {
    background:#a99cff
}
.dashboard-feed-item>span:nth-child(2) {
    min-width:0;
    flex:1
}
.dashboard-feed-item strong,.dashboard-feed-item small {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.dashboard-feed-item strong {
    font-size:12px
}
.dashboard-feed-item small {
    color:var(--muted);
    margin-top:4px;
    font-size:11px
}
.dashboard-feed-item time {
    color:#777584;
    font-size:10px;
    white-space:nowrap;
    padding-top:3px
}
.feed-unread {
    background:#7667e40b
}
.dashboard-empty {
    display:grid;
    justify-items:center;
    gap:8px;
    padding:28px 12px 20px;
    color:var(--muted);
    text-align:center
}
.dashboard-empty>span {
    color:#aaa0ff;
    font-size:23px
}
.dashboard-empty p {
    margin:0;
    font-size:12px
}
@media(max-width:800px) {
    .shell {
        width:min(100% - 38px,560px)
    }
    .topbar {
        height:75px
    }
    .nav-links {
        gap:14px
    }
    .hero {
        display:block;
        padding-top:70px
    }
    .hero-copy {
        width:100%
    }
    .hero h1 {
        font-size:54px
    }
    .hero-art {
        width:100%;
        height:340px;
        margin-top:25px;
        transform:scale(.85);
        transform-origin:top left
    }
    .feature-row {
        grid-template-columns:1fr;
        gap:25px
    }
    .auth-shell {
        display:block;
        padding-top:55px
    }
    .auth-panel {
        margin-bottom:32px;
    }
    .member-count {
        margin-top:36px;
    }
    .auth-panel h1 {
        font-size:49px
    }
    .quote {
        margin:28px 0 40px
    }
    .form-card {
        padding:25px
    }
    .dashboard-head {
        display:block
    }
    .dashboard-head .button {
        margin-top:24px
    }
    .stat-grid {
        grid-template-columns:1fr
    }
    .dashboard-panels {
        grid-template-columns:1fr
    }
    .welcome-card {
        padding:27px
    }
    .card-orb {
        right:5px;
        top:80px
    }
}
/* Modern administration workspace */ .admin-body {
    min-height:100vh;
    background:#0b0d12;
    color:#f4f5f8
}
.admin-sidebar {
    width:268px;
    min-height:100vh;
    padding:27px 16px 18px;
    background:linear-gradient(180deg,#151821 0%,#10131a 100%);
    border-right:1px solid #252936;
    box-shadow:16px 0 40px #00000018
}
.admin-sidebar-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 12px;
    margin-bottom:28px
}
.admin-sidebar .brand {
    margin:0;
    font-size:22px;
    letter-spacing:-1px
}
.admin-live-dot {
    width:8px;
    height:8px;
    border-radius:50%;
    background:#6fe3ad;
    box-shadow:0 0 0 5px #6fe3ad15,0 0 16px #6fe3ad88
}
.admin-workspace-switch {
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 3px 27px;
    padding:11px 12px;
    border:1px solid #2b303d;
    border-radius:13px;
    background:#1b1f29
}
.admin-workspace-switch>span:nth-child(2) {
    flex:1;
    min-width:0
}
.admin-workspace-switch small,.admin-workspace-switch strong {
    display:block
}
.admin-workspace-switch small {
    color:#777e8d;
    font-size:9px;
    letter-spacing:.9px;
    text-transform:uppercase
}
.admin-workspace-switch strong {
    margin-top:3px;
    color:#edf0f5;
    font-size:12px
}
.admin-workspace-switch>b {
    color:#6f7685;
    font-size:13px
}
.admin-workspace-icon {
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:9px;
    background:linear-gradient(135deg,#9f8eff,#695de1);
    color:#241e42;
    font-size:13px
}
.admin-label {
    margin:22px 13px 9px;
    color:#616979;
    font-size:9px;
    font-weight:700;
    letter-spacing:1.35px
}
.admin-label:first-child {
    margin-top:0
}
.admin-link {
    position:relative;
    gap:12px;
    min-height:42px;
    margin:3px 0;
    padding:11px 13px;
    border:1px solid transparent;
    border-radius:11px;
    color:#8f96a5;
    font-size:12px;
    transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease
}
.admin-link b {
    color:#70798b;
    font-size:15px
}
.admin-link em {
    margin-left:auto;
    color:#657080;
    font-style:normal;
    font-size:12px
}
.admin-link.active {
    color:#fff;
    border-color:#423d76;
    background:linear-gradient(90deg,#322d58,#27253d)
}
.admin-link.active:before {
    position:absolute;
    left:-17px;
    width:3px;
    height:20px;
    border-radius:0 4px 4px 0;
    background:#9d8cff;
    content:''
}
.admin-link.active b,.admin-link.active em {
    color:#a99cff
}
.admin-link:hover {
    color:#fff;
    background:#1d222d;
    transform:translateX(2px)
}
.admin-sidebar-footer {
    padding-top:15px;
    border-top:1px solid #252a35
}
.admin-account-mini {
    display:flex;
    align-items:center;
    gap:9px;
    padding:10px 9px;
    color:inherit;
    border-radius:11px ;
    text-decoration:none!important
}
.admin-account-mini * {
    text-decoration:none!important;
}
.admin-account-mini:hover {
    background:#1c212b
}
.admin-account-mini>span:nth-child(2) {
    flex:1;
    min-width:0
}
.admin-account-mini strong,.admin-account-mini small {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.admin-account-mini strong {
    color:#e9ebf1;
    font-size:11px
}
.admin-account-mini small {
    margin-top:3px;
    color:#747d8c;
    font-size:9px
}
.admin-account-mini>b {
    color:#768090;
    font-size:13px
}
.admin-sidebar .admin-logout {
    min-height:36px;
    margin-top:8px;
    color:#7e8795
}
.admin-sidebar .admin-logout:hover {
    color:#ffaaa8;
    background:#2c2026
}
.admin-main {
    width:auto;
    padding:0 clamp(28px,4.5vw,74px) 70px;
    background:radial-gradient(circle at 85% 0%,#24204433 0,transparent 30%),#0b0d12
}
.admin-header {
    min-height:128px;
    margin:0 0 36px;
    padding:27px 0 24px;
    border-bottom:1px solid #252a35
}
.admin-heading-group h1 {
    margin:10px 0 0;
    color:#f7f7fa;
    font:700 34px/1.08 'Manrope';
    letter-spacing:-1.5px
}
.admin-heading-group>p {
    margin:8px 0 0;
    color:#7d8492;
    font-size:12px
}
.admin-breadcrumb {
    display:flex;
    gap:8px;
    color:#697181;
    font-size:10px
}
.admin-breadcrumb b {
    color:#454c59;
    font-weight:400
}
.admin-header-actions {
    display:flex;
    align-items:center;
    gap:22px
}
.admin-preview-link {
    color:#a99cff;
    font-size:11px
}
.admin-preview-link span {
    margin-left:5px
}
.admin-user {
    gap:9px;
    padding:7px 10px 7px 7px;
    border:1px solid #282d39;
    border-radius:12px;
    background:#151922
}
.admin-user>span:last-child strong,.admin-user>span:last-child small {
    display:block
}
.admin-user>span:last-child strong {
    color:#e5e8ed;
    font-size:11px
}
.admin-user>span:last-child small {
    margin-top:3px;
    color:#6c7584;
    font-size:9px
}
.admin-avatar {
    width:32px;
    height:32px;
    border-radius:10px;
    background:linear-gradient(135deg,#b4a7ff,#7769e9);
    box-shadow:0 5px 14px #8172f344
}
.admin-page-content {
    width:100%;
    max-width:none
}
.admin-page-content>.admin-eyebrow {
    color:#8991a0;
    font-size:12px
}
.admin-page-content .admin-stat-grid {
    gap:18px
}
.admin-stat {
    position:relative;
    min-height:148px;
    padding:23px;
    border:1px solid #292e3b;
    border-radius:17px;
    background:linear-gradient(145deg,#171b25,#11141b);
    box-shadow:0 14px 28px #00000016;
    overflow:hidden
}
.admin-stat:after {
    position:absolute;
    right:-22px;
    bottom:-42px;
    width:110px;
    height:110px;
    border:1px solid #877bff20;
    border-radius:50%;
    content:''
}
.admin-stat small {
    margin:24px 0 9px;
    color:#8991a0
}
.admin-stat strong {
    color:#f5f5f8;
    font-size:31px
}
.admin-table-card {
    margin-top:20px;
    padding:27px;
    border:1px solid #292e3b;
    border-radius:17px;
    background:linear-gradient(145deg,#171b25,#11141b);
    box-shadow:0 14px 28px #00000012
}
.table-heading h2,.admin-form-card h2,.form-heading h2 {
    color:#f3f4f7
}
.table-heading p,.form-heading p {
    color:#7d8594
}
.admin-table-card th {
    color:#687181
}
.admin-table-card td {
    border-top-color:#252b37;
    color:#929aa8
}
.admin-table-card td:first-child {
    color:#eef0f4
}
.admin-table-card tr:hover td {
    background:#ffffff03
}
.table-toolbar {
    align-items:center;
    gap:18px;
    margin-bottom:20px
}
.filter-bar {
    flex:1
}
.filter-bar input,.filter-bar select {
    border-color:#2d3340;
    background:#151922
}
.button {
    border-radius:11px;
    box-shadow:0 9px 20px #8071ed24
}
.button:hover {
    box-shadow:0 11px 24px #8071ed44
}
.status-pill,.role-badge {
    border:1px solid #7568e633;
    background:#7568e61a
}
.wallet-balance-card {
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:190px;
    padding:34px 40px;
    border:1px solid #8275ed66;
    border-radius:18px;
    background:radial-gradient(circle at 85% 20%,#a99cff1f,transparent 35%),linear-gradient(120deg,#252141,#171725);
    overflow:hidden
}
.wallet-balance-card strong {
    display:block;
    margin-top:13px;
    color:#fff;
    font:700 55px 'Manrope';
    letter-spacing:-3px
}
.wallet-balance-card p {
    margin:3px 0 0;
    color:#aaa5bd;
    font-size:12px
}
.wallet-reward-button {
    display:block;
    margin-top:15px;
    padding:0;
    border:0;
    background:none;
    cursor:pointer;
    font:11px Inter,sans-serif
}
.coin-reference {
    color:#868e9e;
    font-size:10px
}
.leaderboard-highlight {
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:160px;
    padding:28px 34px;
    border:1px solid #8275ed66;
    border-radius:18px;
    background:radial-gradient(circle at 80% 20%,#f1c76c1f,transparent 30%),linear-gradient(120deg,#252141,#171725)
}
.leaderboard-highlight strong {
    display:block;
    margin-top:10px;
    color:#fff;
    font:700 48px 'Manrope';
    letter-spacing:-2px
}
.leaderboard-highlight p {
    margin:3px 0 0;
    color:#aaa5bd;
    font-size:12px
}
.leaderboard-trophy {
    color:#f3cc73;
    font-size:78px;
    text-shadow:0 0 30px #e8b95166
}
.leaderboard-page .section-heading {
    margin-top:34px
}
.leaderboard-list {
    overflow:hidden
}
.leaderboard-row {
    display:flex;
    align-items:center;
    gap:13px;
    padding:15px 22px;
    border-bottom:1px solid var(--line)
}
.leaderboard-row:last-child {
    border-bottom:0
}
.leaderboard-you {
    background:#7667e40e
}
.leaderboard-rank {
    width:24px;
    color:#888595;
    font:600 12px 'Manrope';
    text-align:center
}
.leaderboard-row>div {
    flex:1
}
.leaderboard-row strong,.leaderboard-row small {
    display:block
}
.leaderboard-row strong {
    font-size:12px
}
.leaderboard-row small {
    margin-top:4px;
    color:var(--muted);
    font-size:10px
}
.leaderboard-row>b {
    color:#f3d178;
    font-size:13px
}
.leaderboard-row>b i {
    color:#9893a2;
    font:400 10px Inter,sans-serif
}
.leaderboard-avatar {
    flex:none;
    background:linear-gradient(135deg,#b9adff,#7162e6)
}
.discover-stage {
    display:grid;
    justify-items:center;
    margin-top:4px
}
.discover-card-shell {
    width:min(100%,450px);
    perspective:1000px;
    touch-action:none
}
.discover-card {
    overflow:hidden;
    border:1px solid #8275ed66;
    border-radius:22px;
    background:linear-gradient(145deg,#201d36,#151621);
    box-shadow:0 28px 60px #0005;
    transition:transform .2s ease
}
.discover-card-art {
    position:relative;
    display:grid;
    place-items:center;
    height:290px;
    overflow:hidden;
    background:radial-gradient(circle at 50% 50%,#9b8cff66,transparent 27%),linear-gradient(135deg,#322a59,#171827)
}
.discover-card-art:before,.discover-card-art:after {
    position:absolute;
    width:240px;
    height:240px;
    border:1px solid #b7adff25;
    border-radius:50%;
    content:''
}
.discover-card-art:after {
    width:330px;
    height:330px;
    border-color:#b7adff14
}
.discover-card-glow {
    position:absolute;
    width:130px;
    height:130px;
    border-radius:50%;
    background:#c4baff;
    filter:blur(45px);
    opacity:.45
}
.discover-card-initial {
    position:relative;
    z-index:1;
    display:grid;
    place-items:center;
    width:108px;
    height:108px;
    border:7px solid #ffffff3c;
    border-radius:36px;
    background:linear-gradient(135deg,#c9c0ff,#7565e1);
    color:#2e2750;
    font:700 48px 'Manrope';
    box-shadow:0 18px 35px #0004
}
.discover-card-status {
    position:absolute;
    right:18px;
    bottom:17px;
    z-index:2;
    padding:8px 11px;
    border:1px solid #ffffff22;
    border-radius:20px;
    background:#171827aa;
    color:#d9d8e2;
    font-size:10px
}
.discover-card-status i {
    display:inline-block;
    width:6px;
    height:6px;
    margin-right:5px;
    border-radius:50%;
    background:#6fe3ad
}
.discover-card-info {
    display:flex;
    justify-content:space-between;
    padding:23px 25px 0
}
.discover-card-info h2 {
    margin:0;
    color:#fff;
    font:600 25px 'Manrope'
}
.discover-card-info p {
    margin:5px 0 0;
    color:#9693a3;
    font-size:11px
}
.discover-card-number {
    color:#777388;
    font:600 12px 'Manrope'
}
.discover-card-copy {
    padding:16px 25px 25px;
    color:#aaa7b5;
    font-size:12px;
    line-height:1.6
}
.discover-actions {
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:24px;
    color:#777487;
    font-size:10px
}
.discover-actions form {
    margin:0
}
.discover-action {
    display:grid;
    place-items:center;
    width:54px;
    height:54px;
    border:1px solid #ffffff18;
    border-radius:50%;
    background:#1a1b27;
    cursor:pointer;
    font:28px Inter,sans-serif;
    transition:transform .2s ease,box-shadow .2s ease
}
.discover-action:hover {
    transform:translateY(-4px)
}
.discover-pass {
    color:#ff9caa;
    box-shadow:0 10px 24px #ff8eab18
}
.discover-like {
    color:#a99cff;
    box-shadow:0 10px 24px #9b8cff25
}
.discover-super {
    width:46px;
    height:46px;
    color:#6dbdff;
    font-size:21px;
    box-shadow:0 10px 24px #6dbdff25
}
.discover-secondary-actions {
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:15px
}
.discover-secondary-actions form {
    margin:0
}
.discover-secondary-actions .text-link {
    align-items: center;
    background: #0b1730;
    border: 1px solid #29466e;
    border-radius: 8px;
    color: #b9c8df;
    cursor: pointer;
    display: inline-flex;
    font: 11px Inter,sans-serif;
    min-height: 34px;
    padding: 8px 11px;
    transition: background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.discover-secondary-actions .text-link:hover {
    background: #182c50;
    border-color: #8476ee;
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
}
.discover-secondary-actions .boost-link {
    background: #2d2410;
    border-color: #806329;
    color: #f6c15c;
}
.discover-secondary-actions .danger-link {
    background: #321a2b;
    border-color: #7e3a55;
    color: #ff9cae;
}
.discover-secondary-actions p {
    margin:0;
    color:#777487;
    font-size:10px
}
.discover-hint {
    margin:18px 0 0;
    color:#777487;
    font-size:10px
}
.discover-drag-like {
    border-color:#6fe3ad99;
    box-shadow:0 28px 60px #6fe3ad24
}
.discover-drag-pass {
    border-color:#ff9caa99;
    box-shadow:0 28px 60px #ff9caa24
}
.discover-empty {
    display:grid;
    justify-items:center;
    padding:78px 20px;
    border:1px solid var(--line);
    border-radius:18px;
    background:var(--panel);
    text-align:center
}
.discover-empty>span {
    color:#aaa0ff;
    font-size:34px
}
.discover-empty h2 {
    margin:15px 0 8px;
    font:600 22px 'Manrope'
}
.discover-empty p {
    max-width:380px;
    margin:0 0 22px;
    color:var(--muted);
    font-size:12px
}
.matches-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
.match-card {
    display:flex;
    align-items:center;
    gap:18px;
    padding:24px;
    border:1px solid var(--line);
    border-radius:17px;
    background:var(--panel)
}
.match-avatar {
    display:grid;
    place-items:center;
    flex:none;
    width:76px;
    height:76px;
    border-radius:25px;
    background:linear-gradient(135deg,#c7beff,#7162e4);
    color:#2e2750;
    font:700 30px 'Manrope'
}
.match-card-info {
    min-width:0
}
.match-card-info h2 {
    margin:7px 0 4px;
    font:600 19px 'Manrope'
}
.match-card-info p {
    overflow:hidden;
    margin:0;
    color:var(--muted);
    font-size:10px;
    text-overflow:ellipsis;
    white-space:nowrap
}
.match-card-actions {
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:15px
}
.match-card-actions form {
    margin:0
}
@media(max-width:800px) {
    .matches-grid {
        grid-template-columns:1fr
    }
}
@media(max-width:560px) {
    .leaderboard-highlight {
        padding:24px
    }
    .leaderboard-trophy {
        font-size:57px
    }
    .leaderboard-row {
        padding:14px
    }
}
.wallet-coin,.coin-admin-mark {
    display:grid;
    place-items:center;
    width:92px;
    height:92px;
    border:8px solid #fff2;
    border-radius:50%;
    background:linear-gradient(135deg,#ffe59a,#d9913d);
    color:#5f3b1c;
    box-shadow:0 0 0 13px #ffdc7d12,0 12px 35px #0005;
    font:800 42px 'Manrope'
}
.wallet-page .section-heading {
    margin-top:34px
}
.wallet-transfer-card {
    display:grid;
    grid-template-columns:.7fr 1.3fr;
    gap:28px;
    align-items:center;
    margin-top:18px;
    padding:25px 28px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--panel)
}
.wallet-transfer-card h2 {
    margin:8px 0 5px;
    font:600 20px 'Manrope'
}
.wallet-transfer-card p {
    margin:0;
    color:var(--muted);
    font-size:11px
}
.wallet-transfer-fields {
    display:grid;
    grid-template-columns:1fr 110px;
    gap:9px
}
.wallet-transfer-fields input {
    min-width:0;
    padding:11px 12px;
    border:1px solid #363542;
    border-radius:8px;
    background:#14141c;
    color:#fff;
    font:11px Inter,sans-serif
}
.wallet-transfer-fields input:nth-child(3) {
    grid-column:span 2
}
.wallet-transfer-fields .button {
    grid-column:span 2
}
.coin-stat-grid {
    margin-top:18px
}
.coin-stat-grid .admin-stat {
    min-height:125px
}
.coin-stat-grid .admin-stat small {
    margin-top:16px
}
.wallet-transactions {
    overflow:hidden
}
.wallet-transaction {
    display:flex;
    align-items:center;
    gap:13px;
    padding:16px 21px;
    border-bottom:1px solid var(--line)
}
.wallet-transaction:last-child {
    border-bottom:0
}
.wallet-transaction-icon {
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:11px;
    font-weight:700
}
.wallet-credit {
    background:#6fe3ad1a;
    color:#6fe3ad
}
.wallet-debit {
    background:#ff9d9d1a;
    color:#ff9d9d
}
.wallet-transaction>div {
    flex:1;
    min-width:0
}
.wallet-transaction strong,.wallet-transaction small {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.wallet-transaction strong {
    font-size:12px
}
.wallet-transaction small {
    margin-top:4px;
    color:var(--muted);
    font-size:10px
}
.wallet-transaction>b {
    font-size:13px
}
.wallet-credit-text {
    color:#6fe3ad
}
.wallet-debit-text {
    color:#ff9d9d
}
.wallet-transaction time {
    color:#777584;
    font-size:10px;
    white-space:nowrap
}
.coin-admin-intro {
    display:flex;
    align-items:center;
    justify-content:space-between
}
.coin-admin-intro h2 {
    margin:8px 0 6px;
    font:600 22px 'Manrope'
}
.coin-admin-intro p {
    margin:0;
    color:var(--muted);
    font-size:12px
}
.coin-admin-mark {
    width:64px;
    height:64px;
    border-width:5px;
    font-size:28px
}
.coin-balance-small {
    color:#f4d486;
    font:700 17px 'Manrope'
}
.coin-balance-small i {
    color:#9793a2;
    font:400 10px Inter,sans-serif
}
.coin-adjust-form {
    display:grid;
    grid-template-columns:105px 110px minmax(130px,1fr) auto;
    gap:7px;
    align-items:center
}
.coin-adjust-form select,.coin-adjust-form input {
    min-width:0;
    padding:9px 10px;
    border:1px solid #363542;
    border-radius:8px;
    background:#14141c;
    color:#e8e7ee;
    font:11px Inter,sans-serif
}
@media(max-width:900px) {
    .coin-adjust-form {
        grid-template-columns:1fr 1fr
    }
    .coin-adjust-form input:nth-of-type(2),.coin-adjust-form .button {
        grid-column:span 2
    }
}
@media(max-width:560px) {
    .wallet-transfer-card {
        grid-template-columns:1fr;
        padding:22px 18px
    }
    .wallet-balance-card {
        min-height:150px;
        padding:25px
    }
    .wallet-balance-card strong {
        font-size:42px
    }
    .wallet-coin {
        width:65px;
        height:65px;
        border-width:5px;
        font-size:29px
    }
    .wallet-transaction {
        padding:14px
    }
    .wallet-transaction time {
        display:none
    }
}
@media(max-width:800px) {
    .admin-sidebar {
        width:74px;
        padding:23px 10px 15px
    }
    .admin-sidebar-top {
        padding:0 5px;
        margin-bottom:24px
    }
    .admin-sidebar .brand {
        font-size:0
    }
    .admin-sidebar .brand:after {
        color:#a99cff;
        content:'c·b';
        font:700 17px 'Manrope'
    }
    .admin-workspace-switch {
        justify-content:center;
        margin:0 0 22px;
        padding:9px 0
    }
    .admin-workspace-switch>span:nth-child(2),.admin-workspace-switch>b,.admin-label,.admin-link span,.admin-link em,.admin-account-mini>span:nth-child(2),.admin-account-mini>b {
        display:none
    }
    .admin-workspace-icon {
        width:30px;
        height:30px
    }
    .admin-link {
        justify-content:center;
        padding:11px 5px
    }
    .admin-link b {
        width:auto
    }
    .admin-link.active:before {
        left:-11px
    }
    .admin-account-mini {
        justify-content:center;
        padding:8px 0
    }
    .admin-sidebar .admin-logout {
        justify-content:center
    }
    .admin-main {
        padding:0 20px 50px
    }
    .admin-header {
        min-height:106px;
        margin-bottom:28px
    }
    .admin-heading-group h1 {
        font-size:27px
    }
    .admin-heading-group>p,.admin-preview-link {
        display:none
    }
    .admin-header-actions {
        gap:0
    }
    .admin-user {
        padding:5px
    }
    .admin-user>span:last-child {
        display:none
    }
}
@media(max-width:560px) {
    .admin-sidebar {
        width:62px
    }
    .admin-main {
        padding:0 14px 40px
    }
    .admin-header {
        min-height:94px;
        padding-top:22px
    }
    .admin-heading-group h1 {
        font-size:23px
    }
    .admin-breadcrumb {
        font-size:9px
    }
    .admin-table-card {
        padding:19px 15px
    }
}
.profile-layout,.settings-grid {
    display:grid;
    grid-template-columns:280px 1fr;
    gap:18px
}
.profile-summary,.settings-list {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    padding:30px
}
.large-avatar {
    height:88px;
    width:88px;
    border-radius:26px;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#c4b9ff,#7767e7);
    color:#272038;
    font:700 34px 'Manrope'
}
.profile-summary h2 {
    font:600 25px 'Manrope';
    margin:24px 0 4px
}
.profile-summary p {
    font-size:13px;
    color:var(--muted);
    margin:0 0 22px
}
.status-pill {
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:#8fe0b8;
    font-size:11px
}
.status-pill i {
    width:6px;
    height:6px;
    background:#79d8a7;
    border-radius:50%
}
.profile-details {
    padding:30px
}
.detail-row {
    display:flex;
    justify-content:space-between;
    border-top:1px solid var(--line);
    padding:19px 0;
    color:#8e8b9b;
    font-size:13px
}
.detail-row strong {
    color:#e6e3ec;
    font-weight:500
}
.settings-grid {
    grid-template-columns:1fr 1fr
}
.settings-list {
    padding:10px 25px
}
.settings-list>div {
    display:flex;
    align-items:center;
    gap:13px;
    border-bottom:1px solid var(--line);
    padding:22px 0
}
.settings-list>div:last-child {
    border-bottom:0
}
.setting-icon {
    width:35px;
    height:35px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#786be429;
    color:#aca2ff
}
.settings-list strong {
    font-size:13px
}
.settings-list p {
    font-size:11px;
    color:var(--muted);
    margin:5px 0 0
}
.toggle {
    margin-left:auto;
    width:33px;
    height:19px;
    border-radius:20px;
    background:#555363;
    position:relative
}
.toggle:after {
    content:'';
    position:absolute;
    width:15px;
    height:15px;
    top:2px;
    left:2px;
    background:#aaa8b5;
    border-radius:50%
}
.toggle.on {
    background:#7667e6
}
.toggle.on:after {
    left:16px;
    background:#fff
}
.admin-body {
    display:flex;
    background:#101016
}
.admin-sidebar {
    width:245px;
    min-height:100vh;
    background:#181821;
    border-right:1px solid var(--line);
    padding:29px 18px;
    display:flex;
    flex-direction:column;
    flex-shrink:0
}
.admin-sidebar .brand {
    margin:0 15px 67px
}
.admin-label {
    font-size:10px;
    letter-spacing:1.4px;
    color:#686676;
    margin:0 15px 13px;
    text-transform:uppercase
}
.admin-link {
    display:flex;
    align-items:center;
    gap:13px;
    padding:12px 15px;
    margin-bottom:3px;
    border-radius:8px;
    color:#9593a2;
    text-decoration:none;
    border:0;
    background:transparent;
    width:100%;
    font:13px 'Inter';
    text-align:left;
    cursor:pointer
}
.admin-link b {
    font-size:17px;
    font-weight:400;
    width:17px;
    text-align:center
}
.admin-link.active,.admin-link:hover {
    color:#fff;
    background:#29283a
}
.admin-link.active b {
    color:#a69bff
}
.admin-spacer {
    flex:1
}
.admin-main {
    flex:1;
    min-width:0;
    padding:40px clamp(32px,5vw,78px) 70px
}
.admin-header {
    display:flex;
    align-items:end;
    justify-content:space-between;
    border-bottom:1px solid var(--line);
    padding-bottom:27px;
    margin-bottom:29px
}
.admin-main>.admin-eyebrow,.admin-main>.admin-stat-grid,.admin-main>.admin-table-card,.admin-main>.table-toolbar,.admin-main>.admin-settings-stack,.admin-main>.admin-form-card,.admin-main>.role-grid,.admin-main>.report-grid {
    width:100%;
    max-width:1800px
}
.admin-header h1 {
    font:600 34px 'Manrope';
    letter-spacing:-1.5px;
    margin:10px 0 0
}
.admin-user {
    display:flex;
    align-items:center;
    gap:10px;
    color:#b8b5c2;
    font-size:12px
}
.admin-avatar,.table-avatar {
    display:inline-grid;
    place-items:center;
    width:31px;
    height:31px;
    border-radius:10px;
    background:#a69aff;
    color:#30293e;
    font-weight:700
}
.admin-header-actions {
    align-items: center;
    display: flex;
    gap: 18px;
}
.admin-cache-form {
    margin: 0;
}
.admin-cache-button {
    align-items: center;
    background: #101f39;
    border: 1px solid #29466e;
    border-radius: 9px;
    color: #b9c9e4;
    cursor: pointer;
    display: inline-flex;
    font: 11px Inter,sans-serif;
    gap: 7px;
    padding: 9px 12px;
}
.admin-cache-button:hover {
    background: #172e53;
    border-color: #8d7cff;
    color: #fff;
}
.admin-cache-button span {
    color: #a89bff;
    font-size: 15px;
}
.admin-filter-toolbar {
    align-items: flex-start;
    gap: 14px;
}
.admin-filter-toolbar .filter-bar {
    flex: 1;
    flex-wrap: wrap;
}
.admin-filter-toolbar .filter-bar select {
    min-width: 130px;
}
.admin-toolbar-actions {
    display: flex;
    gap: 9px;
}
.premium-badge {
    background: #9d72ff24;
    border: 1px solid #a986ff66;
    border-radius: 6px;
    color: #c7b6ff;
    font-size: 10px;
    padding: 5px 8px;
    white-space: nowrap;
}
.free-badge,.unverified-badge {
    color: #8292ac;
    font-size: 11px;
}
.verified-badge {
    color: #54ddb1;
    font-size: 11px;
    white-space: nowrap;
}
.admin-plan-layout {
    align-items: stretch;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1.7fr) minmax(280px, .8fr);
}
.admin-plan-layout .admin-table-card {
    margin: 0;
}
.premium-switch-row {
    align-items: center;
    background: #0b1c35;
    border: 1px solid #1b3151;
    border-radius: 12px;
    display: flex;
    justify-content: space-between;
    margin: 0 0 24px;
    padding: 16px;
}
.premium-switch-row span {
    display: grid;
    gap: 4px;
}
.premium-switch-row strong {
    color: #f4f6fb;
    font-size: 13px;
}
.premium-switch-row small {
    color: #8191ab;
    font-size: 11px;
}
.premium-switch-row input[type="checkbox"] {
    accent-color: #917eff;
    height: 18px;
    width: 18px;
}
.admin-plan-preview {
    background: linear-gradient(145deg, #1d1642, #0b1730);
    border: 1px solid #5543a6;
    border-radius: 17px;
    padding: 30px;
}
.admin-plan-preview h2 {
    color: #fff;
    font: 600 24px Manrope,sans-serif;
    margin: 6px 0 22px;
}
.admin-plan-preview > strong {
    color: #f7d78d;
    display: block;
    font: 700 38px Manrope,sans-serif;
}
.admin-plan-preview > strong small {
    color: #b6a8da;
    font: 400 12px Inter,sans-serif;
}
.admin-plan-preview p {
    color: #b4afd0;
    font-size: 12px;
    line-height: 1.7;
    margin: 18px 0 25px;
}
.plan-status {
    border-radius: 999px;
    display: inline-block;
    font-size: 11px;
    padding: 7px 10px;
}
.plan-status.is-enabled {
    background: #38d49b1c;
    color: #65e6ba;
}
.plan-status.is-disabled {
    background: #ff9a9a1c;
    color: #ffaaa8;
}
.premium-members-card {
    margin-top: 32px;
}

/* Keep the plan editor and member access sections visually separated. */
body.admin-body .admin-plan-layout + .premium-members-card {
    margin-top: 32px;
}

/* The editor is a grid wrapper, so reserve the separation on the wrapper
   itself as well; this prevents margin-collapsing from removing the gap. */
body.admin-body .admin-plan-layout {
    margin-bottom: 0 !important;
}

body.admin-body .admin-plan-section-gap {
    display: block;
    height: 32px;
    width: 100%;
}

body.admin-body .admin-plan-section-gap + .premium-members-card {
    margin-top: 0 !important;
}

body.admin-body .admin-plan-editor {
    padding-bottom: 30px;
}

/* Mobile off-canvas navigation */
.sidebar-toggle,
.sidebar-backdrop {
    display: none;
}

@media (max-width: 800px) {
    body.admin-body,
    body.panel-body {
        overflow-x: hidden;
    }

    .sidebar-toggle {
        align-items: center;
        background: linear-gradient(135deg, #a99cff, #7565e8);
        border: 1px solid #c0b7ff;
        border-radius: 10px;
        box-shadow: 0 8px 24px #0005;
        color: #fff;
        cursor: pointer;
        display: inline-flex;
        font: 700 11px/1 Inter, sans-serif;
        gap: 7px;
        justify-content: center;
        min-height: 40px;
        padding: 0 12px;
        position: fixed;
        right: 14px;
        top: 12px;
        z-index: 131;
    }

    .sidebar-toggle > span:first-child {
        font-size: 17px;
        line-height: 1;
    }

    .admin-sidebar,
    .member-sidebar {
        bottom: 0;
        box-shadow: 18px 0 45px #0008;
        height: 100dvh;
        left: 0;
        max-width: calc(100vw - 28px);
        min-height: 100dvh;
        overflow-y: auto;
        position: fixed;
        top: 0;
        transform: translateX(-105%);
        transition: transform .24s ease;
        width: min(292px, calc(100vw - 28px));
        z-index: 120;
    }

    .admin-sidebar.is-open,
    .member-sidebar.is-open {
        transform: translateX(0);
    }

    .admin-sidebar {
        padding: 26px 16px 20px;
    }

    .admin-sidebar .brand {
        font-size: 22px;
    }

    .admin-sidebar .brand:after {
        content: none;
    }

    .admin-workspace-switch > span:nth-child(2),
    .admin-workspace-switch > b,
    .admin-label,
    .admin-link span,
    .admin-link em,
    .admin-account-mini > span:nth-child(2),
    .admin-account-mini > b,
    .admin-sidebar .admin-logout {
        display: block;
    }

    .admin-workspace-switch {
        justify-content: flex-start;
        margin: 0 3px 27px;
        padding: 11px 12px;
    }

    .admin-link {
        justify-content: flex-start;
        padding: 12px 15px;
    }

    .admin-account-mini {
        justify-content: flex-start;
        padding: 8px 10px;
    }

    .admin-main {
        min-width: 100%;
        padding: 66px 16px 50px;
    }

    .member-sidebar {
        flex-basis: auto;
        padding: 22px 16px 16px;
    }

    .member-brand {
        justify-content: center;
        padding: 0 8px 26px;
    }

    .member-brand img {
        height: auto;
        max-width: 218px;
        object-fit: contain;
        width: 100%;
    }

    .member-brand > span:last-child,
    .member-nav-label,
    .member-nav-link span,
    .member-sidebar-promo,
    .member-sidebar-account > span:nth-child(2),
    .member-sidebar-account form,
    .member-sidebar-profile-link,
    .member-sidebar-signout {
        display: block;
    }

    .member-nav-link {
        justify-content: flex-start;
        padding: 12px 14px;
    }

    .member-nav-link b {
        width: 20px;
    }

    .member-sidebar-account {
        justify-content: flex-start;
    }

    .member-main {
        min-width: 100%;
        width: 100%;
    }

    .member-topbar {
        padding: 66px 16px 12px;
    }

    .sidebar-backdrop:not([hidden]) {
        background: rgba(1, 6, 18, .72);
        display: block;
        inset: 0;
        position: fixed;
        z-index: 110;
    }
}
.premium-offer-card {
    align-items: center;
    background: linear-gradient(145deg, #171144, #091a34);
    border: 1px solid #5944b7;
    border-radius: 20px;
    display: flex;
    gap: 30px;
    justify-content: space-between;
    padding: clamp(24px, 5vw, 52px);
}
.premium-offer-card h2 {
    color: #fff;
    font: 600 clamp(25px, 4vw, 38px) Manrope,sans-serif;
    margin: 8px 0;
}
.premium-offer-card p {
    color: #b7b2d5;
    font-size: 13px;
    max-width: 560px;
}
.premium-offer-card ul {
    color: #d7d4e9;
    display: grid;
    font-size: 12px;
    gap: 9px;
    list-style: none;
    margin: 22px 0 0;
    padding: 0;
}
.premium-offer-card li::before {
    color: #74e1b6;
    content: '✓';
    margin-right: 8px;
}
.premium-offer-action {
    align-items: center;
    display: flex;
    flex-direction: column;
    min-width: 190px;
}
.premium-offer-action > strong {
    color: #f5d68b;
    font: 700 42px Manrope,sans-serif;
}
.premium-offer-action > small {
    color: #b7afd8;
    font-size: 12px;
    margin-bottom: 18px;
}
.premium-active-label {
    color: #70e4b8;
    font-size: 11px;
    text-align: center;
}
.premium-unavailable {
    background: #0b1a31;
    border: 1px solid #1b3151;
    border-radius: 18px;
    padding: 50px;
    text-align: center;
}
.premium-unavailable > span {
    color: #a997ff;
    font-size: 36px;
}
.premium-unavailable h2 {
    color: #f3f5fb;
    font: 600 24px Manrope,sans-serif;
}
.premium-unavailable p {
    color: #8292ac;
    font-size: 13px;
}
@media (max-width: 980px) {
    .admin-plan-layout {
        grid-template-columns: 1fr;
    }

    body.admin-body .admin-plan-layout + .premium-members-card {
        margin-top: 24px;
    }

    body.admin-body .admin-plan-layout {
        margin-bottom: 0 !important;
    }

    body.admin-body .admin-plan-section-gap {
        height: 24px;
    }
    .admin-filter-toolbar {
        flex-direction: column;
    }
    .admin-toolbar-actions {
        width: 100%;
    }
}
@media (max-width: 620px) {
    .premium-offer-card {
        align-items: flex-start;
        flex-direction: column;
    }
    .premium-offer-action {
        align-items: flex-start;
    }
    .admin-toolbar-actions {
        flex-wrap: wrap;
    }
}
.admin-eyebrow {
    font-size:13px;
    color:var(--muted);
    margin-bottom:24px
}
.admin-stat-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px
}
.admin-stat-card {
    display:grid;
    align-content:center;
    min-height:142px;
    padding:22px;
    border:1px solid #20395e;
    border-radius:16px;
    background:linear-gradient(145deg,rgba(14,31,58,.94),rgba(8,17,36,.98))
}
.admin-stat-card small {
    color:#8f9bb2;
    font-size:11px;
    letter-spacing:.02em
}
.admin-stat-card strong {
    display:block;
    margin-top:10px;
    color:#f4f2fb;
    font:700 28px/1.1 'Manrope',sans-serif
}
.admin-stat-card span {
    display:block;
    margin-top:8px;
    color:#7788a6;
    font-size:11px
}
.admin-stat {
    min-height:154px;
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:14px;
    padding:20px
}
.admin-stat small {
    display:block;
    color:#9794a2;
    font-size:12px;
    margin:21px 0 8px
}
.admin-stat strong {
    font:600 29px 'Manrope';
    display:block
}
.live-text {
    color:#8bdbb1!important;
    font-size:24px!important
}
.admin-table-card {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:14px;
    margin-top:18px;
    padding:25px;
    overflow:auto
}
.table-heading {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:23px
}
.table-heading h2 {
    font:600 19px 'Manrope';
    margin:0 0 5px
}
.table-heading p {
    color:var(--muted);
    font-size:12px;
    margin:0
}
.admin-table-card table {
    border-collapse:collapse;
    width:100%;
    font-size:12px;
    min-width:620px
}
.admin-table-card th {
    text-align:left;
    color:#777585;
    font-size:10px;
    letter-spacing:1px;
    text-transform:uppercase;
    font-weight:500;
    padding:0 13px 13px
}
.admin-table-card td {
    border-top:1px solid var(--line);
    padding:14px 13px;
    color:#9d9aa8;
    vertical-align:middle
}
.admin-table-card td:first-child {
    color:#e5e2eb;
    min-width:190px
}
.admin-table-card td strong {
    margin-left:10px;
    font-weight:500
}
.admin-table-card td small {
    display:block;
    margin:4px 0 0 43px;
    color:#777583
}
.table-avatar {
    vertical-align:middle;
    width:29px;
    height:29px;
    border-radius:9px;
    font-size:11px;
    background:#ffc1a2
}
.role-badge {
    border-radius:5px;
    background:#7667e426;
    color:#b5abff;
    padding:5px 8px;
    font-size:10px
}
.full-table {
    margin-top:0
}
@media(max-width:800px) {
    .admin-sidebar {
        width:66px;
        padding:25px 9px
    }
    .admin-sidebar .brand {
        font-size:0;
        margin:0 9px 55px
    }
    .admin-sidebar .brand span {
        font-size:0
    }
    .admin-sidebar .brand i {
        font-size:0
    }
    .admin-label,.admin-link:not(.active):not(.admin-logout) {
        font-size:0;
        padding-left:15px
    }
    .admin-link {
        padding:12px
    }
    .admin-link b {
        font-size:19px
    }
    .admin-link.active {
        font-size:0
    }
    .admin-logout {
        font-size:0
    }
    .admin-main {
        width:calc(100% - 66px);
        padding:27px 18px
    }
    .admin-header {
        align-items:start
    }
    .admin-user span:last-child {
        display:none
    }
    .admin-stat-grid {
        grid-template-columns:1fr
    }
    .profile-layout,.settings-grid {
        grid-template-columns:1fr
    }
    .profile-summary {
        padding:24px
    }
}
.admin-create-card {
    background:linear-gradient(105deg,#26233c,#1c1b2b);
    border:1px solid #8275ed55;
    border-radius:14px;
    padding:21px 25px;
    margin-bottom:18px
}
.admin-create-card h2 {
    font:600 18px 'Manrope';
    margin:0 0 4px
}
.admin-create-card p {
    color:var(--muted);
    font-size:12px;
    margin:0
}
.admin-create-form {
    display:grid;
    grid-template-columns:1.1fr 1.3fr 1.1fr .8fr auto;
    gap:9px;
    margin-top:19px
}
.admin-create-form input,.admin-create-form select,.row-actions input,.row-actions select {
    padding:10px 11px;
    font-size:11px
}
.admin-create-form select,.row-actions select {
    border-radius:8px;
    border:1px solid #363542;
    background:#14141c;
    color:#aaa7b7
}
.row-actions summary {
    cursor:pointer;
    color:#b7adff;
    font-size:11px
}
.row-actions form {
    display:flex;
    gap:5px;
    margin-top:8px
}
.row-actions input,.row-actions select {
    width:130px
}
.row-actions .text-link,.danger-link {
    background:none;
    border:0;
    cursor:pointer;
    font:11px 'Inter';
    padding:4px
}
.danger-link {
    color:#ef9a9a
}
@media(max-width:1000px) {
    .admin-create-form {
        grid-template-columns:1fr 1fr
    }
    .admin-create-form .button {
        grid-column:span 2
    }
}
@media(max-width:800px) {
    .admin-create-form {
        grid-template-columns:1fr
    }
    .admin-create-form .button {
        grid-column:auto
    }
}
.inbox-card,.notification-card {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    overflow:hidden
}
.inbox-item {
    display:flex;
    align-items:center;
    gap:14px;
    padding:18px 23px;
    border-bottom:1px solid var(--line);
    position:relative
}
.inbox-item.is-unread {
    background: linear-gradient(90deg, rgba(122, 100, 239, .18), rgba(122, 100, 239, .04));
    border-left: 3px solid #9b8cff;
    padding-left: 20px;
}
.inbox-item-copy { min-width: 0; flex: 1; }
.inbox-item-copy p.is-unread { color: #d9d8ff; font-weight: 600; }
.inbox-item-meta { align-items: flex-end; display: flex; flex-direction: column; gap: 7px; margin-left: auto; }
.inbox-unread-badge, .inbox-unread-summary { align-items: center; background: rgba(117, 101, 232, .18); border: 1px solid rgba(157, 140, 255, .5); border-radius: 999px; color: #c9c1ff; display: inline-flex; font-size: 10px; font-weight: 700; gap: 5px; padding: 4px 8px; white-space: nowrap; }
.inbox-unread-badge i { background: #9b8cff; border-radius: 50%; height: 5px; width: 5px; }
.inbox-unread-summary { margin-top: 12px; }
.conversation-avatar {
    width:42px;
    height:42px;
    border-radius:13px;
    display:grid;
    place-items:center;
    color:#2b2539;
    font-weight:700
}
.inbox-item strong {
    font-size:13px
}
.inbox-item p {
    font-size:12px;
    color:var(--muted);
    margin:5px 0 0
}
.inbox-item time,.notification-item time {
    color:#777584;
    font-size:10px;
    align-self:flex-start;
    padding-top:4px
}
.notification-item time { margin-left:auto; }
@media (max-width: 560px) {
    .inbox-item { align-items: flex-start; padding: 15px 14px; }
    .inbox-item.is-unread { padding-left: 11px; }
    .inbox-item-meta { gap: 6px; }
    .inbox-unread-badge { font-size: 9px; padding: 3px 6px; }
}
.unread-dot {
    width:6px;
    height:6px;
    background:var(--violet);
    border-radius:50%
}
.empty-message {
    text-align:center;
    padding:72px 20px
}
.empty-message>span {
    display:grid;
    place-items:center;
    width:52px;
    height:52px;
    margin:auto;
    border-radius:17px;
    background:#7667e426;
    color:#aaa0ff;
    font-size:24px
}
.empty-message h2 {
    font:600 21px 'Manrope';
    margin:19px 0 7px
}
.empty-message p {
    font-size:12px;
    color:var(--muted);
    margin-bottom:19px
}
.connection-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:17px
}
.connection-card {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    padding:25px
}
.connection-avatar {
    width:67px;
    height:67px;
    border-radius:21px;
    display:grid;
    place-items:center;
    color:#2b2539;
    font:700 25px 'Manrope'
}
.connection-card h2 {
    font:600 20px 'Manrope';
    margin:19px 0 6px
}
.online-label {
    font-size:11px;
    color:#85d9ad
}
.online-label i {
    display:inline-block;
    width:6px;
    height:6px;
    background:#80d8aa;
    border-radius:50%;
    margin-right:4px
}
.online-label.is-online { color:#70e0ae; }
.online-label.is-offline { color:#93a0b8; }
.online-label.is-offline i { background:#71809a; box-shadow:none; }
.presence-last-seen { color:#93a0b8; font-size:11px; }
.connection-card p {
    color:var(--muted);
    font-size:12px;
    line-height:1.6;
    min-height:58px
}
.tag-row {
    display:flex;
    gap:5px;
    margin:18px 0 22px
}
.tag-row span {
    border:1px solid var(--line);
    border-radius:5px;
    padding:5px 8px;
    color:#aaa6b6;
    font-size:10px
}
.connection-dashed {
    border-style:dashed;
    text-align:center;
    display:flex;
    align-items:center;
    flex-direction:column;
    justify-content:center
}
.connection-dashed>span {
    font-size:31px;
    color:var(--violet)
}
.connection-dashed h2 {
    font-size:17px
}
.notification-item {
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:21px 25px;
    border-bottom:1px solid var(--line)
}
.notification-item:last-child {
    border:0
}
.notification-icon {
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:12px;
    font-size:18px
}
.notification-icon.violet {
    background:#7667e426;
    color:#aaa0ff
}
.notification-icon.blue {
    background:#6689df2a;
    color:#9bb4ff
}
.notification-icon.peach {
    background:#d4817727;
    color:#ffae96
}
.notification-item strong {
    font-size:13px
}
.notification-item p {
    font-size:12px;
    color:var(--muted);
    margin:5px 0 0
}
.role-grid,.report-grid,.admin-settings-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:17px
}
.admin-role-create {
    display:grid;
    grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);
    gap:24px;
    align-items:end;
    margin-bottom:18px
}
.admin-role-create h2,.role-permission-heading h2 {
    font:600 20px 'Manrope';
    margin:7px 0
}
.admin-role-create p,.role-permission-heading p {
    color:var(--muted);
    font-size:12px;
    margin:0
}
.admin-role-create-form {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr)) auto;
    gap:10px;
    align-items:end
}
.admin-role-create-form .field label {
    display:block;
    margin-bottom:7px
}
.role-permission-card {
    margin-bottom:18px
}
.role-permission-heading {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:20px
}
.role-permission-heading>div:first-child {
    display:flex;
    align-items:flex-start;
    gap:13px
}
.permission-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px
}
.permission-option {
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:13px;
    border:1px solid var(--line);
    border-radius:10px;
    cursor:pointer
}
.permission-option:has(input:checked) {
    border-color:#8275ed88;
    background:#7667e40b
}
.permission-option input {
    margin-top:3px
}
.permission-option strong,.permission-option small {
    display:block
}
.permission-option strong {
    font-size:12px
}
.permission-option small {
    color:var(--muted);
    font-size:10px;
    margin-top:4px
}
@media(max-width:900px) {
    .admin-role-create {
        grid-template-columns:1fr
    }
    .admin-role-create-form {
        grid-template-columns:1fr 1fr
    }
    .admin-role-create-form .field:nth-child(3),.admin-role-create-form .button {
        grid-column:span 2
    }
    .permission-grid {
        grid-template-columns:1fr
    }
}
.role-card,.report-card {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    padding:25px;
    position:relative
}
.role-symbol {
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:13px;
    background:#7667e426;
    font-size:20px
}
.role-symbol.blue {
    background:#6689df26;
    color:#9bb4ff
}
.role-card h2 {
    font:600 19px 'Manrope';
    margin:19px 0 7px
}
.role-card p,.report-card p {
    color:var(--muted);
    font-size:12px;
    line-height:1.6
}
.permission-list {
    display:grid;
    gap:8px;
    border-top:1px solid var(--line);
    padding-top:16px;
    margin-top:19px;
    color:#9ae0bd;
    font-size:11px
}
.role-count {
    display:block;
    color:#777584;
    font-size:10px;
    margin-top:22px
}
.role-add {
    border-style:dashed;
    text-align:center;
    display:flex;
    align-items:center;
    flex-direction:column;
    justify-content:center
}
.role-add>span {
    font-size:29px;
    color:var(--violet)
}
.report-grid {
    grid-template-columns:repeat(2,1fr)
}
.report-wide {
    grid-column:span 2
}
.report-card small {
    display:block;
    color:#9996a5;
    font-size:11px;
    margin-top:19px
}
.report-value {
    font:600 25px 'Manrope';
    color:#8fdfb3
}
.fake-chart {
    height:150px;
    display:flex;
    align-items:end;
    gap:10px;
    border-bottom:1px solid var(--line);
    padding:15px 5px 0
}
.fake-chart i {
    display:block;
    flex:1;
    border-radius:5px 5px 0 0;
    background:linear-gradient(#9c90ff,#5f53c6)
}
.chart-labels {
    display:flex;
    justify-content:space-between;
    color:#777584;
    font-size:10px;
    margin-top:10px
}
.health-score {
    display:block;
    font:600 27px 'Manrope';
    color:#8fdfb3;
    margin-top:8px
}
.admin-settings-grid {
    grid-template-columns:1fr 1fr
}
.admin-settings-grid .admin-table-card {
    margin:0
}
.admin-select {
    width:100%;
    padding:13px 15px;
    border-radius:8px;
    border:1px solid #363542;
    background:#14141c;
    color:#ddd;
    font:14px 'Inter'
}
.admin-options {
    padding:10px 25px
}
@media(max-width:900px) {
    .connection-grid,.role-grid,.admin-settings-grid {
        grid-template-columns:1fr
    }
    .report-grid {
        grid-template-columns:1fr
    }
    .report-wide {
        grid-column:auto
    }
}
.activity-mark {
    display:inline-grid;
    place-items:center;
    width:27px;
    height:27px;
    border-radius:8px;
    background:#7667e426;
    color:#aaa0ff;
    margin-right:9px
}
.empty-table {
    text-align:center;
    color:var(--muted);
    padding:30px
}
.request-banner {
    display:flex;
    align-items:center;
    gap:13px;
    background:#7667e41c;
    border:1px solid #8f83ff4a;
    border-radius:12px;
    padding:15px 19px;
    margin-bottom:18px
}
.request-banner>span {
    color:var(--violet);
    font-size:21px
}
.request-banner strong {
    font-size:12px
}
.request-banner p {
    color:var(--muted);
    font-size:11px;
    margin:4px 0 0
}
.request-list {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:12px;
    margin:-2px 0 18px;
    overflow:hidden
}
.request-row {
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 17px;
    border-bottom:1px solid var(--line)
}
.request-row:last-child {
    border:0
}
.request-row>div {
    flex:1
}
.request-row strong {
    font-size:12px
}
.request-row p {
    color:var(--muted);
    font-size:11px;
    margin:3px 0 0
}
.request-row form {
    margin-left:8px
}
.message-layout {
    display:grid;
    grid-template-columns:1.25fr .75fr;
    gap:18px
}
.compose-card {
    padding:25px;
    height:max-content
}
.compose-card textarea {
    width:100%;
    padding:14px 15px;
    resize:vertical;
    border-radius:8px;
    border:1px solid #363542;
    background:#14141c;
    color:white;
    outline:none;
    font:14px 'Inter'
}
.compose-card textarea:focus {
    border-color:var(--violet);
    box-shadow:0 0 0 3px #9b8cff1c
}
@media(max-width:800px) {
    .message-layout {
        grid-template-columns:1fr
    }
}
.notification-unread {
    background:#7667e40b
}
.read-button {
    background:none;
    border:0;
    color:#aaa0ff;
    cursor:pointer;
    font:11px 'Inter';
    white-space:nowrap
}
.filter-bar {
    display:flex;
    gap:9px;
    margin-bottom:18px
}
.filter-bar input {
    max-width:300px
}
.filter-bar select {
    min-width:145px;
    padding:10px 11px;
    border-radius:8px;
    border:1px solid #363542;
    background:#14141c;
    color:#aaa7b7;
    font:11px 'Inter'
}
@media(max-width:700px) {
    .filter-bar {
        flex-wrap:wrap
    }
    .filter-bar input {
        max-width:none;
        width:100%
    }
}
.section-heading {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:29px 0 14px
}
.section-heading h2 {
    font:600 20px 'Manrope';
    margin:8px 0 0
}
.discover-heading {
    margin-top:38px
}
.circle-row {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px
}
.circle-person {
    display:flex;
    align-items:center;
    gap:10px;
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:12px;
    padding:13px
}
.circle-person .connection-avatar {
    width:39px;
    height:39px;
    border-radius:12px;
    font-size:16px
}
.circle-person>div {
    flex:1
}
.circle-person strong,.circle-person span {
    display:block
}
.circle-person strong {
    font-size:12px
}
.circle-person span {
    font-size:10px;
    color:#8bd9ae;
    margin-top:4px
}
.circle-person span i {
    display:inline-block;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#7dd8a6;
    margin-right:3px
}
.circle-person .text-link {
    font-size:10px
}
@media(max-width:800px) {
    .circle-row {
        grid-template-columns:1fr
    }
}
.call-shell {
    padding:48px 0 70px
}
.call-header {
    display:flex;
    align-items:end;
    justify-content:space-between;
    margin-bottom:25px
}
.call-header h1 {
    font:600 39px 'Manrope';
    letter-spacing:-2px;
    margin:15px 0 7px
}
.call-header p {
    color:var(--muted);
    font-size:13px;
    margin:0
}
.call-status {
    border:1px solid #8f83ff55;
    border-radius:20px;
    color:#aaa0ff;
    padding:8px 13px;
    font-size:11px
}
.video-stage {
    height:530px;
    background:#08080d;
    border:1px solid var(--line);
    border-radius:18px;
    overflow:hidden;
    position:relative
}
.remote-video {
    height:100%;
    display:grid;
    place-items:center
}
.video-placeholder {
    color:#777584;
    font-size:13px
}
.local-video {
    position:absolute;
    right:20px;
    bottom:20px;
    width:210px;
    height:140px;
    background:#1d1c27;
    border:2px solid #a69aff;
    border-radius:12px;
    overflow:hidden
}
.local-video video,.remote-video video {
    width:100%;
    height:100%;
    object-fit:cover
}
.call-controls {
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:20px
}
.call-control {
    border:1px solid var(--line);
    border-radius:10px;
    background:#242330;
    color:#e9e6ef;
    padding:12px 16px;
    cursor:pointer;
    font:12px 'Inter'
}
.call-control span {
    margin-left:5px
}
.call-danger {
    background:#8c414c;
    border-color:#c75d6a
}
.call-note {
    text-align:center;
    color:#777584;
    font-size:11px
}
.call-note code {
    color:#aaa0ff
}
.call-head-button {
    align-items: center;
    background: #0b1730;
    border: 1px solid #29466e;
    border-radius: 10px;
    color: #bcb4ff;
    display: inline-flex;
    gap: 6px;
    min-height: 38px;
    padding: 0 11px;
    text-decoration: none;
}
.call-head-button:hover {
    background: #172746;
    border-color: #8b7cff;
    color: #fff;
}
.call-invite-panel {
    align-items: center;
    background: linear-gradient(145deg, #0b1b38, #08152d);
    border: 1px solid #1e3961;
    border-radius: 14px;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-top: 18px;
    padding: 17px 20px;
}
.call-invite-panel > div { min-width: 0; }
.call-invite-panel p { color: #91a2bf; font-size: 12px; margin: 5px 0 8px; }
.call-invite-panel code { color: #bcb4ff; display: block; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.call-invite-panel .button:disabled { cursor: wait; opacity: .55; }
.audio-call-stage .local-video { align-items: center; display: flex; justify-content: center; }
.audio-call-stage .local-video::before { color: #a99cff; content: '🎙'; font-size: 30px; position: absolute; z-index: 1; }
.audio-call-stage .local-video video { opacity: 0; }
.group-call-stage .remote-video {
    align-content: center;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    padding: 14px;
}
.group-call-stage .remote-video video {
    background: #111a2c;
    border: 1px solid #29466e;
    border-radius: 12px;
    min-height: 170px;
}
.group-call-stage.audio-call-stage .remote-video video {
    height: 1px;
    min-height: 1px;
    opacity: 0;
    position: absolute;
    width: 1px;
}
@media(max-width:700px) {
    .call-header {
        display:block
    }
    .call-status {
        display:inline-block;
        margin-top:18px
    }
    .video-stage {
        height:390px
    }
    .local-video {
        width:130px;
        height:90px;
        right:12px;
        bottom:12px
    }
    .call-control {
        padding:11px
    }
    .call-control span {
        display:none
    }
    .call-invite-panel { align-items: stretch; flex-direction: column; }
    .call-invite-panel .button { width: 100%; }
    .call-head-button span { display: none; }
}
.brand,.hero h1,.auth-panel h1,.form-heading h2,.dashboard h1,.welcome-card h2,.admin-header h1,.connection-card h2,.role-card h2,.report-card h2,.section-heading h2 {
    font-family:'Manrope',sans-serif!important
}
.button,.button-wide,.nav-links,.admin-link,.field input,.field textarea,.field select,button,input,textarea,select {
    font-family:'Inter',sans-serif!important
}
.admin-settings-stack {
    display:grid;
    gap:18px;
    max-width:1800px
}
.admin-settings-stack .admin-table-card {
    margin:0
}
.admin-form-actions {
    display:flex;
    justify-content:flex-end;
    gap:12px;
    margin-top:2px
}
.security-source-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:14px 16px;
    border:1px solid var(--line);
    border-radius:12px;
    background:rgba(15,24,47,.55)
}
.security-source-row code {
    min-width:0;
    overflow:hidden;
    color:#b8adff;
    font:12px/1.5 'Inter',sans-serif;
    text-overflow:ellipsis;
    white-space:nowrap
}
.disposable-manager-toolbar {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px, .8fr);
    gap:12px;
    margin-bottom:22px
}
.disposable-domain-search,
.disposable-domain-add {
    display:flex;
    align-items:center;
    gap:10px;
    margin:0
}
.disposable-domain-search input,
.disposable-domain-add input {
    min-width:0;
    flex:1
}
.disposable-domain-manager.is-loading {
    opacity:.68;
    pointer-events:none
}
.disposable-domain-pagination {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:18px;
    color:var(--muted);
    font-size:11px
}
.disposable-domain-pagination > div {
    display:flex;
    gap:8px
}
.disposable-domain-pagination button:disabled {
    cursor:not-allowed;
    opacity:.45
}
.domain-status {
    display:inline-flex;
    border-radius:999px;
    padding:5px 9px;
    font-size:10px;
    font-weight:700
}
.domain-status.is-active {
    color:#9ae0bd;
    background:#77d6a914
}
.domain-status.is-disabled {
    color:#aaa7b6;
    background:#aaa7b614
}
@media(max-width:760px) {
    .disposable-manager-toolbar {
        grid-template-columns:1fr
    }
    .disposable-domain-pagination {
        align-items:flex-start;
        flex-direction:column
    }
}
@media(max-width:600px) {
    .security-source-row {
        align-items:flex-start;
        flex-direction:column
    }
}
.settings-kicker {
    display:block;
    color:#9d92ff;
    font-size:10px;
    font-weight:700;
    letter-spacing:1.5px;
    margin-bottom:8px
}
.settings-form-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 18px
}
.settings-form-grid-wide {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.settings-form-grid .field:last-child {
    grid-column:1/-1
}
.settings-form-grid .field-full {
    grid-column:1/-1
}
.admin-form-section {
    border-top:1px solid rgba(137,157,204,.2);
    margin-top:28px;
    padding-top:26px
}
.admin-form-section .form-heading {
    margin-bottom:18px
}
.admin-form-section .form-heading h3 {
    margin:0 0 8px
}
.admin-form-section .form-heading p {
    margin:0
}
.realtime-settings-page > form > .button {
    margin-top:28px
}
.security-network-grid .field:last-child {
    grid-column:auto
}
.admin-settings-stack .field textarea {
    display:block;
    width:100%;
    min-height:170px;
    padding:13px 15px;
    resize:vertical;
    border:1px solid #363542;
    border-radius:8px;
    background:#14141c;
    color:#f4f2fb;
    outline:none;
    font:14px/1.5 'Inter',sans-serif
}
.admin-settings-stack .field textarea::placeholder {
    color:#777585
}
.admin-settings-stack .field textarea:focus {
    border-color:var(--violet);
    box-shadow:0 0 0 3px #9b8cff1c
}
.field label small {
    color:#777585;
    font-size:10px;
    margin-left:auto
}
.admin-alert {
    border:1px solid;
    border-radius:10px;
    padding:13px 16px;
    font-size:12px;
    margin-bottom:18px
}
.admin-alert-success {
    color:#9ae0bd;
    background:#77d6a914;
    border-color:#77d6a933
}
.admin-alert-error {
    color:#ffb1a5;
    background:#ef806914;
    border-color:#ef806933
}
.admin-alert-warning {
    color:#f3d18a;
    background:#d7a63c14;
    border-color:#d7a63c3d
}
.smtp-test-box {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    border-top:1px solid var(--line);
    margin-top:25px;
    padding-top:22px
}
.smtp-test-box strong {
    font-size:13px
}
.smtp-test-box p {
    color:var(--muted);
    font-size:11px;
    margin:6px 0 0
}
.smtp-test-form {
    display:flex;
    align-items:center;
    gap:9px;
    min-width:390px
}
.smtp-test-form input {
    min-width:0
}
.email-options {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-bottom:22px
}
.email-option {
    display:flex;
    align-items:center;
    gap:12px;
    border:1px solid var(--line);
    border-radius:11px;
    padding:14px;
    cursor:pointer
}
.email-option .setting-icon {
    flex:none
}
.email-option strong,.email-option small {
    display:block
}
.email-option strong {
    font-size:12px
}
.email-option small {
    color:var(--muted);
    font-size:10px;
    line-height:1.4;
    margin-top:4px
}
.email-option input {
    display:none
}
.email-option i {
    margin-left:auto;
    flex:none;
    width:35px;
    height:20px;
    border-radius:20px;
    background:#555363;
    position:relative
}
.email-option i:after {
    content:'';
    position:absolute;
    width:16px;
    height:16px;
    top:2px;
    left:2px;
    background:#aaa8b5;
    border-radius:50%;
    transition:.15s
}
.email-option input:checked+i {
    background:#7667e6
}
.email-option input:checked+i:after {
    left:17px;
    background:#fff
}
@media(max-width:700px) {
    .settings-form-grid,.settings-form-grid-wide,.email-options {
        grid-template-columns:1fr
    }
    .settings-form-grid .field:last-child {
        grid-column:auto
    }
    .smtp-test-box {
        display:block
    }
    .smtp-test-form {
        min-width:0;
        margin-top:16px
    }
    .smtp-test-form .button {
        flex:none
    }
}
.site-footer {
    display:flex;
    align-items:center;
    gap:28px;
    border-top:1px solid var(--line);
    padding:28px 0 34px;
    color:var(--muted);
    font-size:11px
}
.site-footer nav {
    display:flex;
    gap:18px;
    margin-left:auto
}
.site-footer nav a,.table-link {
    color:#b8afff;
    text-decoration:none
}
.site-footer small {
    color:#777585
}
.public-page {
    padding:76px 0 100px;
    max-width:900px
}
.public-page-head {
    text-align:center;
    max-width:650px;
    margin:0 auto 50px
}
.public-page-head h1,.contact-intro h1 {
    font:600 clamp(42px,6vw,68px)/1.02 'Manrope';
    letter-spacing:-3px;
    margin:22px 0 17px
}
.public-page-head p,.contact-intro>p {
    color:var(--muted);
    font-size:15px;
    line-height:1.7
}
.public-page-body {
    background:linear-gradient(145deg,#22212d,#181820);
    border:1px solid var(--line);
    border-radius:18px;
    padding:40px 48px;
    box-shadow:0 30px 70px #0005
}
.public-page-body h2 {
    font:600 25px 'Manrope';
    margin:0 0 12px;
    color:#f3f0f8
}
.public-page-body h2:not(:first-child) {
    margin-top:34px
}
.public-page-body p {
    color:#aaa7b6;
    font-size:14px;
    line-height:1.85;
    margin:0 0 17px
}
.contact-shell {
    min-height:calc(100vh - 92px);
    display:grid;
    grid-template-columns:1fr 500px;
    gap:10%;
    align-items:center;
    padding:45px 0 85px
}
.contact-intro h1 em {
    font-style:normal;
    color:var(--violet)
}
.contact-note {
    display:flex;
    gap:14px;
    align-items:center;
    border-left:1px solid var(--violet);
    padding:4px 0 4px 17px;
    margin-top:38px
}
.contact-note>span {
    color:#ffad91;
    font-size:22px
}
.contact-note strong,.contact-note small,.contact-note-copy {
    display:block
}
.contact-note strong {
    font-size:13px
}
.contact-note small,.contact-note-copy {
    color:var(--muted);
    font-size:11px;
    margin-top:5px
}
.contact-note-copy p {
    margin:0
}
.contact-form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 15px
}
.contact-card textarea {
    width:100%;
    padding:14px 15px;
    border-radius:8px;
    border:1px solid #363542;
    background:#14141c;
    color:white;
    outline:none;
    font:14px/1.6 'Inter';
    resize:vertical
}
.contact-card textarea:focus {
    border-color:var(--violet);
    box-shadow:0 0 0 3px #9b8cff1c
}
.contact-success {
    text-align:center;
    padding:55px 10px
}
.contact-success>span {
    display:grid;
    place-items:center;
    width:54px;
    height:54px;
    border-radius:17px;
    background:#77d6a91c;
    color:#8fe0b8;
    font-size:25px;
    margin:0 auto 20px
}
.contact-success h2 {
    font:600 29px 'Manrope';
    margin:0 0 9px
}
.contact-success p {
    color:var(--muted);
    font-size:13px;
    margin:0 0 22px
}
.content-editor-card {
    max-width:none;
    width:100%
}
.publish-check {
    display:flex;
    align-items:center;
    gap:8px;
    color:#aaa7b6;
    font-size:12px;
    margin:0 0 22px
}
.publish-check input {
    width:15px;
    height:15px;
    accent-color:var(--violet)
}
.ck.ck-editor {
    margin-bottom:24px
}
.ck.ck-toolbar,.ck.ck-editor__main>.ck-editor__editable {
    background:#14141c!important;
    border-color:#3b394c!important;
    color:#f3f0f8!important
}
.ck.ck-editor {
    width: 100%;
}
.ck.ck-toolbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    min-height: 48px;
    padding: 6px 10px !important;
}
.ck.ck-toolbar .ck-toolbar__items {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
}
.ck.ck-toolbar .ck-button {
    position: static;
    transform: none;
    width: auto;
    height: auto;
    border: 0;
    border-radius: 5px;
    font-size: inherit;
}
.ck.ck-button, a.ck.ck-button {
    color: #c9c5d8 !important;
}
.ck.ck-button:hover, a.ck.ck-button:hover, .ck.ck-button.ck-on {
    background: #7667e426 !important;
    color: #fff !important;
}
.ck.ck-editor__main>.ck-editor__editable {
    min-height: 480px;
    padding: 22px 25px !important;
}
.ck.ck-editor__editable_inline {
    border-radius: 0 0 10px 10px !important;
}
.ck.ck-toolbar {
    border-radius: 10px 10px 0 0 !important;
}
.coin-stat-grid {
    margin: 26px 0 22px;
}
.coin-admin-intro {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}
.coin-admin-intro h2 {
    margin-bottom: 7px;
}
.coin-admin-mark {
    align-items: center;
    background: linear-gradient(135deg,#8f7cff,#5147d4);
    border-radius: 18px;
    color: white;
    display: grid;
    font: 700 28px Manrope,sans-serif;
    height: 66px;
    place-items: center;
    width: 66px;
}
.coin-adjust-form {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: 105px 100px minmax(140px, 1fr) auto;
}
.coin-adjust-form input, .coin-adjust-form select {
    min-width: 0;
}
.wallet-credit-text {
    color: #4ee5ad !important;
}
.wallet-debit-text {
    color: #ff8494 !important;
}
.coin-reference {
    color: #8f9bb0;
    font-size: 11px;
}
.ledger-hero {
    align-items: end;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin: 12px 0 24px;
}
.ledger-hero h2 {
    color: #f5f6fb;
    font: 600 28px Manrope, sans-serif;
    margin: 0 0 6px;
}
.ledger-hero p {
    color: #8292ac;
    font-size: 13px;
    margin: 0;
    max-width: 650px;
}
.ledger-filter-card {
    background: #08152a;
    border: 1px solid #1b3151;
    border-radius: 15px;
    margin-bottom: 18px;
    padding: 17px 20px;
}
.ledger-filter-card .filter-bar {
    margin: 0;
}
.ledger-table-card {
    margin-top: 0;
}
@media (max-width: 650px) {
    .ledger-hero {
        align-items: flex-start;
        flex-direction: column;
    }
    .ledger-filter-card .filter-bar {
        align-items: stretch;
        flex-direction: column;
    }
}
body.admin-body .admin-table-card.full-table {
    overflow: hidden;
}
body.admin-body .admin-table-card.full-table table {
    min-width: 780px;
}
body.admin-body .admin-actions a, body.admin-body .admin-actions button {
    border: 1px solid #29466e;
    border-radius: 7px;
    padding: 7px 10px;
}
body.admin-body .admin-actions a:hover, body.admin-body .admin-actions button:hover {
    background: #7667e41a;
    border-color: #8d7cff;
}
body.admin-body .admin-actions .danger-link {
    border-color: #7b3549;
}
@media (max-width: 850px) {
    .coin-adjust-form {
        grid-template-columns: 1fr 1fr;
    }
    .coin-adjust-form input[name="description"] {
        grid-column: 1 / -1;
    }
}
.ck.ck-toolbar .ck-button {
    color:#bbb7c8!important
}
.ck.ck-toolbar .ck-button.ck-on,.ck.ck-toolbar .ck-button:hover {
    background:#7667e633!important;
    color:#fff!important
}
.ck.ck-editor__editable {
    min-height:330px
}
.ck.ck-editor__editable h2,.ck.ck-editor__editable p {
    color:inherit
}
.message-cell {
    max-width:260px;
    white-space:normal;
    line-height:1.5
}
.unread-row td {
    color:#e5e2eb!important
}
.action-row {
    display:flex;
    gap:7px;
    align-items:center
}
.button-danger {
    border-color:#ff9a8b;
    background:linear-gradient(135deg,#e8897d,#b85e57);
    box-shadow:none
}
@media(max-width:850px) {
    .contact-shell {
        display:block;
        padding-top:65px
    }
    .contact-intro {
        margin-bottom:35px
    }
    .public-page-body {
        padding:28px 24px
    }
    .site-footer {
        display:block
    }
    .site-footer nav {
        margin:18px 0
    }
    .contact-form-grid {
        grid-template-columns:1fr
    }
}
.error-shell {
    min-height:calc(100vh - 220px);
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    padding:65px 0 90px;
    position:relative;
    overflow:hidden
}
.error-shell:after {
    content:'400';
    position:absolute;
    right:4%;
    top:16%;
    font:800 clamp(170px,28vw,370px)/1 'Manrope';
    letter-spacing:-18px;
    color:#9b8cff08;
    z-index:-1
}
.error-shell-server:after {
    content:'500';
    color:#ff9c7c08
}
.error-code {
    font:700 12px 'Inter';
    letter-spacing:3px;
    color:#a69aff;
    border:1px solid #9b8cff55;
    border-radius:999px;
    padding:8px 13px;
    margin-bottom:25px
}
.error-shell h1 {
    font:600 clamp(48px,7vw,82px)/.98 'Manrope';
    letter-spacing:-4px;
    margin:18px 0
}
.error-shell h1 em {
    font-style:normal;
    color:var(--violet)
}
.error-shell p {
    max-width:430px;
    color:var(--muted);
    font-size:15px;
    line-height:1.7
}
.error-actions {
    display:flex;
    align-items:center;
    gap:25px;
    margin-top:22px
}
.error-shell-server .error-code {
    color:#ffad95;
    border-color:#ff9c7c55
}
@media(max-width:800px) {
    .error-shell {
        min-height:calc(100vh - 180px)
    }
    .error-shell:after {
        right:-10%;
        top:25%;
        font-size:210px
    }
    .error-shell h1 {
        font-size:55px
    }
    .error-actions {
        align-items:flex-start;
        flex-direction:column;
        gap:18px
    }
}
.password-wrap {
    position:relative
}
.password-wrap input {
    padding-right:48px
}
.password-toggle {
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    width:32px;
    height:32px;
    border:0;
    border-radius:7px;
    background:transparent;
    color:#858296;
    cursor:pointer;
    font-size:15px
}
.password-toggle:hover,.password-toggle.is-visible {
    background:#7667e426;
    color:#b7adff
}
.password-wrap .password-toggle {
    font-family:Inter,sans-serif!important
}
.admin-form-card {
    max-width:760px;
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    padding:30px
}
.admin-form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2px 18px
}
.form-actions {
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:24px;
    border-top:1px solid var(--line);
    padding-top:23px;
    margin-top:10px
}
.ban-badge {
    border-radius:5px;
    background:#d4817726;
    color:#ffad9b;
    padding:5px 8px;
    font-size:10px
}
.admin-actions {
    display:flex;
    align-items:center;
    gap:8px
}
.admin-actions form {
    display:inline
}
.admin-actions button,.admin-actions a {
    font:11px Inter,sans-serif;
    background:none;
    border:0;
    cursor:pointer;
    color:#aaa0ff;
    text-decoration:none
}
.admin-actions .danger-link {
    color:#ef9a9a
}
@media(max-width:700px) {
    .admin-form-grid {
        grid-template-columns:1fr
    }
}
.table-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px
}
.table-toolbar .filter-bar {
    margin:0
}
.table-toolbar .filter-bar input {
    min-width:260px
}
.motion-reveal {
    opacity:0;
    transform:translateY(22px) scale(.985);
    transition:opacity .7s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms),transform .7s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms)
}
.motion-visible {
    opacity:1;
    transform:translateY(0) scale(1)
}
.hero-copy {
    animation:motion-slide-in .9s cubic-bezier(.22,1,.36,1) both
}
.hero-art {
    animation:motion-float-in 1.1s cubic-bezier(.22,1,.36,1) .12s both
}
.hero-art .profile-card {
    animation:card-float 5s ease-in-out infinite
}
.hero-art .card-top {
    animation-delay:.2s
}
.hero-art .card-bottom {
    animation-delay:.7s
}
.hero-art .glow-ball {
    animation:glow-pulse 4s ease-in-out infinite
}
.orbit {
    animation:orbit-spin 18s linear infinite
}
.orbit-b {
    animation-direction:reverse;
    animation-duration:23s
}
.button {
    transition:transform .2s ease,box-shadow .2s ease,filter .2s ease
}
.button:hover {
    transform:translateY(-3px);
    filter:saturate(1.12);
    box-shadow:0 16px 35px #7667eb55
}
.text-link {
    transition:color .2s ease,letter-spacing .2s ease
}
.text-link:hover {
    color:#fff;
    letter-spacing:.2px
}
.form-card,.stat-card,.welcome-card,.connection-card,.public-page-body,.feature-row>div {
    transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease
}
.form-card:hover,.stat-card:hover,.welcome-card:hover,.connection-card:hover,.public-page-body:hover {
    border-color:#9b8cff45;
    box-shadow:0 24px 60px #00035
}
.feature-row>div:hover {
    transform:translateY(-4px)
}
@keyframes motion-slide-in {
    from {
        opacity:0;
        transform:translateX(-28px)
    }
    to {
        opacity:1;
        transform:translateX(0)
    }
}
@keyframes motion-float-in {
    from {
        opacity:0;
        transform:translateY(25px) scale(.94)
    }
    to {
        opacity:1;
        transform:translateY(0) scale(1)
    }
}
@keyframes card-float {
    0%,100% {
        translate:0 0
    }
    50% {
        translate:0 -8px
    }
}
@keyframes glow-pulse {
    0%,100% {
        opacity:.16;
        scale:1
    }
    50% {
        opacity:.28;
        scale:1.08
    }
}
@keyframes orbit-spin {
    from {
        rotate:0deg
    }
    to {
        rotate:360deg
    }
}
@media(prefers-reduced-motion:reduce) {
    *,*:before,*:after {
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        scroll-behavior:auto!important;
        transition-duration:.01ms!important
    }
    .motion-reveal {
        opacity:1;
        transform:none
    }
}
.public-page-body a {
    color:#b8afff;
    text-decoration:underline;
    text-decoration-color:#9b8cff55;
    text-underline-offset:3px
}
.legal-meta {
    font-size:11px!important;
    color:#7f7c8d!important;
    border-bottom:1px solid var(--line);
    padding-bottom:20px
}
.legal-callout {
    border:1px solid #9b8cff35;
    background:#9b8cff0c;
    border-radius:12px;
    padding:17px 19px;
    color:#c6c1d5!important;
    font-size:13px!important
}
.about-highlight {
    display:grid;
    gap:8px;
    border-left:2px solid var(--violet);
    background:#9b8cff0b;
    border-radius:0 12px 12px 0;
    padding:21px 22px;
    margin-bottom:34px
}
.about-highlight strong {
    font:600 22px 'Manrope';
    color:#f3f0f8
}
.about-highlight span {
    color:#aaa7b6;
    font-size:13px;
    line-height:1.6
}
.value-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin:22px 0 34px
}
.value-grid>div {
    border:1px solid var(--line);
    border-radius:12px;
    padding:17px;
    background:#ffffff03
}
.value-grid strong {
    font-size:13px
}
.value-grid p {
    font-size:11px!important;
    margin:8px 0 0!important
}
.public-page-body ul {
    color:#aaa7b6;
    font-size:14px;
    line-height:1.85;
    padding-left:20px
}
@media(max-width:700px) {
    .value-grid {
        grid-template-columns:1fr
    }
}
.key-row,.settings-link-card {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}
.key-row code {
    color:#aaa7b6;
    background:#14141c;
    border:1px solid var(--line);
    border-radius:8px;
    padding:12px 15px;
    font:12px 'Inter';
    overflow:hidden;
    text-overflow:ellipsis
}
.settings-link-card h2 {
    font:600 19px 'Manrope';
    margin:0 0 7px
}
.settings-link-card p {
    color:var(--muted);
    font-size:12px;
    margin:0
}
.settings-link-card .button {
    flex:none
}
@media(min-width:801px) and (max-width:1150px) {
    .shell {
        width:min(100% - 48px,960px)
    }
    .admin-main {
        padding-left:32px;
        padding-right:32px
    }
    .connection-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .contact-shell {
        grid-template-columns:minmax(0,1fr) minmax(380px,460px);
        gap:6%
    }
    .stat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}
@media(max-width:800px) {
    .topbar {
        flex-wrap:wrap;
        height:auto;
        min-height:75px;
        padding:18px 0
    }
    .nav-links {
        max-width:100%;
        overflow-x:auto;
        padding-bottom:3px
    }
    .nav-links a,.nav-button {
        white-space:nowrap
    }
    .settings-link-card,.key-row {
        align-items:flex-start;
        flex-direction:column
    }
    .settings-link-card .button {
        width:100%
    }
}
@media(max-width:560px) {
    .shell {
        width:calc(100% - 30px)
    }
    .form-card,.admin-table-card,.profile-summary,.settings-list,.public-page-body {
        border-radius:13px;
        padding:22px 18px
    }
    .hero h1,.auth-panel h1 {
        letter-spacing:-2.5px
    }
    .button {
        max-width:100%
    }
    .admin-main {
        padding:22px 14px
    }
    .admin-header h1 {
        font-size:28px
    }
    .contact-form-grid {
        grid-template-columns:1fr
    }
    .smtp-test-form {
        display:block
    }
    .smtp-test-form input,.smtp-test-form .button {
        width:100%;
        margin-bottom:8px
    }
    .impersonation-banner {
        align-items:flex-start;
        flex-wrap:wrap;
        padding:10px 15px
    }
    .impersonation-banner form {
        margin-left:0;
        width:100%
    }
    .impersonation-banner button {
        width:100%
    }
}
.impersonation-banner {
    position:relative;
    z-index:10;
    display:flex;
    align-items:center;
    gap:10px;
    background:linear-gradient(90deg,#7667e6,#9b8cff);
    color:#fff;
    padding:10px max(20px,calc((100% - 1180px)/2));
    font-size:12px;
    box-shadow:0 8px 25px #0003
}
.impersonation-banner>span {
    font-size:16px
}
.impersonation-banner small {
    color:#e8e5ff
}
.impersonation-banner form {
    margin-left:auto
}
.impersonation-banner button {
    border:1px solid #ffffff66;
    background:#ffffff18;
    color:#fff;
    border-radius:7px;
    padding:7px 10px;
    font:600 11px Inter,sans-serif;
    cursor:pointer
}
.impersonation-banner button:hover {
    background:#fff;
    color:#6c5dde
}
.admin-actions button:not(.danger-link) {
    color:#a99fff
}
.admin-actions a,.admin-actions button {
    transition:color .2s ease,transform .2s ease
}
.admin-actions a:hover,.admin-actions button:hover {
    transform:translateY(-1px);
    color:#fff
}
.admin-actions {
    flex-wrap:wrap
}
.realtime-toast {
    position: fixed;
    right: 1.25rem;
    bottom: 1.25rem;
    z-index: 1000;
    max-width: min(28rem, calc(100vw - 2.5rem));
    padding: .9rem 1rem;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 1rem;
    background: #162126;
    color: #fff;
    box-shadow: 0 1rem 2.5rem rgba(17, 32, 35, .24);
    opacity: 0;
    pointer-events: none;
    transform: translateY(1rem);
    transition: opacity .2s ease, transform .2s ease;
}
.realtime-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}
.settings-list .preference-row {
    display: flex;
    align-items: center;
    gap: 13px;
    border-bottom: 1px solid var(--line);
    padding: 22px 0;
}
.settings-list .preference-row:last-child {
    border-bottom: 0;
}
.preference-row .toggle {
    flex: 0 0 auto;
    border: 0;
    padding: 0;
    cursor: pointer;
}
.preference-row .toggle-global, .preference-row.preference-global .toggle {
    cursor: not-allowed;
}
.preference-global {
    opacity: .82;
}
.notyf__toast {
    border-radius: 12px;
    box-shadow: 0 16px 38px rgba(0, 0, 0, .28);
    font-family: 'Inter', sans-serif;
}
.kyc-form-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.kyc-status {
    border: 1px solid var(--line);
    border-radius: 12px;
    display: grid;
    gap: 4px;
    margin-bottom: 18px;
    padding: 13px 15px;
}
.kyc-status span, .kyc-status strong {
    font-size: 12px;
}
.kyc-status-approved {
    background: #103527;
    border-color: #268c65;
    color: #b8f5d7;
}
.kyc-status-pending {
    background: #29253e;
    border-color: #6959c7;
    color: #d6cfff;
}
.kyc-status-rejected {
    background: #3b2028;
    border-color: #a55363;
    color: #ffd0d8;
}
.admin-document-link {
    color: #b3a9ff;
    font-size: 12px;
    text-decoration: none;
}
.kyc-admin-card {
    max-width: none;
    width: 100%;
}
.admin-filter-tabs {
    align-items: center;
    background: #08152b;
    border: 1px solid #1b3151;
    border-radius: 12px;
    display: flex;
    gap: 6px;
    margin-bottom: 18px;
    padding: 5px;
    width: fit-content;
}
.admin-filter-tabs a {
    border-radius: 8px;
    color: #8fa0bd;
    font: 600 12px/1 Inter, sans-serif;
    padding: 10px 16px;
    text-decoration: none;
    transition: background .2s ease, color .2s ease;
}
.admin-filter-tabs a:hover, .admin-filter-tabs a.active {
    background: linear-gradient(135deg, #7c32e8, #5369e9);
    color: #fff;
}
.kyc-admin-card .table-heading {
    align-items: flex-start;
    border-bottom: 1px solid #1b3151;
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
    padding-bottom: 18px;
}
.kyc-admin-card .table-heading h2 {
    color: #f4f5fa;
    font: 600 24px/1.2 Manrope, sans-serif;
    margin: 0 0 7px;
}
.kyc-admin-card .table-heading p {
    color: #8fa0bd;
    font-size: 12px;
    margin: 0;
}
.kyc-admin-card .admin-table td {
    min-width: 130px;
    vertical-align: middle;
}
.kyc-admin-card .admin-table td:first-child, .kyc-admin-card .admin-table th:first-child {
    min-width: 190px;
}
@media (max-width: 640px) {
    .admin-filter-tabs {
        width: 100%;
    }
    .admin-filter-tabs a {
        flex: 1;
        padding-left: 8px;
        padding-right: 8px;
        text-align: center;
    }
    .kyc-admin-card .table-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }
}
.report-card-link {
    color: inherit;
    text-decoration: none;
    transition: border-color .2s ease, transform .2s ease;
}
.report-card-link:hover {
    border-color: #8f7cff;
    transform: translateY(-2px);
}
.admin-pagination {
    align-items: center;
    color: #8292ac;
    display: flex;
    font-size: 11px;
    gap: 18px;
    justify-content: space-between;
    margin: 16px 0 4px;
}
.admin-pagination > div {
    display: flex;
    gap: 5px;
}
.admin-pagination.is-loading {
    opacity: .55;
    pointer-events: none;
}
.admin-pagination a {
    align-items: center;
    background: #0b1730;
    border: 1px solid #29466e;
    border-radius: 7px;
    color: #b9c8df;
    display: inline-flex;
    font-weight: 600;
    justify-content: center;
    min-height: 32px;
    min-width: 32px;
    padding: 0 9px;
    text-decoration: none;
}
.admin-pagination a:hover, .admin-pagination a.active {
    background: linear-gradient(135deg, #7c32e8, #5369e9);
    border-color: #8f7cff;
    color: #fff;
}
@media (max-width: 640px) {
    .admin-pagination {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }
}
.brand-logo-link {
    cursor: pointer;
}
.admin-document-link:hover {
    color: #fff;
    text-decoration: underline;
}
.kyc-badge-approved {
    color: #87edbd;
}
.kyc-badge-rejected {
    color: #ff9eaa;
}
@media (max-width: 700px) {
    .kyc-form-grid {
        grid-template-columns: 1fr;
    }
}

/* Database backup administration */
body.admin-body .admin-backup-page {
    display: grid;
    gap: 22px;
    width: 100%;
}
body.admin-body .admin-backup-intro {
    align-items: end;
    display: flex;
    gap: 28px;
    justify-content: space-between;
    padding: 4px 0 8px;
}
body.admin-body .admin-backup-intro > div:first-child {
    min-width: 0;
}
body.admin-body .admin-backup-intro h2 {
    color: #f3f5ff;
    font: 600 clamp(22px, 3vw, 30px)/1.15 'Manrope', sans-serif;
    margin: 6px 0 9px;
}
body.admin-body .admin-backup-intro p {
    color: #91a0bf;
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
}
body.admin-body .admin-backup-intro code {
    color: #c2b8ff;
    font: 600 11px 'Inter', sans-serif;
}
body.admin-body .admin-backup-actions {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}
body.admin-body .admin-backup-actions form { margin: 0; }
body.admin-body .admin-backup-stats {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
body.admin-body .admin-backup-stat {
    align-items: center;
    background: linear-gradient(145deg, rgba(11, 26, 50, .96), rgba(7, 16, 34, .96));
    border: 1px solid #1b3151;
    border-radius: 15px;
    display: flex;
    gap: 14px;
    min-width: 0;
    padding: 20px;
}
body.admin-body .admin-backup-stat > div { min-width: 0; }
body.admin-body .admin-backup-stat small,
body.admin-body .admin-backup-stat p {
    color: #8392b0;
    display: block;
    font-size: 10px;
    margin: 0;
}
body.admin-body .admin-backup-stat strong {
    color: #f3f5ff;
    display: block;
    font: 700 21px 'Manrope', sans-serif;
    margin: 6px 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
body.admin-body .admin-backup-stat p { color: #6f82a4; }
body.admin-body .backup-stat-icon {
    align-items: center;
    background: #6453d733;
    border: 1px solid #7768e8;
    border-radius: 11px;
    color: #b8adff;
    display: inline-flex;
    flex: 0 0 42px;
    font-size: 20px;
    height: 42px;
    justify-content: center;
    width: 42px;
}
body.admin-body .backup-stat-icon.is-green { background: #1b9b6b24; border-color: #2ea879; color: #6ce2b4; }
body.admin-body .backup-stat-icon.is-violet { background: #7453d52b; border-color: #886ff3; color: #c0b6ff; }
body.admin-body .admin-backup-card { min-width: 0; }
body.admin-body .admin-backup-card .table-heading { align-items: center; gap: 18px; }
body.admin-body .admin-backup-card .table-heading > div { min-width: 0; }
body.admin-body .backup-retention-badge {
    background: #45c99a1f;
    border: 1px solid #2e9f79;
    border-radius: 999px;
    color: #6de1b7;
    flex: 0 0 auto;
    font-size: 10px;
    padding: 7px 10px;
    white-space: nowrap;
}
body.admin-body .admin-backup-file {
    align-items: center;
    background: #091a34;
    border: 1px solid #25446f;
    border-radius: 12px;
    display: flex;
    gap: 14px;
    margin-top: 22px;
    min-width: 0;
    padding: 15px 17px;
}
body.admin-body .backup-file-icon {
    align-items: center;
    background: #7453d52b;
    border: 1px solid #806cec;
    border-radius: 8px;
    color: #c0b6ff;
    display: inline-flex;
    flex: 0 0 40px;
    font-size: 10px;
    font-weight: 800;
    height: 40px;
    justify-content: center;
    width: 40px;
}
body.admin-body .admin-backup-file > div { display: grid; gap: 5px; min-width: 0; flex: 1; }
body.admin-body .admin-backup-file strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.admin-body .admin-backup-file small { color: #8292b2; font-size: 10px; }
body.admin-body .admin-backup-file .text-link { flex: 0 0 auto; white-space: nowrap; }
body.admin-body .admin-backup-empty { color: #92a0bb; padding: 45px 18px 26px; text-align: center; }
body.admin-body .admin-backup-empty > span { color: #a69aff; font-size: 30px; }
body.admin-body .admin-backup-empty h3 { color: #edf1ff; font: 600 18px 'Manrope', sans-serif; margin: 12px 0 5px; }
body.admin-body .admin-backup-empty p { font-size: 12px; margin: 0; }
body.admin-body .admin-backup-note { margin: 0; }
@media (max-width: 800px) {
    body.admin-body .admin-backup-intro { align-items: flex-start; flex-direction: column; gap: 18px; }
    body.admin-body .admin-backup-actions { justify-content: flex-start; }
    body.admin-body .admin-backup-stats { grid-template-columns: 1fr; }
}

/* First-run installer */
body.installer-body { background: radial-gradient(circle at 8% 0, #1a2c57 0, transparent 34rem), #030a1b; color: #edf2ff; min-height: 100vh; }
.installer-shell { margin: 0 auto; max-width: 1060px; padding: 48px 24px 72px; }
.installer-card { background: linear-gradient(145deg, rgba(11, 26, 50, .98), rgba(7, 16, 34, .98)); border: 1px solid #1b3a62; border-radius: 24px; box-shadow: 0 28px 90px rgba(0, 0, 0, .36); padding: clamp(24px, 5vw, 52px); }
.installer-brand { align-items: center; display: flex; gap: 14px; margin-bottom: 48px; }
.installer-brand img { height: 38px; max-width: 185px; }
.installer-brand span, .installer-kicker { color: #a99cff; font-size: 10px; font-weight: 800; letter-spacing: 1.6px; }
.installer-heading { max-width: 680px; }
.installer-heading h1 { color: #f7f8ff; font: 700 clamp(32px, 5vw, 50px)/1.05 'Manrope', sans-serif; letter-spacing: -2px; margin: 10px 0 14px; }
.installer-heading p, .installer-section p { color: #8e9fbd; font-size: 13px; line-height: 1.7; margin: 0; }
.installer-status-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 34px 0; }
.installer-status { align-items: center; background: #091a34; border: 1px solid #25446f; border-radius: 13px; display: flex; gap: 11px; min-width: 0; padding: 14px; }
.installer-status > span { align-items: center; background: #222e52; border-radius: 9px; color: #a99cff; display: inline-flex; flex: 0 0 30px; font-weight: 800; height: 30px; justify-content: center; width: 30px; }
.installer-status.is-ready { border-color: #26775f; }.installer-status.is-ready > span { background: #1b9b6b2e; color: #6de1b7; }
.installer-status div { display: grid; gap: 4px; min-width: 0; }.installer-status strong { font-size: 11px; }.installer-status small { color: #8192b2; font-size: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.installer-error { background: #6c24332e; border: 1px solid #b84e69; border-radius: 10px; color: #ffb3c1; font-size: 12px; line-height: 1.5; margin: 0 0 22px; padding: 13px 15px; }
.installer-form { display: grid; gap: 18px; }.installer-section { background: rgba(5, 15, 33, .55); border: 1px solid #1d395f; border-radius: 16px; display: grid; gap: 22px; padding: 24px; }
.installer-section h2 { color: #f0f3ff; font: 600 20px 'Manrope', sans-serif; margin: 6px 0; }.installer-form-grid { display: grid; gap: 17px; grid-template-columns: repeat(2, minmax(0, 1fr)); }.installer-form-grid-database { grid-template-columns: repeat(4, minmax(0, 1fr)); }.installer-field-wide { grid-column: span 2; }
.installer-form .field { min-width: 0; }.installer-form .field input { background: #091a34; border-color: #2b4d7a; color: #eef2ff; width: 100%; }.installer-form .field input:focus { border-color: #8f7cff; box-shadow: 0 0 0 3px #8f7cff22; outline: 0; }.installer-form .field label small { color: #8192b2; margin-left: 5px; }
.installer-submit { justify-content: center; min-height: 50px; width: 100%; }
@media (max-width: 820px) { .installer-status-grid, .installer-form-grid-database { grid-template-columns: repeat(2, minmax(0, 1fr)); } .installer-field-wide { grid-column: auto; } }
@media (max-width: 560px) { .installer-shell { padding: 20px 12px 42px; }.installer-card { border-radius: 16px; padding: 22px 16px; }.installer-brand { margin-bottom: 32px; }.installer-status-grid, .installer-form-grid, .installer-form-grid-database { grid-template-columns: 1fr; }.installer-section { padding: 18px 14px; } }
@media (max-width: 560px) {
    body.admin-body .admin-backup-actions { align-items: stretch; flex-direction: column; width: 100%; }
    body.admin-body .admin-backup-actions > *, body.admin-body .admin-backup-actions .button { width: 100%; }
    body.admin-body .admin-backup-file { align-items: flex-start; flex-wrap: wrap; }
    body.admin-body .admin-backup-file .text-link { margin-left: 54px; }
    body.admin-body .admin-backup-card .table-heading { align-items: flex-start; flex-direction: column; }
}

/* Final mobile drawer state: keep navigation labels visible when opened. */
@media (max-width: 800px) {
    .admin-sidebar,
    .member-sidebar {
        width: min(292px, calc(100vw - 28px)) !important;
    }

    .admin-sidebar .admin-link,
    .member-sidebar .member-nav-link {
        justify-content: flex-start !important;
    }

    .admin-sidebar .admin-link span,
    .admin-sidebar .admin-link em,
    .admin-sidebar .admin-label,
    .admin-sidebar .admin-workspace-switch > span:nth-child(2),
    .admin-sidebar .admin-workspace-switch > b,
    .admin-sidebar .admin-account-mini > span:nth-child(2),
    .admin-sidebar .admin-account-mini > b,
    .admin-sidebar .admin-logout,
    .member-sidebar .member-nav-link span,
    .member-sidebar .member-sidebar-promo,
    .member-sidebar .member-sidebar-profile-link,
    .member-sidebar .member-sidebar-account form,
    .member-sidebar .member-sidebar-signout {
        display: block !important;
    }

    .member-sidebar .member-nav-link b {
        width: 20px !important;
    }
}

.conversation-status-row {
    align-items: center;
    background: linear-gradient(135deg, #0b1b38, #08152d);
    border: 1px solid #1e3961;
    border-radius: 12px;
    display: flex;
    gap: 12px;
    justify-content: flex-start;
    margin: 0;
    padding: 9px 12px;
}

.conversation-status-group {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.realtime-presence,
.typing-indicator {
    align-items: center;
    background: #071226;
    border: 1px solid #203b63;
    border-radius: 999px;
    color: var(--muted);
    display: inline-flex;
    font-size: 12px;
    min-height: 28px;
    padding: 0 10px;
}

.realtime-presence i {
    background: #6e7690;
    border-radius: 50%;
    display: inline-block;
    height: 7px;
    margin-right: 6px;
    width: 7px;
}

.realtime-presence.is-online i { background: #42d59a; box-shadow: 0 0 0 4px rgba(66, 213, 154, .12); }
.realtime-presence.is-offline i { background: #e47d8a; }
.typing-indicator { color: var(--accent); font-style: italic; }
.typing-indicator[hidden] { display: none; }

.online-label {
    align-items: center;
    background: #071226;
    border: 1px solid #203b63;
    border-radius: 999px;
    display: inline-flex;
    font-size: 12px;
    min-height: 28px;
    padding: 0 10px;
}

.conversation-compose {
    padding: 18px;
}

.conversation-compose textarea {
    min-height: 96px;
}

.message-emoji-controls {
    position: relative;
    margin: 8px 0 10px;
}
.message-emoji-toggle {
    align-items: center;
    background: #111c34;
    border: 1px solid #2c4670;
    border-radius: 999px;
    color: #d4ceff;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 18px;
    gap: 7px;
    padding: 7px 12px;
}
.message-emoji-toggle span { font-size: 12px; }
.message-emoji-toggle:hover, .message-emoji-toggle[aria-expanded="true"] { background: #2b2452; border-color: #9b8cff; }
.message-emoji-picker {
    background: #171b2c;
    border: 1px solid #334b73;
    border-radius: 14px;
    box-shadow: 0 14px 32px #0008;
    display: grid;
    gap: 2px;
    grid-template-columns: repeat(12, 1fr);
    max-height: 220px;
    max-width: 520px;
    overflow-y: auto;
    padding: 9px;
    position: absolute;
    width: min(100%, 520px);
    z-index: 8;
}
.message-emoji-picker[hidden] { display: none; }
.message-emoji-picker button { background: transparent; border: 0; border-radius: 8px; cursor: pointer; font-size: 20px; line-height: 1; padding: 6px 2px; }
.message-emoji-picker button:hover { background: #2b3764; }
.message-body-emoji-single { font-size: 46px; line-height: 1.1; }
.message-body-emoji-multiple { font-size: inherit; }

.load-older-messages {
    background: transparent;
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--accent);
    cursor: pointer;
    display: block;
    font: inherit;
    font-size: 12px;
    margin: 0 auto 18px;
    padding: 9px 14px;
}

.load-older-messages:hover { background: rgba(157, 140, 255, .1); }
.load-older-messages:disabled { cursor: wait; opacity: .6; }
.load-older-messages[hidden] { display: none; }

.message-receipt { color: var(--muted); font-size: 11px; margin-left: 6px; }
.chat-bubble-own .message-receipt { color: #9d8cff; }

.message-attachments {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    margin: 12px 0;
}

.message-attachment {
    background: rgba(255, 255, 255, .04);
    border: 1px solid var(--line);
    border-radius: 12px;
    color: var(--text);
    display: flex;
    flex-direction: column;
    gap: 6px;
    overflow: hidden;
    padding: 7px;
    text-decoration: none;
}

.message-attachment-preview { display: block; }
.message-attachment img,
.message-attachment video { aspect-ratio: 1.35; background: #080d1c; object-fit: cover; width: 100%; }
.message-attachment audio { display: block; min-width: min(280px, 100%); width: 100%; }
.message-attachment-pdf { background: #080d1c; border: 1px solid var(--line); border-radius: 8px; display: block; height: min(520px, 62vh); min-height: 260px; width: min(680px, 100%); }
.message-attachment-pdf p { color: var(--muted); padding: 18px; }
.message-attachment-pdf a,
.message-attachment-file-link { color: var(--accent); }
.message-attachment-pdf { grid-column: 1 / -1; height: auto; min-height: 0; min-width: min(300px, 100%); width: min(300px, 100%); }
.message-attachment-pdf-card { align-items: center; background: #080d1c; border: 1px solid var(--line); border-radius: 10px; display: flex; flex-direction: column; gap: 10px; min-height: 174px; min-width: 0; justify-content: center; padding: 16px; text-align: center; width: 100%; }
.message-attachment-pdf-icon { align-items: center; background: rgba(239, 96, 125, .16); border: 1px solid rgba(239, 96, 125, .4); border-radius: 8px; color: #ff9bb0; display: flex; font-size: 12px; font-weight: 800; height: 42px; justify-content: center; letter-spacing: .08em; width: 48px; }
.message-attachment-name { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.message-attachment-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.message-attachment-file-link { align-items: center; display: flex; gap: 8px; justify-content: center; min-height: 72px; text-decoration: none; }
.message-attachment-file-link > span:first-child { font-size: 28px; }
.wallet-payment-provider { background: rgba(157, 140, 255, .1); border: 1px solid rgba(157, 140, 255, .25); border-radius: 8px; color: var(--muted); display: block; font-size: 11px; padding: 9px 10px; }
.automatic-login-divider { align-items: center; color: var(--muted); display: flex; font-size: 11px; gap: 10px; margin: 20px 0 12px; text-transform: uppercase; letter-spacing: .08em; }
.automatic-login-divider::before,.automatic-login-divider::after { background: var(--line); content: ''; flex: 1; height: 1px; }
.automatic-login-form { margin: 0; }
.automatic-login-warning { display: block; line-height: 1.45; margin-top: 9px; text-align: center; }
.admin-info-callout { align-items: start; background: rgba(157, 140, 255, .07); border: 1px solid rgba(157, 140, 255, .24); border-radius: 12px; display: grid; gap: 7px; margin-top: 24px; padding: 16px 18px; }
.admin-info-callout code { background: rgba(0, 0, 0, .18); border: 1px solid var(--line); border-radius: 7px; color: var(--accent); display: block; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; padding: 9px 10px; white-space: normal; }
.admin-info-callout small { color: var(--muted); line-height: 1.5; }
.payment-gateway-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.payment-gateway-card { display: grid; gap: 14px; min-height: 230px; }
.payment-gateway-icon { align-items: center; background: linear-gradient(135deg, #8f7cff, #d94eaa); border-radius: 13px; color: #fff; display: flex; font-size: 24px; height: 48px; justify-content: center; width: 48px; }
.gateway-status { border-radius: 99px; display: inline-flex; font-size: 11px; font-weight: 700; justify-self: start; padding: 6px 10px; }
.gateway-status.is-enabled { background: rgba(48, 211, 145, .12); color: #55e2a7; }
.gateway-status.is-disabled { background: rgba(255, 183, 77, .12); color: #ffc46b; }
.wallet-gateway-field { display: grid; gap: 6px; }
.wallet-gateway-field span { color: var(--muted); font-size: 11px; }
.wallet-gateway-select { width: 100%; }
@media (max-width: 1120px) { .payment-gateway-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .payment-gateway-grid { grid-template-columns: 1fr; } }
.payment-gateways-page,.nowpayments-page { display: grid; gap: 24px; }
.payment-gateways-intro { align-items: center; background: linear-gradient(135deg, rgba(24, 42, 72, .94), rgba(19, 24, 49, .92)); border: 1px solid var(--line); border-radius: 18px; display: flex; gap: 24px; justify-content: space-between; padding: 30px 34px; }
.payment-gateways-intro h2 { font: 700 28px Manrope, sans-serif; margin: 8px 0 9px; }
.payment-gateways-intro p { color: var(--muted); line-height: 1.65; margin: 0; max-width: 720px; }
.payment-gateways-intro-icon { align-items: center; background: linear-gradient(135deg, #9d8cff, #6e5be8); border-radius: 15px; color: #fff; display: flex; flex: 0 0 56px; font-size: 25px; height: 56px; justify-content: center; }
.payment-gateway-grid { gap: 24px; }
.payment-gateway-card { align-content: start; gap: 20px; min-height: 330px; padding: 28px; }
.payment-gateway-card-head { align-items: center; display: flex; justify-content: space-between; }
.payment-gateway-card-copy { display: grid; gap: 9px; }
.payment-gateway-card-copy h2 { font: 700 23px Manrope, sans-serif; margin: 0; }
.payment-gateway-card-copy p { color: var(--muted); line-height: 1.65; margin: 0; max-width: 430px; }
.payment-gateway-card-meta { border-top: 1px solid var(--line); display: flex; gap: 12px; justify-content: space-between; margin-top: auto; padding-top: 16px; }
.payment-gateway-card-meta span { color: var(--muted); font-size: 12px; }
.payment-gateway-card-meta strong { color: var(--text); font-size: 12px; text-align: right; }
.payment-gateway-card .button { justify-self: start; margin-top: 2px; }
.payment-gateway-icon-muted { background: rgba(157, 140, 255, .14); color: var(--accent); }
.payment-gateway-note { color: var(--muted); font-size: 12px; }
.payment-gateway-guidance { align-items: flex-start; background: rgba(74, 210, 168, .06); border: 1px solid rgba(74, 210, 168, .2); border-radius: 14px; display: flex; gap: 14px; padding: 18px 20px; }
.payment-gateway-guidance p { color: var(--muted); line-height: 1.6; margin: 5px 0 0; }
.payment-gateway-guidance-icon { align-items: center; background: rgba(74, 210, 168, .16); border-radius: 50%; color: #67ddb3; display: flex; flex: 0 0 25px; font-size: 13px; height: 25px; justify-content: center; }
.gateway-settings-card { max-width: none; padding: 38px; }
.gateway-settings-header { align-items: flex-start; display: flex; gap: 24px; justify-content: space-between; padding-bottom: 28px; }
.gateway-settings-header h2 { font: 700 28px Manrope, sans-serif; margin: 9px 0 9px; }
.gateway-settings-header p { color: var(--muted); line-height: 1.65; margin: 0; max-width: 760px; }
.gateway-enable-row { margin: 0 0 30px; }
.gateway-settings-section { border-top: 1px solid var(--line); display: grid; gap: 22px; padding: 28px 0 4px; }
.gateway-settings-section-heading h3 { font: 700 18px Manrope, sans-serif; margin: 7px 0 6px; }
.gateway-settings-section-heading p { color: var(--muted); font-size: 12px; margin: 0; }
.gateway-settings-section .settings-form-grid { margin: 0; }
.gateway-two-column-grid { gap: 22px 24px; }
.gateway-two-column-grid .field:last-child { grid-column: auto; }
.gateway-settings-card .admin-info-callout { align-items: flex-start; display: flex; gap: 13px; margin-top: 30px; padding: 18px 20px; }
.gateway-settings-card .admin-info-callout > div { display: grid; gap: 8px; min-width: 0; }
.gateway-settings-card .admin-info-callout code { margin: 0; }
.gateway-settings-card .admin-form-actions { border-top: 1px solid var(--line); justify-content: center; margin-top: 30px; padding-top: 24px; }
@media (max-width: 760px) {
    .payment-gateways-intro { align-items: flex-start; padding: 23px; }
    .payment-gateways-intro-icon { display: none; }
    .payment-gateway-card { min-height: 0; padding: 23px; }
    .gateway-settings-card { padding: 23px; }
    .gateway-settings-header { gap: 16px; }
    .gateway-settings-header .payment-gateway-icon { flex: 0 0 44px; height: 44px; width: 44px; }
    .gateway-settings-header h2 { font-size: 23px; }
    .gateway-settings-card .admin-form-actions { justify-content: center; }
    .gateway-settings-card .admin-form-actions .button { margin: 0 auto; }
    .gateway-settings-card .admin-info-callout { gap: 10px; padding: 15px; }
    .gateway-settings-card .admin-info-callout code { font-size: 10px; line-height: 1.45; }
}
.message-attachment strong { font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.message-attachment-pdf strong { font-size: 12px; max-width: 100%; }
.message-attachment-file > span { font-size: 28px; padding: 16px 8px; text-align: center; }

.message-upload-controls {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 10px 0 14px;
}

.message-upload-controls small { color: var(--muted); font-size: 11px; }
.message-upload-controls [data-upload-progress] { color: var(--accent); font-size: 12px; font-weight: 700; }
.voice-record-button.is-recording { border-color: rgba(255, 111, 143, .7); color: #ff9bb0; }
.voice-record-status { color: var(--accent); font-size: 11px; font-weight: 700; }
.voice-message-label { color: var(--accent); display: block; font-size: 11px; font-weight: 700; margin-bottom: 6px; }
.voice-message-player { min-width: min(280px, 100%); }
.message-attachment-summary {
    align-items: center;
    background: rgba(157, 140, 255, .1);
    border: 1px solid rgba(157, 140, 255, .32);
    border-radius: 10px;
    color: var(--text);
    display: inline-flex;
    font-size: 12px;
    gap: 8px;
    padding: 7px 10px;
    width: 100%;
}
.message-attachment-summary[hidden] { display: none; }
.message-attachment-summary-icon { color: var(--accent); font-size: 16px; }
.wallet-transfer-empty {
    align-items: center;
    background: rgba(157, 140, 255, .08);
    border: 1px dashed rgba(157, 140, 255, .32);
    border-radius: 14px;
    color: var(--muted);
    display: flex;
    gap: 10px;
    margin-top: 16px;
    padding: 14px 16px;
}
.wallet-transfer-empty > span { color: var(--accent); font-size: 22px; }
.wallet-transfer-empty strong { color: var(--text); }
.wallet-transfer-empty small { font-size: 12px; }
@media (max-width: 560px) {
    .settings-list .preference-row {
        align-items: flex-start;
    }
    .preference-row .toggle {
        margin-left: auto;
    }
}

.captcha-box {
    display: grid;
    gap: 10px;
    margin-top: 18px;
    padding: 14px;
    border: 1px solid rgba(153, 140, 255, .24);
    border-radius: 14px;
    background: rgba(20, 20, 34, .72);
}

.captcha-box label {
    color: #d8d4ed;
    font-size: .82rem;
    font-weight: 700;
}

.captcha-image {
    display: block;
    width: 190px;
    height: 58px;
    border: 1px solid rgba(184, 173, 255, .34);
    border-radius: 10px;
    background: #171722;
}

.captcha-math {
    display: inline-flex;
    align-items: center;
    min-height: 58px;
    width: fit-content;
    padding: 0 18px;
    border: 1px dashed rgba(184, 173, 255, .45);
    border-radius: 10px;
    color: #b8adff;
    font-size: 1.2rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.profile-name-link {
    color: inherit;
    text-decoration: none;
}

.profile-name-link:hover {
    color: var(--accent);
}

.member-profile-card {
    background: linear-gradient(145deg, rgba(19, 31, 57, .96), rgba(10, 19, 38, .98));
    border: 1px solid var(--line);
    border-radius: 24px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .24);
    padding: clamp(22px, 4vw, 48px);
}
.member-profile-page {
    max-width: 1220px;
}
.member-profile-page .dashboard-head {
    align-items: flex-end;
    gap: 24px;
    margin-bottom: 24px;
}
.member-profile-page .dashboard-head > div:first-child {
    min-width: 0;
}
.member-profile-page .dashboard-head .button {
    flex: 0 0 auto;
}

.member-profile-hero {
    align-items: center;
    display: flex;
    gap: 22px;
    padding-bottom: 30px;
}

.member-profile-avatar {
    align-items: center;
    background: linear-gradient(145deg, #9b8cff, #5f4fd7);
    border-radius: 22px;
    color: #fff;
    display: flex;
    flex: 0 0 108px;
    font-size: 42px;
    font-weight: 800;
    height: 108px;
    justify-content: center;
    overflow: hidden;
}

.member-profile-avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.member-profile-hero h2 {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 8px 0;
}

.member-profile-hero p {
    color: var(--muted);
    margin: 0;
}

.member-profile-content {
    border-top: 1px solid var(--line);
    display: grid;
    gap: 30px;
    grid-template-columns: minmax(0, 1.2fr) minmax(220px, .8fr);
    padding: 30px 0;
}

.member-profile-content h2 {
    font-size: clamp(22px, 3vw, 34px);
    line-height: 1.15;
    margin: 10px 0;
}

.member-profile-content p {
    color: var(--muted);
    line-height: 1.7;
}

.member-profile-actions {
    align-items: center;
    border-top: 1px solid var(--line);
    display: flex;
    gap: 18px;
    justify-content: space-between;
    padding-top: 24px;
}

.member-profile-actions > div:first-child,
.member-safety-actions,
.conversation-safety-actions,
.message-safety-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.member-safety-actions form {
    margin: 0;
}
.member-safety-actions .profile-safety-button {
    align-items: center;
    appearance: none;
    background: rgba(10, 23, 48, .88);
    border: 1px solid #29466e;
    border-radius: 10px;
    color: #b9c8df;
    cursor: pointer;
    display: inline-flex;
    font: 600 12px/1 Inter, sans-serif;
    gap: 7px;
    min-height: 38px;
    padding: 0 13px;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.member-safety-actions .profile-safety-button > span {
    color: #a99cff;
    font-size: 15px;
}
.member-safety-actions .profile-safety-button:hover {
    background: rgba(35, 59, 96, .95);
    border-color: #8f7cff;
    color: #fff;
    transform: translateY(-1px);
}
.member-safety-actions .profile-safety-button.danger-link {
    background: rgba(64, 22, 42, .55);
    border-color: rgba(255, 111, 139, .38);
    color: #ff9eaf;
}
.member-safety-actions .profile-safety-button.danger-link > span {
    color: #ff869e;
}
.member-safety-actions .profile-safety-button.danger-link:hover {
    background: rgba(105, 31, 55, .72);
    border-color: #ff7189;
    color: #ffd8df;
}

.profile-connected-badge {
    background: rgba(68, 211, 155, .12);
    border: 1px solid rgba(68, 211, 155, .32);
    border-radius: 999px;
    color: #7ce5b8;
    font-size: 13px;
    font-weight: 700;
    padding: 11px 15px;
}

.conversation-safety-actions {
    margin-top: 14px;
}

.message-safety-actions {
    justify-content: flex-end;
    margin-top: 9px;
    opacity: .82;
}

.message-safety-actions .text-link,
.conversation-safety-actions .text-link {
    font-size: 12px;
}

.safety-action-icon {
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    margin-right: 4px;
    vertical-align: -1px;
}

@media (max-width: 700px) {
    .member-profile-page .dashboard-head {
        align-items: stretch;
    }

    .member-profile-page .dashboard-head .button {
        width: 100%;
    }

    .member-profile-hero,
    .member-profile-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .member-profile-content {
        grid-template-columns: 1fr;
    }

    .member-profile-actions > div:first-child {
        width: 100%;
    }

    .member-profile-primary-actions,
    .member-safety-actions {
        width: 100%;
    }

    .member-profile-primary-actions > form,
    .member-profile-primary-actions > .button,
    .member-safety-actions > form {
        flex: 1 1 140px;
    }

    .member-profile-actions .button {
        justify-content: center;
        width: 100%;
    }
}
.people-search {
    margin:0 0 34px;
    padding:20px 22px;
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px
}
.people-search label {
    display:block;
    color:#aaa7b6;
    font-size:12px;
    margin-bottom:9px
}
.people-search>div {
    display:flex;
    gap:10px
}
.people-search input {
    flex:1
}
.people-search .button {
    flex:none
}
.people-head-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.button-secondary {
    background: #101d38;
    border-color: #35527d;
    color: #c9c4ff;
}
.button-secondary:hover {
    background: #172849;
    border-color: #7667e4;
    color: #fff;
}
.blocked-users-list {
    display: grid;
    gap: 12px;
}
.blocked-user-card {
    align-items: center;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 15px;
    display: grid;
    gap: 17px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 18px 20px;
}
.blocked-user-card .connection-avatar { width: 54px; height: 54px; border-radius: 17px; font-size: 21px; }
.blocked-user-info h2 { font: 600 17px Manrope, sans-serif; margin: 0 0 3px; }
.blocked-user-info p { color: #a6b2c8; font-size: 12px; margin: 0 0 6px; }
.blocked-user-scope { color: #8797b4; font-size: 11px; }
.blocked-users-empty { min-height: 220px; }
@media (max-width: 700px) {
    .dashboard-head .people-head-actions { width: 100%; }
    .people-head-actions .button { flex: 1 1 160px; justify-content: center; }
    .blocked-user-card { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
    .blocked-user-card form { grid-column: 1 / -1; }
    .blocked-user-card form .button { justify-content: center; width: 100%; }
}
.inbox-item {
    text-decoration:none;
    color:inherit
}
.conversation-card {
    display:grid;
    grid-template-columns:1.4fr .8fr;
    gap:18px
}
.pinned-messages-strip {
    align-items: center;
    background: linear-gradient(135deg, #19254a, #151b35);
    border: 1px solid #3b4f82;
    border-radius: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    grid-column: 1 / -1;
    padding: 10px 12px;
}
.pinned-messages-label {
    color: #c8c4ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    margin-right: 3px;
}
.pinned-message-link {
    align-items: center;
    background: #0c1934;
    border: 1px solid #344d7d;
    border-radius: 10px;
    color: #e7ebff;
    cursor: pointer;
    display: inline-flex;
    gap: 7px;
    max-width: 260px;
    min-width: 0;
    padding: 7px 10px;
    text-align: left;
}
.pinned-message-link:hover {
    background: #273765;
    border-color: #9b8cff;
}
.pinned-message-link strong {
    color: #b5a8ff;
    font-size: 11px;
    white-space: nowrap;
}
.pinned-message-link span {
    font-size: 11px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.chat-bubble.is-pinned-target {
    animation: pinned-message-pulse 1.8s ease-out;
}
@keyframes pinned-message-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(155, 140, 255, 0); }
    25%, 65% { box-shadow: 0 0 0 5px rgba(155, 140, 255, .38); }
}
.conversation-stream,.conversation-compose {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:15px;
    padding:24px
}
.group-compose-divider {
    border-top: 1px solid var(--line);
    margin: 24px 0;
}
.group-create-form select[multiple], .group-member-add select {
    min-height: 96px;
    width: 100%;
}
.message-reactions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 9px;
}
.message-reactions form {
    align-items: center;
    display: flex;
    gap: 3px;
}
.message-reactions button {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 999px;
    cursor: pointer;
    font-size: 15px;
    line-height: 1;
    padding: 3px 5px;
}
.message-reactions button:hover {
    background: #273765;
    border-color: #8f7cff;
}
.reaction-counts {
    color: #c8c4ff;
    font-size: 13px;
}
.conversation-tools, .group-member-add {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}
.conversation-tools {
    color: #aeb9cd;
    font-size: 12px;
    justify-content: space-between;
}
.group-member-add label {
    color: #aeb9cd;
    font-size: 12px;
}
.group-member-add select {
    flex: 1;
    min-height: 38px;
}
.conversation-stream {
    min-height:420px;
    display:flex;
    flex-direction:column;
    gap:12px
}
.chat-bubble {
    align-self:flex-start;
    max-width:min(75%,520px);
    padding:12px 15px;
    border:1px solid var(--line);
    border-radius:15px 15px 15px 4px;
    background:#242431
}
.chat-bubble-own {
    align-self:flex-end;
    border-radius:15px 15px 4px 15px;
    background:#7667e633;
    border-color:#9b8cff55
}
.chat-bubble p {
    margin:0;
    color:#e6e3ec;
    font-size:13px;
    line-height:1.55
}
.chat-bubble time {
    display:block;
    margin-top:6px;
    color:#858292;
    font-size:10px
}
.conversation-compose label {
    display:block;
    margin-bottom:9px;
    color:#aaa7b6;
    font-size:12px
}
.conversation-compose textarea {
    width:100%;
    margin-bottom:13px;
    padding:14px 15px;
    border-radius:8px;
    border:1px solid #363542;
    background:#14141c;
    color:#fff;
    font:14px/1.6 Inter,sans-serif;
    resize:vertical
}
.conversation-compose textarea:focus {
    border-color:var(--violet);
    outline:0;
    box-shadow:0 0 0 3px #9b8cff1c
}
@media(max-width:800px) {
    .conversation-card {
        grid-template-columns:1fr
    }
    .people-search>div {
        display:block
    }
    .people-search input,.people-search .button {
        width:100%;
        margin-bottom:8px
    }
    .chat-bubble {
        max-width:88%
    }
}
.discover-interests {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 0 25px 23px;
}
.discover-interests span {
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--muted);
    font-size: 11px;
    padding: 5px 9px;
}
.profile-location {
    display: block;
    color: var(--muted);
    font-size: 11px;
    margin-top: 8px;
}
.profile-bio {
    border-top: 1px solid var(--line);
    margin-top: 18px;
    padding-top: 18px;
}
.profile-bio > span {
    color: var(--muted);
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.profile-bio p {
    color: var(--text);
    line-height: 1.6;
    margin: 8px 0 0;
}
.profile-editor-hero {
    align-items: center;
    background: linear-gradient(135deg, #272342, #171823);
    border: 1px solid var(--line);
    border-radius: 18px;
    display: flex;
    gap: 18px;
    margin-bottom: 24px;
    padding: 18px;
}
.settings-avatar-wrap {
    flex: 0 0 auto;
    text-align: center;
}
.settings-avatar {
    align-items: center;
    background: linear-gradient(135deg, #b4a7ff, #7769e9);
    border-radius: 18px;
    color: #30293e;
    display: flex;
    font: 700 30px 'Manrope';
    height: 82px;
    justify-content: center;
    overflow: hidden;
    width: 82px;
}
.settings-avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.large-avatar {
    overflow: hidden;
}
.large-avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.discover-profile-image {
    height: 100%;
    object-fit: cover;
    position: absolute;
    width: 100%;
    z-index: 1;
}
.image-upload-button {
    color: var(--violet);
    cursor: pointer;
    display: block;
    font-size: 10px;
    font-weight: 700;
    margin-top: 8px;
}
.profile-editor-hero h3 {
    font: 600 18px 'Manrope';
    margin: 3px 0 6px;
}
.profile-editor-hero p,.field-hint {
    color: var(--muted);
    font-size: 11px;
    line-height: 1.5;
    margin: 0;
}
.about-you-editor {
    background: rgba(255,255,255,.025);
    border: 1px solid var(--line);
    border-radius: 16px;
    margin: 20px 0;
    padding: 20px;
}
.about-you-editor .form-heading {
    margin-bottom: 17px;
}
.about-you-editor .form-heading h2 {
    font-size: 22px;
    margin: 0 0 5px;
}
.about-you-fields {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.field-hint {
    display: block;
    margin-top: 6px;
}
.wallet-reward-button:disabled {
    color: #777587;
    cursor: not-allowed;
    opacity: .75;
}
.wallet-reward-claimed {
    text-decoration: none;
}
.notification-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 16px;
}
.notification-head-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; }
.notification-purge-button { background: transparent; border: 1px solid #75445b; color: #ff9bad; }
.notification-purge-button:hover { background: #7d294033; border-color: #ff7287; color: #fff; }
.notification-filter {
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--muted);
    font-size: 12px;
    padding: 9px 14px;
    text-decoration: none;
    transition: .2s ease;
}
.notification-filter:hover, .notification-filter.is-active {
    background: #786be429;
    border-color: #8f7cff;
    color: #f1efff;
}
.privacy-preference-row select {
    flex: 0 1 170px;
    min-height: 38px !important;
    padding: 8px 30px 8px 10px !important;
}
.privacy-preference-row .text-link {
    flex: 0 0 auto;
}
.conversation-head-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; }
.message-search-form { display: flex; gap: 4px; }
.message-search-form input { max-width: 190px; padding: 10px 12px; }
.message-search-form button { background: #786be429; border: 1px solid var(--line); border-radius: 8px; color: #c5bcff; padding: 0 12px; }
.message-search-results { background: #101e39; border: 1px solid #29466e; border-radius: 12px; display: grid; gap: 8px; margin: 0 auto 14px; max-width: 560px; padding: 12px; }
.message-search-results a { color: inherit; display: grid; gap: 3px; padding: 7px; text-decoration: none; }
.message-search-results a:hover { background: #786be429; border-radius: 7px; }
.message-search-results span { color: var(--muted); font-size: 12px; }
.feature-member-grid, .story-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.story-grid > .empty-message { grid-column: 1 / -1; justify-self: center; text-align: center; width: min(100%, 420px); }
.member-card, .story-card {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 16px;
    min-width: 0;
    overflow: hidden;
    padding: 18px;
}
.member-card-image, .story-avatar {
    align-items: center;
    background: linear-gradient(135deg, #c4b9ff, #7767e7);
    border-radius: 14px;
    color: #272038;
    display: flex;
    font: 700 34px 'Manrope';
    height: 150px;
    justify-content: center;
    text-decoration: none;
}
.member-card-body h3, .story-card h3 { margin: 14px 0 4px; }
.member-card-body p, .story-card p { color: var(--muted); font-size: 12px; line-height: 1.55; }
.story-composer { margin-bottom: 18px; }
.story-composer textarea { margin: 8px 0 14px; }
.story-avatar { border-radius: 50%; height: 54px; width: 54px; }
.story-card form { margin-top: 12px; }
.story-item { border-top: 1px solid var(--line); margin-top: 14px; padding-top: 14px; }
.story-media { border-radius: 12px; display: block; margin-top: 10px; max-height: 260px; max-width: 100%; object-fit: cover; }
.story-reply-form textarea { margin: 8px 0; min-height: 64px !important; }
.story-create-card, .story-list-card { background: linear-gradient(145deg, #17263e, #101d34); border: 1px solid #263e61; border-radius: 10px; margin-bottom: 22px; padding: 26px; }
.story-create-card { display: grid; gap: 22px; grid-template-columns: minmax(0, 1fr) 410px; }
.story-create-form h2, .story-preview h2, .story-list-heading h2 { margin: 0 0 20px; }
.story-textarea-wrap { position: relative; }
.story-textarea-wrap textarea { background: #0c1a32; border-color: #345477; min-height: 138px; padding: 15px; }
.story-textarea-wrap small { bottom: 12px; color: var(--muted); position: absolute; right: 14px; }
.story-create-form h3 { margin: 25px 0 12px; }
.story-create-form h3 small, .story-list-heading p { color: var(--muted); font-size: 12px; font-weight: 400; }
.story-upload-zone { align-items: center; border: 1px dashed #587193; border-radius: 9px; color: #dce7fa; cursor: pointer; display: grid; gap: 4px; max-width: 445px; padding: 20px; }
.story-upload-zone span { font-size: 26px; grid-row: span 2; float: left; margin-right: 10px; }
.story-upload-zone small { color: var(--muted); }
.story-audience-field { margin-top: 18px; max-width: 280px; }
.story-audience-field label { color: var(--muted); display: block; font-size: 12px; margin-bottom: 7px; }
.story-create-actions { align-items: center; display: flex; gap: 18px; margin-top: 22px; }
.story-preview { border: 1px solid #314a6e; border-radius: 9px; padding: 22px; }
.story-preview-card { background: linear-gradient(145deg, #2a374c, #182337); border-radius: 9px; min-height: 330px; padding: 16px; position: relative; }
.story-preview-user { align-items: center; display: flex; gap: 10px; }
.story-preview-user .story-avatar { flex: 0 0 auto; height: 42px; width: 42px; }
.story-preview-user small, .your-story-copy small { color: var(--muted); display: block; font-size: 11px; margin-top: 3px; }
.story-preview-body { align-items: center; display: flex; height: 230px; justify-content: center; overflow: hidden; text-align: center; }
.story-preview-body span { color: #d2d7e2; font-size: 20px; }
.story-preview-body img { height: 100%; max-width: 100%; object-fit: contain; }
.story-publish-button { background: linear-gradient(135deg, #9d8cff, #725fe7); border: 1px solid #b2a7ff; color: #fff; }
.story-clear-button { background: transparent; border: 0; color: #a99dff; cursor: pointer; font: 600 14px 'Inter', sans-serif; padding: 10px 8px; }
.story-clear-button:hover { color: #fff; }
.story-list-heading { align-items: center; display: flex; justify-content: space-between; }.story-list-heading p { margin: -12px 0 20px; }
.story-list-heading select, .your-story-actions select { min-height: 42px; padding: 9px 30px 9px 12px; }
.your-stories-list { display: grid; gap: 10px; }
.your-story-row { align-items: center; background: #0d1b33; border: 1px solid #223b60; border-radius: 9px; display: flex; gap: 18px; padding: 18px 22px; }
.your-story-thumb { align-items: center; background: linear-gradient(135deg, #b6a6ff, #6e5bd5); border-radius: 50%; color: #292142; display: flex; flex: 0 0 auto; height: 48px; justify-content: center; overflow: hidden; width: 48px; }.your-story-thumb img { height: 100%; object-fit: cover; width: 100%; }
.your-story-copy { flex: 1; min-width: 0; }.your-story-copy strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.your-story-actions { align-items: center; display: flex; gap: 10px; }.story-delete-button { background: transparent; border: 1px solid #334b70; border-radius: 7px; color: #ff7181; min-height: 42px; padding: 0 13px; }
.story-list-empty { padding: 45px 20px; text-align: center; }.story-list-empty span { color: #aca2ff; font-size: 28px; }.story-list-empty h3 { margin: 10px 0 5px; }
.message-story-quote { background: rgba(117, 99, 229, .13); border-left: 3px solid #9b8cff; border-radius: 8px; display: grid; gap: 4px; margin: 0 0 10px; max-width: 320px; padding: 9px 12px; }.message-story-quote > span { color: #b8aeff; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.message-story-quote strong { color: #f2f3ff; font-size: 12px; }.message-story-quote p { color: #aebbd0; font-size: 12px; line-height: 1.4; margin: 0; }.message-story-quote img { border-radius: 6px; max-height: 110px; max-width: 100%; object-fit: cover; }
.stories-page select, .stories-page textarea, .stories-page input { background: #0b1931; border-color: #2d4b72; color: #edf3ff; }
.stories-page select option { background: #0b1931; color: #edf3ff; }
.story-view-button { background: transparent; border: 0; color: inherit; cursor: pointer; padding: 0; text-align: left; }
.your-story-copy.story-view-button { display: block; flex: 1; min-width: 0; }
.story-other-view { display: block; width: 100%; }
.story-view-modal[hidden] { display: none; }
.story-view-modal { inset: 0; position: fixed; z-index: 1200; }
.story-view-backdrop { background: rgba(2, 8, 20, .78); inset: 0; position: absolute; backdrop-filter: blur(8px); }
.story-view-dialog { background: linear-gradient(145deg, #1a2b45, #0c172c); border: 1px solid #3a5b85; border-radius: 18px; box-shadow: 0 30px 90px rgba(0, 0, 0, .55); left: 50%; max-height: min(760px, calc(100vh - 40px)); max-width: 520px; overflow: auto; padding: 22px; position: absolute; top: 50%; transform: translate(-50%, -50%); width: min(92vw, 520px); }
.story-view-close { background: #233957; border: 1px solid #45658d; border-radius: 50%; color: #fff; cursor: pointer; font-size: 22px; height: 36px; line-height: 1; position: absolute; right: 18px; top: 18px; width: 36px; }
.story-view-user { align-items: center; display: flex; gap: 12px; }.story-view-user .story-avatar { flex: 0 0 auto; }.story-view-user small { color: #9eafc7; display: block; font-size: 12px; margin-top: 4px; }
.story-view-content { align-items: center; background: #08152a; border: 1px solid #2b456a; border-radius: 12px; display: flex; flex-direction: column; gap: 16px; justify-content: center; margin-top: 20px; min-height: 300px; overflow: hidden; padding: 22px; text-align: center; }.story-view-content p { color: #f2f5ff; font-size: 18px; line-height: 1.55; white-space: pre-wrap; }.story-view-content img { max-height: 520px; max-width: 100%; object-fit: contain; }
body.story-modal-open { overflow: hidden; }
@media (max-width: 900px) { .story-create-card { grid-template-columns: 1fr; }.story-preview { max-width: 410px; width: 100%; } }
@media (max-width: 640px) { .story-create-card, .story-list-card { padding: 16px; }.story-list-heading { align-items: flex-start; flex-direction: column; gap: 12px; }.story-list-heading form, .story-list-heading select { margin-top: 2px; width: 100%; }.your-stories-list { gap: 16px; }.your-story-row { align-items: flex-start; flex-wrap: wrap; gap: 12px 14px; margin-top: 2px; padding: 14px; }.your-story-actions { margin-left: 62px; margin-top: 4px; width: calc(100% - 62px); } }
@media (max-width: 800px) {
    .feature-member-grid, .story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    .profile-editor-hero {
        align-items: flex-start;
        flex-direction: column;
    }
    .about-you-fields {
        grid-template-columns: 1fr;
    }
    .feature-member-grid, .story-grid { grid-template-columns: 1fr; }
    .privacy-preference-row { align-items: flex-start !important; flex-wrap: wrap; }
    .privacy-preference-row > div { flex: 1 1 calc(100% - 48px); }
    .privacy-preference-row select { flex: 1 1 auto; margin-left: 48px; }
}
.like-card-bio {
    line-height: 1.5;
    min-height: 42px;
}
.boost-link {
    color: #f6c15c;
}
.boost-active {
    color: #f6c15c;
    font-size: 11px;
}
.discover-head-actions {
    align-items: center;
    display: flex;
    gap: 18px;
}
.discover-filters {
    align-items: end;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 16px;
    display: flex;
    gap: 12px;
    margin: 24px auto 8px;
    max-width: 720px;
    padding: 14px;
}
/* Reference-inspired member workspace */ body.panel-body {
    background: #030a1b;
    color: #f7f8ff;
}
.member-app-shell {
    display: flex;
    min-height: 100vh;
}
.member-sidebar {
    background: linear-gradient(180deg, #071226 0%, #071022 100%);
    border-right: 1px solid rgba(144, 164, 205, .16);
    display: flex;
    flex: 0 0 248px;
    flex-direction: column;
    min-height: 100vh;
    padding: 22px 16px 16px;
}
.member-brand {
    align-items: center;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 0 8px 26px;
    text-decoration: none;
}
.member-brand img {
    display: block;
    max-width: 218px;
    width: 100%;
}
.member-brand-mark {
    align-items: center;
    background: linear-gradient(135deg, #ff4f83, #7c32e8);
    border-radius: 15px 15px 15px 5px;
    box-shadow: 0 8px 25px #db3d9944;
    display: inline-flex;
    font-size: 24px;
    height: 42px;
    justify-content: center;
    width: 42px;
}
.member-brand small {
    color: #7182ab;
    display: block;
    font: 10px 'Inter';
    letter-spacing: .2px;
    margin-top: 3px;
}
.member-navigation {
    border-top: 1px solid rgba(144, 164, 205, .12);
    padding-top: 20px;
}
.member-nav-label {
    color: #536583;
    display: block;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.4px;
    margin: 18px 12px 8px;
}
.member-nav-link {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 11px;
    color: #aab6ce;
    display: flex;
    font-size: 13px;
    gap: 13px;
    margin: 3px 0;
    padding: 12px 13px;
    text-decoration: none;
    transition: .2s ease;
}
.member-nav-link b {
    color: #8998b5;
    font-size: 17px;
    font-weight: 400;
    text-align: center;
    width: 17px;
}
.member-nav-link:hover {
    background: rgba(100, 92, 190, .14);
    color: #fff;
    transform: translateX(2px);
}
.member-nav-link.active {
    background: linear-gradient(100deg, rgba(239, 53, 123, .22), rgba(119, 46, 222, .23));
    border-color: rgba(241, 70, 143, .45);
    box-shadow: 0 10px 25px #50208e22;
    color: #fff;
}
.member-nav-link.active b {
    color: #ff5d8f;
}
.member-sidebar-promo {
    background: linear-gradient(145deg, #1b1542, #18132f);
    border: 1px solid #5f38a966;
    border-radius: 16px;
    margin: auto 2px 16px;
    padding: 16px;
}
.member-sidebar-promo > span {
    color: #ffb52f;
    font-size: 21px;
}
.member-sidebar-promo strong {
    display: block;
    font: 600 13px 'Manrope';
    margin-top: 10px;
}
.member-sidebar-promo p {
    color: #9ca5c3;
    font-size: 10px;
    line-height: 1.5;
    margin: 6px 0 12px;
}
.member-sidebar-promo a {
    background: linear-gradient(90deg, #f2498b, #823ee4);
    border-radius: 8px;
    color: #fff;
    display: block;
    font-size: 11px;
    padding: 9px;
    text-align: center;
    text-decoration: none;
}
.member-sidebar-account {
    align-items: center;
    border-top: 1px solid rgba(144, 164, 205, .13);
    display: flex;
    gap: 9px;
    padding: 16px 5px 0;
}
.member-sidebar-account > span:nth-child(2) {
    flex: 1;
    min-width: 0;
}
.member-sidebar-profile-link {
    flex: 1;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}
.member-sidebar-profile-link:hover strong { color: #fff; }
.member-sidebar-signout { margin: 12px 5px 0; }
.member-sidebar-signout button {
    width: 100%;
    border: 0;
    background: transparent;
    color: #8b9bbb;
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    padding: 8px 6px;
    text-align: left;
}
.member-sidebar-signout button:hover { color: #fff; background: rgba(144, 164, 205, .1); border-radius: 7px; }
.member-sidebar-account strong,.member-sidebar-account small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.member-sidebar-account strong {
    font-size: 11px;
}
.member-sidebar-account small {
    color: #697b9d;
    font-size: 9px;
    margin-top: 3px;
}
.member-avatar,.member-top-avatar {
    align-items: center;
    background: linear-gradient(135deg, #ffad9b, #a8b8db);
    border: 2px solid #62dfb0;
    border-radius: 50%;
    color: #25253d;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 700;
    height: 34px;
    justify-content: center;
    overflow: hidden;
    width: 34px;
}
.member-avatar img,.member-top-avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.member-sidebar-account button {
    background: none;
    border: 0;
    color: #7586a6;
    cursor: pointer;
    font-size: 16px;
}
.member-main {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}
.member-topbar {
    align-items: center;
    border-bottom: 1px solid rgba(144, 164, 205, .13);
    display: flex;
    gap: 20px;
    justify-content: space-between;
    min-height: 76px;
    padding: 14px clamp(24px, 4vw, 55px);
}
.member-search {
    align-items: center;
    background: #09152b;
    border: 1px solid #1b3154;
    border-radius: 10px;
    color: #bdc7dc;
    display: flex;
    font-size: 17px;
    gap: 11px;
    max-width: 480px;
    padding: 10px 13px;
    width: 100%;
}
.member-search {
    cursor: pointer;
    text-align: left;
}
.member-search:focus-visible {
    border-color: #8b7cff;
    box-shadow: 0 0 0 3px #8b7cff22;
    outline: 0;
}
.global-search-overlay {
    align-items: flex-start;
    background: #020617cc;
    display: flex;
    inset: 0;
    justify-content: center;
    padding: min(15vh, 120px) 20px 30px;
    position: fixed;
    z-index: 1200;
}
.global-search-overlay[hidden] { display: none; }
.global-search-dialog {
    background: linear-gradient(145deg, #111e39, #08142b);
    border: 1px solid #34527e;
    border-radius: 18px;
    box-shadow: 0 24px 80px #0009;
    max-width: 620px;
    padding: 24px;
    width: 100%;
}
.global-search-heading {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin-bottom: 18px;
}
.global-search-heading h2 { font: 600 25px Manrope, sans-serif; margin: 7px 0 0; }
.global-search-close { background: transparent; border: 0; color: #aebbd2; cursor: pointer; font-size: 26px; line-height: 1; }
.global-search-form { align-items: center; background: #071226; border: 1px solid #35547f; border-radius: 11px; display: flex; gap: 10px; padding: 10px 12px; }
.global-search-form > span { color: #b6a9ff; font-size: 18px; }
.global-search-form input { background: transparent; border: 0; color: #f2f5ff; flex: 1; font: 14px Inter, sans-serif; min-width: 0; outline: 0; }
.global-search-submit { background: linear-gradient(135deg, #a99cff, #7565e8); border: 0; border-radius: 8px; color: #fff; cursor: pointer; font: 700 11px Inter, sans-serif; padding: 9px 12px; white-space: nowrap; }
.global-search-submit span { font-size: 15px; margin-left: 5px; }
.global-search-submit:hover { filter: brightness(1.08); }
.global-search-links { display: grid; gap: 8px; grid-template-columns: repeat(3, 1fr); margin-top: 16px; }
.global-search-links a { border: 1px solid #203758; border-radius: 9px; color: #c6d0e3; font-size: 11px; padding: 11px; text-decoration: none; }
.global-search-links a span { color: #a99cff; float: right; }
.global-search-links a:hover { background: #172b4b; border-color: #806df2; }
.member-search span {
    color: #7585a5;
    font-size: 12px;
}
.member-search kbd {
    background: #101f39;
    border: 1px solid #263b5e;
    border-radius: 5px;
    color: #8fa0c0;
    font-size: 10px;
    margin-left: auto;
    padding: 4px 7px;
}
.member-top-actions {
    align-items: center;
    display: flex;
    gap: 13px;
}
.member-boost-button,.member-premium-button {
    border: 1px solid #5333a5;
    border-radius: 9px;
    color: #c39bff;
    font-size: 11px;
    padding: 10px 14px;
    text-decoration: none;
}
.member-premium-button {
    border-color: #73521c;
    color: #f4c35c;
}
.premium-active-cta {
    border-color: #1c8063;
    color: #78e5bd;
}
.member-bell {
    color: #c9d2e4;
    font-size: 20px;
    text-decoration: none;
}
.member-top-avatar {
    height: 36px;
    width: 36px;
}
.member-main > .dashboard {
    max-width: 1600px;
    padding-bottom: 70px;
    padding-top: 38px;
    width: calc(100% - 80px);
}
.member-main .dashboard-head h1 {
    font-size: clamp(29px, 3vw, 43px);
}
.member-main .stat-card,.member-main .dashboard-panel,.member-main .welcome-card,.member-main .form-card,.member-main .settings-list,.member-main .profile-summary,.member-main .notification-card,.member-main .conversation-card,.member-main .connection-card {
    background: linear-gradient(145deg, rgba(11, 26, 50, .96), rgba(7, 16, 34, .96));
    border-color: #1b3151;
    box-shadow: 0 18px 45px #00000020;
}
.stat-mark.pink {
    background: #5e1f56;
    color: #ff6c9d;
}
.stat-mark.orange {
    background: #5c391e;
    color: #ffb34f;
}
.stat-mark.green {
    background: #17463d;
    color: #54e0b0;
}
body.admin-body {
    background: #030a1b;
}
body.admin-body .admin-sidebar {
    background: linear-gradient(180deg, #071226, #071022);
    border-right-color: #1b3151;
}
body.admin-body .admin-sidebar .brand {
    margin-bottom: 45px;
}
body.admin-body .admin-link {
    color: #aab6ce;
}
body.admin-body .admin-link.active,body.admin-body .admin-link:hover {
    background: linear-gradient(100deg, rgba(111, 42, 223, .85), rgba(41, 49, 190, .8));
    color: #fff;
}
body.admin-body .admin-main {
    background: radial-gradient(circle at 75% 0, #14275a44, transparent 34rem), #030a1b;
}
body.admin-body .admin-header {
    border-bottom-color: #1b3151;
}
body.admin-body .admin-stat,body.admin-body .admin-table-card,body.admin-body .admin-form-card,body.admin-body .role-card,body.admin-body .report-card {
    background: linear-gradient(145deg, rgba(11, 26, 50, .96), rgba(7, 16, 34, .96));
    border-color: #1b3151;
}
body.admin-body .admin-stat em {
    color: #7588a9;
    display: block;
    font-size: 10px;
    font-style: normal;
    margin-top: 6px;
}
body.admin-body .admin-stat-grid {
    grid-template-columns: repeat(6, minmax(135px, 1fr));
}
body.admin-body .admin-main > * {
    max-width: none;
}
body.admin-body .admin-page-content > *, body.admin-body .admin-page-content .admin-full-width, body.admin-body .admin-page-content .content-editor-card, body.admin-body .admin-page-content .admin-form-card, body.admin-body .admin-page-content .admin-settings-stack, body.admin-body .admin-page-content .admin-table-card {
    max-width: none;
    width: 100%;
}
body.admin-body .admin-page-content {
    padding-bottom: 48px;
}
.admin-toolbar-row {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 10px 0 18px;
    gap: 18px;
}
.admin-section-title {
    color: #f4f5fa;
    font: 600 24px/1.2 Manrope, sans-serif;
    margin: 0;
}
.admin-role-directory {
    display: grid;
    gap: 14px;
}
.admin-role-card {
    align-items: center;
    background: linear-gradient(145deg, rgba(11,26,50,.96), rgba(7,16,34,.96));
    border: 1px solid #1b3151;
    border-radius: 16px;
    display: flex;
    gap: 16px;
    min-height: 94px;
    padding: 18px 22px;
}
.admin-role-card-icon {
    align-items: center;
    background: linear-gradient(135deg, #8d76ff, #3f42c8);
    border-radius: 13px;
    color: white;
    display: grid;
    flex: 0 0 44px;
    font-weight: 700;
    height: 44px;
    place-items: center;
}
.admin-role-card-copy {
    flex: 1;
    min-width: 0;
}
.admin-role-card-top {
    align-items: center;
    display: flex;
    gap: 10px;
}
.admin-role-card h3 {
    color: #f5f6fb;
    font: 600 16px Manrope, sans-serif;
    margin: 0;
}
.admin-role-card p {
    color: #8998b1;
    font-size: 12px;
    margin: 5px 0;
}
.admin-role-card small {
    color: #667995;
    font-family: monospace;
    font-size: 11px;
}
.admin-role-card-actions {
    align-items: center;
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
}
.admin-role-card-actions form {
    margin: 0;
}
.button-ghost {
    background: transparent;
    border: 1px solid #2a4468;
    box-shadow: none;
    color: #b8b5ff;
}
.button-danger {
    background: linear-gradient(135deg, #b84964, #812c49);
    border-color: #df6b82;
    color: #fff;
}
.role-editor-card {
    padding: clamp(22px, 4vw, 42px);
}
.full-field {
    grid-column: 1 / -1;
}
.permission-editor-heading {
    align-items: baseline;
    border-top: 1px solid #1b3151;
    display: flex;
    gap: 12px;
    margin-top: 24px;
    padding-top: 24px;
}
.permission-editor-heading h3 {
    color: #f4f5fa;
    font: 600 18px Manrope, sans-serif;
    margin: 0;
}
.permission-editor-heading span {
    color: #71829d;
    font-size: 12px;
}
.permission-grid-large {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 14px;
}
.activity-card {
    padding: clamp(18px, 2.4vw, 30px);
}
.activity-pagination {
    align-items: center;
    border-top: 1px solid #1b3151;
    display: flex;
    justify-content: space-between;
    margin-top: 5px;
    padding-top: 18px;
}
.activity-pagination span {
    color: #8292ac;
    font-size: 12px;
}
.activity-pagination > div {
    display: flex;
    gap: 12px;
}
.activity-pagination button {
    min-width: 104px;
}
.activity-pagination button:disabled {
    cursor: not-allowed;
    opacity: .4;
}
.table-scroll {
    overflow-x: auto;
}
.account-hero {
    align-items: center;
    border-bottom: 1px solid #1b3151;
    display: flex;
    gap: 16px;
    margin-bottom: 28px;
    padding-bottom: 26px;
}
.account-avatar {
    font-size: 20px;
    height: 58px;
    width: 58px;
}
.account-hero h2 {
    color: #f4f5fa;
    font: 600 24px Manrope, sans-serif;
    margin: 0 0 3px;
}
.account-hero p {
    color: #8292ac;
    margin: 0;
}
.chatbuddy-confirm-overlay {
    align-items: center;
    background: #030817b8;
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 20px;
    position: fixed;
    z-index: 10000;
}
.chatbuddy-confirm-modal {
    background: linear-gradient(145deg, #0d1d38, #071226);
    border: 1px solid #29466e;
    border-radius: 18px;
    box-shadow: 0 24px 80px #000b;
    max-width: 430px;
    padding: 30px;
    width: 100%;
}
.chatbuddy-confirm-icon {
    align-items: center;
    background: #f09c6f22;
    border: 1px solid #f09c6f88;
    border-radius: 50%;
    color: #ffbb8d;
    display: grid;
    font-weight: 700;
    height: 38px;
    place-items: center;
    width: 38px;
}
.chatbuddy-confirm-modal h2 {
    color: #f5f7fb;
    font: 600 22px Manrope, sans-serif;
    margin: 18px 0 8px;
}
.chatbuddy-confirm-modal p {
    color: #9baac0;
    font-size: 13px;
    line-height: 1.6;
    margin: 0 0 24px;
}
.chatbuddy-confirm-actions {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}
.chatbuddy-confirm-actions button {
    margin: 0;
}
@media (max-width: 900px) {
    .permission-grid-large {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .admin-role-card {
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .admin-role-card-actions {
        margin-left: 60px;
    }
}
@media (max-width: 600px) {
    .admin-toolbar-row {
        align-items: flex-start;
        flex-direction: column;
    }
    .permission-grid-large {
        grid-template-columns: 1fr;
    }
    .admin-role-card-actions {
        margin-left: 0;
        width: 100%;
    }
    .admin-role-card-actions .button,
    .admin-role-card-actions form,
    .admin-role-card-actions form .button { width: 100%; }
    .admin-role-card { gap: 12px; padding: 16px; }
    .admin-role-card-copy { flex-basis: calc(100% - 60px); }
    .admin-role-card-top { align-items: flex-start; flex-direction: column; gap: 6px; }
    .activity-pagination {
        align-items: flex-start;
        flex-direction: column;
        gap: 14px;
    }
}
@media (max-width: 1100px) {
    .member-sidebar {
        flex-basis: 214px;
    }
    .member-main > .dashboard {
        width: calc(100% - 48px);
    }
    body.admin-body .admin-stat-grid {
        grid-template-columns: repeat(3, minmax(140px, 1fr));
    }
}
@media (max-width: 800px) {
    .member-sidebar {
        flex-basis: 70px;
        padding: 18px 9px;
    }
    .member-brand {
        justify-content: center;
        padding: 0 0 22px;
    }
    .member-brand img {
        height: 38px;
        object-fit: cover;
        object-position: left;
        width: 38px;
    }
    .member-brand > span:last-child,.member-nav-label,.member-nav-link span,.member-sidebar-promo,.member-sidebar-account > span:nth-child(2),.member-sidebar-account form,.member-sidebar-profile-link,.member-sidebar-signout {
        display: none;
    }
    .member-nav-link {
        justify-content: center;
        padding: 12px 5px;
    }
    .member-nav-link b {
        width: auto;
    }
    .member-sidebar-account {
        justify-content: center;
    }
    .member-topbar {
        padding: 12px 18px;
    }
    .member-search {
        max-width: 210px;
    }
    .member-search span,.member-search kbd,.member-boost-button span,.member-premium-button span {
        display: none;
    }
    .member-boost-button,.member-premium-button {
        padding: 9px;
    }
    .member-main > .dashboard {
        width: calc(100% - 30px);
    }
}
@media (max-width: 560px) {
    .member-top-actions {
        gap: 7px;
    }
    .member-premium-button {
        display: none;
    }
    .member-main > .dashboard {
        padding-top: 24px;
    }
}
.discover-filters .field {
    flex: 1;
    margin: 0;
}
.discover-filters .field label {
    font-size: 10px;
}
.discover-filters .button {
    flex: 0 0 auto;
}
.discover-clear {
    align-items:center;
    align-self:center;
    display:inline-flex;
    flex:0 0 auto;
    gap:7px;
    min-height:42px;
    padding:0 12px;
    border:1px solid #29466e;
    border-radius:9px;
    color:#b9c8df;
    font-size:12px;
    text-decoration:none;
    transition:background .2s ease,border-color .2s ease,color .2s ease
}
.discover-clear span {
    color:#ff9aaa;
    font-size:18px;
    line-height:1
}
.discover-clear:hover {
    background:#172746;
    border-color:#8b7cff;
    color:#fff
}
.discover-profile-navigation {
    align-items:center;
    display:flex;
    gap:10px;
    justify-content:center;
    margin:20px auto 10px
}
.discover-profile-navigation form {
    margin:0
}
.discover-nav-button {
    align-items:center;
    background:#0b1730;
    border:1px solid #29466e;
    border-radius:999px;
    color:#c5d1e7;
    cursor:pointer;
    display:inline-flex;
    font:600 12px/1 Inter,sans-serif;
    gap:8px;
    min-height:38px;
    padding:0 16px;
    transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease
}
.discover-nav-button:hover:not(:disabled) {
    background:#172746;
    border-color:#8b7cff;
    color:#fff;
    transform:translateY(-1px)
}
.discover-nav-button:disabled {
    cursor:not-allowed;
    opacity:.38
}
.discover-nav-button span {
    color:#a99cff;
    font-size:17px
}
body.panel-body textarea, body.panel-body select {
    appearance: none;
    background: #0b1730 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%23b9c8df' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 13px center;
    border: 1px solid #29466e;
    border-radius: 9px;
    color: #edf3ff;
    font: 14px/1.6 Inter,sans-serif;
    outline: none;
}
body.panel-body select {
    cursor: pointer;
    min-height: 46px;
    padding: 11px 42px 11px 14px;
    width: 100%;
}
body.panel-body select option {
    background: #101e39;
    color: #edf3ff;
}
body.panel-body select[multiple] {
    background-image: none;
    padding-right: 14px;
}
body.panel-body textarea:focus, body.panel-body select:focus {
    border-color: #8f7cff;
    box-shadow: 0 0 0 3px #8f7cff22;
}
.settings-route-card {
    align-items: center;
    border-bottom: 1px solid var(--line);
    color: inherit;
    display: flex;
    gap: 13px;
    padding: 22px 0;
    text-decoration: none;
}
.settings-route-card > div {
    flex: 1;
}
.settings-route-card > span:last-child {
    color: #aaa0ff;
    font-size: 20px;
}
.settings-route-card:hover strong {
    color: #c5bcff;
}
.settings-list > .settings-security-card {
    background: rgba(255,255,255,.025);
    border: 1px solid var(--line);
    border-radius: 16px;
    display: block !important;
    align-items: initial;
    border-bottom: 0;
    gap: 0;
    margin: 20px 0;
    padding: 20px;
    box-shadow: none;
}
.settings-security-card .form-heading {
    margin-bottom: 17px;
}
.settings-security-card .form-heading h2 {
    font-size: 22px;
    margin: 0 0 5px;
}
.kyc-page-card {
    max-width: none;
    width: 100%;
}
.profile-verification-link {
    align-items: center;
    background: #0b1730;
    border: 1px solid #29466e;
    border-radius: 12px;
    color: inherit;
    display: flex;
    gap: 11px;
    margin-top: 24px;
    padding: 13px;
    text-decoration: none;
}
.profile-verification-link > span {
    align-items: center;
    background: #786be429;
    border-radius: 9px;
    color: #aca2ff;
    display: inline-flex;
    height: 32px;
    justify-content: center;
    width: 32px;
}
.profile-verification-link div {
    flex: 1;
}
.profile-verification-link strong, .profile-verification-link small {
    display: block;
}
.profile-verification-link strong {
    color: #edf3ff;
    font-size: 12px;
}
.profile-verification-link small {
    color: #8fa0bd;
    font-size: 10px;
    margin-top: 4px;
}
.profile-verification-link b {
    color: #aaa0ff;
    font-size: 18px;
}
.profile-verification-link:hover {
    border-color: #8f7cff;
}
@media (min-width: 641px) and (max-width: 800px) {
    .settings-grid {
        gap: 14px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
    .settings-list {
        padding: 10px 14px;
    }
    .settings-security-card {
        padding: 18px;
    }
}
@media (min-width: 801px) {
    .settings-grid {
        align-items: start;
        gap: 22px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}
body.panel-body textarea {
    min-height: 130px;
    padding: 13px 15px;
    resize: none;
    width: 100%;
}
textarea { resize: none; }
body.panel-body textarea::placeholder, body.panel-body input::placeholder {
    color: #7183a2;
}

/* Settings privacy controls: keep native controls inside the dark design system. */
body.panel-body .privacy-preference-row {
    align-items: center;
    display: grid;
    gap: 13px;
    grid-template-columns: 36px minmax(0, 1fr) minmax(170px, 200px) auto;
}
body.panel-body .privacy-preference-row > div {
    min-width: 0;
}
body.panel-body .privacy-preference-row select,
body.panel-body .privacy-preference-row select:focus {
    appearance: none;
    background-color: #0b1932;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23aebbe0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-position: right 11px center;
    background-repeat: no-repeat;
    background-size: 14px;
    border: 1px solid #31547f;
    border-radius: 9px;
    color: #eef2ff;
    color-scheme: dark;
    cursor: pointer;
    min-width: 0;
    outline: none;
}
body.panel-body .privacy-preference-row select option {
    background: #0b1932;
    color: #eef2ff;
}
body.panel-body .privacy-preference-row button.text-link {
    align-items: center;
    background: linear-gradient(135deg, #8e7df5, #6e5ae5);
    border: 1px solid #aa9eff;
    border-radius: 8px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font: 600 12px/1 'Inter', sans-serif;
    justify-content: center;
    min-height: 38px;
    padding: 0 15px;
    text-decoration: none;
    transition: filter .18s ease, transform .18s ease;
}
body.panel-body .privacy-preference-row button.text-link:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

/* Security center cards need deliberate rhythm on wide and narrow layouts. */
body.admin-body .admin-settings-stack > .admin-table-card {
    padding: clamp(22px, 3vw, 34px);
}
body.admin-body .admin-settings-stack > .admin-table-card .form-heading {
    margin-bottom: 24px;
}
body.admin-body .admin-settings-stack > .admin-table-card .form-heading h2 {
    margin: 5px 0 8px;
}
body.admin-body .admin-settings-stack .settings-form-grid-wide {
    gap: 22px 26px;
    margin-top: 22px;
}
body.admin-body .admin-settings-stack .security-network-grid {
    margin-top: 26px;
}
body.admin-body .admin-settings-stack .field {
    min-width: 0;
}
body.admin-body .admin-settings-stack .field-hint {
    margin-top: 8px;
}
body.admin-body .admin-settings-stack .email-option {
    min-width: 0;
}
body.admin-body .admin-settings-stack .admin-alert {
    margin: 0;
    padding: 15px 18px;
}
body.admin-body .admin-settings-stack .settings-link-card {
    align-items: center;
    display: flex;
    gap: 24px;
    justify-content: space-between;
}
body.admin-body .admin-settings-stack .settings-link-card > div {
    min-width: 0;
}
body.admin-body .admin-settings-stack .settings-link-card .button {
    flex: 0 0 auto;
    white-space: nowrap;
}
body.admin-body .realtime-provider-card form { align-items: center; display: flex; flex: 0 0 auto; gap: 10px; }
body.admin-body .realtime-provider-card .admin-select { min-width: 155px; }
body.admin-body .admin-settings-stack .admin-form-actions {
    padding-top: 4px;
}

@media (max-width: 700px) {
    body.panel-body .privacy-preference-row {
        align-items: start;
        grid-template-columns: 36px minmax(0, 1fr);
    }
    body.panel-body .privacy-preference-row select,
    body.panel-body .privacy-preference-row button.text-link {
        grid-column: 2;
        margin: 0;
        width: 100%;
    }
    body.panel-body .privacy-preference-row button.text-link {
        width: fit-content;
    }
    body.admin-body .admin-settings-stack > .admin-table-card {
        padding: 20px 16px;
    }
    body.admin-body .admin-settings-stack .settings-link-card {
        align-items: stretch;
        flex-direction: column;
        gap: 16px;
    }
    body.admin-body .admin-settings-stack .settings-link-card .button {
        align-self: flex-start;
    }
    body.admin-body .realtime-provider-card form { align-items: stretch; flex-direction: column; gap: 14px; width: 100%; }
    body.admin-body .realtime-provider-card .admin-select,
    body.admin-body .realtime-provider-card .button { width: 100%; }
    body.admin-body .realtime-provider-card .button { margin-top: 2px; }
}
body.panel-body textarea:focus, body.panel-body select:focus {
    border-color: #8b7cff;
    box-shadow: 0 0 0 3px #8b7cff1f;
}

/* Textareas are not dropdowns; never render the select chevron inside them. */
textarea {
    appearance: none;
    background-image: none !important;
}

.about-you-editor textarea {
    background: #08152b;
    border-color: #203b63;
    color: #f2f5ff;
}
.discover-filters input {
    background: #0b1730;
    border-color: #29466e;
    color: #edf3ff;
}
.discover-filters select {
    background: #0b1730;
}
@media (max-width: 640px) {
    .discover-head-actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }
    .discover-filters {
        align-items: stretch;
        flex-direction: column;
    }
    .discover-secondary-actions {
        align-items: stretch;
        flex-wrap: wrap;
    }
}
.member-dashboard {
    margin: 0 auto;
    max-width: 1420px;
    padding: 38px 44px 70px;
}
.member-greeting {
    align-items: center;
    display: flex;
    gap: 12px;
    margin-bottom: 28px;
}
.member-greeting > div {
    flex: 1;
}
.member-overline {
    color: #8394b5;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.7px;
}
.member-greeting h1 {
    font: 700 clamp(25px, 2.8vw, 37px) 'Manrope';
    letter-spacing: -1.4px;
    margin: 8px 0 3px;
}
.member-greeting h1 span {
    font-size: .72em;
}
.member-greeting p {
    color: #aab5ca;
    font-size: 13px;
    margin: 0;
}
.member-dashboard-boost,.member-dashboard-premium {
    background: #241755;
    border: 1px solid #6547ac;
    border-radius: 9px;
    color: #c69aff;
    font-size: 12px;
    padding: 12px 18px;
    text-decoration: none;
}
.member-dashboard-premium {
    background: #241e14;
    border-color: #6d5023;
    color: #f0c265;
}
.member-dashboard-premium.premium-active-cta {
    background: #102e2a;
    border-color: #1c8063;
    color: #78e5bd;
}
.member-stat-row {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 20px;
}
.member-stat-card {
    align-items: center;
    background: linear-gradient(145deg, #0b1a33, #071226);
    border: 1px solid #1b3151;
    border-radius: 12px;
    color: inherit;
    display: flex;
    gap: 14px;
    min-height: 122px;
    padding: 18px;
    text-decoration: none;
}
.member-stat-card > span:nth-child(2) {
    flex: 1;
}
.member-stat-card > b {
    color: #b5c3dd;
    font-size: 24px;
    font-weight: 300;
}
.member-stat-card small,.member-stat-card strong,.member-stat-card em {
    display: block;
}
.member-stat-card small {
    color: #bdc7db;
    font-size: 12px;
}
.member-stat-card strong {
    font: 700 28px 'Manrope';
    margin: 5px 0 4px;
}
.member-stat-card em {
    color: #4ee7b1;
    font-size: 10px;
    font-style: normal;
}
.member-stat-icon {
    align-items: center;
    border-radius: 50%;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 24px;
    height: 48px;
    justify-content: center;
    width: 48px;
}
.member-stat-pink {
    background: #e83e7744;
    color: #ff6395;
}
.member-stat-purple {
    background: #7135d966;
    color: #be7cff;
}
.member-stat-blue {
    background: #1d6ee966;
    color: #77a9ff;
}
.member-stat-orange {
    background: #f1843944;
    color: #ffad5d;
}
.member-dashboard-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 2fr) minmax(290px, 1fr);
}
.member-dashboard-card {
    background: linear-gradient(145deg, #0b1a33, #071226);
    border: 1px solid #1b3151;
    border-radius: 13px;
    min-width: 0;
    padding: 21px;
}
.member-card-heading {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 17px;
}
.member-card-heading h2,.member-completion-card h2 {
    font: 600 17px 'Manrope';
    margin: 0;
}
.member-card-heading a {
    color: #a990ff;
    font-size: 11px;
    text-decoration: none;
}
.member-recommendation-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.member-recommendation-card {
    background: #071226;
    border: 1px solid #1b3151;
    border-radius: 10px;
    min-width: 0;
    overflow: hidden;
}
.member-recommendation-image {
    background: linear-gradient(145deg, #443f65, #a16f79);
    height: 278px;
    overflow: hidden;
    position: relative;
}
.member-recommendation-image img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.member-recommendation-image > span:not(.member-online-dot) {
    align-items: center;
    color: #fff;
    display: flex;
    font: 700 72px 'Manrope';
    height: 100%;
    justify-content: center;
    width: 100%;
}
.member-online-dot {
    background: #22352fdd;
    border-radius: 99px;
    color: #5ee2ad;
    font-size: 10px;
    padding: 5px 8px;
    position: absolute;
    right: 8px;
    top: 8px;
}
.member-recommendation-info {
    padding: 12px;
}
.member-recommendation-info strong,.member-recommendation-info small {
    display: block;
}
.member-recommendation-info strong {
    font: 600 15px 'Manrope';
}
.member-recommendation-info small {
    color: #9aa9c2;
    font-size: 10px;
    margin-top: 4px;
}
.member-recommendation-info > div {
    display: flex;
    gap: 9px;
    margin-top: 12px;
}
.member-recommendation-info form {
    flex: 1;
}
.member-recommendation-info button {
    border: 0;
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    font-size: 19px;
    height: 34px;
    width: 34px;
}
.member-swipe-pass {
    background: #8f2c45;
}
.member-swipe-super {
    background: #1454a9;
}
.member-swipe-like {
    background: #15966e;
}
.member-completion-card {
    text-align: center;
}
.completion-ring {
    align-items: center;
    background: conic-gradient(#db4caa var(--completion), #37204f 0);
    border-radius: 50%;
    display: flex;
    height: 128px;
    justify-content: center;
    margin: 20px auto 14px;
    position: relative;
    width: 128px;
}
.completion-ring:after {
    background: #09152b;
    border-radius: 50%;
    content: '';
    height: 100px;
    position: absolute;
    width: 100px;
}
.completion-ring strong {
    font: 700 25px 'Manrope';
    position: relative;
    z-index: 1;
}
.member-completion-card > p {
    color: #a7b1c6;
    font-size: 11px;
    line-height: 1.5;
    margin: 0 auto 18px;
    max-width: 230px;
}
.member-completion-card ul {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
    text-align: left;
}
.member-completion-card li {
    color: #b7c0d3;
    font-size: 11px;
    padding: 7px 0 7px 20px;
    position: relative;
}
.member-completion-card li:before {
    color: #76849f;
    content: '○';
    left: 0;
    position: absolute;
}
.member-completion-card li.done:before {
    color: #54ddaa;
    content: '✓';
}
.member-gradient-button,.member-boost-banner a {
    background: linear-gradient(90deg, #f24c91, #813ce7);
    border-radius: 8px;
    color: #fff;
    display: block;
    font-size: 11px;
    padding: 11px;
    text-decoration: none;
}
.member-dashboard-lower {
    margin-top: 18px;
}
.member-match-strip {
    display: flex;
    gap: 22px;
    overflow: hidden;
}
.member-match-strip a {
    color: #e9edf8;
    min-width: 65px;
    text-align: center;
    text-decoration: none;
}
.member-match-avatar {
    align-items: center;
    background: linear-gradient(145deg, #ba8094, #5b7398);
    border: 2px solid #31c692;
    border-radius: 50%;
    display: flex;
    height: 58px;
    justify-content: center;
    margin: 0 auto 7px;
    overflow: hidden;
    width: 58px;
}
.member-match-avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.member-match-strip strong,.member-match-strip small {
    display: block;
    font-size: 10px;
    white-space: nowrap;
}
.member-match-strip small {
    color: #50d9a6;
    font-size: 9px;
    margin-top: 4px;
}
.member-activity-item {
    align-items: center;
    border-bottom: 1px solid #1b3151;
    color: #e5eafa;
    display: flex;
    gap: 12px;
    padding: 10px 0;
    text-decoration: none;
}
.member-activity-item:last-child {
    border: 0;
}
.member-activity-item > span {
    align-items: center;
    background: #632357;
    border-radius: 50%;
    color: #ff6b9f;
    display: flex;
    height: 32px;
    justify-content: center;
    width: 32px;
}
.member-activity-item strong,.member-activity-item small {
    display: block;
}
.member-activity-item strong {
    font-size: 11px;
}
.member-activity-item small {
    color: #8798b7;
    font-size: 9px;
    margin-top: 4px;
}
.member-mini-empty {
    color: #8393b1;
    font-size: 11px;
    padding: 18px 0;
}
.member-boost-banner {
    align-items: center;
    background: linear-gradient(100deg, #241657, #17133d);
    border: 1px solid #5a3b99;
    border-radius: 13px;
    display: flex;
    gap: 16px;
    margin-top: 18px;
    padding: 17px 22px;
}
.member-boost-banner > span {
    align-items: center;
    background: #54219a;
    border-radius: 50%;
    color: #f09cff;
    display: flex;
    font-size: 25px;
    height: 46px;
    justify-content: center;
    width: 46px;
}
.member-boost-banner div {
    flex: 1;
}
.member-boost-banner strong {
    font: 600 15px 'Manrope';
}
.member-boost-banner p {
    color: #aeb4cf;
    font-size: 11px;
    margin: 5px 0 0;
}
.member-boost-banner a {
    padding: 11px 20px;
}
@media (max-width: 1000px) {
    .member-stat-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .member-recommendation-image {
        height: 220px;
    }
}
@media (max-width: 700px) {
    .member-dashboard {
        padding: 25px 0 50px;
    }
    .member-greeting {
        flex-wrap: wrap;
    }
    .member-dashboard-boost,.member-dashboard-premium {
        padding: 9px 12px;
    }
    .member-dashboard-grid {
        grid-template-columns: 1fr;
    }
    .member-recommendation-grid {
        grid-template-columns: 1fr;
    }
    .member-recommendation-image {
        height: 230px;
    }
    .member-boost-banner {
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .member-boost-banner a {
        margin-left: 62px;
    }
}
.admin-reference-toolbar {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin: -10px 0 26px;
}
.admin-search-box {
    align-items: center;
}
.admin-search-box input {
    background: transparent;
    border: 0;
    color: #dce5f5;
    flex: 1;
    font: 12px Inter,sans-serif;
    min-width: 0;
    outline: 0;
}
.admin-search-box input::placeholder {
    color: #8394b2;
}
.admin-search-icon {
    color: #a9b7d1;
    font-size: 16px;
}
.admin-date-filter {
    position: relative;
}
.admin-date-filter summary {
    align-items: center;
    background: #081832;
    border: 1px solid #29466e;
    border-radius: 9px;
    color: #d7e1f1;
    cursor: pointer;
    font-size: 12px;
    list-style: none;
    padding: 12px 14px;
    white-space: nowrap;
}
.admin-date-filter summary::-webkit-details-marker {
    display: none;
}
.admin-date-menu {
    background: #0b1b34;
    border: 1px solid #29466e;
    border-radius: 10px;
    box-shadow: 0 18px 40px #0008;
    display: grid;
    min-width: 150px;
    padding: 6px;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 20;
}
.admin-date-menu a {
    border-radius: 6px;
    color: #b9c8df;
    font-size: 11px;
    padding: 10px;
    text-decoration: none;
}
.admin-date-menu a:hover {
    background: #7667e426;
    color: #fff;
}
.admin-search-box,.admin-date-chip {
    align-items: center;
    background: #09152b;
    border: 1px solid #1b3151;
    border-radius: 9px;
    color: #b8c5dc;
    display: flex;
    font-size: 17px;
    gap: 10px;
    padding: 10px 13px;
}
.admin-search-box {
    max-width: 470px;
    width: 100%;
}
.admin-search-box span {
    color: #7f91b1;
    font-size: 12px;
}
.admin-search-box kbd {
    background: #101f39;
    border: 1px solid #263b5e;
    border-radius: 5px;
    color: #8fa0c0;
    font-size: 10px;
    margin-left: auto;
    padding: 4px 7px;
}
.admin-date-chip {
    color: #e3e8f4;
    font-size: 12px;
}
.admin-reference-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(6, minmax(140px, 1fr));
    margin: 12px 0 18px;
}
.admin-reference-stats > div {
    background: linear-gradient(145deg, #0b1a33, #071226);
    border: 1px solid #1b3151;
    border-radius: 11px;
    min-height: 145px;
    padding: 16px;
}
.admin-reference-stats small,.admin-reference-stats strong,.admin-reference-stats em {
    display: block;
}
.admin-reference-stats small {
    color: #b7c3d8;
    font-size: 11px;
    margin-top: 12px;
}
.admin-reference-stats strong {
    font: 700 23px 'Manrope';
    margin: 5px 0;
}
.admin-reference-stats em {
    color: #50d8a8;
    font-size: 9px;
    font-style: normal;
}
.admin-ref-icon {
    align-items: center;
    border-radius: 50%;
    display: flex;
    font-size: 20px;
    height: 38px;
    justify-content: center;
    width: 38px;
}
.admin-ref-icon.purple {
    background: #5130af;
}
.admin-ref-icon.blue {
    background: #195eb4;
}
.admin-ref-icon.pink {
    background: #8f205e;
}
.admin-ref-icon.orange {
    background: #80451a;
}
.admin-ref-icon.green {
    background: #176c50;
}
.admin-ref-icon.cyan {
    background: #075c89;
}
.admin-reference-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: 1.7fr 1fr 1fr;
}
.admin-reference-card {
    background: linear-gradient(145deg, #0b1a33, #071226);
    border: 1px solid #1b3151;
    border-radius: 12px;
    min-width: 0;
    padding: 19px;
}
.admin-ref-heading {
    align-items: center;
    display: flex;
    justify-content: space-between;
}
.admin-ref-heading h2 {
    font: 600 16px 'Manrope';
    margin: 0;
}
.admin-ref-heading a,.admin-ref-heading > span {
    color: #ab92ff;
    font-size: 10px;
    text-decoration: none;
}
.admin-chart-legend {
    color: #b7c3da;
    font-size: 10px;
    margin: 17px 0 2px;
    text-align: right;
}
.admin-chart-legend i {
    border-radius: 50%;
    display: inline-block;
    height: 7px;
    margin: 0 5px 0 12px;
    width: 7px;
}
.purple-dot {
    background: #a363ed;
}
.pink-dot {
    background: #ef3e91;
}
.blue-dot {
    background: #3b81f3;
}
.admin-growth-chart {
    background: repeating-linear-gradient(to bottom, transparent 0, transparent 42px, #1a3152 43px);
    height: 176px;
    margin: 8px 0 0 32px;
    overflow: hidden;
    position: relative;
}
.chart-y {
    color: #7185aa;
    font-size: 9px;
    left: -31px;
    position: absolute;
}
.chart-y:nth-child(1) {
    top: 0;
}
.chart-y:nth-child(2) {
    top: 42px;
}
.chart-y:nth-child(3) {
    top: 84px;
}
.chart-y:nth-child(4) {
    top: 126px;
}
.chart-y:nth-child(5) {
    bottom: 0;
}
.growth-line {
    border-radius: 50%;
    display: block;
    height: 14px;
    position: absolute;
    transform: rotate(-7deg);
    width: 115%;
}
.growth-line.active {
    border-top: 3px solid #ed3d91;
    box-shadow: 0 10px 25px #ed3d9155;
    left: -2%;
    top: 70px;
}
.growth-line.new {
    border-top: 2px solid #9d61ea;
    left: -1%;
    top: 125px;
}
.admin-chart-axis {
    color: #7185aa;
    display: flex;
    font-size: 8px;
    justify-content: space-between;
    margin: 9px 0 0 32px;
}
.admin-demographics {
    text-align: center;
}
.admin-donut {
    align-items: center;
    background: conic-gradient(#327df2 0 49%, #e73591 49% 97%, #9a5ee6 97%);
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    height: 150px;
    justify-content: center;
    margin: 20px auto 12px;
    position: relative;
    width: 150px;
}
.admin-donut:after {
    background: #09152b;
    border-radius: 50%;
    content: '';
    height: 106px;
    position: absolute;
    width: 106px;
}
.admin-donut strong,.admin-donut small {
    position: relative;
    z-index: 1;
}
.admin-donut strong {
    font: 700 20px 'Manrope';
}
.admin-donut small {
    color: #91a0ba;
    font-size: 9px;
    margin-top: 4px;
}
.admin-demo-legend {
    display: grid;
    gap: 8px;
    text-align: left;
}
.admin-demo-legend span {
    color: #b9c4d8;
    font-size: 10px;
}
.admin-demo-legend i {
    border-radius: 50%;
    display: inline-block;
    height: 7px;
    margin-right: 5px;
    width: 7px;
}
.admin-demo-legend b {
    color: #eaf0fd;
    float: right;
}
.admin-country-row {
    align-items: center;
    border-bottom: 1px solid #1b3151;
    color: #c0cadd;
    display: flex;
    font-size: 10px;
    justify-content: space-between;
    padding: 13px 0;
}
.admin-country-row b {
    color: #eef2fa;
}
.admin-country-row small {
    color: #8e9cb7;
}
.admin-reference-link {
    color: #a68cff;
    display: block;
    font-size: 10px;
    margin-top: 15px;
    text-align: center;
    text-decoration: none;
}
.admin-reference-bottom {
    grid-template-columns: 1.7fr 1fr;
    margin-top: 16px;
}
.admin-tab-row {
    display: flex;
    gap: 8px;
    margin: 16px 0 8px;
}
.admin-tab-row span {
    border: 1px solid #203758;
    border-radius: 6px;
    color: #8b9bb8;
    font-size: 10px;
    padding: 7px 12px;
}
.admin-tab-row span.active {
    background: #5432b2;
    color: #fff;
}
.admin-recent-users table {
    width: 100%;
}
.admin-recent-users th {
    color: #7f91ae;
    font-size: 9px;
    text-align: left;
}
.admin-recent-users td {
    color: #c7d0e1;
    font-size: 10px;
    padding: 10px 5px;
}
.admin-recent-users td strong {
    margin-left: 7px;
}
.admin-online-pill {
    color: #53dbaa;
    font-size: 9px;
    font-style: normal;
}
.admin-flag-row {
    align-items: center;
    border-bottom: 1px solid #1b3151;
    display: flex;
    gap: 10px;
    padding: 13px 0;
}
.admin-flag-row span {
    color: #ff7b67;
    font-size: 18px;
}
.admin-flag-row strong {
    color: #c2ccde;
    flex: 1;
    font-size: 10px;
}
.admin-flag-row b {
    font-size: 13px;
}
.admin-quick-actions {
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr 1fr;
    margin-top: 17px;
}
.admin-quick-actions a {
    border: 1px solid #203758;
    border-radius: 7px;
    color: #b9c4d8;
    font-size: 9px;
    padding: 10px 7px;
    text-align: center;
    text-decoration: none;
}
.admin-quick-actions a:hover {
    background: #172b4b;
}
@media (max-width: 1200px) {
    .admin-reference-stats {
        grid-template-columns: repeat(3, minmax(140px, 1fr));
    }
    .admin-reference-grid {
        grid-template-columns: 1fr 1fr;
    }
    .admin-growth-card {
        grid-column: span 2;
    }
}
.admin-reference-bottom {
    grid-template-columns: 1.5fr 1fr;
}
@media (max-width: 700px) {
    .member-dashboard {
        padding: 25px 0 50px;
    }
    .member-stat-row {
        grid-template-columns: 1fr;
    }
    .member-greeting {
        flex-wrap: wrap;
    }
    .member-dashboard-grid,.admin-reference-grid,.admin-reference-bottom {
        grid-template-columns: 1fr;
    }
    .admin-growth-card {
        grid-column: auto;
    }
    .admin-reference-stats {
        grid-template-columns: 1fr 1fr;
    }
    .admin-reference-toolbar {
        align-items: stretch;
        flex-direction: column;
    }
    .admin-date-chip {
        justify-content: center;
    }
    .admin-quick-actions {
        grid-template-columns: 1fr 1fr;
    }
}
.premium-verified-badge {
    align-items: center;
    background: #2f80ed;
    border: 2px solid #eaf2ff;
    border-radius: 50%;
    box-shadow: 0 2px 7px #2f80ed66;
    color: #fff;
    display: inline-flex;
    font: 700 9px/1 Arial,sans-serif;
    height: 16px;
    justify-content: center;
    margin-left: 6px;
    vertical-align: 3px;
    width: 16px;
}
.profile-summary .premium-verified-badge {
    height: 18px;
    vertical-align: 3px;
    width: 18px;
}

/* Final mobile card safety layer. Keep this block last. */
@media (max-width: 640px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    .member-sidebar {
        flex-basis: 56px;
        padding-inline: 6px;
    }

    .member-main > .member-dashboard {
        padding: 28px 8px 52px;
        width: calc(100% - 16px);
    }

    .member-greeting {
        align-items: stretch;
        display: grid;
        gap: 14px 8px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-bottom: 26px;
    }

    .member-greeting > div {
        grid-column: 1 / -1;
        min-width: 0;
    }

    .member-greeting h1 {
        font-size: clamp(24px, 8vw, 32px);
        line-height: 1.12;
        overflow-wrap: anywhere;
    }

    .member-greeting p {
        line-height: 1.45;
    }

    .member-dashboard-boost,
    .member-dashboard-premium {
        align-items: center;
        display: inline-flex;
        justify-content: center;
        min-width: 0;
        padding: 10px 6px;
        text-align: center;
        white-space: nowrap;
    }

    .member-stat-row {
        gap: 14px;
        margin-bottom: 22px;
    }

    .member-stat-card {
        min-height: 108px;
        padding: 15px 13px;
    }

    .global-search-overlay { padding: 28px 12px; }
    .global-search-dialog { border-radius: 14px; padding: 18px 14px; }
    .global-search-links { grid-template-columns: 1fr; }

    body.admin-body .admin-page-content {
        display: grid;
        align-content: start;
        gap: 18px;
    }

    body.admin-body .admin-page-content > * {
        margin-top: 0;
    }

    .admin-main,
    .member-main,
    .admin-page-content,
    .member-dashboard,
    .dashboard,
    .shell,
    .admin-page-content > *,
    .admin-reference-card,
    .admin-table-card,
    .admin-form-card,
    .admin-settings-stack,
    .report-card,
    .role-card,
    .form-card,
    .member-dashboard-card,
    .member-stat-card,
    .member-recommendation-card,
    .dashboard-panel,
    .settings-list,
    .profile-summary,
    .connection-card,
    .notification-card,
    .conversation-card {
        box-sizing: border-box;
        min-width: 0;
        max-width: 100%;
    }

    .admin-reference-stats,
    .admin-reference-grid,
    .admin-reference-bottom,
    .admin-stat-grid,
    .admin-settings-grid,
    .admin-form-grid,
    .permission-grid-large,
    .report-analytics-grid,
    .report-summary-stack,
    .role-grid,
    .connection-grid,
    .profile-layout,
    .settings-grid,
    .member-stat-row,
    .member-dashboard-grid,
    .member-recommendation-grid,
    .admin-quick-actions {
        grid-template-columns: 1fr;
    }

    .admin-growth-card {
        grid-column: auto;
    }

    .admin-reference-stats > div,
    .admin-reference-card,
    .admin-table-card,
    .admin-form-card,
    .report-card,
    .role-card,
    .member-dashboard-card {
        padding: 18px 14px;
    }

    .admin-reference-toolbar,
    .admin-toolbar-row,
    .table-toolbar,
    .admin-header,
    .admin-header-actions,
    .member-topbar,
    .member-greeting,
    .member-boost-banner {
        align-items: stretch;
        flex-wrap: wrap;
    }

    .admin-search-box,
    .member-search {
        max-width: 100%;
        min-width: 0;
    }

    .admin-header-actions {
        gap: 8px;
        justify-content: flex-end;
        width: 100%;
    }

    .admin-table-card .table-scroll,
    .table-scroll {
        max-width: 100%;
        overflow-x: auto;
    }

    .admin-table,
    .admin-recent-users table {
        min-width: 620px;
    }

    .admin-recent-users {
        overflow: hidden;
        padding: 16px 12px;
    }

    .admin-recent-users .admin-ref-heading {
        align-items: flex-start;
        gap: 12px;
    }

    .admin-recent-users .admin-ref-heading h2 {
        font-size: 15px;
    }

    .admin-recent-users table {
        display: block;
        min-width: 0;
        width: 100%;
    }

    .admin-recent-users thead {
        display: none;
    }

    .admin-recent-users tbody {
        display: grid;
        gap: 8px;
    }

    .admin-recent-users tr {
        background: rgba(4, 14, 32, .58);
        border: 1px solid #1b3151;
        border-radius: 9px;
        display: grid;
        gap: 2px 10px;
        grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
        padding: 8px 7px;
    }

    .admin-recent-users td {
        min-width: 0;
        overflow: hidden;
        padding: 6px 3px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .admin-recent-users td:nth-child(1) { grid-column: 1 / -1; }
    .admin-recent-users td:nth-child(2)::before { content: 'Location · '; color: #7185aa; }
    .admin-recent-users td:nth-child(3)::before { content: 'Status · '; color: #7185aa; }
    .admin-recent-users td:nth-child(4)::before { content: 'Joined · '; color: #7185aa; }

    .member-recommendation-image {
        height: min(64vw, 260px);
    }

    .member-boost-banner a {
        margin-left: 0;
        width: 100%;
    }

    .match-card {
        align-items: flex-start;
        flex-wrap: wrap;
        min-width: 0;
        max-width: 100%;
        padding: 18px;
    }

    .match-card-info {
        flex: 1 1 0;
        min-width: 0;
    }

    .match-card-actions {
        flex-wrap: wrap;
        max-width: 100%;
    }

    .button,
    .admin-actions .button {
        max-width: 100%;
        white-space: normal;
    }
}

/* Discovery motion system: animated entry, ambient card motion, and swipe feedback. */
@keyframes discover-card-enter {
    0% {
        opacity: 0;
        transform: translateY(26px) scale(.94) rotate(-2deg);
    }
    60% {
        opacity: 1;
        transform: translateY(-5px) scale(1.015) rotate(.5deg);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1) rotate(0);
    }
}

@keyframes discover-card-breathe {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-5px);
    }
}

@keyframes discover-glow-pulse {
    0%,
    100% {
        opacity: .34;
        transform: scale(.9);
    }
    50% {
        opacity: .64;
        transform: scale(1.12);
    }
}

@keyframes discover-action-enter {
    from {
        opacity: 0;
        transform: translateY(12px) scale(.82);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.discover-card-shell {
    opacity: 0;
    transform: translateY(26px) scale(.94) rotate(-2deg);
}

.discover-card-shell.discover-card-ready {
    animation: discover-card-enter .8s cubic-bezier(.22, 1, .36, 1) forwards;
}

.discover-card-shell.discover-card-ready .discover-card {
    animation: discover-card-breathe 5s ease-in-out 1s infinite;
}

.discover-card-art:before,
.discover-card-art:after {
    animation: discover-glow-pulse 5s ease-in-out infinite;
}

.discover-card-art:after {
    animation-delay: 1.2s;
}

.discover-card-glow {
    animation: discover-glow-pulse 3.5s ease-in-out infinite;
}

.discover-card-ready + .discover-actions form {
    animation: discover-action-enter .5s cubic-bezier(.22, 1, .36, 1) both;
}

.discover-card-ready + .discover-actions form:nth-of-type(1) {
    animation-delay: .3s;
}

.discover-card-ready + .discover-actions form:nth-of-type(2) {
    animation-delay: .4s;
}

.discover-card-ready + .discover-actions form:nth-of-type(3) {
    animation-delay: .5s;
}

.discover-action {
    transition: transform .25s cubic-bezier(.22, 1, .36, 1), box-shadow .25s ease, filter .25s ease;
}

.discover-action:hover,
.discover-action:focus-visible {
    filter: brightness(1.16);
    transform: translateY(-6px) scale(1.08);
}

.discover-drag-like .discover-card {
    border-color: #6fe3ad99;
    box-shadow: 0 28px 60px #6fe3ad24;
}

.discover-drag-pass .discover-card {
    border-color: #ff9caa99;
    box-shadow: 0 28px 60px #ff9caa24;
}

@media (prefers-reduced-motion: reduce) {
    .discover-card-shell,
    .discover-card-shell.discover-card-ready,
    .discover-card-shell.discover-card-ready .discover-card,
    .discover-card-art:before,
    .discover-card-art:after,
    .discover-card-glow,
    .discover-card-ready + .discover-actions form {
        animation: none;
        opacity: 1;
        transform: none;
    }
}

/* Wallet store and compact Messenger-style reaction picker. */
.wallet-purchase-card {
    background: linear-gradient(145deg, #101d38, #101426);
    border: 1px solid #29466e;
    border-radius: 18px;
    margin-top: 20px;
    padding: 24px;
}

.wallet-purchase-card .section-heading {
    align-items: flex-start;
    margin: 0 0 18px;
}

.wallet-purchase-card .section-heading h2 {
    margin: 6px 0;
}

.wallet-purchase-card .section-heading p {
    color: #9aa9c3;
    font-size: 12px;
    margin: 0;
}

.wallet-purchase-badge {
    background: #183d43;
    border: 1px solid #2f796f;
    border-radius: 999px;
    color: #8be2c2;
    font-size: 10px;
    padding: 7px 10px;
    white-space: nowrap;
}

.coin-pack-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.coin-pack {
    background: #0b1730;
    border: 1px solid #203758;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    gap: 9px;
    padding: 18px;
}

.coin-pack-featured {
    border-color: #8f7cff;
    box-shadow: 0 14px 34px #5f46d526;
}

.coin-pack-kicker {
    color: #a69aff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.coin-pack h3 {
    color: #f2f5ff;
    font-size: 15px;
    margin: 0;
}

.coin-pack > strong {
    color: #fff;
    font: 700 24px/1.1 Manrope, sans-serif;
}

.coin-pack > strong small {
    color: #9aa9c3;
    font: 500 10px Inter, sans-serif;
}

.coin-pack > p {
    color: #8be2c2;
    font-size: 12px;
    margin: 0 0 5px;
}

.coin-pack input {
    background: #121521;
    border: 1px solid #29466e;
    border-radius: 8px;
    color: #f2f5ff;
    min-width: 0;
    padding: 10px;
    width: 100%;
}

.coin-pack .button {
    margin-top: auto;
    width: 100%;
}

.wallet-pending-purchases {
    background: linear-gradient(135deg, #101f3a 0%, #0c1830 100%);
    border: 1px solid #3a5480;
    border-radius: 16px;
    box-shadow: 0 14px 32px #02081638;
    color: #f3f6ff;
    display: grid;
    gap: 10px 18px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-top: 22px;
    padding: 20px;
}

.wallet-pending-purchases strong {
    color: #f6f8ff;
    font-size: 15px;
    line-height: 1.35;
}

.wallet-pending-purchases span {
    align-self: center;
    color: #aebddd;
    font-size: 12px;
    justify-self: end;
}

.wallet-pending-purchases small {
    color: #91a4c5;
    font-size: 12px;
    grid-column: 1 / -1;
    line-height: 1.5;
}

.wallet-purchase-actions {
    align-items: center;
    border-top: 1px solid #2a4169;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    grid-column: 1 / -1;
    margin-top: 7px;
    padding-top: 15px;
}

.wallet-purchase-actions > form:not(.wallet-proof-form) {
    margin: 0;
}

.wallet-proof-form {
    align-items: center;
    background: #0b1730;
    border: 1px solid #2b4774;
    border-radius: 12px;
    display: grid;
    flex: 1 1 100%;
    gap: 9px;
    grid-template-columns: minmax(190px, 1fr) minmax(190px, 1fr) auto;
    margin-top: 2px;
    padding: 10px;
}

.wallet-proof-form input {
    background: #111522;
    border: 1px solid #30466d;
    border-radius: 8px;
    box-sizing: border-box;
    color: #e9efff;
    min-width: 0;
    padding: 10px 11px;
    width: 100%;
}

.wallet-proof-form input[type="file"] {
    color: #9eacc7;
    font-size: 12px;
}

.wallet-proof-form input[type="file"]::file-selector-button {
    background: #202f52;
    border: 0;
    border-radius: 6px;
    color: #e9efff;
    cursor: pointer;
    margin-right: 8px;
    padding: 7px 9px;
}

.wallet-proof-form .button {
    white-space: nowrap;
}

.message-reactions .reaction-trigger {
    align-items: center;
    background: #111c34;
    border: 1px solid #2c4670;
    color: #c8c4ff;
    display: inline-flex;
    font-size: 14px;
    height: 27px;
    justify-content: center;
    padding: 0;
    width: 27px;
}

.message-reactions .reaction-trigger[aria-expanded="true"] {
    background: #2b2452;
    border-color: #9b8cff;
}

.message-reactions .reaction-picker {
    align-items: center;
    background: #171b2c;
    border: 1px solid #334b73;
    border-radius: 999px;
    box-shadow: 0 12px 30px #0006;
    display: inline-flex;
    gap: 2px;
    margin-left: 5px;
    padding: 4px 6px;
}

.message-reactions .reaction-picker[hidden] {
    display: none;
}

.message-reactions .reaction-picker button {
    font-size: 16px;
    padding: 3px 5px;
}

.reaction-counts {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 4px;
}

.reaction-chip {
    align-items: center;
    background: #171f37;
    border: 1px solid #2d4771;
    border-radius: 999px;
    display: inline-flex;
    gap: 3px;
    padding: 3px 7px;
}

.reaction-chip b {
    color: #aebce0;
    font-size: 10px;
    font-weight: 600;
}

.reaction-chip { cursor: pointer; }
.message-reactions { position: relative; }
.reaction-details-popover {
    background: linear-gradient(145deg, #182944, #0b172c);
    border: 1px solid #3c5881;
    border-radius: 10px;
    box-shadow: 0 14px 35px #0008;
    display: grid;
    gap: 7px;
    left: 0;
    min-width: 150px;
    padding: 11px 13px;
    position: absolute;
    top: calc(100% + 8px);
    z-index: 80;
}
.reaction-details-popover strong { color: #f4f5ff; font-size: 12px; }
.reaction-details-popover span { color: #aab9d0; font-size: 11px; }

/* Reaction details are a popup, never an inline part of the message toolbar. */
.chat-bubble .message-reactions,
.chat-bubble .message-reactions .reaction-details-popover {
    overflow: visible;
}
.chat-bubble .message-reactions .reaction-details-popover {
    align-items: stretch !important;
    display: grid !important;
    flex: none !important;
    float: none !important;
    height: auto !important;
    left: auto !important;
    max-width: min(240px, calc(100vw - 32px));
    position: fixed !important;
    right: 0;
    text-align: left !important;
    top: auto !important;
    transform: none !important;
    white-space: normal !important;
    width: max-content;
}
.chat-bubble:not(.chat-bubble-own) .message-reactions .reaction-details-popover {
    left: 0 !important;
    right: auto;
}
.message-reactions .reaction-details-popover strong,
.message-reactions .reaction-details-popover span {
    display: block !important;
    margin: 0 !important;
}

@media (max-width: 700px) {
    .coin-pack-grid {
        grid-template-columns: 1fr;
    }

    .wallet-purchase-card {
        padding: 18px 14px;
    }
}

/* Wallet remains readable at tablet and phone widths. */
@media (max-width: 760px) {
    .wallet-page .dashboard-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 14px;
    }

    .wallet-page .dashboard-head > .button {
        width: 100%;
    }

    .wallet-balance-card {
        min-height: 0;
        padding: 24px 20px;
    }

    .wallet-transfer-card {
        grid-template-columns: 1fr;
        padding: 22px 18px;
    }

    .wallet-transfer-fields {
        grid-template-columns: 1fr;
    }

    .wallet-transfer-fields input:nth-child(3),
    .wallet-transfer-fields .button {
        grid-column: auto;
    }

    .wallet-purchase-card .section-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .wallet-transaction {
        align-items: flex-start;
        flex-wrap: wrap;
        padding: 14px 16px;
    }

    .wallet-transaction > div {
        flex: 1 1 120px;
    }

    .wallet-transaction time {
        display: none;
    }
}

@media (max-width: 420px) {
    .wallet-balance-card {
        padding: 20px 16px;
    }

    .wallet-balance-card strong {
        font-size: 38px;
    }

    .wallet-coin {
        width: 64px;
        height: 64px;
        font-size: 28px;
    }
}

/* Wallet store and admin coin-plan surfaces. */
.wallet-page .dashboard-head {
    margin-bottom: 24px;
}

.wallet-page .wallet-balance-card,
.wallet-page .wallet-purchase-card,
.wallet-page .wallet-transfer-card,
.wallet-page .wallet-transactions {
    width: 100%;
    box-sizing: border-box;
}

.wallet-purchase-card .section-heading {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}

.wallet-purchase-card .section-heading > div {
    min-width: 0;
}

.wallet-purchase-card .section-heading p {
    max-width: 520px;
    line-height: 1.55;
}

.wallet-purchase-badge {
    align-self: flex-start;
}

.coin-pack {
    min-width: 0;
}

.coin-pack input {
    box-sizing: border-box;
}

.purchase-history-link {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-top: 16px;
    padding: 16px 20px;
}

.wallet-purchase-history {
    margin-top: 28px;
}

.wallet-purchase-history .section-heading {
    margin-top: 0;
}

.wallet-purchase-history-list {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 16px;
    overflow: hidden;
}

.wallet-purchase-history-row {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 15px 18px;
}

.wallet-purchase-history-row + .wallet-purchase-history-row {
    border-top: 1px solid var(--line);
}

.wallet-purchase-history-row > div {
    min-width: 0;
}

.wallet-purchase-history-row strong,
.wallet-purchase-history-row small {
    display: block;
}

.wallet-purchase-history-row small {
    color: var(--muted);
    margin-top: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wallet-purchase-history-row time {
    color: var(--muted);
    font-size: 11px;
    white-space: nowrap;
}

.coin-plans-editor .table-heading {
    align-items: flex-end;
    gap: 24px;
}

.coin-currency-field {
    flex: 0 0 130px;
}

.coin-plan-admin-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 22px 0;
}

.coin-plan-admin-card {
    background: #0b1730;
    border: 1px solid #203758;
    border-radius: 16px;
    padding: 18px;
}

.coin-plan-admin-card.is-enabled {
    border-color: #725de8;
    box-shadow: 0 16px 34px #5f46d51f;
}

.coin-plan-admin-heading {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px;
}

.coin-plan-admin-heading .premium-switch-row {
    border: 0;
    gap: 8px;
    padding: 0;
}

.coin-plan-fields {
    gap: 10px;
    grid-template-columns: 1fr 1fr;
}

.purchase-plan-note {
    margin-top: 16px;
}

.purchase-plan-note p {
    color: var(--muted);
    margin: 7px 0 12px;
}

.purchase-history-card .payment-reference {
    color: #b8c5e2;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 11px;
    word-break: break-all;
}

.purchase-status {
    border: 1px solid transparent;
    border-radius: 999px;
    display: inline-flex;
    font-size: 10px;
    font-weight: 700;
    padding: 5px 9px;
}

.purchase-status-pending { background: #6b531b33; border-color: #d4a84066; color: #f5d37f; }
.purchase-status-approved { background: #1f8d6833; border-color: #4ed9a077; color: #7ce5b8; }
.purchase-status-rejected { background: #9b3e4933; border-color: #ed788566; color: #ff9da9; }
.purchase-status-hold { background: #694d2633; border-color: #e0a84d66; color: #ffd27d; }
.purchase-status-cancelled { background: #59627333; border-color: #8d98aa66; color: #b6c0d0; }
[data-nickname-status][data-state="valid"] { color: #72e2b5; }
[data-nickname-status][data-state="invalid"] { color: #ff9da9; }

.message-owner-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.message-owner-actions form { margin: 0; }
.message-deleted { color: var(--muted) !important; font-style: italic; }
.message-edit-form { display: grid; gap: 8px; margin-top: 2px; }
.message-edit-form textarea { min-height: 72px; width: 100%; }
.message-edit-form > div { align-items: center; display: flex; gap: 8px; }

.admin-page-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 18px;
}
.admin-page-actions form {
    margin:0
}
@media(max-width:700px) {
    .admin-stat-grid {
        grid-template-columns:1fr
    }
    .admin-stat-card {
        min-height:116px
    }
}

.coin-plan-overview-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.coin-plan-overview-card {
    background: linear-gradient(145deg, rgba(14, 31, 58, .94), rgba(8, 17, 36, .98));
    border: 1px solid #20395e;
    border-radius: 16px;
    display: grid;
    gap: 10px;
    padding: 20px;
}

.coin-plan-overview-card.is-disabled { opacity: .66; }
.coin-plan-overview-card h3 { margin: 0; }
.coin-plan-overview-card > strong { color: #f5f3ff; font-size: 28px; }
.coin-plan-overview-card > strong small { color: var(--muted); font-size: 12px; }
.coin-plan-overview-card p { color: var(--muted); margin: 0; min-height: 40px; }
.coin-plan-price { color: #9b8cff; font-weight: 700; }
.coin-plan-overview-card .button { justify-self: start; margin-top: 8px; }

.coin-currency-grid {
    display: grid;
    gap: 12px;
    margin-bottom: 20px;
}

.coin-currency-row {
    align-items: center;
    background: rgba(9, 22, 43, .7);
    border: 1px solid #20395e;
    border-radius: 14px;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(180px, 1fr) auto minmax(150px, 220px) auto;
    padding: 14px 16px;
}

.coin-currency-row > div:first-child { display: grid; gap: 4px; }
.coin-currency-row > div:first-child span { color: var(--muted); font-size: 12px; }
.coin-currency-row .field { margin: 0; }
.coin-currency-row .field label { font-size: 11px; }
.currency-default-option { align-items: center; color: #bcb4ff; display: inline-flex; gap: 6px; white-space: nowrap; }

.wallet-currency-picker {
    align-items: center;
    display: flex;
    gap: 8px;
}

.wallet-currency-picker label { color: var(--muted); font-size: 12px; }
.wallet-currency-picker select { min-width: 150px; }

@media (max-width: 900px) {
    .coin-plan-overview-grid { grid-template-columns: 1fr 1fr; }
    .coin-currency-row { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
    .coin-plan-overview-grid,
    .coin-currency-row { grid-template-columns: 1fr; }
    .wallet-currency-picker { align-items: flex-start; flex-direction: column; width: 100%; }
    .wallet-currency-picker select { width: 100%; }
}

/* Conversation layout repair: keep presence, messages and composer in one readable flow. */
.conversation-card {
    align-items: stretch;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
}

.conversation-status-row,
.conversation-stream,
.conversation-compose,
.conversation-card > .conversation-tools,
.conversation-card > .group-member-add {
    grid-column: 1;
    min-width: 0;
    width: 100%;
}

.conversation-status-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-start;
    margin: 0;
}

.conversation-status-group {
    flex: 0 1 auto;
}

.conversation-stream {
    box-sizing: border-box;
    max-height: min(72vh, 820px);
    min-height: clamp(420px, 58vh, 680px);
    overflow-y: auto;
    scrollbar-gutter: stable;
}

.conversation-compose {
    box-sizing: border-box;
}

.conversation-safety-actions form,
.message-safety-actions form,
.conversation-tools form {
    margin: 0;
}

.conversation-safety-actions button.text-link,
.message-safety-actions button.text-link,
.conversation-tools button.text-link {
    appearance: none;
    background: transparent;
    border: 0;
    cursor: pointer;
    font: inherit;
    padding: 0;
}

.conversation-safety-actions .text-link,
.message-safety-actions .text-link,
.conversation-tools .text-link {
    align-items: center;
    border-radius: 8px;
    display: inline-flex;
    gap: 4px;
    min-height: 30px;
    padding: 4px 7px;
    transition: background .2s ease, color .2s ease;
}

.conversation-safety-actions .text-link:hover,
.message-safety-actions .text-link:hover,
.conversation-tools .text-link:hover {
    background: rgba(155, 140, 255, .12);
    letter-spacing: 0;
}

.conversation-safety-actions .danger-link:hover,
.message-safety-actions .danger-link:hover {
    background: rgba(255, 118, 137, .12);
    color: #ff9da9;
}

.safety-action-icon {
    align-items: center;
    background: rgba(155, 140, 255, .12);
    border: 1px solid rgba(155, 140, 255, .2);
    border-radius: 999px;
    display: inline-flex;
    height: 22px;
    justify-content: center;
    margin-right: 2px;
    width: 22px;
}

.message-safety-actions {
    justify-content: flex-start;
}

.chat-bubble {
    align-self: flex-start;
    box-sizing: border-box;
    max-width: min(78%, 720px);
    margin-right: auto;
    width: fit-content;
}

.chat-bubble:not(.chat-bubble-own) {
    border-bottom-left-radius: 5px;
}

.chat-bubble-own {
    align-self: flex-end;
    margin-left: auto;
    margin-right: 0;
}

.chat-bubble-own p,
.chat-bubble-own time {
    text-align: right;
}

.chat-bubble-own .message-reactions,
.chat-bubble-own .message-owner-actions {
    justify-content: flex-end;
}

.chat-bubble-own .message-reactions form {
    order: 2;
}

.chat-bubble-own .message-reactions .reaction-counts {
    order: 1;
}

@media (max-width: 900px) {
    .conversation-stream {
        max-height: none;
        min-height: 420px;
    }
}

@media (max-width: 640px) {
    .conversation-card {
        gap: 12px;
    }

    .conversation-stream,
    .conversation-compose {
        border-radius: 16px;
        padding: 16px;
    }

    .conversation-stream {
        min-height: 360px;
    }

    .chat-bubble {
        max-width: 94%;
        width: fit-content;
    }
}

/* Final conversation polish: prevent horizontal drift and native browser controls. */
body.panel-body {
    overflow-x: hidden;
}

.conversation-page {
    max-width: 1500px;
}

.conversation-page .dashboard-head {
    align-items: flex-end;
    gap: 26px;
    margin-bottom: 20px;
}

.conversation-page .dashboard-head h1 {
    font-size: clamp(30px, 4vw, 52px);
    letter-spacing: -2px;
    margin-bottom: 8px;
}

.conversation-page .dashboard-head > div:first-child > p {
    color: #91a0b8;
    margin: 0;
}

.conversation-page .conversation-head-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    justify-content: flex-end;
}

.conversation-page .conversation-card {
    background: linear-gradient(145deg, rgba(11, 28, 55, .96), rgba(6, 16, 34, .98));
    border: 1px solid #203c64;
    border-radius: 20px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .2);
    padding: 16px;
}

.conversation-page .conversation-status-row {
    background: rgba(8, 22, 44, .8);
    border: 1px solid #1d3960;
    border-radius: 12px;
    padding: 9px 12px;
}

.conversation-page .conversation-stream {
    background: rgba(5, 15, 32, .74);
    border-color: #1f3b62;
    height: clamp(420px, 62vh, 720px);
    max-height: none;
    min-height: 0;
    padding: clamp(18px, 3vw, 30px);
}

.conversation-page .conversation-compose {
    background: linear-gradient(145deg, #101f3d, #0b1931);
    border-color: #294d7b;
    padding: clamp(16px, 2vw, 24px);
}

@media (max-width: 760px) {
    .conversation-page .dashboard-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .conversation-page .conversation-head-actions,
    .conversation-page .conversation-head-actions .message-search-form {
        justify-content: flex-start;
        width: 100%;
    }

    .conversation-page .conversation-head-actions .button,
    .conversation-page .call-head-button {
        flex: 1 1 auto;
        justify-content: center;
    }
}

.conversation-stream {
    align-items: flex-start;
    box-sizing: border-box;
    overflow-x: hidden;
    padding-inline: clamp(16px, 3vw, 28px);
}

.conversation-page .conversation-stream:not(.conversation-stream-empty) {
    overflow-y: auto;
}

body > .reaction-details-popover {
    position: fixed !important;
    z-index: 200 !important;
}

.chat-bubble {
    flex: 0 1 auto;
    max-width: min(78%, 720px);
    min-width: 0;
    overflow-wrap: anywhere;
    width: fit-content;
}

.chat-bubble-own {
    align-self: flex-end;
}

.message-toolbar {
    align-items: center;
    display: flex;
    gap: 7px;
    justify-content: flex-start;
    margin-top: 8px;
    position: relative;
}

.chat-bubble-own .message-toolbar {
    justify-content: flex-end;
}

.message-menu-trigger {
    align-items: center;
    background: #0b1934;
    border: 1px solid #304a76;
    border-radius: 999px;
    color: #c8d2e8;
    cursor: pointer;
    display: inline-flex;
    font: 700 13px/1 Inter, sans-serif;
    height: 28px;
    justify-content: center;
    letter-spacing: 1px;
    padding: 0 8px 5px;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
}

.message-menu-trigger:hover,
.message-menu-trigger[aria-expanded="true"] {
    background: #293b68;
    border-color: #9b8cff;
    color: #fff;
}

.message-action-menu {
    background: #151d2e;
    border: 1px solid #3a4d6d;
    border-radius: 12px;
    box-shadow: 0 18px 42px #0008;
    display: grid;
    gap: 3px;
    min-width: 190px;
    padding: 7px;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 20;
}

.chat-bubble:not(.chat-bubble-own) .message-action-menu {
    left: 0;
    right: auto;
}

.message-action-menu[hidden] { display: none; }

.message-action-menu form { margin: 0; }

.message-action-item {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #e3e9f5;
    cursor: pointer;
    display: flex;
    font: 500 12px/1.2 Inter, sans-serif;
    gap: 9px;
    padding: 10px 11px;
    text-align: left;
    width: 100%;
}

.message-action-item span {
    color: #b5a9ff;
    font-size: 15px;
    min-width: 17px;
    text-align: center;
}

.message-action-item:hover {
    background: #26365a;
    color: #fff;
}

.message-action-item.message-action-danger,
.message-action-item.message-action-danger span {
    color: #ff9baa;
}

.message-edit-form {
    background: #0b1730;
    border: 1px solid #3b5480;
    border-radius: 10px;
    gap: 8px;
    margin-top: 2px;
    padding: 8px;
}

body.panel-body .message-edit-form textarea {
    background: #071226;
    border-color: #38547f;
    color: #edf3ff;
    min-height: 140px !important;
    max-height: 190px;
    padding: 10px 11px;
    resize: vertical;
}

.message-edit-form > div {
    align-items: center;
    display: flex;
    gap: 7px;
    justify-content: flex-end;
}

.message-edit-form .button-small {
    min-height: 32px;
    padding: 7px 12px;
}

.message-edit-form .text-link {
    background: transparent;
    border: 0;
    color: #aebbd2;
    cursor: pointer;
    font-size: 11px;
    padding: 7px 8px;
}

.conversation-blocked-label {
    align-items: center;
    color: #ffadb8;
    display: inline-flex;
    font-size: 12px;
    gap: 4px;
}

.blocked-conversation-notice {
    align-items: center;
    background: linear-gradient(135deg, #241d39, #17182b);
    border: 1px solid #594c86;
    border-radius: 14px;
    color: #d4cfff;
    display: flex;
    gap: 12px;
    padding: 16px 18px;
}

.blocked-conversation-notice > span {
    align-items: center;
    background: #ff8c9b22;
    border: 1px solid #ff8c9b66;
    border-radius: 50%;
    color: #ffabb7;
    display: inline-flex;
    flex: 0 0 32px;
    height: 32px;
    justify-content: center;
}

.blocked-conversation-notice strong,
.blocked-conversation-notice p {
    display: block;
    margin: 0;
}

.blocked-conversation-notice p {
    color: #aebbd2;
    font-size: 11px;
    margin-top: 4px;
}

.conversation-stream-empty {
    display: none;
    min-height: 0;
    padding: 0;
}

.message-owner-actions button.text-link,
.message-owner-actions form .text-link {
    appearance: none;
    background: transparent;
    border: 0;
    color: #bcb4ff;
    cursor: pointer;
    font: inherit;
    line-height: 1.2;
    padding: 6px 8px;
}

.message-owner-actions .text-link:hover {
    background: rgba(155, 140, 255, .14);
    border-radius: 8px;
    color: #fff;
    letter-spacing: 0;
}

.message-owner-actions .danger-link {
    color: #ff8d9e;
}

.message-owner-actions {
    justify-content: flex-start;
}

.chat-bubble-own .message-owner-actions {
    justify-content: flex-end;
}

.chat-bubble-own .message-reactions,
.chat-bubble-own .message-owner-actions {
    margin-left: auto;
    max-width: 100%;
}

.message-safety-actions {
    max-width: 100%;
}

@media (max-width: 640px) {
    .conversation-stream {
        padding-inline: 14px;
    }

    .chat-bubble {
        max-width: 92%;
    }
}

@media (max-width: 900px) {
    .coin-plan-admin-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .wallet-purchase-card .section-heading,
    .purchase-history-link,
    .coin-plans-editor .table-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .coin-currency-field {
        width: 100%;
    }

    .wallet-purchase-history-row {
        align-items: flex-start;
        flex-wrap: wrap;
    }

.wallet-purchase-history-row > div {
        flex: 1 1 150px;
    }

    .wallet-purchase-history-row time {
        display: none;
    }

    .wallet-pending-purchases {
        gap: 9px;
        grid-template-columns: 1fr;
        padding: 16px;
    }

    .wallet-pending-purchases span {
        justify-self: start;
    }

    .wallet-proof-form {
        grid-template-columns: 1fr;
    }

    .wallet-proof-form .button {
        justify-self: start;
    }
}

/* Must remain last so legacy compact-sidebar rules cannot hide drawer labels. */
@media (max-width: 800px) {
    .admin-sidebar {
        width: min(292px, calc(100vw - 28px)) !important;
    }

    .admin-sidebar .admin-link,
    .admin-sidebar .admin-link.active,
    .admin-sidebar .admin-label,
    .admin-sidebar .admin-logout {
        font-size: 12px !important;
    }

    .admin-sidebar .admin-link span,
    .admin-sidebar .admin-link em,
    .admin-sidebar .admin-label,
    .admin-sidebar .admin-workspace-switch > span:nth-child(2),
    .admin-sidebar .admin-workspace-switch > b,
    .admin-sidebar .admin-account-mini > span:nth-child(2),
    .admin-sidebar .admin-account-mini > b,
    .admin-sidebar .admin-logout span {
        display: block !important;
    }

    .admin-sidebar .admin-link {
        justify-content: flex-start !important;
        padding: 12px 15px !important;
    }
}

/* Final admin sidebar spacing for both the full and off-canvas layouts. */
body.admin-body .admin-sidebar {
    box-sizing: border-box;
    display: flex;
    gap: 0;
    height: 100vh;
    max-height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 28px 16px 20px;
    padding-bottom: 156px;
    position: relative;
    scrollbar-gutter: stable;
    scrollbar-color: #3b4d70 transparent;
}

body.admin-body {
    overflow-x: hidden;
}

body.admin-body .admin-main,
body.admin-body .admin-page-content,
body.admin-body .admin-page-content > *,
body.admin-body .admin-call-billing-page,
body.admin-body .admin-call-billing-card,
body.admin-body .settings-form-grid,
body.admin-body .settings-form-grid > .field {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
}

body.admin-body .admin-main {
    flex: 1 1 0;
    width: auto;
    overflow-x: hidden;
}

body.admin-body .admin-call-billing-card {
    overflow: hidden;
}

body.admin-body .admin-input-suffix {
    width: 100%;
}

body.admin-body .admin-sidebar-top {
    margin-bottom: 26px;
}

body.admin-body .admin-workspace-switch {
    margin-bottom: 28px;
    min-height: 52px;
}

body.admin-body .admin-navigation {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

body.admin-body .admin-navigation .admin-label {
    margin: 22px 13px 7px;
}

body.admin-body .admin-navigation .admin-label:first-child {
    margin-top: 0;
}

body.admin-body .admin-navigation .admin-link {
    margin: 0;
    min-height: 44px;
    padding: 12px 14px;
}

body.admin-body .admin-sidebar-footer {
    background: linear-gradient(180deg, #071226, #071022);
    bottom: 20px;
    flex-shrink: 0;
    left: 16px;
    margin-top: 0;
    padding-top: 18px;
    padding-bottom: 0;
    position: fixed;
    right: auto;
    width: 213px;
    z-index: 2;
}

body.admin-body .admin-spacer {
    flex: 1 1 auto;
    min-height: 18px;
}

body.admin-body .admin-call-billing-page {
    display: grid;
    gap: 22px;
    width: 100%;
}

body.admin-body .admin-call-billing-page > .admin-table-card {
    margin: 0;
}

body.admin-body .admin-call-billing-card {
    padding: clamp(22px, 3vw, 34px);
}

body.admin-body .call-billing-toggle {
    margin: 26px 0 0;
}

body.admin-body .call-billing-section-heading {
    align-items: flex-start;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 24px;
}

body.admin-body .call-billing-section-heading h2 {
    color: #f3f4f8;
    font: 600 23px/1.2 Manrope, sans-serif;
    margin: 7px 0 7px;
}

body.admin-body .call-billing-section-heading p {
    color: #7d8da8;
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
}

body.admin-body .call-billing-section-icon {
    align-items: center;
    background: linear-gradient(135deg, #a99cff, #725ee5);
    border-radius: 12px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 42px;
    font-size: 20px;
    height: 42px;
    justify-content: center;
}

body.admin-body .admin-input-suffix {
    align-items: center;
    display: flex;
    gap: 9px;
    min-width: 0;
}

body.admin-body .admin-input-suffix input {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
}

body.admin-body .admin-call-billing-card .settings-form-grid .field:last-child {
    grid-column: auto;
}

body.admin-body .admin-input-suffix span {
    color: #8192af;
    flex: 0 0 auto;
    font-size: 11px;
    white-space: nowrap;
}

body.admin-body .admin-call-billing-actions {
    align-items: center;
    border-top: 1px solid #203758;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-top: 8px;
    padding-top: 22px;
}

body.admin-body .admin-call-billing-actions > span {
    color: #8192af;
    font-size: 11px;
}

@media (max-width: 620px) {
    body.admin-body .call-billing-section-heading,
    body.admin-body .admin-call-billing-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    body.admin-body .admin-call-billing-actions .button {
        width: 100%;
    }

    body.admin-body .admin-input-suffix span {
        font-size: 10px;
    }
    body.admin-body .admin-call-billing-card { padding: 18px 14px; }
    body.admin-body .admin-call-billing-card .settings-form-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    body.admin-body .admin-input-suffix { align-items: stretch; flex-direction: column; gap: 6px; }
    body.admin-body .admin-input-suffix input { width: 100%; }
    body.admin-body .call-billing-section-icon { align-self: flex-start; }
}

@media (min-width: 801px) and (max-width: 1100px) {
    body.admin-body .admin-sidebar {
        bottom: 0;
        left: 0;
        position: fixed;
        top: 0;
    }

    body.admin-body .admin-main {
        flex: 0 0 calc(100% - 245px);
        margin-left: 245px;
        padding-left: 32px;
        padding-right: 32px;
        width: calc(100% - 245px);
    }
}

@media (min-width: 1101px) {
    body.admin-body .admin-sidebar {
        bottom: 0;
        left: 0;
        position: fixed;
        top: 0;
    }

    body.admin-body .admin-main {
        flex: 0 0 calc(100% - 245px);
        margin-left: 245px;
        width: calc(100% - 245px);
    }
}

@media (max-width: 800px) {
    body.admin-body:not(.sidebar-is-open) #admin-sidebar {
        transform: translateX(-105%);
    }

    body.admin-body.sidebar-is-open #admin-sidebar {
        transform: translateX(0);
    }

    body.admin-body .admin-sidebar {
        bottom: 0;
        height: 100dvh;
        left: 0;
        max-height: 100dvh;
        overflow-y: auto;
        padding: 24px 16px 20px;
        position: fixed;
        top: 0;
    }

    body.admin-body .admin-sidebar {
        padding-bottom: 20px;
    }

    body.admin-body .admin-navigation {
        flex: 0 0 auto;
        min-height: auto;
        overflow: visible;
        padding-bottom: 0;
    }

    body.admin-body .admin-spacer {
        display: block;
    }

    body.admin-body .admin-sidebar-footer {
        background: transparent;
        bottom: auto;
        left: auto;
        margin-top: 22px;
        padding-top: 14px;
        position: static;
        right: auto;
        width: auto;
    }

    body.admin-body .admin-sidebar-top {
        margin-bottom: 24px;
    }

    body.admin-body .admin-navigation .admin-link {
        min-height: 46px;
        padding: 13px 15px !important;
    }

    body.admin-body .admin-navigation .admin-label {
        margin-top: 25px;
    }
}

.premium-gift-card {
    background: linear-gradient(145deg, rgba(18, 30, 58, .98), rgba(8, 19, 40, .98));
    border: 1px solid #284873;
    border-radius: 18px;
    margin-top: 26px;
    padding: clamp(22px, 4vw, 34px);
}

.premium-gift-heading {
    align-items: flex-start;
    display: flex;
    gap: 22px;
    justify-content: space-between;
}

.premium-gift-heading h2 {
    color: #f5f6ff;
    font: 600 clamp(21px, 3vw, 28px)/1.2 Manrope, sans-serif;
    margin: 7px 0 8px;
}

.premium-gift-heading p {
    color: #9aaac5;
    font-size: 12px;
    line-height: 1.65;
    margin: 0;
    max-width: 650px;
}

.premium-gift-icon {
    align-items: center;
    background: linear-gradient(135deg, #a99cff, #725ee5);
    border-radius: 14px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 46px;
    font-size: 21px;
    height: 46px;
    justify-content: center;
}

.premium-gift-form {
    align-items: end;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-top: 25px;
}

.premium-gift-form .field {
    margin-bottom: 0;
    min-width: 0;
}

.premium-gift-form select {
    width: 100%;
}

.premium-gift-empty {
    align-items: flex-start;
    background: #091a34;
    border: 1px solid #203c64;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 22px;
    padding: 17px;
}

.premium-gift-empty strong {
    color: #edf1ff;
    font-size: 13px;
}

.premium-gift-empty span {
    color: #8fa1bf;
    font-size: 11px;
}

.premium-gift-empty .text-link {
    margin-top: 5px;
}

@media (max-width: 600px) {
    .premium-gift-heading {
        gap: 12px;
    }

    .premium-gift-icon {
        flex-basis: 38px;
        height: 38px;
    }

    .premium-gift-form {
        grid-template-columns: 1fr;
    }

    .premium-gift-form .button {
        width: 100%;
    }
}

.project-update-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 24px 0 16px;
}
.project-updates-hero {
    align-items: flex-end;
    border-bottom: 1px solid var(--line);
    display: flex;
    gap: 24px;
    justify-content: space-between;
    padding-bottom: 24px;
}
body.admin-body .project-updates-page {
    box-sizing: border-box;
    margin: 0;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    width: 100%;
}
.project-updates-hero > div,
.project-update-overview > *,
.project-update-latest,
.project-update-latest-heading > div,
.project-update-latest-grid > * { min-width: 0; }
.project-updates-hero h1 { margin: 7px 0 8px; }
.project-updates-hero p { color: #94a4be; font-size: 13px; margin: 0; }
.project-update-run { min-width: 180px; }
.project-update-overview { display: grid; gap: 16px; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr); margin: 22px 0 16px; }
.project-update-card-top { align-items: center; display: flex; gap: 10px; }
.project-update-icon { align-items: center; background: #28245a; border-radius: 12px; color: #b6a8ff; display: inline-flex; font-size: 20px; height: 40px; justify-content: center; width: 40px; }
.project-update-icon.is-pink { background: #402342; color: #ff90c0; }
.project-update-source h2 { color: #f2f4ff; font: 700 24px Manrope, sans-serif; margin: 16px 0 12px; overflow-wrap: anywhere; }
.project-update-source p, .project-update-budget p { color: #94a4be; font-size: 12px; line-height: 1.6; margin: 14px 0 0; }
.project-update-meta { align-items: center; display: flex; gap: 10px; }
.project-update-meta span, .project-update-budget small { color: #7185a5; font-size: 11px; }
.project-update-meta strong { background: #111f3b; border: 1px solid #29446d; border-radius: 99px; color: #c8d4eb; font-size: 11px; padding: 5px 10px; }
.project-update-secure { color: #7ce0b5; font-size: 11px; margin-top: 18px; }
.project-update-secure span { margin-right: 6px; }
.project-update-budget-value { align-items: baseline; display: flex; gap: 8px; margin-top: 20px; }
.project-update-budget-value strong { color: #f2f4ff; font: 700 34px Manrope, sans-serif; }
.project-update-budget-value span { color: #8fa1bf; font-size: 12px; }
.project-update-budget small { display: block; margin-top: 10px; }
.project-update-latest { margin-top: 0; }
.project-update-latest-heading { align-items: center; display: flex; gap: 16px; justify-content: space-between; }
.project-update-latest-heading h2 { margin: 7px 0 0; }
.project-update-latest-grid { align-items: stretch; display: grid; gap: 22px; grid-template-columns: minmax(0, 1fr) auto; margin-top: 22px; }
.project-update-message { background: #0d1b34; border: 1px solid #203b63; border-radius: 12px; display: flex; flex-direction: column; gap: 9px; justify-content: center; padding: 16px; }
.project-update-message strong { color: #dfe6f6; font-size: 13px; line-height: 1.5; }
.project-update-message span { color: #8194b2; font-size: 11px; }
.project-update-stats { align-items: center; border: 0; display: flex; gap: 28px; margin: 0; padding: 0 4px; }
.project-update-stats span { align-items: center; display: flex; flex-direction: column; gap: 4px; min-width: 78px; text-align: center; }
.project-update-stats b { margin: 0; }
.project-update-stats small { color: #8194b2; font-size: 10px; white-space: nowrap; }
.project-update-empty { align-items: center; background: #0d1b34; border: 1px dashed #29446d; border-radius: 12px; display: flex; gap: 14px; margin-top: 20px; padding: 18px; }
.project-update-empty > span { color: #a99cff; font-size: 25px; }
.project-update-empty strong { color: #dfe6f6; font-size: 13px; }
.project-update-empty p { color: #8194b2; font-size: 12px; margin: 5px 0 0; }
.project-update-card,
.project-update-history {
    min-width: 0;
}
.project-update-card h2 {
    color: #f2f4ff;
    font: 700 25px Manrope, sans-serif;
    margin: 8px 0;
    overflow-wrap: anywhere;
}
.project-update-card h2 small { color: #8fa1bf; font-size: 14px; font-weight: 600; }
.project-update-card p,
.project-update-history p { color: #94a4be; font-size: 12px; line-height: 1.65; }
.project-update-note { margin-top: 18px; }
.project-update-card code,
.project-update-history code { color: #d1caff; }
.project-update-meter { background: #101d38; border: 1px solid #263d65; border-radius: 99px; height: 8px; margin-top: 18px; overflow: hidden; }
.project-update-meter span { background: linear-gradient(90deg, #7c65e9, #e54a9e); border-radius: inherit; display: block; height: 100%; }
.project-update-history { margin-top: 0; }
.project-update-status { align-items: center; display: flex; gap: 12px; margin: 15px 0 8px; }
.project-update-status strong { color: #9aaac5; font-size: 12px; font-weight: 500; }
.project-update-stats { border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 26px; margin-top: 20px; padding-top: 18px; }
.project-update-stats span { color: #8fa1bf; font-size: 12px; }
.project-update-stats b { color: #f2f4ff; font-size: 17px; margin-right: 4px; }
.status-baseline { background: #3b2e14; color: #f5cf70; }
.status-up_to_date { background: #17332e; color: #75ddb2; }
.status-success { background: #17332e; color: #75ddb2; }
.status-failed { background: #3a2028; color: #ff9aab; }
.status-running { background: #20284d; color: #bdb4ff; }
@media (max-width: 700px) {
    .project-updates-hero { align-items: stretch; flex-direction: column; gap: 16px; }
    .project-update-run { width: 100%; }
    .project-update-overview { grid-template-columns: 1fr; }
    .project-update-latest-grid { grid-template-columns: 1fr; }
    .project-update-stats { justify-content: space-between; }
    .project-update-grid { grid-template-columns: 1fr; }
    .project-updates-page .admin-header-row { align-items: stretch; flex-direction: column; }
    .project-updates-page .admin-header-row form,
    .project-updates-page .admin-header-row .button { width: 100%; }
    .project-update-stats { gap: 14px; }
    .project-update-card h2 { font-size: 17px; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}

/* Narrow admin canvases must stack content instead of compressing cards into unusable columns. */
@media (max-width: 600px) {
    body.admin-body .admin-page-content { padding: 18px 10px 42px; }
    body.admin-body .admin-stat-grid.coin-stat-grid { gap: 12px; grid-template-columns: minmax(0, 1fr); }
    body.admin-body .coin-admin-intro { align-items: flex-start; gap: 14px; padding: 18px 14px; }
    body.admin-body .coin-admin-intro p { line-height: 1.5; }
    body.admin-body .coin-admin-mark { flex: 0 0 48px; height: 48px; width: 48px; }
    body.admin-body .coin-adjust-form { grid-template-columns: minmax(0, 1fr); }
    body.admin-body .coin-adjust-form input[name="description"],
    body.admin-body .coin-adjust-form .button { grid-column: auto; width: 100%; }
    body.admin-body .table-toolbar .filter-bar,
    body.admin-body .table-toolbar .admin-toolbar-actions { width: 100%; }
    body.admin-body .table-toolbar .admin-toolbar-actions { align-items: stretch; flex-direction: column; }
    body.admin-body .table-toolbar .admin-toolbar-actions .button { width: 100%; }
    body.admin-body .admin-role-card { display: grid; gap: 12px 14px; grid-template-columns: 44px minmax(0, 1fr); padding: 16px; }
    body.admin-body .admin-role-card-icon { grid-column: 1; grid-row: 1; }
    body.admin-body .admin-role-card-copy { grid-column: 2; grid-row: 1; min-width: 0; }
    body.admin-body .admin-role-card-actions { grid-column: 1 / -1; grid-row: 2; margin: 0; width: 100%; }
    body.admin-body .admin-role-card-actions .button,
    body.admin-body .admin-role-card-actions form,
    body.admin-body .admin-role-card-actions form .button { width: 100%; }
    body.admin-body .admin-role-card-top { align-items: flex-start; flex-direction: column; gap: 5px; }
    body.admin-body .admin-role-card h3 { overflow-wrap: anywhere; }
    body.admin-body .admin-coins-page .wallets-table-card { overflow: visible; }
    body.admin-body .admin-coins-page .wallets-table-card table,
    body.admin-body .admin-coins-page .wallets-table-card tbody,
    body.admin-body .admin-coins-page .wallets-table-card tr,
    body.admin-body .admin-coins-page .wallets-table-card td { display: block; max-width: 100%; min-width: 0 !important; width: 100%; }
    body.admin-body .admin-coins-page .wallets-table-card table { min-width: 0 !important; table-layout: fixed; }
    body.admin-body .admin-coins-page .wallets-table-card thead { display: none; }
    body.admin-body .admin-coins-page .wallets-table-card tr { border-bottom: 1px solid #1b3151; padding: 16px 0; }
    body.admin-body .admin-coins-page .wallets-table-card tr:last-child { border-bottom: 0; }
    body.admin-body .admin-coins-page .wallets-table-card td { border: 0; padding: 8px 0; }
    body.admin-body .admin-coins-page .wallets-table-card td::before { color: #8091ae; content: attr(data-label); display: block; font-size: 10px; font-weight: 700; letter-spacing: .08em; margin-bottom: 7px; text-transform: uppercase; }
    body.admin-body .admin-coins-page .wallets-table-card td:first-child { align-items: center; display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 9px; }
    body.admin-body .admin-coins-page .wallets-table-card td:first-child::before { grid-column: 1 / -1; }
    body.admin-body .admin-coins-page .wallets-table-card td:first-child .table-avatar { grid-row: 2 / span 2; }
    body.admin-body .admin-coins-page .wallets-table-card td:first-child strong,
    body.admin-body .admin-coins-page .wallets-table-card td:first-child small { grid-column: 2; }
    body.admin-body .admin-coins-page .wallets-table-card .coin-adjust-form { gap: 10px; }
}
