:root {
    --bg:#08090d;
    --surface:#11131a;
    --surface2:#171a22;
    --soft:#20242e;
    --text:#f7f8fb;
    --muted:#8e96a7;
    --line:rgba(255,255,255,.08);
    --accent:#ff2c55;
    --accent2:#8b5cf6;
    --radius:18px;
    --shadow:0 18px 55px rgba(0,0,0,.32)
}

* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth;
    background:var(--bg)
}

body {
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:"Avenir Next","Segoe UI",Inter,system-ui,-apple-system,sans-serif;
    font-weight:650;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden
}

body::before {
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    background:radial-gradient(900px 520px at 92% -20%,rgba(139,92,246,.08),transparent 60%),radial-gradient(700px 420px at -10% 20%,rgba(255,44,85,.055),transparent 58%);
    z-index:-1
}

a {
    color:inherit;
    text-decoration:none
}

button,input {
    font:inherit
}

button,a {
    -webkit-tap-highlight-color:transparent
}

button {
    cursor:pointer
}

.container {
    width:min(1180px,calc(100% - 36px));
    margin-inline:auto
}

.app-main {
    min-height:100vh;
    padding-top:66px;
    padding-bottom:28px
}

.app-main--auth {
    padding:0
}

.grid-page {
    padding-top:28px;
    padding-bottom:52px
}

.compact-page {
    padding-top:22px
}

.eyebrow,.section-head small {
    font-size:9px;
    font-weight:850;
    letter-spacing:1.45px;
    text-transform:uppercase;
    color:#ff6482
}

.page-title {
    font-size:34px;
    line-height:1.04;
    letter-spacing:-1.4px;
    margin:7px 0
}

.page-sub {
    font-size:12px;
    color:var(--muted);
    font-weight:600;
    margin:0;
    line-height:1.6
}

.page-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:22px
}

.top-nav {
    height:60px;
    position:fixed;
    inset:0 0 auto;
    z-index:700;
    background:linear-gradient(180deg,rgba(8,9,13,.93),rgba(8,9,13,.58),transparent);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px)
}

.nav-inner {
    height:100%;
    width:min(1180px,calc(100% - 30px));
    margin:auto;
    display:flex;
    align-items:center;
    gap:16px
}

.brand-mark {
    width:38px;
    height:38px;
    display:block;
    flex:0 0 38px;
    border-radius:12px;
    box-shadow:0 8px 22px rgba(255,44,85,.18)
}

.brand-mark img {
    width:100%;
    height:100%;
    display:block
}

.nav-links {
    display:flex;
    align-items:center;
    gap:4px
}

.nav-links a {
    padding:8px 11px;
    border-radius:11px;
    color:#aab0bd;
    font-size:11px;
    font-weight:800
}

.nav-links a:hover,.nav-links a.active {
    background:rgba(255,255,255,.07);
    color:#fff
}

.nav-spacer {
    flex:1
}

.nav-search {
    height:36px;
    width:min(260px,24vw);
    display:flex;
    align-items:center;
    gap:8px;
    padding:0 11px;
    border:1px solid var(--line);
    background:rgba(16,18,25,.72);
    border-radius:12px
}

.nav-search img {
    width:16px;
    height:16px;
    filter:invert(1);
    opacity:.52
}

.nav-search input {
    border:0;
    outline:0;
    background:transparent;
    color:#fff;
    width:100%;
    font-size:11px
}

.nav-search input::placeholder {
    color:#6f7685
}

.nav-avatar {
    width:36px;
    height:36px;
    border:1px solid var(--line);
    border-radius:12px;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.04)
}

.nav-avatar img {
    width:18px;
    height:18px;
    filter:invert(1);
    opacity:.84
}

.bottom-nav {
    display:none
}

.hero {
    position:relative;
    min-height:470px;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
    margin-top:-66px;
    padding-top:66px
}

.hero-bg,.detail-backdrop,.series-banner {
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center 22%
}

.hero-bg::after,.detail-backdrop::after,.series-banner::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(8,9,13,.98) 4%,rgba(8,9,13,.67) 46%,rgba(8,9,13,.2) 78%),linear-gradient(0deg,var(--bg) 0%,transparent 45%,rgba(8,9,13,.12))
}

.hero-content {
    position:relative;
    z-index:2;
    padding-bottom:48px
}

.hero-content h1 {
    font-size:clamp(34px,5vw,64px);
    line-height:.96;
    letter-spacing:-2.8px;
    max-width:700px;
    margin:9px 0 12px
}

.hero-content p {
    max-width:560px;
    color:#c7cbd5;
    font-size:12px;
    line-height:1.65;
    margin:0 0 17px;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden
}

.hero-actions,.action-row {
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap
}

.primary-btn,.ghost-btn,.icon-action,.back-pill {
    border:0;
    border-radius:12px;
    min-height:38px;
    padding:0 14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    font-size:11px;
    font-weight:850;
    transition:.18s ease
}

.primary-btn {
    background:#fff;
    color:#0a0b0e;
    box-shadow:0 7px 22px rgba(255,255,255,.08)
}

.primary-btn:hover {
    transform:translateY(-1px)
}

.ghost-btn {
    background:rgba(255,255,255,.07);
    border:1px solid var(--line);
    color:#fff
}

.icon-action,.back-pill {
    width:38px;
    padding:0;
    background:rgba(255,255,255,.08);
    border:1px solid var(--line);
    color:#fff
}

.full {
    width:100%
}

.shelf {
    width:min(1180px,calc(100% - 36px));
    margin:26px auto
}

.section-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
    margin-bottom:11px
}

.section-head h2 {
    font-size:18px;
    line-height:1.1;
    letter-spacing:-.55px;
    margin:3px 0 0
}

.section-head>a {
    font-size:10px;
    color:#9ba2b0
}

.media-row,.cast-row {
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:126px;
    gap:10px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    padding-bottom:7px;
    scrollbar-width:none
}

.media-row::-webkit-scrollbar,.cast-row::-webkit-scrollbar,.season-strip::-webkit-scrollbar,.genre-chips::-webkit-scrollbar {
    display:none
}

.media-card {
    min-width:0;
    display:block
}

.media-card__poster {
    position:relative;
    aspect-ratio:2/3;
    border-radius:13px;
    overflow:hidden;
    background:#151821;
    border:1px solid rgba(255,255,255,.055);
    box-shadow:0 10px 24px rgba(0,0,0,.18)
}

.media-card__poster img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .24s ease
}

.media-card:hover .media-card__poster img {
    transform:scale(1.035)
}

.media-card__type {
    position:absolute;
    left:6px;
    bottom:6px;
    padding:4px 6px;
    border-radius:7px;
    background:rgba(8,9,13,.78);
    backdrop-filter:blur(8px);
    font-size:7px;
    font-weight:900;
    letter-spacing:.7px
}

.media-card__body {
    padding:7px 2px 0;
    min-width:0
}

.media-card__body strong {
    display:block;
    font-size:10px;
    line-height:1.25;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}

.media-card__body span {
    display:block;
    color:#727b8d;
    font-size:8.5px;
    margin-top:3px;
    font-weight:700
}

.media-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:16px 12px
}

.compact-grid {
    margin-top:18px
}

.cast-row {
    grid-auto-columns:78px;
    gap:11px
}

.cast-card {
    min-width:0
}

.cast-card img {
    width:78px;
    height:78px;
    border-radius:22px;
    object-fit:cover;
    background:#161923;
    display:block;
    border:1px solid var(--line)
}

.cast-card strong,.cast-card span {
    display:block;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}

.cast-card strong {
    font-size:9px;
    margin-top:6px
}

.cast-card span {
    font-size:8px;
    color:#777f90;
    margin-top:2px
}

.segmented {
    display:inline-flex;
    padding:3px;
    border-radius:12px;
    background:#11141c;
    border:1px solid var(--line)
}

.segmented a {
    padding:7px 10px;
    border-radius:9px;
    font-size:9px;
    color:#7d8595
}

.segmented a.active {
    background:#fff;
    color:#0b0c10
}

.genre-section {
    margin-bottom:20px
}

.genre-chips,.history-chips {
    display:flex;
    gap:7px;
    overflow-x:auto;
    padding-bottom:4px
}

.genre-chips a,.history-chips a,.detail-genres a {
    flex:0 0 auto;
    padding:7px 10px;
    border-radius:999px;
    background:#141720;
    border:1px solid var(--line);
    font-size:9px;
    color:#c4c9d3
}

.genre-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
    margin-top:18px
}

.genre-tile {
    min-height:78px;
    padding:15px;
    border:1px solid var(--line);
    border-radius:16px;
    background:linear-gradient(145deg,#151821,#101219);
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    gap:3px;
    transition:.18s
}

.genre-tile:hover {
    transform:translateY(-2px);
    border-color:rgba(255,44,85,.26)
}

.genre-tile strong {
    font-size:12px
}

.genre-tile span {
    font-size:8px;
    color:#747d8e
}

.search-box {
    display:flex;
    gap:8px;
    margin:17px 0 22px
}

.apk-search {
    height:48px;
    background:#12151d;
    border:1px solid var(--line);
    border-radius:15px;
    padding:5px
}

.apk-search img {
    width:18px;
    margin-left:8px;
    filter:invert(1);
    opacity:.45
}

.apk-search input {
    flex:1;
    background:transparent;
    border:0;
    outline:0;
    color:#fff;
    padding:0 5px;
    font-size:11px
}

.search-history {
    margin:4px 0 24px
}

.search-start {
    min-height:210px;
    border:1px dashed var(--line);
    border-radius:18px;
    display:grid;
    place-items:center;
    align-content:center;
    text-align:center;
    gap:8px;
    color:#81899a
}

.search-start img {
    width:34px;
    filter:invert(1);
    opacity:.22
}

.search-start strong {
    font-size:13px;
    color:#cbd0da
}

.search-start span {
    font-size:9px
}

.results-head {
    margin-top:4px
}

.detail-movie,.series-page {
    position:relative;
    margin-top:-66px;
    padding-top:66px;
    min-height:100vh
}

.detail-backdrop,.series-banner {
    height:min(76vh,720px);
    position:absolute
}

.detail-backdrop::after,.series-banner::after {
    background:linear-gradient(90deg,rgba(8,9,13,.97) 5%,rgba(8,9,13,.74) 48%,rgba(8,9,13,.3) 82%),linear-gradient(0deg,var(--bg) 0%,rgba(8,9,13,.5) 28%,transparent 65%)
}

.detail-content {
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:180px minmax(0,650px);
    gap:24px;
    align-items:end;
    padding-top:150px;
    padding-bottom:44px;
    min-height:590px
}

.detail-poster,.series-poster {
    width:180px;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.14);
    box-shadow:var(--shadow)
}

.detail-copy h1,.series-info h1 {
    font-size:clamp(30px,4vw,49px);
    line-height:.98;
    letter-spacing:-2px;
    margin:6px 0 10px
}

.detail-copy>p,.series-info>p {
    font-size:11px;
    line-height:1.65;
    color:#b8beca;
    max-width:650px;
    margin:12px 0 15px;
    display:-webkit-box;
    -webkit-line-clamp:4;
    -webkit-box-orient:vertical;
    overflow:hidden
}

.meta-line {
    display:flex;
    gap:7px;
    align-items:center;
    flex-wrap:wrap;
    color:#c9ced8;
    font-size:9px
}

.meta-line span {
    padding:5px 7px;
    border-radius:8px;
    background:rgba(255,255,255,.065);
    border:1px solid rgba(255,255,255,.055)
}

.detail-genres {
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    margin-top:9px
}

.detail-genres a {
    background:rgba(255,255,255,.06);
    font-size:8px;
    padding:5px 8px
}

.series-wrap {
    position:relative;
    z-index:2;
    padding-top:120px;
    padding-bottom:42px
}

.series-top {
    display:grid;
    grid-template-columns:160px minmax(0,690px);
    gap:22px;
    align-items:end;
    min-height:410px
}

.series-poster {
    width:160px
}

