:root {
    --bg: #090b14;
    --panel: #111827;
    --line: rgba(255,255,255,.09);
    --gold: #f7c948;
    --blue: #37b7ff;
    --red: #ff3158;
    --green: #34f5c5;
    --violet: #9b5cff;
    --text-soft: #c9d6e5;
}
* { letter-spacing: 0; }
body {
    background:
        radial-gradient(circle at 12% 8%, rgba(52,245,197,.20), transparent 28%),
        radial-gradient(circle at 88% 12%, rgba(255,49,88,.18), transparent 30%),
        radial-gradient(circle at 50% 100%, rgba(55,183,255,.16), transparent 34%),
        linear-gradient(180deg, #070913 0%, #0b1020 48%, #080912 100%);
    color: #f7fafc;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    min-height: 100vh;
    padding-bottom: 72px;
}
.glass, .cardx, .stat, .side, .table-wrap {
    background:
        linear-gradient(145deg, rgba(18,31,54,.92), rgba(10,14,29,.88)),
        radial-gradient(circle at 18% 0%, rgba(55,183,255,.18), transparent 34%);
    border: 1px solid rgba(103,232,249,.22);
    box-shadow:
        0 0 0 1px rgba(255,255,255,.03) inset,
        0 0 22px rgba(55,183,255,.15),
        0 18px 50px rgba(0,0,0,.34);
    backdrop-filter: blur(16px);
}
.cardx, .stat, .table-wrap {
    border-radius: 8px;
    padding: 18px;
    position: relative;
    overflow: hidden;
}
.cardx::before, .stat::before, .table-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(120deg, rgba(52,245,197,.16), transparent 30%, rgba(247,201,72,.12) 64%, transparent);
    opacity: .78;
}
.cardx > *, .stat > *, .table-wrap > * { position: relative; z-index: 1; }
.hero {
    min-height: 68vh;
    display: grid;
    align-items: center;
    background:
        linear-gradient(135deg, rgba(255,49,88,.28), rgba(55,183,255,.20)),
        radial-gradient(circle at 75% 30%, rgba(247,201,72,.20), transparent 30%);
    border: 1px solid rgba(103,232,249,.26);
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 0 34px rgba(55,183,255,.18), 0 26px 70px rgba(0,0,0,.38);
}
.plane {
    font-size: clamp(56px, 14vw, 150px);
    animation: fly 3s ease-in-out infinite;
    filter:
        drop-shadow(0 0 16px rgba(247,201,72,.65))
        drop-shadow(0 14px 20px rgba(255,49,88,.50));
}
@keyframes fly {
    0%,100% { transform: translateY(12px) rotate(-8deg); }
    50% { transform: translateY(-18px) rotate(8deg); }
}
.btn {
    min-height: 42px;
    border-radius: 8px;
}
.btn-gold {
    background: linear-gradient(135deg, #ffe066, var(--gold));
    color: #17120a;
    font-weight: 800;
    border: 0;
    box-shadow: 0 0 18px rgba(247,201,72,.25);
}
.btn-red {
    background: linear-gradient(135deg, var(--red), #ff7a3d);
    color: white;
    border: 0;
    box-shadow: 0 0 18px rgba(255,49,88,.28);
}
.stat {
    min-height: 106px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.stat:hover {
    transform: translateY(-2px);
    border-color: rgba(52,245,197,.42);
    box-shadow: 0 0 28px rgba(52,245,197,.16), 0 20px 54px rgba(0,0,0,.36);
}
.stat span { color: var(--text-soft); font-size: .82rem; line-height: 1.25; }
.stat strong {
    display: block;
    font-size: clamp(1.06rem, 2.8vw, 1.42rem);
    line-height: 1.15;
    color: #ffffff;
    text-shadow: 0 0 14px rgba(52,245,197,.24);
    overflow-wrap: anywhere;
}
.table { --bs-table-bg: transparent; --bs-table-color: #f7fafc; --bs-table-border-color: var(--line); }
.form-control, .form-select, textarea {
    background: rgba(7,13,27,.88) !important;
    border-color: rgba(103,232,249,.20) !important;
    color: #f7fafc !important;
    border-radius: 8px !important;
    min-height: 42px;
    box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset;
}
.form-control:focus, .form-select:focus, textarea:focus {
    border-color: rgba(52,245,197,.72) !important;
    box-shadow: 0 0 0 .18rem rgba(52,245,197,.14) !important;
}
.bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    display: grid;
    grid-template-columns: repeat(5,1fr);
    background: rgba(8,13,26,.96);
    border-top: 1px solid rgba(103,232,249,.22);
    box-shadow: 0 -10px 30px rgba(55,183,255,.12);
    z-index: 40;
}
.bottom-nav a {
    color: #d8e1ee;
    text-align: center;
    padding: 8px 4px 7px;
    text-decoration: none;
    font-size: .76rem;
    font-weight: 700;
}
.bottom-nav a i {
    display: block;
    font-size: 1.2rem;
    line-height: 1.2;
    margin-bottom: 2px;
    color: var(--blue);
    filter: drop-shadow(0 0 8px rgba(55,183,255,.48));
}
.bottom-nav a span { display: block; }
.bottom-nav a:hover { color: var(--green); }
.admin-layout { display: grid; grid-template-columns: 240px 1fr; gap: 20px; }
.side { border-radius: 8px; padding: 16px; min-height: calc(100vh - 32px); }
.side a { display: block; color: #d8e1ee; padding: 10px 12px; text-decoration: none; border-radius: 6px; }
.side a.active, .side a:hover { background: rgba(247,201,72,.14); color: var(--gold); }
.alert {
    border-radius: 8px;
    border: 1px solid rgba(103,232,249,.18);
}
.navbar-brand {
    color: var(--gold) !important;
    text-shadow: 0 0 14px rgba(247,201,72,.36);
}
.nav-link { font-weight: 700; }
.nav-link i { margin-right: 4px; color: var(--blue); }
.referral-copy-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}
.referral-copy-btn {
    min-width: 106px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
}
.referral-copy-btn.copied {
    background: var(--green);
    box-shadow: 0 0 18px rgba(52,245,197,.32);
}
.crypto-network-card {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
.crypto-network-card > div {
    padding: 10px;
    border: 1px solid rgba(103,232,249,.16);
    border-radius: 7px;
    background: rgba(255,255,255,.04);
}
.crypto-network-card span, .crypto-network-card strong { display: block; }
.crypto-network-card span { color: var(--text-soft); font-size: .72rem; }
.crypto-network-card strong { color: var(--green); overflow-wrap: anywhere; }
.hash-text {
    display: inline-block;
    max-width: 210px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .72rem;
}
.status-pill {
    display: inline-block;
    padding: 3px 7px;
    border-radius: 99px;
    font-size: .68rem;
    font-weight: 800;
    text-transform: uppercase;
}
.status-pending { color: #17120a; background: var(--gold); }
.status-approved { color: #07120f; background: var(--green); }
.status-paid { color: white; background: #198754; }
.status-rejected { color: white; background: var(--red); }
.crypto-payment-qr { display:block; width:min(260px,100%); aspect-ratio:1; object-fit:contain; margin:auto; border-radius:8px; background:white; padding:8px; }
.payment-placeholder { min-height:300px; display:grid; place-items:center; align-content:center; text-align:center; color:var(--text-soft); }
.payment-placeholder i { font-size:5rem; color:var(--blue); filter:drop-shadow(0 0 18px rgba(55,183,255,.4)); }
.admin-view-banner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 9px 14px;
    color: #fff;
    background: linear-gradient(90deg, #7b1735, #32145f);
    border-bottom: 1px solid rgba(255,255,255,.18);
    box-shadow: 0 0 22px rgba(255,49,88,.25);
    font-size: .9rem;
}

/* User dashboard */
.user-dashboard { display: grid; gap: 22px; }
.dashboard-hero {
    min-height: 320px;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(103,232,249,.24);
    border-radius: 8px;
    background-image:
        linear-gradient(90deg, rgba(3,8,18,.96) 0%, rgba(3,8,18,.76) 42%, rgba(3,8,18,.12) 72%),
        url('aviator-dashboard-banner.jpg');
    background-size: cover;
    background-position: center;
    box-shadow: 0 18px 48px rgba(0,0,0,.42), 0 0 26px rgba(55,183,255,.14);
}
.dashboard-hero-content {
    width: min(560px, 62%);
    min-height: 320px;
    padding: 36px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.dashboard-hero h1 { margin: 10px 0 6px; font-size: 2.1rem; font-weight: 850; }
.dashboard-hero p { color: var(--text-soft); margin-bottom: 20px; }
.dashboard-live {
    padding: 5px 9px;
    color: #07120f;
    background: var(--green);
    border-radius: 5px;
    font-size: .7rem;
    font-weight: 900;
}
.dashboard-hero-balance {
    position: absolute;
    right: 24px;
    bottom: 22px;
    min-width: 190px;
    padding: 13px 16px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 8px;
    background: rgba(3,8,18,.82);
    backdrop-filter: blur(10px);
}
.dashboard-hero-balance span, .dashboard-hero-balance strong { display: block; }
.dashboard-hero-balance span { color: var(--text-soft); font-size: .72rem; }
.dashboard-hero-balance strong { color: var(--gold); font-size: 1.55rem; }
.dashboard-actions {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
}
.dashboard-actions a {
    min-height: 78px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 5px;
    color: #f7fafc;
    text-decoration: none;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background: rgba(14,24,43,.88);
    font-size: .76rem;
    font-weight: 800;
}
.dashboard-actions i { color: var(--blue); font-size: 1.4rem; }
.dashboard-actions a:nth-child(2) i { color: var(--red); }
.dashboard-actions a:nth-child(3) i { color: var(--green); }
.dashboard-actions a:nth-child(4) i { color: var(--gold); }
.dashboard-actions a:nth-child(5) i { color: var(--blue); }
.dashboard-actions a:nth-child(6) i { color: var(--green); }
.dashboard-actions a:hover { border-color: var(--green); color: var(--green); transform: translateY(-1px); }
.dashboard-section {
    padding: 4px 0 22px;
    border-bottom: 1px solid rgba(103,232,249,.13);
}
.dashboard-section-head {
    min-height: 52px;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}
.dashboard-section-head h2, .dashboard-referral h2 { margin: 1px 0 0; font-size: 1.25rem; font-weight: 850; }
.dashboard-section-head a { color: var(--blue); text-decoration: none; font-size: .78rem; font-weight: 800; }
.section-kicker { color: var(--gold); font-size: .65rem; font-weight: 900; }
.wallet-dashboard-grid, .business-dashboard-grid, .activity-dashboard-grid { display: grid; gap: 10px; }
.wallet-dashboard-grid, .business-dashboard-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.activity-dashboard-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wallet-dashboard-item, .business-dashboard-item, .activity-dashboard-item {
    min-width: 0;
    min-height: 116px;
    padding: 15px;
    display: grid;
    align-content: space-between;
    gap: 7px;
    color: #f7fafc;
    text-decoration: none;
    border: 1px solid rgba(103,232,249,.16);
    border-radius: 8px;
    background: rgba(13,22,39,.90);
}
.wallet-dashboard-item i, .business-dashboard-item i, .activity-dashboard-item i { color: var(--blue); font-size: 1.25rem; }
.wallet-dashboard-item span, .business-dashboard-item span, .activity-dashboard-item span { color: var(--text-soft); font-size: .74rem; line-height: 1.2; }
.wallet-dashboard-item strong, .business-dashboard-item strong, .activity-dashboard-item strong { color: #fff; font-size: 1.15rem; overflow-wrap: anywhere; }
.wallet-dashboard-item.tone-green i { color: var(--green); }
.wallet-dashboard-item.tone-gold i { color: var(--gold); }
.wallet-dashboard-item.tone-red i { color: var(--red); }
.business-dashboard-item { border-bottom: 3px solid var(--green); }
.business-dashboard-item:nth-child(2) { border-bottom-color: var(--blue); }
.business-dashboard-item:nth-child(3) { border-bottom-color: var(--gold); }
.business-dashboard-item:nth-child(4) { border-bottom-color: var(--red); }
.activity-dashboard-item { min-height: 102px; background: rgba(8,15,28,.72); }
.dashboard-referral {
    display: grid;
    grid-template-columns: minmax(180px, .35fr) minmax(0, 1fr);
    align-items: end;
    gap: 18px;
    padding: 20px;
    border: 1px solid rgba(247,201,72,.28);
    border-radius: 8px;
    background: rgba(28,24,15,.58);
}
.gaming-hero.compact {
    min-height: 170px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 24px;
    margin-bottom: 18px;
    border: 1px solid rgba(103,232,249,.24);
    border-radius: 8px;
    background:
        radial-gradient(circle at 80% 30%, rgba(255,49,88,.20), transparent 26%),
        linear-gradient(135deg, rgba(8,15,31,.96), rgba(12,23,42,.82));
    box-shadow: 0 0 28px rgba(55,183,255,.14), 0 20px 50px rgba(0,0,0,.32);
}
.gaming-hero h1 { margin: 4px 0 8px; font-weight: 900; }
.gaming-hero p { max-width: 740px; margin: 0; color: var(--text-soft); }
.dashboard-hero-balance.static { position: static; }
.compliance-strip {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 12px 14px;
    margin-bottom: 16px;
    border: 1px solid rgba(247,201,72,.34);
    border-radius: 8px;
    color: #ffeeb0;
    background: rgba(48,36,10,.58);
    font-weight: 800;
}
.bot-status-ribbon {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.bot-status-ribbon div {
    min-height: 82px;
    padding: 14px;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background: rgba(8,15,28,.82);
}
.bot-status-ribbon i { color: var(--green); font-size: 1.25rem; }
.bot-status-ribbon span, .bot-status-ribbon strong { display: block; }
.bot-status-ribbon span { color: var(--text-soft); font-size: .72rem; }
.bot-status-ribbon strong { color: #fff; overflow-wrap: anywhere; }
.bot-plan-grid, .reward-grid, .game-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.bot-plan-card, .reward-card, .upcoming-game-card {
    min-width: 0;
    padding: 18px;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background:
        radial-gradient(circle at 10% 0%, rgba(52,245,197,.14), transparent 30%),
        linear-gradient(145deg, rgba(9,18,35,.94), rgba(8,11,23,.94));
    color: #f7fafc;
    text-decoration: none;
    box-shadow: 0 12px 36px rgba(0,0,0,.28);
}
.bot-plan-card > i, .reward-card > i, .upcoming-game-card > i {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    margin-bottom: 12px;
    border-radius: 8px;
    color: var(--green);
    background: rgba(52,245,197,.10);
    font-size: 1.6rem;
}
.bot-plan-card h3, .reward-card h3, .upcoming-game-card h3 { font-size: 1.12rem; font-weight: 900; margin-bottom: 6px; }
.bot-plan-card p, .reward-card p, .upcoming-game-card p { color: var(--text-soft); font-size: .86rem; }
.bot-plan-card small, .reward-card small { color: #8fa0b6; display: block; min-height: 36px; }
.mini-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 12px 0;
}
.mini-stat-grid span {
    padding: 8px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 7px;
    color: var(--text-soft);
    font-size: .72rem;
}
.mini-stat-grid strong { display: block; color: #fff; font-size: .86rem; }
.upcoming-game-card span, .reward-card > span {
    display: inline-block;
    padding: 3px 7px;
    margin-bottom: 10px;
    border-radius: 99px;
    color: #07120f;
    background: var(--gold);
    font-size: .64rem;
    font-weight: 900;
    text-transform: uppercase;
}
.compact-games { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.chat-layout {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 14px;
}
.chat-list, .chat-window {
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background: rgba(8,15,28,.86);
    overflow: hidden;
}
.chat-list { padding: 14px; }
.chat-list a {
    display: block;
    padding: 10px;
    margin-bottom: 8px;
    color: #f7fafc;
    text-decoration: none;
    border-radius: 7px;
    background: rgba(255,255,255,.04);
}
.chat-list a.active { outline: 1px solid var(--green); }
.chat-list span { display: block; color: var(--text-soft); font-size: .76rem; }
.chat-messages { height: 520px; overflow-y: auto; padding: 18px; }
.chat-bubble {
    max-width: 78%;
    width: fit-content;
    padding: 10px 12px;
    margin: 8px 0;
    border-radius: 8px;
    background: rgba(255,255,255,.08);
}
.chat-bubble.admin { margin-left: auto; background: rgba(52,245,197,.16); border: 1px solid rgba(52,245,197,.24); }
.chat-bubble.user { background: rgba(55,183,255,.12); border: 1px solid rgba(55,183,255,.18); }
.chat-bubble p { margin: 0 0 5px; }
.chat-bubble small { color: #8fa0b6; }
.chat-compose {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    padding: 12px;
    border-top: 1px solid rgba(103,232,249,.14);
}
.chat-compose input { grid-column: 1 / -1; }
.chat-empty { height: 100%; display: grid; place-items: center; align-content: center; color: var(--text-soft); }
.chat-empty i { font-size: 3rem; color: var(--blue); }
.ai-chat-shell {
    display: grid;
    gap: 16px;
}
.ai-chat-hero {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 22px;
    border: 1px solid rgba(103,232,249,.22);
    border-radius: 8px;
    background:
        radial-gradient(circle at 84% 22%, rgba(52,245,197,.20), transparent 24%),
        radial-gradient(circle at 10% 10%, rgba(255,49,88,.16), transparent 30%),
        linear-gradient(135deg, rgba(8,15,28,.95), rgba(12,23,42,.84));
    box-shadow: 0 18px 45px rgba(0,0,0,.25);
}
.ai-chat-hero h1 {
    margin: 6px 0 8px;
    font-size: clamp(2rem, 4vw, 3.3rem);
    font-weight: 950;
}
.ai-chat-hero p {
    max-width: 820px;
    margin: 0;
    color: var(--text-soft);
}
.ai-chat-status {
    min-width: 190px;
    align-self: stretch;
    display: grid;
    align-content: center;
    gap: 6px;
    padding: 14px;
    border: 1px solid rgba(52,245,197,.24);
    border-radius: 8px;
    background: rgba(52,245,197,.08);
}
.ai-chat-status span { color: var(--text-soft); font-size: .78rem; }
.ai-chat-status strong { color: var(--green); font-size: 1.15rem; }
.ai-chat-layout {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 14px;
}
.ai-chat-panel, .ai-chat-window {
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background: rgba(8,15,28,.86);
    overflow: hidden;
}
.ai-chat-panel {
    padding: 16px;
    display: grid;
    align-content: start;
    gap: 14px;
}
.ai-chat-panel h2 {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 900;
}
.ai-prompt-list {
    display: grid;
    gap: 8px;
}
.ai-prompt {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 8px;
    text-align: left;
    color: #f7fafc;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 8px;
    background: rgba(255,255,255,.05);
    padding: 9px 10px;
    font-weight: 800;
}
.ai-prompt i { color: var(--gold); }
.ai-prompt:hover {
    border-color: rgba(52,245,197,.45);
    color: var(--green);
}
.ai-disclaimer {
    display: flex;
    gap: 9px;
    padding: 12px;
    border-radius: 8px;
    color: #ffdfe5;
    background: rgba(255,49,88,.10);
    border: 1px solid rgba(255,49,88,.22);
    font-size: .82rem;
}
.ai-chat-messages {
    height: min(64vh, 620px);
    min-height: 480px;
    overflow-y: auto;
    padding: 18px;
    background:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px);
    background-size: 34px 34px;
}
.ai-message {
    display: flex;
    gap: 10px;
    margin: 12px 0;
}
.ai-message.user {
    flex-direction: row-reverse;
}
.ai-avatar {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: #07120f;
    background: var(--green);
    box-shadow: 0 0 18px rgba(52,245,197,.25);
}
.ai-message.user .ai-avatar {
    color: #fff;
    background: var(--blue);
}
.ai-bubble {
    max-width: min(760px, 82%);
    padding: 12px 13px;
    border-radius: 8px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.10);
}
.ai-message.user .ai-bubble {
    background: rgba(55,183,255,.14);
    border-color: rgba(55,183,255,.28);
}
.ai-bubble p {
    margin: 0 0 8px;
    white-space: normal;
}
.ai-bubble small {
    color: #8fa0b6;
    font-size: .72rem;
}
.ai-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 10px 0 4px;
}
.ai-action-row a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 34px;
    padding: 6px 9px;
    border-radius: 8px;
    color: #07120f;
    background: var(--gold);
    text-decoration: none;
    font-weight: 900;
    font-size: .78rem;
}
.ai-compose {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    padding: 12px;
    border-top: 1px solid rgba(103,232,249,.14);
    background: rgba(5,10,20,.88);
}
.ai-compose textarea {
    min-height: 54px;
    resize: vertical;
}
.ai-floating-help {
    position: fixed;
    right: 18px;
    bottom: 86px;
    z-index: 1030;
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #07120f;
    background: linear-gradient(135deg, var(--green), var(--gold));
    text-decoration: none;
    box-shadow: 0 0 28px rgba(52,245,197,.36);
}
.ai-floating-help i {
    font-size: 1.35rem;
    line-height: 1;
}
.ai-floating-help span {
    position: absolute;
    bottom: 8px;
    font-size: .58rem;
    font-weight: 950;
}
.user-meeting-panel {
    position: fixed;
    left: 18px;
    right: 92px;
    bottom: 82px;
    z-index: 1028;
    max-width: 780px;
    padding: 14px;
    border: 1px solid rgba(103,232,249,.24);
    border-radius: 10px;
    background:
        radial-gradient(circle at 12% 0%, rgba(52,245,197,.18), transparent 30%),
        linear-gradient(135deg, rgba(8,15,28,.96), rgba(15,24,45,.92));
    box-shadow: 0 18px 42px rgba(0,0,0,.35), 0 0 24px rgba(52,245,197,.12);
    backdrop-filter: blur(12px);
}
.user-meeting-panel.hide { display: none; }
.user-meeting-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 10px;
}
.user-meeting-head h3 {
    margin: 4px 0 0;
    font-size: 1.05rem;
    font-weight: 950;
}
.meeting-collapse {
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 8px;
    color: #fff;
    background: rgba(255,255,255,.08);
}
.user-meeting-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.user-meeting-card {
    min-height: 92px;
    display: grid;
    align-content: center;
    gap: 3px;
    padding: 13px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 10px;
    color: #fff;
    text-decoration: none;
    background: rgba(255,255,255,.055);
}
.user-meeting-card:hover { color: #fff; border-color: rgba(52,245,197,.42); transform: translateY(-1px); }
.user-meeting-card i { font-size: 1.45rem; color: var(--gold); }
.user-meeting-card.telegram i { color: #37b7ff; }
.user-meeting-card.zoom i { color: var(--green); }
.user-meeting-card span {
    color: var(--text-soft);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}
.user-meeting-card strong {
    overflow-wrap: anywhere;
    font-size: .95rem;
}
.user-meeting-card small { color: var(--gold); font-weight: 800; }
.user-popup-stack {
    position: fixed;
    top: 92px;
    right: 18px;
    z-index: 1040;
    display: grid;
    gap: 10px;
    width: min(360px, calc(100vw - 24px));
    pointer-events: none;
}
.user-live-popup {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 12px;
    border: 1px solid rgba(103,232,249,.22);
    border-radius: 10px;
    color: #fff;
    background:
        radial-gradient(circle at 0% 0%, rgba(52,245,197,.16), transparent 34%),
        rgba(8,15,28,.95);
    box-shadow: 0 18px 38px rgba(0,0,0,.32), 0 0 18px rgba(52,245,197,.10);
    transform: translateX(120%);
    opacity: 0;
    transition: transform .28s ease, opacity .28s ease;
}
.user-live-popup.show {
    transform: translateX(0);
    opacity: 1;
}
.user-live-popup > i {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: #07120f;
    background: var(--green);
    font-size: 1.35rem;
}
.user-live-popup.withdrawal > i { background: var(--gold); }
.user-live-popup.registration > i { background: #37b7ff; color: #fff; }
.user-live-popup.custom > i { background: #ff3158; color: #fff; }
.user-live-popup span {
    display: block;
    color: var(--text-soft);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}
.user-live-popup strong {
    display: block;
    overflow-wrap: anywhere;
    font-size: .95rem;
}
.user-live-popup small {
    color: var(--gold);
    font-size: .72rem;
}
.popup-check {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px;
    border: 1px solid rgba(103,232,249,.16);
    border-radius: 8px;
    background: rgba(255,255,255,.04);
}
.meeting-admin-card {
    height: 100%;
    padding: 14px;
    border: 1px solid rgba(103,232,249,.16);
    border-radius: 8px;
    background: rgba(255,255,255,.04);
}
.withdrawal-recharge-mini {
    display: grid;
    gap: 4px;
    padding: 8px;
    border: 1px solid rgba(103,232,249,.14);
    border-radius: 8px;
    background: rgba(255,255,255,.04);
}
.withdrawal-recharge-mini strong {
    color: var(--gold);
    font-size: .74rem;
}
.withdrawal-recharge-mini span {
    color: var(--text-soft);
    font-size: .72rem;
}
.site-update-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
}
.site-update-card {
    min-height: 118px;
    display: grid;
    align-content: space-between;
    gap: 8px;
    padding: 14px;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background:
        radial-gradient(circle at 20% 0%, rgba(55,183,255,.14), transparent 34%),
        rgba(8,15,28,.84);
}
.site-update-card.today {
    border-color: rgba(52,245,197,.30);
    background:
        radial-gradient(circle at 20% 0%, rgba(52,245,197,.18), transparent 34%),
        rgba(8,15,28,.88);
}
.site-update-card span {
    color: var(--text-soft);
    font-size: .78rem;
    font-weight: 900;
}
.site-update-card strong {
    color: #fff;
    font-size: clamp(1.35rem, 2vw, 2rem);
}
.site-update-card small { color: var(--gold); }
.site-update-section {
    margin-top: 18px;
}
.site-update-section h3 {
    margin-bottom: 10px;
    font-weight: 900;
}
.site-update-public {
    max-width: 1620px;
    margin: 0 auto;
}
.site-update-public main {
    width: 100%;
}
.presentation-shell {
    overflow: hidden;
    border: 1px solid rgba(103,232,249,.22);
    border-radius: 8px;
    background: rgba(8,15,28,.84);
}
.plan-detail-board {
    display: grid;
    gap: 16px;
    margin-bottom: 20px;
}
.plan-detail-hero {
    padding: 24px;
    border: 1px solid rgba(103,232,249,.22);
    border-radius: 8px;
    background:
        radial-gradient(circle at 82% 24%, rgba(255,49,88,.18), transparent 28%),
        linear-gradient(145deg, rgba(8,15,31,.94), rgba(13,25,46,.86));
    box-shadow: 0 16px 44px rgba(0,0,0,.28), 0 0 24px rgba(55,183,255,.12);
}
.plan-detail-hero h1 {
    margin: 5px 0 8px;
    font-size: clamp(2rem, 4vw, 3.4rem);
    font-weight: 950;
}
.plan-detail-hero p {
    max-width: 940px;
    margin: 0;
    color: var(--text-soft);
    font-size: 1rem;
}
.plan-percent-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}
.plan-percent-grid div {
    min-height: 118px;
    padding: 14px;
    display: grid;
    align-content: space-between;
    gap: 8px;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background:
        radial-gradient(circle at 15% 0%, rgba(52,245,197,.12), transparent 32%),
        rgba(8,15,28,.82);
}
.plan-percent-grid i {
    color: var(--green);
    font-size: 1.45rem;
}
.plan-percent-grid span {
    color: var(--text-soft);
    font-size: .75rem;
    font-weight: 800;
}
.plan-percent-grid strong {
    color: #fff;
    font-size: 1.25rem;
    overflow-wrap: anywhere;
}
.plan-table-grid {
    display: grid;
    grid-template-columns: 1.2fr .9fr .9fr 1fr;
    gap: 12px;
}
.plan-table-card {
    min-width: 0;
    padding: 16px;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background: rgba(8,15,28,.82);
}
.plan-table-card h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    font-size: 1rem;
    font-weight: 900;
}
.plan-table-card h3 i { color: var(--gold); }
.level-chip-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.level-chip-wrap span, .reward-mini-list span {
    display: inline-flex;
    justify-content: space-between;
    gap: 8px;
    padding: 7px 9px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 7px;
    color: #d8e1ee;
    background: rgba(255,255,255,.045);
    font-size: .78rem;
    font-weight: 800;
}
.level-chip-wrap strong, .reward-mini-list strong { color: var(--green); }
.reward-mini-list {
    display: grid;
    gap: 7px;
}
.reward-mini-list a {
    color: var(--gold);
    font-weight: 900;
    text-decoration: none;
}
.presentation-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px;
    border-bottom: 1px solid rgba(103,232,249,.14);
}
.presentation-top h1 { margin: 0; font-weight: 900; }
.presentation-top p { margin: 6px 0 0; color: var(--text-soft); }
.presentation-controls { display: flex; align-items: center; gap: 10px; }
.presentation-body {
    display: grid;
    grid-template-columns: 270px minmax(0, 1fr);
    min-height: 680px;
}
.presentation-agenda {
    padding: 16px;
    border-right: 1px solid rgba(103,232,249,.14);
    background: rgba(3,8,18,.55);
}
.presentation-agenda h3 {
    margin-bottom: 12px;
    font-size: 1rem;
    font-weight: 900;
}
.agenda-item {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 8px;
    padding: 9px;
    color: #d8e1ee;
    text-align: left;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 7px;
    background: rgba(255,255,255,.04);
    font-weight: 800;
    font-size: .78rem;
}
.agenda-item span {
    color: var(--green);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
}
.agenda-item.active {
    border-color: rgba(52,245,197,.46);
    color: #fff;
    background: rgba(52,245,197,.12);
}
.slides-viewport { overflow: hidden; }
.slides-track { display: flex; transition: transform .28s ease; }
.business-slide {
    min-width: 100%;
    aspect-ratio: 16 / 9;
    position: relative;
    display: grid;
    place-items: center;
    align-content: center;
    padding: clamp(24px, 5vw, 70px);
    text-align: center;
    background:
        radial-gradient(circle at 20% 20%, rgba(255,49,88,.20), transparent 28%),
        radial-gradient(circle at 80% 70%, rgba(52,245,197,.16), transparent 30%),
        linear-gradient(145deg, rgba(5,9,20,.96), rgba(13,21,40,.94));
}
.business-slide > i { color: var(--gold); font-size: clamp(3rem, 8vw, 6rem); filter: drop-shadow(0 0 18px rgba(247,201,72,.42)); }
.business-slide h2 { margin: 18px 0 10px; font-weight: 900; font-size: clamp(1.8rem, 5vw, 4rem); }
.business-slide p { max-width: 840px; color: var(--text-soft); font-size: clamp(1rem, 2vw, 1.4rem); }
.detailed-slide {
    grid-template-columns: minmax(0, .95fr) minmax(280px, .85fr);
    place-items: stretch;
    text-align: left;
    gap: 28px;
}
.slide-main-copy {
    display: grid;
    align-content: center;
}
.slide-main-copy > i {
    width: 76px;
    height: 76px;
    display: grid;
    place-items: center;
    margin-bottom: 14px;
    color: var(--gold);
    border-radius: 8px;
    background: rgba(247,201,72,.12);
    font-size: 2.4rem;
}
.slide-badge {
    width: fit-content;
    padding: 5px 8px;
    color: #07120f;
    background: var(--green);
    border-radius: 5px;
    font-size: .68rem;
    font-weight: 900;
}
.slide-detail-grid {
    display: grid;
    gap: 12px;
    align-content: center;
}
.slide-detail-grid div {
    padding: 16px;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background: rgba(3,8,18,.62);
}
.slide-detail-grid strong {
    display: block;
    margin-bottom: 6px;
    color: var(--gold);
}
.slide-detail-grid span { color: var(--text-soft); }
.slide-percent-strip {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-self: end;
}
.slide-percent-strip span {
    padding: 7px 10px;
    color: #07120f;
    border-radius: 99px;
    background: linear-gradient(135deg, var(--green), #8af7ff);
    font-size: .78rem;
    font-weight: 900;
    box-shadow: 0 0 14px rgba(52,245,197,.18);
}
.slide-number {
    position: absolute;
    top: 18px;
    right: 22px;
    color: var(--green);
    font-weight: 900;
    font-size: 1.2rem;
}
.reward-card.achieved { border-color: rgba(52,245,197,.45); box-shadow: 0 0 24px rgba(52,245,197,.13); }
.admin-edit-form {
    border-color: rgba(247,201,72,.32);
}
.admin-edit-form .form-label {
    color: var(--text-soft);
    font-size: .72rem;
    font-weight: 800;
}
.front-hero {
    min-height: 620px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
    align-items: center;
    gap: 28px;
    padding: clamp(24px, 5vw, 58px);
    border: 1px solid rgba(103,232,249,.22);
    border-radius: 8px;
    background:
        radial-gradient(circle at 70% 25%, rgba(255,49,88,.24), transparent 24%),
        radial-gradient(circle at 20% 75%, rgba(52,245,197,.16), transparent 30%),
        linear-gradient(145deg, rgba(9,13,28,.94), rgba(17,29,54,.80));
    box-shadow: 0 0 34px rgba(55,183,255,.14), 0 26px 70px rgba(0,0,0,.34);
}
.front-hero h1 {
    margin: 8px 0 12px;
    font-size: clamp(3rem, 8vw, 6.5rem);
    font-weight: 950;
    line-height: .92;
}
.front-hero-copy > p {
    max-width: 780px;
    color: #dde8f7;
    font-size: clamp(1rem, 1.7vw, 1.3rem);
    line-height: 1.55;
}
.front-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 22px 0;
}
.front-compliance {
    max-width: 780px;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 12px;
    color: #ffeeb0;
    border: 1px solid rgba(247,201,72,.28);
    border-radius: 8px;
    background: rgba(48,36,10,.48);
    font-weight: 800;
}
.front-flight-card {
    min-height: 460px;
    position: relative;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 18px;
    padding: 24px;
    overflow: hidden;
    border: 1px solid rgba(103,232,249,.20);
    border-radius: 8px;
    background:
        repeating-conic-gradient(from 8deg at 50% 100%, rgba(255,255,255,.045) 0deg 8deg, transparent 8deg 16deg),
        radial-gradient(circle at 50% 48%, rgba(155,92,255,.34), transparent 28%),
        linear-gradient(145deg, rgba(3,8,18,.92), rgba(10,22,42,.92));
}
.front-plane {
    color: var(--red);
    font-size: 5.2rem;
    filter: drop-shadow(0 0 22px rgba(255,49,88,.65));
    animation: fly 3.4s ease-in-out infinite;
}
.front-multiplier {
    font-size: clamp(3.4rem, 7vw, 6rem);
    font-weight: 950;
    text-shadow: 0 0 24px rgba(155,92,255,.75);
}
.front-runline {
    width: min(420px, 100%);
    height: 5px;
    border-radius: 99px;
    background: rgba(255,255,255,.10);
    overflow: hidden;
}
.front-runline span {
    display: block;
    width: 76%;
    height: 100%;
    background: linear-gradient(90deg, var(--red), var(--gold));
    box-shadow: 0 0 18px rgba(255,49,88,.50);
}
.front-mini-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.front-mini-grid div, .front-feature-card, .front-step, .front-admin-strip {
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    background: rgba(8,15,28,.78);
}
.front-mini-grid div { padding: 12px; }
.front-mini-grid span, .front-feature-card p, .front-step p, .front-admin-strip p { color: var(--text-soft); }
.front-mini-grid strong { display: block; color: var(--gold); font-size: 1.28rem; }
.front-section { margin-top: 24px; }
.front-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.front-feature-card {
    min-height: 190px;
    padding: 18px;
}
.front-feature-card i {
    color: var(--green);
    font-size: 2rem;
}
.front-feature-card h3, .front-step h3 { margin: 12px 0 7px; font-size: 1.12rem; font-weight: 900; }
.front-workflow {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}
.front-step-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}
.front-step { min-height: 160px; padding: 16px; }
.front-step span {
    color: var(--gold);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-weight: 900;
}
.front-admin-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 22px;
    border-color: rgba(247,201,72,.26);
    background: rgba(28,24,15,.58);
}
.front-admin-strip i { color: var(--gold); font-size: 2rem; }
.front-admin-strip h2 { margin: 8px 0; font-weight: 900; }

@media (max-width: 767.98px) {
    .user-dashboard { gap: 16px; }
    .dashboard-hero { min-height: 292px; background-position: 68% center; }
    .dashboard-hero-content { width: 76%; min-height: 292px; padding: 22px 18px 72px; justify-content: flex-start; }
    .dashboard-hero h1 { font-size: 1.48rem; margin-top: 12px; }
    .dashboard-hero p { font-size: .78rem; }
    .dashboard-hero-balance { left: 16px; right: auto; bottom: 14px; min-width: 170px; padding: 9px 12px; }
    .dashboard-hero-balance strong { font-size: 1.25rem; }
    .dashboard-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
    .dashboard-actions a { min-height: 67px; padding: 7px 2px; font-size: .65rem; }
    .dashboard-actions i { font-size: 1.18rem; }
    .wallet-dashboard-grid, .business-dashboard-grid, .activity-dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .wallet-dashboard-item, .business-dashboard-item, .activity-dashboard-item { min-height: 103px; padding: 12px; }
    .wallet-dashboard-item strong, .business-dashboard-item strong, .activity-dashboard-item strong { font-size: 1rem; }
    .dashboard-referral { grid-template-columns: 1fr; align-items: stretch; padding: 15px; }
    .gaming-hero.compact { align-items: flex-start; flex-direction: column; padding: 18px; }
    .bot-status-ribbon, .bot-plan-grid, .reward-grid, .game-card-grid, .compact-games { grid-template-columns: 1fr; }
    .chat-layout { grid-template-columns: 1fr; }
    .ai-chat-hero {
        flex-direction: column;
        padding: 18px;
    }
    .ai-chat-hero h1 {
        font-size: 2rem;
    }
    .ai-chat-status {
        min-width: 0;
    }
    .ai-chat-layout {
        grid-template-columns: 1fr;
    }
    .ai-chat-panel {
        order: 2;
    }
    .ai-chat-messages {
        min-height: 420px;
        height: 56vh;
        padding: 13px;
    }
    .ai-bubble {
        max-width: 86%;
    }
    .ai-compose {
        grid-template-columns: 1fr;
    }
    .ai-compose .btn {
        width: 100%;
    }
    .ai-floating-help {
        right: 12px;
        bottom: 82px;
        width: 52px;
        height: 52px;
    }
    .user-popup-stack {
        top: 76px;
        right: 12px;
    }
    .user-meeting-panel {
        left: 10px;
        right: 10px;
        bottom: 142px;
        max-width: none;
        padding: 12px;
    }
    .user-meeting-grid {
        grid-template-columns: 1fr;
    }
    .user-meeting-card {
        min-height: 76px;
    }
    .site-update-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .chat-messages { height: 420px; }
    .chat-bubble { max-width: 92%; }
    .presentation-top { align-items: flex-start; flex-direction: column; }
    .presentation-body { grid-template-columns: 1fr; }
    .presentation-agenda {
        border-right: 0;
        border-bottom: 1px solid rgba(103,232,249,.14);
        max-height: 260px;
        overflow-y: auto;
    }
    .business-slide { aspect-ratio: 10 / 14; }
    .detailed-slide { grid-template-columns: 1fr; gap: 16px; }
    .plan-percent-grid, .plan-table-grid { grid-template-columns: 1fr; }
    .front-hero { grid-template-columns: 1fr; min-height: 0; padding: 22px; }
    .front-flight-card { min-height: 360px; }
    .front-feature-grid, .front-step-grid { grid-template-columns: 1fr; }
    .front-workflow { grid-template-columns: 1fr; }
    .front-admin-strip { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 380px) {
    .dashboard-hero-content { width: 84%; }
    .dashboard-actions span { font-size: .6rem; }
    .referral-copy-wrap { grid-template-columns: minmax(0, 1fr) 48px; }
    .referral-copy-btn { min-width: 48px; }
    .referral-copy-btn span { display: none; }
}
.aviator-shell {
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid rgba(103,232,249,.22);
    background: linear-gradient(145deg, rgba(7,12,24,.96), rgba(14,18,37,.96));
    box-shadow: 0 0 34px rgba(255,49,88,.18), 0 26px 70px rgba(0,0,0,.42);
}
.aviator-game-layout {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 12px;
    align-items: stretch;
}
.demo-players-panel {
    min-height: 560px;
    border: 1px solid rgba(103,232,249,.18);
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(8,14,28,.98), rgba(13,20,35,.96));
    box-shadow: 0 0 24px rgba(55,183,255,.12);
}
.demo-players-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px;
    border-bottom: 1px solid rgba(103,232,249,.14);
    font-weight: 800;
}
.demo-players-head i { color: var(--green); margin-right: 5px; }
.demo-players-head span {
    color: var(--gold);
    font-size: .62rem;
    border: 1px solid rgba(247,201,72,.34);
    border-radius: 4px;
    padding: 3px 5px;
}
.demo-disclaimer {
    margin: 0;
    padding: 8px 12px;
    color: #8fa0b6;
    font-size: .67rem;
    border-bottom: 1px solid rgba(255,255,255,.06);
}
.demo-player-list { padding: 5px 8px 9px; }
.demo-player-row {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    align-items: center;
    gap: 7px;
    padding: 7px 4px;
    border-bottom: 1px solid rgba(255,255,255,.055);
}
.demo-player-row.updated { animation: demoPulse .45s ease; }
@keyframes demoPulse { 50% { background: rgba(52,245,197,.12); } }
.demo-avatar {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--green);
    background: rgba(52,245,197,.10);
}
.demo-player-name strong, .demo-player-name small,
.demo-player-result span, .demo-player-result strong { display: block; }
.demo-player-name strong { font-size: .76rem; }
.demo-player-name small { color: #8fa0b6; font-size: .67rem; }
.demo-player-result { text-align: right; }
.demo-player-result span { color: var(--green); font-size: .7rem; font-weight: 800; }
.demo-player-result strong { font-size: .73rem; }
.aviator-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: rgba(3,8,18,.86);
    border-bottom: 1px solid rgba(103,232,249,.16);
    color: var(--text-soft);
    font-size: .88rem;
}
.aviator-topbar strong {
    color: var(--red);
    margin-right: 10px;
    text-shadow: 0 0 14px rgba(255,49,88,.38);
}
.aviator-top-actions { display: flex; align-items: center; gap: 12px; }
.sound-toggle {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #07120f;
    background: var(--green);
    border: 0;
    border-radius: 6px;
    padding: 5px 9px;
    font-size: .76rem;
    font-weight: 800;
    box-shadow: 0 0 14px rgba(52,245,197,.28);
}
.sound-toggle.muted { color: #d8e1ee; background: rgba(255,255,255,.10); box-shadow: none; }
.aviator-stage {
    --flight-progress: 0%;
    min-height: 430px;
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 55% 44%, rgba(155,92,255,.34), transparent 22%),
        repeating-conic-gradient(from 8deg at 50% 100%, rgba(255,255,255,.035) 0deg 8deg, transparent 8deg 16deg),
        linear-gradient(120deg, #070913 0%, #140a24 56%, #090b14 100%);
}
.runway-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(103,232,249,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(103,232,249,.045) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to top, rgba(0,0,0,.88), transparent 75%);
}
.flight-curve {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}
.curve-shadow, .curve-line {
    fill: none;
    stroke-linecap: round;
}
.curve-shadow {
    stroke: rgba(255,49,88,.18);
    stroke-width: 18;
}
.curve-line {
    stroke: #ff3158;
    stroke-width: 5;
    filter: drop-shadow(0 0 12px rgba(255,49,88,.75));
    stroke-dasharray: 1200;
    stroke-dashoffset: 1200;
}
.flight-fill {
    position: absolute;
    left: 0;
    bottom: 0;
    width: var(--flight-progress);
    height: 48%;
    background: linear-gradient(60deg, rgba(255,49,88,.48), rgba(255,49,88,.12));
    clip-path: polygon(0 100%, 100% 0, 100% 100%);
    transition: width .08s linear;
    z-index: 1;
}
.aviator-plane {
    position: absolute;
    left: 4%;
    top: 78%;
    width: 84px;
    height: 34px;
    border-radius: 50% 12px 12px 50%;
    background: linear-gradient(135deg, #ff3158, #ff7a3d);
    box-shadow: 0 0 18px rgba(255,49,88,.65);
    z-index: 5;
    transition: filter .2s ease;
}
.aviator-plane::before {
    content: "";
    position: absolute;
    right: 18px;
    top: -22px;
    width: 46px;
    height: 28px;
    border-radius: 70% 30% 0 0;
    border-top: 4px solid #ff3158;
    border-left: 3px solid #ff3158;
    transform: skewX(-20deg);
}
.aviator-plane::after {
    content: "";
    position: absolute;
    left: -20px;
    top: 11px;
    width: 26px;
    height: 8px;
    border-radius: 99px;
    background: linear-gradient(90deg, transparent, rgba(247,201,72,.8), rgba(255,255,255,.9));
    filter: blur(.2px);
}
.plane-body {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    font-size: .7rem;
    font-weight: 900;
    color: white;
}
.aviator-plane.crashed {
    filter: grayscale(.2) drop-shadow(0 0 22px rgba(255,49,88,.9));
    animation: crashShake .28s linear infinite;
}
@keyframes crashShake {
    0%,100% { margin-top: 0; }
    50% { margin-top: 8px; }
}
.multiplier-display {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    z-index: 4;
    font-size: clamp(3rem, 12vw, 6.8rem);
    font-weight: 900;
    color: #fff;
    text-shadow: 0 0 28px rgba(155,92,255,.82), 0 0 52px rgba(55,183,255,.32);
}
.crash-banner {
    position: absolute;
    left: 50%;
    top: 58%;
    transform: translate(-50%, -50%) scale(.9);
    z-index: 7;
    color: #fff;
    background: linear-gradient(135deg, #ff3158, #8b1028);
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 8px;
    padding: 10px 20px;
    font-weight: 900;
    letter-spacing: 0;
    opacity: 0;
    box-shadow: 0 0 30px rgba(255,49,88,.58);
    transition: opacity .18s ease, transform .18s ease;
}
.crash-banner.show {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}
.aviator-controls {
    display: grid;
    grid-template-columns: 1fr 1fr 1.2fr;
    gap: 12px;
    padding: 14px;
    background: rgba(5,10,20,.92);
    border-top: 1px solid rgba(103,232,249,.16);
}
.control-panel {
    border: 1px solid rgba(103,232,249,.16);
    border-radius: 8px;
    padding: 12px;
    background: rgba(255,255,255,.04);
}
.control-panel span {
    display: block;
    color: var(--text-soft);
    font-size: .82rem;
}
.control-panel strong {
    display: block;
    font-size: 1.15rem;
    color: white;
}
.control-action {
    align-self: stretch;
    display: grid;
}
@media (max-width: 800px) {
    body { padding-bottom: 78px; }
    main.container {
        padding-left: 12px;
        padding-right: 12px;
    }
    .hero {
        min-height: auto;
        padding: 24px 18px !important;
    }
    .hero .display-4 {
        font-size: 2.15rem;
        line-height: 1.05;
    }
    .lead { font-size: .98rem; }
    .cardx, .stat, .table-wrap { padding: 15px; }
    .row.g-3 { --bs-gutter-x: .75rem; --bs-gutter-y: .75rem; }
    .table-responsive {
        border-radius: 8px;
        overflow-x: auto;
    }
    .btn-lg {
        width: 100%;
        margin-bottom: 8px;
    }
    .bottom-nav {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
    .aviator-topbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .referral-copy-wrap { grid-template-columns: 1fr; }
    .referral-copy-btn { width: 100%; }
    .crypto-network-card { grid-template-columns: 1fr; }
    .aviator-game-layout { grid-template-columns: 1fr; }
    .demo-players-panel {
        min-height: 0;
        order: 2;
    }
    .demo-player-list {
        max-height: 260px;
        overflow-y: auto;
    }
    .aviator-top-actions { width: 100%; justify-content: space-between; }
    .admin-view-banner {
        justify-content: space-between;
        gap: 8px;
        font-size: .78rem;
    }
    .aviator-stage {
        min-height: 330px;
    }
    .aviator-plane {
        width: 62px;
        height: 27px;
    }
    .aviator-plane::before {
        right: 12px;
        top: -17px;
        width: 34px;
        height: 22px;
    }
    .aviator-controls {
        grid-template-columns: 1fr;
    }
    .control-panel strong {
        font-size: 1.05rem;
    }
    .admin-layout { grid-template-columns: 1fr; }
    .side { min-height: auto; }
}
