:root{
  --bg:#09101b;--bg2:#0c1422;--panel:#0f1827;--panel2:#121d2f;--line:#263246;--line2:#334157;
  --text:#f6f7fb;--muted:#a7b0c0;--muted2:#7f8a9b;--red:#ff315b;--red2:#e7194f;--pink:#ff4f82;
  --purple:#9a5cff;--gold:#ffc735;--green:#41d482;--blue:#6688ff;--shadow:0 20px 50px rgba(0,0,0,.28)
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:
radial-gradient(circle at 72% 0%,rgba(73,107,164,.14),transparent 28%),radial-gradient(circle at 86% 82%,rgba(181,22,61,.17),transparent 25%),linear-gradient(180deg,#0b121e,#070d16 62%,#070b12);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,textarea,select{font:inherit}button{color:inherit}.site-shell{display:grid;grid-template-columns:276px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:18px 14px 18px 22px;background:rgba(7,13,22,.94);border-right:1px solid var(--line);overflow:auto}.logo-wrap{display:block;width:190px;margin:0 auto 10px}.logo-wrap img{width:100%;height:102px;object-fit:contain;object-position:center}.side-user{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 4px 14px;cursor:pointer}.side-avatar,.avatar,.top-avatar{border-radius:50%;background:linear-gradient(145deg,#654257,#222c3f);border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;font-weight:900}.side-avatar{width:48px;height:48px}.side-user-copy{min-width:0}.side-user-copy b{display:block;font-size:15px}.side-user-copy small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.side-chevron{font-size:27px;color:#d8deea}.popularity-button{width:100%;height:48px;border:0;border-radius:12px;background:linear-gradient(135deg,#ff315b,#d91349);font-weight:800;cursor:pointer;box-shadow:0 12px 28px rgba(225,27,76,.22);font-size:14px}.side-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.shortcut-card{min-height:96px;border-radius:12px;border:1px solid var(--line);background:#0d1624;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer}.shortcut-card span{font-size:26px}.shortcut-card b{font-size:12px}.shortcut-card small{font-size:12px;color:var(--gold);font-weight:900}.shortcut-card:nth-child(2) small{color:var(--red)}.side-divider{height:1px;background:var(--line);margin:16px 0}.side-nav{display:flex;flex-direction:column;gap:4px}.side-nav a{position:relative;display:grid;grid-template-columns:30px 1fr auto;align-items:center;height:43px;padding:0 10px;color:#e3e7ef;text-decoration:none;border-radius:10px;font-size:14px;transition:.15s}.side-nav a:hover{background:#101b2a}.side-nav a.active{background:linear-gradient(90deg,rgba(255,49,91,.24),rgba(255,49,91,.08));box-shadow:inset 3px 0 0 var(--red);color:white}.side-nav em{min-width:24px;height:24px;border-radius:999px;background:var(--red2);display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:900;padding:0 6px}.side-nav em:empty,.side-nav em[data-zero="1"]{display:none}.side-promo{position:relative;overflow:hidden;border:1px solid rgba(255,49,91,.35);border-radius:14px;min-height:245px;background:#141b27;padding:16px;margin-top:10px}.promo-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,18,.94) 0 45%,rgba(8,12,18,.35)),radial-gradient(circle at 80% 22%,#835348,transparent 22%),linear-gradient(135deg,#2d1d2a,#151e2c 60%,#101720)}.promo-copy{position:relative;width:62%;z-index:1}.promo-copy span{font-size:22px}.promo-copy h3{margin:8px 0 8px;font-size:17px;line-height:1.2}.promo-copy p{margin:0;color:#d7d9df;font-size:11px;line-height:1.5}.side-promo button{position:absolute;left:14px;right:14px;bottom:14px;height:42px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--red),var(--red2));font-weight:800;cursor:pointer}.main-area{min-width:0}.topbar{position:sticky;top:0;z-index:20;height:76px;padding:0 28px;display:flex;align-items:center;gap:20px;background:rgba(8,14,23,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.search-box{width:min(380px,38vw);height:42px;border:1px solid var(--line2);border-radius:15px;background:#0e1725;color:var(--muted);display:flex;align-items:center;gap:10px;padding:0 14px;font-size:22px}.search-box input{width:100%;border:0;background:transparent;color:#fff;outline:none;font-size:13px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.top-credit,.top-icon,.top-account,.lang-toggle{height:40px;border-radius:12px;border:1px solid var(--line);background:#0e1725;cursor:pointer}.top-credit{padding:0 12px}.top-credit span{color:var(--red);font-weight:900}.top-icon{width:42px;position:relative}.top-icon i{position:absolute;right:-5px;top:-7px;min-width:20px;height:20px;border-radius:50%;background:var(--red2);display:grid;place-items:center;font-size:9px;font-style:normal;font-weight:900;border:2px solid #0b111c}.top-account{padding:0 12px 0 6px;display:flex;align-items:center;gap:8px}.top-avatar{width:30px;height:30px}.lang-toggle{padding:0 11px;font-weight:800}.page-root{padding:28px 32px 50px;max-width:1460px;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.page-head h1{margin:0;font-size:43px;line-height:1}.page-head p{margin:10px 0 0;color:#d0d5df;font-size:15px}.filter-select{height:42px;border-radius:12px;border:1px solid var(--line2);background:#0d1624;color:#fff;padding:0 14px}.cards-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.profile-card{position:relative;aspect-ratio:1/1.03;min-height:235px;border-radius:12px;overflow:hidden;border:1px solid #354052;background:#121b28;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.18)}.profile-card-photo{position:absolute;inset:0;background-size:cover;background-position:center}.profile-card.no-photo .profile-card-photo{background:radial-gradient(circle at 50% 24%,#875a50 0 10%,transparent 24%),radial-gradient(circle at 48% 48%,#3d2d32,transparent 35%),linear-gradient(135deg,#3a2a31,#17202f 55%,#0b121d)}.profile-card::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(180deg,transparent,rgba(6,9,14,.88))}.card-time{position:absolute;z-index:2;right:10px;top:10px;border-radius:9px;background:rgba(10,12,16,.65);padding:6px 9px;font-size:11px}.card-info{position:absolute;z-index:2;left:15px;right:15px;bottom:13px}.card-name{display:flex;align-items:center;gap:7px;font-size:18px;font-weight:800}.online-dot{width:8px;height:8px;border-radius:50%;background:var(--green);display:inline-block}.verified{width:18px;height:18px;border-radius:50%;display:inline-grid;place-items:center;background:#6378ff;color:#fff;font-size:11px}.card-city{margin-top:4px;color:#d3d7df;font-size:13px}.locked .profile-card-photo{filter:blur(16px) saturate(.6);transform:scale(1.08)}.locked-badge{position:absolute;z-index:3;inset:0;display:grid;place-items:center;font-weight:900;text-align:center;background:rgba(3,6,10,.12)}.discover-layout{display:grid;grid-template-columns:minmax(0,720px) 320px;gap:22px;align-items:start}.discover-card{position:relative;aspect-ratio:4/5;max-height:720px;border-radius:18px;overflow:hidden;border:1px solid #3a4658;background:#121b29}.discover-card .profile-card-photo{position:absolute;inset:0;background-size:cover;background-position:center}.discover-card::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(180deg,transparent,rgba(5,8,13,.94))}.discover-info{position:absolute;z-index:2;left:22px;right:22px;bottom:22px}.discover-info h2{font-size:32px;margin:0}.discover-meta{margin-top:5px;color:#d9dce3}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tag{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1);font-size:11px}.action-row{display:flex;justify-content:center;gap:16px;margin-top:16px}.action-circle{width:58px;height:58px;border-radius:50%;border:1px solid var(--line2);background:#0f1827;font-size:24px;cursor:pointer}.action-circle.back{color:var(--gold)}.action-circle.nope{color:#ff6c83}.action-circle.like{color:#ff5a86}.action-circle.super{color:#a575ff}.discover-side{display:grid;gap:14px}.simple-panel{border:1px solid var(--line);background:#0d1624;border-radius:14px;padding:17px}.simple-panel h3{margin:0 0 12px;font-size:16px}.stat-line{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:13px}.stat-line:last-child{border-bottom:0}.stat-line span{color:var(--muted)}.hot-button{width:100%;height:44px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--red),var(--red2));font-weight:800;cursor:pointer}.split-page{display:grid;grid-template-columns:1fr 1fr;gap:18px}.list-panel{border:1px solid var(--line);border-radius:14px;background:#0d1624;overflow:hidden}.panel-title{padding:16px 18px;border-bottom:1px solid var(--line);font-weight:800}.conversation-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer}.conversation-item:hover,.conversation-item.active{background:#111d2d}.avatar{width:42px;height:42px}.conversation-copy b{display:block;font-size:14px}.conversation-copy small{display:block;color:var(--muted);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread{min-height:650px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:#0a121e;overflow:hidden}.thread-head{height:64px;padding:0 16px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line)}.thread-body{flex:1;padding:18px;display:flex;flex-direction:column;gap:12px}.bubble{max-width:72%;padding:11px 13px;border-radius:15px;background:#131e2e;line-height:1.45;font-size:13px}.bubble.me{align-self:flex-end;background:linear-gradient(135deg,var(--red),var(--red2))}.compose{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid var(--line)}.compose input{height:42px;border:1px solid var(--line2);border-radius:11px;background:#0f1826;color:#fff;padding:0 13px;outline:none}.compose button{width:44px;border:0;border-radius:11px;background:var(--red);cursor:pointer}.profile-layout{display:grid;grid-template-columns:360px 1fr;gap:20px}.profile-main-card,.settings-panel{border:1px solid var(--line);border-radius:14px;background:#0d1624;padding:18px}.profile-photo-large{height:360px;border-radius:12px;background-size:cover;background-position:center;background-color:#172232}.profile-main-card h2{font-size:28px;margin:14px 0 4px}.profile-main-card p{color:var(--muted);line-height:1.5}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.profile-stats div{padding:12px;text-align:center;border:1px solid var(--line);border-radius:10px}.profile-stats small{display:block;color:var(--muted);font-size:10px}.profile-stats b{display:block;font-size:19px;margin-top:4px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}.setting-row small{display:block;color:var(--muted);margin-top:4px}.toggle{width:46px;height:25px;border-radius:999px;background:#283348;position:relative;cursor:pointer}.toggle::after{content:"";position:absolute;width:19px;height:19px;left:3px;top:3px;border-radius:50%;background:#dbe2ec;transition:.18s}.toggle.on{background:rgba(255,49,91,.34)}.toggle.on::after{left:24px;background:white}.feed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feed-card{border:1px solid var(--line);border-radius:14px;background:#0d1624;overflow:hidden}.feed-head{display:flex;gap:10px;align-items:center;padding:12px}.feed-photo{aspect-ratio:4/3;background:#182334;background-size:cover;background-position:center}.feed-body{padding:12px;color:#d7dbe3;line-height:1.5;font-size:13px}.feed-actions{display:flex;gap:8px;padding:0 12px 12px}.feed-actions button{border:1px solid var(--line);background:#101a29;border-radius:9px;padding:7px 10px;cursor:pointer}.empty{padding:40px;text-align:center;border:1px dashed var(--line2);border-radius:14px;color:var(--muted)}.toast{position:fixed;z-index:200;left:50%;bottom:24px;transform:translate(-50%,15px);padding:11px 15px;border-radius:11px;background:#101a29;border:1px solid var(--line2);opacity:0;transition:.18s}.toast.show{opacity:1;transform:translate(-50%,0)}.modal-backdrop{position:fixed;z-index:180;inset:0;background:rgba(2,5,10,.75);display:grid;place-items:center;padding:20px}.modal{width:min(520px,100%);border-radius:16px;border:1px solid var(--line2);background:#0e1725;padding:20px;box-shadow:var(--shadow)}.modal h2{margin:0 0 8px}.modal p{color:var(--muted);line-height:1.5}.modal input{width:100%;height:43px;margin-top:6px;margin-bottom:10px;border:1px solid var(--line2);border-radius:10px;background:#0a121e;color:white;padding:0 12px;outline:none}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}.btn{height:42px;padding:0 15px;border-radius:10px;border:1px solid var(--line2);background:#111b2a;cursor:pointer}.btn.primary{border:0;background:linear-gradient(135deg,var(--red),var(--red2));font-weight:800}
@media(max-width:1180px){.cards-grid{grid-template-columns:repeat(3,1fr)}.discover-layout{grid-template-columns:1fr}.discover-side{grid-template-columns:1fr 1fr}.feed-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.site-shell{display:block}.sidebar{position:static;height:auto}.logo-wrap{width:150px}.side-promo{display:none}.main-area{min-width:0}.topbar{position:sticky;top:0;padding:0 12px}.search-box{display:none}.top-account b{display:none}.page-root{padding:20px 14px 40px}.cards-grid{grid-template-columns:repeat(2,1fr);gap:10px}.page-head h1{font-size:34px}.discover-side{grid-template-columns:1fr}.split-page,.profile-layout{grid-template-columns:1fr}.feed-grid{grid-template-columns:1fr}.side-nav{display:grid;grid-template-columns:repeat(4,1fr)}.side-nav a{grid-template-columns:1fr;justify-items:center;height:52px;font-size:11px}.side-nav a span{display:block}.side-nav a em{position:absolute;right:4px;top:2px}.side-shortcuts,.side-user,.popularity-button,.side-divider{display:none}.sidebar{padding:8px 10px}.logo-wrap{margin:0 auto}.sidebar{border-right:0;border-bottom:1px solid var(--line)}}

/* =========================================================
   v2.1 UI / SPEED / FONT AWESOME / FULL-PAGE SIDEBAR
   ========================================================= */
:root{--app-font:'Roboto',Arial,sans-serif}
html,body{font-family:var(--app-font);font-size:16px}
body[data-font="roboto"]{--app-font:'Roboto',Arial,sans-serif}
body[data-font="oswald"]{--app-font:'Oswald',Arial,sans-serif}
body[data-font="inter"]{--app-font:'Inter',Arial,sans-serif}
body[data-font="system"]{--app-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,textarea,select{font-family:inherit}

/* The whole document scrolls together; sidebar no longer has an inner scrollbox. */
.site-shell{align-items:stretch;position:relative;z-index:2}
.sidebar{position:relative;top:auto;height:auto;min-height:100vh;overflow:visible;padding-bottom:26px}
.main-area{min-height:100vh}

/* Ambient circles / sparkling bokeh. Kept behind UI, crisp interface stays unblurred. */
body{position:relative;overflow-x:hidden;background:
 radial-gradient(circle at 72% -8%,rgba(70,102,165,.16),transparent 31%),
 radial-gradient(circle at 92% 88%,rgba(220,24,79,.19),transparent 27%),
 radial-gradient(circle at 22% 72%,rgba(255,48,90,.08),transparent 19%),
 linear-gradient(180deg,#0b121e,#070d16 62%,#070b12)}
.ambient-bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.ambient-bg i{position:absolute;display:block;border-radius:50%;filter:blur(2px);opacity:.55;box-shadow:0 0 34px currentColor}
.ambient-bg i:nth-child(1){width:68px;height:68px;left:28%;top:5%;color:rgba(76,116,190,.17);background:rgba(76,116,190,.12)}
.ambient-bg i:nth-child(2){width:24px;height:24px;left:58%;top:15%;color:rgba(255,71,111,.20);background:rgba(255,71,111,.12)}
.ambient-bg i:nth-child(3){width:105px;height:105px;right:4%;top:28%;color:rgba(56,87,144,.16);background:rgba(56,87,144,.08)}
.ambient-bg i:nth-child(4){width:39px;height:39px;left:17%;top:48%;color:rgba(255,59,99,.16);background:rgba(255,59,99,.10)}
.ambient-bg i:nth-child(5){width:88px;height:88px;left:46%;bottom:7%;color:rgba(88,117,174,.15);background:rgba(88,117,174,.08)}
.ambient-bg i:nth-child(6){width:32px;height:32px;right:17%;bottom:18%;color:rgba(255,39,88,.24);background:rgba(255,39,88,.11)}
.ambient-bg i:nth-child(7){width:16px;height:16px;left:69%;top:42%;color:rgba(255,255,255,.13);background:rgba(255,255,255,.08);box-shadow:0 0 20px rgba(255,255,255,.18)}
.ambient-bg i:nth-child(8){width:52px;height:52px;left:8%;bottom:8%;color:rgba(216,26,73,.17);background:rgba(216,26,73,.09)}

/* Font Awesome replaces emoji/glyph navigation. */
.side-nav a{grid-template-columns:32px 1fr auto;font-size:15px;font-weight:500}
.side-nav .nav-ico{width:22px;text-align:center;font-size:16px;color:#d5dce8;transition:.15s}
.side-nav a:hover .nav-ico,.side-nav a.active .nav-ico{color:#fff}
.side-nav a.active .nav-ico{color:#ff6688}
.side-chevron{font-size:15px}
.popularity-button{display:flex;align-items:center;justify-content:center;gap:9px;font-size:15px}
.shortcut-card{gap:7px}
.shortcut-card .shortcut-icon{font-size:24px}
.credit-icon{color:var(--gold)}
.hot-icon{color:#ff596f}
.shortcut-card b{font-size:13px}
.shortcut-card small{font-size:13px}

/* Real user-provided promo photo with a light 18PLUS red/pink gradient. */
.side-promo{min-height:276px;background:#101724;border-color:rgba(255,49,91,.38);box-shadow:0 14px 34px rgba(0,0,0,.24)}
.promo-photo{position:absolute;inset:0;background-image:url('../img/promo-woman.jpg');background-size:cover;background-position:64% center;transform:scale(1.015)}
.promo-overlay{position:absolute;inset:0;background:
 linear-gradient(90deg,rgba(7,12,20,.94) 0%,rgba(8,13,21,.83) 37%,rgba(93,10,41,.35) 72%,rgba(255,42,93,.18) 100%),
 linear-gradient(180deg,rgba(255,44,88,.06),rgba(6,10,17,.22));z-index:0}
.promo-copy{width:62%;z-index:1;position:relative}
.promo-copy span{color:#ffcb49;font-size:20px}
.promo-copy h3{font-size:18px;line-height:1.22;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.promo-copy p{font-size:12px;line-height:1.55;color:#f0edf1;text-shadow:0 2px 8px rgba(0,0,0,.55)}
.side-promo button{z-index:2;font-size:14px}

/* More readable page typography. */
.page-head h1{font-size:46px;font-weight:800;letter-spacing:-.02em}
.page-head p{font-size:16px}
.side-user-copy b{font-size:16px}
.side-user-copy small{font-size:13px}
.card-name{font-size:18px}
.card-city{font-size:14px}
.discover-info h2{font-size:34px}
.discover-meta{font-size:15px}
.simple-panel h3{font-size:17px}
.stat-line{font-size:14px}
.conversation-copy b{font-size:15px}
.conversation-copy small{font-size:13px}
.bubble{font-size:14px;line-height:1.55}

/* Header icons and runtime font selector. */
.search-box{font-size:14px}
.search-box>i{font-size:14px;color:#8ea0b8}
.top-credit{display:flex;align-items:center;gap:7px}
.top-credit>i{position:static!important;width:auto!important;height:auto!important;background:none!important;border:0!important;color:var(--gold)!important;font-size:14px!important}
.top-icon{display:grid;place-items:center;font-size:16px}
.top-icon>i:first-child{position:static;width:auto;height:auto;background:none;border:0;border-radius:0;font-size:17px;font-style:normal;color:#e8edf7;display:block}
.top-icon .notification-badge{position:absolute;right:-5px;top:-7px;min-width:20px;height:20px;border-radius:50%;background:var(--red2);display:grid;place-items:center;font-size:9px;font-style:normal;font-weight:900;border:2px solid #0b111c;color:#fff}
.account-chevron{font-size:10px;color:#aeb8c8}
.font-picker-wrap{height:40px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:12px;background:#0e1725;color:#aeb8c8}
.font-picker-wrap select{border:0;outline:0;background:transparent;color:#eef3fb;cursor:pointer;font-size:12px;max-width:92px}
.font-picker-wrap option{background:#0e1725;color:#fff}

/* Fast navigation feedback while an API call is running. */
.page-root.is-loading{opacity:.56;transition:opacity .12s ease}
.side-nav a.is-loading::after{content:'';width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.16);border-top-color:#ff5a7c;animation:navspin .65s linear infinite}
@keyframes navspin{to{transform:rotate(360deg)}}

/* Font-specific tuning for Oswald so it stays usable, not overly condensed. */
body[data-font="oswald"] .page-head h1{letter-spacing:.005em}
body[data-font="oswald"] p,body[data-font="oswald"] small,body[data-font="oswald"] input,body[data-font="oswald"] .card-city{font-weight:400;letter-spacing:.015em}
body[data-font="oswald"] .side-nav a{font-size:16px}

@media(max-width:1100px){.font-picker-wrap{display:none}}

@media(max-width:860px){
  .sidebar{position:static;min-height:0;height:auto;overflow:visible}
  .side-nav a{grid-template-columns:1fr;justify-items:center;height:54px;font-size:11px}
  .side-nav .nav-ico{width:auto;font-size:16px}
  .side-nav a.is-loading::after{position:absolute;right:5px;top:5px}
}

/* =========================================================
   v2.2 POLISH — Comic Relief, faster menu fix, premium rail
   ========================================================= */
body[data-font="comic"]{--app-font:'Comic Relief','Roboto',Arial,sans-serif}

/* Trimmed new logo: larger visual mark, less dead space. */
.logo-wrap{width:208px;margin:2px auto 2px;line-height:0}
.logo-wrap img{width:100%;height:112px;object-fit:contain;object-position:center}
.side-user{padding-top:2px}

/* Badges must never flash a zero while API counts load. */
[hidden]{display:none!important}
.side-nav em,.notification-badge{transition:opacity .12s ease,transform .12s ease}

/* Discover fills the desktop width and adds a proper premium-users rail. */
.page-root{max-width:1680px}
.discover-layout{grid-template-columns:minmax(560px,720px) minmax(270px,310px) minmax(205px,240px);gap:20px;align-items:start}
.discover-primary{min-width:0}
.panel-copy{color:var(--muted);font-size:13px;line-height:1.55}
.premium-users-panel{position:relative;overflow:hidden;border:1px solid rgba(244,181,64,.35);border-radius:14px;background:
 linear-gradient(180deg,rgba(81,60,25,.78),rgba(41,31,20,.94)),
 #17130f;padding:16px 14px 14px;box-shadow:0 14px 34px rgba(0,0,0,.23)}
.premium-users-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 74% 18%,rgba(255,192,64,.13),transparent 28%);pointer-events:none}
.premium-users-head{position:relative;display:flex;align-items:center;gap:8px;color:#f7c454;font-size:13px;font-weight:800;margin-bottom:15px}
.premium-users-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:11px 8px}
.premium-user{border:0;background:transparent;padding:0;cursor:pointer;display:grid;place-items:center}
.premium-user>span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#674a42,#20293a);background-size:cover;background-position:center;border:2px solid #d7a92d;box-shadow:0 0 0 2px rgba(82,57,12,.75),0 7px 18px rgba(0,0,0,.28);font-weight:800;color:#fff}
.premium-user:hover>span{transform:translateY(-2px);border-color:#ffd55f}
.premium-users-cta{position:relative;width:100%;height:38px;margin-top:16px;border:0;border-radius:9px;background:linear-gradient(135deg,#c79826,#f0bc3d);color:#312000;font-weight:800;cursor:pointer;font-size:12px}

/* Promo card uses the new portrait and a slightly richer 18PLUS overlay. */
.side-promo{min-height:292px}
.promo-photo{background-image:url('../img/promo-woman.jpg');background-size:cover;background-position:58% 30%;transform:scale(1.01)}
.promo-overlay{background:
 linear-gradient(90deg,rgba(7,12,20,.96) 0%,rgba(8,13,21,.86) 38%,rgba(89,9,41,.43) 69%,rgba(255,42,93,.24) 100%),
 linear-gradient(180deg,rgba(245,24,78,.10),rgba(7,10,17,.26))}

/* More visible, reference-like bokeh/sparkling dots. */
.ambient-bg i{filter:blur(1px);opacity:.72;box-shadow:0 0 28px currentColor,0 0 58px color-mix(in srgb,currentColor 55%,transparent)}
.ambient-bg i:nth-child(9){width:34px;height:34px;left:38%;top:20%;color:rgba(229,43,89,.18);background:rgba(229,43,89,.10)}
.ambient-bg i:nth-child(10){width:73px;height:73px;left:49%;top:8%;color:rgba(72,104,168,.18);background:rgba(72,104,168,.10)}
.ambient-bg i:nth-child(11){width:15px;height:15px;left:63%;top:31%;color:rgba(255,255,255,.20);background:rgba(255,255,255,.13)}
.ambient-bg i:nth-child(12){width:48px;height:48px;right:8%;top:17%;color:rgba(211,30,78,.23);background:rgba(211,30,78,.11)}
.ambient-bg i:nth-child(13){width:22px;height:22px;right:29%;top:51%;color:rgba(83,116,184,.20);background:rgba(83,116,184,.11)}
.ambient-bg i:nth-child(14){width:93px;height:93px;right:-1%;bottom:2%;color:rgba(187,18,62,.18);background:rgba(187,18,62,.09)}
.ambient-bg i:nth-child(15){width:28px;height:28px;left:35%;bottom:17%;color:rgba(255,54,99,.23);background:rgba(255,54,99,.12)}
.ambient-bg i:nth-child(16){width:12px;height:12px;left:52%;bottom:31%;color:rgba(255,255,255,.18);background:rgba(255,255,255,.12)}
.ambient-bg i:nth-child(17){width:54px;height:54px;left:11%;top:28%;color:rgba(59,90,154,.18);background:rgba(59,90,154,.09)}
.ambient-bg i:nth-child(18){width:19px;height:19px;left:24%;top:82%;color:rgba(233,31,81,.25);background:rgba(233,31,81,.13)}
.ambient-bg i:nth-child(19){width:42px;height:42px;right:38%;bottom:4%;color:rgba(66,99,167,.20);background:rgba(66,99,167,.10)}
.ambient-bg i:nth-child(20){width:18px;height:18px;right:12%;top:69%;color:rgba(255,83,119,.23);background:rgba(255,83,119,.12)}

/* Comic Relief works best with restrained weight and generous line-height. */
body[data-font="comic"] .page-head h1{font-weight:700;letter-spacing:-.015em}
body[data-font="comic"] .side-nav a{font-weight:700}
body[data-font="comic"] .card-name,body[data-font="comic"] .discover-info h2{font-weight:700}
body[data-font="comic"] p,body[data-font="comic"] small{line-height:1.52}

@media(max-width:1450px){
  .discover-layout{grid-template-columns:minmax(520px,1fr) 290px 215px}
  .premium-user>span{width:46px;height:46px}
}
@media(max-width:1250px){
  .discover-layout{grid-template-columns:minmax(0,1fr) 300px}
  .premium-users-panel{grid-column:1/-1}
  .premium-users-grid{grid-template-columns:repeat(8,1fr)}
}
@media(max-width:860px){
  .logo-wrap{width:168px;margin:0 auto}
  .logo-wrap img{height:88px}
  .discover-layout{grid-template-columns:1fr}
  .premium-users-panel{display:none}
}

/* =========================================================
   v2.3 PRELOAD + INTER + USER CARD + MAINTENANCE
   ========================================================= */
:root{--app-font:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
html,body,button,input,textarea,select{font-family:var(--app-font)!important}
.font-picker-wrap{display:none!important}
.side-user{border:1px solid var(--line);border-radius:13px;background:rgba(14,23,37,.78);padding:10px 10px 10px 9px!important;margin:2px 0 10px;transition:border-color .15s ease,background .15s ease,transform .15s ease}
.side-user:hover{border-color:#3d4c63;background:#101b2b;transform:translateY(-1px)}
.side-user-copy b{font-weight:800}.side-user-copy small{font-weight:500}


.maintenance-body{margin:0;min-height:100vh;overflow:hidden;background:#070d16;font-family:Inter,system-ui,sans-serif;color:#fff;display:grid;place-items:center;position:relative}
.maintenance-screen{position:relative;z-index:2;width:min(620px,calc(100vw - 42px));text-align:center;padding:34px 24px}.maintenance-screen img{width:min(360px,82%);height:190px;object-fit:contain}.maintenance-pill{display:inline-flex;margin-top:4px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,49,91,.38);background:rgba(255,49,91,.10);color:#ff7894;font-size:11px;font-weight:800;letter-spacing:.12em}.maintenance-screen h1{font-size:clamp(34px,6vw,62px);line-height:1;margin:20px 0 12px;letter-spacing:-.04em}.maintenance-screen p{max-width:560px;margin:0 auto;color:#b8c0cf;font-size:16px;line-height:1.65}.maintenance-line{width:210px;height:2px;background:#273245;margin:26px auto 15px;overflow:hidden}.maintenance-line i{display:block;width:45%;height:100%;background:linear-gradient(90deg,transparent,#ff315b,#a454ff,transparent);animation:maintLine 2.1s infinite linear}@keyframes maintLine{from{transform:translateX(-120%)}to{transform:translateX(330%)}}.maintenance-screen small{color:#667287;letter-spacing:.18em}.maintenance-bokeh{position:fixed;inset:0;pointer-events:none}.maintenance-bokeh i{position:absolute;border-radius:50%;filter:blur(2px);box-shadow:0 0 36px currentColor}.maintenance-bokeh i:nth-child(1){width:95px;height:95px;left:8%;top:14%;background:rgba(68,98,164,.10);color:rgba(68,98,164,.15)}.maintenance-bokeh i:nth-child(2){width:32px;height:32px;left:25%;bottom:15%;background:rgba(255,49,91,.12);color:rgba(255,49,91,.22)}.maintenance-bokeh i:nth-child(3){width:140px;height:140px;right:8%;top:24%;background:rgba(74,103,157,.08);color:rgba(74,103,157,.13)}.maintenance-bokeh i:nth-child(4){width:55px;height:55px;right:20%;bottom:9%;background:rgba(217,25,79,.13);color:rgba(217,25,79,.21)}.maintenance-bokeh i:nth-child(5){width:19px;height:19px;left:62%;top:13%;background:rgba(255,255,255,.08);color:rgba(255,255,255,.12)}.maintenance-bokeh i:nth-child(6){width:42px;height:42px;left:48%;bottom:8%;background:rgba(157,77,255,.08);color:rgba(157,77,255,.14)}


/* v2.4 instant navigation: content changes immediately; data fills in asynchronously. */
.skeleton-grid{pointer-events:none}
.skeleton-card,.skeleton-big,.messages-shell-skeleton>div{position:relative;overflow:hidden;background:#111b2a;border:1px solid var(--line);border-radius:16px}
.skeleton-card{aspect-ratio:3/4;min-height:260px}
.skeleton-card i,.skeleton-card b,.skeleton-card small{position:absolute;left:16px;border-radius:999px;background:#1b293d}
.skeleton-card i{inset:0;left:0;border-radius:0;background:#121d2c}
.skeleton-card b{bottom:46px;width:42%;height:15px}.skeleton-card small{bottom:22px;width:28%;height:10px}
.skeleton-card::after,.skeleton-big::after,.messages-shell-skeleton>div::after{content:'';position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.055),transparent);animation:instantShimmer 1.15s infinite}
.skeleton-discover{min-width:0}.skeleton-big{height:min(68vh,690px);min-height:520px}
.messages-shell-skeleton{display:grid;grid-template-columns:320px 1fr;gap:1px;height:650px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--line)}.messages-shell-skeleton>div{border:0;border-radius:0}
.profile-shell-skeleton{max-width:900px}
@keyframes instantShimmer{100%{transform:translateX(100%)}}
@media(max-width:780px){.messages-shell-skeleton{grid-template-columns:1fr}.messages-shell-skeleton>div:last-child{display:none}.skeleton-big{min-height:430px}}

/* =========================================================
   v2.6 DB-only profiles, fake switcher, unified rails
   ========================================================= */
.logo-wrap{margin-bottom:14px}
.side-user{margin-top:8px!important;margin-bottom:10px!important}
.side-avatar,.top-avatar,.avatar{background-color:#09101b;background-image:url('../img/user-placeholder.png');background-size:cover;background-position:center;color:transparent}
.fake-switch-button{width:100%;min-height:42px;margin:0 0 10px;border:1px solid rgba(154,92,255,.42);border-radius:11px;background:linear-gradient(135deg,rgba(154,92,255,.22),rgba(255,49,91,.14));font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.fake-switch-button:hover{border-color:#a875ff;background:linear-gradient(135deg,rgba(154,92,255,.34),rgba(255,49,91,.22))}
.page-root{max-width:1680px;width:100%}
.browse-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}
.browse-main{min-width:0}.browse-rail{display:grid;gap:14px;position:sticky;top:94px}
.browse-main .cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.section-title{margin-top:30px}
.empty-state{min-height:190px;border:1px dashed #334157;border-radius:16px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:28px;color:var(--muted)}
.empty-state>i{font-size:30px;color:#ff577b;margin-bottom:10px}.empty-state h3{margin:0;color:#fff}.empty-state p{margin:7px 0 0;max-width:420px}

body[data-page="discover"] .page-root{padding-top:26px;padding-bottom:18px}
body[data-page="discover"] .page-head{margin-bottom:15px}
.discover-layout{grid-template-columns:minmax(430px,1fr) 290px 220px;gap:18px}
.discover-card{aspect-ratio:auto;height:clamp(400px,calc(100vh - 270px),620px);max-height:none}
.discover-primary .action-row{height:62px;margin-top:12px}
.discover-primary .action-circle{width:54px;height:54px}
.discover-side .gift-board.compact{margin-top:0}

.modal{max-height:min(88vh,820px);overflow:auto}.modal-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.modal-title h2{margin:0}.modal-title button{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:#111b2a;cursor:pointer}.modal-lead{margin-top:0}
.notification-modal{width:min(620px,100%)}.notification-list{display:grid;gap:8px;margin-top:14px}.notification-item{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:13px;background:#0a121e}.notification-item.unread{border-color:rgba(255,49,91,.38);background:linear-gradient(90deg,rgba(255,49,91,.12),#0a121e)}.notification-item>span{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(255,49,91,.13);color:#ff6685}.notification-item b{display:block;font-size:13px;line-height:1.35}.notification-item small{display:block;color:var(--muted);margin-top:4px}.notification-dot{width:8px;height:8px;border-radius:50%;background:var(--red)}

.fake-modal{width:min(720px,100%)}.fake-account-list{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.fake-account-card,.fake-back{border:1px solid var(--line);border-radius:13px;background:#0a121e;cursor:pointer;text-align:left}.fake-account-card{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:11px;padding:10px}.fake-account-card:hover,.fake-account-card.active{border-color:#a36cff;background:#121a2b}.fake-account-card:disabled{opacity:.55}.fake-photo{width:52px;height:52px;border-radius:50%;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.14)}.fake-copy{min-width:0}.fake-copy b,.fake-copy small,.fake-copy em{display:block}.fake-copy b{font-size:14px}.fake-copy b i{color:#5ebdff}.fake-copy small{color:var(--muted);font-size:11px;margin-top:3px}.fake-copy em{font-style:normal;color:#e4e9f2;font-size:11px;margin-top:7px}.fake-copy em i{color:#ff6382;margin-left:8px}.fake-copy em i:first-child{margin-left:0}.fake-back{width:100%;padding:12px;display:flex;align-items:center;gap:12px;border-color:rgba(255,199,53,.36)}.fake-back>i{font-size:23px;color:var(--gold)}.fake-back b,.fake-back small{display:block}.fake-back small{color:var(--muted);margin-top:3px}

.gift-board{margin-top:18px;border:1px solid rgba(255,199,53,.25);border-radius:16px;background:linear-gradient(145deg,rgba(64,44,25,.65),rgba(18,24,37,.96));padding:15px;overflow:hidden}.gift-board-head{display:flex;justify-content:space-between;align-items:center}.gift-board-head small{color:#ffc735;font-weight:900;font-size:10px;letter-spacing:.08em}.gift-board-head h3{margin:3px 0 0}.gift-board-head>i{font-size:25px;color:#ffc735}.gift-board-canvas{height:290px;position:relative;margin-top:12px;border-radius:12px;background:radial-gradient(circle at 30% 20%,rgba(255,199,53,.09),transparent 25%),rgba(7,13,22,.62);border:1px solid rgba(255,255,255,.07)}.gift-board.compact .gift-board-canvas{height:220px}.gift-board-canvas>.empty-state{position:absolute;inset:0;min-height:0;border:0}.gift-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:82px;text-align:center;padding:6px;border-radius:11px;background:rgba(12,18,28,.9);border:1px solid rgba(255,199,53,.2);box-shadow:0 8px 20px rgba(0,0,0,.25)}.gift-pin span{display:block;font-size:25px}.gift-pin b,.gift-pin small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gift-pin b{font-size:10px}.gift-pin small{font-size:8px;color:var(--muted);margin-top:2px}

.benefit-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid rgba(255,199,53,.3);border-radius:18px;padding:25px 28px;background:linear-gradient(120deg,rgba(255,49,91,.14),rgba(255,199,53,.11),#0d1624);margin-bottom:20px}.benefit-hero span{font-size:11px;font-weight:900;color:#ffc735;letter-spacing:.1em}.benefit-hero h2{font-size:30px;margin:7px 0}.benefit-hero p{color:var(--muted);margin:0}.benefit-hero>i{font-size:66px;color:#ffc735;filter:drop-shadow(0 8px 20px rgba(255,199,53,.2))}
.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,430px));gap:18px}.pricing-card{position:relative;border:1px solid var(--line);border-radius:18px;background:#0d1624;padding:24px}.pricing-card.featured{border-color:rgba(255,49,91,.55);box-shadow:0 15px 38px rgba(255,49,91,.1)}.pricing-badge{display:inline-flex;padding:6px 9px;border-radius:99px;background:rgba(255,49,91,.15);color:#ff708e;font-size:10px;font-weight:900}.pricing-card h2{font-size:27px;margin:16px 0 8px}.price{font-size:28px;font-weight:900}.price small{font-size:12px;color:var(--muted);font-weight:500}.credit-price{margin-top:5px;color:#ffc735;font-weight:800}.pricing-card ul{list-style:none;padding:0;margin:20px 0}.pricing-card li{padding:7px 0;color:#d9deea}.pricing-card li i{color:#49d98a;margin-right:8px}.btn.wide{width:100%;margin-top:9px}.premium-compare{margin-top:22px;border:1px solid var(--line);border-radius:17px;padding:20px;background:#0d1624}.premium-compare h2{margin-top:0}.premium-compare>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.premium-compare span{padding:14px;border-radius:12px;background:#111c2b}.premium-compare span>i{display:block;color:#ff5d7e;font-size:20px}.premium-compare b,.premium-compare small{display:block;margin-top:7px}.premium-compare small{color:var(--muted);line-height:1.4}
.credit-balance{display:flex;align-items:center;gap:16px;padding:18px;border-radius:15px;background:linear-gradient(135deg,rgba(255,199,53,.18),rgba(255,49,91,.1));border:1px solid rgba(255,199,53,.3)}.credit-balance>i{font-size:33px;color:#ffc735}.credit-balance small,.credit-balance b{display:block}.credit-balance small{color:#ffc735;font-size:10px}.credit-balance b{font-size:22px;margin-top:3px}.credit-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0}.credit-benefits article{padding:13px;border:1px solid var(--line);border-radius:12px;background:#0a121e}.credit-benefits i,.credit-benefits b,.credit-benefits small{display:block}.credit-benefits i{color:#ff6685}.credit-benefits b{margin-top:8px}.credit-benefits small{color:var(--muted);font-size:10px;margin-top:4px;line-height:1.4}.checkout-info{text-align:center;padding:22px}.checkout-info i{font-size:44px;color:#ff5c7d}.form-error{color:#ff6c86;min-height:18px}

@media(max-width:1450px){.discover-layout{grid-template-columns:minmax(410px,1fr) 270px}.discover-layout>.premium-users-panel{grid-column:1/-1}.premium-users-grid{grid-template-columns:repeat(9,1fr)}}
@media(max-width:1180px){.browse-layout{grid-template-columns:1fr}.browse-rail{position:static;grid-template-columns:1fr 1fr}.browse-main .cards-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:860px){.fake-switch-button{margin:8px 0}.browse-rail{grid-template-columns:1fr}.browse-main .cards-grid{grid-template-columns:repeat(2,1fr)}.discover-card{height:min(68vh,600px)}.fake-account-list{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr}.premium-compare>div,.credit-benefits{grid-template-columns:1fr}.profile-layout>div{min-width:0}}

/* v2.6.1 fake account counters + large editable gift board */
.fake-copy em{font-style:normal!important;color:#e4e9f2;font-size:10px;margin-top:8px;display:grid!important;grid-template-columns:1fr 1fr;gap:5px}
.fake-copy em span{display:flex!important;align-items:center;gap:4px;padding:5px 6px;border-radius:8px;background:rgba(255,255,255,.05);white-space:nowrap}
.fake-copy em span i{color:#ff6382;margin:0!important}.fake-copy em span b{display:inline;color:#fff;font-size:11px}
.gift-board-head p{margin:5px 0 0;color:var(--muted);font-size:11px}.gift-board-canvas{height:500px;overflow:hidden}
.gift-board.compact .gift-board-canvas{height:250px}.gift-pin{width:94px;padding:8px;user-select:none}.gift-pin span{font-size:29px}.gift-pin b{font-size:11px}.gift-pin small{font-size:9px}
.gift-board.editable .gift-pin{cursor:grab;touch-action:none}.gift-board.editable .gift-pin.dragging{cursor:grabbing;z-index:10;transform:translate(-50%,-50%) scale(1.06);border-color:#ffc735}
.profile-layout{grid-template-columns:minmax(560px,1.2fr) minmax(340px,.8fr)}
@media(max-width:860px){.profile-layout{grid-template-columns:1fr}.gift-board-canvas{height:420px}.fake-copy em{grid-template-columns:1fr}}