.season-strip {
    display:flex;
    gap:6px;
    overflow-x:auto;
    margin:18px 0 22px;
    padding:4px 0
}

.season-strip a {
    flex:0 0 auto;
    min-width:38px;
    height:34px;
    padding:0 10px;
    border-radius:10px;
    display:grid;
    place-items:center;
    background:#13161e;
    border:1px solid var(--line);
    font-size:9px;
    color:#9299a7
}

.season-strip a.active {
    background:#fff;
    color:#0a0b0e
}

.episode-head {
    margin-top:4px
}

.episode-list {
    display:grid;
    gap:8px
}

.episode-card {
    position:relative;
    display:grid;
    grid-template-columns:132px 1fr 34px;
    align-items:center;
    gap:11px;
    padding:7px;
    border-radius:14px;
    background:#10131a;
    border:1px solid var(--line);
    overflow:hidden;
    transition:.16s
}

.episode-card:hover {
    background:#141821;
    border-color:rgba(255,255,255,.13)
}

.episode-hit {
    position:absolute;
    inset:0;
    z-index:3;
    border:0;
    background:transparent
}

.episode-card img {
    width:132px;
    aspect-ratio:16/9;
    object-fit:cover;
    border-radius:10px;
    background:#171a22
}

.episode-copy {
    min-width:0
}

.episode-card h3 {
    display:flex;
    align-items:center;
    gap:7px;
    margin:0;
    font-size:11px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}

.episode-card h3 span {
    font-size:8px;
    color:#ff708c;
    background:rgba(255,44,85,.11);
    padding:4px 6px;
    border-radius:7px
}

.episode-card p {
    font-size:9px;
    line-height:1.45;
    color:#8b93a3;
    margin:5px 0 4px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}

.episode-meta {
    font-size:8px;
    color:#636b7a
}

.play-mini {
    width:30px;
    height:30px;
    border-radius:10px;
    background:#fff;
    color:#111;
    display:grid;
    place-items:center;
    font-size:9px;
    z-index:2
}

.cast-head {
    margin-top:26px
}

.person-head {
    display:grid;
    grid-template-columns:155px 1fr;
    gap:22px;
    align-items:start
}

.person-head>img {
    width:155px;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:18px
}

.person-head h1 {
    font-size:34px;
    letter-spacing:-1.2px;
    margin:5px 0
}

.person-head p {
    font-size:11px;
    line-height:1.7;
    color:#aeb5c2;
    max-width:760px
}

.auth-page {
    min-height:100vh;
    display:grid;
    grid-template-columns:minmax(300px,.9fr) 1.1fr;
    background:#090a0f
}

.auth-art {
    position:relative;
    display:flex;
    align-items:flex-end;
    padding:42px;
    background:linear-gradient(160deg,rgba(255,44,85,.26),rgba(139,92,246,.13) 48%,#0b0d12 78%);
    overflow:hidden
}

.auth-art::after {
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.11),transparent 65%);
    right:-180px;
    top:-130px
}

.auth-art h1 {
    font-size:clamp(42px,6vw,76px);
    line-height:.9;
    letter-spacing:-4px;
    margin:8px 0 0
}

.auth-panel {
    display:flex;
    align-items:center;
    justify-content:center;
    padding:28px
}

.auth-card {
    width:min(390px,100%);
    background:#101219;
    border:1px solid var(--line);
    border-radius:22px;
    padding:24px;
    box-shadow:var(--shadow)
}

.auth-card .brand,.auth-card>a.brand {
    display:inline-block;
    width:40px;
    height:40px;
    font-size:0;
    background:url('/assets/icons/logo.svg') center/contain no-repeat
}

.auth-card h2 {
    font-size:25px;
    letter-spacing:-.8px;
    margin:14px 0 5px
}

.auth-card p {
    color:var(--muted);
    font-size:10px;
    line-height:1.55
}

.field {
    display:grid;
    gap:5px;
    margin-top:11px
}

.field label {
    font-size:9px;
    color:#8f97a8
}

.field input {
    height:42px;
    padding:0 12px;
    border-radius:11px;
    border:1px solid var(--line);
    background:#161922;
    color:#fff;
    outline:0;
    font-size:10px
}

.field input:focus {
    border-color:rgba(255,44,85,.5)
}

.auth-links {
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin:12px 0;
    font-size:9px;
    color:#aab0bd
}

.account-hero {
    display:flex;
    align-items:center;
    gap:15px;
    background:linear-gradient(135deg,#161923,#0f1117);
    border:1px solid var(--line);
    border-radius:20px;
    padding:17px
}

.avatar {
    width:66px;
    height:66px;
    border-radius:18px;
    object-fit:cover;
    background:#202431;
    border:2px solid rgba(255,255,255,.08)
}

.account-hero h1 {
    margin:1px 0 3px;
    font-size:24px
}

.account-hero p {
    color:var(--muted);
    margin:0;
    font-size:9px
}

.account-actions {
    margin-left:auto;
    display:flex;
    gap:7px
}

.setting-grid,.plan-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:11px;
    margin-top:14px
}

.setting-card,.plan-card,.admin-card {
    background:#11141b;
    border:1px solid var(--line);
    border-radius:17px;
    padding:15px
}

.setting-card h3,.plan-card h3,.admin-card h3 {
    font-size:13px;
    margin:0 0 6px
}

.setting-card p,.plan-card p,.admin-card p {
    color:var(--muted);
    font-size:9px;
    line-height:1.55
}

.plan-card.featured {
    border-color:rgba(255,44,85,.42);
    box-shadow:0 0 0 1px rgba(255,44,85,.07) inset
}

.price {
    font-size:25px;
    font-weight:900;
    margin:9px 0
}

.price small {
    font-size:8px;
    color:var(--muted)
}

.admin-shell {
    display:grid;
    gap:12px
}

.admin-kpis {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px
}

.admin-kpi {
    padding:15px;
    border:1px solid var(--line);
    background:linear-gradient(145deg,#151821,#101219);
    border-radius:16px
}

.admin-kpi span {
    display:block;
    color:#777f90;
    font-size:8px;
    text-transform:uppercase;
    letter-spacing:1px
}

.admin-kpi strong {
    display:block;
    font-size:20px;
    margin-top:5px
}

.admin-layout {
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:11px
}

.admin-user {
    display:grid;
    grid-template-columns:52px 1fr;
    gap:10px;
    align-items:center;
    padding:10px;
    border-radius:13px;
    background:#0c0e13;
    border:1px solid var(--line);
    margin-top:10px
}

.admin-user img {
    width:52px;
    height:52px;
    border-radius:14px;
    object-fit:cover
}

.admin-user strong,.admin-user span {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis
}

.admin-user strong {
    font-size:11px
}

.admin-user span {
    font-size:8px;
    color:#7d8595;
    margin-top:2px
}

.pm-dialog,.ad-dialog {
    border:1px solid rgba(255,255,255,.11);
    background:#12151d;
    color:#fff;
    border-radius:20px;
    padding:20px;
    box-shadow:0 28px 90px rgba(0,0,0,.7);
    max-width:min(90vw,390px);
    width:100%;
    inset:0;
    margin:auto;
    position:fixed
}

.pm-dialog::backdrop,.ad-dialog::backdrop {
    background:rgba(0,0,0,.78);
    backdrop-filter:blur(7px)
}

.dialog-x,.ad-x {
    position:absolute;
    right:10px;
    top:10px;
    width:31px;
    height:31px;
    border-radius:10px;
    border:0;
    background:rgba(255,255,255,.08);
    color:#fff;
    font-size:17px
}

.dialog-icon,.vip-mark {
    width:46px;
    height:46px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:rgba(255,44,85,.13);
    color:#ff6482;
    font-weight:900
}

.pm-dialog h3 {
    font-size:20px;
    margin:13px 0 5px
}

.pm-dialog p {
    color:var(--muted);
    font-size:10px;
    line-height:1.55
}

.share-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    margin-top:14px
}

.share-grid button {
    padding:10px;
    border:0;
    border-radius:10px;
    background:#20242e;
    color:#fff;
    font-size:9px;
    font-weight:800
}

.share-wide {
    grid-column:1/-1
}

.ad-dialog {
    padding:8px;
    text-align:center;
    max-width:min(88vw,360px)
}

.ad-dialog img {
    width:100%;
    aspect-ratio:4/5;
    object-fit:cover;
    border-radius:14px;
    display:block
}

.ad-dialog small {
    display:block;
    color:#777f91;
    padding:6px 0 1px;
    font-size:8px
}

.player-overlay {
    position:fixed;
    inset:0;
    z-index:12000;
    background:#000;
    display:none;
    padding:8px
}

.player-overlay.open {
    display:block
}

.player-shell {
    width:100%;
    height:100%;
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    background:#030304;
    overflow:hidden;
    display:grid;
    grid-template-rows:auto 1fr
}

.player-top {
    min-height:54px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:7px 9px;
    background:#0d0f14;
    border-bottom:1px solid rgba(255,255,255,.07)
}

.player-top small {
    display:block;
    color:#697181;
    font-size:7px;
    text-transform:uppercase;
    letter-spacing:1px
}

.player-top strong {
    display:block;
    font-size:11px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width:78vw
}

.icon-btn {
    width:36px;
    height:36px;
    border-radius:11px;
    border:1px solid var(--line);
    background:#171a22;
    color:#fff;
    font-size:17px
}

.player-stage {
    position:relative;
    min-height:0
}

.player-stage iframe {
    width:100%;
    height:100%;
    border:0;
    position:absolute;
    inset:0;
    z-index:2;
    background:#000
}

.player-loader {
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    color:#777;
    font-size:10px;
    z-index:1
}

.toast-host {
    position:fixed;
    right:12px;
    bottom:86px;
    z-index:14000;
    display:grid;
    gap:6px
}

.toast {
    padding:9px 11px;
    border-radius:11px;
    background:#fff;
    color:#111;
    font-size:9px;
    font-weight:900;
    box-shadow:0 12px 36px rgba(0,0,0,.35)
}

.empty {
    padding:38px 16px;
    text-align:center;
    border:1px dashed var(--line);
    border-radius:17px;
    color:var(--muted);
    font-size:10px
}

.legal {
    max-width:760px
}

.legal h1 {
    font-size:34px
}

.legal p,.legal li {
    color:#b3bac8;
    line-height:1.75;
    font-size:11px
}

.badge {
    display:inline-flex;
    padding:5px 8px;
    border-radius:999px;
    background:#1d2230;
    color:#cdd2dc;
    font-size:8px
}

.badge.vip {
    background:rgba(255,44,85,.15);
    color:#ff6d89
}

.pager {
    justify-content:center;
    margin-top:22px
}

@media(max-width:980px) {
    .media-grid {
        grid-template-columns:repeat(5,minmax(0,1fr))
    }

    .nav-links {
        display:none
    }

    .setting-grid,.plan-grid {
        grid-template-columns:1fr 1fr
    }

    .admin-layout {
        grid-template-columns:1fr
    }

    .detail-content {
        grid-template-columns:155px minmax(0,1fr)
    }

    .detail-poster {
        width:155px
    }

    .series-top {
        grid-template-columns:145px minmax(0,1fr)
    }

    .series-poster {
        width:145px
    }

}

