/* MorFM V2 — VIP Visual Asset System & Level Styling */

.vip-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: var(--morfm-radius-full);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.vip-badge-1 { background: #374151; color: #d1d5db; border: 1px solid #6b7280; }
.vip-badge-2 { background: #4b5563; color: #f3f4f6; border: 1px solid #9ca3af; }
.vip-badge-3 { background: #78350f; color: #fef3c7; border: 1px solid #f59e0b; }
.vip-badge-4 { background: #1e3a8a; color: #dbeafe; border: 1px solid #3b82f6; }
.vip-badge-5 { background: #312e81; color: #e0e7ff; border: 1px solid #6366f1; }
.vip-badge-6 { background: #064e3b; color: #d1fae5; border: 1px solid #10b981; }
.vip-badge-7 { background: #831843; color: #fce7f3; border: 1px solid #ec4899; }
.vip-badge-8 { 
  background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #8b5cf6 100%);
  color: #ffffff;
  border: 1px solid #ffffff;
  box-shadow: 0 0 10px rgba(251, 191, 36, 0.5);
}

.vip-avatar-container {
  position: relative;
  display: inline-block;
}

.vip-avatar-frame {
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  pointer-events: none;
}

.vip-frame-1 { border: 2px solid #9ca3af; }
.vip-frame-2 { border: 2px solid #e5e7eb; box-shadow: 0 0 6px #e5e7eb; }
.vip-frame-3 { border: 2px solid #f59e0b; box-shadow: 0 0 8px #f59e0b; }
.vip-frame-4 { border: 2px solid #3b82f6; box-shadow: 0 0 10px #3b82f6; }
.vip-frame-5 { border: 2px dashed #6366f1; animation: spinFrame 10s linear infinite; }
.vip-frame-6 { border: 2px solid #10b981; box-shadow: 0 0 12px #10b981; }
.vip-frame-7 { border: 3px double #ec4899; box-shadow: 0 0 15px #ec4899; }
.vip-frame-8 { 
  border: 3px solid #fbbf24;
  box-shadow: 0 0 20px #fbbf24, inset 0 0 10px #ec4899;
}

@keyframes spinFrame {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* VIP premium storefront — TRY / IBAN manual approval */
.vip-store {
  --vip-bg: #070a12;
  --vip-panel: #0b1120;
  --vip-panel-2: #101628;
  --vip-border: rgba(146, 116, 214, .22);
  --vip-text: #f6f8fc;
  --vip-muted: #93a2ba;
  --vip-purple: #9b52ff;
  --vip-pink: #ea4faf;
  --vip-gold: #ffc45f;
  --vip-green: #54e0aa;
  display: grid;
  gap: 26px;
  padding-block: 24px 42px;
}
.vip-store * { box-sizing: border-box; }
.vip-store__hero {
  position: relative;
  min-height: 470px;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
  align-items: end;
  gap: 24px;
  padding: clamp(28px, 5vw, 58px);
  border: 1px solid rgba(167, 94, 255, .32);
  border-radius: 30px;
  background: #080a11;
  box-shadow: 0 34px 100px rgba(0,0,0,.46), inset 0 1px rgba(255,255,255,.035);
}
.vip-store__hero::after {
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background: linear-gradient(90deg, rgba(5,7,13,.98) 0%, rgba(10,8,18,.9) 34%, rgba(8,9,18,.46) 62%, rgba(5,6,11,.18) 100%);
}
.vip-store__hero-art { position:absolute; inset:0 0 0 auto; z-index:0; width:72%; height:100%; object-fit:cover; object-position:right center; opacity:.9; }
.vip-store__hero-glow { position:absolute; z-index:0; width:420px; height:420px; right:18%; top:-45%; border-radius:50%; background:rgba(156,70,255,.22); filter:blur(90px); pointer-events:none; }
.vip-store__hero-copy { position:relative; z-index:2; max-width:760px; align-self:center; }
.vip-store__eyebrow,.vip-store__kicker { display:inline-flex; align-items:center; gap:8px; color:#dfb9ff; font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.vip-store__hero h1 { margin:12px 0 16px; max-width:720px; color:#fff; font-size:clamp(38px,5vw,68px); line-height:.98; letter-spacing:-.055em; font-weight:900; }
.vip-store__hero h1 span { display:block; background:linear-gradient(90deg,#ffc65e,#ff7f67 42%,#db5cff 92%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.vip-store__hero-copy > p { max-width:700px; margin:0; color:#c9d0dc; font-size:14px; line-height:1.75; }
.vip-store__hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.vip-store__primary,.vip-store__ghost,.vip-store__membership-link { min-height:44px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 17px; border-radius:12px; text-decoration:none; font-size:12px; font-weight:850; cursor:pointer; }
.vip-store__primary { border:1px solid rgba(255,193,89,.42); background:linear-gradient(135deg,#ffbf55,#ff7f52); color:#1a1007; box-shadow:0 12px 34px rgba(255,128,72,.18); }
.vip-store__ghost { border:1px solid rgba(176,115,247,.34); background:rgba(18,16,31,.72); color:#f0e8ff; backdrop-filter:blur(12px); }
.vip-store__hero-proof { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:20px; color:#9eabc0; font-size:11px; }
.vip-store__hero-proof span { display:flex; align-items:center; gap:5px; }
.vip-store__membership-card { position:relative; z-index:2; align-self:end; display:grid; grid-template-columns:auto 1fr; gap:13px; padding:18px; border:1px solid rgba(255,255,255,.1); border-radius:20px; background:linear-gradient(145deg,rgba(15,19,33,.9),rgba(15,10,24,.78)); backdrop-filter:blur(18px); box-shadow:0 18px 54px rgba(0,0,0,.28); }
.vip-store__membership-orb { width:58px; height:58px; display:grid; place-items:center; border:1px solid rgba(255,193,78,.42); border-radius:18px; background:linear-gradient(145deg,rgba(255,190,73,.22),rgba(220,77,150,.16)); color:#ffd77e; font-size:19px; font-weight:950; box-shadow:inset 0 1px rgba(255,255,255,.08); }
.vip-store__membership-orb--guest { color:#d69aff; border-color:rgba(196,100,255,.34); background:rgba(116,51,174,.16); }
.vip-store__membership-card div:nth-child(2) { display:grid; align-content:center; gap:3px; min-width:0; }
.vip-store__membership-card small { color:#c4a1e8; font-size:10px; font-weight:900; letter-spacing:.09em; }
.vip-store__membership-card strong { color:#fff; font-size:16px; }
.vip-store__membership-card span { color:#91a0b5; font-size:11px; line-height:1.4; }
.vip-store__bonus,.vip-store__membership-link { grid-column:1/-1; width:100%; border:1px solid rgba(255,181,66,.38); background:rgba(255,170,48,.12); color:#ffd27b; }
.vip-store__membership-link { border-color:rgba(170,92,237,.34); background:rgba(125,55,193,.14); color:#e6c5ff; }
.vip-store__sales-banner { display:flex; align-items:center; gap:12px; padding:14px 17px; border:1px solid rgba(255,188,81,.28); border-radius:15px; background:rgba(88,57,12,.18); color:#d8c4a1; }
.vip-store__sales-banner b { color:#ffd68b; }
.vip-store__sales-banner span { font-size:12px; }
.vip-store__sales-banner--closed { border-color:rgba(255,100,127,.3); background:rgba(100,25,45,.18); }
.vip-store__sales-banner--closed b { color:#ff9aad; }
.vip-store__plans,.vip-store__how,.vip-store__orders,.vip-store__compare { display:grid; gap:16px; }
.vip-store__section-head { display:flex; align-items:end; justify-content:space-between; gap:22px; }
.vip-store__section-head h2 { margin:5px 0 0; color:#fff; font-size:clamp(24px,3vw,38px); letter-spacing:-.04em; line-height:1.05; }
.vip-store__section-head p { max-width:520px; margin:0; color:#8f9eb4; font-size:12px; line-height:1.65; text-align:right; }
.vip-store__plan-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.vip-store__plan { --accent:#9f6bff; --accent2:#d16fff; min-width:0; overflow:hidden; border:1px solid color-mix(in srgb,var(--accent) 34%,#28324a); border-radius:20px; background:linear-gradient(155deg,#0d1422,#090e18 65%,color-mix(in srgb,var(--accent) 8%,#090e18)); box-shadow:inset 0 1px rgba(255,255,255,.025),0 12px 34px rgba(0,0,0,.2); transition:.2s transform,.2s border-color,.2s box-shadow; }
.vip-store__plan:hover { transform:translateY(-3px); border-color:color-mix(in srgb,var(--accent) 60%,#28324a); box-shadow:0 18px 42px rgba(0,0,0,.28); }
.vip-store__plan--v1 { --accent:#bd704e; --accent2:#f79d72; }
.vip-store__plan--v2 { --accent:#93a6c9; --accent2:#d9e4f5; }
.vip-store__plan--v3 { --accent:#e8a928; --accent2:#ffda72; }
.vip-store__plan--v4 { --accent:#a15cf4; --accent2:#d994ff; }
.vip-store__plan--v5 { --accent:#6578f3; --accent2:#a7b1ff; }
.vip-store__plan--v6 { --accent:#f0772f; --accent2:#ffb25f; border-color:rgba(239,111,43,.5); background:radial-gradient(circle at 80% 4%,rgba(236,91,31,.24),transparent 42%),linear-gradient(155deg,#15100d,#0d0c0d 58%,#1e0e08); box-shadow:0 0 0 1px rgba(255,126,50,.08),0 18px 46px rgba(105,35,9,.2); }
.vip-store__plan--v7 { --accent:#e74c9e; --accent2:#ff8ec5; }
.vip-store__plan--v8 { --accent:#eeb82d; --accent2:#f4d87c; }
.vip-store__plan.is-current { box-shadow:0 0 0 1px var(--accent),0 0 34px color-mix(in srgb,var(--accent) 20%,transparent); }
.vip-store__plan-visual { position:relative; height:148px; overflow:hidden; background:radial-gradient(circle at 75% 20%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 58%),#080d17; }
.vip-store__plan-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,11,19,.96),rgba(7,11,19,.52) 52%,rgba(7,11,19,.1)); }
.vip-store__plan-visual img { position:absolute; right:0; top:-5%; width:65%; height:110%; object-fit:cover; opacity:.92; filter:saturate(1.06) drop-shadow(0 0 16px color-mix(in srgb,var(--accent) 22%,transparent)); }
.vip-store__level { position:absolute; z-index:2; left:16px; bottom:18px; color:var(--accent2); font-size:27px; font-weight:950; letter-spacing:-.05em; }
.vip-store__edition { position:absolute; z-index:2; left:16px; top:15px; color:#ff9a55; font-size:9px; font-weight:950; letter-spacing:.14em; }
.vip-store__current { position:absolute; z-index:2; right:11px; top:11px; padding:5px 8px; border-radius:999px; background:var(--accent); color:#090b11; font-size:9px; font-weight:950; }
.vip-store__plan-body { display:grid; gap:12px; padding:16px; }
.vip-store__plan-title { display:flex; justify-content:space-between; gap:10px; }
.vip-store__plan-title h3 { margin:0 0 2px; color:#fff; font-size:17px; }
.vip-store__plan-title span { color:#8796aa; font-size:10px; }
.vip-store__price { min-height:42px; display:flex; align-items:end; gap:6px; }
.vip-store__price strong { color:var(--accent2); font-size:22px; letter-spacing:-.03em; }
.vip-store__price small { padding-bottom:3px; color:#7f8da0; font-size:10px; }
.vip-store__price .vip-store__price-pending { font-size:14px; letter-spacing:-.01em; }
.vip-store__feature-list { list-style:none; margin:0; padding:0; display:grid; gap:8px; color:#b8c3d2; font-size:11px; line-height:1.35; }
.vip-store__feature-list li { display:flex; gap:7px; }
.vip-store__feature-list li>span { color:var(--accent2); }
.vip-store__feature-list b { color:#e9eef6; font-weight:750; }
.vip-store__plan-actions { display:grid; grid-template-columns:1fr 1.2fr; gap:8px; margin-top:3px; }
.vip-store__secondary,.vip-store__buy { min-height:39px; border-radius:10px; font-size:11px; font-weight:850; cursor:pointer; }
.vip-store__secondary { border:1px solid rgba(255,255,255,.11); background:#111827; color:#cbd5e1; }
.vip-store__buy { border:1px solid color-mix(in srgb,var(--accent) 60%,white 5%); background:linear-gradient(135deg,var(--accent2),var(--accent)); color:#080b11; }
.vip-store__buy:disabled { opacity:.42; cursor:not-allowed; filter:grayscale(.4); }
.vip-store__steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:11px; }
.vip-store__steps article { position:relative; min-height:185px; padding:17px; border:1px solid var(--vip-border); border-radius:17px; background:linear-gradient(145deg,#0d1422,#0a0f1b); }
.vip-store__steps article>b { position:absolute; right:13px; top:11px; color:rgba(195,161,255,.26); font-size:25px; }
.vip-store__steps article>span { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:rgba(151,78,235,.12); font-size:18px; }
.vip-store__steps h3 { margin:22px 0 7px; color:#fff; font-size:13px; }
.vip-store__steps p { margin:0; color:#8493a8; font-size:11px; line-height:1.55; }
.vip-store__empty { display:flex; align-items:center; gap:13px; padding:22px; border:1px dashed rgba(141,113,197,.28); border-radius:17px; background:#0a101b; }
.vip-store__empty>span { font-size:25px; color:#ac7bf5; }
.vip-store__empty strong { color:#eaf0f8; }
.vip-store__empty p { margin:4px 0 0; color:#8493a8; font-size:11px; }
.vip-store__order-list { display:grid; gap:9px; }
.vip-store__order { display:grid; grid-template-columns:1.2fr .8fr .9fr .8fr; gap:12px; padding:14px 16px; border:1px solid rgba(119,139,176,.18); border-radius:14px; background:#0a111e; }
.vip-store__order>div { display:grid; align-content:center; gap:3px; min-width:0; }
.vip-store__order small { color:#68778e; font-size:9px; font-weight:900; letter-spacing:.09em; }
.vip-store__order strong { overflow:hidden; color:#e8edf5; font-size:12px; text-overflow:ellipsis; }
.vip-store__order span { color:#8796aa; font-size:10px; }
.vip-store__status { width:max-content; padding:4px 8px; border-radius:999px; background:#1a2232; }
.vip-store__status--pending_payment { color:#ffc968!important; background:rgba(148,93,17,.2); }
.vip-store__status--under_review { color:#83c8ff!important; background:rgba(22,94,148,.2); }
.vip-store__status--approved { color:#75e3b1!important; background:rgba(24,125,81,.2); }
.vip-store__status--rejected,.vip-store__status--cancelled { color:#ff98aa!important; background:rgba(143,38,63,.2); }
.vip-store__compare-scroll { overflow:auto; border:1px solid rgba(120,140,180,.18); border-radius:18px; background:#090f1a; }
.vip-store__table { width:100%; min-width:920px; border-collapse:collapse; color:#b8c3d2; font-size:11px; }
.vip-store__table th,.vip-store__table td { padding:13px 12px; border-bottom:1px solid rgba(115,134,168,.13); text-align:center; }
.vip-store__table th:first-child { position:sticky; left:0; z-index:2; min-width:170px; background:#0c1320; text-align:left; color:#f1f4f9; }
.vip-store__table thead th { color:#d8c2ff; background:#0d1422; font-weight:900; }
.vip-store__trust { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid rgba(115,136,173,.18); border-radius:18px; background:#09101b; overflow:hidden; }
.vip-store__trust>div { display:grid; grid-template-columns:auto 1fr; gap:4px 9px; padding:17px; border-right:1px solid rgba(115,136,173,.13); }
.vip-store__trust>div:last-child { border-right:0; }
.vip-store__trust span { grid-row:1/3; font-size:19px; }
.vip-store__trust b { color:#e8edf5; font-size:11px; }
.vip-store__trust small { color:#77869c; font-size:9px; line-height:1.45; }
body.vip-drawer-open { overflow:hidden; }
.vip-drawer-shell[hidden] { display:none; }
.vip-drawer-shell { position:fixed; inset:0; z-index:11000; display:flex; justify-content:flex-end; }
.vip-drawer-shell__backdrop { position:absolute; inset:0; border:0; background:rgba(2,5,10,.72); backdrop-filter:blur(7px); }
.vip-detail-drawer,.vip-payment-drawer { position:relative; z-index:1; width:min(560px,94vw); height:100%; overflow:auto; padding:28px; border-left:1px solid rgba(162,104,232,.28); background:linear-gradient(160deg,#0d1422,#0a0e19 64%,#150c1b); box-shadow:-28px 0 80px rgba(0,0,0,.48); color:#edf2f8; animation:vipDrawerIn .22s ease-out; }
@keyframes vipDrawerIn { from { transform:translateX(100%); opacity:.72; } to { transform:translateX(0); opacity:1; } }
.vip-drawer__close { position:absolute; right:18px; top:18px; width:38px; height:38px; border:1px solid rgba(255,255,255,.1); border-radius:11px; background:#111827; color:#dfe7f2; font-size:22px; cursor:pointer; }
.vip-detail-drawer h2,.vip-payment-drawer h2 { margin:8px 48px 16px 0; color:#fff; font-size:27px; letter-spacing:-.035em; }
.vip-detail-drawer__price { margin-bottom:17px; color:#ffc86d; font-size:16px; font-weight:900; }
.vip-detail-drawer__categories { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.vip-detail-drawer__categories section { padding:13px; border:1px solid rgba(119,139,175,.17); border-radius:13px; background:#0b1220; }
.vip-detail-drawer__categories h3 { margin:0 0 8px; color:#d9b7ff; font-size:11px; }
.vip-detail-drawer__categories ul { margin:0; padding-left:17px; color:#96a5b9; font-size:10px; line-height:1.65; }
.vip-detail-drawer__buy { width:100%; margin-top:16px; }
.vip-payment-drawer__summary { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:15px; }
.vip-payment-drawer__summary>div,.vip-payment-drawer__bank>div { display:grid; gap:4px; padding:12px; border:1px solid rgba(123,145,183,.17); border-radius:12px; background:#0a1220; }
.vip-payment-drawer small { color:#728198; font-size:9px; font-weight:850; letter-spacing:.06em; }
.vip-payment-drawer strong { color:#edf2f8; font-size:12px; }
.vip-payment-drawer__bank { display:grid; gap:8px; }
.vip-payment-drawer__iban { grid-template-columns:1fr auto!important; }
.vip-payment-drawer__iban small { grid-column:1/-1; }
.vip-payment-drawer__iban strong { overflow-wrap:anywhere; color:#ffcf7c; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.05em; }
.vip-payment-drawer__iban button { border:1px solid rgba(255,191,88,.3); border-radius:9px; background:rgba(153,99,16,.16); color:#ffd17e; font-size:9px; font-weight:800; cursor:pointer; }
.vip-payment-drawer__notice { display:flex; gap:10px; margin:13px 0 17px; padding:12px; border:1px solid rgba(76,156,230,.2); border-radius:12px; background:rgba(34,91,141,.12); }
.vip-payment-drawer__notice>span { width:24px; height:24px; flex:0 0 24px; display:grid; place-items:center; border-radius:50%; background:#163d62; color:#9bd1ff; font-weight:900; }
.vip-payment-drawer__notice p { margin:0; color:#9db0c6; font-size:10px; line-height:1.55; }
.vip-payment-drawer h3 { margin:0 0 9px; color:#eaf0f8; font-size:12px; }
.vip-payment-drawer__channels { display:grid; gap:8px; }
.vip-payment-drawer__channel { display:flex; align-items:center; gap:11px; width:100%; padding:13px; border:1px solid rgba(255,255,255,.12); border-radius:13px; background:#0c1422; color:#eaf0f8; text-align:left; cursor:pointer; }
.vip-payment-drawer__channel>span { width:36px; height:36px; display:grid; place-items:center; border-radius:11px; font-size:18px; }
.vip-payment-drawer__channel div { display:grid; gap:3px; }
.vip-payment-drawer__channel strong { font-size:11px; }
.vip-payment-drawer__channel small { font-size:9px; font-weight:500; letter-spacing:0; }
.vip-payment-drawer__channel--wa>span { background:rgba(35,181,104,.16); color:#68e6a4; }
.vip-payment-drawer__channel--tg>span { background:rgba(44,143,220,.16); color:#75caff; }
.vip-payment-drawer__channel:disabled { opacity:.5; cursor:wait; }
.vip-payment-drawer__result { margin-top:11px; padding:11px; border:1px solid rgba(134,148,178,.18); border-radius:11px; background:#111827; color:#cbd5e1; font-size:10px; line-height:1.5; }
.vip-payment-drawer__result.is-success { border-color:rgba(64,190,132,.28); color:#89e5ba; background:rgba(26,108,72,.13); }
.vip-payment-drawer__result.is-error { border-color:rgba(236,83,113,.3); color:#ff9aad; background:rgba(117,31,50,.14); }
.vip-payment-drawer__fineprint { margin:13px 0 0; color:#69778b; font-size:9px; line-height:1.55; }
@media (max-width:1180px) {
  .vip-store__plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vip-store__steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .vip-store__trust { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vip-store__trust>div:nth-child(2) { border-right:0; }
  .vip-store__trust>div:nth-child(-n+2) { border-bottom:1px solid rgba(115,136,173,.13); }
}
@media (max-width:820px) {
  .vip-store { padding-block:14px 30px; gap:20px; }
  .vip-store__hero { min-height:650px; grid-template-columns:1fr; align-items:end; padding:22px; }
  .vip-store__hero-art { width:100%; height:58%; object-position:center top; }
  .vip-store__hero::after { background:linear-gradient(180deg,rgba(6,7,12,.05),rgba(6,7,12,.5) 35%,#080a11 62%,#080a11); }
  .vip-store__hero-copy { align-self:end; }
  .vip-store__hero h1 { font-size:clamp(35px,10vw,52px); }
  .vip-store__membership-card { align-self:auto; }
  .vip-store__section-head { align-items:flex-start; flex-direction:column; }
  .vip-store__section-head p { text-align:left; }
  .vip-store__steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vip-store__order { grid-template-columns:1fr 1fr; }
}
@media (max-width:600px) {
  .vip-store__plan-grid,.vip-store__steps,.vip-store__trust { grid-template-columns:1fr; }
  .vip-store__trust>div { border-right:0!important; border-bottom:1px solid rgba(115,136,173,.13); }
  .vip-store__plan-actions { grid-template-columns:1fr; }
  .vip-store__order { grid-template-columns:1fr; }
  .vip-store__hero-actions>a,.vip-store__hero-actions>button { width:100%; }
  .vip-detail-drawer,.vip-payment-drawer { width:100%; padding:22px 17px; border-left:0; }
  .vip-detail-drawer__categories { grid-template-columns:1fr; }
  .vip-payment-drawer__summary { grid-template-columns:1fr; }
}

/* VIP tier identity system — distinct visual language for VIP1..VIP8 */
.vip-store__plan { position:relative; }
.vip-store__plan-visual { height:176px; isolation:isolate; background:linear-gradient(145deg,#080d16,#0a101d 70%,color-mix(in srgb,var(--accent) 10%,#080d16)); }
.vip-store__plan-visual::before { content:""; position:absolute; inset:-35% -20% auto 34%; height:180%; background:radial-gradient(circle,color-mix(in srgb,var(--accent) 34%,transparent),transparent 58%); filter:blur(1px); opacity:.9; }
.vip-store__plan-visual::after { background:linear-gradient(100deg,rgba(5,9,16,.98) 0%,rgba(5,9,16,.78) 44%,rgba(5,9,16,.18) 78%,rgba(5,9,16,.1)); }
.vip-store__visual-grid { position:absolute; inset:0; z-index:0; opacity:.26; background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size:18px 18px; mask-image:linear-gradient(90deg,transparent 5%,#000 45%,#000); }
.vip-store__sigil { position:absolute; z-index:1; right:24px; top:22px; width:120px; height:120px; display:grid; place-items:center; border-radius:34px; transform:rotate(8deg); border:1px solid color-mix(in srgb,var(--accent2) 55%,transparent); background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.18),transparent 22%),linear-gradient(145deg,color-mix(in srgb,var(--accent2) 42%,#101624),color-mix(in srgb,var(--accent) 24%,#070b13)); box-shadow:inset 0 1px rgba(255,255,255,.12),0 18px 40px color-mix(in srgb,var(--accent) 24%,transparent),0 0 44px color-mix(in srgb,var(--accent) 15%,transparent); }
.vip-store__sigil::before,.vip-store__sigil::after { content:""; position:absolute; border:1px solid color-mix(in srgb,var(--accent2) 35%,transparent); border-radius:inherit; }
.vip-store__sigil::before { inset:10px; }
.vip-store__sigil::after { inset:22px; border-style:dashed; opacity:.55; animation:vipSigilSpin 18s linear infinite; }
.vip-store__sigil>span { position:relative; z-index:2; color:#fff; font-size:29px; font-weight:950; letter-spacing:-.08em; text-shadow:0 0 24px color-mix(in srgb,var(--accent2) 72%,transparent); transform:rotate(-8deg); }
.vip-store__sigil>i,.vip-store__sigil>b { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--accent2); box-shadow:0 0 18px var(--accent); }
.vip-store__sigil>i { left:15px; top:18px; }
.vip-store__sigil>b { right:14px; bottom:18px; }
@keyframes vipSigilSpin { to { transform:rotate(360deg); } }
.vip-store__visual-copy { position:absolute; z-index:3; left:17px; bottom:20px; display:grid; gap:3px; }
.vip-store__visual-copy .vip-store__level { position:static; color:var(--accent2); font-size:30px; line-height:1; }
.vip-store__visual-copy small { color:#9eacc0; font-size:9px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.vip-store__plan-badge { position:absolute; z-index:3; left:17px; top:17px; padding:5px 8px; border:1px solid color-mix(in srgb,var(--accent) 44%,transparent); border-radius:999px; background:rgba(5,9,16,.68); color:var(--accent2); font-size:8px; font-weight:950; letter-spacing:.12em; backdrop-filter:blur(8px); }
.vip-store__plan--v1 .vip-store__sigil { border-radius:26px; transform:rotate(5deg); }
.vip-store__plan--v2 .vip-store__sigil { border-radius:50%; transform:rotate(-5deg); }
.vip-store__plan--v3 .vip-store__sigil { clip-path:polygon(50% 0,92% 24%,92% 76%,50% 100%,8% 76%,8% 24%); border-radius:0; }
.vip-store__plan--v4 .vip-store__sigil { border-radius:50% 18% 50% 18%; }
.vip-store__plan--v5 .vip-store__sigil { clip-path:polygon(50% 0,92% 34%,76% 100%,24% 100%,8% 34%); border-radius:0; }
.vip-store__plan--v6 .vip-store__sigil { border-radius:42% 42% 18% 18%; background:radial-gradient(circle at 50% 72%,rgba(255,121,47,.36),transparent 34%),linear-gradient(145deg,#46200c,#160d09 64%,#081510); }
.vip-store__plan--v7 .vip-store__sigil { border-radius:22px 22px 48px 48px; }
.vip-store__plan--v8 .vip-store__sigil { width:128px; height:128px; border-radius:50%; border-width:2px; background:radial-gradient(circle at 50% 50%,rgba(255,239,174,.16),transparent 33%),conic-gradient(from 20deg,#3f2508,#a97412,#f5da72,#6b3f0b,#2b173d,#a97412,#3f2508); box-shadow:0 0 0 6px rgba(238,184,45,.05),0 0 52px rgba(238,184,45,.31),0 20px 55px rgba(0,0,0,.42); }
.vip-store__plan--v8 { border-color:rgba(238,184,45,.55); background:radial-gradient(circle at 88% 0,rgba(238,184,45,.13),transparent 38%),linear-gradient(155deg,#12100b,#080d17 62%,#140d1b); }
.vip-store__plan-body { gap:11px; padding:17px; }
.vip-store__plan-summary { min-height:58px; margin:0; color:#8f9eb3; font-size:10.5px; line-height:1.55; }
.vip-store__feature-list--rich { gap:7px; padding:10px 0; border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06); }
.vip-store__feature-list--rich li { align-items:flex-start; }
.vip-store__feature-list--rich li>span { flex:0 0 18px; margin-top:1px; }
.vip-store__feature-list--rich b { font-weight:700; line-height:1.45; }
.vip-store__plan-audience { display:grid; gap:4px; padding:10px 11px; border-radius:12px; border:1px solid color-mix(in srgb,var(--accent) 20%,rgba(255,255,255,.08)); background:color-mix(in srgb,var(--accent) 5%,rgba(255,255,255,.018)); }
.vip-store__plan-audience small { color:var(--accent2); font-size:8px; font-weight:950; letter-spacing:.12em; }
.vip-store__plan-audience p { margin:0; color:#8493a7; font-size:9.5px; line-height:1.45; }
.vip-detail-drawer__intro { display:grid; gap:7px; margin:-4px 0 16px; padding:14px; border:1px solid rgba(136,111,183,.22); border-radius:14px; background:linear-gradient(145deg,rgba(142,83,223,.08),rgba(255,255,255,.02)); }
.vip-detail-drawer__intro>span { color:#d8b7ff; font-size:10px; font-weight:950; letter-spacing:.12em; text-transform:uppercase; }
.vip-detail-drawer__intro>p { margin:0; color:#cbd5e1; font-size:12px; line-height:1.55; }
.vip-detail-drawer__intro>small { color:#8190a5; font-size:10px; line-height:1.55; }

@media (max-width:760px) {
  .vip-store__plan-visual { height:164px; }
  .vip-store__sigil { right:18px; width:108px; height:108px; }
  .vip-store__plan--v8 .vip-store__sigil { width:112px; height:112px; }
  .vip-store__plan-summary { min-height:0; }
}


/* Central VIP safe-token renderers. Only registry tokens are interpreted. */
[data-vip-nameplate="bronze"] .vip-nameplate,[data-vip-nameplate="bronze"].vip-nameplate{box-shadow:0 0 12px rgba(180,83,9,.18)}
[data-vip-nameplate="silver"] .vip-nameplate,[data-vip-nameplate="silver"].vip-nameplate{box-shadow:0 0 13px rgba(203,213,225,.18)}
[data-vip-nameplate="gold"] .vip-nameplate,[data-vip-nameplate="gold"].vip-nameplate{box-shadow:0 0 15px rgba(251,191,36,.2)}
[data-vip-nameplate="platinum"] .vip-nameplate,[data-vip-nameplate="platinum"].vip-nameplate{box-shadow:0 0 16px rgba(103,232,249,.2)}
[data-vip-nameplate="diamond"] .vip-nameplate,[data-vip-nameplate="diamond"].vip-nameplate{box-shadow:0 0 17px rgba(129,140,248,.22)}
[data-vip-nameplate="phoenix"] .vip-nameplate,[data-vip-nameplate="phoenix"].vip-nameplate{box-shadow:0 0 18px rgba(249,115,22,.22)}
[data-vip-nameplate="royal"] .vip-nameplate,[data-vip-nameplate="royal"].vip-nameplate{box-shadow:0 0 20px rgba(168,85,247,.25)}
[data-vip-nameplate="legend"] .vip-nameplate,[data-vip-nameplate="legend"].vip-nameplate{box-shadow:0 0 22px rgba(236,72,153,.28)}
[data-vip-gradient="basic"] .vip-display-name,[data-vip-gradient="basic"] strong{background:linear-gradient(90deg,currentColor,#fef3c7,currentColor);-webkit-background-clip:text;background-clip:text;color:transparent}
[data-vip-gradient="advanced"] .vip-display-name,[data-vip-gradient="advanced"] strong{background:linear-gradient(90deg,currentColor,#fff,#c4b5fd,currentColor);-webkit-background-clip:text;background-clip:text;color:transparent}
[data-vip-glow="soft"] .vip-display-name,[data-vip-glow="soft"] strong{text-shadow:0 0 8px rgba(255,255,255,.25)}
[data-vip-glow="advanced"] .vip-display-name,[data-vip-glow="advanced"] strong{text-shadow:0 0 12px rgba(192,132,252,.45),0 0 20px rgba(236,72,153,.2)}
.vip-avatar-frame[data-vip-frame]{position:relative}.vip-avatar-frame[data-vip-frame="phoenix"]{filter:drop-shadow(0 0 10px rgba(249,115,22,.35))}.vip-avatar-frame[data-vip-frame="legend"]{filter:drop-shadow(0 0 12px rgba(236,72,153,.4))}
.vip-custom-badge{width:28px;height:28px;object-fit:contain;vertical-align:middle;margin-left:6px;filter:drop-shadow(0 2px 5px rgba(0,0,0,.4))}


/* VIP room entrance/stage effect layers: decorative, pointer-safe, no layout movement. */
.vip-entrance-layer,.vip-stage-layer{position:fixed;inset:0;z-index:2147482500;pointer-events:none;display:grid;place-items:center;overflow:hidden;animation:vipEffectLayerOut 2.55s ease both}
.vip-entrance-layer::before,.vip-stage-layer::before{content:"";position:absolute;width:min(70vw,720px);aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.2);box-shadow:0 0 80px rgba(168,85,247,.22);animation:vipEffectPulse 2.2s cubic-bezier(.2,.8,.2,1) both}
.vip-entrance-layer>span,.vip-stage-layer>span{position:relative;padding:8px 14px;border-radius:999px;background:rgba(6,9,17,.72);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:12px;font-weight:950;letter-spacing:.14em;box-shadow:0 0 30px rgba(168,85,247,.24)}
.vip-entrance-layer[data-vip-effect="bronze-fade"]::before{border-color:rgba(180,83,9,.55);box-shadow:0 0 80px rgba(180,83,9,.28)}
.vip-entrance-layer[data-vip-effect="silver-sparkle"]::before{border-color:rgba(226,232,240,.7);box-shadow:0 0 90px rgba(203,213,225,.3)}
.vip-entrance-layer[data-vip-effect="gold-flare"]::before,.vip-stage-layer[data-vip-effect="gold-highlight"]::before{border-color:rgba(251,191,36,.72);box-shadow:0 0 95px rgba(251,191,36,.34)}
.vip-entrance-layer[data-vip-effect="platinum-ring"]::before,.vip-stage-layer[data-vip-effect="platinum-spotlight"]::before{border-color:rgba(103,232,249,.72);box-shadow:0 0 100px rgba(103,232,249,.31)}
.vip-entrance-layer[data-vip-effect="diamond-shatter"]::before,.vip-stage-layer[data-vip-effect="diamond-laser"]::before{border-radius:20%;transform:rotate(45deg);border-color:rgba(129,140,248,.8);box-shadow:0 0 105px rgba(129,140,248,.35)}
.vip-entrance-layer[data-vip-effect="phoenix-fireworks"]::before,.vip-stage-layer[data-vip-effect="phoenix-pyro"]::before{border-color:rgba(249,115,22,.82);box-shadow:0 0 50px rgba(249,115,22,.48),0 0 130px rgba(239,68,68,.25)}
.vip-entrance-layer[data-vip-effect="royal-entry"]::before,.vip-stage-layer[data-vip-effect="royal-neon-storm"]::before{border-color:rgba(168,85,247,.82);box-shadow:0 0 55px rgba(168,85,247,.52),0 0 140px rgba(59,130,246,.2)}
.vip-entrance-layer[data-vip-effect="legend-throne"]::before,.vip-stage-layer[data-vip-effect="legend-galaxy-aura"]::before{border-color:rgba(236,72,153,.85);box-shadow:0 0 55px rgba(236,72,153,.5),0 0 150px rgba(139,92,246,.3)}
@keyframes vipEffectPulse{0%{opacity:0;transform:scale(.2) rotate(-8deg)}35%{opacity:1}100%{opacity:0;transform:scale(1.18) rotate(8deg)}}
@keyframes vipEffectLayerOut{0%,72%{opacity:1}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.vip-entrance-layer,.vip-stage-layer,.vip-entrance-layer::before,.vip-stage-layer::before{animation:none!important}.vip-entrance-layer,.vip-stage-layer{opacity:.9}}

/* Complete safe-token VIP identity palette. Tokens come only from VipCapabilityRegistry. */
[data-vip-color="bronze"] .vip-display-name,[data-vip-color="bronze"] .dm-msg-item strong,[data-vip-color="bronze"].dm-msg-item strong{color:#d58a61!important}
[data-vip-color="silver"] .vip-display-name,[data-vip-color="silver"] .dm-msg-item strong,[data-vip-color="silver"].dm-msg-item strong{color:#e2e8f0!important}
[data-vip-color="gold"] .vip-display-name,[data-vip-color="gold"] .dm-msg-item strong,[data-vip-color="gold"].dm-msg-item strong{color:#fbbf24!important}
[data-vip-color="platinum"] .vip-display-name,[data-vip-color="platinum"] .dm-msg-item strong,[data-vip-color="platinum"].dm-msg-item strong{color:#67e8f9!important}
[data-vip-color="diamond"] .vip-display-name,[data-vip-color="diamond"] .dm-msg-item strong,[data-vip-color="diamond"].dm-msg-item strong{color:#a5b4fc!important}
[data-vip-color="phoenix"] .vip-display-name,[data-vip-color="phoenix"] .dm-msg-item strong,[data-vip-color="phoenix"].dm-msg-item strong{color:#fb923c!important}
[data-vip-color="royal"] .vip-display-name,[data-vip-color="royal"] .dm-msg-item strong,[data-vip-color="royal"].dm-msg-item strong{color:#c084fc!important}
[data-vip-color="legend"] .vip-display-name,[data-vip-color="legend"] .dm-msg-item strong,[data-vip-color="legend"].dm-msg-item strong{color:#f472b6!important}

.vip-avatar-frame[data-vip-frame]{border-radius:50%;isolation:isolate;transition:filter .2s ease,box-shadow .2s ease}
.vip-avatar-frame[data-vip-frame="bronze"]{box-shadow:0 0 0 2px rgba(213,138,97,.72),0 0 12px rgba(180,83,9,.16)}
.vip-avatar-frame[data-vip-frame="silver"]{box-shadow:0 0 0 2px rgba(226,232,240,.78),0 0 14px rgba(203,213,225,.22)}
.vip-avatar-frame[data-vip-frame="gold"]{box-shadow:0 0 0 2px rgba(251,191,36,.82),0 0 16px rgba(251,191,36,.24)}
.vip-avatar-frame[data-vip-frame="platinum"]{box-shadow:0 0 0 2px rgba(103,232,249,.82),0 0 17px rgba(103,232,249,.25)}
.vip-avatar-frame[data-vip-frame="diamond"]{box-shadow:0 0 0 2px rgba(165,180,252,.86),0 0 19px rgba(129,140,248,.3)}
.vip-avatar-frame[data-vip-frame="phoenix"]{box-shadow:0 0 0 2px rgba(251,146,60,.88),0 0 21px rgba(249,115,22,.34);filter:drop-shadow(0 0 10px rgba(249,115,22,.2))}
.vip-avatar-frame[data-vip-frame="royal"]{box-shadow:0 0 0 2px rgba(192,132,252,.9),0 0 22px rgba(168,85,247,.36)}
.vip-avatar-frame[data-vip-frame="legend"]{box-shadow:0 0 0 2px rgba(244,114,182,.92),0 0 24px rgba(236,72,153,.4),0 0 38px rgba(139,92,246,.18);filter:drop-shadow(0 0 10px rgba(236,72,153,.18))}

.vip-profile-decoration[data-vip-decoration="bronze"]{box-shadow:inset 0 0 0 1px rgba(180,83,9,.12)}
.vip-profile-decoration[data-vip-decoration="silver"]{box-shadow:inset 0 0 0 1px rgba(226,232,240,.14)}
.vip-profile-decoration[data-vip-decoration="gold"]{box-shadow:inset 0 0 0 1px rgba(251,191,36,.16),inset 0 32px 70px rgba(251,191,36,.025)}
.vip-profile-decoration[data-vip-decoration="platinum"]{box-shadow:inset 0 0 0 1px rgba(103,232,249,.17),inset 0 32px 76px rgba(103,232,249,.03)}
.vip-profile-decoration[data-vip-decoration="diamond"]{box-shadow:inset 0 0 0 1px rgba(129,140,248,.2),inset 0 36px 82px rgba(129,140,248,.04)}
.vip-profile-decoration[data-vip-decoration="phoenix"]{box-shadow:inset 0 0 0 1px rgba(249,115,22,.22),inset 0 42px 90px rgba(249,115,22,.05)}
.vip-profile-decoration[data-vip-decoration="royal"]{box-shadow:inset 0 0 0 1px rgba(168,85,247,.24),inset 0 44px 96px rgba(168,85,247,.055)}
.vip-profile-decoration[data-vip-decoration="legend"]{box-shadow:inset 0 0 0 1px rgba(236,72,153,.26),inset 0 48px 110px rgba(139,92,246,.07)}

.live-room-wrapper[data-vip-room-decoration="platinum"]{box-shadow:inset 0 0 0 1px rgba(103,232,249,.08)}
.live-room-wrapper[data-vip-room-decoration="diamond"]{box-shadow:inset 0 0 0 1px rgba(129,140,248,.1),inset 0 40px 100px rgba(129,140,248,.025)}
.live-room-wrapper[data-vip-room-decoration="phoenix"]{box-shadow:inset 0 0 0 1px rgba(249,115,22,.11),inset 0 45px 110px rgba(249,115,22,.032)}
.live-room-wrapper[data-vip-room-decoration="royal"]{box-shadow:inset 0 0 0 1px rgba(168,85,247,.12),inset 0 50px 120px rgba(168,85,247,.035)}
.live-room-wrapper[data-vip-room-decoration="legend"]{box-shadow:inset 0 0 0 1px rgba(236,72,153,.13),inset 0 55px 130px rgba(139,92,246,.04)}
.stage-rx-btn.is-vip-reaction{position:relative;border-color:rgba(192,132,252,.42);box-shadow:inset 0 0 12px rgba(168,85,247,.08)}
.stage-rx-btn.is-vip-reaction::after{content:"VIP";position:absolute;right:2px;bottom:1px;font-size:6px;font-weight:950;letter-spacing:.04em;color:#d8b4fe}
[data-vip-priority]:not([data-vip-priority="0"]){border-color:rgba(192,132,252,.22)}