@media(max-width:760px) {
    .top-nav {
        height:54px;
        background:linear-gradient(180deg,rgba(8,9,13,.94),rgba(8,9,13,.42),transparent)
    }

    .nav-inner {
        width:calc(100% - 20px)
    }

    .brand-mark {
        width:34px;
        height:34px;
        flex-basis:34px
    }

    .nav-search {
        display:none
    }

    .nav-avatar {
        margin-left:auto;
        width:34px;
        height:34px
    }

    .app-main {
        padding-top:58px;
        padding-bottom:82px
    }

    .bottom-nav {
        position:fixed;
        display:grid;
        grid-template-columns:repeat(5,1fr);
        z-index:900;
        left:8px;
        right:8px;
        bottom:calc(7px + env(safe-area-inset-bottom));
        height:58px;
        background:rgba(16,18,25,.94);
        border:1px solid rgba(255,255,255,.09);
        backdrop-filter:blur(18px);
        border-radius:18px;
        padding:5px;
        box-shadow:0 12px 38px rgba(0,0,0,.45)
    }

    .bottom-nav a {
        display:grid;
        place-items:center;
        align-content:center;
        gap:2px;
        border-radius:13px;
        color:#8b93a4;
        font-size:7.5px;
        font-weight:800
    }

    .bottom-nav a img {
        width:19px;
        height:19px;
        filter:invert(1);
        opacity:.52
    }

    .bottom-nav a.active {
        background:#fff;
        color:#111
    }

    .bottom-nav a.active img {
        filter:none;
        opacity:.9
    }

    .hero {
        min-height:440px;
        margin-top:-58px;
        padding-top:58px
    }

    .hero-bg::after {
        background:linear-gradient(0deg,var(--bg) 0%,rgba(8,9,13,.42) 48%,rgba(8,9,13,.12)),linear-gradient(90deg,rgba(8,9,13,.74),rgba(8,9,13,.18))
    }

    .hero-content {
        padding-bottom:33px
    }

    .hero-content h1 {
        font-size:36px;
        letter-spacing:-1.8px;
        max-width:90%
    }

    .hero-content p {
        font-size:10px;
        max-width:90%;
        -webkit-line-clamp:2
    }

    .media-grid {
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap:13px 9px
    }

    .media-row {
        grid-auto-columns:112px;
        gap:9px
    }

    .media-card__body strong {
        font-size:9px
    }

    .shelf {
        margin-top:21px;
        margin-bottom:21px
    }

    .section-head h2 {
        font-size:16px
    }

    .genre-grid {
        grid-template-columns:repeat(2,1fr)
    }

    .page-title {
        font-size:29px
    }

    .page-head {
        align-items:flex-start;
        flex-direction:column
    }

    .detail-movie,.series-page {
        margin-top:-58px;
        padding-top:58px
    }

    .detail-backdrop,.series-banner {
        height:560px
    }

    .detail-backdrop::after,.series-banner::after {
        background:linear-gradient(0deg,var(--bg) 1%,rgba(8,9,13,.72) 43%,rgba(8,9,13,.2) 72%),linear-gradient(90deg,rgba(8,9,13,.45),rgba(8,9,13,.1))
    }

    .detail-content {
        grid-template-columns:105px 1fr;
        gap:14px;
        align-items:end;
        min-height:535px;
        padding-top:220px;
        padding-bottom:25px
    }

    .detail-poster {
        width:105px;
        border-radius:14px
    }

    .detail-copy h1,.series-info h1 {
        font-size:27px;
        letter-spacing:-1.2px
    }

    .detail-copy>p,.series-info>p {
        font-size:9.5px;
        -webkit-line-clamp:3
    }

    .series-wrap {
        padding-top:230px
    }

    .series-top {
        grid-template-columns:102px 1fr;
        gap:13px;
        min-height:auto
    }

    .series-poster {
        width:102px;
        border-radius:14px
    }

    .season-strip {
        margin:15px 0 18px
    }

    .episode-card {
        grid-template-columns:105px 1fr 30px;
        gap:8px
    }

    .episode-card img {
        width:105px
    }

    .episode-card p {
        display:none
    }

    .episode-card h3 {
        font-size:9.5px
    }

    .cast-row {
        grid-auto-columns:70px
    }

    .cast-card img {
        width:70px;
        height:70px;
        border-radius:18px
    }

    .auth-page {
        grid-template-columns:1fr
    }

    .auth-art {
        display:none
    }

    .setting-grid,.plan-grid {
        grid-template-columns:1fr
    }

    .account-hero {
        align-items:flex-start;
        flex-wrap:wrap
    }

    .account-actions {
        width:100%;
        margin:3px 0 0
    }

    .admin-kpis {
        grid-template-columns:1fr 1fr
    }

    .player-overlay {
        padding:0
    }

    .player-shell {
        border:0;
        border-radius:0
    }

    .player-top {
        padding-top:max(7px,env(safe-area-inset-top));
        min-height:56px
    }

}

@media(max-width:480px) {
    .container,.shelf {
        width:calc(100% - 20px)
    }

    .grid-page {
        padding-top:19px
    }

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

    .media-row {
        grid-auto-columns:104px
    }

    .media-card__poster {
        border-radius:11px
    }

    .media-card__body {
        padding-top:5px
    }

    .genre-grid {
        grid-template-columns:1fr 1fr
    }

    .genre-tile {
        min-height:68px;
        padding:12px
    }

    .hero {
        min-height:415px
    }

    .hero-content h1 {
        font-size:31px
    }

    .detail-content {
        grid-template-columns:88px 1fr;
        gap:11px;
        padding-top:235px
    }

    .detail-poster {
        width:88px
    }

    .detail-copy h1,.series-info h1 {
        font-size:23px;
        margin-bottom:7px
    }

    .detail-copy>p {
        grid-column:1/-1
    }

    .detail-genres {
        gap:4px
    }

    .detail-genres a {
        font-size:7.5px
    }

    .series-wrap {
        padding-top:240px
    }

    .series-top {
        grid-template-columns:88px 1fr;
        gap:10px
    }

    .series-poster {
        width:88px
    }

    .series-info>p {
        display:none
    }

    .series-info .action-row {
        margin-top:8px
    }

    .episode-card {
        grid-template-columns:92px 1fr 27px;
        padding:6px;
        gap:7px
    }

    .episode-card img {
        width:92px
    }

    .episode-card h3 {
        font-size:9px
    }

    .episode-card h3 span {
        font-size:7px
    }

    .episode-meta {
        font-size:7px
    }

    .play-mini {
        width:27px;
        height:27px
    }

    .account-hero {
        padding:13px
    }

    .avatar {
        width:56px;
        height:56px
    }

    .auth-panel {
        padding:14px
    }

    .auth-card {
        padding:18px;
        border-radius:18px
    }

    .pm-dialog {
        max-width:calc(100vw - 26px);
        padding:17px
    }

    .share-grid {
        grid-template-columns:1fr 1fr
    }

    .admin-kpis {
        grid-template-columns:1fr
    }

    .search-box .primary-btn {
        padding-inline:11px
    }

    .page-sub {
        font-size:10px
    }

}

@media(max-width:350px) {
    .media-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:10px 6px
    }

    .media-row {
        grid-auto-columns:96px
    }

    .bottom-nav {
        left:5px;
        right:5px
    }

    .bottom-nav a {
        font-size:7px
    }

    .bottom-nav a img {
        width:17px;
        height:17px
    }

    .episode-card {
        grid-template-columns:82px 1fr 24px
    }

    .episode-card img {
        width:82px
    }

    .series-top {
        grid-template-columns:78px 1fr
    }

    .series-poster {
        width:78px
    }

    .detail-content {
        grid-template-columns:78px 1fr
    }

    .detail-poster {
        width:78px
    }

    .primary-btn,.ghost-btn {
        font-size:9px;
        padding-inline:10px
    }

}

/* PlayMoz Lite v9 additions */ .vip-nav-badge {
    font-size:9px;
    font-weight:950;
    letter-spacing:.08em;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    padding:5px 8px;
    color:#9aa3b5
}

.vip-nav-badge.is-vip {
    color:#111;
    background:linear-gradient(135deg,#ffe39a,#f6ba45);
    border-color:transparent
}

.account-vip-strip {
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px 14px;
    margin:12px 0 18px;
    border:1px solid var(--line);
    border-radius:15px;
    background:var(--panel)
}

.account-vip-strip span {
    font-size:10px;
    color:var(--muted)
}

.account-vip-strip strong {
    font-size:12px
}

.account-vip-strip strong.is-vip {
    color:#f3c65a
}

.account-vip-strip a {
    margin-left:auto;
    font-size:10px;
    font-weight:900;
    color:var(--accent)
}

.infinite-sentinel {
    height:72px;
    display:grid;
    place-items:center;
    color:var(--muted);
    font-size:11px
}

.catalog-filter {
    flex-shrink:0
}

@media(max-width:520px) {
    .vip-nav-badge {
        display:none
    }

    .account-vip-strip {
        display:grid;
        grid-template-columns:1fr auto
    }

    .account-vip-strip a {
        grid-column:1/-1;
        margin-left:0
    }

    .catalog-filter {
        width:100%
    }

    .catalog-filter a {
        flex:1;
        text-align:center
    }

}

/* PlayMoz Lite v9 — conta, avatars e infinite scroll */ .infinite-sentinel {
    height:86px;
    display:grid;
    place-items:center;
    margin:8px 0 18px;
    color:#7f8798;
    font-size:9px;
    font-weight:850;
    letter-spacing:.06em;
    text-transform:uppercase
}

.infinite-sentinel[data-state="loading"] span {
    display:flex;
    align-items:center;
    gap:9px
}

.infinite-sentinel[data-state="loading"] span:before {
    content:"";
    width:15px;
    height:15px;
    border-radius:50%;
    border:2px solid rgba(255,255,255,.12);
    border-top-color:var(--accent);
    animation:pmSpin .7s linear infinite
}

.infinite-sentinel[data-state="done"] {
    opacity:.55
}

.infinite-sentinel[data-state="error"] {
    color:#ff7892;
    cursor:pointer
}

.infinite-new {
    animation:pmCardIn .32s ease both
}

@keyframes pmSpin {
    to {
        transform:rotate(360deg)
    }

}

@keyframes pmCardIn {
    from {
        opacity:0;
        transform:translateY(8px)
    }

    to {
        opacity:1;
        transform:none
    }

}

.account-page {
    padding-top:24px;
    padding-bottom:70px
}

.account-loading {
    min-height:55vh;
    display:grid;
    place-items:center;
    align-content:center;
    gap:10px;
    color:var(--muted);
    font-size:10px
}

.mini-spinner {
    width:26px;
    height:26px;
    border:2px solid var(--line);
    border-top-color:var(--accent);
    border-radius:50%;
    animation:pmSpin .7s linear infinite
}

.profile-hero {
    position:relative;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:24px;
    background:linear-gradient(145deg,#151824,#0d0f15);
    box-shadow:0 22px 70px rgba(0,0,0,.22)
}

.profile-glow {
    position:absolute;
    inset:-45% -20% auto 35%;
    height:260px;
    background:radial-gradient(circle,rgba(139,92,246,.22),rgba(255,44,85,.09) 38%,transparent 68%);
    pointer-events:none
}

.profile-main {
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:22px
}

.profile-avatar-btn {
    position:relative;
    width:82px;
    height:82px;
    padding:0;
    border:1px solid rgba(255,255,255,.13);
    border-radius:24px;
    background:#171a22;
    overflow:visible
}

.profile-avatar-btn img {
    width:100%;
    height:100%;
    border-radius:23px;
    object-fit:cover
}

.profile-avatar-btn span {
    position:absolute;
    right:-5px;
    bottom:-5px;
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:var(--accent);
    color:#fff;
    border:3px solid #11131a;
    font-size:11px
}

.profile-copy {
    min-width:0
}

.profile-labels {
    display:flex;
    gap:6px;
    margin-bottom:6px
}

.profile-plan,.profile-verified {
    display:inline-flex;
    align-items:center;
    height:20px;
    padding:0 8px;
    border-radius:999px;
    background:#222632;
    color:#9ba3b2;
    font-size:7px;
    font-weight:950;
    letter-spacing:.09em
}

.profile-plan.is-vip {
    background:linear-gradient(90deg,#f7c948,#ff8a39);
    color:#171107
}

.profile-verified {
    background:rgba(139,92,246,.13);
    color:#bd9cff
}

.profile-copy h1 {
    font-size:27px;
    line-height:1;
    margin:0 0 6px;
    letter-spacing:-1px
}

.profile-copy p,.profile-copy small {
    display:block;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    color:var(--muted);
    font-size:9px;
    margin:0
}

.profile-copy small {
    margin-top:3px;
    opacity:.65
}

.profile-actions {
    display:flex;
    gap:7px
}

.profile-vip-line {
    position:relative;
    border-top:1px solid var(--line);
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:13px 18px;
    background:rgba(255,255,255,.025)
}

.profile-vip-line span {
    display:block;
    color:#71798a;
    font-size:7px;
    text-transform:uppercase;
    letter-spacing:.1em
}

.profile-vip-line strong {
    display:block;
    font-size:10px;
    margin-top:2px
}

.profile-vip-line a {
    font-size:9px;
    color:#ff6c87;
    font-weight:900
}

.account-stats {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:9px;
    margin:12px 0
}

.account-stats article {
    padding:14px 15px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#11141b
}

.account-stats span {
    display:block;
    color:#757d8d;
    font-size:8px
}

.account-stats strong {
    display:block;
    font-size:21px;
    margin-top:3px
}

.account-menu {
    display:grid;
    gap:8px
}

.account-menu>a {
    display:grid;
    grid-template-columns:40px 1fr auto;
    gap:11px;
    align-items:center;
    padding:11px 12px;
    border-radius:16px;
    background:#11141b;
    border:1px solid var(--line)
}

.account-menu-icon {
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:#191d27;
    color:#ff6b87;
    font-size:16px
}

.account-menu strong {
    display:block;
    font-size:10px
}

.account-menu small {
    display:block;
    margin-top:3px;
    color:#747d8e;
    font-size:8px
}

.account-menu b {
    color:#596173;
    font-size:20px
}

.account-history {
    width:100%;
    margin-left:0;
    margin-right:0
}

.auth-art-copy {
    max-width:330px;
    color:#aeb5c3!important;
    font-size:11px!important;
    line-height:1.65!important
}

.signup-card {
    position:relative
}

.form-message {
    min-height:16px;
    color:#ff7891!important
}

.avatar-dialog {
    position:fixed;
    inset:0;
    margin:auto;
    width:min(92vw,520px);
    max-height:min(86vh,720px);
    overflow:auto;
    border:1px solid rgba(255,255,255,.1);
    border-radius:24px;
    background:#11141b;
    color:#fff;
    padding:20px;
    box-shadow:0 35px 120px rgba(0,0,0,.8)
}

.avatar-dialog::backdrop {
    background:rgba(2,3,6,.82);
    backdrop-filter:blur(10px)
}

.avatar-dialog-head {
    position:relative;
    padding-right:38px
}

.avatar-dialog h3 {
    font-size:23px;
    letter-spacing:-.7px;
    margin:6px 0 4px
}

.avatar-dialog p {
    margin:0;
    color:var(--muted);
    font-size:9px
}

.avatar-style-tabs {
    display:flex;
    gap:6px;
    overflow:auto;
    margin:16px 0 12px
}

.avatar-style-tabs button {
    flex:0 0 auto;
    border:1px solid var(--line);
    border-radius:999px;
    background:#171a23;
    color:#8b93a3;
    padding:7px 10px;
    font-size:8px;
    font-weight:850
}

.avatar-style-tabs button.active {
    background:#fff;
    color:#0c0d11
}

.avatar-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:9px
}

.avatar-option {
    position:relative;
    padding:0;
    border:1px solid var(--line);
    border-radius:17px;
    background:#171a22;
    overflow:hidden;
    aspect-ratio:1
}

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

.avatar-option.selected {
    border-color:#ff5b79;
    box-shadow:0 0 0 2px rgba(255,44,85,.2)
}

.avatar-option.selected:after {
    content:"✓";
    position:absolute;
    right:5px;
    top:5px;
    width:22px;
    height:22px;
    border-radius:8px;
    background:var(--accent);
    display:grid;
    place-items:center;
    color:#fff;
    font-size:10px;
    font-weight:950
}

.avatar-dialog-actions {
    display:flex;
    justify-content:flex-end;
    gap:8px;
    margin-top:14px
}

.avatar-dialog-actions .primary-btn:disabled {
    opacity:.4;
    cursor:not-allowed
}

@media(max-width:620px) {
    .profile-main {
        grid-template-columns:auto 1fr;
        padding:16px;
        gap:12px
    }

    .profile-avatar-btn {
        width:68px;
        height:68px;
        border-radius:20px
    }

    .profile-avatar-btn img {
        border-radius:19px
    }

    .profile-copy h1 {
        font-size:22px
    }

    .profile-actions {
        grid-column:1/-1;
        width:100%
    }

    .profile-actions a {
        flex:1
    }

    .profile-vip-line {
        padding:12px 14px
    }

    .account-stats article {
        padding:12px
    }

    .account-stats strong {
        font-size:18px
    }

    .avatar-dialog {
        width:calc(100vw - 18px);
        padding:15px;
        border-radius:20px
    }

    .avatar-grid {
        grid-template-columns:repeat(3,1fr);
        gap:7px
    }

    .avatar-dialog h3 {
        font-size:20px
    }

}

@media(max-width:350px) {
    .account-page {
        padding-top:14px
    }

    .profile-main {
        padding:13px
    }

    .profile-avatar-btn {
        width:60px;
        height:60px
    }

    .profile-copy h1 {
        font-size:19px
    }

    .account-stats {
        gap:6px
    }

    .account-stats article {
        padding:10px 9px
    }

    .account-menu>a {
        padding:9px
    }

    .avatar-grid {
        grid-template-columns:repeat(3,1fr)
    }

}

/* PlayMoz Lite v10 stability */ :root {
    --panel:var(--surface)
}

.pagination {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    flex-wrap:wrap;
    margin:28px auto 8px;
    padding:8px
}

.page-btn,.page-dots {
    min-width:36px;
    height:36px;
    padding:0 10px;
    border-radius:11px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid var(--line);
    background:#11141b;
    color:#cbd0da;
    font-size:10px;
    font-weight:900
}

.page-btn:hover {
    background:#191d27;
    color:#fff
}

.page-btn.active {
    background:#fff;
    color:#0b0c10;
    border-color:#fff
}

.page-btn.disabled {
    opacity:.32;
    pointer-events:none
}

.page-btn--wide {
    min-width:86px
}

.page-dots {
    border:0;
    background:transparent;
    min-width:22px;
    padding:0;
    color:#626a79
}

.vip-nav-badge {
    display:none!important
}

.container,.shelf {
    margin-left:auto;
    margin-right:auto
}

.grid-page>.media-grid {
    margin-left:auto;
    margin-right:auto
}

.auth-page,.auth-panel,.auth-card {
    max-width:100%
}

@media(max-width:620px) {
    .pagination {
        gap:5px;
        margin-top:22px
    }

    .page-btn,.page-dots {
        height:34px;
        min-width:33px;
        padding:0 8px;
        font-size:9px
    }

    .page-btn--wide {
        min-width:78px
    }

    .page-head {
        align-items:flex-start;
        flex-direction:column
    }

    .container {
        width:min(100% - 22px,1180px)
    }

}

@media(max-width:360px) {
    .pagination .page-dots {
        display:none
    }

    .page-btn {
        min-width:31px
    }

    .page-btn--wide {
        min-width:72px
    }

    .container {
        width:calc(100% - 16px)
    }

}

/* V11 account stability + polish */ .account-profile-v11 {
    background:linear-gradient(145deg,#151925 0%,#0c0f15 72%)
}

.account-login-state {
    text-align:center;
    max-width:420px;
    padding:26px
}

.account-login-state strong {
    display:block;
    font-size:19px;
    color:#fff;
    margin-bottom:7px
}

.account-login-state p {
    font-size:10px;
    line-height:1.6;
    color:var(--muted);
    margin:0 0 15px
}

.disabled-plan-link {
    pointer-events:none;
    opacity:.65
}

.vip-already {
    margin:18px 0;
    padding:16px 18px;
    border:1px solid rgba(247,201,72,.22);
    border-radius:16px;
    background:linear-gradient(135deg,rgba(247,201,72,.08),rgba(139,92,246,.05))
}

.vip-already strong {
    display:block;
    color:#f7d46d;
    font-size:13px
}

.vip-already p {
    margin:5px 0 12px;
    color:var(--muted);
    font-size:10px
}

.plans-locked {
    opacity:.72
}

.plans-locked .plan-card {
    filter:saturate(.7)
}

.plans-locked .vip-buy {
    cursor:not-allowed;
    opacity:.48
}

@media(max-width:480px) {
    .profile-vip-line {
        align-items:flex-start;
        gap:8px
    }

    .profile-vip-line a {
        white-space:nowrap
    }

    .account-login-state {
        padding:18px
    }

}

/* PlayMoz Lite V12 — conta/autenticação estáveis */ [hidden] {
    display:none!important
}

.account-loading[hidden],.auth-v12-check[hidden],.auth-v12-wrap[hidden] {
    display:none!important
}

.brand-mark {
    overflow:hidden;
    background:#050609;
    border:1px solid rgba(255,255,255,.08)
}

.brand-mark img {
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:inherit
}

.account-page-v12 {
    max-width:980px
}

.account-loading-logo {
    width:62px;
    height:62px;
    object-fit:cover;
    border-radius:18px;
    box-shadow:0 12px 34px rgba(255,30,60,.2)
}

.account-login-state {
    display:grid;
    justify-items:center;
    text-align:center;
    gap:9px;
    max-width:350px
}

.account-login-state img {
    width:68px;
    height:68px;
    border-radius:20px
}

.account-login-state strong {
    font-size:18px
}

.account-login-state p {
    margin:0 0 6px;
    color:var(--muted);
    font-size:10px;
    line-height:1.6
}

.account-v12-hero {
    position:relative;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.08);
    border-radius:25px;
    background:linear-gradient(145deg,#161a23 0%,#0c0f14 68%);
    box-shadow:0 24px 70px rgba(0,0,0,.28)
}

.account-v12-glow {
    position:absolute;
    width:430px;
    height:300px;
    right:-130px;
    top:-180px;
    background:radial-gradient(circle,rgba(255,44,85,.2),rgba(139,92,246,.10) 42%,transparent 70%);
    pointer-events:none
}

.account-v12-main {
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:22px
}

.account-v12-avatar {
    position:relative;
    width:84px;
    height:84px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:25px;
    padding:0;
    background:#12151d
}

.account-v12-avatar img {
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:24px
}

.account-v12-avatar span {
    position:absolute;
    right:-5px;
    bottom:-5px;
    width:30px;
    height:30px;
    border:3px solid #11141b;
    border-radius:11px;
    background:var(--accent);
    color:white;
    display:grid;
    place-items:center
}

.account-v12-copy {
    min-width:0
}

.account-v12-badges {
    display:flex;
    gap:6px;
    margin-bottom:7px
}

.account-v12-badges span {
    display:inline-flex;
    align-items:center;
    height:21px;
    padding:0 8px;
    border-radius:999px;
    background:#222632;
    color:#a5adbb;
    font-size:7px;
    font-weight:950;
    letter-spacing:.09em
}

.account-v12-badges span:first-child {
    background:rgba(139,92,246,.14);
    color:#c1a7ff
}

.account-v12-badges .is-vip {
    background:linear-gradient(90deg,#ffd85b,#ff9648);
    color:#211304
}

.account-v12-copy h1 {
    margin:0 0 6px;
    font-size:28px;
    line-height:1;
    letter-spacing:-1px
}

.account-v12-copy>p {
    margin:0;
    color:#9aa2b2;
    font-size:10px
}

.uid-copy {
    margin-top:5px;
    padding:0;
    border:0;
    background:none;
    color:#687182;
    font-size:8px;
    display:flex;
    gap:7px;
    align-items:center
}

.uid-copy b {
    color:#ff6b87;
    font-size:7px
}

.account-v12-edit {
    height:36px;
    padding:0 12px;
    border-radius:11px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.05);
    font-size:9px;
    font-weight:900;
    display:grid;
    place-items:center
}

.account-v12-stats {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1px;
    border-top:1px solid var(--line);
    background:var(--line)
}

.account-v12-stats article {
    background:#10131a;
    padding:13px 17px
}

.account-v12-stats span {
    display:block;
    color:#727b8d;
    font-size:8px
}

.account-v12-stats strong {
    display:block;
    font-size:19px;
    margin-top:2px
}

.account-v12-plan {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:15px 18px;
    border-top:1px solid var(--line);
    background:linear-gradient(90deg,rgba(255,44,85,.08),rgba(139,92,246,.06))
}

.account-v12-plan small {
    display:block;
    color:#ff6b87;
    font-size:7px;
    letter-spacing:.1em
}

.account-v12-plan strong {
    display:block;
    font-size:11px;
    margin:2px 0
}

.account-v12-plan span {
    display:block;
    color:#737c8e;
    font-size:8px
}

.account-v12-plan>a {
    flex:0 0 auto;
    min-height:34px;
    padding:0 12px;
    border-radius:10px;
    background:#fff;
    color:#0b0d11;
    font-size:8px;
    font-weight:950;
    display:grid;
    place-items:center
}

.account-v12-tabs {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:4px;
    margin:12px 0;
    padding:4px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#10131a
}

.account-v12-tabs a {
    min-height:38px;
    display:grid;
    place-items:center;
    border-radius:11px;
    color:#7e8798;
    font-size:8px;
    font-weight:900
}

.account-v12-tabs a.active {
    background:#fff;
    color:#0b0d11
}

.account-v12-panel {
    border:1px solid var(--line);
    border-radius:20px;
    background:#10131a;
    overflow:hidden
}

.account-v12-panel-head {
    padding:16px 16px 10px
}

.account-v12-panel-head h2 {
    font-size:16px;
    margin:3px 0
}

.account-v12-rows>a,.account-v12-rows>button {
    width:100%;
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    gap:11px;
    align-items:center;
    padding:12px 15px;
    border:0;
    border-top:1px solid var(--line);
    background:transparent;
    color:#fff;
    text-align:left
}

.row-icon {
    width:36px;
    height:36px;
    border-radius:11px;
    display:grid;
    place-items:center;
    background:#181c25;
    color:#ff6682
}

.account-v12-rows strong {
    display:block;
    font-size:10px
}

.account-v12-rows small {
    display:block;
    color:#717a8c;
    font-size:8px;
    margin-top:2px
}

.account-v12-rows em {
    font-style:normal;
    color:#8b93a2;
    font-size:8px
}

.account-v12-rows em.ok {
    color:#43d98c
}

.account-v12-rows b {
    font-size:18px;
    color:#5d6677
}

.account-history {
    margin-top:20px
}

.auth-v12-page {
    min-height:100dvh;
    position:relative;
    overflow:hidden;
    background:#07080c;
    display:grid;
    place-items:center;
    padding:24px
}

.auth-v12-orb {
    position:absolute;
    border-radius:50%;
    filter:blur(80px);
    pointer-events:none
}

.auth-v12-orb--a {
    width:430px;
    height:430px;
    background:rgba(255,34,70,.13);
    left:-230px;
    top:-190px
}

.auth-v12-orb--b {
    width:480px;
    height:480px;
    background:rgba(110,63,255,.12);
    right:-270px;
    bottom:-250px
}

.auth-v12-wrap {
    width:100%;
    min-height:calc(100dvh - 48px);
    place-items:center
}

.auth-v12-check {
    position:relative;
    z-index:2;
    display:grid;
    justify-items:center;
    gap:11px;
    color:#7e8796;
    font-size:9px
}

.auth-v12-check img {
    width:78px;
    height:78px;
    border-radius:22px;
    box-shadow:0 15px 46px rgba(255,25,55,.18)
}

.auth-v12-home {
    position:fixed;
    z-index:3;
    left:18px;
    top:max(18px,env(safe-area-inset-top));
    width:38px;
    height:38px;
    border:1px solid var(--line);
    border-radius:12px;
    background:rgba(255,255,255,.05);
    display:grid;
    place-items:center;
    color:#fff
}

.auth-v12-card {
    position:relative;
    z-index:2;
    width:min(420px,100%);
    padding:24px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:26px;
    background:rgba(16,18,25,.88);
    backdrop-filter:blur(22px);
    box-shadow:0 30px 90px rgba(0,0,0,.48)
}

.auth-v12-card--signup {
    width:min(620px,100%)
}

.auth-v12-logo {
    width:72px;
    height:72px;
    display:block;
    object-fit:cover;
    border-radius:21px;
    margin-bottom:16px;
    box-shadow:0 12px 34px rgba(255,26,56,.18)
}

.auth-v12-card h1 {
    font-size:28px;
    letter-spacing:-1px;
    margin:5px 0 6px
}

.auth-v12-card>p {
    color:#8c95a6;
    font-size:9px;
    line-height:1.6;
    margin:0 0 18px
}

.auth-v12-card .field {
    margin-top:11px
}

.auth-v12-card .field label {
    font-size:8px;
    color:#8d95a5;
    font-weight:900;
    display:grid;
    gap:6px
}

.auth-v12-card .field input {
    height:44px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#0c0f15;
    color:#fff;
    padding:0 12px;
    outline:none;
    font-size:10px
}

.auth-v12-card .field input:focus {
    border-color:rgba(255,69,102,.65);
    box-shadow:0 0 0 3px rgba(255,44,85,.08)
}

.auth-v12-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px
}

.auth-v12-links,.auth-v12-switch {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:13px 0 12px;
    font-size:8px
}

.auth-v12-links button {
    border:0;
    padding:0;
    background:none;
    color:#8e96a6
}

.auth-v12-links a,.auth-v12-switch a {
    color:#ff6c86;
    font-weight:900
}

.auth-v12-submit {
    width:100%;
    height:44px;
    border:0;
    border-radius:12px;
    background:linear-gradient(100deg,#ff244f,#ff466b);
    color:#fff;
    font-size:10px;
    font-weight:950;
    box-shadow:0 10px 30px rgba(255,36,79,.2)
}

.auth-v12-submit:disabled {
    opacity:.55
}

.auth-v12-message {
    min-height:15px!important;
    margin:10px 0 0!important;
    color:#ff8097!important;
    text-align:center
}

.auth-v12-foot {
    display:block;
    text-align:center;
    color:#555e6e;
    font-size:7px;
    line-height:1.5;
    margin-top:12px
}

@media(max-width:650px) {
    .account-page-v12 {
        width:calc(100% - 18px);
        padding-top:14px
    }

    .account-v12-main {
        grid-template-columns:auto minmax(0,1fr);
        padding:15px;
        gap:12px
    }

    .account-v12-avatar {
        width:68px;
        height:68px;
        border-radius:21px
    }

    .account-v12-avatar img {
        border-radius:20px
    }

    .account-v12-edit {
        display:none
    }

    .account-v12-copy h1 {
        font-size:22px
    }

    .account-v12-copy>p {
        font-size:9px
    }

    .account-v12-plan {
        align-items:flex-start
    }

    .account-v12-plan span {
        max-width:210px
    }

    .account-v12-tabs {
        position:sticky;
        top:61px;
        z-index:8;
        backdrop-filter:blur(16px)
    }

    .account-v12-tabs a {
        font-size:7px
    }

    .account-v12-rows>a,.account-v12-rows>button {
        padding:11px 12px
    }

    .auth-v12-page {
        padding:14px
    }

    .auth-v12-card {
        padding:20px;
        border-radius:22px
    }

    .auth-v12-card--signup {
        width:min(460px,100%)
    }

    .auth-v12-grid {
        grid-template-columns:1fr
    }

    .auth-v12-logo {
        width:64px;
        height:64px
    }

    .auth-v12-card h1 {
        font-size:25px
    }

}

@media(max-width:360px) {
    .account-v12-avatar {
        width:60px;
        height:60px
    }

    .account-v12-copy h1 {
        font-size:19px
    }

    .account-v12-badges span {
        font-size:6px;
        padding:0 6px
    }

    .account-v12-stats article {
        padding:11px
    }

    .account-v12-stats strong {
        font-size:17px
    }

    .account-v12-plan {
        padding:12px
    }

    .account-v12-tabs a {
        font-size:6.5px
    }

    .auth-v12-card {
        padding:17px
    }

    .auth-v12-page {
        padding:10px
    }

}

/* V13 authors, filters and comments */ .authors-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px 12px
}

.author-card {
    display:grid;
    gap:7px;
    min-width:0
}

.author-card img {
    width:100%;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:15px;
    background:#111
}

.author-card strong {
    font-size:11px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}

.author-card span {
    font-size:8px;
    color:var(--muted)
}

.catalog-tools {
    display:flex;
    align-items:end;
    gap:10px;
    margin:12px 0 18px
}

.catalog-tools label {
    display:grid;
    gap:6px;
    color:var(--muted);
    font-size:8px;
    font-weight:900
}

.catalog-tools select {
    min-width:220px;
    height:39px;
    border:1px solid var(--line);
    border-radius:11px;
    background:#10131a;
    color:#fff;
    padding:0 10px
}

.comments-section {
    width:min(1180px,calc(100% - 28px));
    margin:22px auto
}

.comment-form {
    display:grid;
    gap:9px;
    padding:14px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#10131a
}

.comment-form textarea {
    min-height:92px;
    resize:vertical;
    border:1px solid var(--line);
    border-radius:12px;
    background:#0b0e14;
    color:#fff;
    padding:12px;
    outline:none
}

.comment-form button {
    justify-self:end
}

.comments-list {
    display:grid;
    gap:8px;
    margin-top:10px
}

.comment-item {
    display:grid;
    grid-template-columns:38px 1fr;
    gap:10px;
    padding:12px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#10131a
}

.comment-item img {
    width:38px;
    height:38px;
    border-radius:50%;
    object-fit:cover
}

.comment-item strong {
    display:inline-block;
    font-size:10px;
    margin-right:8px
}

.comment-item small {
    color:var(--muted);
    font-size:7px
}

.comment-item p {
    margin:5px 0 0;
    font-size:9px;
    line-height:1.5;
    color:#dfe3eb
}

@media(max-width:760px) {
    .authors-grid {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }

    .catalog-tools {
        align-items:stretch;
        flex-direction:column
    }

    .catalog-tools select {
        width:100%;
        min-width:0
    }

}

@media(max-width:420px) {
    .authors-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:12px 8px
    }

    .author-card strong {
        font-size:9px
    }

    .author-card span {
        font-size:7px
    }

}

.member-popup {
    border:0;
    padding:0;
    background:transparent;
    color:#fff;
    width:min(460px,calc(100vw - 28px));
    max-width:460px
}

.member-popup::backdrop {
    background:rgba(0,0,0,.68);
    backdrop-filter:blur(6px)
}

.member-popup__card {
    position:relative;
    padding:22px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:20px;
    background:#11141b;
    box-shadow:0 28px 90px rgba(0,0,0,.55)
}

.member-popup__x {
    position:absolute;
    right:10px;
    top:10px;
    width:34px;
    height:34px;
    border-radius:50%;
    border:1px solid var(--line);
    background:#1b1f29;
    color:#fff;
    font-size:18px
}

.member-popup h3 {
    margin:4px 42px 8px 0;
    font-size:21px
}

.member-popup p {
    margin:0;
    color:#b6bdca;
    font-size:11px;
    line-height:1.65;
    white-space:pre-wrap
}

.member-popup__actions {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-top:17px
}

.member-popup__actions a {
    min-height:38px;
    padding:0 14px;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#111;
    font-size:10px;
    font-weight:900
}

.member-popup__actions a:nth-child(n+2) {
    background:#202530;
    color:#fff;
    border:1px solid var(--line)
}

.announcement-list {
    display:grid;
    gap:8px;
    margin-top:12px
}

.announcement-preview {
    padding:11px;
    border:1px solid var(--line);
    border-radius:13px;
    background:#0e1118
}

.announcement-preview strong,.announcement-preview span {
    display:block
}

.announcement-preview span {
    font-size:9px;
    color:var(--muted);
    margin-top:4px
}

.admin-card textarea {
    width:100%;
    min-height:100px;
    resize:vertical;
    border:1px solid var(--line);
    border-radius:12px;
    background:#0b0e14;
    color:#fff;
    padding:12px;
    outline:none
}

.admin-card input,.admin-card select {
    max-width:100%
}

.admin-access {
    margin-top:18px;
    padding:16px;
    display:flex;
    gap:13px;
    align-items:flex-start;
    border:1px solid var(--line);
    border-radius:18px;
    background:linear-gradient(145deg,#12151d,#0d1016);
    box-shadow:0 14px 40px rgba(0,0,0,.2)
}

.admin-access__icon {
    width:42px;
    height:42px;
    flex:0 0 42px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:#1d2230;
    font-size:18px;
    font-weight:950
}

.admin-access__body {
    min-width:0
}

.admin-access__body strong,.admin-access__body span,.admin-access__body code {
    display:block
}

.admin-access__body strong {
    font-size:13px;
    margin:2px 0 4px
}

.admin-access__body span {
    font-size:10px;
    line-height:1.55;
    color:var(--muted)
}

.admin-access__body code {
    margin-top:8px;
    padding:7px 9px;
    border-radius:9px;
    background:#080a0f;
    border:1px solid var(--line);
    font-size:8.5px;
    color:#c9d0dc;
    word-break:break-all
}

.admin-access--ok {
    border-color:rgba(67,211,138,.3)
}

.admin-access--ok .admin-access__icon {
    background:rgba(67,211,138,.12);
    color:#68e3a4
}

.admin-access--error {
    border-color:rgba(255,82,112,.28)
}

.admin-access--error .admin-access__icon {
    background:rgba(255,44,85,.12);
    color:#ff708c
}

/* V16 Unified Admin */ body[data-route="admin"] {
    background:#07090e
}

.app-main--auth {
    min-height:100dvh
}

.pm-admin {
    min-height:100dvh;
    color:#f4f7fb
}

.pm-admin-gate {
    min-height:100dvh;
    display:grid;
    place-items:center;
    align-content:center;
    text-align:center;
    gap:10px;
    padding:24px
}

.pm-admin-gate img {
    width:82px;
    height:82px;
    border-radius:24px;
    box-shadow:0 20px 70px rgba(255,35,78,.18)
}

.pm-admin-gate span {
    font-size:9px;
    font-weight:900;
    color:#ff607f;
    letter-spacing:1.8px
}

.pm-admin-gate h1 {
    margin:0;
    font-size:30px
}

.pm-admin-gate p {
    margin:0;
    color:#8993a5
}

.pm-admin-gate code {
    max-width:90vw;
    word-break:break-all;
    padding:8px 10px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#0d1017
}

.pm-admin-app {
    min-height:100dvh;
    display:grid;
    grid-template-columns:240px minmax(0,1fr)
}

.pm-admin-side {
    position:sticky;
    top:0;
    height:100dvh;
    padding:18px 14px;
    border-right:1px solid var(--line);
    background:#0b0e14;
    display:flex;
    flex-direction:column
}

.pm-admin-brand {
    display:flex;
    gap:10px;
    align-items:center;
    padding:5px 5px 18px
}

.pm-admin-brand img {
    width:42px;
    height:42px;
    border-radius:13px
}

.pm-admin-brand b,.pm-admin-brand small {
    display:block
}

.pm-admin-brand small {
    font-size:8px;
    color:#687286
}

.pm-admin-side nav {
    display:grid;
    gap:5px
}

.pm-admin-side nav button {
    border:0;
    background:transparent;
    color:#8c96a8;
    text-align:left;
    padding:11px 12px;
    border-radius:11px;
    font-weight:800
}

.pm-admin-side nav button.active,.pm-admin-side nav button:hover {
    background:#171c26;
    color:#fff
}

.pm-admin-side-foot {
    margin-top:auto;
    padding:12px 5px;
    display:grid;
    gap:8px
}

.pm-admin-side-foot span {
    font-size:8px;
    color:#747f92;
    word-break:break-all
}

.pm-admin-side-foot button {
    border:1px solid var(--line);
    background:#11151e;
    color:#fff;
    border-radius:10px;
    padding:9px
}

.pm-admin-main {
    padding:24px;
    min-width:0
}

.pm-admin-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:18px
}

.pm-admin-top h1 {
    margin:3px 0 0;
    font-size:26px
}

.pm-admin-panel {
    display:none
}

.pm-admin-panel.active {
    display:block
}

.pm-kpis {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
    margin-bottom:12px
}

.pm-kpis article {
    padding:16px;
    border:1px solid var(--line);
    border-radius:16px;
    background:linear-gradient(150deg,#121722,#0d1118)
}

.pm-kpis span {
    display:block;
    font-size:8px;
    color:#7f899c
}

.pm-kpis strong {
    display:block;
    font-size:25px;
    margin-top:6px
}

.pm-admin-card {
    border:1px solid var(--line);
    border-radius:18px;
    background:#0f131b;
    padding:17px;
    margin-bottom:12px
}

.pm-admin-card h2 {
    margin:0 0 5px;
    font-size:17px
}

.pm-admin-card>p,.pm-card-head p {
    margin:0 0 14px;
    color:#7f8998;
    font-size:9px;
    line-height:1.6
}

.pm-card-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px
}

.pm-form label,.pm-admin-card label {
    display:grid;
    gap:6px;
    font-size:8px;
    color:#8e98a9;
    font-weight:850;
    margin:10px 0
}

.pm-admin-card input,.pm-admin-card textarea,.pm-admin-card select,.pm-admin-search {
    width:100%;
    border:1px solid var(--line);
    border-radius:11px;
    background:#090c12;
    color:#fff;
    padding:10px 11px;
    outline:none
}

.pm-admin-card textarea {
    min-height:96px;
    resize:vertical
}

.pm-form-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 10px
}

.pm-status-list {
    display:flex;
    flex-wrap:wrap;
    gap:8px
}

.pm-status-list span {
    padding:8px 10px;
    border:1px solid rgba(58,211,139,.2);
    border-radius:10px;
    background:rgba(58,211,139,.06);
    font-size:8px;
    color:#87e5b5
}

.pm-user-list {
    display:grid;
    gap:7px;
    margin-top:10px
}

.pm-user-row {
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto auto;
    gap:10px;
    align-items:center;
    padding:10px;
    border:1px solid var(--line);
    border-radius:13px;
    background:#0b0f16
}

.pm-user-row img {
    width:42px;
    height:42px;
    border-radius:50%;
    object-fit:cover
}

.pm-user-row b,.pm-user-row span,.pm-user-row code {
    display:block
}

.pm-user-row span {
    font-size:8px;
    color:#8791a3
}

.pm-user-row code {
    font-size:7px;
    color:#5f697b;
    word-break:break-all
}

.pm-user-row em {
    font-style:normal;
    font-size:7px;
    padding:5px 7px;
    border-radius:8px;
    background:#1c2330
}

.pm-user-actions {
    display:flex;
    gap:4px
}

.pm-user-actions button,.pm-game-list button,.comment-delete {
    border:1px solid var(--line);
    background:#151a24;
    color:#fff;
    border-radius:8px;
    padding:6px 8px;
    font-size:7px
}

.pm-game-list {
    display:grid;
    gap:7px;
    margin-top:12px
}

.pm-game-list article {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:10px;
    border:1px solid var(--line);
    border-radius:12px
}

.pm-game-list b,.pm-game-list span,.pm-game-list code {
    display:block
}

.pm-game-list span {
    font-size:8px;
    color:#7d8799
}

.pm-game-list code {
    font-size:7px;
    color:#657084
}

.pm-table-wrap {
    overflow:auto
}

.pm-table-wrap table {
    width:100%;
    border-collapse:collapse;
    min-width:760px
}

.pm-table-wrap th,.pm-table-wrap td {
    text-align:left;
    padding:9px;
    border-bottom:1px solid var(--line);
    font-size:8px
}

.online-dot {
    color:#59dfa0
}

.admin-badge {
    display:inline-flex;
    padding:2px 5px;
    border-radius:6px;
    background:#ff3157;
    color:#fff;
    font-size:6px;
    font-style:normal;
    vertical-align:middle
}

.member-popup__image {
    width:calc(100% + 44px);
    height:180px;
    object-fit:cover;
    margin:-22px -22px 16px;
    border-radius:20px 20px 0 0;
    background:#0a0d13
}

.legal-v16 {
    max-width:900px;
    padding-bottom:60px
}

.legal-v16 h1 {
    font-size:34px
}

.legal-v16 h2 {
    font-size:16px;
    margin:24px 0 7px
}

.legal-v16 p {
    color:#a6afbd;
    line-height:1.75;
    font-size:10px
}

.legal-v16 .legal-lead {
    font-size:12px;
    color:#d3d8e1
}

.legal-v16 .legal-date {
    margin-top:30px;
    color:#697386
}

.pm-comment-admin-compose {
    margin-top:14px!important
}

@media(max-width:900px) {
    .pm-admin-app {
        grid-template-columns:1fr
    }

    .pm-admin-side {
        position:relative;
        height:auto;
        border-right:0;
        border-bottom:1px solid var(--line);
        padding:10px
    }

    .pm-admin-side nav {
        display:flex;
        overflow:auto
    }

    .pm-admin-side nav button {
        white-space:nowrap
    }

    .pm-admin-side-foot {
        display:none
    }

    .pm-admin-main {
        padding:14px
    }

    .pm-kpis {
        grid-template-columns:repeat(2,1fr)
    }

}

@media(max-width:620px) {
    .pm-form-grid {
        grid-template-columns:1fr
    }

    .pm-user-row {
        grid-template-columns:38px minmax(0,1fr) auto
    }

    .pm-user-actions {
        grid-column:2/-1;
        flex-wrap:wrap
    }

    .pm-admin-top h1 {
        font-size:22px
    }

    .pm-admin-main {
        padding:10px
    }

    .pm-admin-card {
        padding:13px
    }

    .pm-card-head {
        align-items:stretch;
        flex-direction:column
    }

    .member-popup__image {
        height:150px
    }

}

/* V17 Admin — app-like multi-page dashboard */ body[data-route="admin"] {
    margin:0;
    background:#07090d;
    color:#f7f9fc;
    overscroll-behavior:none;
    -webkit-text-size-adjust:100%;
    touch-action:manipulation
}

.adm-shell {
    min-height:100dvh;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}

.adm-shell * {
    box-sizing:border-box
}

.adm-gate {
    min-height:100dvh;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:28px;
    background:radial-gradient(circle at 50% 10%,rgba(255,42,84,.12),transparent 38%),#07090d
}

.adm-gate-logo {
    width:92px;
    height:92px;
    padding:8px;
    border-radius:30px;
    background:linear-gradient(145deg,#1b1f2b,#0b0e14);
    box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.06)
}

.adm-gate-logo img {
    width:100%;
    height:100%;
    border-radius:23px
}

.adm-gate>span,.adm-overline {
    margin-top:18px;
    font-size:10px;
    font-weight:1000;
    letter-spacing:2px;
    color:#ff4168
}

.adm-gate h1 {
    margin:6px 0 4px;
    font-size:34px;
    line-height:1;
    font-weight:1000;
    letter-spacing:-1.5px
}

.adm-gate p {
    margin:0;
    color:#8791a3;
    font-weight:700
}

.adm-gate code {
    margin:14px 0;
    padding:8px 11px;
    border:1px solid #1d2230;
    border-radius:11px;
    background:#0d1118;
    color:#788398;
    max-width:90vw;
    word-break:break-all
}

.adm-app {
    min-height:100dvh;
    display:grid;
    grid-template-columns:252px minmax(0,1fr)
}

.adm-nav {
    height:100dvh;
    position:sticky;
    top:0;
    display:flex;
    flex-direction:column;
    padding:18px 14px;
    background:linear-gradient(180deg,#0c0f15,#090b10);
    border-right:1px solid #171c25
}

.adm-brand {
    display:flex;
    align-items:center;
    gap:11px;
    padding:4px 7px 22px;
    color:#fff;
    text-decoration:none
}

.adm-brand img {
    width:45px;
    height:45px;
    border-radius:15px;
    box-shadow:0 12px 28px rgba(255,40,80,.12)
}

.adm-brand strong {
    display:block;
    font-size:16px;
    font-weight:1000;
    letter-spacing:-.5px
}

.adm-brand small {
    display:block;
    margin-top:1px;
    font-size:8px;
    font-weight:950;
    letter-spacing:2px;
    color:#ff4168
}

.adm-nav nav {
    display:grid;
    gap:7px
}

.adm-nav nav a {
    height:47px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:0 13px;
    border-radius:15px;
    color:#778297;
    text-decoration:none;
    font-size:12px;
    font-weight:950;
    transition:.18s ease
}

.adm-nav nav a i {
    width:26px;
    height:26px;
    display:grid;
    place-items:center;
    border-radius:9px;
    background:#121722;
    font-style:normal;
    font-size:12px
}

.adm-nav nav a:hover,.adm-nav nav a.active {
    color:#fff;
    background:#161b25;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)
}

.adm-nav nav a.active i {
    background:#ff3158;
    color:#fff;
    box-shadow:0 8px 22px rgba(255,49,88,.26)
}

.adm-nav-foot {
    margin-top:auto;
    padding:14px 6px 3px;
    display:grid;
    gap:9px
}

.adm-nav-foot span {
    font-size:8px;
    font-weight:800;
    color:#5f6a7c;
    overflow:hidden;
    text-overflow:ellipsis
}

.adm-nav-foot button {
    height:37px;
    border:1px solid #202634;
    border-radius:12px;
    background:#10141c;
    color:#b5bdc9;
    font-weight:900
}

.adm-main {
    min-width:0;
    padding:28px clamp(18px,3vw,42px) 54px
}

.adm-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:25px
}

.adm-header .adm-overline {
    display:block;
    margin:0 0 5px
}

.adm-header h1 {
    margin:0;
    font-size:30px;
    line-height:1.05;
    font-weight:1000;
    letter-spacing:-1.2px
}

.adm-header p {
    margin:6px 0 0;
    color:#758095;
    font-size:10px;
    font-weight:750
}

.adm-icon-btn {
    width:43px;
    height:43px;
    border:1px solid #202633;
    border-radius:14px;
    background:#10141c;
    color:#fff;
    font-size:20px;
    font-weight:1000
}

.adm-page {
    max-width:1380px
}

.adm-kpis {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-bottom:14px
}

.adm-kpis article {
    min-height:112px;
    display:flex;
    align-items:center;
    gap:14px;
    padding:18px;
    border:1px solid #1a202b;
    border-radius:21px;
    background:linear-gradient(145deg,#121720,#0c1017);
    box-shadow:0 14px 38px rgba(0,0,0,.16)
}

.adm-kpis article>i {
    width:45px;
    height:45px;
    flex:0 0 45px;
    display:grid;
    place-items:center;
    border-radius:15px;
    background:#1a202b;
    font-style:normal
}

.adm-kpis span {
    display:block;
    font-size:8px;
    font-weight:1000;
    letter-spacing:1px;
    color:#687489
}

.adm-kpis strong {
    display:block;
    margin-top:5px;
    font-size:31px;
    line-height:1;
    font-weight:1000;
    letter-spacing:-1px
}

.adm-grid-2 {
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:14px
}

.adm-card {
    padding:20px;
    border:1px solid #1a202b;
    border-radius:22px;
    background:#0e1219;
    box-shadow:0 16px 48px rgba(0,0,0,.14)
}

.adm-card h2 {
    margin:8px 0 4px;
    font-size:20px;
    font-weight:1000;
    letter-spacing:-.5px
}

.adm-card>p,.adm-card-head p {
    margin:0;
    color:#788399;
    font-size:10px;
    line-height:1.65;
    font-weight:650
}

.hero-card {
    min-height:260px;
    position:relative;
    overflow:hidden;
    background:radial-gradient(circle at 90% 10%,rgba(255,49,88,.16),transparent 38%),linear-gradient(145deg,#121823,#0d1118)
}

.hero-card h2 {
    font-size:27px;
    margin-top:18px
}

.hero-card>p {
    max-width:560px;
    font-size:11px
}

.adm-pill {
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:0 9px;
    border-radius:9px;
    background:rgba(255,49,88,.1);
    color:#ff5f7d;
    font-size:7px;
    font-weight:1000;
    letter-spacing:1.2px
}

.adm-status {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:24px
}

.adm-status span {
    padding:8px 10px;
    border-radius:10px;
    background:#101d18;
    border:1px solid #1c3429;
    color:#67d9a0;
    font-size:8px;
    font-weight:900
}

.adm-status span.bad {
    color:#ff758d;
    background:#211116;
    border-color:#3b1e27
}

.adm-quick {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-top:15px
}

.adm-quick a {
    min-height:88px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:13px;
    border:1px solid #1b222e;
    border-radius:16px;
    background:#0a0e14;
    color:#fff;
    text-decoration:none
}

.adm-quick a>b {
    margin-top:6px;
    font-size:11px;
    font-weight:1000
}

.adm-quick a>small {
    margin-top:2px;
    color:#687489;
    font-size:8px;
    font-weight:750
}

.adm-card-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:15px;
    margin-bottom:17px
}

.adm-btn {
    min-height:41px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 15px;
    border-radius:13px;
    border:0;
    font-size:9px;
    font-weight:1000;
    letter-spacing:.2px;
    text-decoration:none;
    cursor:pointer
}

.adm-btn.primary {
    background:#ff3158;
    color:#fff;
    box-shadow:0 10px 25px rgba(255,49,88,.18)
}

.adm-btn.secondary {
    border:1px solid #232b38;
    background:#131821;
    color:#d7dce5
}

.adm-btn.danger {
    border:1px solid #46202a;
    background:#211116;
    color:#ff7790
}

.adm-search {
    height:45px;
    display:flex;
    align-items:center;
    gap:9px;
    padding:0 13px;
    border:1px solid #202734;
    border-radius:14px;
    background:#090d13
}

.adm-search>span {
    font-size:18px;
    color:#596477
}

.adm-search input {
    flex:1;
    min-width:0;
    border:0!important;
    background:transparent!important;
    padding:0!important;
    outline:none;
    color:#fff;
    font-size:11px;
    font-weight:750
}

.adm-user-list {
    display:grid;
    gap:8px;
    margin-top:13px
}

.adm-user {
    display:grid;
    grid-template-columns:48px minmax(0,1fr) auto auto;
    align-items:center;
    gap:11px;
    padding:11px 12px;
    border:1px solid #181f2a;
    border-radius:17px;
    background:#0a0e14
}

.adm-user>img {
    width:48px;
    height:48px;
    border-radius:15px;
    object-fit:cover;
    background:#151a23
}

.adm-user-info {
    min-width:0
}

.adm-user-info b,.adm-user-info span,.adm-user-info code {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}

.adm-user-info b {
    font-size:11px;
    font-weight:1000
}

.adm-user-info span {
    margin-top:2px;
    color:#798499;
    font-size:8px;
    font-weight:750
}

.adm-user-info code {
    margin-top:3px;
    color:#4f5a6c;
    font-size:7px
}

.adm-user>em {
    font-style:normal;
    padding:6px 8px;
    border-radius:8px;
    background:#181d27;
    color:#737e91;
    font-size:7px;
    font-weight:1000
}

.adm-user>em.vip {
    background:#271d0a;
    color:#ffcd59
}

.adm-user-actions {
    display:flex;
    gap:5px
}

.adm-user-actions button,.adm-delete,.adm-game-list button {
    height:29px;
    border:1px solid #242b38;
    border-radius:9px;
    background:#131821;
    color:#c2c9d4;
    padding:0 8px;
    font-size:7px;
    font-weight:950
}

.adm-form label {
    display:grid;
    gap:6px;
    margin:12px 0;
    color:#8c96a8;
    font-size:8px;
    font-weight:1000;
    text-transform:uppercase;
    letter-spacing:.35px
}

.adm-form input,.adm-form textarea,.adm-form select,.adm-card input,.adm-card textarea,.adm-card select {
    width:100%;
    border:1px solid #202734;
    border-radius:13px;
    background:#090d13;
    color:#fff;
    padding:11px 12px;
    outline:none;
    font-size:10px;
    font-weight:700;
    text-transform:none;
    letter-spacing:0
}

.adm-form textarea,.adm-card textarea {
    min-height:105px;
    resize:vertical
}

.adm-form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 10px
}

.adm-actions {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:14px
}

.adm-grid-popup {
    display:grid;
    grid-template-columns:minmax(0,1fr) 350px;
    gap:18px
}

.adm-phone {
    position:sticky;
    top:20px;
    align-self:start;
    padding:0 15px
}

.adm-phone>span {
    display:block;
    text-align:center;
    margin-bottom:10px;
    color:#566174;
    font-size:8px;
    font-weight:1000;
    letter-spacing:1.5px
}

.adm-phone-screen {
    min-height:650px;
    border:7px solid #171c25;
    border-radius:42px;
    background:linear-gradient(180deg,#111722,#07090d);
    padding:55px 15px 25px;
    box-shadow:0 25px 90px rgba(0,0,0,.38),inset 0 0 0 1px #303744;
    display:flex;
    align-items:center
}

.adm-demo-popup {
    width:100%;
    position:relative;
    overflow:hidden;
    padding:20px;
    border:1px solid #2a3140;
    border-radius:22px;
    background:#111722;
    box-shadow:0 25px 70px rgba(0,0,0,.44)
}

.adm-demo-popup>button {
    position:absolute;
    right:9px;
    top:9px;
    width:30px;
    height:30px;
    border:0;
    border-radius:50%;
    background:#202735;
    color:#fff;
    font-size:17px
}

.adm-demo-popup>img {
    width:calc(100% + 40px);
    height:150px;
    object-fit:cover;
    margin:-20px -20px 15px
}

.adm-demo-popup>small {
    font-size:7px;
    font-weight:1000;
    letter-spacing:1.3px;
    color:#ff5374
}

.adm-demo-popup h3 {
    margin:7px 35px 5px 0;
    font-size:18px;
    font-weight:1000
}

.adm-demo-popup p {
    margin:0;
    color:#9aa4b5;
    font-size:9px;
    line-height:1.6;
    font-weight:650
}

.adm-demo-popup>div {
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    margin-top:13px
}

.adm-demo-popup>div span {
    padding:8px 10px;
    border-radius:10px;
    background:#ff3158;
    color:#fff;
    font-size:7px;
    font-weight:1000
}

.adm-toolbar {
    display:grid;
    grid-template-columns:minmax(0,1fr) 180px;
    gap:9px;
    margin-bottom:13px
}

.adm-toolbar select {
    height:45px
}

.adm-comments {
    display:grid;
    gap:10px
}

.adm-comment {
    display:grid;
    grid-template-columns:210px minmax(0,1fr);
    border:1px solid #1b222e;
    border-radius:18px;
    overflow:hidden;
    background:#090d13
}

.adm-comment-media {
    display:grid;
    grid-template-columns:62px minmax(0,1fr);
    gap:10px;
    align-items:center;
    padding:11px;
    border-right:1px solid #1b222e;
    background:#0c1118;
    text-decoration:none;
    color:#fff
}

.adm-comment-media>img {
    width:62px;
    height:88px;
    border-radius:10px;
    object-fit:cover;
    background:#171c25
}

.adm-comment-media em,.adm-comment-media b,.adm-comment-media span {
    display:block
}

.adm-comment-media em {
    font-style:normal;
    color:#ff5a79;
    font-size:7px;
    font-weight:1000;
    letter-spacing:1px
}

.adm-comment-media b {
    margin-top:5px;
    font-size:10px;
    line-height:1.25;
    font-weight:1000
}

.adm-comment-media span {
    margin-top:5px;
    color:#5c677a;
    font-size:7px;
    font-weight:800
}

.adm-comment-body {
    padding:13px 14px
}

.adm-comment-user {
    display:flex;
    gap:9px;
    align-items:center
}

.adm-comment-user>img {
    width:34px;
    height:34px;
    border-radius:11px;
    object-fit:cover
}

.adm-comment-user strong,.adm-comment-user small {
    display:block
}

.adm-comment-user strong {
    font-size:9px;
    font-weight:1000
}

.adm-comment-user strong i {
    display:inline-flex;
    margin-left:4px;
    padding:2px 5px;
    border-radius:5px;
    background:#ff3158;
    color:#fff;
    font-size:6px;
    font-style:normal
}

.adm-comment-user small {
    margin-top:2px;
    color:#5e697b;
    font-size:7px;
    font-weight:750
}

.adm-comment-body p {
    margin:11px 0 10px;
    color:#d7dce5;
    font-size:10px;
    line-height:1.6;
    font-weight:650
}

.adm-delete {
    color:#ff7990;
    border-color:#3d1d25;
    background:#1b1014
}

.adm-game-list {
    display:grid;
    gap:8px;
    margin-top:14px
}

.adm-game-list article {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:center;
    padding:13px;
    border:1px solid #1c2330;
    border-radius:16px;
    background:#0a0e14
}

.adm-game-list span,.adm-game-list b,.adm-game-list small,.adm-game-list code {
    display:block
}

.adm-game-list span {
    font-size:7px;
    font-weight:1000;
    color:#ff5575
}

.adm-game-list b {
    margin-top:3px;
    font-size:10px;
    font-weight:1000
}

.adm-game-list small {
    margin-top:3px;
    color:#7a8598;
    font-size:7px
}

.adm-game-list code {
    margin-top:3px;
    color:#505b6d;
    font-size:7px
}

.adm-table {
    overflow:auto;
    border:1px solid #1b222e;
    border-radius:16px
}

.adm-table table {
    width:100%;
    min-width:760px;
    border-collapse:collapse
}

.adm-table th,.adm-table td {
    padding:11px 12px;
    border-bottom:1px solid #171d27;
    text-align:left;
    font-size:8px
}

.adm-table th {
    background:#0b0f15;
    color:#687489;
    font-weight:1000;
    letter-spacing:.6px
}

.adm-table td {
    color:#bac1cd;
    font-weight:700
}

.adm-table code {
    color:#788398
}

.adm-online {
    color:#57dda0
}

.adm-loading,.adm-empty {
    padding:28px;
    text-align:center;
    color:#687489;
    font-size:9px;
    font-weight:850
}

@media(max-width:980px) {
    .adm-app {
        grid-template-columns:1fr
    }

    .adm-nav {
        z-index:20;
        position:fixed;
        left:0;
        right:0;
        bottom:0;
        top:auto;
        width:auto;
        height:70px;
        padding:7px 8px calc(7px + env(safe-area-inset-bottom));
        border-right:0;
        border-top:1px solid #1a202a;
        background:rgba(9,12,17,.96);
        backdrop-filter:blur(18px)
    }

    .adm-brand,.adm-nav-foot {
        display:none
    }

    .adm-nav nav {
        height:100%;
        display:grid;
        grid-template-columns:repeat(6,1fr);
        gap:2px
    }

    .adm-nav nav a {
        height:100%;
        padding:4px 2px;
        flex-direction:column;
        justify-content:center;
        gap:3px;
        border-radius:12px;
        font-size:7px
    }

    .adm-nav nav a i {
        width:25px;
        height:25px;
        font-size:11px
    }

    .adm-main {
        padding:18px 14px 96px
    }

    .adm-header h1 {
        font-size:25px
    }

    .adm-kpis {
        grid-template-columns:1fr 1fr
    }

    .adm-grid-2,.adm-grid-popup {
        grid-template-columns:1fr
    }

    .adm-phone {
        position:relative;
        top:0;
        max-width:380px;
        margin:auto
    }

    .adm-comment {
        grid-template-columns:180px minmax(0,1fr)
    }

}

@media(max-width:620px) {
    .adm-header p {
        max-width:250px
    }

    .adm-kpis {
        gap:8px
    }

    .adm-kpis article {
        min-height:92px;
        padding:13px;
        gap:9px
    }

    .adm-kpis article>i {
        width:37px;
        height:37px;
        flex-basis:37px
    }

    .adm-kpis strong {
        font-size:24px
    }

    .adm-card {
        padding:15px;
        border-radius:19px
    }

    .adm-form-grid {
        grid-template-columns:1fr
    }

    .adm-user {
        grid-template-columns:42px minmax(0,1fr) auto
    }

    .adm-user>img {
        width:42px;
        height:42px
    }

    .adm-user-actions {
        grid-column:2/-1;
        flex-wrap:wrap
    }

    .adm-toolbar {
        grid-template-columns:1fr
    }

    .adm-comment {
        grid-template-columns:1fr
    }

    .adm-comment-media {
        grid-template-columns:48px minmax(0,1fr);
        border-right:0;
        border-bottom:1px solid #1b222e
    }

    .adm-comment-media>img {
        width:48px;
        height:67px
    }

    .adm-phone-screen {
        min-height:560px
    }

    .adm-nav nav a span {
        display:none
    }

    .adm-nav {
        height:62px
    }

    .adm-nav nav a i {
        width:32px;
        height:32px;
        border-radius:11px
    }

    .adm-nav nav a.active i {
        transform:translateY(-2px)
    }

}

/* V18 Admin — aligned with PlayMoz visual language */ body[data-route="admin"] {
    background:var(--bg);
    color:var(--text)
}

.adm-shell {
    font-family:"Avenir Next","Segoe UI",Inter,system-ui,-apple-system,sans-serif
}

.adm-app {
    grid-template-columns:220px minmax(0,1fr)
}

.adm-nav {
    padding:16px 12px;
    background:rgba(11,14,20,.96);
    border-right:1px solid var(--line);
    backdrop-filter:blur(18px)
}

.adm-brand {
    padding:3px 7px 18px
}

.adm-brand img {
    width:40px;
    height:40px;
    border-radius:13px
}

.adm-brand strong {
    font-size:14px
}

.adm-brand small {
    font-size:7px;
    color:var(--accent)
}

.adm-nav nav {
    gap:5px
}

.adm-nav nav a {
    height:43px;
    gap:10px;
    padding:0 11px;
    border-radius:12px;
    font-size:10px;
    font-weight:800;
    color:#9099aa
}

.adm-nav nav a i {
    width:25px;
    height:25px;
    border-radius:8px;
    background:rgba(255,255,255,.045)
}

.adm-nav nav a i img {
    width:15px;
    height:15px
}

.adm-nav nav a.active,.adm-nav nav a:hover {
    background:rgba(255,255,255,.065);
    color:#fff
}

.adm-nav nav a.active i {
    background:var(--accent);
    box-shadow:0 8px 20px rgba(255,44,85,.22)
}

.adm-main {
    padding:22px clamp(16px,3vw,36px) 48px
}

.adm-page,.adm-header {
    width:min(1120px,100%);
    margin-left:auto;
    margin-right:auto
}

.adm-header {
    margin-bottom:18px
}

.adm-header h1 {
    display:flex;
    align-items:center;
    gap:9px;
    font-size:24px;
    letter-spacing:-.75px
}

.adm-title-icon {
    width:22px;
    height:22px;
    opacity:.95
}

.adm-header p {
    font-size:9px
}

.adm-overline {
    font-size:8px!important;
    color:var(--accent)!important;
    letter-spacing:1.4px!important
}

.adm-icon-btn {
    width:39px;
    height:39px;
    border-radius:12px;
    background:var(--surface);
    border:1px solid var(--line)
}

.adm-icon-btn img {
    width:17px;
    height:17px
}

.adm-kpis {
    gap:10px
}

.adm-kpis article {
    min-height:96px;
    padding:15px;
    border-radius:17px;
    background:linear-gradient(145deg,var(--surface),#0d1016);
    border-color:var(--line)
}

.adm-kpis article>i {
    width:39px;
    height:39px;
    flex-basis:39px;
    border-radius:12px;
    background:rgba(255,255,255,.05)
}

.adm-kpis article>i img {
    width:19px;
    height:19px
}

.adm-kpis span {
    font-size:7px
}

.adm-kpis strong {
    font-size:26px
}

.adm-card {
    padding:18px;
    border-radius:18px;
    background:var(--surface);
    border-color:var(--line);
    box-shadow:0 14px 40px rgba(0,0,0,.18)
}

.adm-card h2 {
    font-size:17px;
    letter-spacing:-.35px
}

.adm-card>p,.adm-card-head p {
    font-size:9px
}

.hero-card {
    min-height:220px;
    background:radial-gradient(circle at 88% 8%,rgba(139,92,246,.11),transparent 40%),radial-gradient(circle at 10% 100%,rgba(255,44,85,.09),transparent 42%),linear-gradient(145deg,#12151d,#0d1016)
}

.hero-card h2 {
    font-size:22px
}

.hero-card>p {
    font-size:10px
}

.adm-pill {
    min-height:22px;
    padding:0 8px;
    border-radius:8px;
    font-size:6.5px;
    color:#ff6482;
    background:rgba(255,44,85,.09)
}

.adm-quick {
    gap:8px
}

.adm-quick a {
    min-height:78px;
    padding:11px;
    border-radius:14px;
    background:#0d1016;
    border-color:var(--line)
}

.adm-quick a>img {
    width:18px;
    height:18px;
    opacity:.9
}

.adm-quick a>b {
    font-size:10px
}

.adm-quick a>small {
    font-size:7.5px
}

.adm-btn {
    min-height:38px;
    border-radius:11px;
    font-size:8.5px
}

.adm-btn.primary {
    background:#fff;
    color:#0b0c10;
    box-shadow:none
}

.adm-btn.secondary {
    background:#151922;
    border-color:var(--line)
}

.adm-search {
    height:42px;
    border-radius:12px;
    background:#0b0e14;
    border-color:var(--line)
}

.adm-search>span img {
    width:16px;
    height:16px;
    opacity:.58
}

.adm-search input {
    font-size:10px
}

.adm-user {
    border-radius:14px;
    background:#0d1016;
    border-color:var(--line)
}

.adm-user>img {
    border-radius:12px
}

.adm-user-info b {
    font-size:10px
}

.adm-user-info span {
    font-size:7.5px
}

.adm-form label {
    font-size:7.5px
}

.adm-form input,.adm-form textarea,.adm-form select,.adm-card input,.adm-card textarea,.adm-card select {
    font-size:9.5px;
    border-radius:11px;
    background:#0b0e14;
    border-color:var(--line)
}

.adm-comment {
    border-radius:15px;
    background:#0b0e14;
    border-color:var(--line)
}

.adm-comment-media {
    background:#0d1016;
    border-color:var(--line)
}

.adm-comment-media b {
    font-size:9.5px
}

.adm-comment-body p {
    font-size:9.5px
}

.adm-table {
    border-radius:14px;
    border-color:var(--line)
}

.adm-table th,.adm-table td {
    font-size:7.5px
}

.adm-phone-screen {
    min-height:600px;
    border-width:6px;
    border-color:#20242e
}

.adm-demo-popup {
    background:var(--surface);
    border-color:var(--line)
}

@media(max-width:980px) {
    .adm-nav {
        height:64px;
        background:rgba(8,9,13,.94);
        border-top:1px solid var(--line)
    }

    .adm-nav nav a {
        font-size:6.5px
    }

    .adm-nav nav a i {
        width:27px;
        height:27px
    }

    .adm-nav nav a i img {
        width:15px;
        height:15px
    }

    .adm-main {
        padding:16px 12px 86px
    }

    .adm-header h1 {
        font-size:21px
    }

    .adm-page,.adm-header {
        width:min(760px,100%)
    }

}

@media(max-width:620px) {
    .adm-header {
        align-items:flex-start
    }

    .adm-kpis article {
        min-height:84px;
        padding:12px
    }

    .adm-kpis strong {
        font-size:22px
    }

    .adm-card {
        padding:14px
    }

    .adm-card h2 {
        font-size:16px
    }

    .hero-card h2 {
        font-size:20px
    }

    .adm-nav {
        height:58px;
        padding:5px 6px calc(5px + env(safe-area-inset-bottom))
    }

    .adm-nav nav a i {
        width:31px;
        height:31px
    }

    .adm-nav nav a span {
        display:none
    }

    .adm-main {
        padding-bottom:78px
    }

}
