﻿:root{
  --bg:#050405;
  --bg2:#0f0b0d;
  --panel:#171113;
  --panel-soft:#211619;
  --panel-ink:#100c0e;
  --gold:#f3d39a;
  --gold-2:#c99647;
  --gold-3:#8e5f24;
  --ivory:#fff7e9;
  --muted:#b8a894;
  --muted-2:#8d7c69;
  --line:rgba(255,226,180,.12);
  --line-strong:rgba(255,220,155,.30);
  --win:#7bf2ba;
  --lose:#ff7e8e;
  --accent:#d75f2f;
  --shadow-xl:0 50px 130px rgba(0,0,0,.68);
  --shadow-lg:0 26px 60px rgba(0,0,0,.44);
  --shadow-md:0 14px 30px rgba(0,0,0,.32);
  --radius-xl:30px;
  --radius-lg:22px;
  --radius-md:16px;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{
  font-family:Inter,Segoe UI,Arial,"PingFang SC","Microsoft YaHei",sans-serif;
  color:var(--ivory);
  background:
    radial-gradient(circle at 15% 12%, rgba(255,215,145,.10), transparent 28%),
    radial-gradient(circle at 85% 0%, rgba(180,95,46,.10), transparent 20%),
    radial-gradient(circle at 50% 120%, rgba(255,214,144,.09), transparent 30%),
    linear-gradient(145deg,#030202 0%,#0d0909 38%,#1a1210 65%,#040303 100%);
  overflow:hidden;
}
body::before{
  content:""; position:fixed; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(circle at 50% 50%, transparent 0 58%, rgba(0,0,0,.55) 100%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.012) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, rgba(255,245,225,.05), transparent 12%);
  mix-blend-mode:overlay; opacity:.72;
}
button,input{font:inherit}
button{cursor:pointer}
.nowrap{white-space:nowrap}
#app{position:relative;z-index:1;height:100%;display:grid;grid-template-rows:84px 1fr 66px;overflow:hidden}
.topbar{
  position:relative;
  z-index:320;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;
  padding:16px 24px 14px;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(22,16,18,.92),rgba(11,8,9,.84));
  box-shadow:0 18px 35px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,248,230,.04);
}
.logo-wrap{display:flex;align-items:center;gap:14px}
.logo-emblem{
  width:52px;height:52px;border-radius:18px;position:relative;
  background:linear-gradient(145deg,#fff0cf 0%,#e8be76 23%,#9a6728 56%,#fff0cc 100%);
  box-shadow:0 16px 28px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,251,238,.74), inset 0 -5px 0 rgba(100,64,18,.44);
}
.logo-emblem::before{content:"V"; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:22px; font-weight:1000; color:#2c1707; text-shadow:0 1px 0 rgba(255,255,255,.45)}
.logo-title{font-size:28px;font-weight:1000;letter-spacing:1.6px}
.logo-sub{font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--muted)}
.main-nav{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.nav-btn{
  min-width:112px;height:44px;padding:0 16px;border-radius:14px;border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(63,42,25,.40),rgba(17,12,10,.86));
  color:#f8eedf;font-weight:900;letter-spacing:.3px;
  box-shadow:inset 0 1px 0 rgba(255,250,235,.05), var(--shadow-md); transition:.18s ease;
}
.nav-btn.active,.nav-btn:hover{border-color:var(--line-strong); background:linear-gradient(180deg,rgba(156,104,42,.48),rgba(24,15,10,.92)); transform:translateY(-1px)}
.top-meta{display:flex;gap:12px;align-items:center}
.meta-pill{
  min-height:44px;padding:0 16px;display:flex;align-items:center;gap:10px;border-radius:999px;border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(39,28,20,.78),rgba(13,9,8,.92)); box-shadow:var(--shadow-md)
}
.meta-pill b{color:#fff2d5}
.auth-menu-wrap{
  position:relative;
  display:flex;
  flex:0 0 auto;
  z-index:330;
}
.top-action-pill{
  color:var(--ivory);
  cursor:pointer;
}
.top-action-pill.active{
  border-color:var(--line-strong);
  background:linear-gradient(180deg,rgba(118,84,44,.66),rgba(18,12,9,.94));
}
.top-action-pill:hover{
  transform:translateY(-1px);
  border-color:var(--line-strong);
}
.auth-dropdown{
  position:fixed;
  left:var(--auth-menu-left,auto);
  right:auto;
  top:var(--auth-menu-top,72px);
  z-index:1000;
  pointer-events:auto;
  width:var(--auth-menu-width,126px);
  min-width:112px;
  max-width:180px;
  padding:6px;
  border-radius:13px;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,transparent 78%);
  background:
    radial-gradient(circle at 80% 0,color-mix(in srgb,var(--theme-a,#d8bb8b) 12%,transparent 88%),transparent 34%),
    linear-gradient(180deg,rgba(33,25,19,.98),rgba(8,6,5,.995));
  box-shadow:0 18px 42px rgba(0,0,0,.54),inset 0 1px 0 rgba(255,248,230,.06);
}
.auth-dropdown button{
  width:100%;
  min-height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 9px;
  border:0;
  border-radius:11px;
  background:transparent;
  color:#f1e3cf;
  font-size:13px;
  font-weight:900;
  white-space:nowrap;
  word-break:keep-all;
  cursor:pointer;
}
.auth-dropdown button .ico{
  flex:0 0 auto;
}
.auth-dropdown button:hover{
  background:rgba(255,226,180,.08);
  color:#fff6e6;
}
.viewport{position:relative;overflow:hidden}
.view{display:none;height:100%;overflow:auto;padding:28px 30px 24px}
.view.active{display:block}
.view::-webkit-scrollbar{width:10px;height:10px}.view::-webkit-scrollbar-thumb{background:rgba(255,220,160,.16);border-radius:999px}
.screen-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}
.screen-title{margin:0;font-size:44px;line-height:1.02;font-weight:1000;letter-spacing:.5px}
.screen-desc{margin-top:10px;max-width:780px;color:var(--muted);line-height:1.7}
.action-row{display:flex;gap:10px;flex-wrap:wrap}
.btn{
  min-height:48px;padding:0 20px;border-radius:16px;border:1px solid transparent;font-weight:1000;letter-spacing:.2px;transition:.18s ease;
  box-shadow:0 16px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,248,230,.18)
}
.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}
.btn-primary{background:linear-gradient(180deg,#fff1cc,#d6a65a 38%,#915f24 100%);color:#291707;border-color:rgba(255,238,190,.42)}
.btn-secondary{background:linear-gradient(180deg,rgba(66,46,31,.94),rgba(18,12,10,.96));border-color:var(--line);color:#fff3dd}
.btn-danger{background:linear-gradient(180deg,#ff93a2,#d54058 60%,#7d1f31 100%);color:#fff}
.btn-ghost{background:rgba(255,255,255,.03);border-color:var(--line);color:#f7ead5}
.hero-layout{display:grid;grid-template-columns:1.2fr .85fr;gap:22px}
.card{
  position:relative;overflow:hidden;border-radius:var(--radius-xl);border:1px solid var(--line);
  background:
    radial-gradient(circle at 88% 14%, rgba(255,214,145,.06), transparent 22%),
    linear-gradient(180deg, rgba(37,25,18,.96), rgba(10,7,6,.98));
  box-shadow:var(--shadow-xl), inset 0 1px 0 rgba(255,248,230,.04), inset 0 -22px 26px rgba(0,0,0,.16);
}
.card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,246,227,.04),transparent 16%,transparent 82%,rgba(0,0,0,.18))}
.card-pad{padding:26px}
.hero-main{
  min-height:540px;display:flex;flex-direction:column;justify-content:flex-end;
  background:
    radial-gradient(circle at 70% 28%, rgba(255,214,145,.12), transparent 20%),
    radial-gradient(circle at 24% 20%, rgba(214,96,56,.10), transparent 18%),
    linear-gradient(180deg, rgba(27,18,13,.45), rgba(11,7,6,.24)),
    linear-gradient(180deg, rgba(39,25,18,.96), rgba(8,5,4,.98));
}
.hero-ribbon{display:inline-flex;align-items:center;gap:9px;padding:7px 13px;border-radius:999px;border:1px solid rgba(255,220,155,.18);background:rgba(255,223,168,.08);width:max-content;color:#ffeab8;font-size:12px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.hero-main h2{font-size:54px;line-height:.98;margin:16px 0 14px;max-width:760px}
.hero-main p{color:#d5c6b1;font-size:15px;line-height:1.8;max-width:700px}
.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
.stat-shell{padding:15px 16px;border-radius:18px;border:1px solid rgba(255,226,180,.10);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));box-shadow:inset 0 1px 0 rgba(255,248,230,.04)}
.stat-shell span{font-size:12px;color:var(--muted);font-weight:800}.stat-shell strong{display:block;font-size:28px;margin-top:7px;color:#fff6e6}
.hero-side{display:grid;gap:18px}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.feature{min-height:170px}
.kicker{font-size:11px;letter-spacing:2.2px;color:#f0cf89;text-transform:uppercase;font-weight:1000}
.card h3{margin:10px 0 8px;font-size:26px}.card p{margin:0;color:var(--muted);line-height:1.7;font-size:14px}
.setup-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:22px}
.mode-stack{display:grid;gap:16px}.mode-card,.room-card{cursor:pointer;transition:.18s ease;transform-style:preserve-3d}
.mode-card:hover,.room-card:hover{transform:translateY(-4px) rotateX(1.2deg);border-color:var(--line-strong);box-shadow:0 38px 84px rgba(0,0,0,.42), 0 0 26px rgba(255,214,145,.06)}
.mode-card.selected,.room-card.selected{outline:2px solid rgba(255,226,180,.28)}
.mode-card .card-pad{padding:20px 22px}.room-card .card-pad{padding:20px 20px 18px}
.mode-foot{margin-top:14px;display:flex;justify-content:space-between;align-items:center}
.mode-badge,.room-badge,.title-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;border:1px solid rgba(255,220,155,.18);background:rgba(255,227,176,.07);color:#ffeab6;font-size:12px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}
.notice-banner{padding:14px 16px;border-radius:18px;border:1px solid rgba(255,218,145,.14);background:linear-gradient(90deg,rgba(144,93,34,.24),rgba(39,24,17,.24));color:#f0e1cb;line-height:1.7;margin-bottom:16px}
.rooms-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.room-meta{display:grid;gap:8px;margin-top:14px}.room-line{display:flex;justify-content:space-between;gap:12px;font-size:13px}.room-line label{color:var(--muted)}.room-line strong{color:#fff2d5}
.locked{opacity:.58;filter:saturate(.75)}
.profile-grid{display:grid;grid-template-columns:380px 1fr;gap:22px}
.info-stack{display:grid;gap:18px}.identity-card .card-pad{padding:24px}.big-name{font-size:34px;font-weight:1000;margin:8px 0 0}.input-row{display:flex;gap:10px;margin-top:16px}
.input{
  min-height:48px;border-radius:16px;border:1px solid rgba(255,220,155,.18);background:linear-gradient(180deg,#0e0a09,#060404);color:#fff4df;padding:0 14px;outline:none;box-shadow:inset 0 2px 12px rgba(0,0,0,.34)
}
.input.flex{flex:1}
.progress-card{padding:16px 0 0}.progress-wrap{height:10px;border-radius:999px;background:rgba(255,255,255,.05);overflow:hidden}.progress-bar{height:100%;width:0;background:linear-gradient(90deg,#8f6025,#d4a761,#fff0ca);box-shadow:0 0 18px rgba(255,214,145,.28)}
.profile-stat-grid{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.identity-card .profile-stat-grid .stat-shell{min-height:76px;padding:11px 12px;border-radius:14px}
.identity-card .profile-stat-grid .stat-shell:first-child{grid-column:1/-1}
.identity-card .profile-stat-grid .stat-shell span{font-size:11px}
.identity-card .profile-stat-grid .stat-shell strong{font-size:20px;margin-top:5px;line-height:1.15;word-break:break-word}
.profile-progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.identity-card .progress-card{padding:12px;border-radius:14px;border:1px solid rgba(255,226,180,.08);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015))}
.identity-card .progress-card .label{min-height:34px;font-size:12px;line-height:1.45;color:var(--muted)}
.identity-card .progress-card .progress-wrap{height:8px;margin-top:8px}
.history-list{display:grid;gap:12px}.history-item{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,226,180,.08);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018))}
.history-title{font-weight:900}.history-sub{font-size:13px;color:var(--muted);margin-top:5px}.history-value{text-align:right;font-weight:1000}.history-net{font-size:13px;margin-top:5px}
.records-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.record-panel .card-pad{padding:24px}
.record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.record-head h3{margin:8px 0 0}
.record-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}
.history-item.empty{justify-content:flex-start;min-height:86px;align-items:center}
.leaderboard-grid{display:grid;grid-template-columns:340px 1fr;gap:22px}
.podium-stack{display:grid;gap:16px}.podium-card{min-height:156px}.podium-rank{font-size:56px;font-weight:1000;color:#ffefc3;line-height:1}.podium-name{font-size:22px;font-weight:900;margin-top:12px}.podium-amount{font-size:28px;font-weight:1000;margin-top:10px}
.table-card{padding:14px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:16px;border-bottom:1px solid rgba(255,226,180,.08);text-align:left}th{font-size:12px;color:#f0cf89;letter-spacing:1.2px;text-transform:uppercase;background:rgba(255,214,145,.04)}tr.me{background:linear-gradient(90deg,rgba(255,214,145,.14),rgba(125,76,25,.06))}
.leaderboard-table{table-layout:fixed;min-width:920px}
.leaderboard-table .rank-col{width:56px}
.leaderboard-table .player-col{width:17%}
.leaderboard-table .region-col{width:15%}
.leaderboard-table .title-col{width:18%}
.leaderboard-table .score-col,
.leaderboard-table .asset-col,
.leaderboard-table .high-col{width:16%}
.leaderboard-table th:nth-child(5),
.leaderboard-table th:nth-child(6),
.leaderboard-table th:nth-child(7),
.leaderboard-table td:nth-child(5),
.leaderboard-table td:nth-child(6),
.leaderboard-table td:nth-child(7){text-align:right}
.leaderboard-table th,
.leaderboard-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.achievement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.achievement-card{min-height:170px;opacity:.56}.achievement-card.done{opacity:1;border-color:rgba(255,226,180,.22);box-shadow:0 28px 58px rgba(0,0,0,.30),0 0 24px rgba(255,214,145,.04)}.achievement-icon{font-size:28px}
.game-view{padding:18px 22px 14px}
.table-layout{height:100%;display:grid;grid-template-columns:260px 1fr 260px;gap:18px}
.money-plaque{padding:18px;border-radius:30px;border:1px solid rgba(255,226,180,.10);background:linear-gradient(180deg,rgba(32,22,16,.95),rgba(10,7,6,.98));box-shadow:var(--shadow-lg), inset 0 1px 0 rgba(255,248,230,.04);position:relative;overflow:hidden}
.money-plaque::before{content:"";position:absolute;inset:12px;border-radius:22px;border:1px solid rgba(255,226,180,.08)}
.plaque-title{position:relative;font-size:12px;letter-spacing:2px;color:#f0cf89;text-transform:uppercase;font-weight:1000;margin-bottom:14px;text-align:center}
.money-list{position:relative;display:grid;gap:7px}.money-pill{height:33px;border-radius:999px;border:1px solid rgba(255,226,180,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:950;color:#fff2d4}.money-pill.high{color:#fff0b2}.money-pill.gone{opacity:.18;filter:grayscale(1);text-decoration:line-through}
.stage-shell{display:grid;grid-template-rows:auto auto auto 1fr auto auto;gap:14px;height:100%;min-height:0}
.stage-head,.stage-status,.ai-banner,.announcer,.control-deck{border-radius:20px;border:1px solid rgba(255,226,180,.10);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));box-shadow:inset 0 1px 0 rgba(255,248,230,.04)}
.stage-head{padding:12px 16px;display:flex;justify-content:space-between;align-items:center}.stage-live{display:flex;align-items:center;gap:10px;font-weight:1000;color:#ffe8b0}.live-dot{width:10px;height:10px;border-radius:999px;background:#ff6775;box-shadow:0 0 12px rgba(255,103,117,.7)}
.stage-status{padding:9px;display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.status-chip{padding:11px 10px;border-radius:15px;background:rgba(255,255,255,.04);text-align:center}.status-chip label{display:block;font-size:11px;color:var(--muted);font-weight:800}.status-chip strong{display:block;margin-top:6px}
.ai-banner{display:none;padding:13px 16px;border-color:rgba(255,220,155,.18);background:linear-gradient(90deg,rgba(136,90,35,.22),rgba(48,31,20,.22))}.ai-banner.show{display:block}
.case-stage{
  position:relative;min-height:0;overflow:auto;padding:26px;border-radius:30px;border:1px solid rgba(255,226,180,.08);
  background:
    radial-gradient(circle at 50% 0%, rgba(255,214,145,.10), transparent 24%),
    radial-gradient(circle at 50% 66%, rgba(115,64,28,.18), transparent 40%),
    linear-gradient(180deg,rgba(14,10,8,.74),rgba(6,4,3,.92));
  box-shadow:var(--shadow-lg), inset 0 1px 0 rgba(255,248,230,.05);
}
.case-stage::before{content:"";position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);width:74%;height:42%;border-radius:999px;background:radial-gradient(circle,rgba(255,214,145,.18),rgba(133,77,33,.08) 48%,transparent 70%);filter:blur(4px)}
.case-grid{position:relative;display:grid;grid-template-columns:repeat(7,98px);gap:18px;justify-content:center;padding:36px 0 20px;perspective:1400px}
.case-btn{position:relative;height:70px;border:0;background:transparent;transform-style:preserve-3d;filter:drop-shadow(0 18px 14px rgba(0,0,0,.30));transition:.18s ease}.case-btn:hover:not([disabled]){transform:translateY(-7px) scale(1.04) rotateX(4deg)}.case-btn[disabled]{cursor:not-allowed}
.case-shell{
  position:absolute;inset:0;border-radius:18px;border:1px solid rgba(255,235,192,.85);
  background:linear-gradient(145deg,#fff8e4 0%,#ebc880 12%,#5a3919 31%,#17100b 52%,#aa7532 70%,#fff2d2 100%);
  box-shadow:0 18px 28px rgba(0,0,0,.48), inset 0 2px 0 rgba(255,249,235,.72), inset 0 -6px 0 rgba(0,0,0,.50), 0 0 20px rgba(255,214,145,.08)
}
.case-shell::before{content:"";position:absolute;left:22px;right:22px;top:-8px;height:18px;border:4px solid rgba(255,235,192,.82);border-bottom:0;border-radius:16px 16px 0 0}
.case-shell::after{content:"";position:absolute;left:50%;top:31px;transform:translateX(-50%);width:18px;height:14px;border-radius:4px;background:linear-gradient(#fff5d9,#94682f);box-shadow:0 0 10px rgba(0,0,0,.44)}
.case-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2;font-size:22px;font-weight:1000;color:#291708;text-shadow:0 1px 0 rgba(255,248,228,.6)}
.case-btn.player .case-shell{background:linear-gradient(145deg,#fffce9,#ffe19d 25%,#c8862d 60%,#fff4d4);box-shadow:0 0 34px rgba(255,214,145,.32),0 18px 28px rgba(0,0,0,.46)}
.case-btn.ai .case-shell{outline:2px solid rgba(255,215,145,.74);box-shadow:0 0 30px rgba(255,214,145,.16),0 18px 28px rgba(0,0,0,.46)}
.case-btn.opened .case-shell{background:linear-gradient(180deg,#1a130f,#090705);border-color:rgba(255,226,180,.16)}
.case-btn.opened .case-label{font-size:13px;color:#ffe6b6;text-shadow:none;line-height:1.15;text-align:center;padding:4px}.case-btn.good .case-label{color:#aaf8cc}.case-btn.bad .case-label{color:#ff9fb1}
.case-btn.opening{animation:unlock .95s ease}
@keyframes unlock{0%,100%{transform:translateY(0) rotate(0)}20%{transform:translateY(-3px) rotate(-1.2deg)}45%{transform:translateY(0) rotate(1deg)}70%{transform:translateY(-4px) rotate(-.7deg)}}
.announcer{padding:16px 18px;line-height:1.65;color:#f0dfc8;min-height:82px}
.control-deck{padding:12px;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.footerbar{
  display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 24px;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(13,9,8,.84),rgba(20,13,10,.92))
}
.footer-help{font-size:13px;color:var(--muted)}.footer-actions{display:flex;gap:10px}
.foot-btn{height:40px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(60,42,26,.60),rgba(13,9,8,.92));color:#f4e4cd;font-weight:850}
.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(5,4,4,.82);backdrop-filter:blur(16px);z-index:40}.hidden{display:none!important}
.modal-card{width:min(780px,100%);padding:26px 24px 24px;border-radius:32px;border:1px solid rgba(255,226,180,.16);background:
  radial-gradient(circle at 50% 0%, rgba(255,214,145,.10), transparent 24%),
  linear-gradient(180deg, rgba(43,29,19,.99), rgba(10,7,6,.995));box-shadow:0 70px 170px rgba(0,0,0,.82), inset 0 1px 0 rgba(255,248,230,.06);text-align:center;position:relative;overflow:hidden}
.modal-title{font-size:34px;font-weight:1000}.offer-amount{font-size:62px;font-weight:1000;margin:16px 0;color:#fff8ea;text-shadow:0 0 24px rgba(255,214,145,.24)}
.modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.modal-stat{padding:13px;border-radius:16px;border:1px solid rgba(255,226,180,.08);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018))}.modal-stat label{display:block;font-size:12px;color:var(--muted)}.modal-stat strong{display:block;margin-top:6px}
.modal-copy{color:var(--muted);line-height:1.7;max-width:680px;margin:0 auto 10px}
.modal-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.modal-icon-close{
  position:absolute;
  right:18px;
  top:18px;
  z-index:3;
  width:38px;
  height:38px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.16);
  background:linear-gradient(180deg,rgba(60,42,26,.72),rgba(13,9,8,.96));
  color:#f4e4cd;
  font-weight:1000;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 12px 24px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,248,230,.06);
}
.modal-icon-close .ico{font-size:14px}
.result-list{display:grid;gap:8px;margin:14px 0;text-align:left;max-height:340px;overflow:auto}.result-row{display:flex;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:16px;border:1px solid rgba(255,226,180,.08);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018))}.result-row b{color:#fff2d2}
.toast-wrap{position:fixed;right:22px;top:96px;z-index:50;width:min(360px,calc(100vw - 44px));display:grid;gap:8px}.toast{padding:13px 14px;border-radius:18px;border:1px solid rgba(255,226,180,.16);background:linear-gradient(180deg,rgba(42,29,20,.98),rgba(11,8,6,.99));box-shadow:var(--shadow-lg);animation:toastIn .32s ease both}.toast strong{display:block}.toast p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}@keyframes toastIn{from{transform:translateX(30px);opacity:0}to{transform:translateX(0);opacity:1}}
@media(max-width:1320px){
  body{overflow:auto}#app{height:auto;min-height:100vh;grid-template-rows:84px auto 66px}.hero-layout,.setup-grid,.profile-grid,.leaderboard-grid,.records-grid,.table-layout{grid-template-columns:1fr}.rooms-grid,.achievement-grid{grid-template-columns:repeat(2,1fr)}.money-plaque{display:none}.case-grid{grid-template-columns:repeat(6,92px)}
}
@media(max-width:760px){
  .topbar{grid-template-columns:1fr;gap:10px;height:auto}.main-nav{justify-content:flex-start}.top-meta{justify-content:flex-start;flex-wrap:wrap}.view{padding:18px}.screen-title{font-size:34px}.hero-main h2{font-size:38px}.hero-stats,.feature-grid,.rooms-grid,.achievement-grid,.record-stats{grid-template-columns:1fr}.record-head{display:grid}.stage-status{grid-template-columns:repeat(2,1fr)}.case-grid{grid-template-columns:repeat(4,76px);gap:13px}.case-btn{height:60px}.case-label{font-size:18px}.modal-grid{grid-template-columns:1fr}.footerbar{display:block;height:auto;padding:12px 18px}.footer-actions{margin-top:10px;flex-wrap:wrap}
}

:root{--bg:#070605;--bg2:#0e0b0a;--panel:#161210;--panel-soft:#1c1714;--panel-ink:#0f0c0a;--gold:#d8bb8b;--gold-2:#b38b52;--gold-3:#765630;--ivory:#f3ecdf;--muted:#b3a28c;--muted-2:#8b7a65;--line:rgba(219,192,146,.12);--line-strong:rgba(219,192,146,.26);--win:#7ad4a7;--lose:#f08f99;--accent:#b06e37;--shadow-xl:0 42px 110px rgba(0,0,0,.60);--shadow-lg:0 24px 54px rgba(0,0,0,.40);--shadow-md:0 12px 26px rgba(0,0,0,.28)}
body{color:var(--ivory);background:radial-gradient(circle at 18% 10%, rgba(187,145,84,.10), transparent 24%),radial-gradient(circle at 82% 8%, rgba(88,61,31,.10), transparent 20%),radial-gradient(circle at 50% 110%, rgba(160,112,56,.09), transparent 28%),linear-gradient(145deg,#050404 0%,#0b0908 34%,#15100d 66%,#060505 100%)}
body::before{background:radial-gradient(circle at 50% 50%, transparent 0 60%, rgba(0,0,0,.52) 100%),repeating-linear-gradient(0deg, rgba(255,255,255,.01) 0 1px, transparent 1px 5px),linear-gradient(180deg, rgba(255,248,234,.04), transparent 12%);opacity:.6}
.topbar{padding:16px 24px 14px;background:linear-gradient(180deg,rgba(28,22,18,.94),rgba(11,9,8,.90));box-shadow:0 16px 34px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,247,231,.04)}
.logo-emblem{background:linear-gradient(145deg,#f5e2bf 0%,#d4b07b 24%,#886235 58%,#f0debb 100%);box-shadow:0 14px 24px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,251,241,.72), inset 0 -5px 0 rgba(88,61,31,.36)}
.logo-title{letter-spacing:1.2px}
.logo-sub{color:var(--muted-2)}
.main-nav{gap:12px}
.nav-btn{min-width:108px;height:46px;padding:0 14px;border-radius:14px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(55,41,29,.54),rgba(16,12,10,.92));color:#f2eadc;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:inset 0 1px 0 rgba(255,248,230,.04), 0 10px 22px rgba(0,0,0,.24)}
.nav-btn .ico{font-size:13px;opacity:.88;display:inline-block;min-width:12px;text-align:center}
.nav-btn.active,.nav-btn:hover{border-color:var(--line-strong);background:linear-gradient(180deg,rgba(109,81,46,.58),rgba(23,17,13,.96));transform:translateY(-1px)}
.meta-pill{min-height:42px;padding:0 15px;background:linear-gradient(180deg,rgba(39,29,20,.72),rgba(12,9,8,.92));box-shadow:0 10px 20px rgba(0,0,0,.20)}
.meta-pill span{color:var(--muted);font-size:13px}
.screen-title{font-size:42px;letter-spacing:.3px}
.screen-desc{color:var(--muted);max-width:760px}
.btn,.foot-btn{position:relative;overflow:hidden}
.btn .ico,.foot-btn .ico{font-size:13px;opacity:.9}
.btn::before,.foot-btn::before{content:"";position:absolute;left:10px;right:10px;top:6px;height:12px;border-radius:999px;background:linear-gradient(180deg, rgba(255,250,238,.14), rgba(255,250,238,0));pointer-events:none}
.btn{min-height:48px;padding:0 20px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn-primary{background:linear-gradient(180deg,#f4e4c3,#d2b07d 42%,#8f6838 100%);color:#2b1a09;border-color:rgba(255,241,209,.36);box-shadow:0 12px 24px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,252,242,.40), inset 0 -4px 0 rgba(116,82,42,.26)}
.btn-secondary{background:linear-gradient(180deg,rgba(59,44,31,.94),rgba(17,13,11,.98));border-color:var(--line);color:#f3eadb;box-shadow:0 12px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,248,230,.06)}
.btn-danger{background:linear-gradient(180deg,#f5b0b8,#d76574 58%,#7d2b36 100%);box-shadow:0 12px 24px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,240,243,.30)}
.hero-layout{gap:24px}
.card{border:1px solid var(--line);background:radial-gradient(circle at 84% 14%, rgba(215,187,141,.05), transparent 22%),linear-gradient(180deg, rgba(35,27,22,.97), rgba(10,8,7,.99));box-shadow:var(--shadow-xl), inset 0 1px 0 rgba(255,248,230,.04), inset 0 -20px 24px rgba(0,0,0,.14)}
.card::before{content:"";position:absolute;inset:14px;border-radius:calc(var(--radius-xl) - 8px);border:1px solid rgba(255,238,210,.04);pointer-events:none}
.hero-main{min-height:540px;background:radial-gradient(circle at 70% 24%, rgba(215,187,141,.10), transparent 22%),radial-gradient(circle at 20% 18%, rgba(126,86,42,.12), transparent 20%),linear-gradient(180deg, rgba(36,28,23,.96), rgba(10,8,7,.99))}
.hero-ribbon{padding:7px 14px;border-color:rgba(219,192,146,.14);background:rgba(219,192,146,.08);color:#eed3a5;letter-spacing:1.6px}
.hero-main p{color:#d2c3ae}
.stat-shell{border:1px solid rgba(219,192,146,.08);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015))}
.feature-grid{gap:18px}
.kicker{color:#dfc086}
.panel h3, .card h3{color:#f6efdf}
.mode-card:hover,.room-card:hover{transform:translateY(-3px);box-shadow:0 28px 64px rgba(0,0,0,.34),0 0 18px rgba(215,187,141,.05)}
.mode-card.selected,.room-card.selected{outline:2px solid rgba(219,192,146,.20)}
.notice-banner{border-color:rgba(219,192,146,.10);background:linear-gradient(90deg,rgba(103,76,43,.22),rgba(31,23,18,.20));color:#e8dbc7}
.input{background:linear-gradient(180deg,#0d0a09,#060404);border-color:rgba(219,192,146,.14);color:#f4ebdd}
.progress-wrap{background:rgba(255,255,255,.04)}
.progress-bar{background:linear-gradient(90deg,#7f5e33,#bf9558,#ebd4ac)}
.history-item, .modal-stat, .result-row, .status-chip, .money-pill{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border-color:rgba(219,192,146,.08)}
.table-card, .money-plaque, .stage-head, .stage-status, .ai-banner, .announcer, .control-deck{border-color:rgba(219,192,146,.10)}
.money-plaque{background:linear-gradient(180deg,rgba(31,24,19,.97),rgba(9,7,6,.99));box-shadow:var(--shadow-lg), inset 0 1px 0 rgba(255,248,230,.04)}
.money-plaque::before{border-color:rgba(219,192,146,.06)}
.money-pill.high{color:#f1dfb7}
.stage-head,.stage-status,.announcer,.control-deck{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.016))}
.stage-live{color:#f0ddb8}
.live-dot{background:#ef8b76;box-shadow:0 0 10px rgba(239,139,118,.54)}
.case-stage{background:radial-gradient(circle at 50% 0%, rgba(215,187,141,.10), transparent 24%),radial-gradient(circle at 50% 68%, rgba(89,60,30,.18), transparent 40%),linear-gradient(180deg,rgba(13,10,8,.78),rgba(5,4,3,.95));box-shadow:var(--shadow-lg), inset 0 1px 0 rgba(255,248,230,.05)}
.case-stage::after{content:"";position:absolute;inset:18px;border-radius:22px;border:1px solid rgba(255,238,210,.04);pointer-events:none}
.case-grid{grid-template-columns:repeat(7,94px);gap:17px}
.case-btn{height:74px}
.case-shell{border-radius:19px;border:1px solid rgba(247,232,201,.84);background:linear-gradient(145deg,#f6e4c1 0%,#d8b278 15%,#79522a 38%,#17100b 58%,#a17239 78%,#f3dfbb 100%);box-shadow:0 18px 24px rgba(0,0,0,.42), inset 0 2px 0 rgba(255,249,235,.72), inset 0 -6px 0 rgba(0,0,0,.46), 0 0 18px rgba(215,187,141,.06)}
.case-shell::before{left:22px;right:22px;top:-7px;height:16px;border-width:3px;border-color:rgba(247,232,201,.80)}
.case-shell::after{top:30px;background:linear-gradient(#fff5dd,#8a6432)}
.case-label{font-size:21px;color:#251507}
.case-btn.player .case-shell{background:linear-gradient(145deg,#fbefd7,#f0cf95 26%,#bf8637 58%,#f6e7c9);box-shadow:0 0 28px rgba(215,187,141,.22),0 18px 24px rgba(0,0,0,.42)}
.case-btn.ai .case-shell{outline:2px solid rgba(219,192,146,.54)}
.case-btn.opened .case-shell{background:linear-gradient(180deg,#191410,#090706);border-color:rgba(219,192,146,.14)}
.case-btn.opened .case-label{font-size:12px;color:#efd9af}
.announcer{color:#eadcc6}
.footerbar{padding:0 24px;background:linear-gradient(180deg,rgba(11,9,8,.90),rgba(18,13,10,.96))}
.footer-help{color:var(--muted)}
.foot-btn{height:40px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(60,44,31,.72),rgba(12,9,8,.95));color:#f0e4d0;font-weight:900;display:inline-flex;align-items:center;gap:7px;box-shadow:0 10px 20px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,248,230,.06)}
.modal{background:rgba(6,5,4,.82);backdrop-filter:blur(14px)}
.modal-card{border-color:rgba(219,192,146,.14);background:radial-gradient(circle at 50% 0%, rgba(215,187,141,.08), transparent 24%),linear-gradient(180deg, rgba(39,30,24,.995), rgba(9,7,6,.998));box-shadow:0 56px 140px rgba(0,0,0,.80), inset 0 1px 0 rgba(255,248,230,.06)}
.offer-amount{color:#fff6e8;text-shadow:0 0 18px rgba(215,187,141,.14)}
.toast{background:linear-gradient(180deg,rgba(39,30,24,.98),rgba(10,8,7,.995));border-color:rgba(219,192,146,.14);box-shadow:var(--shadow-lg)}
.toast p{color:var(--muted)}
@media(max-width:1320px){.case-grid{grid-template-columns:repeat(6,90px)}}
@media(max-width:760px){.nav-btn{min-width:96px;height:42px}.screen-title{font-size:34px}.hero-main h2{font-size:38px}.case-grid{grid-template-columns:repeat(4,74px);gap:12px}.case-btn{height:60px}.case-label{font-size:18px}}


body{font-variant-numeric:tabular-nums;background:radial-gradient(circle at 16% 9%, rgba(189,148,87,.08), transparent 24%),radial-gradient(circle at 84% 10%, rgba(86,63,37,.08), transparent 20%),radial-gradient(circle at 50% 114%, rgba(135,96,51,.08), transparent 30%),linear-gradient(145deg,#040404 0%,#0a0908 36%,#140f0d 68%,#050505 100%)}
.topbar{grid-template-columns:auto 1fr auto;gap:26px;padding:18px 26px 14px}.logo-wrap{gap:14px}.logo-emblem{width:58px;height:58px;border-radius:18px}.logo-title{font-size:30px}.logo-sub{font-size:10px;letter-spacing:2.8px}
.main-nav{justify-content:flex-start;gap:10px}.nav-btn{min-width:106px;height:48px;padding:0 15px;border-radius:15px;font-size:13px;letter-spacing:.2px}.nav-btn .ico{font-size:12px;opacity:.85}.nav-btn span:last-child{line-height:1}
.top-meta{gap:10px}.meta-pill{min-height:46px;padding:0 16px 0 14px;gap:12px}.meta-pill b{font-size:16px}
.view{padding:30px 32px 26px}.screen-head{margin-bottom:24px}.screen-title{font-size:40px;line-height:1.04}.screen-desc{font-size:14px;line-height:1.78}
.action-row{gap:12px}.btn{min-height:50px;padding:0 20px;border-radius:16px;font-size:14px;font-weight:950;letter-spacing:.15px}.btn .ico{display:inline-flex;align-items:center;justify-content:center;width:16px;text-align:center;font-size:13px}.btn:disabled{opacity:.52;filter:saturate(.8);cursor:not-allowed}.btn:hover{transform:translateY(-1px)}
.hero-layout{grid-template-columns:1.18fr .82fr;gap:24px}.hero-main{min-height:556px}.hero-main h2{font-size:54px;line-height:.98;max-width:720px}.hero-main p{font-size:15px;line-height:1.84;max-width:700px}.hero-ribbon{padding:8px 14px;font-size:11px}.stat-grid{gap:14px}.stat-shell{padding:16px 18px;border-radius:18px}.stat-shell label{font-size:12px}.stat-shell strong{font-size:30px;margin-top:8px}
.feature.card{min-height:176px}.card-pad{padding:26px}.card h3{display:flex;align-items:center;gap:10px;font-size:25px}.heading-ico{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;background:rgba(219,192,146,.10);border:1px solid rgba(219,192,146,.14);font-size:13px;color:#f2d49f;box-shadow:inset 0 1px 0 rgba(255,250,240,.06)}
.mode-stack{gap:18px}.mode-card .card-pad,.room-card .card-pad{padding:22px 22px 20px}.mode-card h3,.room-card h3{font-size:24px}.mode-badge,.room-badge,.title-badge{padding:8px 12px;border-radius:999px;gap:8px;font-size:11px;letter-spacing:1px}.mode-badge .ico,.room-badge .ico,.title-badge .ico{font-size:11px}.mode-foot{margin-top:16px}.mode-note{color:var(--muted);font-size:13px;font-weight:700}.notice-banner{padding:16px 18px;border-radius:20px;font-size:14px}.rooms-grid{gap:18px}.room-meta{gap:10px;margin-top:15px}.room-line{padding:10px 12px;border-radius:14px}.room-line label{font-size:12px}.room-line strong{font-size:14px}.room-start-btn{margin-top:18px}
.profile-grid,.leaderboard-grid{gap:24px}.name-card .card-pad,.history-card .card-pad,.table-card{padding:24px}.profile-name{font-size:34px}.input{min-height:48px;border-radius:14px;padding:0 14px;font-size:14px}.input-row{gap:12px}.history-list{gap:12px}.history-item{padding:15px 16px;border-radius:18px}.history-title{font-size:15px}.history-value{font-size:20px}.podium-card{min-height:170px}.rank-big{font-size:52px}.rank-name{font-size:22px}.rank-amount{font-size:28px}.achievement-grid{gap:18px}.achievement-card{min-height:178px}.achievement-card .card-pad{padding:22px}.achievement-icon{width:48px;height:48px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(219,192,146,.08);border:1px solid rgba(219,192,146,.12);font-size:22px}
.table-layout{grid-template-columns:235px 1fr 235px;gap:18px}.money-plaque{padding:18px 16px;border-radius:28px}.plaque-title{display:flex;align-items:center;gap:8px;padding-left:4px;font-size:11px;letter-spacing:2px}.plaque-title .ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:8px;background:rgba(219,192,146,.08);border:1px solid rgba(219,192,146,.12);font-size:10px}.money-list{gap:8px}.money-pill{height:34px;border-radius:999px;font-size:13px}
.stage-shell{gap:15px}.stage-head{padding:14px 18px;border-radius:22px}.stage-live{font-size:14px}.title-badge{font-size:11px}.stage-status{padding:10px;gap:10px}.status-chip{padding:12px 10px;border-radius:16px}.status-chip label{font-size:11px}.status-chip strong{font-size:16px;margin-top:7px}.ai-banner{padding:14px 17px;border-radius:18px;line-height:1.6}.case-stage{padding:28px;border-radius:32px}.case-grid{gap:18px}.case-btn{height:76px}.case-shell{border-radius:20px}.case-label{font-size:22px;letter-spacing:.2px}.announcer{padding:17px 18px;border-radius:18px;font-size:14px;line-height:1.72}.control-deck{padding:14px;border-radius:18px;gap:12px}.control-deck .input{min-width:240px}
.footerbar{padding:0 24px;min-height:62px}.footer-help{font-size:13px;line-height:1.5}.footer-actions{gap:10px}.foot-btn{height:42px;padding:0 15px;border-radius:13px;font-size:13px;display:inline-flex;align-items:center;gap:7px}.foot-btn .ico{display:inline-flex;align-items:center;justify-content:center;width:14px;font-size:12px}
.modal-card{padding:28px 26px 26px;border-radius:34px}.modal-title{font-size:32px}.offer-amount{font-size:64px;margin:18px 0}.modal-grid{gap:12px;margin:16px 0}.modal-stat{padding:14px;border-radius:16px}.modal-copy{font-size:14px;line-height:1.75}.modal-actions{gap:12px;margin-top:14px}.result-list{gap:10px}.result-row{padding:13px 15px;border-radius:16px}.toast-wrap{gap:10px}.toast{padding:14px 15px 13px;border-radius:18px}
@media(max-width:1320px){.topbar{grid-template-columns:1fr}.main-nav{justify-content:flex-start}.hero-layout,.setup-grid,.profile-grid,.leaderboard-grid,.table-layout{grid-template-columns:1fr}.money-plaque{display:grid;grid-template-columns:1fr 1fr;gap:14px}.case-grid{grid-template-columns:repeat(6,88px)}}
@media(max-width:760px){.view{padding:22px 18px 18px}.screen-title{font-size:32px}.hero-main h2{font-size:36px}.btn{min-height:46px;padding:0 16px;font-size:13px}.case-grid{grid-template-columns:repeat(4,72px);gap:12px}.case-btn{height:62px}.case-label{font-size:18px}.money-plaque{grid-template-columns:1fr}.stage-status{grid-template-columns:repeat(2,1fr)}}


body{overflow:hidden}
.main-nav{justify-content:flex-start;gap:12px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.main-nav::-webkit-scrollbar{display:none}
.nav-btn{min-width:122px;height:50px;padding:0 18px;white-space:nowrap;flex:0 0 auto;gap:9px}
.nav-btn .ico{font-size:16px;min-width:18px;width:18px;opacity:.96}
.nav-btn span:last-child{white-space:nowrap}
.meta-pill,.btn,.foot-btn,.mode-badge,.room-badge,.title-badge{white-space:nowrap}
.action-row{gap:12px}
.action-row .btn{white-space:nowrap}
.hero-main h2{max-width:820px;word-break:keep-all}
.hero-main p,.screen-desc{word-break:break-word}
.mode-stack{gap:20px}
.mode-card{display:block}
.mode-card .card-pad{min-height:232px;display:flex;flex-direction:column;align-items:flex-start}
.mode-card p{flex:1}
.mode-foot{width:100%;margin-top:auto;padding-top:14px}
.mode-foot .mode-note{margin-left:auto;text-align:right;white-space:nowrap}
.mode-card h3{min-height:34px}
@media(max-width:1320px){
  .main-nav{flex-wrap:wrap;overflow:visible}
}
@media(max-width:760px){
  .nav-btn{min-width:104px;height:46px;padding:0 14px}
  .nav-btn .ico{font-size:14px;min-width:16px;width:16px}
  .mode-card .card-pad{min-height:auto}
  .mode-foot{flex-wrap:wrap;gap:10px}
}


.topbar{padding:18px 28px 14px;grid-template-columns:auto 1fr auto;gap:28px}
.logo-emblem{width:60px;height:60px;border-radius:20px}
.logo-emblem::before{font-size:25px}
.logo-title{font-size:32px;letter-spacing:1.4px}
.logo-sub{font-size:10px;letter-spacing:3px}
.main-nav{justify-content:flex-start;gap:14px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
.main-nav::-webkit-scrollbar{display:none}
.nav-btn{min-width:126px;height:54px;padding:0 20px;border-radius:16px;gap:10px;font-size:14px}
.nav-btn .ico{font-size:18px;min-width:20px;width:20px;opacity:1}
.nav-btn span:last-child{white-space:nowrap}
.top-meta{gap:12px}
.meta-pill{min-height:48px;padding:0 17px}
.meta-pill b{font-size:17px}
.view{padding-top:24px}
.screen-head{margin-bottom:20px}
.screen-title{font-size:42px;line-height:1.06}
.hero-layout{grid-template-columns:1.32fr .68fr;gap:24px}
.hero-main{justify-content:flex-start;gap:16px;min-height:556px}
.hero-main h2{font-size:50px;line-height:1.02;max-width:920px;margin:10px 0 10px;word-break:keep-all}
.hero-main p{max-width:820px;margin:0}
.hero-stats{margin-top:18px}
.setup-grid{grid-template-columns:.94fr 1.06fr;gap:22px;align-items:stretch}
.mode-stack{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
.mode-card{height:100%}
.mode-card .card-pad{min-height:290px;height:100%;display:flex;flex-direction:column;align-items:flex-start}
.mode-card h3{min-height:36px;margin-bottom:8px}
.mode-card p{flex:1;margin:0 0 10px}
.mode-foot{width:100%;margin-top:auto;padding-top:16px;align-items:center}
.mode-foot .mode-note{margin-left:auto;white-space:nowrap;text-align:right}
.notice-banner{margin-bottom:18px}
.rooms-grid{align-items:stretch}
.room-card{height:100%}
.room-card .card-pad{height:100%;display:flex;flex-direction:column}
.room-card p{flex:1}
@media(max-width:1320px){
  .topbar{grid-template-columns:1fr;gap:16px}
  .main-nav{flex-wrap:wrap;overflow:visible}
  .hero-layout,.setup-grid{grid-template-columns:1fr}
  .mode-stack{grid-template-rows:none}
  .mode-card .card-pad{min-height:240px}
}
@media(max-width:760px){
  .topbar{padding:16px 18px 12px}
  .logo-title{font-size:28px}
  .nav-btn{min-width:108px;height:48px;padding:0 14px;font-size:13px}
  .nav-btn .ico{font-size:16px;min-width:18px;width:18px}
  .screen-title{font-size:34px}
  .hero-main h2{font-size:38px;max-width:none}
  .mode-card .card-pad{min-height:auto}
  .mode-foot{flex-wrap:wrap;gap:10px}
}


.main-nav{gap:16px}
.nav-btn{min-width:132px;height:56px;padding:0 20px;gap:12px;font-size:14px}
.nav-btn .ico{font-size:22px !important;line-height:1;min-width:24px !important;width:24px !important;height:24px;display:inline-flex;align-items:center;justify-content:center;opacity:1;font-weight:900}
.nav-btn span:last-child{font-size:14px;font-weight:900;letter-spacing:.2px}
@media(max-width:760px){
  .nav-btn{min-width:110px;height:48px;padding:0 14px;gap:8px}
  .nav-btn .ico{font-size:18px !important;min-width:20px !important;width:20px !important;height:20px}
}


.nav-btn{align-items:center}
.nav-btn .ico{font-size:24px !important;min-width:26px !important;width:26px !important;height:26px;display:inline-flex;align-items:center;justify-content:center}
.main-nav .nav-btn:first-child .ico{font-size:28px !important;min-width:30px !important;width:30px !important;height:30px;transform:translateY(-1px)}
.main-nav .nav-btn:first-child{min-width:138px}
@media(max-width:760px){
  .nav-btn .ico{font-size:19px !important;min-width:21px !important;width:21px !important;height:21px}
  .main-nav .nav-btn:first-child .ico{font-size:22px !important;min-width:24px !important;width:24px !important;height:24px}
}


.main-nav .nav-btn:first-child{min-width:132px}
.nav-btn{gap:10px}
.nav-btn .ico{font-size:16px !important;min-width:26px !important;width:26px !important;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:linear-gradient(180deg,rgba(255,248,230,.10),rgba(255,248,230,.03));border:1px solid rgba(219,192,146,.14);box-shadow:inset 0 1px 0 rgba(255,248,230,.06)}
.main-nav .nav-btn:first-child .ico,.main-nav .nav-btn:nth-child(2) .ico{font-size:16px !important;min-width:26px !important;width:26px !important;height:26px;transform:none}
@media(max-width:760px){
  .nav-btn .ico,.main-nav .nav-btn:first-child .ico,.main-nav .nav-btn:nth-child(2) .ico{font-size:14px !important;min-width:22px !important;width:22px !important;height:22px;border-radius:8px}
}


:root{--icon-size:18px;--icon-box:28px;--icon-radius:10px}
.ico,.heading-ico,.achievement-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;font-weight:900;font-style:normal;flex:0 0 auto;user-select:none}
.ico{width:var(--icon-box);min-width:var(--icon-box);height:var(--icon-box);font-size:var(--icon-size);border-radius:var(--icon-radius);background:linear-gradient(180deg,rgba(255,248,230,.11),rgba(255,248,230,.03));border:1px solid rgba(219,192,146,.14);box-shadow:inset 0 1px 0 rgba(255,248,230,.06)}
.nav-btn{gap:11px}
.nav-btn .ico{--icon-size:17px;--icon-box:28px;--icon-radius:9px}
.btn .ico,.foot-btn .ico,.mode-badge .ico,.room-badge .ico,.title-badge .ico,.plaque-title .ico{--icon-size:14px;--icon-box:24px;--icon-radius:8px}
.heading-ico{width:32px;min-width:32px;height:32px;font-size:16px;border-radius:11px;background:linear-gradient(180deg,rgba(255,248,230,.12),rgba(255,248,230,.03));border:1px solid rgba(219,192,146,.16);box-shadow:inset 0 1px 0 rgba(255,248,230,.07)}
.achievement-icon{width:52px;height:52px;border-radius:16px;font-size:24px;background:linear-gradient(180deg,rgba(255,248,230,.12),rgba(255,248,230,.04));border:1px solid rgba(219,192,146,.16);box-shadow:inset 0 1px 0 rgba(255,248,230,.08)}
.main-nav .nav-btn:first-child,.main-nav .nav-btn:nth-child(2){min-width:132px}
.main-nav .nav-btn:first-child .ico,.main-nav .nav-btn:nth-child(2) .ico{--icon-size:17px;--icon-box:28px}
@media(max-width:760px){
  .nav-btn .ico{--icon-size:15px;--icon-box:24px}
  .btn .ico,.foot-btn .ico,.mode-badge .ico,.room-badge .ico,.title-badge .ico,.plaque-title .ico{--icon-size:13px;--icon-box:22px}
  .heading-ico{width:28px;min-width:28px;height:28px;font-size:14px}
  .achievement-icon{width:46px;height:46px;font-size:22px}
}


.setup-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch}
.mode-stack,.setup-side{min-width:0}
.mode-stack{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.mode-card{height:100%}
.mode-card .card-pad{height:100%;min-height:292px;display:flex;flex-direction:column}
.mode-card p{flex:1;margin-bottom:14px}
.mode-foot{margin-top:auto;padding-top:18px}
.setup-side{display:grid;grid-template-rows:auto 1fr;gap:18px;align-content:start}
.notice-banner{margin-bottom:0;padding:16px 20px;min-height:68px;display:flex;align-items:center}
.rooms-grid{height:100%;align-items:stretch;grid-auto-rows:1fr;gap:18px}
.room-card{height:100%}
.room-card .card-pad{height:100%;display:flex;flex-direction:column}
.room-card p{min-height:52px}
.room-meta{margin-top:16px;gap:10px}
.room-start-btn{margin-top:auto !important}
.stage-head{padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}
.stage-head-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.stage-switches{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.mini-switch{height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,226,180,.12);background:linear-gradient(180deg,rgba(56,39,24,.74),rgba(18,13,10,.94));color:#f4e6cf;font-size:12px;font-weight:900;letter-spacing:.2px;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,248,230,.05);transition:.18s ease}
.mini-switch:hover{transform:translateY(-1px);border-color:rgba(255,226,180,.22)}
.mini-switch.active{background:linear-gradient(180deg,#f1dfbf,#c99f63 48%,#7b572e 100%);color:#241507;border-color:rgba(255,235,202,.28)}
.mini-switch.muted{background:linear-gradient(180deg,rgba(46,34,26,.68),rgba(14,10,8,.92));color:#ccbba2}
@media(max-width:1320px){
  .setup-grid{grid-template-columns:1fr}
  .mode-stack{grid-template-rows:none}
  .mode-card .card-pad{min-height:240px}
}
@media(max-width:980px){
  .stage-head{grid-template-columns:1fr}
  .stage-head-right{justify-content:flex-start}
  .stage-switches{justify-content:flex-start}
}


.notice-banner{display:none !important}
.setup-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.mode-stack{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.mode-card .card-pad{min-height:300px}
.setup-side{display:block;align-self:start}
.rooms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;margin-top:0}
.room-card .card-pad{min-height:300px;display:flex;flex-direction:column}
.room-card .room-meta{margin-top:22px}
.room-card .room-start-btn{margin-top:auto !important}
@media(max-width:1320px){.setup-grid{grid-template-columns:1fr}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.rooms-grid{grid-template-columns:1fr}}


.topbar,.app-shell{overflow:visible}
.topbar{padding-top:20px !important;padding-bottom:16px !important}
.main-nav{overflow:visible}
.nav-btn{position:relative;overflow:visible}
.nav-btn.active,.nav-btn:hover{transform:none !important;border-color:rgba(255,223,170,.26) !important;box-shadow:0 0 0 1px rgba(255,224,176,.10), inset 0 1px 0 rgba(255,248,230,.10), 0 14px 28px rgba(0,0,0,.24) !important}
.nav-btn.active::after{content:"";position:absolute;left:10px;right:10px;top:6px;height:14px;border-radius:999px;background:linear-gradient(180deg,rgba(255,241,205,.18),rgba(255,241,205,0));pointer-events:none}
:root{--setup-row-h:318px}
.setup-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;gap:22px !important;align-items:start !important}
.mode-stack{display:grid !important;grid-template-rows:repeat(2,var(--setup-row-h)) !important;gap:22px !important;align-items:stretch !important}
.setup-side{display:block !important;align-self:start !important}
.rooms-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;grid-template-rows:repeat(2,var(--setup-row-h)) !important;grid-auto-rows:var(--setup-row-h) !important;gap:22px !important;align-items:stretch !important}
.mode-card,.room-card{height:100% !important}
.mode-card .card-pad,.room-card .card-pad{height:100% !important;min-height:0 !important;display:flex !important;flex-direction:column !important}
.mode-card p,.room-card p{flex:1 1 auto !important}
.mode-foot{margin-top:auto !important}
.room-start-btn{margin-top:auto !important}
@media(max-width:1320px){
  .setup-grid{grid-template-columns:1fr !important}
  .mode-stack{grid-template-rows:none !important}
  .rooms-grid{grid-template-rows:none !important;grid-auto-rows:auto !important}
  .mode-card .card-pad,.room-card .card-pad{min-height:260px !important}
}
@media(max-width:900px){
  .rooms-grid{grid-template-columns:1fr !important}
}


.setup-side{margin-top:-4px !important}
:root{--setup-row-h:312px !important}
.mode-card .card-pad{display:grid !important;grid-template-rows:auto auto 1fr auto !important;align-content:start !important;padding:20px 22px 18px !important}
.mode-card h3{margin:8px 0 8px !important}
.mode-card p{margin:0 !important;align-self:start !important}
.mode-foot{margin-top:12px !important}
.room-card .card-pad{display:grid !important;grid-template-rows:auto auto auto auto 1fr auto !important;align-content:start !important;padding:14px 20px 16px !important}
.room-badge{margin-bottom:4px !important}
.room-card h3{margin:4px 0 8px !important}
.room-card p{margin:0 !important;line-height:1.55 !important;min-height:0 !important;flex:none !important;align-self:start !important}
.room-meta{margin-top:10px !important;gap:6px !important}
.room-line{padding:2px 0 !important;align-items:center !important}
.room-start-btn{margin-top:auto !important;align-self:stretch !important}
.rooms-grid{margin-top:0 !important;transform:translateY(-2px)}
@media(max-width:1320px){.setup-side{margin-top:0 !important}.rooms-grid{transform:none}}


.setup-grid{align-items:start !important}
.setup-side{margin-top:8px !important;align-self:start !important}
.rooms-grid{transform:translateY(6px) !important;margin-top:0 !important;gap:22px !important}
:root{--setup-row-h:304px !important}
.mode-stack{grid-template-rows:repeat(2,var(--setup-row-h)) !important}
.rooms-grid{grid-template-rows:repeat(2,var(--setup-row-h)) !important;grid-auto-rows:var(--setup-row-h) !important}
.mode-card .card-pad{padding:20px 22px 18px !important}
.room-card .card-pad{padding:12px 20px 16px !important;grid-template-rows:auto auto auto auto 1fr auto !important}
.room-badge{margin-bottom:2px !important}
.room-card h3{margin:2px 0 8px !important}
.room-card p{margin:0 !important;line-height:1.5 !important}
.room-meta{margin-top:8px !important}
@media(max-width:1320px){.setup-side{margin-top:0 !important}.rooms-grid{transform:none !important}}


:root{--setup-gap-final:24px;--setup-row-final:328px}
.setup-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:var(--setup-gap-final) !important;
  align-items:start !important;
}
.mode-stack,
.setup-side,
.rooms-grid{
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  align-self:start !important;
}
.mode-stack{
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:repeat(2,var(--setup-row-final)) !important;
  gap:var(--setup-gap-final) !important;
}
.setup-side{
  display:block !important;
}
.rooms-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:repeat(2,var(--setup-row-final)) !important;
  grid-auto-rows:var(--setup-row-final) !important;
  gap:var(--setup-gap-final) !important;
}
.mode-card,
.room-card{
  height:var(--setup-row-final) !important;
  min-height:var(--setup-row-final) !important;
  max-height:var(--setup-row-final) !important;
}
.mode-card .card-pad,
.room-card .card-pad{
  box-sizing:border-box !important;
  height:100% !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  align-items:stretch !important;
}
.mode-card .card-pad{
  padding:20px 22px 18px !important;
}
.room-card .card-pad{
  padding:18px 20px 16px !important;
}
.mode-card .kicker,
.room-card .room-badge{
  margin:0 0 10px 0 !important;
}
.mode-card h3,
.room-card h3{
  margin:0 0 10px 0 !important;
}
.mode-card p,
.room-card p{
  margin:0 !important;
  min-height:0 !important;
  flex:0 0 auto !important;
  line-height:1.55 !important;
}
.room-meta{
  margin-top:18px !important;
  gap:8px !important;
}
.room-line{
  padding:2px 0 !important;
}
.mode-foot,
.room-start-btn{
  margin-top:auto !important;
}
.notice-banner{display:none !important}
@media(max-width:1320px){
  .setup-grid{grid-template-columns:1fr !important}
  .mode-stack{grid-template-rows:none !important}
  .rooms-grid{grid-template-rows:none !important;grid-auto-rows:auto !important}
  .mode-card,.room-card{height:auto !important;min-height:280px !important;max-height:none !important}
}
@media(max-width:900px){
  .rooms-grid{grid-template-columns:1fr !important}
}


.shop-summary{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.summary-card{min-width:180px;padding:12px 16px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(39,29,20,.72),rgba(12,9,8,.92));box-shadow:0 10px 20px rgba(0,0,0,.20)}
.summary-card span{display:block;color:var(--muted);font-size:12px;font-weight:800}.summary-card strong{display:block;margin-top:6px;color:#fff4df;font-size:16px}
.shop-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.shop-block .card-pad{padding:24px}.shop-block h3{margin:10px 0 18px}.shop-grid{display:grid;gap:14px}.shop-item{border:1px solid rgba(219,192,146,.10);border-radius:22px;padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));box-shadow:inset 0 1px 0 rgba(255,248,230,.04),0 10px 22px rgba(0,0,0,.14)}
.shop-item.equipped{border-color:rgba(219,192,146,.28);box-shadow:0 0 0 1px rgba(219,192,146,.10),inset 0 1px 0 rgba(255,248,230,.06),0 14px 30px rgba(0,0,0,.18)}
.shop-item-head{display:flex;gap:12px;align-items:center;margin-bottom:12px}.shop-icon{width:46px;height:46px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-weight:1000;font-size:20px;background:linear-gradient(145deg,#f6e4c1,#886235);color:#2a1808;border:1px solid rgba(255,240,210,.24);box-shadow:inset 0 1px 0 rgba(255,248,230,.42),0 10px 20px rgba(0,0,0,.16)}
.shop-item h4{margin:0;color:#fff2dd;font-size:18px}.shop-item span{color:var(--muted);font-size:12px;font-weight:800}.shop-item p{min-height:46px;margin:0 0 14px;color:var(--muted);font-size:13px;line-height:1.58}.shop-item .btn{width:100%;min-height:44px}.skin-preview.skin-ruby{background:linear-gradient(145deg,#f2c0a7,#8a2520 55%,#f5d7a6)}.skin-preview.skin-emerald{background:linear-gradient(145deg,#d7f1c4,#1b7d5b 58%,#f5d79a)}.skin-preview.skin-midnight{background:linear-gradient(145deg,#ecf1ff,#26314a 58%,#c7b38a)}.skin-preview.skin-royal{background:linear-gradient(145deg,#ead4ff,#56306f 58%,#e2b86f)}
body.skin-ruby{--gold:#e7b78a;--gold-2:#a84a37;--gold-3:#67261d;--line-strong:rgba(229,170,130,.30)}body.skin-ruby .case-shell{background:linear-gradient(145deg,#f3d0b3 0%,#b85b45 18%,#4a1714 58%,#e7bd8c 100%)}body.skin-ruby .btn-primary{background:linear-gradient(180deg,#f5d6b9,#ce7454 45%,#733025 100%)}
body.skin-emerald{--gold:#c9d9a0;--gold-2:#4f9b73;--gold-3:#2b5c46;--line-strong:rgba(149,205,162,.30)}body.skin-emerald .case-shell{background:linear-gradient(145deg,#e4edcf 0%,#74a96f 18%,#17352b 58%,#e5d098 100%)}body.skin-emerald .btn-primary{background:linear-gradient(180deg,#e6edc9,#8db36e 45%,#315f46 100%)}
body.skin-midnight{--gold:#d5d9e6;--gold-2:#8a94ad;--gold-3:#4a5268;--line-strong:rgba(198,205,226,.26)}body.skin-midnight .case-shell{background:linear-gradient(145deg,#e7ebf2 0%,#7f8da7 16%,#111827 58%,#d8c29a 100%)}body.skin-midnight .btn-primary{background:linear-gradient(180deg,#eceff5,#9aa4b8 45%,#3c465a 100%)}
body.skin-royal{--gold:#d9b5f2;--gold-2:#8b5db0;--gold-3:#54346d;--line-strong:rgba(214,181,240,.28)}body.skin-royal .case-shell{background:linear-gradient(145deg,#f1ddff 0%,#9a6db8 18%,#271434 58%,#e6bf79 100%)}body.skin-royal .btn-primary{background:linear-gradient(180deg,#eedcff,#b082cf 45%,#58356e 100%)}
body.voice-vault_host .announcer b{color:#ffe4a1}body.voice-dealer .announcer b{color:#d8d1c4}body.voice-banker .announcer b{color:#f2c191}body.voice-vintage .announcer b{color:#e0bf79}body.voice-vip .announcer b{color:#ead7b6}
@media(max-width:1100px){.shop-layout{grid-template-columns:1fr}.shop-summary{justify-content:flex-start}}


.shop-layout{grid-template-columns:repeat(3,minmax(0,1fr))}
.item-modal-card{width:min(980px,100%)}
.item-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0;text-align:left;max-height:58vh;overflow:auto;padding-right:4px}
.item-deck{border-radius:18px;border:1px solid rgba(255,226,180,.10);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.016));box-shadow:inset 0 1px 0 rgba(255,248,230,.04);padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.item-status{display:inline-flex;align-items:center;gap:8px;color:#eadcc6;font-weight:900;font-size:13px}
.case-btn.item-hint .case-shell{outline:3px solid rgba(255,216,137,.80);box-shadow:0 0 36px rgba(255,216,137,.24),0 18px 28px rgba(0,0,0,.46),inset 0 2px 0 rgba(255,249,235,.72),inset 0 -6px 0 rgba(0,0,0,.50)}
.stage-switches .mini-switch:not(.muted){display:none !important}
@media(max-width:1320px){.shop-layout{grid-template-columns:1fr}.item-modal-grid{grid-template-columns:1fr}}


/* --- shop upgrade --- */
.shop-layout-extended{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.mini-desc{margin-top:4px;font-size:12px;color:var(--muted)}
.share-hub{display:flex;flex-direction:column;gap:12px}
.share-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.share-note{font-size:12px;color:var(--muted);line-height:1.6}
.table-preview{position:relative;overflow:hidden}
.table-preview::before{content:"";position:absolute;inset:6px;border-radius:10px;opacity:.95}
.table-preview.table-blackgold{background:linear-gradient(145deg,#20160f,#71512f 60%,#ead39b)}
.table-preview.table-blackgold::before{background:radial-gradient(circle at 50% 50%,rgba(250,224,170,.2),transparent 58%),linear-gradient(180deg,#0e0a08,#2b1d12)}
.table-preview.table-crimson{background:linear-gradient(145deg,#41151a,#8f332e 60%,#f0c48f)}
.table-preview.table-crimson::before{background:linear-gradient(180deg,#25090b,#4b1418), radial-gradient(circle at 50% 50%,rgba(255,203,174,.18),transparent 60%)}
.table-preview.table-emerald{background:linear-gradient(145deg,#153029,#368369 60%,#f2d198)}
.table-preview.table-emerald::before{background:linear-gradient(180deg,#092018,#17382d), radial-gradient(circle at 50% 50%,rgba(211,255,215,.18),transparent 60%)}
.table-preview.table-neon{background:linear-gradient(145deg,#1a2038,#4567af 60%,#7ed7ff)}
.table-preview.table-neon::before{background:linear-gradient(180deg,#0b1222,#162647), radial-gradient(circle at 50% 50%,rgba(110,240,255,.22),transparent 60%)}
.table-preview.table-royal{background:linear-gradient(145deg,#322047,#7c4aa8 60%,#f1c679)}
.table-preview.table-royal::before{background:linear-gradient(180deg,#170d21,#372148), radial-gradient(circle at 50% 50%,rgba(255,224,177,.20),transparent 60%)}
.bundle-card .shop-icon{font-size:22px}

/* Hide setup in top nav and lock in-game mode switches */
#switchChallengerBtn,#switchBankerBtn{display:none !important}

/* Skin should only affect boxes */
.case-stage{position:relative}
.case-stage .case-shell,.case-stage .case-label,.case-stage .case-shell::before,.case-stage .case-shell::after{transition:.22s ease}
.case-stage.skin-classic .case-shell{
  background:linear-gradient(145deg,#fff8e4 0%,#ebc880 12%,#5a3919 31%,#17100b 52%,#aa7532 70%,#fff2d2 100%);
}
.case-stage.skin-ruby .case-shell{
  border-color:rgba(255,228,195,.78);
  background:
    radial-gradient(circle at 20% 20%,rgba(255,236,215,.4),transparent 18%),
    linear-gradient(145deg,#fff4e6 0%,#f2c399 10%,#8a2028 34%,#30070b 58%,#b84246 78%,#ffe2b0 100%);
  box-shadow:0 22px 30px rgba(0,0,0,.5), inset 0 2px 0 rgba(255,247,237,.72), inset 0 -8px 0 rgba(41,6,8,.55), 0 0 24px rgba(244,129,116,.18);
}
.case-stage.skin-ruby .case-shell::before{border-color:rgba(255,227,193,.85)}
.case-stage.skin-ruby .case-shell::after{background:linear-gradient(180deg,#fff0d1,#d56f4c); box-shadow:0 0 14px rgba(196,78,52,.38)}
.case-stage.skin-ruby .case-label{color:#ffe6c7;text-shadow:0 1px 0 rgba(81,17,13,.6)}
.case-stage.skin-emerald .case-shell{
  border-color:rgba(234,248,211,.82);
  background:
    radial-gradient(circle at 18% 18%,rgba(246,255,229,.34),transparent 16%),
    linear-gradient(145deg,#fcffe8 0%,#d8ecad 10%,#1f6b51 34%,#0c211b 56%,#4aa77b 77%,#ffe2ac 100%);
  box-shadow:0 22px 30px rgba(0,0,0,.5), inset 0 2px 0 rgba(247,255,239,.72), inset 0 -8px 0 rgba(8,31,23,.52), 0 0 24px rgba(85,190,136,.18);
}
.case-stage.skin-emerald .case-shell::before{border-color:rgba(229,245,200,.84)}
.case-stage.skin-emerald .case-shell::after{background:linear-gradient(180deg,#fff0cf,#4aa77b); box-shadow:0 0 14px rgba(60,165,124,.34)}
.case-stage.skin-emerald .case-label{color:#eefad8;text-shadow:0 1px 0 rgba(11,43,30,.72)}
.case-stage.skin-midnight .case-shell{
  border-color:rgba(231,236,255,.86);
  background:
    radial-gradient(circle at 20% 18%,rgba(240,248,255,.22),transparent 17%),
    linear-gradient(145deg,#fbfdff 0%,#c9d2e3 9%,#364158 28%,#0b0f17 56%,#6e7c98 77%,#f4d9af 100%);
  box-shadow:0 24px 32px rgba(0,0,0,.56), inset 0 2px 0 rgba(246,249,255,.68), inset 0 -8px 0 rgba(5,8,14,.62), 0 0 28px rgba(145,178,255,.16);
}
.case-stage.skin-midnight .case-shell::before{border-color:rgba(231,238,255,.8)}
.case-stage.skin-midnight .case-shell::after{background:linear-gradient(180deg,#f9fbff,#7a8cb1); box-shadow:0 0 14px rgba(125,148,196,.36)}
.case-stage.skin-midnight .case-label{color:#f1f6ff;text-shadow:0 1px 0 rgba(19,28,51,.6)}
.case-stage.skin-royal .case-shell{
  border-color:rgba(255,228,191,.9);
  background:
    radial-gradient(circle at 21% 18%,rgba(255,250,239,.36),transparent 16%),
    linear-gradient(145deg,#fff4e9 0%,#e0c1ff 9%,#6c428a 26%,#24122f 57%,#9a6bc2 76%,#ffd98f 100%);
  box-shadow:0 24px 34px rgba(0,0,0,.58), inset 0 2px 0 rgba(255,248,242,.72), inset 0 -8px 0 rgba(28,8,39,.54), 0 0 30px rgba(186,130,255,.2);
}
.case-stage.skin-royal .case-shell::before{border-color:rgba(255,230,194,.86); top:-10px; height:20px}
.case-stage.skin-royal .case-shell::after{width:20px;height:16px;background:linear-gradient(180deg,#fff0d7,#a670d5); box-shadow:0 0 16px rgba(180,111,255,.38)}
.case-stage.skin-royal .case-label{color:#fff1db;text-shadow:0 1px 0 rgba(56,20,74,.72)}
.case-btn.peeked .case-shell{box-shadow:0 0 0 2px rgba(144,230,255,.56),0 18px 26px rgba(0,0,0,.44)}
.case-btn.peeked .case-label{font-size:16px}

/* Luxurious previews */
.skin-preview.skin-classic{background:linear-gradient(145deg,#fff6de,#c68d36 32%,#2b180c 67%,#f8ddb0)}
.skin-preview.skin-ruby{background:linear-gradient(145deg,#fff0de,#d17f59 18%,#7e1f25 54%,#ffd4a6)}
.skin-preview.skin-emerald{background:linear-gradient(145deg,#fbffea,#7cb995 18%,#155a45 56%,#ffe0ae)}
.skin-preview.skin-midnight{background:linear-gradient(145deg,#f8fbff,#92a2bc 18%,#182234 56%,#e7cfa5)}
.skin-preview.skin-royal{background:linear-gradient(145deg,#fff5e8,#d3a8fb 18%,#5d3978 56%,#ffd28b)}
.skin-preview.skin-classic::before,.skin-preview.skin-ruby::before,.skin-preview.skin-emerald::before,.skin-preview.skin-midnight::before,.skin-preview.skin-royal::before{
  content:"";position:absolute;inset:7px;border-radius:12px;border:1px solid rgba(255,240,206,.55);box-shadow:inset 0 1px 0 rgba(255,248,232,.75), inset 0 -4px 0 rgba(0,0,0,.25)
}
.skin-preview.skin-classic::after,.skin-preview.skin-ruby::after,.skin-preview.skin-emerald::after,.skin-preview.skin-midnight::after,.skin-preview.skin-royal::after{
  content:"";position:absolute;left:50%;bottom:8px;transform:translateX(-50%);width:16px;height:12px;border-radius:4px;background:linear-gradient(#fff5d8,#aa7637)
}

/* table themes only affect game stage */
.stage-shell.theme-blackgold{background:linear-gradient(180deg,rgba(22,16,12,.90),rgba(9,7,6,.98)); box-shadow:0 28px 70px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,248,230,.05)}
.stage-shell.theme-crimson{background:linear-gradient(180deg,rgba(39,14,14,.94),rgba(12,6,7,.98)); box-shadow:0 28px 72px rgba(43,7,7,.48), inset 0 1px 0 rgba(255,236,225,.06)}
.stage-shell.theme-emerald{background:linear-gradient(180deg,rgba(10,28,22,.94),rgba(5,11,9,.98)); box-shadow:0 28px 72px rgba(3,28,20,.48), inset 0 1px 0 rgba(235,255,240,.06)}
.stage-shell.theme-neon{background:linear-gradient(180deg,rgba(10,16,32,.95),rgba(5,8,15,.99)); box-shadow:0 28px 80px rgba(11,24,63,.54), inset 0 1px 0 rgba(215,241,255,.08)}
.stage-shell.theme-royal{background:linear-gradient(180deg,rgba(28,14,40,.95),rgba(10,6,16,.99)); box-shadow:0 28px 80px rgba(42,16,72,.54), inset 0 1px 0 rgba(255,241,220,.08)}
.stage-shell.theme-crimson .announcer,.stage-shell.theme-crimson .money-plaque{border-color:rgba(238,170,140,.18)}
.stage-shell.theme-emerald .announcer,.stage-shell.theme-emerald .money-plaque{border-color:rgba(170,238,202,.18)}
.stage-shell.theme-neon .announcer,.stage-shell.theme-neon .money-plaque{border-color:rgba(126,222,255,.18)}
.stage-shell.theme-royal .announcer,.stage-shell.theme-royal .money-plaque{border-color:rgba(236,205,255,.18)}
.stage-shell.theme-neon .announcer{box-shadow:0 0 0 1px rgba(121,220,255,.12), inset 0 1px 0 rgba(240,250,255,.06)}

@media(max-width:1100px){.shop-layout-extended{grid-template-columns:1fr !important}}



/* === refined integrated shop & scene themes === */
.shop-shell{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:start}
.shop-content-stack{display:grid;gap:22px;min-width:0}
.shop-preview-panel{position:sticky;top:24px;overflow:hidden}
.shop-preview-pad{display:grid;gap:18px}
.shop-preview-scene{height:220px;border-radius:24px;border:1px solid rgba(255,230,190,.12);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));position:relative;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,250,240,.06),0 18px 40px rgba(0,0,0,.2)}
.shop-preview-scene::before,.shop-preview-scene::after{content:"";position:absolute;inset:0;pointer-events:none}
.shop-preview-copy{display:grid;gap:12px}
.shop-preview-topline{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.shop-preview-name{font-size:28px;font-weight:1000;color:#fff4df;line-height:1.05}
.shop-preview-meta{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.shop-preview-desc{margin:0;color:var(--muted);line-height:1.7}
.shop-summary-grid{display:grid;gap:12px}
.shop-banner-card .card-pad{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}
.shop-banner-pad h3{margin:10px 0 10px;font-size:30px}
.shop-banner-pad p{margin:0;max-width:760px;color:var(--muted);line-height:1.75}
.shop-badges{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.feature-pill,.shop-type-pill,.shop-state-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,230,190,.12);background:rgba(255,235,198,.06);font-size:12px;font-weight:900;letter-spacing:.4px;color:#ffe6b5}
.shop-state-pill.owned{color:#b9d7ff;border-color:rgba(153,202,255,.18);background:rgba(118,162,220,.10)}
.shop-state-pill.equipped{color:#a9f2c7;border-color:rgba(126,237,174,.22);background:rgba(89,165,118,.12)}
.shop-state-pill.preview{color:#ffe6a8;border-color:rgba(255,227,147,.24);background:rgba(170,129,57,.14)}
.shop-state-pill.locked{color:#ffd1c8;border-color:rgba(255,189,174,.18);background:rgba(166,88,74,.12)}
.shop-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.shop-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.shop-grid.theme-grid{grid-template-columns:1fr;gap:16px}
.shop-item{border:1px solid rgba(219,192,146,.10);border-radius:24px;padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));box-shadow:inset 0 1px 0 rgba(255,248,230,.04),0 14px 26px rgba(0,0,0,.14);display:grid;gap:14px;min-width:0}
.shop-item.owned{border-color:rgba(180,214,255,.14)}
.shop-item.equipped{border-color:rgba(168,242,199,.26);box-shadow:0 0 0 1px rgba(168,242,199,.10),inset 0 1px 0 rgba(255,248,230,.05),0 18px 30px rgba(0,0,0,.16)}
.shop-item.previewing{border-color:rgba(255,229,155,.24);box-shadow:0 0 0 1px rgba(255,229,155,.10),inset 0 1px 0 rgba(255,248,230,.05),0 18px 30px rgba(0,0,0,.16)}
.shop-item-head{display:flex;gap:12px;align-items:flex-start;margin:0}
.shop-head-copy{min-width:0;flex:1;display:grid;gap:6px}
.shop-item h4{margin:0;color:#fff2dd;font-size:20px;line-height:1.1}
.shop-item .shop-price{font-size:13px;color:#f4ddb4;font-weight:900}
.shop-item p{min-height:0;margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.shop-item-actions{display:flex;gap:10px;flex-wrap:wrap}
.shop-item .btn{width:auto;min-height:42px;flex:1}
.shop-item .btn.btn-ghost{flex:0 0 auto}
.shop-meta-row{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.shop-icon{width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-weight:1000;font-size:23px;background:linear-gradient(145deg,#f6e4c1,#886235);color:#2a1808;border:1px solid rgba(255,240,210,.24);box-shadow:inset 0 1px 0 rgba(255,248,230,.42),0 10px 20px rgba(0,0,0,.16);position:relative;overflow:hidden;flex:0 0 58px}
.theme-thumb{width:100%;height:120px;border-radius:18px;border:1px solid rgba(255,236,204,.10);position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02))}
.theme-thumb::before,.theme-thumb::after,.shop-preview-scene.theme-vault::before,.shop-preview-scene.theme-beach::before,.shop-preview-scene.theme-tokyo::before,.shop-preview-scene.theme-vegas::before,.shop-preview-scene.theme-aurora::before{content:"";position:absolute;inset:0;pointer-events:none}
.shop-type-pill{color:#f7ecd6}
.shop-subtitle{font-size:12px;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted-2);font-weight:800}
.shop-feature-row{display:flex;gap:8px;flex-wrap:wrap}
.shop-feature-row .feature-pill{padding:7px 10px;background:rgba(255,255,255,.04);color:#ead8ba}
.shop-item.compact .shop-item-head{align-items:center}
.shop-item.compact .shop-item-actions .btn{width:100%}
@media(max-width:1320px){.shop-shell{grid-template-columns:1fr}.shop-preview-panel{position:relative;top:auto}.shop-grid-2,.shop-grid-3{grid-template-columns:1fr}}

.case-stage{overflow:hidden !important}
.case-grid{padding-bottom:8px}

/* scene stage backgrounds */
.stage-shell.theme-vault{background:linear-gradient(180deg,rgba(22,16,12,.90),rgba(9,7,6,.98));box-shadow:0 28px 70px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,248,230,.05)}
.stage-shell.theme-beach{background:linear-gradient(180deg,rgba(12,29,36,.94),rgba(6,15,19,.98));box-shadow:0 28px 72px rgba(3,28,37,.50), inset 0 1px 0 rgba(233,250,255,.07)}
.stage-shell.theme-tokyo{background:linear-gradient(180deg,rgba(18,15,42,.95),rgba(8,8,19,.99));box-shadow:0 28px 80px rgba(15,20,68,.58), inset 0 1px 0 rgba(238,225,255,.06)}
.stage-shell.theme-vegas{background:linear-gradient(180deg,rgba(43,15,19,.95),rgba(14,8,9,.99));box-shadow:0 28px 80px rgba(63,16,17,.58), inset 0 1px 0 rgba(255,238,219,.07)}
.stage-shell.theme-aurora{background:linear-gradient(180deg,rgba(14,20,30,.96),rgba(7,10,17,.995));box-shadow:0 28px 82px rgba(16,28,58,.54), inset 0 1px 0 rgba(233,245,255,.08)}
.case-stage.scene-vault{background:radial-gradient(circle at 50% 0%, rgba(255,214,145,.10), transparent 24%),radial-gradient(circle at 50% 66%, rgba(115,64,28,.18), transparent 40%),linear-gradient(180deg,rgba(14,10,8,.74),rgba(6,4,3,.92))}
.case-stage.scene-beach{background:radial-gradient(circle at 50% 0%, rgba(255,226,154,.14), transparent 22%),radial-gradient(circle at 50% 65%, rgba(64,189,228,.18), transparent 42%),linear-gradient(180deg,rgba(7,31,39,.75),rgba(4,13,18,.94))}
.case-stage.scene-tokyo{background:radial-gradient(circle at 50% 0%, rgba(198,145,255,.18), transparent 20%),radial-gradient(circle at 50% 68%, rgba(75,211,255,.12), transparent 40%),linear-gradient(180deg,rgba(14,10,34,.78),rgba(7,8,18,.95))}
.case-stage.scene-vegas{background:radial-gradient(circle at 50% 0%, rgba(255,206,123,.18), transparent 20%),radial-gradient(circle at 50% 68%, rgba(255,111,111,.12), transparent 40%),linear-gradient(180deg,rgba(39,12,17,.78),rgba(13,7,8,.95))}
.case-stage.scene-aurora{background:radial-gradient(circle at 50% 0%, rgba(174,255,236,.18), transparent 22%),radial-gradient(circle at 50% 68%, rgba(116,150,255,.14), transparent 40%),linear-gradient(180deg,rgba(12,20,34,.80),rgba(7,10,17,.96))}
.case-stage.scene-beach::before{background:radial-gradient(circle,rgba(255,255,255,.10),rgba(72,199,255,.08) 42%,transparent 68%)}
.case-stage.scene-tokyo::before{background:radial-gradient(circle,rgba(247,99,255,.10),rgba(72,226,255,.08) 42%,transparent 68%)}
.case-stage.scene-vegas::before{background:radial-gradient(circle,rgba(255,218,137,.12),rgba(255,96,96,.08) 42%,transparent 68%)}
.case-stage.scene-aurora::before{background:radial-gradient(circle,rgba(206,255,239,.11),rgba(123,155,255,.08) 42%,transparent 68%)}

/* richer box designs */
.case-stage.skin-vault .case-shell{background:linear-gradient(145deg,#fff8e4 0%,#ebc880 12%,#5a3919 31%,#17100b 52%,#aa7532 70%,#fff2d2 100%)}
.case-stage.skin-beach .case-shell{border-color:rgba(239,246,245,.88);background:radial-gradient(circle at 18% 18%,rgba(255,249,231,.52),transparent 15%),linear-gradient(145deg,#fff8e9 0%,#d8f7ff 10%,#59c3d8 24%,#0f5468 56%,#7bd0d9 76%,#ffe0a5 100%);box-shadow:0 22px 30px rgba(0,0,0,.48), inset 0 2px 0 rgba(255,251,240,.75), inset 0 -8px 0 rgba(6,42,52,.50), 0 0 26px rgba(102,223,242,.16)}
.case-stage.skin-beach .case-shell::before{border-color:rgba(234,252,255,.86)}
.case-stage.skin-beach .case-shell::after{width:20px;height:15px;background:linear-gradient(180deg,#fff4d9,#58c7d7);box-shadow:0 0 15px rgba(91,204,228,.38)}
.case-stage.skin-beach .case-label{color:#f7feff;text-shadow:0 1px 0 rgba(14,54,64,.72)}
.case-stage.skin-tokyo .case-shell{border-color:rgba(224,229,255,.84);background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.16),transparent 14%),linear-gradient(145deg,#f7faff 0%,#8897ff 8%,#3c2d85 22%,#101528 54%,#2dd3ff 78%,#ffe4a9 100%);box-shadow:0 24px 32px rgba(0,0,0,.52), inset 0 2px 0 rgba(246,249,255,.70), inset 0 -8px 0 rgba(8,10,24,.58), 0 0 28px rgba(114,196,255,.22)}
.case-stage.skin-tokyo .case-shell::before{border-color:rgba(215,240,255,.78);border-style:dashed}
.case-stage.skin-tokyo .case-shell::after{width:22px;height:14px;background:linear-gradient(180deg,#f3f6ff,#66b9ff);box-shadow:0 0 14px rgba(102,185,255,.42)}
.case-stage.skin-tokyo .case-label{color:#f5f8ff;text-shadow:0 1px 0 rgba(12,18,40,.78)}
.case-stage.skin-vegas .case-shell{border-color:rgba(255,228,185,.86);background:radial-gradient(circle at 18% 16%,rgba(255,249,230,.28),transparent 14%),linear-gradient(145deg,#fff6e7 0%,#ffd98d 8%,#b63642 26%,#330910 56%,#ff8d53 76%,#ffe4a2 100%);box-shadow:0 24px 34px rgba(0,0,0,.54), inset 0 2px 0 rgba(255,248,241,.72), inset 0 -8px 0 rgba(51,8,12,.54), 0 0 30px rgba(255,154,88,.22)}
.case-stage.skin-vegas .case-shell::before{border-color:rgba(255,230,194,.86);background:radial-gradient(circle,rgba(255,226,153,.92) 0 2px,transparent 2px);background-size:10px 10px}
.case-stage.skin-vegas .case-shell::after{width:20px;height:15px;background:linear-gradient(180deg,#fff1d6,#ff9b4f);box-shadow:0 0 16px rgba(255,155,79,.42)}
.case-stage.skin-vegas .case-label{color:#fff3dd;text-shadow:0 1px 0 rgba(65,14,18,.78)}
.case-stage.skin-aurora .case-shell{border-color:rgba(230,246,255,.90);background:radial-gradient(circle at 19% 15%,rgba(255,255,255,.30),transparent 14%),linear-gradient(145deg,#ffffff 0%,#d7e5ff 9%,#65cdb4 22%,#1d3357 56%,#8ca5ff 76%,#fff0bf 100%);box-shadow:0 24px 36px rgba(0,0,0,.56), inset 0 2px 0 rgba(255,255,255,.74), inset 0 -8px 0 rgba(13,24,46,.56), 0 0 32px rgba(136,199,255,.24)}
.case-stage.skin-aurora .case-shell::before{border-color:rgba(235,249,255,.88)}
.case-stage.skin-aurora .case-shell::after{width:22px;height:16px;background:linear-gradient(180deg,#f9feff,#8fd5ff);box-shadow:0 0 16px rgba(143,213,255,.44)}
.case-stage.skin-aurora .case-label{color:#f5fdff;text-shadow:0 1px 0 rgba(14,25,47,.80)}

/* thumbnail / preview art */
.theme-thumb.theme-vault,.shop-preview-scene.theme-vault{background:radial-gradient(circle at 72% 18%, rgba(255,214,145,.16), transparent 12%),linear-gradient(180deg,#2b1e15 0%,#0f0b08 100%)}
.theme-thumb.theme-vault::before,.shop-preview-scene.theme-vault::before{background:radial-gradient(circle at 50% 55%,rgba(255,216,145,.18),transparent 36%),linear-gradient(180deg,transparent 54%,rgba(0,0,0,.28) 100%)}
.theme-thumb.theme-vault::after,.shop-preview-scene.theme-vault::after{background:linear-gradient(90deg,transparent 0 18%,rgba(255,224,174,.06) 18% 19%,transparent 19% 81%,rgba(255,224,174,.06) 81% 82%,transparent 82%)}
.theme-thumb.theme-beach,.shop-preview-scene.theme-beach{background:radial-gradient(circle at 78% 18%, rgba(255,226,146,.95), transparent 10%),linear-gradient(180deg,#7de0ff 0%,#20b5da 42%,#0a4b61 100%)}
.theme-thumb.theme-beach::before,.shop-preview-scene.theme-beach::before{background:linear-gradient(180deg,transparent 60%,rgba(255,255,255,.25) 61%,transparent 64%),radial-gradient(circle at 12% 85%,rgba(0,0,0,.14),transparent 14%),radial-gradient(circle at 80% 78%,rgba(255,255,255,.12) 0 8%,transparent 8% 24%,rgba(255,255,255,.08) 24% 26%,transparent 26%)}
.theme-thumb.theme-beach::after,.shop-preview-scene.theme-beach::after{background:linear-gradient(180deg,transparent 0 54%,rgba(255,245,224,.12) 54% 100%)}
.theme-thumb.theme-tokyo,.shop-preview-scene.theme-tokyo{background:linear-gradient(135deg,#130c31 0%,#251f63 34%,#09192f 100%)}
.theme-thumb.theme-tokyo::before,.shop-preview-scene.theme-tokyo::before{background:linear-gradient(90deg,transparent 14%,rgba(87,227,255,.18) 14.5%,transparent 15.5%),linear-gradient(180deg,transparent 28%,rgba(255,74,202,.18) 28.5%,transparent 29.5%),radial-gradient(circle at 75% 25%,rgba(255,64,185,.35),transparent 14%),radial-gradient(circle at 25% 65%,rgba(85,227,255,.22),transparent 18%)}
.theme-thumb.theme-tokyo::after,.shop-preview-scene.theme-tokyo::after{background:linear-gradient(180deg,transparent 70%,rgba(0,0,0,.24) 100%)}
.theme-thumb.theme-vegas,.shop-preview-scene.theme-vegas{background:linear-gradient(180deg,#651219 0%,#23060a 100%)}
.theme-thumb.theme-vegas::before,.shop-preview-scene.theme-vegas::before{background:repeating-linear-gradient(90deg,rgba(255,226,154,.82) 0 6px,transparent 6px 14px);mask:linear-gradient(180deg,transparent 0 22%,#000 22% 80%,transparent 80%)}
.theme-thumb.theme-vegas::after,.shop-preview-scene.theme-vegas::after{background:radial-gradient(circle at 24% 18%,rgba(255,228,157,.42),transparent 14%),linear-gradient(180deg,transparent 70%,rgba(0,0,0,.22) 100%)}
.theme-thumb.theme-aurora,.shop-preview-scene.theme-aurora{background:linear-gradient(135deg,#121d33 0%,#173756 36%,#0c1226 100%)}
.theme-thumb.theme-aurora::before,.shop-preview-scene.theme-aurora::before{background:radial-gradient(circle at 72% 18%,rgba(201,255,243,.20),transparent 12%),radial-gradient(circle at 24% 26%,rgba(121,145,255,.18),transparent 18%),linear-gradient(90deg,transparent 0,rgba(118,255,208,.10) 40%,transparent 70%)}
.theme-thumb.theme-aurora::after,.shop-preview-scene.theme-aurora::after{background:linear-gradient(180deg,transparent 72%,rgba(0,0,0,.24) 100%)}



/* === battle readability fix === */
.case-stage{padding:18px 16px 14px !important}
.case-grid{grid-template-columns:repeat(7,82px) !important;gap:14px !important;justify-content:center !important;padding:16px 0 8px !important}
.case-btn{height:78px !important}
.case-shell{border-radius:19px !important}
.case-label{display:flex;align-items:center;justify-content:center;padding:4px;font-size:24px !important;line-height:1.02;text-align:center;font-weight:1000}
.case-btn.player .case-label,.case-btn.ai .case-label{font-size:24px !important}
.case-btn.peeked .case-label,.case-btn.opened .case-label{font-size:14px !important}
.case-amount-num{font-size:15px;font-weight:1000;letter-spacing:.1px;line-height:1.0;color:#fff8ea;text-shadow:0 1px 0 rgba(0,0,0,.45),0 0 10px rgba(255,220,155,.22)}
.case-btn.good .case-amount-num{color:#b8ffd7;text-shadow:0 0 12px rgba(123,242,186,.24)}
.case-btn.bad .case-amount-num{color:#ffd3da;text-shadow:0 0 12px rgba(255,126,142,.24)}
.money-pill{position:relative;overflow:hidden;transition:.18s ease;background:linear-gradient(180deg,rgba(34,79,63,.92),rgba(15,39,29,.98)) !important;border-color:rgba(128,220,180,.18) !important;color:#dbffee !important;box-shadow:inset 0 1px 0 rgba(231,255,246,.06)}
.money-pill.high{background:linear-gradient(180deg,rgba(116,74,28,.92),rgba(54,31,12,.98)) !important;border-color:rgba(255,201,126,.18) !important;color:#ffe7c3 !important}
.money-pill.gone{opacity:1 !important;filter:none !important;text-decoration:none !important;background:linear-gradient(180deg,rgba(109,38,44,.88),rgba(47,18,22,.98)) !important;border-color:rgba(255,142,160,.26) !important;color:#ffd6dd !important;box-shadow:inset 0 1px 0 rgba(255,235,238,.06),0 0 0 1px rgba(255,112,136,.08)}
.money-pill.gone.high{background:linear-gradient(180deg,rgba(96,43,30,.90),rgba(46,20,16,.98)) !important;color:#ffe1c5 !important;border-color:rgba(255,179,118,.24) !important}
.money-pill.gone::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 6px,transparent 6px 12px);opacity:.24}
.money-pill.gone::after{content:"×";position:absolute;right:8px;top:3px;font-size:14px;line-height:1;font-weight:1000;color:#fff0d6}
.plaque-title{margin-bottom:16px !important}
@media(max-width:1320px){.case-grid{grid-template-columns:repeat(6,78px) !important;gap:12px !important}.case-btn{height:74px !important}.case-label{font-size:22px !important}}
@media(max-width:760px){.case-grid{grid-template-columns:repeat(4,74px) !important;gap:12px !important}.case-btn{height:64px !important}.case-label{font-size:20px !important}.case-btn.peeked .case-label,.case-btn.opened .case-label{font-size:12px !important}.case-amount-num{font-size:13px}}


/* === battle layout v3: full cases + compact hints + unified value colors === */
.game-view{
  padding:12px 16px 10px !important;
  overflow:hidden !important;
}
.table-layout{
  height:100% !important;
  grid-template-columns:218px minmax(0,1fr) 218px !important;
  gap:14px !important;
  min-height:0 !important;
}
.money-plaque{
  padding:14px 12px !important;
  border-radius:24px !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.money-plaque::before{
  inset:9px !important;
  border-radius:18px !important;
}
.plaque-title{
  margin-bottom:10px !important;
  justify-content:center !important;
  padding-left:0 !important;
}
.money-list{
  gap:6px !important;
}
.money-pill,
.money-pill.high{
  height:31px !important;
  border-radius:999px !important;
  font-size:12px !important;
  color:#ffe3b0 !important;
  background:
    linear-gradient(180deg,rgba(93,63,27,.94),rgba(32,22,12,.98)) !important;
  border-color:rgba(255,204,128,.22) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,244,218,.08),
    0 0 0 1px rgba(255,195,112,.04) !important;
}
.money-pill.gone,
.money-pill.gone.high{
  opacity:1 !important;
  filter:none !important;
  text-decoration:none !important;
  color:#ffd4dc !important;
  background:
    linear-gradient(180deg,rgba(105,38,45,.92),rgba(42,17,21,.98)) !important;
  border-color:rgba(255,142,160,.28) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,235,238,.06),
    0 0 0 1px rgba(255,112,136,.08) !important;
}
.money-pill.gone::before{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 6px,transparent 6px 12px);
  opacity:.22;
}
.money-pill.gone::after{
  content:"×";
  position:absolute;
  right:8px;
  top:2px;
  font-size:14px;
  line-height:1;
  font-weight:1000;
  color:#fff0d6;
}

.stage-shell{
  grid-template-rows:auto auto auto minmax(0,1fr) auto auto !important;
  gap:9px !important;
  min-height:0 !important;
  height:100% !important;
}
.stage-head{
  padding:10px 14px !important;
  border-radius:18px !important;
  min-height:46px !important;
}
.stage-status{
  padding:7px !important;
  gap:7px !important;
}
.status-chip{
  padding:7px 8px !important;
  border-radius:13px !important;
}
.status-chip label{
  font-size:10px !important;
}
.status-chip strong{
  margin-top:3px !important;
  font-size:13px !important;
}
.ai-banner{
  padding:8px 12px !important;
  border-radius:14px !important;
  font-size:12px !important;
  line-height:1.35 !important;
}
.case-stage{
  padding:14px 14px 10px !important;
  border-radius:26px !important;
  overflow:hidden !important;
  min-height:0 !important;
}
.case-stage::after{
  inset:12px !important;
  border-radius:18px !important;
}
.case-stage::before{
  width:80% !important;
  height:46% !important;
}
.case-grid{
  display:grid !important;
  grid-template-columns:repeat(7, minmax(74px, 82px)) !important;
  gap:11px 12px !important;
  justify-content:center !important;
  align-content:center !important;
  padding:12px 0 6px !important;
  height:100% !important;
  min-height:0 !important;
}
.case-btn{
  height:70px !important;
  min-height:0 !important;
}
.case-shell{
  border-radius:18px !important;
}
.case-shell::before{
  left:20px !important;
  right:20px !important;
  top:-7px !important;
  height:15px !important;
  border-width:3px !important;
}
.case-shell::after{
  top:29px !important;
  width:16px !important;
  height:12px !important;
}
.case-label{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:3px !important;
  font-size:22px !important;
  line-height:1.02 !important;
  text-align:center !important;
  font-weight:1000 !important;
}
.case-btn.player .case-label,
.case-btn.ai .case-label{
  font-size:22px !important;
}
.case-btn.peeked .case-label,
.case-btn.opened .case-label{
  font-size:13px !important;
}
.case-amount-num{
  font-size:13px !important;
  font-weight:1000 !important;
  letter-spacing:.1px !important;
  line-height:1 !important;
  color:#fff8ea !important;
  text-shadow:0 1px 0 rgba(0,0,0,.45),0 0 10px rgba(255,220,155,.22) !important;
}
.case-btn.good .case-amount-num{
  color:#b8ffd7 !important;
}
.case-btn.bad .case-amount-num{
  color:#ffd3da !important;
}
.announcer{
  min-height:44px !important;
  max-height:58px !important;
  padding:9px 12px !important;
  border-radius:14px !important;
  font-size:12px !important;
  line-height:1.35 !important;
  overflow:hidden !important;
}
.announcer br{
  display:none !important;
}
.announcer span{
  margin-left:8px !important;
}
.control-deck{
  min-height:44px !important;
  padding:7px 10px !important;
  border-radius:14px !important;
  gap:8px !important;
}
.control-deck .btn,
.control-deck .input{
  min-height:38px !important;
  height:38px !important;
  font-size:12px !important;
  padding:0 14px !important;
}
.item-deck{
  min-height:44px !important;
  padding:7px 10px !important;
  border-radius:14px !important;
  gap:8px !important;
}
.item-status{
  font-size:12px !important;
}
.item-deck .btn{
  min-height:36px !important;
  height:36px !important;
  font-size:12px !important;
  padding:0 13px !important;
}

@media(max-width:1320px){
  .table-layout{
    grid-template-columns:1fr !important;
    height:auto !important;
  }
  .money-plaque{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .case-grid{
    grid-template-columns:repeat(6, minmax(72px, 82px)) !important;
  }
}

/* === PVE/PVP rule notes and final compact PVP actions === */
#view-setup .setup-rule-panel{
  grid-column:1 / -1;
  min-width:0;
  border-radius:18px;
  border:1px solid rgba(255,226,180,.18);
  background:
    radial-gradient(circle at 88% 0,rgba(255,226,180,.10),transparent 30%),
    linear-gradient(180deg,rgba(27,21,15,.72),rgba(8,7,6,.78));
  box-shadow:inset 0 1px 0 rgba(255,248,230,.07),0 14px 30px rgba(0,0,0,.18);
  padding:14px 16px;
}
#view-setup .setup-rule-panel h3{
  margin:3px 0 10px;
  font-size:18px;
  line-height:1.2;
}
#view-setup .setup-rule-panel ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px 14px;
}
#view-setup .setup-rule-panel li{
  position:relative;
  padding-left:13px;
  color:rgba(244,235,220,.82);
  font-size:12.5px;
  line-height:1.55;
}
#view-setup .setup-rule-panel li::before{
  content:"";
  position:absolute;
  left:0;
  top:.68em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:linear-gradient(180deg,#fff0c5,#d5a55d);
  box-shadow:0 0 10px rgba(223,181,104,.38);
}
#view-setup .setup-rule-panel b{
  color:#fff1d0;
}
#view-setup .rooms-grid:not(.pvp-entry-grid){
  grid-template-rows:auto repeat(2,var(--setup-row-h)) !important;
  grid-auto-rows:var(--setup-row-h) !important;
}
#view-setup .pvp-console .setup-rule-panel{
  grid-column:auto;
}
#view-setup .pvp-ready-actions{
  justify-content:center !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
#view-setup .pvp-ready-actions .btn{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:180px !important;
  max-width:260px !important;
  height:40px !important;
  min-height:40px !important;
  padding:0 18px !important;
}
#view-setup .pvp-flow-actions .btn:not(.pvp-secondary-action){
  flex:0 0 auto !important;
  width:auto !important;
  min-width:180px !important;
  max-width:260px !important;
}
@media(max-width:900px){
  #view-setup .setup-rule-panel ul{
    grid-template-columns:1fr;
  }
  #view-setup .rooms-grid:not(.pvp-entry-grid){
    grid-template-rows:none !important;
    grid-auto-rows:auto !important;
  }
}

@media(max-width:760px){
  .game-view{
    padding:10px !important;
  }
  .case-grid{
    grid-template-columns:repeat(4, 72px) !important;
    gap:10px !important;
  }
  .case-btn{
    height:62px !important;
  }
  .case-label{
    font-size:19px !important;
  }
  .case-btn.peeked .case-label,
  .case-btn.opened .case-label{
    font-size:11px !important;
  }
  .case-amount-num{
    font-size:11px !important;
  }
}


/* === battle refinement v4: remove gap, bigger side values, clearer opened amounts, neutralize skins === */
.game-view{padding:10px 14px 8px !important;overflow:hidden !important}
.table-layout{grid-template-columns:228px minmax(0,1fr) 228px !important;gap:14px !important;height:100% !important;min-height:0 !important}
.money-plaque{padding:14px 12px !important;border-radius:24px !important}
.money-list{gap:7px !important}
.money-pill,.money-pill.high{height:35px !important;font-size:13px !important;font-weight:1000 !important;letter-spacing:.1px !important}
.stage-shell{grid-template-rows:auto auto auto auto auto auto !important;gap:8px !important;align-content:start !important}
.stage-head{padding:10px 14px !important;min-height:44px !important}
.stage-status{padding:7px !important;gap:7px !important}
.status-chip{padding:7px 8px !important}
.ai-banner{padding:8px 12px !important;min-height:0 !important}
.case-stage{padding:12px 14px 8px !important;overflow:hidden !important;min-height:0 !important;height:auto !important}
.case-grid{height:auto !important;min-height:0 !important;grid-template-columns:repeat(7, minmax(74px, 80px)) !important;gap:11px 12px !important;padding:6px 0 2px !important;align-content:start !important;justify-content:center !important}
.case-btn{height:70px !important}
.case-label{font-size:22px !important}
.case-btn.opened .case-shell{background:linear-gradient(180deg,#25180f,#0c0907) !important;border-color:rgba(255,226,180,.20) !important;box-shadow:0 12px 22px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,248,230,.04), 0 0 0 1px rgba(255,214,145,.06) !important}
.case-btn.opened .case-label{font-size:16px !important;color:#fff3db !important;text-shadow:0 0 12px rgba(255,220,155,.20),0 1px 0 rgba(0,0,0,.45) !important;line-height:1 !important}
.case-btn.opened .case-label .case-amount-num{font-size:16px !important;font-weight:1000 !important;color:inherit !important}
.case-btn.good.opened .case-label,.case-btn.good.opened .case-label .case-amount-num{color:#c4ffe0 !important;text-shadow:0 0 12px rgba(123,242,186,.22),0 1px 0 rgba(0,0,0,.45) !important}
.case-btn.bad.opened .case-label,.case-btn.bad.opened .case-label .case-amount-num{color:#ffd4db !important;text-shadow:0 0 12px rgba(255,126,142,.20),0 1px 0 rgba(0,0,0,.45) !important}
.announcer{min-height:42px !important;max-height:none !important;padding:8px 12px !important;font-size:12px !important;line-height:1.35 !important}
.control-deck,.item-deck{min-height:42px !important;padding:7px 10px !important;border-radius:14px !important}
.control-deck .btn,.control-deck .input,.item-deck .btn{min-height:36px !important;height:36px !important;font-size:12px !important}
/* neutralize purchased skin differences in battle to prioritize readability */
.case-stage[class*='skin-'] .case-shell{border-color:rgba(247,232,201,.84) !important;background:linear-gradient(145deg,#f6e4c1 0%,#d8b278 15%,#79522a 38%,#17100b 58%,#a17239 78%,#f3dfbb 100%) !important;box-shadow:0 18px 24px rgba(0,0,0,.42), inset 0 2px 0 rgba(255,249,235,.72), inset 0 -6px 0 rgba(0,0,0,.46), 0 0 18px rgba(215,187,141,.06) !important}
.case-stage[class*='skin-'] .case-shell::before{border-color:rgba(247,232,201,.80) !important;left:20px !important;right:20px !important;top:-7px !important;height:15px !important;border-width:3px !important}
.case-stage[class*='skin-'] .case-shell::after{background:linear-gradient(#fff5dd,#8a6432) !important;top:29px !important;width:16px !important;height:12px !important;box-shadow:none !important}
.case-stage[class*='skin-'] .case-label{color:#251507 !important;text-shadow:0 1px 0 rgba(255,248,228,.6) !important}
.case-stage[class*='skin-'] .case-btn.player .case-shell{background:linear-gradient(145deg,#fbefd7,#f0cf95 26%,#bf8637 58%,#f6e7c9) !important;box-shadow:0 0 28px rgba(215,187,141,.22),0 18px 24px rgba(0,0,0,.42) !important}
.case-stage[class*='skin-'] .case-btn.ai .case-shell{outline:2px solid rgba(219,192,146,.54) !important}
@media(max-width:1320px){.table-layout{grid-template-columns:1fr !important;height:auto !important}.case-grid{grid-template-columns:repeat(6, minmax(72px, 80px)) !important}}
@media(max-width:760px){.game-view{padding:8px !important}.case-grid{grid-template-columns:repeat(4,72px) !important;gap:10px !important}.case-btn{height:62px !important}.money-pill,.money-pill.high{height:32px !important;font-size:12px !important}.case-btn.opened .case-label,.case-btn.opened .case-label .case-amount-num{font-size:13px !important}}


/* === battle refinement v5: neutral opened case + adaptive amount + lock SFX support === */
.case-stage .case-btn.opened .case-shell{
  border-color:rgba(255,231,192,.26) !important;
  background:linear-gradient(180deg,#1b140f 0%, #0b0806 100%) !important;
  box-shadow:0 12px 22px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,248,230,.05), 0 0 0 1px rgba(255,214,145,.06) !important;
}
.case-stage .case-btn.opened .case-shell::before{
  border-color:rgba(255,231,192,.22) !important;
  background:none !important;
}
.case-stage .case-btn.opened .case-shell::after{
  background:linear-gradient(180deg,#f7e9cb,#8e6936) !important;
  box-shadow:none !important;
}
.case-stage .case-btn.opened.player .case-shell,
.case-stage .case-btn.opened.ai .case-shell,
.case-stage[class*='skin-'] .case-btn.opened .case-shell,
.case-stage[class*='skin-'] .case-btn.opened.player .case-shell,
.case-stage[class*='skin-'] .case-btn.opened.ai .case-shell{
  border-color:rgba(255,231,192,.26) !important;
  background:linear-gradient(180deg,#1b140f 0%, #0b0806 100%) !important;
  box-shadow:0 12px 22px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,248,230,.05), 0 0 0 1px rgba(255,214,145,.06) !important;
  outline:none !important;
}
.case-btn.opened .case-label,
.case-btn.peeked .case-label{
  padding:0 4px !important;
  font-size:14px !important;
}
.case-amount-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:100%;
  min-width:0;
  padding:4px 6px;
  border-radius:10px;
  border:1px solid rgba(255,229,184,.16);
  background:linear-gradient(180deg,rgba(255,240,208,.10),rgba(255,240,208,.04));
  white-space:nowrap;
  overflow:hidden;
  text-overflow:clip;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:1000 !important;
  letter-spacing:0 !important;
  color:#fff6e6 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.48),0 0 12px rgba(255,216,145,.22) !important;
}
.case-amount-num.compact{font-size:13px !important;padding:4px 4px}
.case-amount-num.tiny{font-size:11px !important;padding:4px 3px;letter-spacing:-.2px !important}
.case-btn.good .case-amount-num{color:#c9ffe3 !important;border-color:rgba(143,241,194,.18) !important;background:linear-gradient(180deg,rgba(145,255,207,.10),rgba(145,255,207,.04)) !important;text-shadow:0 0 12px rgba(123,242,186,.22),0 1px 0 rgba(0,0,0,.45) !important}
.case-btn.bad .case-amount-num{color:#ffd8dd !important;border-color:rgba(255,163,174,.18) !important;background:linear-gradient(180deg,rgba(255,146,159,.10),rgba(255,146,159,.04)) !important;text-shadow:0 0 12px rgba(255,126,142,.20),0 1px 0 rgba(0,0,0,.45) !important}
@media(max-width:760px){
  .case-amount-num{font-size:13px !important}
  .case-amount-num.compact{font-size:11px !important}
  .case-amount-num.tiny{font-size:10px !important}
}

/* === visual art direction v1: premium stage pass === */
:root{
  --bg:#060504;
  --bg2:#11100d;
  --panel:#181410;
  --panel-soft:#211a14;
  --panel-ink:#0c0a08;
  --gold:#e8c886;
  --gold-2:#b98a45;
  --gold-3:#7b5429;
  --ivory:#f8f0df;
  --muted:#b9aa91;
  --muted-2:#8f806a;
  --line:rgba(234,204,151,.13);
  --line-strong:rgba(234,204,151,.34);
  --shadow-xl:0 42px 96px rgba(0,0,0,.58);
  --shadow-lg:0 22px 52px rgba(0,0,0,.42);
  --shadow-md:0 12px 24px rgba(0,0,0,.30);
  --radius-xl:22px;
  --radius-lg:16px;
  --radius-md:12px;
}
body{
  font-variant-numeric:tabular-nums;
  background:
    radial-gradient(circle at 16% 10%, rgba(232,200,134,.10), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(150,75,42,.08), transparent 22%),
    linear-gradient(135deg,#050403 0%,#0b0a08 38%,#15100b 70%,#040403 100%) !important;
}
body::before{
  background:
    radial-gradient(circle at 50% 50%, transparent 0 62%, rgba(0,0,0,.54) 100%),
    linear-gradient(180deg, rgba(255,246,222,.045), transparent 18%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.012) 0 1px, transparent 1px 7px) !important;
  opacity:.7 !important;
}
#app{
  grid-template-rows:78px minmax(0,1fr) 56px !important;
}
.topbar{
  padding:12px 22px !important;
  gap:18px !important;
  background:linear-gradient(180deg,rgba(24,20,16,.96),rgba(9,8,7,.92)) !important;
  border-bottom:1px solid rgba(234,204,151,.16) !important;
}
.logo-emblem{
  width:48px !important;
  height:48px !important;
  border-radius:14px !important;
}
.logo-title{
  font-size:24px !important;
  letter-spacing:1.1px !important;
}
.logo-sub{
  color:var(--muted-2) !important;
  letter-spacing:2px !important;
}
.main-nav{
  gap:8px !important;
}
.nav-btn{
  min-width:96px !important;
  height:42px !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,rgba(44,35,25,.82),rgba(14,11,9,.98)) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.05),0 10px 18px rgba(0,0,0,.22) !important;
}
.nav-btn.active,
.nav-btn:hover{
  background:linear-gradient(180deg,rgba(176,126,62,.56),rgba(28,19,12,.98)) !important;
  box-shadow:inset 0 1px 0 rgba(255,250,230,.10),0 12px 22px rgba(0,0,0,.28),0 0 0 1px rgba(232,200,134,.12) !important;
}
.meta-pill{
  min-height:40px !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,rgba(36,29,21,.84),rgba(11,9,8,.96)) !important;
}
.view{
  padding:24px 28px 22px !important;
}
.screen-head{
  margin-bottom:18px !important;
}
.screen-title{
  font-size:38px !important;
  line-height:1.05 !important;
}
.screen-desc{
  max-width:840px !important;
  color:#c7b89f !important;
  line-height:1.62 !important;
}
.card{
  border-radius:22px !important;
  border-color:rgba(234,204,151,.14) !important;
  background:
    linear-gradient(180deg,rgba(255,248,226,.035),transparent 18%),
    radial-gradient(circle at 86% 12%,rgba(232,200,134,.07),transparent 24%),
    linear-gradient(180deg,rgba(31,25,19,.98),rgba(9,7,6,.99)) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,248,230,.045) !important;
}
.card::before{
  inset:10px !important;
  border-radius:16px !important;
}
.card-pad{
  padding:22px !important;
}
.btn{
  min-height:44px !important;
  border-radius:12px !important;
  padding:0 18px !important;
}
.btn-primary{
  background:linear-gradient(180deg,#f2dfb7 0%,#c79858 46%,#765126 100%) !important;
  color:#221407 !important;
}
.btn-secondary,
.btn-ghost{
  background:linear-gradient(180deg,rgba(52,40,29,.94),rgba(14,11,9,.98)) !important;
  border-color:rgba(234,204,151,.16) !important;
  color:#f6ebd8 !important;
}
.hero-layout{
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr) !important;
  gap:20px !important;
}
.hero-main{
  min-height:500px !important;
  justify-content:flex-end !important;
  background:
    radial-gradient(circle at 72% 20%, rgba(232,200,134,.16), transparent 24%),
    linear-gradient(180deg,rgba(40,31,22,.90),rgba(11,8,6,.99)) !important;
}
.hero-main h2{
  font-size:48px !important;
  max-width:860px !important;
}
.hero-main p{
  color:#d4c6ae !important;
  max-width:820px !important;
}
.hero-stats{
  gap:10px !important;
}
.stat-shell,
.status-chip,
.summary-card{
  border-radius:14px !important;
  border:1px solid rgba(234,204,151,.11) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018)) !important;
}
.stat-shell strong{
  font-size:25px !important;
}
.feature-grid{
  gap:14px !important;
}
.feature{
  min-height:154px !important;
}
.kicker{
  color:#e5c37f !important;
}
.setup-grid{
  grid-template-columns:360px minmax(0,1fr) !important;
  gap:20px !important;
}
.rooms-grid{
  gap:16px !important;
  grid-template-rows:repeat(2, minmax(260px,1fr)) !important;
}
.mode-card,
.room-card{
  border-radius:18px !important;
}
.mode-card:hover,
.room-card:hover{
  transform:translateY(-2px) !important;
}
.room-card .card-pad{
  padding:18px !important;
}
.room-line{
  background:rgba(255,255,255,.035) !important;
  border:1px solid rgba(234,204,151,.08) !important;
}
.shop-shell{
  grid-template-columns:340px minmax(0,1fr) !important;
  gap:20px !important;
}
.shop-preview-panel{
  top:18px !important;
}
.shop-preview-scene,
.theme-thumb{
  border-radius:16px !important;
  border-color:rgba(234,204,151,.14) !important;
}
.shop-preview-scene{
  height:198px !important;
}
.shop-preview-name{
  font-size:24px !important;
}
.shop-item{
  border-radius:16px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018)) !important;
  border-color:rgba(234,204,151,.12) !important;
}
.shop-item:hover{
  border-color:rgba(234,204,151,.28) !important;
  transform:translateY(-2px) !important;
}
.shop-icon{
  border-radius:14px !important;
}
.feature-pill,
.shop-state-pill,
.shop-type-pill,
.mode-badge,
.room-badge,
.title-badge{
  border-radius:999px !important;
  border-color:rgba(234,204,151,.16) !important;
  background:rgba(232,200,134,.075) !important;
}
.game-view{
  padding:12px 16px 10px !important;
}
.table-layout{
  grid-template-columns:220px minmax(0,1fr) 220px !important;
  gap:12px !important;
}
.money-plaque{
  border-radius:18px !important;
  background:linear-gradient(180deg,rgba(29,23,17,.98),rgba(8,7,6,.99)) !important;
}
.money-plaque::before{
  border-radius:14px !important;
}
.money-pill,
.money-pill.high{
  height:34px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.018)) !important;
}
.stage-shell{
  border-radius:22px !important;
  padding:10px !important;
  background:
    radial-gradient(circle at 50% 0%,rgba(232,200,134,.08),transparent 30%),
    linear-gradient(180deg,rgba(20,16,12,.94),rgba(7,6,5,.99)) !important;
  box-shadow:0 32px 74px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,248,230,.055) !important;
}
.stage-head,
.stage-status,
.ai-banner,
.announcer,
.control-deck,
.item-deck{
  border-radius:14px !important;
  border-color:rgba(234,204,151,.12) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018)) !important;
}
.stage-head{
  min-height:46px !important;
}
.stage-live{
  color:#f4db9e !important;
}
.mini-switch{
  height:34px !important;
  border-radius:10px !important;
}
.case-stage{
  border-radius:18px !important;
  padding:14px 16px 10px !important;
  background:
    radial-gradient(circle at 50% 5%,rgba(232,200,134,.13),transparent 28%),
    radial-gradient(circle at 50% 68%,rgba(120,75,32,.18),transparent 42%),
    linear-gradient(180deg,rgba(12,10,8,.82),rgba(5,4,3,.96)) !important;
}
.case-stage::before{
  opacity:.78 !important;
  filter:blur(6px) !important;
}
.case-grid{
  grid-template-columns:repeat(7,minmax(72px,80px)) !important;
  gap:12px !important;
}
.case-btn{
  height:68px !important;
}
.case-shell{
  border-radius:14px !important;
}
.case-label{
  font-size:21px !important;
}
.announcer{
  color:#eadcc6 !important;
}
.footerbar{
  min-height:56px !important;
  padding:0 22px !important;
  background:linear-gradient(180deg,rgba(10,8,7,.92),rgba(17,13,10,.96)) !important;
}
.modal-card{
  border-radius:22px !important;
}
.offer-amount{
  font-size:56px !important;
}
@media(max-width:1320px){
  #app{grid-template-rows:auto 1fr auto !important}
  .topbar{grid-template-columns:1fr !important}
  .hero-layout,
  .setup-grid,
  .shop-shell,
  .table-layout{
    grid-template-columns:1fr !important;
  }
  .hero-main{min-height:430px !important}
  .money-plaque{display:grid !important}
  .table-layout .stage-shell{order:1 !important}
  .table-layout .money-plaque{order:2 !important}
  .table-layout .money-plaque:last-child{order:3 !important}
}
@media(max-width:900px){
  .view{padding:18px 14px !important}
  .screen-title{font-size:30px !important}
  .hero-main h2{font-size:36px !important}
  .hero-stats,
  .feature-grid,
  .rooms-grid,
  .shop-grid-2,
  .shop-grid-3{
    grid-template-columns:1fr !important;
  }
  .rooms-grid{grid-template-rows:none !important}
  .top-meta{flex-wrap:wrap !important}
}
@media(max-width:760px){
  .main-nav{flex-wrap:wrap !important;overflow:visible !important}
  .nav-btn{min-width:88px !important}
  .case-grid{grid-template-columns:repeat(4,70px) !important}
  .footerbar{display:block !important;padding:10px 14px !important}
}

/* === compact PVP live table: keep player info off the case area === */
#view-play .pvp-live-panel{
  display:block !important;
  min-height:0 !important;
  padding:8px 10px !important;
  border-radius:14px !important;
}
#view-play .pvp-live-panel.hidden{
  display:none !important;
}
#view-play .pvp-live-compact{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(150px,.72fr) minmax(0,1fr);
  gap:8px;
  align-items:stretch;
}
#view-play .pvp-live-seat,
#view-play .pvp-live-state{
  min-width:0;
  min-height:44px;
  display:grid;
  align-content:center;
  gap:3px;
  padding:7px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.18);
}
#view-play .pvp-live-state{
  text-align:center;
  border-color:rgba(128,210,255,.20);
  background:rgba(128,210,255,.08);
}
#view-play .pvp-live-seat span,
#view-play .pvp-live-seat em,
#view-play .pvp-live-state span,
#view-play .pvp-live-state em{
  overflow:hidden;
  color:var(--muted);
  font-size:11px;
  line-height:1.18;
  font-style:normal;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#view-play .pvp-live-seat strong,
#view-play .pvp-live-state strong{
  overflow:hidden;
  color:#fff3d9;
  font-size:13px;
  line-height:1.12;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media(max-width:760px){
  #view-play .pvp-live-panel{
    padding:7px !important;
  }
  #view-play .pvp-live-compact{
    grid-template-columns:1fr;
    gap:6px;
  }
  #view-play .pvp-live-seat,
  #view-play .pvp-live-state{
    min-height:38px;
    padding:6px 9px;
  }
}

/* === case amount fit pass: keep million values inside cases === */
.case-btn.opened .case-label,
.case-btn.peeked .case-label{
  inset:0 !important;
  padding:0 5px !important;
  font-size:12px !important;
  line-height:1 !important;
  overflow:hidden !important;
}
.case-amount-num{
  box-sizing:border-box !important;
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:4px 4px !important;
  border-radius:8px !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-align:center !important;
  text-overflow:clip !important;
  font-family:"Arial Narrow","Roboto Condensed","Segoe UI",Arial,sans-serif !important;
  font-size:12px !important;
  font-stretch:condensed !important;
  letter-spacing:0 !important;
  transform:scaleX(.88) !important;
  transform-origin:center !important;
}
.case-amount-num.compact{
  font-size:11px !important;
  padding:4px 3px !important;
  transform:scaleX(.84) !important;
}
.case-amount-num.tiny{
  font-size:10px !important;
  padding:4px 2px !important;
  transform:scaleX(.78) !important;
}
.case-btn.opened .case-label .case-amount-num,
.case-btn.peeked .case-label .case-amount-num{
  font-size:12px !important;
}
.case-btn.opened .case-label .case-amount-num.compact,
.case-btn.peeked .case-label .case-amount-num.compact{
  font-size:11px !important;
}
.case-btn.opened .case-label .case-amount-num.tiny,
.case-btn.peeked .case-label .case-amount-num.tiny{
  font-size:10px !important;
}
@media(max-width:760px){
  .case-btn.opened .case-label,
  .case-btn.peeked .case-label{
    padding:0 4px !important;
  }
  .case-amount-num{
    font-size:11px !important;
    transform:scaleX(.82) !important;
  }
  .case-amount-num.compact{
    font-size:10px !important;
    transform:scaleX(.78) !important;
  }
  .case-amount-num.tiny{
    font-size:9px !important;
    transform:scaleX(.72) !important;
  }
  .case-btn.opened .case-label .case-amount-num,
  .case-btn.peeked .case-label .case-amount-num{
    font-size:11px !important;
  }
  .case-btn.opened .case-label .case-amount-num.compact,
  .case-btn.peeked .case-label .case-amount-num.compact{
    font-size:10px !important;
  }
  .case-btn.opened .case-label .case-amount-num.tiny,
  .case-btn.peeked .case-label .case-amount-num.tiny{
    font-size:9px !important;
  }
}

/* === active run lock: game is an isolated play container === */
body.run-locked .nav-btn:not([data-view="game"]){
  opacity:.48 !important;
  filter:saturate(.65) brightness(.82) !important;
}
body.run-locked .nav-btn:not([data-view="game"]):hover{
  transform:none !important;
  border-color:var(--line) !important;
}
body.run-locked .nav-btn[data-view="game"]{
  border-color:rgba(234,204,151,.38) !important;
  box-shadow:inset 0 1px 0 rgba(255,250,230,.10),0 12px 22px rgba(0,0,0,.28),0 0 0 1px rgba(232,200,134,.18) !important;
}

/* === shop rebuild v1: material cases + designed stage themes === */
@keyframes vaultSweep{0%{transform:translateX(-18%) skewX(-12deg);opacity:.18}50%{opacity:.44}100%{transform:translateX(18%) skewX(-12deg);opacity:.18}}
@keyframes sonarPulse{0%,100%{background-position:0 0,50% 0;filter:brightness(1)}50%{background-position:34px 18px,50% 0;filter:brightness(1.16)}}
@keyframes dataScan{0%{background-position:0 0,0 0,50% 0}100%{background-position:0 42px,84px 0,50% 0}}
@keyframes moltenHeat{0%,100%{filter:saturate(1) brightness(1)}50%{filter:saturate(1.18) brightness(1.12)}}
@keyframes auroraFlow{0%{background-position:0 0,0 0,50% 0}100%{background-position:140px 0,-90px 0,50% 0}}

.theme-thumb,
.shop-preview-scene{
  isolation:isolate;
}
.theme-thumb::before,
.theme-thumb::after,
.shop-preview-scene::before,
.shop-preview-scene::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
}
.theme-thumb.theme-vault,
.shop-preview-scene.theme-vault{
  background:
    linear-gradient(90deg,rgba(255,229,178,.10) 0 1px,transparent 1px 24%,rgba(255,229,178,.08) 24% 25%,transparent 25% 74%,rgba(255,229,178,.08) 74% 75%,transparent 75%),
    radial-gradient(circle at 52% 46%,rgba(225,182,102,.28),transparent 28%),
    linear-gradient(135deg,#2b2117,#0b0806 58%,#1a120c) !important;
}
.theme-thumb.theme-vault::before,
.shop-preview-scene.theme-vault::before{
  background:radial-gradient(circle at 50% 48%,transparent 0 20%,rgba(230,190,118,.16) 21% 22%,transparent 23% 35%,rgba(230,190,118,.10) 36% 37%,transparent 38%) !important;
}
.theme-thumb.theme-carbon,
.shop-preview-scene.theme-carbon{
  background:
    linear-gradient(45deg,rgba(255,255,255,.06) 25%,transparent 25% 50%,rgba(255,255,255,.06) 50% 75%,transparent 75%),
    linear-gradient(135deg,#22272b,#07090b 58%,#2a1010) !important;
  background-size:18px 18px,auto !important;
}
.theme-thumb.theme-carbon::before,
.shop-preview-scene.theme-carbon::before{
  background:linear-gradient(90deg,transparent 0 18%,rgba(255,77,63,.45) 18% 21%,transparent 21% 79%,rgba(255,77,63,.28) 79% 82%,transparent 82%) !important;
}
.theme-thumb.theme-porcelain,
.shop-preview-scene.theme-porcelain{
  background:
    radial-gradient(circle at 74% 24%,rgba(255,255,255,.82),transparent 13%),
    linear-gradient(135deg,#fff8ea,#d6b15d 32%,#39210e 33% 38%,#f3ead8 39% 100%) !important;
}
.theme-thumb.theme-porcelain::before,
.shop-preview-scene.theme-porcelain::before{
  background:linear-gradient(90deg,transparent 0 12%,rgba(164,111,36,.34) 12% 14%,transparent 14% 86%,rgba(164,111,36,.34) 86% 88%,transparent 88%),radial-gradient(circle at 50% 58%,rgba(175,42,82,.22),transparent 9%) !important;
}
.theme-thumb.theme-prism,
.shop-preview-scene.theme-prism{
  background:
    linear-gradient(115deg,rgba(95,225,255,.28),transparent 26%,rgba(255,93,218,.26) 52%,transparent 74%),
    linear-gradient(135deg,#171235,#061626 70%,#2a1746) !important;
}
.theme-thumb.theme-prism::before,
.shop-preview-scene.theme-prism::before{
  background:repeating-linear-gradient(90deg,rgba(94,232,255,.22) 0 1px,transparent 1px 16px),repeating-linear-gradient(0deg,rgba(255,98,220,.18) 0 1px,transparent 1px 18px) !important;
  animation:dataScan 5s linear infinite;
}
.theme-thumb.theme-meteor,
.shop-preview-scene.theme-meteor{
  background:
    radial-gradient(circle at 72% 30%,rgba(255,102,55,.42),transparent 13%),
    radial-gradient(circle at 30% 70%,rgba(183,45,30,.32),transparent 18%),
    linear-gradient(135deg,#2e211c,#070606 58%,#4b160d) !important;
}
.theme-thumb.theme-meteor::before,
.shop-preview-scene.theme-meteor::before{
  background:linear-gradient(120deg,transparent 0 42%,rgba(255,119,61,.32) 43% 45%,transparent 46%),linear-gradient(70deg,transparent 0 60%,rgba(255,197,94,.20) 61% 62%,transparent 63%) !important;
}
.theme-thumb.theme-abyss,
.shop-preview-scene.theme-abyss{
  background:
    radial-gradient(circle at 50% 46%,rgba(81,210,228,.16),transparent 28%),
    linear-gradient(180deg,#092c3b,#061116 68%,#020607) !important;
  animation:sonarPulse 5.5s ease-in-out infinite;
}
.theme-thumb.theme-abyss::before,
.shop-preview-scene.theme-abyss::before{
  background:radial-gradient(circle at 50% 52%,transparent 0 22%,rgba(91,219,234,.22) 23% 24%,transparent 25% 42%,rgba(91,219,234,.12) 43% 44%,transparent 45%) !important;
}
.theme-thumb.theme-data,
.shop-preview-scene.theme-data{
  background:
    repeating-linear-gradient(0deg,rgba(97,229,255,.14) 0 1px,transparent 1px 18px),
    linear-gradient(100deg,rgba(255,78,215,.20),transparent 32%,rgba(69,229,255,.18) 70%,transparent),
    linear-gradient(135deg,#120d31,#061526 72%,#270c35) !important;
  animation:dataScan 4.5s linear infinite;
}
.theme-thumb.theme-molten,
.shop-preview-scene.theme-molten{
  background:
    radial-gradient(circle at 56% 72%,rgba(255,181,61,.28),transparent 26%),
    linear-gradient(90deg,transparent 0 20%,rgba(255,215,128,.16) 20% 21%,transparent 21% 79%,rgba(255,215,128,.16) 79% 80%,transparent 80%),
    linear-gradient(135deg,#451009,#150606 62%,#6a2410) !important;
  animation:moltenHeat 3.8s ease-in-out infinite;
}
.theme-thumb.theme-aurora,
.shop-preview-scene.theme-aurora{
  background:
    linear-gradient(100deg,transparent,rgba(109,255,211,.22),transparent 45%,rgba(142,159,255,.22),transparent),
    linear-gradient(70deg,transparent,rgba(230,255,255,.12),transparent 60%),
    linear-gradient(135deg,#101a2d,#071019 68%,#172b42) !important;
  animation:auroraFlow 7s linear infinite;
}

.stage-shell.theme-vault,
.stage-shell.theme-abyss,
.stage-shell.theme-data,
.stage-shell.theme-molten,
.stage-shell.theme-aurora{
  position:relative;
  overflow:hidden;
}
.stage-shell.theme-vault{background:radial-gradient(circle at 50% 0%,rgba(225,182,102,.13),transparent 34%),linear-gradient(180deg,rgba(24,18,13,.96),rgba(7,6,5,.99)) !important}
.stage-shell.theme-abyss{background:radial-gradient(circle at 50% 0%,rgba(80,210,230,.14),transparent 32%),linear-gradient(180deg,rgba(5,31,42,.96),rgba(3,9,13,.99)) !important;box-shadow:0 30px 78px rgba(0,18,29,.58),inset 0 1px 0 rgba(210,249,255,.07) !important}
.stage-shell.theme-data{background:radial-gradient(circle at 50% 0%,rgba(190,86,255,.13),transparent 30%),linear-gradient(180deg,rgba(15,13,42,.96),rgba(4,8,18,.99)) !important;box-shadow:0 30px 82px rgba(11,18,70,.58),inset 0 1px 0 rgba(220,242,255,.08) !important}
.stage-shell.theme-molten{background:radial-gradient(circle at 50% 0%,rgba(255,160,62,.16),transparent 32%),linear-gradient(180deg,rgba(52,14,9,.96),rgba(12,5,4,.99)) !important;box-shadow:0 30px 82px rgba(65,15,6,.58),inset 0 1px 0 rgba(255,229,184,.08) !important}
.stage-shell.theme-aurora{background:radial-gradient(circle at 50% 0%,rgba(149,255,225,.15),transparent 33%),linear-gradient(180deg,rgba(12,22,36,.97),rgba(5,9,16,.99)) !important;box-shadow:0 30px 82px rgba(13,34,70,.56),inset 0 1px 0 rgba(235,250,255,.08) !important}
.case-stage.scene-vault{background:radial-gradient(circle at 50% 0%,rgba(225,182,102,.16),transparent 25%),linear-gradient(180deg,rgba(18,13,9,.84),rgba(5,4,3,.96)) !important}
.case-stage.scene-abyss{background:radial-gradient(circle at 50% 2%,rgba(81,220,236,.17),transparent 26%),repeating-radial-gradient(circle at 50% 56%,transparent 0 38px,rgba(91,219,234,.08) 39px 41px),linear-gradient(180deg,rgba(5,34,46,.84),rgba(2,8,12,.96)) !important;animation:sonarPulse 5.5s ease-in-out infinite}
.case-stage.scene-data{background:repeating-linear-gradient(0deg,rgba(92,222,255,.08) 0 1px,transparent 1px 21px),radial-gradient(circle at 50% 0%,rgba(233,88,255,.14),transparent 26%),linear-gradient(180deg,rgba(14,12,39,.84),rgba(4,7,17,.96)) !important;animation:dataScan 4.8s linear infinite}
.case-stage.scene-molten{background:radial-gradient(circle at 50% 66%,rgba(255,132,47,.24),transparent 38%),radial-gradient(circle at 50% 0%,rgba(255,198,89,.16),transparent 25%),linear-gradient(180deg,rgba(47,12,8,.86),rgba(11,5,4,.96)) !important;animation:moltenHeat 3.8s ease-in-out infinite}
.case-stage.scene-aurora{background:linear-gradient(100deg,transparent,rgba(108,255,213,.10),transparent 45%,rgba(142,158,255,.10),transparent),radial-gradient(circle at 50% 0%,rgba(205,255,243,.16),transparent 27%),linear-gradient(180deg,rgba(12,24,40,.86),rgba(5,9,16,.96)) !important;animation:auroraFlow 7s linear infinite}

.case-stage.skin-vault .case-shell{border-color:rgba(242,215,165,.86) !important;background:linear-gradient(145deg,#f5e1b3 0%,#a77a36 18%,#2b2117 42%,#090706 58%,#98672d 78%,#ffe8bc 100%) !important;box-shadow:0 20px 28px rgba(0,0,0,.50),inset 0 2px 0 rgba(255,249,235,.74),inset 0 -7px 0 rgba(0,0,0,.52),0 0 24px rgba(225,182,102,.10) !important}
.case-stage.skin-carbon .case-shell{border-color:rgba(215,220,220,.72) !important;background:linear-gradient(45deg,rgba(255,255,255,.07) 25%,transparent 25% 50%,rgba(255,255,255,.06) 50% 75%,transparent 75%),linear-gradient(145deg,#596066 0%,#181d20 20%,#07090a 55%,#2d0908 73%,#d04b3f 100%) !important;background-size:12px 12px,auto !important;box-shadow:0 20px 30px rgba(0,0,0,.55),inset 0 2px 0 rgba(255,255,255,.25),inset 0 -8px 0 rgba(0,0,0,.58),0 0 24px rgba(255,68,58,.12) !important}
.case-stage.skin-porcelain .case-shell{border-color:rgba(255,246,226,.92) !important;background:radial-gradient(circle at 24% 18%,rgba(255,255,255,.92),transparent 14%),linear-gradient(145deg,#fff8ec 0%,#ead89f 22%,#b98231 34%,#fcf4e7 54%,#7b4b1b 76%,#fff3d8 100%) !important;box-shadow:0 22px 32px rgba(0,0,0,.48),inset 0 2px 0 rgba(255,255,255,.82),inset 0 -7px 0 rgba(118,79,29,.36),0 0 24px rgba(255,240,210,.14) !important}
.case-stage.skin-prism .case-shell{border-color:rgba(185,244,255,.82) !important;background:linear-gradient(115deg,rgba(102,241,255,.45),transparent 24%,rgba(255,95,219,.38) 52%,transparent 72%),linear-gradient(145deg,#ecfbff 0%,#4d77cc 16%,#15172e 50%,#29c9ff 78%,#ffe5a6 100%) !important;box-shadow:0 24px 34px rgba(0,0,0,.54),inset 0 2px 0 rgba(246,252,255,.72),inset 0 -8px 0 rgba(8,12,28,.58),0 0 30px rgba(91,222,255,.22) !important}
.case-stage.skin-meteor .case-shell{border-color:rgba(255,169,105,.76) !important;background:radial-gradient(circle at 74% 25%,rgba(255,118,58,.46),transparent 12%),linear-gradient(145deg,#61412c 0%,#241917 19%,#080606 52%,#59180e 74%,#ff9a55 100%) !important;box-shadow:0 24px 36px rgba(0,0,0,.58),inset 0 2px 0 rgba(255,217,180,.42),inset 0 -8px 0 rgba(0,0,0,.62),0 0 34px rgba(255,102,55,.22) !important}
.case-stage.skin-vault .case-shell::before,.case-stage.skin-carbon .case-shell::before,.case-stage.skin-porcelain .case-shell::before,.case-stage.skin-prism .case-shell::before,.case-stage.skin-meteor .case-shell::before{border-color:currentColor !important;opacity:.76 !important}
.case-stage.skin-carbon .case-shell::before{color:#cfd5d6 !important;border-style:solid !important}
.case-stage.skin-porcelain .case-shell::before{color:#ffe9b6 !important}
.case-stage.skin-prism .case-shell::before{color:#b8f1ff !important;border-style:dashed !important}
.case-stage.skin-meteor .case-shell::before{color:#ffb070 !important}
.case-stage.skin-carbon .case-shell::after{background:linear-gradient(180deg,#f0f4f5,#e1443a) !important}
.case-stage.skin-porcelain .case-shell::after{background:linear-gradient(180deg,#fff7df,#b73968) !important}
.case-stage.skin-prism .case-shell::after{background:linear-gradient(180deg,#f4fbff,#5fdcff) !important;box-shadow:0 0 14px rgba(95,220,255,.44) !important}
.case-stage.skin-meteor .case-shell::after{background:linear-gradient(180deg,#ffddb8,#d44c20) !important;box-shadow:0 0 16px rgba(255,103,47,.42) !important}
.case-stage.skin-carbon .case-label,.case-stage.skin-prism .case-label,.case-stage.skin-meteor .case-label{color:#fff5dd !important;text-shadow:0 1px 0 rgba(0,0,0,.72),0 0 10px rgba(255,255,255,.12) !important}
.case-stage.skin-porcelain .case-label{color:#33200d !important;text-shadow:0 1px 0 rgba(255,255,255,.62) !important}

/* === global theme pass: stage themes affect the whole game shell === */
body.theme-global-vault{
  --theme-a:#e8c886;
  --theme-b:#b98a45;
  --theme-c:#2a1b10;
  --theme-glow:rgba(232,200,134,.18);
  --theme-line:rgba(234,204,151,.18);
  background:
    radial-gradient(circle at 16% 10%, rgba(232,200,134,.12), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(150,75,42,.08), transparent 22%),
    linear-gradient(135deg,#050403 0%,#0b0a08 38%,#15100b 70%,#040403 100%) !important;
}
body.theme-global-abyss{
  --theme-a:#74e4f2;
  --theme-b:#2b9fb1;
  --theme-c:#082635;
  --theme-glow:rgba(89,219,236,.20);
  --theme-line:rgba(128,229,244,.20);
  background:
    radial-gradient(circle at 20% 8%, rgba(82,210,232,.16), transparent 28%),
    radial-gradient(circle at 78% 14%, rgba(33,109,139,.14), transparent 24%),
    linear-gradient(135deg,#02080b 0%,#061923 42%,#041016 72%,#020506 100%) !important;
}
body.theme-global-data{
  --theme-a:#76e9ff;
  --theme-b:#d070ff;
  --theme-c:#15113a;
  --theme-glow:rgba(118,233,255,.20);
  --theme-line:rgba(154,221,255,.18);
  background:
    repeating-linear-gradient(0deg,rgba(115,231,255,.035) 0 1px,transparent 1px 24px),
    radial-gradient(circle at 20% 10%, rgba(210,88,255,.14), transparent 28%),
    radial-gradient(circle at 86% 12%, rgba(76,216,255,.12), transparent 24%),
    linear-gradient(135deg,#050613 0%,#11103a 44%,#061320 74%,#03050b 100%) !important;
}
body.theme-global-molten{
  --theme-a:#ffc15d;
  --theme-b:#e15b32;
  --theme-c:#391008;
  --theme-glow:rgba(255,132,56,.22);
  --theme-line:rgba(255,185,101,.20);
  background:
    radial-gradient(circle at 18% 10%, rgba(255,174,67,.15), transparent 28%),
    radial-gradient(circle at 84% 12%, rgba(217,61,31,.15), transparent 24%),
    linear-gradient(135deg,#080302 0%,#220906 42%,#120504 74%,#050202 100%) !important;
}
body.theme-global-aurora{
  --theme-a:#bfffea;
  --theme-b:#91a5ff;
  --theme-c:#10233d;
  --theme-glow:rgba(156,255,226,.20);
  --theme-line:rgba(202,239,255,.18);
  background:
    linear-gradient(100deg,transparent,rgba(109,255,211,.07),transparent 45%,rgba(142,159,255,.08),transparent),
    radial-gradient(circle at 20% 10%, rgba(153,255,224,.13), transparent 28%),
    radial-gradient(circle at 84% 12%, rgba(126,148,255,.12), transparent 24%),
    linear-gradient(135deg,#03070c 0%,#0d1b2f 44%,#08101c 74%,#020409 100%) !important;
}
body[class*="theme-global-"]::before{opacity:.7}
body[class*="theme-global-"] .topbar{
  border-bottom-color:var(--theme-line) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 76%,#20170f 24%),rgba(8,7,6,.94)) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.26),0 0 30px var(--theme-glow) !important;
}
body[class*="theme-global-"] .logo-emblem,
body[class*="theme-global-"] .btn-primary{
  background:linear-gradient(180deg,#fff3d1 0%,var(--theme-a) 38%,var(--theme-b) 100%) !important;
}
body[class*="theme-global-"] .nav-btn.active,
body[class*="theme-global-"] .nav-btn:hover,
body[class*="theme-global-"] .foot-btn:hover{
  border-color:var(--theme-line) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a) 32%,#322214 68%),rgba(16,12,10,.98)) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.28),0 0 18px var(--theme-glow) !important;
}
body[class*="theme-global-"] .card,
body[class*="theme-global-"] .modal-card,
body[class*="theme-global-"] .money-plaque{
  border-color:var(--theme-line) !important;
  background:
    radial-gradient(circle at 86% 12%,var(--theme-glow),transparent 24%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 32%,rgba(31,25,19,.98) 68%),rgba(8,7,6,.99)) !important;
}
body[class*="theme-global-"] .hero-main{
  background:
    radial-gradient(circle at 72% 20%,var(--theme-glow),transparent 25%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 42%,rgba(40,31,22,.9) 58%),rgba(8,7,6,.99)) !important;
}
body[class*="theme-global-"] .kicker,
body[class*="theme-global-"] .plaque-title,
body[class*="theme-global-"] th{
  color:var(--theme-a) !important;
}
body[class*="theme-global-"] .stat-shell,
body[class*="theme-global-"] .status-chip,
body[class*="theme-global-"] .summary-card,
body[class*="theme-global-"] .history-item,
body[class*="theme-global-"] .result-row,
body[class*="theme-global-"] .room-line,
body[class*="theme-global-"] .shop-item{
  border-color:color-mix(in srgb,var(--theme-line) 75%,transparent 25%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 20%,rgba(255,255,255,.05) 80%),rgba(255,255,255,.018)) !important;
}
body[class*="theme-global-"] .feature-pill,
body[class*="theme-global-"] .shop-state-pill,
body[class*="theme-global-"] .shop-type-pill,
body[class*="theme-global-"] .mode-badge,
body[class*="theme-global-"] .room-badge,
body[class*="theme-global-"] .title-badge,
body[class*="theme-global-"] .hero-ribbon{
  border-color:var(--theme-line) !important;
  background:color-mix(in srgb,var(--theme-a) 12%,transparent 88%) !important;
  color:#fff0cf !important;
}
body[class*="theme-global-"] .footerbar{
  border-top-color:var(--theme-line) !important;
  background:linear-gradient(180deg,rgba(8,7,6,.92),color-mix(in srgb,var(--theme-c) 45%,#100c0a 55%)) !important;
}
body.theme-global-abyss .money-pill,
body.theme-global-data .money-pill,
body.theme-global-molten .money-pill,
body.theme-global-aurora .money-pill{
  border-color:var(--theme-line) !important;
}

/* === theme art pass v2: scene illustrations, lighting and particles === */
@keyframes themeParticleDrift{
  0%{background-position:0 0,0 0;opacity:.38}
  50%{opacity:.72}
  100%{background-position:120px 220px,-90px 180px;opacity:.38}
}
@keyframes themeLightSweep{
  0%{transform:translateX(-42%) skewX(-12deg);opacity:.10}
  45%{opacity:.38}
  100%{transform:translateX(42%) skewX(-12deg);opacity:.10}
}
@keyframes abyssFloat{
  0%,100%{transform:translate3d(0,0,0) scale(1);filter:brightness(1)}
  50%{transform:translate3d(0,-10px,0) scale(1.015);filter:brightness(1.14)}
}
@keyframes dataGridRun{
  0%{background-position:0 0,0 0,center}
  100%{background-position:0 60px,90px 0,center}
}
@keyframes moltenFlicker{
  0%,100%{filter:saturate(1) brightness(1)}
  35%{filter:saturate(1.18) brightness(1.10)}
  70%{filter:saturate(1.05) brightness(.96)}
}
@keyframes auroraSheet{
  0%{background-position:-160px 0,80px 0,center}
  100%{background-position:180px 0,-120px 0,center}
}

body.theme-global-vault{
  --theme-scene:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23070504'/%3E%3Cg opacity='.62'%3E%3Ccircle cx='820' cy='380' r='260' fill='none' stroke='%23d6ad62' stroke-width='18'/%3E%3Ccircle cx='820' cy='380' r='188' fill='none' stroke='%23543a1d' stroke-width='34'/%3E%3Ccircle cx='820' cy='380' r='112' fill='none' stroke='%23e8c886' stroke-width='10'/%3E%3Cpath d='M820 170v420M610 380h420M670 230l300 300M970 230L670 530' stroke='%23a97734' stroke-width='12' stroke-linecap='round'/%3E%3C/g%3E%3Cg opacity='.34' fill='%23e8c886'%3E%3Crect x='72' y='140' width='260' height='26'/%3E%3Crect x='72' y='210' width='360' height='18'/%3E%3Crect x='72' y='604' width='470' height='22'/%3E%3C/g%3E%3C/svg%3E");
  --theme-particles:radial-gradient(circle,rgba(232,200,134,.42) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(255,245,212,.22) 0 1px,transparent 1.8px);
}
body.theme-global-abyss{
  --theme-scene:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%2302080c'/%3E%3Cg opacity='.58'%3E%3Cpath d='M150 570C250 260 940 250 1050 570' fill='none' stroke='%2374e4f2' stroke-width='18'/%3E%3Cpath d='M230 570C330 340 860 330 970 570' fill='none' stroke='%232b9fb1' stroke-width='10'/%3E%3Cpath d='M600 270v300M350 360l500 210M850 360L350 570' stroke='%2374e4f2' stroke-width='5' opacity='.34'/%3E%3C/g%3E%3Cg fill='none' stroke='%2374e4f2' opacity='.32'%3E%3Ccircle cx='600' cy='520' r='92'/%3E%3Ccircle cx='600' cy='520' r='170'/%3E%3Ccircle cx='600' cy='520' r='250'/%3E%3C/g%3E%3Cg fill='%2374e4f2' opacity='.28'%3E%3Ccircle cx='180' cy='240' r='9'/%3E%3Ccircle cx='260' cy='160' r='5'/%3E%3Ccircle cx='970' cy='210' r='7'/%3E%3Ccircle cx='1040' cy='320' r='4'/%3E%3C/g%3E%3C/svg%3E");
  --theme-particles:radial-gradient(circle,rgba(116,228,242,.38) 0 1.4px,transparent 2px),radial-gradient(circle,rgba(180,250,255,.20) 0 1px,transparent 2px);
}
body.theme-global-data{
  --theme-scene:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23050613'/%3E%3Cg opacity='.55' fill='%23161445'%3E%3Crect x='90' y='380' width='78' height='260'/%3E%3Crect x='194' y='300' width='92' height='340'/%3E%3Crect x='320' y='420' width='120' height='220'/%3E%3Crect x='768' y='350' width='88' height='290'/%3E%3Crect x='890' y='270' width='110' height='370'/%3E%3Crect x='1028' y='410' width='84' height='230'/%3E%3C/g%3E%3Cg opacity='.52' stroke='%2376e9ff' fill='none'%3E%3Cpath d='M120 640h960M160 560h880M210 480h780M600 130v510M270 170h660'/%3E%3Cpath d='M330 160h540l90 480H240z' stroke-width='7'/%3E%3C/g%3E%3Cg opacity='.45' stroke='%23d070ff'%3E%3Cpath d='M180 230h130v60H180zM850 180h190v70H850zM470 255h260v46H470z' fill='none'/%3E%3C/g%3E%3C/svg%3E");
  --theme-particles:radial-gradient(circle,rgba(118,233,255,.45) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(208,112,255,.35) 0 1px,transparent 1.8px);
}
body.theme-global-molten{
  --theme-scene:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23080302'/%3E%3Cg opacity='.62'%3E%3Cpath d='M0 80C130 135 210 260 230 800H0zM1200 80c-130 55-210 180-230 720h230z' fill='%234f130c'/%3E%3Cpath d='M0 118C120 170 172 315 180 800H0zM1200 118c-120 52-172 197-180 682h180z' fill='%23802014' opacity='.7'/%3E%3C/g%3E%3Cg opacity='.55'%3E%3Cpath d='M150 660c130-40 210 40 330 0s210-80 350-20 210 10 300-30v190H150z' fill='%23e15b32'/%3E%3Cpath d='M210 684c130-30 190 38 310 0s190-60 310-12 170 12 250-16v144H210z' fill='%23ffc15d' opacity='.65'/%3E%3C/g%3E%3Cg stroke='%23ffc15d' opacity='.42' fill='none'%3E%3Cpath d='M370 220l80 130-40 105 96 88M710 200l-48 120 84 105-52 130' stroke-width='8'/%3E%3C/g%3E%3C/svg%3E");
  --theme-particles:radial-gradient(circle,rgba(255,193,93,.44) 0 1.4px,transparent 2px),radial-gradient(circle,rgba(225,91,50,.35) 0 1.2px,transparent 2px);
}
body.theme-global-aurora{
  --theme-scene:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%2303070c'/%3E%3Cg opacity='.64'%3E%3Cpath d='M0 560l120-120 95 74 116-150 142 170 112-115 130 145 120-178 150 174 95-98 120 122v216H0z' fill='%2313263f'/%3E%3Cpath d='M0 615l150-105 110 72 130-120 160 136 132-92 150 112 150-130 218 145v167H0z' fill='%23091320'/%3E%3C/g%3E%3Cg opacity='.56' fill='none' stroke-linecap='round'%3E%3Cpath d='M80 150C270 60 380 290 560 160s310-90 560 20' stroke='%23bfffea' stroke-width='36'/%3E%3Cpath d='M40 230c230-170 360 80 550-40s330-75 570 45' stroke='%2391a5ff' stroke-width='30'/%3E%3Cpath d='M130 100c220 35 280 150 450 78s250-105 510-20' stroke='%237af5d2' stroke-width='18'/%3E%3C/g%3E%3C/svg%3E");
  --theme-particles:radial-gradient(circle,rgba(191,255,234,.42) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(145,165,255,.30) 0 1px,transparent 1.8px);
}

body[class*="theme-global-"]{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.42)),
    var(--theme-scene),
    radial-gradient(circle at 16% 10%,var(--theme-glow),transparent 28%),
    linear-gradient(135deg,#030303,#080706 56%,var(--theme-c)) !important;
  background-size:cover,cover,auto,auto !important;
  background-position:center,center,center,center !important;
}
body[class*="theme-global-"]::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background-image:var(--theme-particles);
  background-size:86px 86px,142px 142px;
  mix-blend-mode:screen;
  animation:themeParticleDrift 12s linear infinite;
}
body[class*="theme-global-"] .hero-main,
body[class*="theme-global-"] .modal-card{
  background:
    linear-gradient(180deg,rgba(0,0,0,.24),rgba(0,0,0,.70)),
    var(--theme-scene),
    radial-gradient(circle at 70% 18%,var(--theme-glow),transparent 28%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 48%,#17120d 52%),rgba(7,6,5,.98)) !important;
  background-size:cover,cover,auto,auto !important;
  background-position:center,center,center,center !important;
}
body[class*="theme-global-"] .shop-preview-scene,
body[class*="theme-global-"] .case-stage{
  background:
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.58)),
    var(--theme-scene),
    radial-gradient(circle at 50% 14%,var(--theme-glow),transparent 32%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 62%,#050403 38%),rgba(3,3,3,.98)) !important;
  background-size:cover,cover,auto,auto !important;
  background-position:center,center,center,center !important;
}
body[class*="theme-global-"] .hero-main::before,
body[class*="theme-global-"] .case-stage::after,
body[class*="theme-global-"] .shop-preview-scene::after{
  content:"" !important;
  position:absolute !important;
  inset:-10% -28% !important;
  pointer-events:none !important;
  background:linear-gradient(100deg,transparent 0 32%,color-mix(in srgb,var(--theme-a) 24%,transparent 76%) 45%,transparent 58% 100%) !important;
  mix-blend-mode:screen !important;
  animation:themeLightSweep 7.5s ease-in-out infinite !important;
}
body.theme-global-vault .case-stage,
body.theme-global-vault .shop-preview-scene{animation:vaultSweep 7s ease-in-out infinite}
body.theme-global-abyss .case-stage,
body.theme-global-abyss .shop-preview-scene{animation:abyssFloat 5.8s ease-in-out infinite}
body.theme-global-data .case-stage,
body.theme-global-data .shop-preview-scene{
  background:
    repeating-linear-gradient(0deg,rgba(118,233,255,.08) 0 1px,transparent 1px 28px),
    repeating-linear-gradient(90deg,rgba(208,112,255,.055) 0 1px,transparent 1px 34px),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.60)),
    var(--theme-scene),
    linear-gradient(180deg,var(--theme-c),#03050b) !important;
  background-size:auto,auto,auto,cover,auto !important;
  animation:dataGridRun 5s linear infinite !important;
}
body.theme-global-molten .case-stage,
body.theme-global-molten .shop-preview-scene{animation:moltenFlicker 3.4s ease-in-out infinite}
body.theme-global-aurora .case-stage,
body.theme-global-aurora .shop-preview-scene{
  background:
    linear-gradient(100deg,transparent,rgba(191,255,234,.16),transparent 45%,rgba(145,165,255,.16),transparent),
    linear-gradient(70deg,transparent,rgba(230,255,255,.09),transparent 62%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.60)),
    var(--theme-scene),
    linear-gradient(180deg,var(--theme-c),#03050b) !important;
  background-size:160% 100%,140% 100%,auto,cover,auto !important;
  animation:auroraSheet 8s linear infinite !important;
}

body[class*="theme-global-"] .case-stage{
  animation:none !important;
}

/* === theme art pass v3: foreground props and stronger room identity === */
@keyframes stageHaze{
  0%,100%{opacity:.22;transform:translate3d(-1%,0,0)}
  50%{opacity:.46;transform:translate3d(1%,0,0)}
}
@keyframes sonarRing{
  0%{transform:translate(-50%,-50%) scale(.72);opacity:.34}
  80%{opacity:.04}
  100%{transform:translate(-50%,-50%) scale(1.4);opacity:0}
}
@keyframes emberRise{
  0%{background-position:0 80px,0 120px;opacity:.18}
  50%{opacity:.54}
  100%{background-position:30px -140px,-40px -180px;opacity:.18}
}
@keyframes frostDrift{
  0%{background-position:0 0,80px 0}
  100%{background-position:260px 0,-180px 0}
}

body[class*="theme-global-"] #app::before{
  content:"";
  position:fixed;
  inset:84px 0 66px;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(circle at 50% 18%,var(--theme-glow),transparent 22%),
    linear-gradient(105deg,transparent 0 18%,color-mix(in srgb,var(--theme-a) 10%,transparent 90%) 28%,transparent 42% 100%),
    linear-gradient(255deg,transparent 0 20%,color-mix(in srgb,var(--theme-b) 9%,transparent 91%) 34%,transparent 48% 100%);
  mix-blend-mode:screen;
  opacity:.72;
  animation:stageHaze 9s ease-in-out infinite;
}
body[class*="theme-global-"] .view,
body[class*="theme-global-"] .footerbar{position:relative;z-index:1}
body[class*="theme-global-"] .topbar{position:relative;z-index:320}

body[class*="theme-global-"] .stage-shell{
  border-radius:28px;
  padding:10px;
  border:1px solid color-mix(in srgb,var(--theme-line) 80%,transparent 20%);
}
body[class*="theme-global-"] .stage-shell::before,
body[class*="theme-global-"] .stage-shell::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
}
body[class*="theme-global-"] .stage-shell::before{
  z-index:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.54)),
    var(--theme-scene);
  background-size:cover;
  background-position:center;
  opacity:.26;
}
body[class*="theme-global-"] .stage-shell::after{
  z-index:2;
  border:1px solid color-mix(in srgb,var(--theme-a) 18%,transparent 82%);
  box-shadow:inset 0 0 48px color-mix(in srgb,var(--theme-a) 9%,transparent 91%);
}
body[class*="theme-global-"] .stage-shell > *{position:relative;z-index:1}

body[class*="theme-global-"] .money-plaque{
  box-shadow:
    0 26px 58px rgba(0,0,0,.42),
    inset 0 1px 0 color-mix(in srgb,var(--theme-a) 14%,transparent 86%),
    inset 0 0 42px color-mix(in srgb,var(--theme-c) 38%,transparent 62%) !important;
}
body[class*="theme-global-"] .money-plaque::before{
  border-color:color-mix(in srgb,var(--theme-a) 16%,transparent 84%) !important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a) 6%,transparent 94%),transparent 42%),
    radial-gradient(circle at 50% 0,color-mix(in srgb,var(--theme-a) 10%,transparent 90%),transparent 38%);
}
body[class*="theme-global-"] .money-pill{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a) 10%,rgba(255,255,255,.03) 90%),rgba(0,0,0,.14)) !important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--theme-a) 10%,transparent 90%);
}

body.theme-global-vault .stage-shell::before{
  opacity:.34;
  background:
    radial-gradient(circle at 50% 50%,transparent 0 20%,rgba(232,200,134,.16) 21% 22%,transparent 23% 38%,rgba(232,200,134,.09) 39% 40%,transparent 41%),
    var(--theme-scene);
}
body.theme-global-abyss .case-stage::before{
  left:50%;
  top:54%;
  width:46%;
  height:46%;
  border:1px solid rgba(116,228,242,.28);
  background:transparent !important;
  filter:none;
  animation:sonarRing 3.7s ease-out infinite;
}
body.theme-global-abyss .stage-shell::after{
  background:
    linear-gradient(180deg,rgba(116,228,242,.08),transparent 40%),
    radial-gradient(circle at 50% 18%,rgba(116,228,242,.14),transparent 26%);
  mix-blend-mode:screen;
}
body.theme-global-data .stage-shell::before{
  background:
    repeating-linear-gradient(90deg,rgba(118,233,255,.06) 0 1px,transparent 1px 44px),
    repeating-linear-gradient(0deg,rgba(208,112,255,.04) 0 1px,transparent 1px 36px),
    var(--theme-scene);
  animation:dataGridRun 7.4s linear infinite;
}
body.theme-global-molten .stage-shell::before{
  opacity:.38;
  background:
    radial-gradient(circle at 50% 86%,rgba(255,193,93,.25),transparent 34%),
    var(--theme-scene);
}
body.theme-global-molten .stage-shell::after{
  background-image:
    radial-gradient(circle,rgba(255,193,93,.42) 0 1px,transparent 2px),
    radial-gradient(circle,rgba(225,91,50,.35) 0 1px,transparent 2px);
  background-size:90px 90px,140px 140px;
  mix-blend-mode:screen;
  animation:emberRise 5.2s linear infinite;
}
body.theme-global-aurora .stage-shell::before{
  background:
    linear-gradient(100deg,transparent,rgba(191,255,234,.18),transparent 44%,rgba(145,165,255,.16),transparent),
    var(--theme-scene);
  background-size:160% 100%,cover;
  animation:frostDrift 10s linear infinite;
}

body[class*="theme-global-"] .theme-thumb,
body[class*="theme-global-"] .shop-preview-scene{
  box-shadow:
    inset 0 1px 0 color-mix(in srgb,var(--theme-a) 18%,transparent 82%),
    inset 0 -26px 32px rgba(0,0,0,.34),
    0 18px 34px rgba(0,0,0,.26) !important;
}
.theme-thumb.theme-vault,
.theme-thumb.theme-abyss,
.theme-thumb.theme-data,
.theme-thumb.theme-molten,
.theme-thumb.theme-aurora{
  background:
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.38)),
    var(--theme-scene) !important;
  background-size:cover !important;
  background-position:center !important;
}
body.theme-global-abyss .theme-thumb.theme-abyss::after,
body.theme-global-data .theme-thumb.theme-data::after,
body.theme-global-molten .theme-thumb.theme-molten::after,
body.theme-global-aurora .theme-thumb.theme-aurora::after{
  background:linear-gradient(100deg,transparent,color-mix(in srgb,var(--theme-a) 22%,transparent 78%),transparent) !important;
  animation:themeLightSweep 6s ease-in-out infinite;
}

/* Keep shop thumbnails item-specific even when the whole app is themed. */
#skinShopGrid .theme-thumb.theme-vault{
  background:
    radial-gradient(circle at 52% 52%,rgba(232,200,134,.24),transparent 24%),
    linear-gradient(90deg,rgba(232,200,134,.10) 0 1px,transparent 1px 23%,rgba(232,200,134,.10) 23% 24%,transparent 24% 76%,rgba(232,200,134,.10) 76% 77%,transparent 77%),
    linear-gradient(135deg,#3a2919,#070605 58%,#1f150c) !important;
}
#skinShopGrid .theme-thumb.theme-carbon{
  background:
    linear-gradient(45deg,rgba(255,255,255,.06) 25%,transparent 25% 50%,rgba(255,255,255,.06) 50% 75%,transparent 75%),
    linear-gradient(110deg,transparent 0 62%,rgba(225,55,45,.42) 63% 72%,transparent 73%),
    linear-gradient(135deg,#2d3438,#07090a 58%,#2d0c0a) !important;
  background-size:16px 16px,auto,auto !important;
}
#skinShopGrid .theme-thumb.theme-porcelain{
  background:
    radial-gradient(circle at 72% 28%,rgba(255,255,255,.88),transparent 14%),
    linear-gradient(105deg,transparent 0 42%,rgba(177,39,83,.20) 43% 50%,transparent 51%),
    linear-gradient(135deg,#fff8ea,#d9ba72 32%,#5b3513 34% 39%,#f7efe1 40% 100%) !important;
}
#skinShopGrid .theme-thumb.theme-prism{
  background:
    repeating-linear-gradient(90deg,rgba(95,225,255,.18) 0 1px,transparent 1px 18px),
    linear-gradient(115deg,rgba(95,225,255,.32),transparent 26%,rgba(255,93,218,.30) 52%,transparent 74%),
    linear-gradient(135deg,#171235,#061626 70%,#2a1746) !important;
}
#skinShopGrid .theme-thumb.theme-meteor{
  background:
    radial-gradient(circle at 74% 30%,rgba(255,102,55,.46),transparent 13%),
    linear-gradient(120deg,transparent 0 44%,rgba(255,119,61,.34) 45% 47%,transparent 48%),
    linear-gradient(135deg,#38251d,#070606 58%,#56180e) !important;
}
#tableShopGrid .theme-thumb.theme-vault{
  background:
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.38)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23070504'/%3E%3Cg opacity='.62'%3E%3Ccircle cx='820' cy='380' r='260' fill='none' stroke='%23d6ad62' stroke-width='18'/%3E%3Ccircle cx='820' cy='380' r='188' fill='none' stroke='%23543a1d' stroke-width='34'/%3E%3Ccircle cx='820' cy='380' r='112' fill='none' stroke='%23e8c886' stroke-width='10'/%3E%3Cpath d='M820 170v420M610 380h420M670 230l300 300M970 230L670 530' stroke='%23a97734' stroke-width='12' stroke-linecap='round'/%3E%3C/g%3E%3C/svg%3E") !important;
}
#tableShopGrid .theme-thumb.theme-abyss{
  background:
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.38)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%2302080c'/%3E%3Cg opacity='.58'%3E%3Cpath d='M150 570C250 260 940 250 1050 570' fill='none' stroke='%2374e4f2' stroke-width='18'/%3E%3Cpath d='M230 570C330 340 860 330 970 570' fill='none' stroke='%232b9fb1' stroke-width='10'/%3E%3C/g%3E%3Cg fill='none' stroke='%2374e4f2' opacity='.32'%3E%3Ccircle cx='600' cy='520' r='92'/%3E%3Ccircle cx='600' cy='520' r='170'/%3E%3Ccircle cx='600' cy='520' r='250'/%3E%3C/g%3E%3C/svg%3E") !important;
}
#tableShopGrid .theme-thumb.theme-data{
  background:
    repeating-linear-gradient(0deg,rgba(118,233,255,.08) 0 1px,transparent 1px 22px),
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.38)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23050613'/%3E%3Cg opacity='.55' fill='%23161445'%3E%3Crect x='90' y='380' width='78' height='260'/%3E%3Crect x='194' y='300' width='92' height='340'/%3E%3Crect x='890' y='270' width='110' height='370'/%3E%3C/g%3E%3Cg opacity='.52' stroke='%2376e9ff' fill='none'%3E%3Cpath d='M120 640h960M160 560h880M210 480h780M330 160h540l90 480H240z'/%3E%3C/g%3E%3C/svg%3E") !important;
}
#tableShopGrid .theme-thumb.theme-molten{
  background:
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.38)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23080302'/%3E%3Cg opacity='.62'%3E%3Cpath d='M0 80C130 135 210 260 230 800H0zM1200 80c-130 55-210 180-230 720h230z' fill='%234f130c'/%3E%3C/g%3E%3Cg opacity='.55'%3E%3Cpath d='M150 660c130-40 210 40 330 0s210-80 350-20 210 10 300-30v190H150z' fill='%23e15b32'/%3E%3Cpath d='M210 684c130-30 190 38 310 0s190-60 310-12 170 12 250-16v144H210z' fill='%23ffc15d' opacity='.65'/%3E%3C/g%3E%3C/svg%3E") !important;
}
#tableShopGrid .theme-thumb.theme-aurora{
  background:
    linear-gradient(100deg,transparent,rgba(191,255,234,.20),transparent 45%,rgba(145,165,255,.18),transparent),
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.38)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%2303070c'/%3E%3Cg opacity='.64'%3E%3Cpath d='M0 560l120-120 95 74 116-150 142 170 112-115 130 145 120-178 150 174 95-98 120 122v216H0z' fill='%2313263f'/%3E%3C/g%3E%3Cg opacity='.56' fill='none' stroke-linecap='round'%3E%3Cpath d='M80 150C270 60 380 290 560 160s310-90 560 20' stroke='%23bfffea' stroke-width='36'/%3E%3Cpath d='M40 230c230-170 360 80 550-40s330-75 570 45' stroke='%2391a5ff' stroke-width='30'/%3E%3C/g%3E%3C/svg%3E") !important;
}

/* === theme art pass v4: table surface, props and interactive polish === */
@keyframes caseGlowBreath{
  0%,100%{filter:drop-shadow(0 18px 14px rgba(0,0,0,.30)) brightness(1)}
  50%{filter:drop-shadow(0 22px 18px var(--theme-glow)) brightness(1.06)}
}
@keyframes vaultDialTurn{
  0%{transform:translate(-50%,-50%) rotate(0deg)}
  100%{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes bubbleLift{
  0%{background-position:0 120px,80px 180px;opacity:.20}
  50%{opacity:.50}
  100%{background-position:30px -160px,120px -120px;opacity:.20}
}
@keyframes hudBlink{
  0%,100%{opacity:.28}
  50%{opacity:.72}
}
@keyframes heatFloor{
  0%,100%{transform:translateY(0) scaleX(1);opacity:.22}
  50%{transform:translateY(-5px) scaleX(1.03);opacity:.48}
}
@keyframes snowFall{
  0%{background-position:0 -120px,80px -80px}
  100%{background-position:40px 180px,-60px 220px}
}

body[class*="theme-global-"] .case-grid{
  isolation:isolate;
}
body[class*="theme-global-"] .case-grid::before,
body[class*="theme-global-"] .case-grid::after{
  content:"";
  position:absolute;
  inset:-18px -24px;
  pointer-events:none;
  z-index:0;
  border-radius:24px;
}
body[class*="theme-global-"] .case-grid::before{
  background:
    radial-gradient(ellipse at 50% 86%,color-mix(in srgb,var(--theme-a) 16%,transparent 84%),transparent 44%),
    linear-gradient(180deg,transparent 0 48%,rgba(0,0,0,.32) 100%);
}
body[class*="theme-global-"] .case-grid::after{
  opacity:.44;
  mix-blend-mode:screen;
}
body[class*="theme-global-"] .case-btn{
  z-index:1;
}
body[class*="theme-global-"] .case-btn:hover:not([disabled]){
  filter:drop-shadow(0 26px 22px var(--theme-glow)) brightness(1.12) !important;
}
body[class*="theme-global-"] .case-shell{
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
body[class*="theme-global-"] .case-btn:hover:not([disabled]) .case-shell{
  transform:translateY(-2px);
}
body[class*="theme-global-"] .case-btn.player .case-shell{
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--theme-a) 34%,transparent 66%),
    0 0 34px var(--theme-glow),
    0 18px 28px rgba(0,0,0,.46) !important;
}
body[class*="theme-global-"] .case-btn.ai .case-shell{
  outline-color:color-mix(in srgb,var(--theme-a) 72%,transparent 28%) !important;
}

body.theme-global-vault .case-grid::after{
  left:50%;
  top:50%;
  width:360px;
  height:360px;
  inset:auto;
  border-radius:999px;
  border:1px solid rgba(232,200,134,.18);
  background:
    radial-gradient(circle,transparent 0 28%,rgba(232,200,134,.16) 29% 30%,transparent 31% 46%,rgba(232,200,134,.10) 47% 48%,transparent 49%),
    conic-gradient(from 0deg,transparent 0 8%,rgba(232,200,134,.18) 9% 10%,transparent 11% 23%,rgba(232,200,134,.16) 24% 25%,transparent 26%);
  animation:vaultDialTurn 28s linear infinite;
}
body.theme-global-abyss .case-grid::after{
  background-image:
    radial-gradient(circle,rgba(116,228,242,.34) 0 2px,transparent 3px),
    radial-gradient(circle,rgba(180,250,255,.18) 0 1px,transparent 2px);
  background-size:120px 120px,80px 80px;
  animation:bubbleLift 7s linear infinite;
}
body.theme-global-data .case-grid::after{
  border:1px solid rgba(118,233,255,.14);
  background:
    linear-gradient(90deg,rgba(118,233,255,.28) 0 34px,transparent 34px calc(100% - 34px),rgba(208,112,255,.20) calc(100% - 34px)),
    linear-gradient(180deg,rgba(118,233,255,.22) 0 2px,transparent 2px calc(100% - 2px),rgba(208,112,255,.20) calc(100% - 2px));
  animation:hudBlink 2.6s ease-in-out infinite;
}
body.theme-global-molten .case-grid::after{
  inset:auto 6% -18px;
  height:96px;
  background:
    radial-gradient(ellipse at 50% 100%,rgba(255,193,93,.52),transparent 62%),
    linear-gradient(90deg,transparent,rgba(225,91,50,.32),transparent);
  filter:blur(6px);
  animation:heatFloor 3.2s ease-in-out infinite;
}
body.theme-global-aurora .case-grid::after{
  background-image:
    radial-gradient(circle,rgba(232,255,255,.36) 0 1px,transparent 2px),
    radial-gradient(circle,rgba(145,165,255,.26) 0 1px,transparent 2px);
  background-size:90px 90px,130px 130px;
  animation:snowFall 9s linear infinite;
}

body[class*="theme-global-"] .stage-head,
body[class*="theme-global-"] .stage-status,
body[class*="theme-global-"] .announcer,
body[class*="theme-global-"] .control-deck,
body[class*="theme-global-"] .item-deck{
  backdrop-filter:blur(10px) saturate(1.08);
  border-color:color-mix(in srgb,var(--theme-line) 84%,transparent 16%) !important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 26%,rgba(255,255,255,.07) 74%),rgba(0,0,0,.18)) !important;
}
body[class*="theme-global-"] .live-dot{
  background:var(--theme-a) !important;
  box-shadow:0 0 16px var(--theme-a),0 0 34px var(--theme-glow) !important;
}
body.theme-global-abyss .live-dot{background:#74e4f2 !important}
body.theme-global-data .live-dot{background:#d070ff !important}
body.theme-global-molten .live-dot{background:#ff7150 !important}
body.theme-global-aurora .live-dot{background:#bfffea !important}

body[class*="theme-global-"] .shop-item{
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
body[class*="theme-global-"] .shop-item:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--theme-a) 32%,transparent 68%) !important;
  box-shadow:0 28px 58px rgba(0,0,0,.34),0 0 28px var(--theme-glow) !important;
}
body[class*="theme-global-"] .shop-item.equipped{
  box-shadow:0 22px 46px rgba(0,0,0,.28),0 0 0 1px color-mix(in srgb,var(--theme-a) 26%,transparent 74%),0 0 26px var(--theme-glow) !important;
}

/* === layout pass v5: balanced setup screen and larger match table === */
.setup-grid{
  grid-template-columns:minmax(420px,1.08fr) minmax(520px,.92fr) !important;
  gap:26px !important;
  align-items:start !important;
}
.mode-stack{
  grid-template-rows:repeat(2,minmax(230px,auto)) !important;
  gap:24px !important;
}
.mode-card .card-pad{
  padding:28px 30px !important;
}
.mode-card h3{
  font-size:30px !important;
  margin:12px 0 12px !important;
}
.mode-card p{
  font-size:15px !important;
  line-height:1.78 !important;
}
.mode-foot{
  margin-top:22px !important;
}
.rooms-grid{
  grid-template-columns:1fr !important;
  grid-template-rows:none !important;
  grid-auto-rows:auto !important;
  gap:11px !important;
  transform:none !important;
  height:auto !important;
  align-content:start !important;
  align-items:start !important;
}
.setup-side{
  height:auto !important;
  align-self:start !important;
}
.room-card{
  min-height:0 !important;
  height:174px !important;
  max-height:none !important;
}
.room-card .card-pad{
  height:100% !important;
  min-height:0 !important;
  padding:14px 16px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 180px !important;
  grid-template-rows:auto auto 1fr !important;
  column-gap:18px !important;
  row-gap:4px !important;
}
.room-card .room-badge{grid-column:1 !important;grid-row:1 !important;width:max-content !important}
.room-card h3{
  grid-column:1 !important;
  grid-row:2 !important;
  font-size:21px !important;
  margin:2px 0 0 !important;
}
.room-card p{
  grid-column:1 !important;
  grid-row:3 !important;
  font-size:12px !important;
  line-height:1.38 !important;
  min-height:0 !important;
}
.room-card .room-meta{
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  gap:5px !important;
  margin-top:0 !important;
  align-self:start !important;
}
.room-card .room-line{
  padding:5px 9px !important;
}
.room-card .room-start-btn{
  grid-column:2 !important;
  grid-row:3 !important;
  align-self:start !important;
  min-height:36px !important;
  margin-top:0 !important;
}

.game-view{
  padding:10px 14px 8px !important;
}
.table-layout{
  grid-template-columns:184px minmax(0,1fr) 184px !important;
  gap:12px !important;
  height:100% !important;
  min-height:0 !important;
}
.money-plaque{
  padding:12px 10px !important;
  border-radius:22px !important;
}
.money-plaque::before{
  inset:9px !important;
  border-radius:17px !important;
}
.plaque-title{
  margin-bottom:10px !important;
}
.money-list{
  gap:6px !important;
}
.money-pill{
  height:31px !important;
  font-size:12px !important;
}
.stage-shell{
  grid-template-rows:auto auto auto minmax(520px,1fr) minmax(54px,auto) auto auto !important;
  gap:8px !important;
  padding:8px !important;
  align-content:stretch !important;
}
.stage-head{
  padding:10px 14px !important;
  border-radius:18px !important;
}
.stage-status{
  padding:7px !important;
  gap:7px !important;
}
.status-chip{
  padding:8px 8px !important;
  border-radius:13px !important;
}
.status-chip label{
  font-size:10px !important;
}
.status-chip strong{
  font-size:14px !important;
  margin-top:4px !important;
}
.ai-banner{
  padding:10px 14px !important;
}
.case-stage{
  min-height:520px !important;
  height:100% !important;
  padding:18px 18px 12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.case-grid{
  width:min(100%,980px) !important;
  grid-template-columns:repeat(7,minmax(96px,1fr)) !important;
  gap:18px 19px !important;
  padding:18px 0 10px !important;
  align-content:center !important;
  justify-content:center !important;
}
.case-btn{
  height:88px !important;
}
.case-shell{
  border-radius:22px !important;
}
.case-shell::before{
  left:24px !important;
  right:24px !important;
  top:-10px !important;
  height:20px !important;
}
.case-shell::after{
  top:38px !important;
  width:20px !important;
  height:15px !important;
}
.case-label{
  font-size:26px !important;
}
.announcer{
  min-height:54px !important;
  max-height:86px !important;
  overflow:auto !important;
  padding:12px 15px !important;
  line-height:1.45 !important;
}
.control-deck{
  padding:10px !important;
  min-height:50px !important;
}
.item-deck{
  min-height:46px !important;
}

@media(max-width:1320px){
  .setup-grid{grid-template-columns:1fr !important}
  .mode-stack{grid-template-rows:none !important}
  .rooms-grid{grid-template-columns:1fr !important}
  .table-layout{grid-template-columns:1fr !important;height:auto !important}
  .money-plaque{display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:10px !important}
  .case-grid{width:min(100%,820px) !important;grid-template-columns:repeat(6,minmax(92px,1fr)) !important}
}
@media(max-width:760px){
  .mode-card .card-pad{padding:22px !important}
  .rooms-grid{grid-template-columns:1fr !important}
  .room-card .card-pad{min-height:0 !important;grid-template-columns:1fr !important;grid-template-rows:auto !important}
  .room-card .room-badge,.room-card h3,.room-card p,.room-card .room-meta,.room-card .room-start-btn{grid-column:1 !important;grid-row:auto !important}
  .stage-shell{grid-template-rows:auto auto auto minmax(330px,auto) auto auto !important}
  .case-stage{min-height:330px !important;padding:14px 10px !important}
  .case-grid{width:min(100%,360px) !important;grid-template-columns:repeat(4,minmax(72px,1fr)) !important;gap:12px !important}
  .case-btn{height:66px !important}
  .case-label{font-size:20px !important}
  .case-shell::before{left:18px !important;right:18px !important;top:-7px !important;height:14px !important}
  .case-shell::after{top:28px !important;width:15px !important;height:11px !important}
}

/* === immersive player feedback system === */
.feedback-layer{
  position:fixed;
  inset:0;
  z-index:38;
  pointer-events:none;
}
.feedback-flash{
  position:absolute;
  inset:0;
  opacity:0;
  background:radial-gradient(circle at 50% 42%,rgba(255,236,178,.28),transparent 34%),linear-gradient(180deg,transparent,rgba(0,0,0,.18));
  transition:opacity .28s ease;
  mix-blend-mode:screen;
}
.feedback-callout{
  position:absolute;
  left:50%;
  top:22%;
  transform:translate(-50%,-18px) scale(.96);
  min-width:min(520px,calc(100vw - 40px));
  max-width:min(720px,calc(100vw - 40px));
  padding:18px 22px;
  border-radius:18px;
  border:1px solid rgba(255,226,180,.20);
  background:linear-gradient(180deg,rgba(24,18,13,.92),rgba(6,5,4,.96));
  box-shadow:0 34px 90px rgba(0,0,0,.54),0 0 36px rgba(255,214,145,.12);
  text-align:center;
  opacity:0;
  transition:.24s ease;
}
.feedback-callout.show{
  opacity:1;
  transform:translate(-50%,0) scale(1);
}
.feedback-callout strong{
  display:block;
  font-size:28px;
  line-height:1.05;
  color:#fff4d8;
  text-shadow:0 0 22px rgba(255,214,145,.28);
}
.feedback-callout span{
  display:block;
  margin-top:8px;
  color:#ddcdb6;
  font-weight:800;
}
.feedback-callout.danger,
.feedback-callout.jackpot{
  border-color:rgba(255,126,142,.38);
  box-shadow:0 34px 100px rgba(0,0,0,.60),0 0 42px rgba(255,80,92,.20);
}
.feedback-callout.jackpot strong,
.feedback-callout.danger strong{color:#ffd1d8}
.feedback-callout.relief strong{color:#c8ffe4}
.feedback-callout.offer strong{color:#ffe7b0}
.feedback-callout.deal strong,
.feedback-callout.win strong{color:#fff0b5}
.feedback-callout.lose strong{color:#c9c0b5}
.audience-strip{
  position:absolute;
  left:50%;
  bottom:86px;
  transform:translate(-50%,14px);
  padding:9px 16px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.16);
  background:rgba(9,7,6,.78);
  color:#f6e7ce;
  font-size:13px;
  font-weight:900;
  letter-spacing:.3px;
  opacity:0;
  transition:.22s ease;
  box-shadow:0 16px 34px rgba(0,0,0,.36);
}
.audience-strip.show{
  opacity:1;
  transform:translate(-50%,0);
}
.audience-strip.cheer{border-color:rgba(255,226,128,.32);color:#fff0b7}
.audience-strip.gasp{border-color:rgba(255,126,142,.28);color:#ffd1d8}
.audience-strip.relief{border-color:rgba(123,242,186,.28);color:#caffdf}
.audience-strip.murmur{border-color:rgba(170,210,255,.22);color:#dbeaff}
body.feedback-tense .feedback-flash{opacity:.72;background:radial-gradient(circle at 50% 42%,rgba(255,82,95,.22),transparent 32%),linear-gradient(180deg,transparent,rgba(60,0,0,.16))}
body.feedback-win .feedback-flash,
body.feedback-deal .feedback-flash{opacity:.78;background:radial-gradient(circle at 50% 42%,rgba(255,224,126,.30),transparent 34%),linear-gradient(180deg,transparent,rgba(75,48,0,.12))}
body.feedback-lose .feedback-flash{opacity:.55;background:radial-gradient(circle at 50% 42%,rgba(160,170,190,.18),transparent 36%),linear-gradient(180deg,transparent,rgba(0,0,0,.22))}
body.feedback-tense .stage-shell{
  animation:feedbackShake .34s ease both;
}
body.feedback-win .stage-shell,
body.feedback-deal .stage-shell{
  animation:feedbackWinGlow .9s ease both;
}
body.feedback-lose .stage-shell{
  animation:feedbackDim .8s ease both;
}
@keyframes feedbackShake{
  0%,100%{transform:translateX(0)}
  20%{transform:translateX(-5px)}
  42%{transform:translateX(4px)}
  64%{transform:translateX(-3px)}
  84%{transform:translateX(2px)}
}
@keyframes feedbackWinGlow{
  0%{filter:brightness(1)}
  45%{filter:brightness(1.22) saturate(1.15)}
  100%{filter:brightness(1)}
}
@keyframes feedbackDim{
  0%{filter:brightness(1)}
  50%{filter:brightness(.78) saturate(.82)}
  100%{filter:brightness(1)}
}
.offer-amount{
  animation:offerAmountPulse 2.4s ease-in-out infinite;
}
@keyframes offerAmountPulse{
  0%,100%{text-shadow:0 0 24px rgba(255,214,145,.24);transform:scale(1)}
  50%{text-shadow:0 0 34px rgba(255,214,145,.42);transform:scale(1.018)}
}
@media(max-width:760px){
  .feedback-callout{top:18%;padding:14px 16px}
  .feedback-callout strong{font-size:22px}
  .audience-strip{bottom:74px;width:max-content;max-width:calc(100vw - 32px);white-space:normal;text-align:center}
}

/* === case number readability pass === */
.case-stage .case-label{
  z-index:4 !important;
  padding:7px !important;
  line-height:1 !important;
  text-align:center !important;
  color:#fff7e6 !important;
  text-shadow:0 2px 0 rgba(0,0,0,.68),0 0 14px rgba(255,226,168,.34) !important;
}
.case-stage .case-label > span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  max-width:calc(100% - 10px) !important;
  min-width:42px !important;
  min-height:32px !important;
  padding:4px 8px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,239,205,.44) !important;
  background:linear-gradient(180deg,rgba(20,14,9,.82),rgba(5,4,3,.74)) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,248,230,.16) !important;
  white-space:nowrap !important;
}
.case-stage .case-btn.player .case-label > span,
.case-stage .case-btn.ai .case-label > span{
  border-color:rgba(255,229,171,.70) !important;
  background:linear-gradient(180deg,rgba(76,45,12,.92),rgba(15,10,5,.82)) !important;
  box-shadow:0 10px 22px rgba(0,0,0,.42),0 0 18px rgba(255,207,122,.20),inset 0 1px 0 rgba(255,248,230,.22) !important;
}
.case-stage .case-btn.opened .case-label,
.case-stage .case-btn.peeked .case-label{
  padding:6px !important;
}
.case-stage .case-btn.opened .case-label > span,
.case-stage .case-btn.peeked .case-label > span{
  min-width:0 !important;
  width:auto !important;
  max-width:calc(100% - 4px) !important;
  min-height:30px !important;
  padding:4px 7px !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,rgba(255,244,218,.13),rgba(255,244,218,.045)) !important;
  border-color:rgba(255,226,180,.22) !important;
  color:#fff4de !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70),0 0 12px rgba(255,226,168,.24) !important;
}
.case-stage .case-amount-num{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  max-width:100% !important;
  font-size:16px !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  font-weight:1000 !important;
}
.case-stage .case-amount-num.compact{font-size:14px !important}
.case-stage .case-amount-num.tiny{font-size:12px !important}
.case-stage .case-btn.good .case-amount-num{
  color:#caffdf !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70),0 0 12px rgba(123,242,186,.26) !important;
}
.case-stage .case-btn.bad .case-amount-num{
  color:#ffd8dd !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70),0 0 12px rgba(255,126,142,.24) !important;
}
@media(max-width:760px){
  .case-stage .case-label > span{min-width:34px;min-height:27px;padding:3px 6px !important}
  .case-stage .case-amount-num{font-size:13px !important}
  .case-stage .case-amount-num.compact{font-size:12px !important}
  .case-stage .case-amount-num.tiny{font-size:10px !important}
}

/* === shop live preview fix === */
.shop-preview-scene{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  isolation:isolate !important;
}
.shop-preview-scene.preview-skin,
.shop-preview-scene.preview-table,
.shop-preview-scene.preview-voice{
  animation:none !important;
}
.shop-preview-scene.preview-skin.theme-vault{background:radial-gradient(circle at 50% 35%,rgba(255,213,135,.22),transparent 34%),linear-gradient(180deg,#26180d,#070504) !important}
.shop-preview-scene.preview-skin.theme-carbon{background:linear-gradient(45deg,rgba(255,255,255,.05) 25%,transparent 25% 50%,rgba(255,255,255,.05) 50% 75%,transparent 75%),linear-gradient(180deg,#1c2225,#060708 68%,#250807) !important;background-size:18px 18px,auto !important}
.shop-preview-scene.preview-skin.theme-porcelain{background:radial-gradient(circle at 68% 20%,rgba(255,255,255,.42),transparent 16%),linear-gradient(180deg,#f1dfb8,#442814 68%,#090605) !important}
.shop-preview-scene.preview-skin.theme-prism{background:linear-gradient(115deg,rgba(95,225,255,.24),transparent 26%,rgba(255,93,218,.24) 52%,transparent 74%),linear-gradient(180deg,#161235,#061626) !important}
.shop-preview-scene.preview-skin.theme-meteor{background:radial-gradient(circle at 72% 24%,rgba(255,102,55,.34),transparent 16%),linear-gradient(180deg,#2a1b17,#060505 66%,#4f160d) !important}
.shop-preview-scene.preview-table.theme-vault{background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.52)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23070504'/%3E%3Ccircle cx='760' cy='360' r='245' fill='none' stroke='%23d6ad62' stroke-width='18' opacity='.62'/%3E%3Ccircle cx='760' cy='360' r='165' fill='none' stroke='%23543a1d' stroke-width='32' opacity='.7'/%3E%3Cpath d='M760 140v440M540 360h440M605 205l310 310M915 205L605 515' stroke='%23a97734' stroke-width='12' stroke-linecap='round' opacity='.58'/%3E%3C/svg%3E") !important;background-size:cover !important}
.shop-preview-scene.preview-table.theme-abyss{background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.50)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%2302080c'/%3E%3Cpath d='M130 590C260 250 940 260 1070 590' fill='none' stroke='%2374e4f2' stroke-width='18' opacity='.58'/%3E%3Ccircle cx='600' cy='520' r='92' fill='none' stroke='%2374e4f2' opacity='.34'/%3E%3Ccircle cx='600' cy='520' r='190' fill='none' stroke='%2374e4f2' opacity='.22'/%3E%3C/svg%3E") !important;background-size:cover !important}
.shop-preview-scene.preview-table.theme-data{background:repeating-linear-gradient(0deg,rgba(118,233,255,.08) 0 1px,transparent 1px 24px),linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.50)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23050613'/%3E%3Cpath d='M130 640h940M220 500h760M330 170h540l92 470H238z' fill='none' stroke='%2376e9ff' opacity='.5'/%3E%3Crect x='130' y='350' width='88' height='290' fill='%23161445' opacity='.72'/%3E%3Crect x='910' y='260' width='110' height='380' fill='%23161445' opacity='.72'/%3E%3C/svg%3E") !important;background-size:auto,auto,cover !important}
.shop-preview-scene.preview-table.theme-molten{background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.52)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%23080302'/%3E%3Cpath d='M0 80C130 135 210 260 230 800H0zM1200 80c-130 55-210 180-230 720h230z' fill='%234f130c' opacity='.65'/%3E%3Cpath d='M150 660c130-40 210 40 330 0s210-80 350-20 210 10 300-30v190H150z' fill='%23e15b32' opacity='.58'/%3E%3Cpath d='M210 684c130-30 190 38 310 0s190-60 310-12 170 12 250-16v144H210z' fill='%23ffc15d' opacity='.42'/%3E%3C/svg%3E") !important;background-size:cover !important}
.shop-preview-scene.preview-table.theme-aurora{background:linear-gradient(100deg,transparent,rgba(191,255,234,.22),transparent 45%,rgba(145,165,255,.18),transparent),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.54)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800'%3E%3Crect width='1200' height='800' fill='%2303070c'/%3E%3Cpath d='M0 560l120-120 95 74 116-150 142 170 112-115 130 145 120-178 150 174 95-98 120 122v216H0z' fill='%2313263f' opacity='.76'/%3E%3Cpath d='M80 150C270 60 380 290 560 160s310-90 560 20' stroke='%23bfffea' stroke-width='36' fill='none' opacity='.5'/%3E%3C/svg%3E") !important;background-size:160% 100%,auto,cover !important}
.preview-case{
  position:relative;
  width:158px;
  height:112px;
  border-radius:24px;
  border:1px solid rgba(255,240,210,.56);
  box-shadow:0 30px 50px rgba(0,0,0,.45),inset 0 2px 0 rgba(255,255,255,.34),inset 0 -10px 0 rgba(0,0,0,.38);
  z-index:2;
}
.preview-case.skin-vault{background:linear-gradient(145deg,#f5e1b3 0%,#a77a36 22%,#090706 58%,#ffe8bc 100%)}
.preview-case.skin-carbon{background:linear-gradient(45deg,rgba(255,255,255,.07) 25%,transparent 25% 50%,rgba(255,255,255,.06) 50% 75%,transparent 75%),linear-gradient(145deg,#596066 0%,#07090a 55%,#d04b3f 100%);background-size:12px 12px,auto}
.preview-case.skin-porcelain{background:radial-gradient(circle at 24% 18%,rgba(255,255,255,.92),transparent 14%),linear-gradient(145deg,#fff8ec 0%,#ead89f 22%,#fcf4e7 54%,#7b4b1b 76%,#fff3d8 100%)}
.preview-case.skin-prism{background:linear-gradient(115deg,rgba(102,241,255,.45),transparent 24%,rgba(255,95,219,.38) 52%,transparent 72%),linear-gradient(145deg,#ecfbff 0%,#15172e 50%,#29c9ff 78%,#ffe5a6 100%)}
.preview-case.skin-meteor{background:radial-gradient(circle at 74% 25%,rgba(255,118,58,.46),transparent 12%),linear-gradient(145deg,#61412c 0%,#080606 52%,#59180e 74%,#ff9a55 100%)}
.preview-case-handle{position:absolute;left:36px;right:36px;top:-18px;height:28px;border:5px solid rgba(255,235,192,.78);border-bottom:0;border-radius:22px 22px 0 0}
.preview-case-lock{position:absolute;left:50%;top:52px;transform:translateX(-50%);width:26px;height:18px;border-radius:6px;background:linear-gradient(#fff5dd,#8a6432);box-shadow:0 0 14px rgba(0,0,0,.38)}
.preview-case strong{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  min-width:54px;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(255,239,205,.55);
  background:linear-gradient(180deg,rgba(20,14,9,.86),rgba(5,4,3,.76));
  color:#fff7e6;
  font-size:30px;
  line-height:1;
  text-shadow:0 2px 0 rgba(0,0,0,.68),0 0 14px rgba(255,226,168,.34);
}
.preview-stage-desk{
  position:absolute;
  left:26px;
  right:26px;
  bottom:28px;
  height:54px;
  border-radius:50% 50% 22px 22px;
  background:linear-gradient(180deg,rgba(255,235,190,.18),rgba(0,0,0,.46));
  border:1px solid rgba(255,230,190,.18);
  box-shadow:0 20px 36px rgba(0,0,0,.34);
}
.preview-stage-cases{position:relative;z-index:2;display:flex;gap:12px;align-items:center}
.preview-stage-cases span{
  position:relative;
  width:42px;
  height:34px;
  border-radius:10px;
  background:linear-gradient(145deg,#f6e4c1,#17100b 62%,#f3dfbb);
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 12px 18px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.28);
}
.preview-stage-cases span::before{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  top:-6px;
  height:9px;
  border:2px solid rgba(255,235,192,.70);
  border-bottom:0;
  border-radius:8px 8px 0 0;
}
.preview-stage-cases span::after{
  content:"";
  width:8px;
  height:7px;
  border-radius:2px;
  background:linear-gradient(#fff6d8,#9a6b31);
  box-shadow:0 0 8px rgba(0,0,0,.34);
}
.preview-caption{position:absolute;left:18px;right:18px;bottom:14px;z-index:3;color:#f6e7ce;font-size:12px;font-weight:900;text-align:center;text-shadow:0 1px 0 rgba(0,0,0,.7)}
.shop-preview-scene.preview-voice{background:linear-gradient(180deg,rgba(18,16,23,.96),rgba(7,6,8,.98)) !important}
.shop-preview-scene.preview-voice.voice-vault_host{background:radial-gradient(circle at 50% 35%,rgba(255,224,152,.30),transparent 38%),linear-gradient(180deg,#2c2417,#080706) !important}
.shop-preview-scene.preview-voice.voice-host{background:radial-gradient(circle at 50% 35%,rgba(255,214,145,.26),transparent 36%),linear-gradient(180deg,#302012,#080605) !important}
.shop-preview-scene.preview-voice.voice-dealer{background:radial-gradient(circle at 50% 35%,rgba(255,80,150,.22),transparent 36%),linear-gradient(180deg,#2b1020,#070406) !important}
.shop-preview-scene.preview-voice.voice-banker{background:radial-gradient(circle at 50% 35%,rgba(170,210,255,.20),transparent 36%),linear-gradient(180deg,#101a28,#050607) !important}
.shop-preview-scene.preview-voice.voice-vintage{background:radial-gradient(circle at 50% 35%,rgba(255,210,140,.20),transparent 36%),repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 5px),linear-gradient(180deg,#2c2118,#080605) !important}
.shop-preview-scene.preview-voice.voice-ai{background:repeating-linear-gradient(90deg,rgba(118,233,255,.08) 0 1px,transparent 1px 18px),linear-gradient(180deg,#071725,#020407) !important}
.shop-preview-scene.preview-voice.voice-vip{background:radial-gradient(circle at 50% 35%,rgba(255,190,230,.24),transparent 36%),linear-gradient(180deg,#2a1826,#070507) !important}
.preview-voice-avatar{position:relative;z-index:2;width:74px;height:74px;border-radius:24px;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:1000;color:#fff4dd;background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.04));border:1px solid rgba(255,230,190,.16);box-shadow:0 24px 40px rgba(0,0,0,.34)}
.preview-wave{position:absolute;left:50%;top:132px;transform:translateX(-50%);display:flex;gap:7px;align-items:center;z-index:3}
.preview-wave span{width:6px;height:22px;border-radius:999px;background:#ffe0a2;animation:previewWave 1s ease-in-out infinite}
.preview-wave span:nth-child(2){height:34px;animation-delay:.08s}.preview-wave span:nth-child(3){height:48px;animation-delay:.16s}.preview-wave span:nth-child(4){height:30px;animation-delay:.24s}.preview-wave span:nth-child(5){height:18px;animation-delay:.32s}
@keyframes previewWave{0%,100%{transform:scaleY(.62);opacity:.62}50%{transform:scaleY(1.08);opacity:1}}

/* === final case number contrast override === */
.case-stage .case-label,
.case-stage .case-label > span,
.case-stage .case-amount-num,
.case-stage .case-amount-num.compact,
.case-stage .case-amount-num.tiny{
  color:#ffffff !important;
  -webkit-text-stroke:.35px rgba(0,0,0,.72);
  text-shadow:0 2px 0 rgba(0,0,0,.88),0 0 10px rgba(0,0,0,.72),0 0 16px rgba(255,255,255,.22) !important;
}
.case-stage .case-label > span{
  background:linear-gradient(180deg,rgba(0,0,0,.74),rgba(0,0,0,.58)) !important;
  border-color:rgba(255,255,255,.62) !important;
  box-shadow:0 10px 20px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.24) !important;
}
.case-stage .case-btn:not(.opened):not(.peeked) .case-label > span{
  min-width:46px !important;
  min-height:34px !important;
  font-size:28px !important;
}
.case-stage .case-btn.good .case-amount-num,
.case-stage .case-btn.bad .case-amount-num{
  color:#ffffff !important;
}
@media(max-width:760px){
  .case-stage .case-btn:not(.opened):not(.peeked) .case-label > span{
    min-width:38px !important;
    min-height:28px !important;
    font-size:22px !important;
  }
}

.version-notice{
  margin-top:22px !important;
  border-color:rgba(240,207,137,.22) !important;
  background:
    linear-gradient(90deg,rgba(216,187,139,.10),transparent 34%),
    linear-gradient(180deg,rgba(35,27,22,.96),rgba(10,8,7,.99)) !important;
}
.version-notice::before{
  border-color:rgba(255,238,210,.06) !important;
}
.version-notice h3{
  margin:8px 0 8px !important;
  font-size:24px !important;
}
.version-notice p{
  max-width:1100px;
  color:#d8cbb8 !important;
  font-size:14px !important;
  line-height:1.85 !important;
}
.version-notice-actions{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:14px;
  flex-wrap:wrap;
}
.version-log-btn,
.version-preview-btn{
  margin-top:0;
}
.version-modal-card{
  width:min(760px,calc(100vw - 28px)) !important;
  max-height:calc(100vh - 28px);
  overflow:auto;
}
.version-preview-modal-card{
  position:relative;
  width:min(880px,calc(100vw - 28px)) !important;
  max-height:calc(100vh - 28px);
  overflow:auto;
  text-align:left;
  background:
    radial-gradient(circle at 18% 0%,color-mix(in srgb,var(--theme-a,#f1d49a) 24%,transparent 76%),transparent 30%),
    radial-gradient(circle at 84% 12%,color-mix(in srgb,var(--theme-b,#b88743) 18%,transparent 82%),transparent 32%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c,#2a1b10) 64%,rgba(35,27,22,.98) 36%),rgba(8,7,6,.985)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#f1d49a) 34%,transparent 66%) !important;
  box-shadow:
    0 54px 140px rgba(0,0,0,.78),
    inset 0 1px 0 rgba(255,248,230,.08),
    0 0 46px color-mix(in srgb,var(--theme-glow,rgba(222,172,84,.22)) 80%,transparent 20%) !important;
}
.version-preview-kicker{
  color:var(--theme-a,#f1d49a);
  font-size:12px;
  font-weight:1000;
  letter-spacing:2px;
  text-transform:uppercase;
}
.version-preview-lead{
  margin:10px 0 16px !important;
  max-width:760px !important;
  text-align:left;
}
.version-preview-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0 14px;
}
.version-preview-grid article{
  min-height:150px;
  border:1px solid color-mix(in srgb,var(--theme-a,#f1d49a) 20%,transparent 80%);
  border-radius:20px;
  padding:16px;
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--theme-a,#f1d49a) 10%,transparent 90%),transparent 45%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.016));
}
.version-preview-grid article span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:28px;
  border-radius:999px;
  color:#1f160d;
  background:linear-gradient(180deg,var(--theme-a,#f1d49a),var(--theme-b,#b88743));
  font-size:12px;
  font-weight:1000;
}
.version-preview-grid article strong{
  display:block;
  margin-top:12px;
  color:#fff3dd;
  font-size:18px;
  line-height:1.35;
}
.version-preview-grid article p{
  margin-top:8px;
  color:#d8cbb8;
  font-size:13px;
  line-height:1.75;
}
.version-preview-note{
  border:1px dashed color-mix(in srgb,var(--theme-a,#f1d49a) 24%,transparent 76%);
  border-radius:16px;
  padding:12px 14px;
  color:#ead9b8;
  background:rgba(0,0,0,.18);
  font-size:13px;
  line-height:1.7;
}
.player-changelog-list{
  display:grid;
  gap:12px;
  margin:18px 0 4px;
  text-align:left;
}
.player-changelog-card{
  border:1px solid rgba(255,226,180,.12);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  padding:16px;
}
.player-changelog-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.player-changelog-title{
  display:grid;
  gap:4px;
  min-width:0;
}
.player-changelog-head span{
  color:#f1d49a;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.8px;
  text-transform:uppercase;
}
.player-changelog-head strong{
  color:#fff3dd;
  font-size:18px;
}
.player-changelog-time{
  flex:0 0 auto;
  color:#c9b486;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.player-changelog-card ul{
  margin:12px 0 0;
  padding-left:20px;
  color:#d8cbb8;
  line-height:1.75;
}
.player-changelog-card li+li{
  margin-top:6px;
}

/* === setup mode selected state === */
.mode-card.selected{
  border-color:color-mix(in srgb,var(--theme-a,#ffd989) 70%,transparent 30%) !important;
  background:
    radial-gradient(circle at 88% 16%,var(--theme-glow,rgba(255,214,145,.20)),transparent 30%),
    linear-gradient(135deg,color-mix(in srgb,var(--theme-a,#ffd989) 12%,transparent 88%),transparent 38%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c,#2a1b10) 62%,rgba(48,36,25,.98) 38%),rgba(8,7,6,.99)) !important;
  box-shadow:
    0 26px 68px rgba(0,0,0,.42),
    0 0 0 1px color-mix(in srgb,var(--theme-a,#ffd989) 30%,transparent 70%),
    0 0 34px var(--theme-glow,rgba(222,172,84,.24)),
    inset 0 1px 0 color-mix(in srgb,var(--theme-a,#ffd989) 20%,transparent 80%) !important;
  outline:0 !important;
}
.mode-card.selected::before{
  border-color:color-mix(in srgb,var(--theme-a,#ffd989) 32%,transparent 68%) !important;
  box-shadow:
    inset 0 0 28px var(--theme-glow,rgba(217,164,83,.16)),
    inset 4px 0 0 color-mix(in srgb,var(--theme-a,#ffd989) 74%,var(--theme-b,#b98a45) 26%) !important;
}
.mode-card.selected::after{
  content:"" !important;
  position:absolute !important;
  left:22px !important;
  right:22px !important;
  bottom:18px !important;
  top:auto !important;
  width:auto !important;
  height:2px !important;
  border-radius:999px !important;
  display:block !important;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--theme-a,#ffd989) 88%,white 12%),var(--theme-b,#b98a45),transparent) !important;
  box-shadow:0 0 18px var(--theme-glow,rgba(222,172,84,.24)) !important;
  pointer-events:none !important;
}
.mode-card.selected .kicker,
.mode-card.selected h3{
  color:color-mix(in srgb,var(--theme-a,#ffd989) 82%,white 18%) !important;
}
.mode-card.selected .mode-badge{
  border-color:color-mix(in srgb,var(--theme-a,#ffd989) 44%,transparent 56%) !important;
  background:color-mix(in srgb,var(--theme-a,#ffd989) 16%,transparent 84%) !important;
  color:color-mix(in srgb,var(--theme-a,#ffd989) 78%,white 22%) !important;
}
.mode-card.selected .mode-note{
  color:color-mix(in srgb,var(--theme-a,#ffd989) 72%,white 28%) !important;
}

/* === victory fireworks === */
.firework-layer{
  position:fixed;
  inset:0;
  z-index:45;
  pointer-events:none;
  overflow:hidden;
}
.firework-layer span{
  position:absolute;
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--c);
  box-shadow:0 0 14px var(--c),0 0 28px var(--c);
  transform:translate(-50%,-50%);
  opacity:0;
  animation:fireworkBurst 1.65s cubic-bezier(.12,.72,.18,1) forwards;
}
.firework-layer.grand{
  z-index:92;
}
.firework-layer.grand span{
  width:10px;
  height:10px;
  box-shadow:0 0 18px var(--c),0 0 42px var(--c),0 0 80px color-mix(in srgb,var(--c) 64%,transparent 36%);
  animation-duration:3.85s;
}
.firework-layer i{
  position:absolute;
  top:-24px;
  width:8px;
  height:14px;
  border-radius:2px;
  background:linear-gradient(180deg,#fff7be,#ffd166 54%,#ff9f1c);
  box-shadow:0 0 16px rgba(255,209,102,.68);
  opacity:0;
  transform:translateX(-50%);
  animation:goldConfetti 5.9s cubic-bezier(.18,.72,.22,1) forwards;
}
@keyframes fireworkBurst{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.45)}
  12%{opacity:1}
  78%{opacity:1;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1)}
  100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y) + 36px)) scale(.18)}
}
@keyframes goldConfetti{
  0%{opacity:0;transform:translate(-50%,0) rotate(0deg) scale(.72)}
  8%{opacity:1}
  78%{opacity:1;transform:translate(calc(-50% + var(--x)),var(--y)) rotate(var(--r)) scale(1)}
  100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(var(--y) + 120px)) rotate(calc(var(--r) + 90deg)) scale(.65)}
}
@media(max-width:760px){
  .firework-layer span{width:5px;height:5px}
  .firework-layer.grand span{width:7px;height:7px}
  .firework-layer i{width:6px;height:10px}
}

/* === result poster share === */
.poster-modal-card{
  width:min(760px,calc(100vw - 28px)) !important;
  max-height:calc(100vh - 28px);
  overflow:auto;
}

/* === V3.4.3 CS-like final case reveal === */
.case-reveal-modal-card{
  width:min(760px,calc(100vw - 26px)) !important;
  text-align:center;
  overflow:hidden;
}
.case-reveal-kicker{
  color:#d9b875;
  font-size:11px;
  font-weight:1000;
  letter-spacing:1.8px;
  text-transform:uppercase;
  margin-bottom:8px;
}
.case-reveal-stage{
  position:relative;
  height:360px;
  margin:18px 0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  perspective:980px;
  border:1px solid rgba(219,192,146,.13);
  border-radius:28px;
  background:
    radial-gradient(circle at 50% 28%,rgba(255,214,145,.16),transparent 30%),
    radial-gradient(circle at 50% 82%,rgba(255,214,145,.12),transparent 40%),
    linear-gradient(180deg,rgba(12,10,9,.96),rgba(4,3,3,.99));
  box-shadow:inset 0 1px 0 rgba(255,248,230,.06),0 24px 80px rgba(0,0,0,.35);
  overflow:hidden;
}
.case-reveal-stage::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,transparent,rgba(255,236,180,.08),transparent),
    repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 30px);
  transform:skewX(-10deg) translateX(-35%);
  animation:caseRevealSweep 3.6s ease-in-out infinite;
  pointer-events:none;
}
.case-reveal-crate{
  position:relative;
  width:306px;
  height:232px;
  transform-style:preserve-3d;
  transform:rotateX(10deg) rotateY(-15deg);
  filter:drop-shadow(0 38px 34px rgba(0,0,0,.62));
  animation:caseRevealFloat 3.4s ease-in-out infinite;
  z-index:2;
  will-change:transform;
}
.case-reveal-crate::before{
  content:"";
  position:absolute;
  left:32px;
  right:2px;
  bottom:-42px;
  height:54px;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.62),rgba(0,0,0,.18) 55%,transparent 72%);
  transform:rotateX(70deg);
  z-index:-2;
}
.case-reveal-crate::after{
  content:"";
  position:absolute;
  inset:26px -24px 16px 18px;
  border-radius:26px;
  background:linear-gradient(135deg,rgba(255,210,127,.12),rgba(0,0,0,.52));
  transform:translateZ(-34px);
  opacity:.6;
  z-index:-3;
}
.case-reveal-body,
.case-reveal-lid{
  position:absolute;
  left:0;
  right:0;
  border:1px solid rgba(255,239,205,.74);
  background:
    linear-gradient(145deg,#fff0c5 0%,#d7a658 18%,#65401f 42%,#15100c 62%,#ac7530 82%,#ffe7b4 100%);
  box-shadow:
    inset 0 3px 0 rgba(255,252,235,.55),
    inset 0 -10px 0 rgba(0,0,0,.38),
    0 0 32px rgba(255,203,117,.18);
  transform-style:preserve-3d;
  backface-visibility:hidden;
}
.case-reveal-body{
  bottom:0;
  height:156px;
  border-radius:22px 22px 26px 26px;
  overflow:visible;
  z-index:2;
}
.case-reveal-body::before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(255,239,205,.32);
  border-radius:16px;
  z-index:2;
  pointer-events:none;
}
.case-reveal-body::after{
  content:"";
  position:absolute;
  right:-32px;
  top:17px;
  width:32px;
  height:137px;
  border-radius:0 18px 22px 0;
  border:1px solid rgba(255,239,205,.38);
  background:
    linear-gradient(160deg,rgba(255,218,150,.62),rgba(88,55,25,.86) 34%,rgba(18,12,8,.96) 67%,rgba(170,111,42,.72));
  box-shadow:inset 7px 0 14px rgba(255,236,190,.12),inset -8px 0 20px rgba(0,0,0,.34);
  transform:skewY(-9deg);
  transform-origin:left top;
  z-index:1;
}
.case-reveal-lid{
  top:34px;
  height:74px;
  border-radius:26px 26px 14px 14px;
  transform-origin:50% 100%;
  transition:transform 2.25s cubic-bezier(.12,.78,.12,1),top 2.25s ease,filter 2.25s ease;
  z-index:3;
}
.case-reveal-lid::before{
  content:"";
  position:absolute;
  left:54px;
  right:54px;
  top:-31px;
  height:42px;
  border:8px solid rgba(255,230,181,.86);
  border-bottom:0;
  border-radius:26px 26px 0 0;
  box-shadow:0 0 18px rgba(255,214,145,.18);
}
.case-reveal-lid::after{
  content:"";
  position:absolute;
  right:-32px;
  top:9px;
  width:32px;
  height:62px;
  border-radius:0 16px 12px 0;
  border:1px solid rgba(255,239,205,.36);
  background:
    linear-gradient(160deg,rgba(255,225,167,.68),rgba(100,60,24,.88) 38%,rgba(22,14,8,.96) 72%);
  box-shadow:inset 7px 0 12px rgba(255,236,190,.13),inset -8px 0 18px rgba(0,0,0,.34);
  transform:skewY(-9deg);
  transform-origin:left top;
}
.case-reveal-lock{
  position:absolute;
  left:50%;
  top:100px;
  width:42px;
  height:34px;
  transform:translateX(-50%);
  border-radius:10px;
  z-index:4;
  background:linear-gradient(180deg,#fff5d6,#c9933d 52%,#5f3b16);
  box-shadow:0 0 18px rgba(255,215,145,.38),0 14px 22px rgba(0,0,0,.34);
}
.case-reveal-lock::before{
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  top:-22px;
  height:24px;
  border:5px solid rgba(255,237,196,.92);
  border-bottom:0;
  border-radius:18px 18px 0 0;
}
.case-reveal-number{
  position:absolute;
  left:22px;
  top:22px;
  color:#2b1809;
  font-weight:1000;
  font-size:22px;
  text-shadow:0 1px 0 rgba(255,248,228,.7);
  z-index:4;
}
.case-reveal-amount{
  position:absolute;
  left:18px;
  right:18px;
  top:68px;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:18px;
  color:#fff6dc;
  font-size:38px;
  font-weight:1000;
  background:linear-gradient(180deg,rgba(20,14,9,.92),rgba(6,5,4,.98));
  border:1px solid rgba(255,220,150,.22);
  box-shadow:inset 0 1px 0 rgba(255,248,230,.08),0 0 28px rgba(0,0,0,.36);
  opacity:0;
  transform:translateY(16px) scale(.92);
  transition:opacity .6s ease,transform .7s cubic-bezier(.16,.76,.24,1);
  z-index:4;
}
.case-reveal-modal-card.unlocking .case-reveal-lock{
  animation:caseLockPop 1.25s ease forwards;
}
.case-reveal-modal-card.cracking .case-reveal-lid{
  top:24px;
  transform:rotateX(-24deg) translateY(-4px) translateZ(14px);
  filter:brightness(1.06);
}
.case-reveal-modal-card.opened .case-reveal-lid{
  top:2px;
  transform:rotateX(-116deg) translateY(-30px) translateZ(34px);
  filter:brightness(1.14);
}
.case-reveal-modal-card.opened .case-reveal-stage{
  box-shadow:inset 0 1px 0 rgba(255,248,230,.06),0 0 72px rgba(255,214,145,.18),0 24px 80px rgba(0,0,0,.35);
}
.case-reveal-modal-card.revealed .case-reveal-amount{
  opacity:1;
  transform:translateY(0) scale(1);
}
.case-reveal-modal-card.winner .case-reveal-amount{
  color:#fffbd7;
  border-color:rgba(255,220,120,.48);
  box-shadow:0 0 36px rgba(255,209,102,.34),inset 0 1px 0 rgba(255,248,230,.12);
}
.case-reveal-particles{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}
.case-reveal-particles span{
  position:absolute;
  left:50%;
  top:52%;
  width:var(--s);
  height:var(--s);
  border-radius:999px;
  background:var(--c);
  box-shadow:0 0 16px var(--c),0 0 34px var(--c);
  opacity:0;
  animation:caseRevealParticle 3.4s cubic-bezier(.16,.78,.19,1) var(--d) forwards;
}
.case-reveal-settle{
  display:grid;
  gap:10px;
  justify-items:center;
  margin-top:14px;
  padding:15px;
  border:1px solid rgba(255,220,150,.18);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
}
.case-reveal-settle.hidden{display:none}
.case-reveal-settle strong{
  color:#fff5d8;
  font-size:18px;
}
.case-reveal-settle span{
  color:var(--muted);
  font-size:13px;
}
@keyframes caseRevealFloat{
  0%,100%{transform:rotateX(10deg) rotateY(-15deg) translateY(0)}
  50%{transform:rotateX(10deg) rotateY(-15deg) translateY(-8px)}
}
@keyframes caseLockPop{
  0%{opacity:1;transform:translateX(-50%) translateY(0) rotate(0deg)}
  72%{opacity:1;transform:translateX(-50%) translateY(24px) rotate(12deg)}
  100%{opacity:0;transform:translateX(-50%) translateY(54px) rotate(28deg)}
}
@keyframes caseRevealParticle{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}
  12%{opacity:1}
  74%{opacity:.95;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1)}
  100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y) + 52px)) scale(.18)}
}
@keyframes caseRevealSweep{
  0%,100%{transform:skewX(-10deg) translateX(-38%);opacity:.35}
  50%{transform:skewX(-10deg) translateX(38%);opacity:.8}
}
@media(max-width:760px){
  .case-reveal-modal-card{padding:22px 16px 18px !important}
  .case-reveal-stage{height:300px;border-radius:22px}
  .case-reveal-crate{width:235px;height:184px}
  .case-reveal-crate::after{inset:22px -18px 14px 14px;transform:translateZ(-26px)}
  .case-reveal-body{height:126px;border-radius:18px 18px 22px 22px}
  .case-reveal-body::after{right:-24px;top:14px;width:24px;height:110px}
  .case-reveal-lid{top:28px;height:58px;border-radius:20px 20px 12px 12px}
  .case-reveal-lid::before{left:42px;right:42px;top:-25px;height:34px;border-width:6px}
  .case-reveal-lid::after{right:-24px;top:7px;width:24px;height:48px}
  .case-reveal-lock{top:82px;width:34px;height:28px}
  .case-reveal-number{font-size:18px;left:18px;top:18px}
  .case-reveal-amount{top:58px;font-size:29px;min-height:48px;border-radius:14px}
  .case-reveal-modal-card.cracking .case-reveal-lid{top:20px;transform:rotateX(-24deg) translateY(-4px) translateZ(10px)}
  .case-reveal-modal-card.opened .case-reveal-lid{top:0;transform:rotateX(-112deg) translateY(-22px) translateZ(24px)}
}

/* === V3.4.7 transparent source video case reveal === */
.case-reveal-stage{
  height:392px;
  overflow:hidden;
  perspective:none;
}
.case-reveal-crate{
  width:min(392px,88vw);
  aspect-ratio:1/1;
  height:auto;
  transform:translateY(-2px);
  filter:drop-shadow(0 34px 28px rgba(0,0,0,.64));
  animation:caseVideoFloat 3.8s ease-in-out infinite;
}
.case-reveal-crate::before{
  left:13%;
  right:13%;
  bottom:16px;
  height:38px;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.58),rgba(0,0,0,.18) 58%,transparent 76%);
  transform:none;
  z-index:0;
}
.case-reveal-crate::after,
.case-reveal-body,
.case-reveal-lid,
.case-reveal-lock{
  display:none;
}
.case-reveal-video,
.case-reveal-video-fallback{
  position:absolute;
  inset:50% auto auto 50%;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  transform:translate(-50%,-50%);
  transform-origin:center center;
  z-index:2;
  pointer-events:none;
  user-select:none;
}
.case-reveal-video{
  opacity:1;
}
.case-reveal-video-fallback{
  opacity:0;
}
.case-reveal-modal-card.video-fallback .case-reveal-video{
  opacity:0;
}
.case-reveal-modal-card.video-fallback .case-reveal-video-fallback{
  opacity:1;
}
.case-reveal-number{
  left:50%;
  right:auto;
  top:auto;
  bottom:40%;
  transform:translateX(-118px) translateY(6px);
  padding:2px 8px;
  border-radius:999px;
  background:rgba(0,0,0,.38);
  color:#f6d58b;
  font-size:13px;
}
.case-reveal-amount{
  left:50%;
  right:auto;
  top:auto;
  bottom:29%;
  width:64%;
  min-height:58px;
  border-radius:16px;
  font-size:31px;
  transform:translate(-50%,16px) scale(.92);
  background:
    radial-gradient(circle at 50% 0%,rgba(255,215,128,.18),transparent 58%),
    linear-gradient(180deg,rgba(4,4,3,.86),rgba(0,0,0,.94));
  border-color:rgba(255,208,105,.56);
  box-shadow:
    0 0 34px rgba(255,199,96,.20),
    inset 0 1px 0 rgba(255,248,220,.10),
    inset 0 -16px 22px rgba(0,0,0,.40);
}
.case-reveal-amount.compact{
  font-size:27px;
  letter-spacing:-.3px;
}
.case-reveal-amount.tiny{
  font-size:23px;
  letter-spacing:-.6px;
}
.case-reveal-modal-card.revealed .case-reveal-number{
  transform:translateX(-118px) translateY(0);
}
.case-reveal-modal-card.revealed .case-reveal-amount{
  transform:translate(-50%,0) scale(1);
}
@keyframes caseVideoFloat{
  0%,100%{transform:translateY(-2px)}
  50%{transform:translateY(-8px)}
}
@media(max-width:760px){
  .case-reveal-stage{
    height:318px;
  }
  .case-reveal-crate{
    width:min(318px,88vw);
    height:auto;
    transform:translateY(0);
  }
  .case-reveal-video,
  .case-reveal-video-fallback{
    transform:translate(-50%,-50%);
  }
  .case-reveal-number{
    bottom:40%;
    transform:translateX(-92px) translateY(6px);
    font-size:11px;
    padding:2px 7px;
  }
  .case-reveal-amount{
    bottom:29%;
    width:64%;
    min-height:46px;
    font-size:24px;
    border-radius:13px;
  }
  .case-reveal-amount.compact{
    font-size:21px;
    letter-spacing:-.3px;
  }
  .case-reveal-amount.tiny{
    font-size:18px;
    letter-spacing:-.5px;
  }
  .case-reveal-modal-card.revealed .case-reveal-number{
    transform:translateX(-92px) translateY(0);
  }
  .case-reveal-modal-card.revealed .case-reveal-amount{
    transform:translate(-50%,0) scale(1);
  }
  @keyframes caseVideoFloat{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-5px)}
  }
}
.poster-preview-wrap{
  margin:16px auto 12px;
  width:min(470px,76vw);
  aspect-ratio:3/4;
  border-radius:22px;
  padding:12px;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 24%,transparent 76%);
  background:
    radial-gradient(circle at 50% 0%,var(--theme-glow,rgba(216,187,139,.16)),transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));
  box-shadow:0 24px 56px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08);
}
.poster-preview-wrap img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:16px;
  box-shadow:0 18px 34px rgba(0,0,0,.35);
}
.poster-link-strip{
  box-sizing:border-box;
  width:min(620px,100%);
  margin:0 auto 10px;
  padding:10px 14px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.14);
  background:rgba(8,7,6,.72);
  color:#ffe7b8;
  font-size:13px;
  font-weight:850;
  line-height:1.45;
  word-break:break-all;
  text-align:left;
}
#posterDownload{
  text-decoration:none;
}
@media(max-height:840px){
  .poster-modal-card{padding:22px 20px 20px !important}
  .poster-preview-wrap{width:min(390px,72vw)}
}

/* === offer history and table peek === */
.offer-history{
  display:grid;
  gap:8px;
  max-width:520px;
  margin:14px auto 0;
  text-align:left;
}
.offer-history-row,
.offer-history-empty{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  color:#e9dcc8;
  font-size:13px;
}
.offer-history-row.current{
  border-color:color-mix(in srgb,var(--theme-line, rgba(255,226,180,.22)) 80%, transparent);
  box-shadow:0 0 22px var(--theme-glow, rgba(255,214,145,.13));
}
.offer-history-row strong{
  color:#fff2d2;
  white-space:nowrap;
}
.offer-history-empty{
  justify-content:center;
  color:var(--muted);
}

/* === item role labels === */
.item-role-pill{
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:2px 8px;
  margin-right:6px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  font-size:11px;
  line-height:1;
  font-weight:1000;
  letter-spacing:.2px;
  vertical-align:middle;
}
.item-role-pill.role-challenger{
  color:#ffe4a4;
  border-color:rgba(255,218,137,.28);
  background:rgba(255,197,96,.11);
}
.item-role-pill.role-banker{
  color:#bfe9ff;
  border-color:rgba(118,210,255,.28);
  background:rgba(80,170,230,.12);
}
.item-role-pill.role-both{
  color:#d9c5ff;
  border-color:rgba(185,145,255,.28);
  background:rgba(148,105,240,.12);
}
.shop-item.mode-locked{
  opacity:.62;
  filter:saturate(.72);
}

.leaderboard-section-title{
  margin:8px 0 12px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 18%,transparent 82%);
  background:linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 12%,transparent 88%),transparent);
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 82%,white 18%);
  font-size:13px;
  font-weight:1000;
  letter-spacing:1.2px;
}
.leaderboard-section-title:not(:first-child){
  margin-top:22px;
}
.region-row{
  margin-top:12px;
  align-items:flex-start;
}
.region-empty{
  padding:18px 16px;
  border-radius:16px;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 18%,transparent 82%);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  color:var(--muted);
  line-height:1.7;
}
.leaderboard-control-panel h3{
  margin:8px 0 8px;
  color:#fff2dd;
  font-size:24px;
}
.leaderboard-control-panel p{
  margin:0 0 16px;
  color:var(--muted);
  line-height:1.65;
  font-size:13px;
}
.leaderboard-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.leader-tab{
  min-height:40px;
  border-radius:13px;
  border:1px solid rgba(255,226,180,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.016));
  color:#eadcc6;
  font-size:13px;
  font-weight:1000;
}
.leader-tab.active{
  color:#2b1908;
  border-color:rgba(255,231,181,.58);
  background:linear-gradient(180deg,#ffe8b8,#c99145);
  box-shadow:0 10px 22px rgba(218,165,86,.18),inset 0 1px 0 rgba(255,250,235,.55);
}
.category-tabs{
  margin-top:8px;
}
.category-tabs.two-tabs{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.category-tabs.three-tabs{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.category-tabs.four-tabs{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.leaderboard-note{
  margin-top:14px;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.10);
  background:rgba(255,255,255,.035);
  color:var(--muted);
  font-size:12px;
  line-height:1.6;
}
.leaderboard-table-v2{
  min-width:920px;
}
.leaderboard-table-v2 .player-col{width:18%}
.leaderboard-table-v2 .region-col{width:14%}
.leaderboard-table-v2 .title-col{width:20%}
.leaderboard-table-v2 .score-col{width:16%}
.leaderboard-table-v2 .match-col{width:12%}
.leaderboard-table-v2 .rate-col{width:12%}
.leaderboard-table-v2 th:nth-child(5),
.leaderboard-table-v2 th:nth-child(6),
.leaderboard-table-v2 th:nth-child(7),
.leaderboard-table-v2 td:nth-child(5),
.leaderboard-table-v2 td:nth-child(6),
.leaderboard-table-v2 td:nth-child(7){
  text-align:right;
}
.leaderboard-player-name{
  vertical-align:middle;
}
.leaderboard-me-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:8px;
  min-width:24px;
  height:20px;
  padding:0 7px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.38);
  background:rgba(255,214,145,.16);
  color:var(--gold);
  font-size:11px;
  font-weight:900;
}
.auth-pill{
  cursor:pointer;
  color:var(--ivory);
}
.auth-modal-card{
  width:min(520px,100%) !important;
}
.auth-form{
  display:grid;
  gap:12px;
  max-width:420px;
  margin:18px auto 4px;
}
.auth-rules{
  color:var(--muted);
  font-size:12px;
  line-height:1.65;
  text-align:left;
}
.message-pill{
  position:relative;
}
.message-pill em{
  position:absolute;
  right:-6px;
  top:-7px;
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#ff8f9e,#d6384e);
  color:white;
  font-size:11px;
  font-style:normal;
  font-weight:1000;
  border:1px solid rgba(255,230,230,.45);
  box-shadow:0 8px 18px rgba(214,56,78,.28);
}
.message-modal-card{
  width:min(760px,100%) !important;
}
.message-list{
  display:grid;
  gap:12px;
  max-height:58vh;
  overflow:auto;
  padding:4px;
  margin:16px 0;
  text-align:left;
}
.message-card{
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,226,180,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.016));
}
.message-list-card{
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.message-list-card:hover,
.message-list-card:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(255,214,145,.34);
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.026));
  outline:none;
}
.message-card.unread{
  border-color:rgba(255,214,145,.28);
  box-shadow:0 0 0 1px rgba(255,214,145,.08),0 14px 30px rgba(0,0,0,.18);
}
.message-card.read{
  opacity:.72;
}
.message-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
}
.message-head strong{
  display:block;
  margin-top:6px;
  color:#fff2dd;
  font-size:16px;
}
.message-head time{
  color:var(--muted);
  font-size:12px;
  white-space:nowrap;
}
.message-type{
  display:inline-flex;
  min-height:20px;
  padding:2px 8px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.18);
  color:#ffe7b4;
  background:rgba(255,214,145,.08);
  font-size:11px;
  font-weight:1000;
}
.message-card p{
  margin:12px 0;
  color:#dacdbb;
  line-height:1.72;
  font-size:13px;
}
.message-summary{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.message-detail-card{
  padding:18px;
}
.message-detail-top{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  margin-bottom:12px;
}
.message-detail-top time{
  color:var(--muted);
  font-size:12px;
}
.message-back-btn{
  min-height:34px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border-radius:12px;
  border:1px solid rgba(255,226,180,.16);
  background:linear-gradient(180deg,rgba(60,42,26,.62),rgba(13,9,8,.92));
  color:#f4e4cd;
  font-weight:900;
}
.message-detail-content{
  min-height:150px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.10);
  background:rgba(0,0,0,.16);
  font-size:14px !important;
}
.message-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--muted);
  font-size:12px;
}
.message-open-hint{
  color:#ffe7b4;
  font-weight:900;
}
.message-read-btn{
  min-height:34px !important;
  padding:0 12px !important;
}
.message-actions{
  min-height:44px;
  align-items:center;
  padding-top:2px;
}
.message-empty{
  padding:24px 16px;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.10);
  background:rgba(255,255,255,.035);
  color:var(--muted);
  text-align:center;
}
.feedback-modal-card{
  width:min(680px,100%) !important;
}
.reward-modal-card{
  width:min(980px,100%) !important;
}
.feedback-textarea{
  width:100%;
  min-height:190px;
  padding:14px !important;
  line-height:1.7;
  resize:vertical;
  color:#fff2dd;
}
.reward-image-wrap{
  position:relative;
  width:min(360px,100%);
  margin:18px auto 6px;
  border-radius:22px;
  border:1px solid rgba(255,226,180,.12);
  background:rgba(255,255,255,.04);
  overflow:hidden;
}
.reward-image-wrap img{
  display:block;
  width:100%;
  min-height:260px;
  object-fit:contain;
  background:#fff;
}
.reward-image-fallback{
  display:none;
  padding:14px;
  color:var(--muted);
  font-size:12px;
  line-height:1.6;
  text-align:center;
}
.reward-modal-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,320px);
  gap:18px;
  align-items:start;
}
.reward-support-panel{
  min-width:0;
}
.reward-claim-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:end;
  max-width:min(520px,100%);
  margin:14px auto 0;
}
.reward-claim-box label{
  display:grid;
  gap:7px;
  color:var(--muted);
  font-size:13px;
  font-weight:800;
}
.reward-claim-box input{
  min-height:42px;
  color:#fff2dd;
}
.reward-thanks{
  margin:16px auto 0;
  max-width:min(620px,100%);
  padding:18px 20px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 48%,rgba(255,255,255,.16) 52%);
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.28),transparent 42%),
    linear-gradient(135deg,color-mix(in srgb,var(--theme-a,#e8c886) 50%,#fff8cf 50%),#b9822f 54%,#fff0a8);
  color:#24160a;
  text-align:center;
  font-size:clamp(21px,1.65vw,30px);
  font-weight:1000;
  letter-spacing:.02em;
  text-shadow:0 1px 0 rgba(255,255,255,.52);
  box-shadow:0 18px 46px rgba(255,190,78,.24),0 0 0 6px rgba(255,214,120,.08),inset 0 1px 0 rgba(255,255,255,.72);
  animation:rewardThanksPop .8s cubic-bezier(.18,1.35,.2,1) both, rewardThanksGlow 1.9s ease-in-out infinite alternate;
}
@keyframes rewardThanksPop{
  0%{opacity:0;transform:translateY(14px) scale(.82)}
  70%{opacity:1;transform:translateY(-2px) scale(1.04)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes rewardThanksGlow{
  from{box-shadow:0 18px 46px rgba(255,190,78,.24),0 0 0 6px rgba(255,214,120,.08),inset 0 1px 0 rgba(255,255,255,.72)}
  to{box-shadow:0 24px 62px rgba(255,190,78,.38),0 0 0 9px rgba(255,214,120,.13),inset 0 1px 0 rgba(255,255,255,.86)}
}
.reward-ranking-panel{
  min-width:0;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(255,226,180,.12);
  background:rgba(0,0,0,.22);
}
.reward-ranking-panel h3{
  margin:4px 0 6px;
  color:#fff2dd;
}
.reward-ranking-panel p{
  margin:0 0 12px;
  color:var(--muted);
  font-size:12px;
  line-height:1.6;
}
.reward-ranking-list{
  display:grid;
  gap:6px;
}
.reward-rank-row{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:5px 8px;
  border-radius:10px;
  border:1px solid rgba(255,226,180,.10);
  background:rgba(255,255,255,.04);
}
.reward-rank-row.top{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 30%,transparent 70%);
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 12%,rgba(255,255,255,.05) 88%),rgba(255,255,255,.035));
}
.reward-rank-row span{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:color-mix(in srgb,var(--theme-a,#e8c886) 64%,white 36%);
  font-size:11px;
  font-weight:900;
}
.reward-rank-row strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#fff2dd;
  font-size:13px;
  line-height:1.1;
}
.reward-rank-row b{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 60%,white 40%);
  font-size:13px;
  line-height:1.1;
}
.reward-rank-empty{
  padding:18px 12px;
  border-radius:14px;
  border:1px dashed rgba(255,226,180,.12);
  color:var(--muted);
  text-align:center;
  font-size:13px;
}
.profile-region-select{
  position:relative;
  flex:0 0 180px;
  width:180px;
  max-width:180px;
  min-width:0;
}
.region-select-trigger{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 13px;
  border-radius:13px;
  border:1px solid rgba(255,220,155,.16);
  background:
    linear-gradient(180deg,rgba(20,13,8,.98),rgba(5,4,3,.98));
  color:#fff3df;
  font-weight:900;
  box-shadow:inset 0 2px 12px rgba(0,0,0,.34),0 10px 22px rgba(0,0,0,.18);
}
.region-select-trigger span:first-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.region-select-trigger .ico{
  opacity:.85;
  transition:transform .18s ease;
}
.profile-region-select.open .region-select-trigger{
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 36%,transparent 64%);
  box-shadow:inset 0 2px 12px rgba(0,0,0,.34),0 0 0 1px color-mix(in srgb,var(--theme-a,#d8bb8b) 18%,transparent 82%),0 18px 34px rgba(0,0,0,.24);
}
.profile-region-select.open .region-select-trigger .ico{
  transform:rotate(180deg);
}
.region-select-menu{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 8px);
  z-index:60;
  max-height:286px;
  overflow:auto;
  padding:8px;
  border-radius:16px;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,transparent 78%);
  background:
    radial-gradient(circle at 78% 0,color-mix(in srgb,var(--theme-a,#d8bb8b) 12%,transparent 88%),transparent 28%),
    linear-gradient(180deg,rgba(33,25,19,.98),rgba(8,6,5,.995));
  box-shadow:0 32px 70px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,248,230,.06);
}
.region-select-menu::-webkit-scrollbar{width:8px}
.region-select-menu::-webkit-scrollbar-thumb{background:rgba(219,192,146,.22);border-radius:999px}
.region-option{
  width:100%;
  min-height:38px;
  display:flex;
  align-items:center;
  padding:0 12px;
  border:0;
  border-radius:11px;
  background:transparent;
  color:#e8d9c5;
  font-weight:850;
  text-align:left;
}
.region-option:hover{
  background:rgba(255,226,180,.08);
  color:#fff5e4;
}
.region-option.selected{
  background:linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,transparent 78%),rgba(255,255,255,.025));
  color:#fff4d6;
}
@media (max-width: 560px){
  .profile-region-select{
    flex:1 1 100%;
    width:100%;
    max-width:none;
  }
}
.password-panel{
  display:grid;
  gap:10px;
  margin-top:12px;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));
}
.password-panel .input{
  min-height:40px !important;
}
.password-panel .btn{
  min-height:42px !important;
}
.password-reset-note{
  color:var(--muted);
  font-size:12px;
  line-height:1.65;
}
.title-manager{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:14px;
}
.title-role-panel{
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.014));
}
.title-role-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.title-role-head strong{
  display:block;
  color:#fff2d5;
  font-size:15px;
}
.title-role-head small{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:12px;
}
.title-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  max-height:260px;
  overflow:auto;
  padding-right:2px;
}
.title-card-grid::-webkit-scrollbar{width:7px}
.title-card-grid::-webkit-scrollbar-thumb{background:rgba(219,192,146,.22);border-radius:999px}
.title-card{
  min-height:104px;
  display:grid;
  align-content:start;
  gap:7px;
  padding:10px;
  border-radius:13px;
  border:1px solid rgba(255,226,180,.10);
  background:linear-gradient(180deg,rgba(24,18,14,.92),rgba(9,7,6,.96));
  color:#f4e6d2;
  text-align:left;
}
.title-card.unlocked{
  cursor:pointer;
}
.title-card.locked{
  opacity:.58;
}
.title-card.equipped{
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 46%,transparent 54%);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--theme-a,#d8bb8b) 18%,transparent 82%),0 12px 26px rgba(0,0,0,.22);
}
.title-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
}
.title-card-top b{
  font-size:14px;
  line-height:1.25;
}
.title-card-top em{
  flex:0 0 auto;
  padding:3px 6px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.12);
  color:#ffe0a3;
  font-size:10px;
  font-style:normal;
  font-weight:1000;
}
.title-card-copy{
  color:var(--muted);
  font-size:11px;
  line-height:1.45;
}
.title-card-state{
  align-self:end;
  color:#fff0c8;
  font-size:11px;
  font-weight:1000;
}
.title-card.locked .title-card-state{
  color:var(--muted);
}
@media(max-width:560px){
  .title-card-grid{grid-template-columns:1fr;max-height:300px}
}

/* === title plaques and top-rank medals === */
.title-plaque{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  gap:9px;
  max-width:100%;
  min-width:0;
  border-radius:14px;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 36%,transparent 64%);
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,rgba(255,255,255,.06) 78%),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.018)),
    color-mix(in srgb,var(--theme-c,#2a1b10) 46%,rgba(6,5,4,.92) 54%);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb,var(--theme-a,#d8bb8b) 24%,white 12%),
    inset 0 -1px 0 rgba(0,0,0,.52),
    0 10px 24px rgba(0,0,0,.28),
    0 0 18px color-mix(in srgb,var(--theme-a,#d8bb8b) 12%,transparent 88%);
  color:#fff3d8;
  vertical-align:middle;
}
.title-plaque-crown{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:11px;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 42%,transparent 58%);
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 78%,white 22%),color-mix(in srgb,var(--theme-b,#b78340) 78%,#4a2b13 22%));
  color:#1d1006;
  font-size:14px;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 6px 14px rgba(0,0,0,.24);
}
.title-plaque-text{
  display:grid;
  min-width:0;
  text-align:left;
  line-height:1.05;
}
.title-plaque-text b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#fff8e8;
  font-size:16px;
  font-weight:1000;
  text-shadow:0 1px 0 rgba(0,0,0,.74);
}
.title-plaque-text em{
  margin-top:3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 70%,#fff 30%);
  font-size:10px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.9px;
  text-transform:uppercase;
}
.title-plaque-banker{
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 44%,#8ec9ff 16%,transparent 40%);
}
.title-plaque-asset .title-plaque-crown{
  background:linear-gradient(180deg,#fff1c7,#d9a554 54%,#6f4218);
}
.title-plaque-home,
.title-plaque-profile{
  width:100%;
  justify-content:flex-start;
  padding:7px 9px;
}
.title-plaque-table{
  width:100%;
  min-height:34px;
  padding:4px 8px;
  border-radius:12px;
  border-color:rgba(216,238,255,.62);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(0,0,0,.46),
    0 0 0 1px rgba(255,255,255,.055),
    0 8px 18px rgba(0,0,0,.24);
}
.leaderboard-table-v2 .title-plaque-table{
  max-width:256px;
}
.title-plaque-table .title-plaque-crown{
  width:24px;
  height:24px;
  border-radius:9px;
  font-size:11px;
}
.title-plaque-table .title-plaque-text b{
  font-size:13px;
}
.title-plaque-table .title-plaque-text em{
  display:none;
}
.stat-shell strong .title-plaque{
  margin-top:2px;
}
.hero-stats .stat-shell strong .title-plaque-text b,
.identity-card .profile-stat-grid .stat-shell strong .title-plaque-text b{
  font-size:14px;
}
.leaderboard-table-v2 td:nth-child(4){
  overflow:visible;
}
.rank-medal{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 12px 22px rgba(0,0,0,.28);
}
.rank-medal::before{
  content:"";
  position:absolute;
  inset:4px;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.26);
  opacity:.72;
}
.rank-medal i{
  position:relative;
  z-index:1;
  color:#1d1207;
  font-size:22px;
  font-style:normal;
  font-weight:1000;
  text-shadow:0 1px 0 rgba(255,255,255,.35);
}
.rank-medal-1{
  background:linear-gradient(180deg,#fff5ca,#e5b653 50%,#8b561f);
}
.rank-medal-2{
  background:linear-gradient(180deg,#f6f8ff,#bdc7d6 52%,#667181);
}
.rank-medal-3{
  background:linear-gradient(180deg,#ffd9ae,#c57d45 52%,#74401f);
}
.rank-plain{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:34px;
  border-radius:12px;
  color:#f5ead8;
  font-size:17px;
  font-weight:900;
}
.leaderboard-table-v2 tr.top-rank td{
  background:linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 8%,transparent 92%),transparent 62%);
}
.leaderboard-table-v2 tr.me td{
  background:linear-gradient(90deg,rgba(255,214,145,.18),rgba(255,214,145,.055) 58%,transparent);
}
.leaderboard-table-v2 tr.own-extra td{
  border-top:1px solid rgba(255,226,180,.22);
}
.leaderboard-table-v2 tr.rank-1 td:first-child,
.leaderboard-table-v2 tr.rank-2 td:first-child,
.leaderboard-table-v2 tr.rank-3 td:first-child{
  overflow:visible;
}

/* === compact profile identity panel === */
.identity-card .card-pad{
  padding:20px !important;
}
.identity-card .big-name{
  font-size:30px !important;
  margin-top:6px !important;
}
.identity-card .input-row{
  margin-top:12px !important;
  gap:10px !important;
}
.identity-card .input,
.identity-card .btn{
  min-height:42px !important;
  border-radius:13px !important;
  font-size:13px !important;
}
.identity-card .profile-stat-grid{
  margin-top:14px !important;
  gap:9px !important;
}
.identity-card .profile-stat-grid .stat-shell{
  min-height:68px !important;
  padding:10px 11px !important;
  border-radius:13px !important;
}
.identity-card .profile-stat-grid .stat-shell span{
  font-size:11px !important;
}
.identity-card .profile-stat-grid .stat-shell strong{
  font-size:19px !important;
  margin-top:4px !important;
  line-height:1.15 !important;
}
.profile-progress-grid{
  margin-top:10px !important;
  gap:9px !important;
}
.identity-card .progress-card{
  padding:10px !important;
}
.identity-card .progress-card .label{
  min-height:32px !important;
  font-size:11px !important;
  line-height:1.45 !important;
}
.identity-card .progress-card .progress-wrap{
  height:7px !important;
  margin-top:7px !important;
}
@media(max-width:760px){
  .profile-stat-grid,.profile-progress-grid{
    grid-template-columns:1fr !important;
  }
}

/* === profile layout v2: title vault on the right, history below === */
.profile-grid{
  grid-template-columns:minmax(360px,430px) minmax(0,1fr) !important;
  align-items:start;
}
.profile-history-card{
  grid-column:1/-1;
}
.title-panel-card .card-pad{
  padding:24px !important;
}
.title-panel-card h3{
  margin:8px 0 6px;
  color:#fff2d5;
  font-size:24px;
}
.title-panel-card p{
  margin:0 0 12px;
  color:var(--muted);
  line-height:1.65;
  font-size:13px;
}
.identity-card .profile-stat-grid .title-stat{
  grid-column:1/-1;
  min-height:72px !important;
}
.title-role-panel-merged{
  padding:14px !important;
}
.title-count-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-bottom:10px;
}
.title-count-row span{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:0 10px;
  border-radius:12px;
  border:1px solid rgba(255,226,180,.10);
  background:rgba(255,255,255,.035);
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
.title-count-row b{
  color:#ffe5ab;
}
.title-card-grid-merged{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-height:520px;
}
.title-card-role{
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:max-content;
  max-width:100%;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.12);
  background:rgba(255,255,255,.04);
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 72%,white 28%);
  font-size:10px;
  font-weight:1000;
}
.title-card-role i{
  font-style:normal;
}
.title-card-challenger{
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 8%,transparent 92%),transparent 42%),
    linear-gradient(180deg,rgba(24,18,14,.94),rgba(9,7,6,.97));
}
.title-card-banker{
  background:
    linear-gradient(135deg,rgba(125,178,255,.10),transparent 42%),
    linear-gradient(180deg,rgba(24,18,14,.94),rgba(9,7,6,.97));
}
.title-card.equipped .title-card-state{
  color:#2b1908;
  background:linear-gradient(180deg,#fff0c8,#c99545);
  width:max-content;
  padding:4px 8px;
  border-radius:999px;
}
@media(max-width:1320px){
  .profile-grid{
    grid-template-columns:1fr !important;
  }
  .profile-history-card{
    grid-column:auto;
  }
}
@media(max-width:760px){
  .title-card-grid-merged,
  .title-count-row{
    grid-template-columns:1fr;
  }
}

/* === home hero spacing polish === */
.hero-main{
  justify-content:center !important;
  gap:18px !important;
  padding-top:42px !important;
  padding-bottom:34px !important;
}
.hero-main .hero-ribbon{
  margin-bottom:6px !important;
}
.hero-main h2{
  margin:0 0 8px !important;
}
.hero-main p{
  margin:0 !important;
}
.hero-main .hero-stats{
  margin-top:22px !important;
}
@media(max-width:1320px){
  .hero-main{padding-top:34px !important;padding-bottom:30px !important}
}
@media(max-width:760px){
  .hero-main{padding-top:28px !important;padding-bottom:26px !important}
}

/* === setup screen final height alignment === */
:root{
  --setup-rooms-card-h:174px;
  --setup-rooms-gap:11px;
  --setup-mode-gap:24px;
  --setup-total-h:calc(var(--setup-rooms-card-h) * 4 + var(--setup-rooms-gap) * 3);
  --setup-mode-card-h:calc((var(--setup-total-h) - var(--setup-mode-gap)) / 2);
}
.setup-grid{
  align-items:start !important;
}
.mode-stack{
  grid-template-rows:repeat(2,var(--setup-mode-card-h)) !important;
  gap:var(--setup-mode-gap) !important;
}
.mode-card{
  height:var(--setup-mode-card-h) !important;
  min-height:var(--setup-mode-card-h) !important;
  max-height:var(--setup-mode-card-h) !important;
}
.rooms-grid{
  gap:var(--setup-rooms-gap) !important;
}
.room-card{
  height:var(--setup-rooms-card-h) !important;
}
@media(max-width:1320px){
  .mode-stack{grid-template-rows:none !important}
  .mode-card{height:auto !important;min-height:280px !important;max-height:none !important}
}

/* === shop item guide and final money state === */
.shop-item-guide{
  display:grid;
  gap:5px;
  margin:10px 0 12px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.016));
}
.shop-item-guide strong{
  color:#ffe7b4;
  font-size:12px;
  line-height:1.2;
}
.shop-item-guide span{
  color:var(--muted);
  font-size:12px;
  line-height:1.55;
}
.bundle-grant-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:7px;
}
.bundle-grant-list span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.13);
  background:rgba(255,255,255,.045);
  color:#fff0cf;
  font-size:11px;
  font-weight:900;
  line-height:1.2;
}
.money-pill.low.gone,
body[class*="theme-global-"] .money-pill.low.gone{
  color:#ffd4dc !important;
  background:linear-gradient(180deg,rgba(105,38,45,.94),rgba(42,17,21,.98)) !important;
  border-color:rgba(255,142,160,.30) !important;
  box-shadow:inset 0 1px 0 rgba(255,235,238,.06),0 0 0 1px rgba(255,112,136,.10) !important;
}

/* === opened case readability: no flash, larger neutral amount === */
.case-btn.opening{
  animation:none !important;
}
.feedback-flash{
  display:none !important;
}
.case-stage .case-btn.opened .case-shell,
.case-stage[class*='skin-'] .case-btn.opened .case-shell{
  background:linear-gradient(180deg,#1a1511,#080706) !important;
  border-color:rgba(255,238,214,.24) !important;
  box-shadow:0 12px 22px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.case-stage .case-btn.opened .case-label,
.case-stage .case-btn.peeked .case-label{
  padding:5px !important;
  overflow:hidden !important;
}
.case-stage .case-btn.opened .case-label > span,
.case-stage .case-btn.peeked .case-label > span{
  width:calc(100% - 2px) !important;
  max-width:calc(100% - 2px) !important;
  min-width:0 !important;
  min-height:31px !important;
  padding:4px 5px !important;
  border-radius:10px !important;
  border-color:rgba(255,255,255,.32) !important;
  background:rgba(8,7,6,.74) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.case-stage .case-amount-num,
.case-stage .case-amount-num.compact,
.case-stage .case-amount-num.tiny,
.case-stage .case-btn.good .case-amount-num,
.case-stage .case-btn.bad .case-amount-num{
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:100% !important;
  overflow:visible !important;
  white-space:nowrap !important;
  color:#fff7e8 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.78) !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  font-family:"Arial Narrow","Roboto Condensed","Segoe UI",Arial,sans-serif !important;
  font-weight:1000 !important;
  letter-spacing:0 !important;
  line-height:1 !important;
  transform:scaleX(.94) !important;
  transform-origin:center !important;
}
.case-stage .case-amount-num{font-size:18px !important}
.case-stage .case-amount-num.compact{font-size:16px !important;transform:scaleX(.86) !important}
.case-stage .case-amount-num.tiny{font-size:14px !important;transform:scaleX(.78) !important}
@media(max-width:760px){
  .case-stage .case-btn.opened .case-label > span,
  .case-stage .case-btn.peeked .case-label > span{
    min-height:28px !important;
    padding:3px 4px !important;
  }
  .case-stage .case-amount-num{font-size:15px !important;transform:scaleX(.90) !important}
  .case-stage .case-amount-num.compact{font-size:13px !important;transform:scaleX(.80) !important}
  .case-stage .case-amount-num.tiny{font-size:11px !important;transform:scaleX(.72) !important}
}

/* === in-game item entry visibility === */
.item-deck{
  border:1px solid rgba(255,226,180,.24) !important;
  background:linear-gradient(180deg,rgba(37,27,18,.96),rgba(10,8,7,.98)) !important;
  box-shadow:0 14px 30px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,248,230,.08) !important;
}
.item-status{
  color:#fff2d7 !important;
  font-size:13px !important;
}
.item-deck .btn,
#roundItemBtn,
#viewOfferItemBtn,
#offerItemBtn{
  border-color:rgba(255,231,181,.34) !important;
  background:linear-gradient(180deg,#f6db9f,#b9823d 48%,#5f3c1c 100%) !important;
  color:#241407 !important;
  box-shadow:0 10px 22px rgba(218,165,86,.20),inset 0 1px 0 rgba(255,250,235,.52) !important;
}
.item-deck .btn:disabled,
#roundItemBtn:disabled,
#viewOfferItemBtn:disabled,
#offerItemBtn:disabled{
  opacity:.55 !important;
  filter:grayscale(.45) !important;
}
.item-modal-card{
  background:linear-gradient(180deg,rgba(31,23,18,.99),rgba(8,7,7,.995)) !important;
  border-color:rgba(255,226,180,.28) !important;
  box-shadow:0 32px 90px rgba(0,0,0,.72),inset 0 1px 0 rgba(255,248,230,.08) !important;
}
.item-modal-card .shop-item{
  background:linear-gradient(180deg,rgba(37,29,23,.98),rgba(13,10,9,.99)) !important;
  border-color:rgba(255,226,180,.18) !important;
}
.item-modal-card .shop-item.mode-locked{
  opacity:.68;
}
.stage-item-btn,
.stage-offer-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:0 15px;
  border-radius:999px;
  border:1px solid rgba(255,231,181,.42);
  background:linear-gradient(180deg,#ffe5ab,#c18a42 48%,#6a421e 100%);
  color:#241407;
  font-size:13px;
  font-weight:1000;
  box-shadow:0 12px 24px rgba(218,165,86,.24),inset 0 1px 0 rgba(255,250,235,.58);
  cursor:pointer;
  white-space:nowrap;
}
.stage-offer-btn{
  border-color:rgba(255,245,210,.64);
  background:linear-gradient(180deg,#fff1c9,#dfae60 46%,#855220 100%);
  box-shadow:0 14px 28px rgba(255,203,111,.28),0 0 0 1px rgba(255,244,210,.10),inset 0 1px 0 rgba(255,250,235,.68);
}
.stage-item-btn:hover,
.stage-offer-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.05);
}
.offer-return-dock{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:10px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(255,231,181,.34);
  background:linear-gradient(180deg,rgba(47,33,20,.98),rgba(12,9,7,.99)) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,248,230,.08);
}
.offer-return-dock strong{
  display:block;
  color:#fff0cf;
  font-size:14px;
}
.offer-return-dock span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
}
.offer-return-dock .btn{
  flex:0 0 auto;
}
@media(max-width:760px){
  .offer-return-dock{
    display:grid;
  }
  .offer-return-dock .btn{
    width:100%;
  }
}

/* === hard neutralize opened case amount and reveal flash === */
.case-stage .case-btn.opened,
.case-stage .case-btn.opened.good,
.case-stage .case-btn.opened.bad{
  animation:none !important;
}
.case-stage .case-btn.opened .neutral-case-amount,
.case-stage .case-btn.opened.good .neutral-case-amount,
.case-stage .case-btn.opened.bad .neutral-case-amount,
.case-stage .case-btn.peeked .neutral-case-amount{
  color:#fff7e8 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.82) !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  font-size:20px !important;
  font-weight:1000 !important;
  line-height:1 !important;
}
.case-stage .neutral-case-amount.compact{font-size:17px !important;transform:scaleX(.86) !important}
.case-stage .neutral-case-amount.tiny{font-size:14px !important;transform:scaleX(.76) !important}
body.feedback-tense .stage-shell,
body.feedback-win .stage-shell,
body.feedback-deal .stage-shell,
body.feedback-lose .stage-shell{
  animation:none !important;
  box-shadow:none !important;
}

/* === solid in-game item modal === */
#itemModal{
  background:rgba(3,2,1,.94) !important;
  backdrop-filter:blur(18px) saturate(.72) !important;
}
#itemModal .item-modal-card{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#17110d 0%,#090706 100%) !important;
  border-color:rgba(255,226,180,.34) !important;
  box-shadow:0 34px 92px rgba(0,0,0,.86),inset 0 1px 0 rgba(255,248,230,.10) !important;
  isolation:isolate;
}
#itemModal .item-modal-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(135deg,rgba(255,226,180,.06),rgba(0,0,0,0) 42%);
  pointer-events:none;
}
#itemModal .modal-title{
  position:sticky;
  top:0;
  z-index:3;
  margin:-2px 0 14px;
  padding:4px 0 14px;
  background:linear-gradient(180deg,#17110d 72%,rgba(23,17,13,0));
}
#itemModal .item-modal-grid{
  background:#060504 !important;
  border:1px solid rgba(255,226,180,.16);
  border-radius:18px;
  padding:14px !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.04);
}
#itemModal .item-modal-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.14);
  background:linear-gradient(180deg,rgba(255,238,198,.08),rgba(255,238,198,.03));
}
#itemModal .item-modal-top strong{
  display:block;
  color:#fff2d8;
  font-weight:1000;
}
#itemModal .item-modal-top span{
  display:block;
  margin-top:3px;
  color:#b9aa91;
  font-size:12px;
}
#itemModal .item-modal-top b{
  flex:0 0 auto;
  color:#f0d39a;
  font-weight:1000;
}
#itemModal .item-modal-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:0 0 12px;
}
#itemModal .item-modal-tab{
  min-height:38px;
  border:1px solid rgba(255,226,180,.18);
  border-radius:12px;
  background:linear-gradient(180deg,rgba(52,40,29,.94),rgba(14,11,9,.98));
  color:#f6ebd8;
  font-weight:900;
  cursor:pointer;
}
#itemModal .item-modal-tab.active{
  background:linear-gradient(180deg,#f2dfb7 0%,#c79858 52%,#765126 100%);
  color:#231507;
}
#itemModal .shop-item{
  background:linear-gradient(180deg,#211812 0%,#0c0907 100%) !important;
  border-color:rgba(255,226,180,.22) !important;
  box-shadow:0 14px 30px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,248,230,.08) !important;
}
#itemModal .item-modal-actions-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
#itemModal .bundle-grant-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}
#itemModal .bundle-grant-list span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.14);
  background:rgba(255,238,198,.06);
  color:#ecd8b2;
  font-size:12px;
  font-weight:800;
}
#itemModal .item-modal-empty{
  padding:24px 12px;
  text-align:center;
  color:#b9aa91;
  font-weight:800;
}
#itemModal .shop-item-guide{
  background:#0b0907 !important;
  border-color:rgba(255,226,180,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.04) !important;
}
#itemModal .modal-actions{
  position:sticky;
  bottom:0;
  z-index:3;
  margin:8px -4px -4px;
  padding:14px 4px 4px;
  background:linear-gradient(180deg,rgba(9,7,6,0),#090706 38%);
}

/* === stage side money readability and compact action head === */
@media(min-width:1321px){
  .table-layout{
    grid-template-columns:292px minmax(0,1fr) 292px !important;
    gap:16px !important;
  }
}
.money-plaque{
  padding:18px 18px !important;
}
.money-list{
  gap:9px !important;
}
.money-pill,
.money-pill.high{
  min-width:0;
  height:40px !important;
  padding:0 14px !important;
  font-size:16px !important;
  font-weight:1000 !important;
  letter-spacing:0 !important;
  white-space:nowrap;
}
.money-pill.gone::after{
  top:7px !important;
  right:10px !important;
  font-size:15px !important;
}
.stage-head{
  grid-template-columns:minmax(160px,1fr) minmax(0,auto) !important;
  gap:10px !important;
  padding:10px 12px !important;
  overflow:hidden;
}
.stage-head-right{
  min-width:0;
  max-width:100%;
  gap:8px !important;
  flex-wrap:nowrap !important;
  justify-content:flex-end !important;
}
.stage-switches{
  min-width:0;
  gap:7px !important;
  flex-wrap:nowrap !important;
}
.stage-head .title-badge,
.stage-head .stage-item-btn,
.stage-head .stage-offer-btn,
.stage-head .mini-switch{
  height:34px !important;
  min-height:34px !important;
  padding:0 11px !important;
  font-size:12px !important;
  border-radius:14px !important;
  box-shadow:0 8px 16px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,248,230,.08) !important;
}
.stage-head .stage-offer-btn{
  padding:0 13px !important;
}
.stage-head .stage-item-btn{
  padding:0 12px !important;
}
.stage-head .ico{
  width:15px !important;
  min-width:15px !important;
  font-size:12px !important;
}
.stage-live{
  min-width:0;
}
.stage-live span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* === final stage head vertical alignment === */
.stage-head{
  min-height:56px !important;
  height:56px !important;
  padding:8px 12px !important;
  align-items:center !important;
}
.stage-head-right,
.stage-switches,
.stage-live{
  height:100%;
  align-items:center !important;
}
.stage-head .title-badge,
.stage-head .stage-item-btn,
.stage-head .stage-offer-btn,
.stage-head .mini-switch{
  height:32px !important;
  min-height:32px !important;
  line-height:32px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  align-items:center !important;
  box-shadow:0 6px 12px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,248,230,.08) !important;
}
.stage-head .stage-item-btn:hover,
.stage-head .stage-offer-btn:hover,
.stage-head .mini-switch:hover{
  transform:none !important;
}

/* === opened case amount size tuning === */
.case-stage .case-btn.opened .case-label > span,
.case-stage .case-btn.peeked .case-label > span{
  width:calc(100% - 1px) !important;
  max-width:calc(100% - 1px) !important;
  padding-left:3px !important;
  padding-right:3px !important;
}
.case-stage .neutral-case-amount{
  display:inline-block !important;
  max-width:98% !important;
  font-size:20px !important;
  letter-spacing:0 !important;
  transform:scaleX(.92) !important;
  white-space:nowrap !important;
}
.case-stage .neutral-case-amount.compact{
  font-size:19px !important;
  transform:scaleX(.82) !important;
}
.case-stage .neutral-case-amount.tiny{
  font-size:18px !important;
  transform:scaleX(.72) !important;
}

/* === amount box separates text scaling from the dark plate === */
.case-stage .case-btn.opened .case-label > .case-amount-box,
.case-stage .case-btn.peeked .case-label > .case-amount-box{
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:relative !important;
  width:calc(100% - 2px) !important;
  max-width:calc(100% - 2px) !important;
  min-height:32px !important;
  padding:0 2px !important;
  border-radius:10px !important;
  background:rgba(8,7,6,.78) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
  overflow:hidden !important;
  transform:none !important;
}
.case-stage .case-amount-box .neutral-case-amount,
.case-stage .case-amount-box .neutral-case-amount.compact,
.case-stage .case-amount-box .neutral-case-amount.tiny{
  display:block !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff7e8 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.82) !important;
  font-family:"Arial Narrow","Roboto Condensed","Arial Black","Arial","Segoe UI",sans-serif !important;
  font-size:var(--case-amount-size,19px) !important;
  font-weight:1000 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  transform:translate(-50%,-50%) scaleX(var(--case-amount-scale,.96)) !important;
  transform-origin:center !important;
}

/* === banker mode AI main case marker === */
.case-owner-badge{
  position:absolute;
  left:50%;
  top:-16px;
  z-index:5;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:58px;
  height:22px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(255,242,206,.72);
  background:linear-gradient(180deg,rgba(255,236,186,.98),rgba(188,129,55,.96));
  color:#241407;
  font-size:11px;
  font-weight:1000;
  line-height:1;
  white-space:nowrap;
  pointer-events:none;
  transform:translateX(-50%);
  box-shadow:0 10px 20px rgba(0,0,0,.34),0 0 18px rgba(255,216,137,.20),inset 0 1px 0 rgba(255,255,255,.55);
}
.case-stage .case-btn.ai:not(.opened) .case-shell{
  outline:2px solid rgba(255,226,155,.95) !important;
  box-shadow:0 0 0 3px rgba(255,226,155,.10),0 0 30px rgba(255,216,137,.24),0 18px 28px rgba(0,0,0,.46),inset 0 2px 0 rgba(255,249,235,.72),inset 0 -6px 0 rgba(0,0,0,.50) !important;
}
@media(max-width:760px){
  .case-owner-badge{
    top:-14px;
    min-width:52px;
    height:20px;
    padding:0 6px;
    font-size:10px;
  }
}

/* === lighter overlay for reading modals === */
#feedbackModal,
#messageModal,
#versionModal,
#rewardModal,
#posterModal{
  background:
    radial-gradient(circle at 50% 16%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%),transparent 34%),
    rgba(5,4,4,.46) !important;
  backdrop-filter:blur(8px) saturate(1.04) !important;
}
#feedbackModal .modal-card,
#messageModal .modal-card,
#versionModal .modal-card,
#rewardModal .modal-card,
#posterModal .modal-card{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 32%,transparent 68%) !important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.66)),
    var(--theme-scene,radial-gradient(circle at 64% 10%,rgba(232,200,134,.12),transparent 32%)),
    radial-gradient(circle at 50% 0%,var(--theme-glow,rgba(232,200,134,.16)),transparent 30%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c,#2a1b10) 62%,rgba(48,36,25,.99) 38%),rgba(7,6,5,.995)) !important;
  background-size:auto,cover,auto,auto !important;
  background-position:center,center,center,center !important;
  box-shadow:
    0 36px 92px rgba(0,0,0,.58),
    0 0 34px var(--theme-glow,rgba(232,200,134,.16)),
    inset 0 1px 0 color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%) !important;
}
#feedbackModal .modal-title,
#messageModal .modal-title,
#versionModal .modal-title,
#rewardModal .modal-title,
#posterModal .modal-title{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 42%,white 58%) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.72);
}
#feedbackModal .modal-copy,
#messageModal .modal-copy,
#versionModal .modal-copy,
#rewardModal .modal-copy,
#posterModal .modal-copy{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 22%,#efe4d2 78%) !important;
}
#messageModal .message-card,
#versionModal .player-changelog-card{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 10%,rgba(255,255,255,.075) 90%),rgba(255,255,255,.032)),
    color-mix(in srgb,var(--theme-c,#2a1b10) 18%,transparent 82%) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 20%,transparent 80%) !important;
}
#messageModal .message-card p,
#versionModal .player-changelog-card ul{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 18%,#f2e6d4 82%) !important;
}
#messageModal .message-list-card:hover,
#messageModal .message-list-card:focus-visible{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,transparent 66%) !important;
  box-shadow:0 16px 32px rgba(0,0,0,.22),0 0 18px var(--theme-glow,rgba(232,200,134,.16)) !important;
}
#messageModal .message-open-hint,
#messageModal .message-type{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 76%,white 24%) !important;
}
#messageModal .message-back-btn{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 22%,transparent 78%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 16%,rgba(60,42,26,.62) 84%),rgba(13,9,8,.92)) !important;
}
#messageModal .modal-icon-close{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 22%,transparent 78%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 16%,rgba(60,42,26,.72) 84%),rgba(13,9,8,.96)) !important;
}
#messageModal .message-detail-content{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 14%,transparent 86%) !important;
  background:color-mix(in srgb,var(--theme-c,#2a1b10) 30%,rgba(0,0,0,.18) 70%) !important;
}
#feedbackModal .feedback-textarea{
  background:color-mix(in srgb,var(--theme-c,#2a1b10) 34%,rgba(9,7,6,.78) 66%) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 26%,transparent 74%) !important;
  color:color-mix(in srgb,var(--theme-a,#e8c886) 18%,#fff7e8 82%) !important;
}

/* === banker offer controls === */
.control-deck .banker-offer-panel{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  gap:10px;
  min-width:360px;
  height:44px;
  padding:4px 6px 4px 14px;
  border-radius:16px;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 26%,transparent 74%);
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 10%,rgba(255,255,255,.08) 90%),rgba(255,255,255,.025)),
    color-mix(in srgb,var(--theme-c,#2a1b10) 40%,rgba(5,4,4,.92) 60%);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%),
    0 14px 28px rgba(0,0,0,.24);
}
.control-deck .banker-offer-panel label{
  flex:0 0 auto;
  color:color-mix(in srgb,var(--theme-a,#e8c886) 76%,white 24%);
  font-size:12px;
  font-weight:1000;
  letter-spacing:1.4px;
}
.control-deck .banker-offer-input{
  flex:1 1 190px;
  min-width:190px !important;
  height:34px !important;
  min-height:34px !important;
  padding:0 14px !important;
  border-radius:12px !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 28%,transparent 72%) !important;
  background:linear-gradient(180deg,rgba(0,0,0,.86),rgba(7,5,4,.94)) !important;
  color:#fff7e8 !important;
  font-size:18px !important;
  font-weight:1000 !important;
  text-align:right;
  box-shadow:
    inset 0 2px 10px rgba(0,0,0,.48),
    0 0 18px color-mix(in srgb,var(--theme-a,#e8c886) 10%,transparent 90%) !important;
}
.control-deck .banker-offer-input:focus{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 58%,white 42%) !important;
  box-shadow:
    inset 0 2px 10px rgba(0,0,0,.48),
    0 0 0 2px color-mix(in srgb,var(--theme-a,#e8c886) 16%,transparent 84%),
    0 0 22px color-mix(in srgb,var(--theme-a,#e8c886) 22%,transparent 78%) !important;
}
.control-deck .quick-quote-btn{
  min-width:112px;
}
@media (max-width:900px){
  .control-deck .banker-offer-panel{
    width:100%;
    min-width:0;
  }
  .control-deck .banker-offer-input{
    min-width:0 !important;
  }
}

/* === stage theme refresh v5: brighter, cleaner and more distinct themes === */
body.theme-global-vault{
  --theme-a:#f3c96f;
  --theme-b:#bc8b41;
  --theme-c:#31414a;
  --theme-glow:rgba(243,201,111,.26);
  --theme-line:rgba(244,211,141,.28);
  --theme-scene:
    radial-gradient(circle at 70% 20%,rgba(255,245,212,.56),transparent 15%),
    radial-gradient(circle at 50% 56%,rgba(241,202,114,.24),transparent 34%),
    linear-gradient(135deg,#f8f0dc 0%,#d8e3e7 48%,#96b4bf 100%);
  background:
    radial-gradient(circle at 18% 8%,rgba(255,245,212,.72),transparent 24%),
    radial-gradient(circle at 82% 10%,rgba(162,190,202,.48),transparent 24%),
    linear-gradient(135deg,#fff6e3 0%,#dcebed 52%,#b5ccd2 100%) !important;
}
body.theme-global-garden{
  --theme-a:#9ae7ad;
  --theme-b:#4ebc7d;
  --theme-c:#1f4537;
  --theme-glow:rgba(143,217,167,.28);
  --theme-line:rgba(169,237,188,.28);
  --theme-scene:
    radial-gradient(circle at 22% 22%,rgba(255,255,255,.66),transparent 12%),
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.38) 18% 19%,transparent 19% 38%,rgba(255,255,255,.24) 38% 39%,transparent 39%),
    radial-gradient(circle at 72% 64%,rgba(108,190,128,.34),transparent 28%),
    linear-gradient(135deg,#edf9ed 0%,#b8e5c2 50%,#74bf94 100%);
  background:
    radial-gradient(circle at 18% 8%,rgba(235,255,238,.70),transparent 24%),
    radial-gradient(circle at 84% 14%,rgba(122,202,151,.40),transparent 24%),
    linear-gradient(135deg,#f7fff7 0%,#d7f0dc 54%,#a2d3b5 100%) !important;
}
body.theme-global-marina{
  --theme-a:#86daf2;
  --theme-b:#438eb5;
  --theme-c:#1a4a60;
  --theme-glow:rgba(125,214,239,.28);
  --theme-line:rgba(156,225,244,.28);
  --theme-scene:
    radial-gradient(circle at 78% 18%,rgba(255,255,255,.62),transparent 13%),
    linear-gradient(180deg,rgba(255,255,255,.46),transparent 34%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.20) 0 2px,transparent 2px 36px),
    linear-gradient(135deg,#f5fbff 0%,#a6dceb 46%,#5ba7c7 100%);
  background:
    radial-gradient(circle at 20% 8%,rgba(245,252,255,.80),transparent 24%),
    radial-gradient(circle at 82% 12%,rgba(99,177,209,.42),transparent 25%),
    linear-gradient(135deg,#f9fdff 0%,#d6f0f8 48%,#93c9db 100%) !important;
}
body.theme-global-cloud{
  --theme-a:#ccbfff;
  --theme-b:#8a7bd8;
  --theme-c:#36345f;
  --theme-glow:rgba(199,183,255,.30);
  --theme-line:rgba(211,201,255,.30);
  --theme-scene:
    radial-gradient(ellipse at 28% 72%,rgba(255,255,255,.64),transparent 26%),
    radial-gradient(ellipse at 74% 28%,rgba(255,255,255,.50),transparent 24%),
    linear-gradient(140deg,rgba(210,202,255,.62),transparent 38%,rgba(255,255,255,.50) 70%,transparent),
    linear-gradient(135deg,#fbf9ff 0%,#ddd8ff 50%,#b9d4ff 100%);
  background:
    radial-gradient(circle at 22% 8%,rgba(255,255,255,.80),transparent 24%),
    radial-gradient(circle at 84% 10%,rgba(194,184,255,.42),transparent 26%),
    linear-gradient(135deg,#fff 0%,#eeeaff 50%,#cbdfff 100%) !important;
}
body.theme-global-molten{
  --theme-a:#ffc765;
  --theme-b:#de7b33;
  --theme-c:#4b291c;
  --theme-glow:rgba(255,199,101,.30);
  --theme-line:rgba(255,214,139,.30);
  --theme-scene:
    radial-gradient(circle at 70% 18%,rgba(255,239,196,.60),transparent 15%),
    linear-gradient(90deg,rgba(255,231,173,.30) 0 18%,transparent 18% 82%,rgba(255,231,173,.26) 82% 100%),
    radial-gradient(circle at 56% 78%,rgba(255,177,72,.36),transparent 26%),
    linear-gradient(135deg,#fff1ce 0%,#e3a75a 48%,#b9673e 100%);
  background:
    radial-gradient(circle at 20% 8%,rgba(255,238,190,.74),transparent 24%),
    radial-gradient(circle at 84% 12%,rgba(236,139,66,.42),transparent 24%),
    linear-gradient(135deg,#fff7df 0%,#e9bf78 50%,#c58964 100%) !important;
}
body.theme-global-aurora{
  --theme-a:#a5f1e7;
  --theme-b:#9ba8ff;
  --theme-c:#1d4a5a;
  --theme-glow:rgba(165,241,231,.30);
  --theme-line:rgba(197,246,242,.30);
  --theme-scene:
    linear-gradient(100deg,transparent,rgba(109,255,211,.42),transparent 45%,rgba(142,159,255,.40),transparent),
    radial-gradient(circle at 76% 20%,rgba(255,255,255,.70),transparent 14%),
    linear-gradient(135deg,#f4feff 0%,#cceef6 42%,#a6b8ff 100%);
  background:
    radial-gradient(circle at 20% 8%,rgba(238,255,255,.82),transparent 24%),
    radial-gradient(circle at 84% 12%,rgba(158,169,255,.42),transparent 24%),
    linear-gradient(135deg,#fbffff 0%,#d2f4f5 50%,#bbc8ff 100%) !important;
}

body[class*="theme-global-"]::before{opacity:.25 !important}
body[class*="theme-global-"]::after{opacity:.28 !important}
body[class*="theme-global-"] .topbar,
body[class*="theme-global-"] .footerbar{
  border-color:var(--theme-line) !important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 72%,rgba(255,255,255,.16) 28%),rgba(15,19,22,.90)) !important;
  box-shadow:0 16px 34px rgba(31,38,46,.22),0 0 30px var(--theme-glow) !important;
}
body[class*="theme-global-"] .card,
body[class*="theme-global-"] .modal-card,
body[class*="theme-global-"] .money-plaque,
body[class*="theme-global-"] .stage-head,
body[class*="theme-global-"] .stage-status,
body[class*="theme-global-"] .announcer,
body[class*="theme-global-"] .control-deck,
body[class*="theme-global-"] .item-deck,
body[class*="theme-global-"] .shop-item{
  border-color:var(--theme-line) !important;
  background:
    radial-gradient(circle at 86% 10%,var(--theme-glow),transparent 25%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 62%,rgba(255,255,255,.18) 38%),rgba(16,20,22,.90)) !important;
  box-shadow:0 18px 44px rgba(31,38,46,.24),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body[class*="theme-global-"] .hero-main,
body[class*="theme-global-"] .stage-shell{
  border-color:var(--theme-line) !important;
  background:
    linear-gradient(180deg,rgba(20,24,27,.38),rgba(14,18,20,.78)),
    var(--theme-scene) !important;
  background-size:cover !important;
  background-position:center !important;
  box-shadow:0 24px 64px rgba(31,38,46,.22),0 0 36px var(--theme-glow) !important;
}
body[class*="theme-global-"] .case-stage,
body[class*="theme-global-"] .shop-preview-scene{
  background:
    linear-gradient(180deg,rgba(17,21,24,.34),rgba(10,13,15,.70)),
    var(--theme-scene) !important;
  background-size:cover !important;
  background-position:center !important;
  border-color:color-mix(in srgb,var(--theme-a) 24%,transparent 76%) !important;
}
body[class*="theme-global-"] .stat-shell,
body[class*="theme-global-"] .status-chip,
body[class*="theme-global-"] .summary-card,
body[class*="theme-global-"] .history-item,
body[class*="theme-global-"] .result-row,
body[class*="theme-global-"] .room-line{
  border-color:color-mix(in srgb,var(--theme-a) 20%,transparent 80%) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.035)) !important;
}
body[class*="theme-global-"] .nav-btn.active,
body[class*="theme-global-"] .nav-btn:hover,
body[class*="theme-global-"] .foot-btn:hover{
  border-color:color-mix(in srgb,var(--theme-a) 38%,transparent 62%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a) 32%,rgba(255,255,255,.10) 68%),rgba(18,21,22,.86)) !important;
  box-shadow:0 12px 24px rgba(31,38,46,.18),0 0 20px var(--theme-glow) !important;
}
body[class*="theme-global-"] .btn-primary,
body[class*="theme-global-"] .logo-emblem{
  background:linear-gradient(180deg,#fff9df 0%,var(--theme-a) 42%,var(--theme-b) 100%) !important;
}
body[class*="theme-global-"] .feature-pill,
body[class*="theme-global-"] .shop-state-pill,
body[class*="theme-global-"] .shop-type-pill,
body[class*="theme-global-"] .mode-badge,
body[class*="theme-global-"] .room-badge,
body[class*="theme-global-"] .title-badge,
body[class*="theme-global-"] .hero-ribbon{
  border-color:color-mix(in srgb,var(--theme-a) 28%,transparent 72%) !important;
  background:color-mix(in srgb,var(--theme-a) 14%,rgba(20,24,27,.70) 86%) !important;
  color:color-mix(in srgb,var(--theme-a) 62%,white 38%) !important;
}

.stage-shell.theme-vault,
.stage-shell.theme-garden,
.stage-shell.theme-marina,
.stage-shell.theme-cloud,
.stage-shell.theme-molten,
.stage-shell.theme-aurora,
.case-stage.scene-vault,
.case-stage.scene-garden,
.case-stage.scene-marina,
.case-stage.scene-cloud,
.case-stage.scene-molten,
.case-stage.scene-aurora{
  background:
    linear-gradient(180deg,rgba(16,20,23,.34),rgba(8,10,12,.72)),
    var(--theme-scene) !important;
  background-size:cover !important;
  background-position:center !important;
}

.theme-thumb.theme-vault,
.shop-preview-scene.theme-vault,
.shop-preview-scene.preview-table.theme-vault,
#tableShopGrid .theme-thumb.theme-vault{background:linear-gradient(180deg,rgba(20,24,27,.16),rgba(20,24,27,.42)),radial-gradient(circle at 70% 20%,rgba(255,245,212,.70),transparent 16%),linear-gradient(135deg,#fff3d5,#d8e3e7 48%,#8fb1bd) !important}
.theme-thumb.theme-garden,
.shop-preview-scene.theme-garden,
.shop-preview-scene.preview-table.theme-garden,
#tableShopGrid .theme-thumb.theme-garden{background:linear-gradient(180deg,rgba(20,24,27,.12),rgba(20,24,27,.36)),linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.40) 18% 19%,transparent 19% 38%,rgba(255,255,255,.25) 38% 39%,transparent 39%),radial-gradient(circle at 72% 62%,rgba(93,181,112,.36),transparent 28%),linear-gradient(135deg,#effbee,#b9e8c5 48%,#70bc91) !important}
.theme-thumb.theme-marina,
.shop-preview-scene.theme-marina,
.shop-preview-scene.preview-table.theme-marina,
#tableShopGrid .theme-thumb.theme-marina{background:linear-gradient(180deg,rgba(20,24,27,.12),rgba(20,24,27,.38)),repeating-linear-gradient(0deg,rgba(255,255,255,.22) 0 2px,transparent 2px 36px),radial-gradient(circle at 80% 18%,rgba(255,255,255,.70),transparent 14%),linear-gradient(135deg,#fbfdff,#a8deee 45%,#5ca9ca) !important}
.theme-thumb.theme-cloud,
.shop-preview-scene.theme-cloud,
.shop-preview-scene.preview-table.theme-cloud,
#tableShopGrid .theme-thumb.theme-cloud{background:linear-gradient(180deg,rgba(20,24,27,.10),rgba(20,24,27,.34)),radial-gradient(ellipse at 28% 72%,rgba(255,255,255,.72),transparent 28%),radial-gradient(ellipse at 74% 28%,rgba(255,255,255,.58),transparent 26%),linear-gradient(135deg,#fff,#e3ddff 48%,#bbd7ff) !important}
.theme-thumb.theme-molten,
.shop-preview-scene.theme-molten,
.shop-preview-scene.preview-table.theme-molten,
#tableShopGrid .theme-thumb.theme-molten{background:linear-gradient(180deg,rgba(20,24,27,.16),rgba(20,24,27,.42)),linear-gradient(90deg,rgba(255,231,173,.32) 0 18%,transparent 18% 82%,rgba(255,231,173,.28) 82% 100%),radial-gradient(circle at 58% 78%,rgba(255,175,70,.42),transparent 28%),linear-gradient(135deg,#fff0cb,#e2a45a 48%,#b9653c) !important}
.theme-thumb.theme-aurora,
.shop-preview-scene.theme-aurora,
.shop-preview-scene.preview-table.theme-aurora,
#tableShopGrid .theme-thumb.theme-aurora{background:linear-gradient(100deg,transparent,rgba(109,255,211,.42),transparent 45%,rgba(142,159,255,.38),transparent),linear-gradient(180deg,rgba(20,24,27,.08),rgba(20,24,27,.36)),radial-gradient(circle at 76% 20%,rgba(255,255,255,.76),transparent 14%),linear-gradient(135deg,#f7feff,#caedf6 42%,#a6b8ff) !important}

body.theme-global-garden .live-dot{background:#9ae7ad !important}
body.theme-global-marina .live-dot{background:#86daf2 !important}
body.theme-global-cloud .live-dot{background:#ccbfff !important}
body.theme-global-molten .live-dot{background:#ffc765 !important}
body.theme-global-aurora .live-dot{background:#a5f1e7 !important}

/* === stage theme art direction v6: cinematic scenes, lights and particles === */
@keyframes themeParticleDrift{
  0%{background-position:0 0,0 0,0 0}
  100%{background-position:180px -260px,-220px 180px,0 0}
}
@keyframes themeLightBreath{
  0%,100%{opacity:.72;filter:saturate(1)}
  50%{opacity:.95;filter:saturate(1.18)}
}
body[class*="theme-global-"]{
  --theme-panel:color-mix(in srgb,var(--theme-c,#19120c) 60%,rgba(8,6,5,.96) 40%);
  --theme-panel-2:color-mix(in srgb,var(--theme-c,#19120c) 32%,rgba(7,5,4,.98) 68%);
  --theme-veil:rgba(3,3,5,.46);
}
body.theme-global-vault{
  --theme-a:#f4c96d;
  --theme-b:#a87635;
  --theme-c:#171922;
  --theme-glow:rgba(244,201,109,.30);
  --theme-line:rgba(244,201,109,.30);
  --theme-scene:
    radial-gradient(circle at 50% 50%,rgba(245,205,115,.20) 0 9%,transparent 10% 15%,rgba(245,205,115,.10) 16% 17%,transparent 18% 38%),
    conic-gradient(from 12deg at 50% 52%,transparent 0 8deg,rgba(244,201,109,.16) 8deg 12deg,transparent 12deg 34deg,rgba(244,201,109,.10) 34deg 38deg,transparent 38deg 72deg),
    linear-gradient(90deg,rgba(255,224,150,.10) 0 1px,transparent 1px 12%,rgba(255,224,150,.08) 12% 13%,transparent 13% 87%,rgba(255,224,150,.08) 87% 88%,transparent 88%),
    radial-gradient(circle at 18% 10%,rgba(255,239,190,.22),transparent 22%),
    linear-gradient(180deg,#191720 0%,#0b090b 64%,#050404 100%);
  --theme-spotlights:
    linear-gradient(114deg,transparent 0 18%,rgba(255,227,155,.13) 20%,transparent 38%),
    linear-gradient(246deg,transparent 0 20%,rgba(255,227,155,.10) 22%,transparent 42%);
  --theme-particles:
    radial-gradient(circle,rgba(255,224,150,.64) 0 1px,transparent 1.4px),
    radial-gradient(circle,rgba(255,247,213,.32) 0 1px,transparent 1.5px),
    linear-gradient(180deg,transparent,rgba(0,0,0,.34));
  background:
    radial-gradient(circle at 18% 8%,rgba(244,201,109,.18),transparent 23%),
    radial-gradient(circle at 82% 6%,rgba(137,108,69,.18),transparent 24%),
    linear-gradient(135deg,#080707 0%,#14131a 48%,#090707 100%) !important;
}
body.theme-global-garden{
  --theme-a:#ff8fc1;
  --theme-b:#79ddbd;
  --theme-c:#171428;
  --theme-glow:rgba(255,143,193,.26);
  --theme-line:rgba(150,230,207,.26);
  --theme-scene:
    linear-gradient(112deg,transparent 0 17%,rgba(216,255,239,.13) 17% 18%,transparent 18% 37%,rgba(255,176,218,.14) 37% 38%,transparent 38% 62%,rgba(216,255,239,.12) 62% 63%,transparent 63%),
    radial-gradient(circle at 22% 78%,rgba(105,232,178,.18),transparent 24%),
    radial-gradient(circle at 78% 22%,rgba(255,143,193,.20),transparent 25%),
    radial-gradient(ellipse at 50% 96%,rgba(247,205,123,.16),transparent 32%),
    linear-gradient(180deg,#18142b 0%,#0b1320 58%,#060608 100%);
  --theme-spotlights:
    linear-gradient(104deg,transparent 0 16%,rgba(255,196,226,.13) 20%,transparent 40%),
    linear-gradient(256deg,transparent 0 18%,rgba(130,237,208,.12) 21%,transparent 42%);
  --theme-particles:
    radial-gradient(circle,rgba(255,154,202,.58) 0 1px,transparent 1.4px),
    radial-gradient(circle,rgba(134,239,208,.42) 0 1px,transparent 1.5px),
    linear-gradient(180deg,transparent,rgba(0,0,0,.36));
  background:
    radial-gradient(circle at 18% 8%,rgba(255,143,193,.16),transparent 24%),
    radial-gradient(circle at 86% 12%,rgba(121,221,189,.14),transparent 26%),
    linear-gradient(135deg,#08070d 0%,#151226 50%,#061011 100%) !important;
}
body.theme-global-marina{
  --theme-a:#74daf6;
  --theme-b:#e08b57;
  --theme-c:#0b2633;
  --theme-glow:rgba(116,218,246,.26);
  --theme-line:rgba(116,218,246,.28);
  --theme-scene:
    radial-gradient(circle at 78% 18%,rgba(255,176,104,.34),transparent 12%),
    linear-gradient(180deg,transparent 0 45%,rgba(116,218,246,.12) 45% 46%,transparent 46%),
    repeating-linear-gradient(0deg,transparent 0 34px,rgba(182,241,255,.09) 35px 37px,transparent 38px 66px),
    linear-gradient(120deg,transparent 0 64%,rgba(255,226,174,.12) 65% 66%,transparent 67%),
    linear-gradient(180deg,#12364a 0%,#0a2838 50%,#061014 100%);
  --theme-spotlights:
    linear-gradient(110deg,transparent 0 20%,rgba(116,218,246,.13) 24%,transparent 46%),
    linear-gradient(250deg,transparent 0 22%,rgba(255,184,112,.12) 25%,transparent 44%);
  --theme-particles:
    radial-gradient(circle,rgba(155,232,255,.50) 0 1px,transparent 1.3px),
    radial-gradient(circle,rgba(255,203,139,.38) 0 1px,transparent 1.5px),
    linear-gradient(180deg,transparent,rgba(0,0,0,.30));
  background:
    radial-gradient(circle at 82% 10%,rgba(224,139,87,.18),transparent 22%),
    radial-gradient(circle at 18% 15%,rgba(116,218,246,.12),transparent 25%),
    linear-gradient(135deg,#061015 0%,#0d2c3b 48%,#061014 100%) !important;
}
body.theme-global-cloud{
  --theme-a:#9ad7ff;
  --theme-b:#8f91ff;
  --theme-c:#161a3b;
  --theme-glow:rgba(154,215,255,.28);
  --theme-line:rgba(164,205,255,.30);
  --theme-scene:
    radial-gradient(ellipse at 28% 78%,rgba(255,255,255,.20),transparent 28%),
    radial-gradient(ellipse at 74% 32%,rgba(210,225,255,.18),transparent 25%),
    linear-gradient(100deg,transparent 0 20%,rgba(154,215,255,.12) 23%,transparent 45%,rgba(143,145,255,.13) 62%,transparent 78%),
    linear-gradient(180deg,#1b2550 0%,#111737 56%,#070816 100%);
  --theme-spotlights:
    linear-gradient(104deg,transparent 0 16%,rgba(185,225,255,.18) 20%,transparent 42%),
    linear-gradient(258deg,transparent 0 18%,rgba(158,160,255,.14) 22%,transparent 44%);
  --theme-particles:
    radial-gradient(circle,rgba(206,237,255,.56) 0 1px,transparent 1.4px),
    radial-gradient(circle,rgba(170,176,255,.42) 0 1px,transparent 1.5px),
    linear-gradient(180deg,transparent,rgba(0,0,0,.34));
  background:
    radial-gradient(circle at 20% 8%,rgba(154,215,255,.16),transparent 24%),
    radial-gradient(circle at 84% 10%,rgba(143,145,255,.17),transparent 26%),
    linear-gradient(135deg,#080a16 0%,#151b42 52%,#070816 100%) !important;
}
body.theme-global-molten{
  --theme-a:#ffb957;
  --theme-b:#d06431;
  --theme-c:#2a120b;
  --theme-glow:rgba(255,156,68,.30);
  --theme-line:rgba(255,190,105,.30);
  --theme-scene:
    linear-gradient(90deg,rgba(255,216,135,.10) 0 14%,transparent 14% 86%,rgba(255,216,135,.08) 86% 100%),
    radial-gradient(circle at 50% 86%,rgba(255,116,50,.28),transparent 30%),
    radial-gradient(circle at 72% 18%,rgba(255,207,120,.14),transparent 20%),
    linear-gradient(180deg,#32130d 0%,#160807 58%,#060302 100%);
  --theme-spotlights:
    linear-gradient(108deg,transparent 0 18%,rgba(255,176,70,.15) 22%,transparent 44%),
    linear-gradient(252deg,transparent 0 19%,rgba(255,216,134,.10) 23%,transparent 44%);
  --theme-particles:
    radial-gradient(circle,rgba(255,185,87,.68) 0 1px,transparent 1.4px),
    radial-gradient(circle,rgba(255,95,40,.38) 0 1px,transparent 1.5px),
    linear-gradient(180deg,transparent,rgba(0,0,0,.42));
  background:
    radial-gradient(circle at 18% 8%,rgba(255,185,87,.14),transparent 24%),
    radial-gradient(circle at 84% 12%,rgba(208,100,49,.16),transparent 24%),
    linear-gradient(135deg,#060302 0%,#1e0b08 48%,#070302 100%) !important;
}
body.theme-global-aurora{
  --theme-a:#8ee9de;
  --theme-b:#91a5ff;
  --theme-c:#0b263b;
  --theme-glow:rgba(142,233,222,.28);
  --theme-line:rgba(168,239,234,.30);
  --theme-scene:
    linear-gradient(100deg,transparent 0 14%,rgba(98,255,209,.20) 26%,transparent 42%,rgba(145,165,255,.18) 56%,transparent 76%),
    radial-gradient(circle at 72% 18%,rgba(220,255,249,.14),transparent 18%),
    radial-gradient(circle at 20% 82%,rgba(145,165,255,.12),transparent 28%),
    linear-gradient(180deg,#10233b 0%,#08162a 60%,#03070e 100%);
  --theme-spotlights:
    linear-gradient(106deg,transparent 0 18%,rgba(142,233,222,.12) 22%,transparent 44%),
    linear-gradient(252deg,transparent 0 18%,rgba(145,165,255,.13) 22%,transparent 44%);
  --theme-particles:
    radial-gradient(circle,rgba(190,255,246,.62) 0 1px,transparent 1.4px),
    radial-gradient(circle,rgba(156,174,255,.44) 0 1px,transparent 1.5px),
    linear-gradient(180deg,transparent,rgba(0,0,0,.38));
  background:
    radial-gradient(circle at 20% 8%,rgba(142,233,222,.14),transparent 24%),
    radial-gradient(circle at 84% 12%,rgba(145,165,255,.16),transparent 26%),
    linear-gradient(135deg,#03070e 0%,#0b2034 52%,#050817 100%) !important;
}
body[class*="theme-global-"]::before{
  background:
    radial-gradient(circle at 50% 50%,transparent 0 56%,rgba(0,0,0,.58) 100%),
    var(--theme-spotlights),
    repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 4px) !important;
  opacity:.88 !important;
}
body[class*="theme-global-"]::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:var(--theme-particles);
  background-size:142px 142px,218px 218px,100% 100%;
  opacity:.34 !important;
  mix-blend-mode:screen;
  animation:themeParticleDrift 32s linear infinite;
}
body[class*="theme-global-"] .topbar,
body[class*="theme-global-"] .footerbar{
  background:
    radial-gradient(circle at 18% 0,var(--theme-glow),transparent 28%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-c) 56%,rgba(18,12,10,.98) 44%),rgba(8,6,6,.94)) !important;
  border-color:color-mix(in srgb,var(--theme-line) 86%,transparent) !important;
  box-shadow:0 18px 38px rgba(0,0,0,.42),0 0 28px color-mix(in srgb,var(--theme-glow) 80%,transparent) !important;
}
body[class*="theme-global-"] .card,
body[class*="theme-global-"] .modal-card,
body[class*="theme-global-"] .money-plaque,
body[class*="theme-global-"] .stage-head,
body[class*="theme-global-"] .stage-status,
body[class*="theme-global-"] .announcer,
body[class*="theme-global-"] .control-deck,
body[class*="theme-global-"] .item-deck,
body[class*="theme-global-"] .shop-item{
  border-color:color-mix(in srgb,var(--theme-line) 86%,transparent) !important;
  background:
    radial-gradient(circle at 86% 8%,color-mix(in srgb,var(--theme-glow) 75%,transparent),transparent 24%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-panel) 86%,rgba(255,255,255,.06) 14%),var(--theme-panel-2)) !important;
  box-shadow:0 22px 52px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,248,230,.06) !important;
}
body[class*="theme-global-"] .hero-main,
body[class*="theme-global-"] .stage-shell{
  border-color:color-mix(in srgb,var(--theme-line) 94%,transparent) !important;
  background:
    linear-gradient(180deg,rgba(5,5,7,.18),rgba(3,3,5,.74)),
    var(--theme-spotlights),
    var(--theme-scene) !important;
  background-size:cover !important;
  background-position:center !important;
  box-shadow:0 32px 82px rgba(0,0,0,.42),0 0 42px color-mix(in srgb,var(--theme-glow) 80%,transparent),inset 0 1px 0 rgba(255,248,230,.06) !important;
}
body[class*="theme-global-"] .case-stage,
body[class*="theme-global-"] .shop-preview-scene{
  background:
    linear-gradient(180deg,rgba(3,3,5,.18),rgba(2,2,4,.68)),
    var(--theme-spotlights),
    var(--theme-scene) !important;
  background-size:cover !important;
  background-position:center !important;
  border-color:color-mix(in srgb,var(--theme-a) 28%,transparent 72%) !important;
}
body[class*="theme-global-"] .case-stage::before,
body[class*="theme-global-"] .shop-preview-scene::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  width:auto !important;
  height:auto !important;
  transform:none !important;
  border-radius:inherit !important;
  background:
    radial-gradient(ellipse at 50% 88%,color-mix(in srgb,var(--theme-glow) 78%,transparent),transparent 34%),
    linear-gradient(90deg,transparent 0 17%,color-mix(in srgb,var(--theme-a) 18%,transparent) 18%,transparent 25% 75%,color-mix(in srgb,var(--theme-a) 14%,transparent) 82%,transparent 84%) !important;
  filter:none !important;
  opacity:.72 !important;
  animation:themeLightBreath 5.8s ease-in-out infinite;
  pointer-events:none !important;
}
body[class*="theme-global-"] .case-stage::after,
body[class*="theme-global-"] .shop-preview-scene::after{
  content:"" !important;
  position:absolute !important;
  inset:12px !important;
  border-radius:18px !important;
  border:1px solid color-mix(in srgb,var(--theme-a) 18%,transparent 82%) !important;
  background:
    var(--theme-particles),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 24%,transparent 70%,rgba(0,0,0,.22)) !important;
  background-size:120px 120px,180px 180px,100% 100% !important;
  opacity:.48 !important;
  pointer-events:none !important;
}
body[class*="theme-global-"] .stat-shell,
body[class*="theme-global-"] .status-chip,
body[class*="theme-global-"] .summary-card,
body[class*="theme-global-"] .history-item,
body[class*="theme-global-"] .result-row,
body[class*="theme-global-"] .room-line{
  border-color:color-mix(in srgb,var(--theme-a) 18%,transparent 82%) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.024)) !important;
}
body[class*="theme-global-"] .feature-pill,
body[class*="theme-global-"] .shop-state-pill,
body[class*="theme-global-"] .shop-type-pill,
body[class*="theme-global-"] .mode-badge,
body[class*="theme-global-"] .room-badge,
body[class*="theme-global-"] .title-badge,
body[class*="theme-global-"] .hero-ribbon{
  border-color:color-mix(in srgb,var(--theme-a) 34%,transparent 66%) !important;
  background:color-mix(in srgb,var(--theme-a) 12%,rgba(8,8,10,.76) 88%) !important;
  color:color-mix(in srgb,var(--theme-a) 56%,white 44%) !important;
}
.theme-thumb.theme-vault,
.shop-preview-scene.theme-vault,
.shop-preview-scene.preview-table.theme-vault,
.table-preview.table-vault,
#tableShopGrid .theme-thumb.theme-vault{
  background:
    radial-gradient(circle at 50% 54%,rgba(244,201,109,.22) 0 10%,transparent 11% 18%,rgba(244,201,109,.12) 19% 20%,transparent 21% 40%),
    conic-gradient(from 15deg at 50% 54%,transparent 0 12deg,rgba(244,201,109,.18) 12deg 16deg,transparent 16deg 42deg,rgba(244,201,109,.12) 42deg 46deg,transparent 46deg 100deg),
    linear-gradient(180deg,rgba(255,236,180,.10),rgba(0,0,0,.40)),
    linear-gradient(135deg,#25202b,#0b090b 62%,#080607) !important;
}
.theme-thumb.theme-garden,
.shop-preview-scene.theme-garden,
.shop-preview-scene.preview-table.theme-garden,
.table-preview.table-garden,
#tableShopGrid .theme-thumb.theme-garden{
  background:
    linear-gradient(112deg,transparent 0 18%,rgba(216,255,239,.22) 18% 19%,transparent 19% 38%,rgba(255,176,218,.22) 38% 39%,transparent 39%),
    radial-gradient(circle at 78% 22%,rgba(255,143,193,.30),transparent 24%),
    radial-gradient(circle at 24% 78%,rgba(121,221,189,.26),transparent 24%),
    linear-gradient(135deg,#23193b,#0f1a25 62%,#07100f) !important;
}
.theme-thumb.theme-marina,
.shop-preview-scene.theme-marina,
.shop-preview-scene.preview-table.theme-marina,
.table-preview.table-marina,
#tableShopGrid .theme-thumb.theme-marina{
  background:
    radial-gradient(circle at 78% 18%,rgba(255,176,104,.46),transparent 12%),
    repeating-linear-gradient(0deg,transparent 0 24px,rgba(182,241,255,.16) 25px 27px,transparent 28px 46px),
    linear-gradient(180deg,transparent 0 48%,rgba(116,218,246,.18) 49%,transparent 50%),
    linear-gradient(135deg,#17495e,#092637 58%,#061015) !important;
}
.theme-thumb.theme-cloud,
.shop-preview-scene.theme-cloud,
.shop-preview-scene.preview-table.theme-cloud,
.table-preview.table-cloud,
#tableShopGrid .theme-thumb.theme-cloud{
  background:
    radial-gradient(ellipse at 30% 76%,rgba(255,255,255,.32),transparent 28%),
    radial-gradient(ellipse at 72% 30%,rgba(210,225,255,.26),transparent 26%),
    linear-gradient(100deg,transparent,rgba(154,215,255,.20),transparent 46%,rgba(143,145,255,.18),transparent),
    linear-gradient(135deg,#1d2a59,#101638 62%,#070816) !important;
}
.theme-thumb.theme-molten,
.shop-preview-scene.theme-molten,
.shop-preview-scene.preview-table.theme-molten,
.table-preview.table-molten,
#tableShopGrid .theme-thumb.theme-molten{
  background:
    linear-gradient(90deg,rgba(255,216,135,.16) 0 16%,transparent 16% 84%,rgba(255,216,135,.13) 84% 100%),
    radial-gradient(circle at 50% 84%,rgba(255,116,50,.36),transparent 32%),
    radial-gradient(circle at 72% 18%,rgba(255,207,120,.20),transparent 18%),
    linear-gradient(135deg,#3a150d,#140706 60%,#050202) !important;
}
.theme-thumb.theme-aurora,
.shop-preview-scene.theme-aurora,
.shop-preview-scene.preview-table.theme-aurora,
.table-preview.table-aurora,
#tableShopGrid .theme-thumb.theme-aurora{
  background:
    linear-gradient(100deg,transparent 0 14%,rgba(98,255,209,.30) 28%,transparent 43%,rgba(145,165,255,.26) 58%,transparent 76%),
    radial-gradient(circle at 72% 18%,rgba(220,255,249,.22),transparent 18%),
    linear-gradient(135deg,#10233b,#08162a 62%,#03070e) !important;
}
.theme-thumb::before{
  background:
    radial-gradient(circle,rgba(255,255,255,.28) 0 1px,transparent 1.5px),
    linear-gradient(180deg,rgba(255,255,255,.06),transparent 34%,rgba(0,0,0,.20)) !important;
  background-size:42px 42px,100% 100% !important;
  opacity:.55 !important;
}
.theme-thumb::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.16) 20%,transparent 42%),
    linear-gradient(180deg,transparent 70%,rgba(0,0,0,.28)) !important;
  opacity:.70 !important;
}
body.theme-global-vault .live-dot{background:#f4c96d !important}
body.theme-global-garden .live-dot{background:#ff8fc1 !important}
body.theme-global-marina .live-dot{background:#74daf6 !important}
body.theme-global-cloud .live-dot{background:#9ad7ff !important}
body.theme-global-molten .live-dot{background:#ffb957 !important}
body.theme-global-aurora .live-dot{background:#8ee9de !important}

/* === top asset pill === */
.top-asset-pill{
  min-width:156px !important;
  justify-content:space-between !important;
  gap:12px !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,transparent 66%) !important;
  background:
    radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--theme-a,#e8c886) 20%,transparent 80%),transparent 34%),
    linear-gradient(180deg,rgba(44,36,25,.90),rgba(10,8,7,.98)) !important;
  box-shadow:
    0 12px 24px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,248,230,.07),
    0 0 18px color-mix(in srgb,var(--theme-a,#e8c886) 9%,transparent 91%) !important;
}
.top-asset-pill span{
  flex:0 0 auto;
  color:var(--muted) !important;
  font-size:12px !important;
  font-weight:1000 !important;
  letter-spacing:.7px !important;
}
.top-asset-pill b{
  color:#fff4d6 !important;
  font-size:16px !important;
  font-weight:1000 !important;
  font-variant-numeric:tabular-nums !important;
  white-space:nowrap !important;
  text-shadow:0 1px 0 rgba(0,0,0,.45),0 0 12px color-mix(in srgb,var(--theme-a,#e8c886) 24%,transparent 76%) !important;
}
@media (max-width:1500px){
  .top-asset-pill{min-width:132px !important;padding-inline:13px !important}
  .top-asset-pill span{font-size:11px !important}
  .top-asset-pill b{font-size:15px !important}
}

/* === stage theme art direction v8: real AI scene backdrops === */
body.theme-global-vault,
.stage-shell.theme-vault,
.case-stage.scene-vault,
.shop-preview-scene.preview-table.theme-vault,
#tableShopGrid .theme-thumb.theme-vault{
  --theme-scene-img:url("../img/themes/stage-vault-ai.png");
  --theme-scene-pos:center center;
}
body.theme-global-marina,
.stage-shell.theme-marina,
.case-stage.scene-marina,
.shop-preview-scene.preview-table.theme-marina,
#tableShopGrid .theme-thumb.theme-marina{
  --theme-scene-img:url("../img/themes/stage-marina-ai.png");
  --theme-scene-pos:center center;
}
body.theme-global-cloud,
.stage-shell.theme-cloud,
.case-stage.scene-cloud,
.shop-preview-scene.preview-table.theme-cloud,
#tableShopGrid .theme-thumb.theme-cloud{
  --theme-scene-img:url("../img/themes/stage-cloud-ai.png");
  --theme-scene-pos:center center;
}
body.theme-global-aurora,
.stage-shell.theme-aurora,
.case-stage.scene-aurora,
.shop-preview-scene.preview-table.theme-aurora,
#tableShopGrid .theme-thumb.theme-aurora{
  --theme-scene-img:url("../img/themes/stage-aurora-ai.png");
  --theme-scene-pos:center center;
}
body[class*="theme-global-"]{
  background:
    radial-gradient(circle at 50% 6%,rgba(255,255,255,.18),transparent 30%),
    linear-gradient(180deg,rgba(4,5,7,.18),rgba(4,5,7,.50) 58%,rgba(4,5,7,.64)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover fixed no-repeat !important;
}
body[class*="theme-global-"]::before{
  background:
    radial-gradient(circle at 50% 50%,transparent 0 64%,rgba(0,0,0,.34) 100%),
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 18%,rgba(0,0,0,.14)) !important;
  opacity:.70 !important;
}
body[class*="theme-global-"] .hero-main,
body[class*="theme-global-"] .stage-shell{
  background:
    linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.05) 42%,rgba(5,5,7,.24) 100%),
    radial-gradient(ellipse at 50% 86%,color-mix(in srgb,var(--theme-a,#e8c886) 20%,transparent 80%),transparent 34%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,transparent 66%) !important;
  box-shadow:
    0 28px 76px rgba(0,0,0,.34),
    0 0 42px color-mix(in srgb,var(--theme-a,#e8c886) 20%,transparent 80%),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
}
body[class*="theme-global-"] .case-stage{
  background:
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.035) 48%,rgba(0,0,0,.20)),
    radial-gradient(ellipse at 50% 84%,color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%),transparent 32%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,transparent 66%) !important;
  box-shadow:0 24px 58px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12) !important;
}
body[class*="theme-global-"] .case-stage::before{
  background:
    radial-gradient(ellipse at 50% 72%,rgba(255,255,255,.18),transparent 30%),
    linear-gradient(90deg,transparent 0 18%,color-mix(in srgb,var(--theme-a,#e8c886) 13%,transparent 87%) 21%,transparent 30% 70%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%) 79%,transparent 83%) !important;
  opacity:.64 !important;
}
body[class*="theme-global-"] .case-stage::after{
  background:
    radial-gradient(circle,rgba(255,255,255,.54) 0 1px,transparent 1.6px),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 32%,rgba(0,0,0,.10)) !important;
  background-size:96px 96px,100% 100% !important;
  opacity:.36 !important;
}
body[class*="theme-global-"] .shop-preview-scene.preview-table,
#tableShopGrid .theme-thumb{
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(0,0,0,.16)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 30%,transparent 70%) !important;
}
body[class*="theme-global-"] .shop-preview-scene.preview-table::before,
#tableShopGrid .theme-thumb::before{
  background:
    radial-gradient(ellipse at 50% 88%,color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 36%,rgba(0,0,0,.12)) !important;
  opacity:.70 !important;
}
body[class*="theme-global-"] .shop-preview-scene.preview-table::after,
#tableShopGrid .theme-thumb::after{
  background:
    radial-gradient(circle,rgba(255,255,255,.42) 0 1px,transparent 1.6px),
    linear-gradient(180deg,transparent 68%,rgba(0,0,0,.14)) !important;
  background-size:74px 74px,100% 100% !important;
  opacity:.40 !important;
}

/* === stage theme art direction v9: readability protection === */
body[class*="theme-global-"]{
  background:
    radial-gradient(circle at 50% 8%,rgba(255,255,255,.10),transparent 26%),
    radial-gradient(ellipse at 50% 50%,transparent 0 58%,rgba(0,0,0,.34) 100%),
    linear-gradient(180deg,rgba(4,5,7,.42),rgba(4,5,7,.52) 52%,rgba(4,5,7,.72)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover fixed no-repeat !important;
}
body[class*="theme-global-"]::before{
  background:
    radial-gradient(circle at 50% 50%,transparent 0 54%,rgba(0,0,0,.46) 100%),
    linear-gradient(180deg,rgba(0,0,0,.22),transparent 18%,rgba(0,0,0,.24)) !important;
  opacity:.78 !important;
}
body[class*="theme-global-"] .hero-main,
body[class*="theme-global-"] .stage-shell{
  background:
    linear-gradient(90deg,rgba(3,4,6,.78) 0%,rgba(3,4,6,.56) 38%,rgba(3,4,6,.42) 62%,rgba(3,4,6,.62) 100%),
    linear-gradient(180deg,rgba(0,0,0,.32),rgba(0,0,0,.14) 42%,rgba(0,0,0,.48)),
    radial-gradient(ellipse at 50% 88%,color-mix(in srgb,var(--theme-a,#e8c886) 16%,transparent 84%),transparent 34%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
}
body[class*="theme-global-"] .case-stage{
  background:
    radial-gradient(ellipse at 50% 55%,rgba(0,0,0,.06),rgba(0,0,0,.34) 72%),
    linear-gradient(180deg,rgba(0,0,0,.24),rgba(0,0,0,.12) 48%,rgba(0,0,0,.42)),
    radial-gradient(ellipse at 50% 84%,color-mix(in srgb,var(--theme-a,#e8c886) 14%,transparent 86%),transparent 32%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
}
body[class*="theme-global-"] .shop-preview-scene.preview-table,
#tableShopGrid .theme-thumb{
  background:
    linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.20) 42%,rgba(0,0,0,.54)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
}
body[class*="theme-global-"] .hero-main h2,
body[class*="theme-global-"] .hero-main p,
body[class*="theme-global-"] .screen-title,
body[class*="theme-global-"] .screen-desc,
body[class*="theme-global-"] .stage-live,
body[class*="theme-global-"] .announcer,
body[class*="theme-global-"] .shop-preview-topline,
body[class*="theme-global-"] .preview-caption{
  text-shadow:
    0 2px 0 rgba(0,0,0,.74),
    0 0 16px rgba(0,0,0,.62),
    0 0 28px rgba(0,0,0,.38) !important;
}
body[class*="theme-global-"] .hero-ribbon,
body[class*="theme-global-"] .stat-shell,
body[class*="theme-global-"] .mode-card,
body[class*="theme-global-"] .room-card,
body[class*="theme-global-"] .notice-banner,
body[class*="theme-global-"] .stage-head,
body[class*="theme-global-"] .status-chip,
body[class*="theme-global-"] .announcer,
body[class*="theme-global-"] .control-deck,
body[class*="theme-global-"] .money-plaque,
body[class*="theme-global-"] .shop-card,
body[class*="theme-global-"] .profile-card,
body[class*="theme-global-"] .modal-card{
  background:
    radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%),transparent 32%),
    linear-gradient(180deg,rgba(13,12,11,.86),rgba(4,4,5,.93)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 32%,rgba(255,255,255,.08) 68%) !important;
  box-shadow:
    0 16px 38px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body[class*="theme-global-"] .shop-preview-scene.preview-table::before,
#tableShopGrid .theme-thumb::before{
  background:
    linear-gradient(180deg,rgba(0,0,0,.18),transparent 36%,rgba(0,0,0,.38)),
    radial-gradient(ellipse at 50% 88%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%),transparent 38%) !important;
  opacity:.76 !important;
}
body[class*="theme-global-"] .shop-preview-scene.preview-table::after,
#tableShopGrid .theme-thumb::after{
  opacity:.24 !important;
}

/* === lobby right column v10: readable frosted info cards === */
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--theme-a,#e8c886) 20%,transparent 80%),transparent 34%),
    linear-gradient(180deg,rgba(255,250,238,.90),rgba(236,225,207,.78)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 42%,rgba(255,255,255,.36) 58%) !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.76),
    inset 0 -18px 30px rgba(116,84,48,.10) !important;
  backdrop-filter:blur(10px) saturate(1.12);
}
body[class*="theme-global-"] .hero-side .feature.card::after,
body[class*="theme-global-"] .version-notice::after{
  background:
    linear-gradient(180deg,rgba(255,255,255,.38),transparent 22%,rgba(60,40,22,.08)),
    linear-gradient(120deg,transparent 0 20%,rgba(255,255,255,.34) 22%,transparent 38%) !important;
  opacity:.78 !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:color-mix(in srgb,var(--theme-c,#6f461d) 74%,#3a2412 26%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.62) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#24180d !important;
  text-shadow:0 1px 0 rgba(255,255,255,.68) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:#463522 !important;
  font-weight:750 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.58) !important;
}
body[class*="theme-global-"] .hero-side .feature .heading-ico{
  color:#22160c !important;
  background:
    radial-gradient(circle at 35% 25%,rgba(255,255,255,.62),transparent 44%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 56%,#fff 44%),color-mix(in srgb,var(--theme-b,#b88946) 72%,#fff 28%)) !important;
  border-color:rgba(84,54,22,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 6px 14px rgba(74,45,20,.16) !important;
}
body[class*="theme-global-"] .version-notice .version-log-btn{
  background:
    linear-gradient(180deg,rgba(45,31,19,.92),rgba(16,11,8,.96)) !important;
  color:#fff2dd !important;
  border-color:rgba(74,45,20,.28) !important;
}

/* === lobby right column v11: theme-matched dark glass cards === */
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 86% 12%,color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%),transparent 32%),
    radial-gradient(ellipse at 18% 100%,color-mix(in srgb,var(--theme-b,#b88946) 13%,transparent 87%),transparent 42%),
    linear-gradient(135deg,color-mix(in srgb,var(--theme-a,#e8c886) 7%,transparent 93%),transparent 38%),
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-c,#16202a) 68%,rgba(24,26,28,.92) 32%),
      color-mix(in srgb,var(--theme-c,#16202a) 34%,rgba(4,5,7,.94) 66%)
    ) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 38%,rgba(255,255,255,.08) 62%) !important;
  box-shadow:
    0 22px 50px rgba(0,0,0,.28),
    0 0 0 1px color-mix(in srgb,var(--theme-a,#e8c886) 10%,transparent 90%),
    inset 0 1px 0 color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.10) 72%),
    inset 0 -20px 34px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(9px) saturate(1.08);
}
body[class*="theme-global-"] .hero-side .feature.card::before,
body[class*="theme-global-"] .version-notice::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:
    linear-gradient(180deg,
      transparent,
      color-mix(in srgb,var(--theme-a,#e8c886) 78%,white 22%) 22%,
      color-mix(in srgb,var(--theme-b,#b88946) 70%,var(--theme-a,#e8c886) 30%) 78%,
      transparent
    ) !important;
  opacity:.82 !important;
  pointer-events:none;
}
body[class*="theme-global-"] .hero-side .feature.card::after,
body[class*="theme-global-"] .version-notice::after{
  background:
    linear-gradient(110deg,transparent 0 18%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%) 20%,transparent 42%),
    radial-gradient(circle at 88% 16%,rgba(255,255,255,.10),transparent 22%),
    linear-gradient(180deg,rgba(255,255,255,.055),transparent 26%,rgba(0,0,0,.16)) !important;
  opacity:.92 !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 76%,white 24%) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.72),0 0 14px color-mix(in srgb,var(--theme-a,#e8c886) 30%,transparent 70%) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#fff6e8 !important;
  text-shadow:0 2px 0 rgba(0,0,0,.68),0 0 18px rgba(0,0,0,.48) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 13%,#efe5d4 87%) !important;
  font-weight:760 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70),0 0 12px rgba(0,0,0,.42) !important;
}
body[class*="theme-global-"] .hero-side .feature .heading-ico{
  color:#fff7e8 !important;
  background:
    radial-gradient(circle at 35% 25%,rgba(255,255,255,.22),transparent 46%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 34%,rgba(255,255,255,.08) 66%),color-mix(in srgb,var(--theme-b,#b88946) 44%,rgba(5,6,7,.76) 56%)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 38%,transparent 62%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 0 16px color-mix(in srgb,var(--theme-a,#e8c886) 22%,transparent 78%) !important;
}
body[class*="theme-global-"] .version-notice .version-log-btn{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(52,38,24,.88) 78%),rgba(10,8,7,.95)) !important;
  color:#fff5e5 !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 36%,transparent 64%) !important;
  box-shadow:
    0 14px 28px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* === lobby right column v12: brighter themed glass cards === */
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 34%,rgba(255,255,255,.38) 66%),transparent 34%),
    radial-gradient(ellipse at 10% 100%,color-mix(in srgb,var(--theme-b,#b88946) 22%,rgba(255,255,255,.24) 78%),transparent 48%),
    linear-gradient(125deg,color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(255,255,255,.30) 82%),transparent 38%),
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-a,#e8c886) 30%,rgba(255,255,255,.76) 70%),
      color-mix(in srgb,var(--theme-b,#b88946) 16%,rgba(255,255,255,.62) 84%) 54%,
      color-mix(in srgb,var(--theme-c,#16202a) 16%,rgba(255,255,255,.54) 84%)
    ) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 52%,rgba(255,255,255,.32) 48%) !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.18),
    0 0 0 1px color-mix(in srgb,var(--theme-a,#e8c886) 16%,transparent 84%),
    inset 0 1px 0 rgba(255,255,255,.76),
    inset 0 -20px 34px color-mix(in srgb,var(--theme-c,#16202a) 8%,transparent 92%) !important;
  backdrop-filter:blur(12px) saturate(1.12);
}
body[class*="theme-global-"] .hero-side .feature.card::before,
body[class*="theme-global-"] .version-notice::before{
  background:
    linear-gradient(180deg,
      transparent,
      color-mix(in srgb,var(--theme-a,#e8c886) 86%,white 14%) 18%,
      color-mix(in srgb,var(--theme-b,#b88946) 78%,white 22%) 76%,
      transparent
    ) !important;
  opacity:.96 !important;
}
body[class*="theme-global-"] .hero-side .feature.card::after,
body[class*="theme-global-"] .version-notice::after{
  background:
    linear-gradient(112deg,transparent 0 16%,rgba(255,255,255,.42) 18%,transparent 40%),
    radial-gradient(circle at 90% 14%,rgba(255,255,255,.30),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.30),transparent 30%,color-mix(in srgb,var(--theme-c,#16202a) 8%,transparent 92%)) !important;
  opacity:.72 !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:color-mix(in srgb,var(--theme-c,#16202a) 72%,var(--theme-b,#b88946) 28%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.68) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:color-mix(in srgb,var(--theme-c,#16202a) 86%,#090805 14%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.72) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:color-mix(in srgb,var(--theme-c,#16202a) 72%,#2c261e 28%) !important;
  font-weight:800 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.62) !important;
}
body[class*="theme-global-"] .hero-side .feature .heading-ico{
  color:color-mix(in srgb,var(--theme-c,#16202a) 78%,#090805 22%) !important;
  background:
    radial-gradient(circle at 34% 22%,rgba(255,255,255,.62),transparent 48%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 58%,white 42%),color-mix(in srgb,var(--theme-b,#b88946) 48%,white 52%)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 48%,rgba(0,0,0,.12) 52%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.76),
    0 8px 18px color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%) !important;
}
body[class*="theme-global-"] .version-notice .version-log-btn{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 46%,rgba(255,255,255,.34) 54%),color-mix(in srgb,var(--theme-b,#b88946) 54%,rgba(20,15,10,.70) 46%)) !important;
  color:color-mix(in srgb,var(--theme-c,#16202a) 82%,#060504 18%) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 58%,rgba(255,255,255,.22) 42%) !important;
  box-shadow:
    0 14px 28px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.42) !important;
}

/* === lobby right column v13: balanced themed smoke glass === */
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 84% 12%,color-mix(in srgb,var(--theme-a,#e8c886) 22%,transparent 78%),transparent 34%),
    radial-gradient(ellipse at 16% 100%,color-mix(in srgb,var(--theme-b,#b88946) 14%,transparent 86%),transparent 46%),
    linear-gradient(118deg,color-mix(in srgb,var(--theme-a,#e8c886) 10%,transparent 90%),transparent 40%),
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(32,29,31,.86) 82%),
      color-mix(in srgb,var(--theme-c,#16202a) 34%,rgba(16,16,19,.90) 66%)
    ) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 36%,rgba(255,255,255,.09) 64%) !important;
  box-shadow:
    0 20px 48px rgba(0,0,0,.26),
    0 0 0 1px color-mix(in srgb,var(--theme-a,#e8c886) 11%,transparent 89%),
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -18px 30px rgba(0,0,0,.18) !important;
  backdrop-filter:blur(10px) saturate(1.08);
}
body[class*="theme-global-"] .hero-side .feature.card::before,
body[class*="theme-global-"] .version-notice::before{
  background:
    linear-gradient(180deg,
      transparent,
      color-mix(in srgb,var(--theme-a,#e8c886) 72%,white 28%) 20%,
      color-mix(in srgb,var(--theme-b,#b88946) 68%,var(--theme-a,#e8c886) 32%) 76%,
      transparent
    ) !important;
  opacity:.74 !important;
}
body[class*="theme-global-"] .hero-side .feature.card::after,
body[class*="theme-global-"] .version-notice::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.10) 20%,transparent 42%),
    radial-gradient(circle at 90% 14%,rgba(255,255,255,.075),transparent 22%),
    linear-gradient(180deg,rgba(255,255,255,.045),transparent 30%,rgba(0,0,0,.14)) !important;
  opacity:.86 !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 78%,white 22%) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.72),0 0 12px color-mix(in srgb,var(--theme-a,#e8c886) 24%,transparent 76%) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#fff4e8 !important;
  text-shadow:0 2px 0 rgba(0,0,0,.62),0 0 16px rgba(0,0,0,.42) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 10%,#eaddc9 90%) !important;
  font-weight:780 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.66),0 0 10px rgba(0,0,0,.30) !important;
}
body[class*="theme-global-"] .hero-side .feature .heading-ico{
  color:#fff7e8 !important;
  background:
    radial-gradient(circle at 34% 22%,rgba(255,255,255,.28),transparent 48%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 42%,rgba(255,255,255,.08) 58%),color-mix(in srgb,var(--theme-b,#b88946) 36%,rgba(12,12,14,.78) 64%)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 38%,transparent 62%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 0 14px color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%) !important;
}
body[class*="theme-global-"] .version-notice .version-log-btn{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(58,44,30,.88) 76%),rgba(12,10,9,.94)) !important;
  color:#fff3df !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,transparent 66%) !important;
  box-shadow:
    0 14px 28px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.16) !important;
}

/* === global theme comfort v14: neutral UI with restrained accents === */
body[class*="theme-global-"]{
  background:
    radial-gradient(circle at 50% 8%,rgba(255,255,255,.08),transparent 26%),
    radial-gradient(ellipse at 50% 52%,transparent 0 56%,rgba(0,0,0,.38) 100%),
    linear-gradient(180deg,rgba(6,8,10,.38),rgba(6,8,10,.52) 56%,rgba(6,8,10,.74)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover fixed no-repeat !important;
}
body[class*="theme-global-"]::before{
  background:
    linear-gradient(180deg,rgba(6,7,9,.24),transparent 20%,rgba(6,7,9,.26)),
    radial-gradient(circle at 50% 50%,transparent 0 56%,rgba(0,0,0,.46) 100%) !important;
  opacity:.72 !important;
  mix-blend-mode:normal !important;
}
body[class*="theme-global-"] .topbar{
  background:
    linear-gradient(180deg,rgba(18,19,22,.94),rgba(8,9,11,.92)) !important;
  border-bottom-color:rgba(255,255,255,.08) !important;
  box-shadow:0 18px 36px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body[class*="theme-global-"] .nav-btn,
body[class*="theme-global-"] .meta-pill,
body[class*="theme-global-"] .top-asset-pill{
  background:
    linear-gradient(180deg,rgba(39,39,42,.78),rgba(15,15,17,.88)) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#f3eadb !important;
  box-shadow:0 12px 24px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.07) !important;
}
body[class*="theme-global-"] .nav-btn.active,
body[class*="theme-global-"] .nav-btn:hover,
body[class*="theme-global-"] .top-action-pill.active,
body[class*="theme-global-"] .top-action-pill:hover{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(46,46,48,.84) 82%),rgba(16,16,18,.92)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,rgba(255,255,255,.12) 66%) !important;
}
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 86% 12%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%),transparent 34%),
    linear-gradient(125deg,color-mix(in srgb,var(--theme-a,#e8c886) 6%,transparent 94%),transparent 42%),
    linear-gradient(180deg,rgba(45,47,51,.78),rgba(24,25,29,.82)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(255,255,255,.10) 78%) !important;
  box-shadow:
    0 20px 46px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -18px 28px rgba(0,0,0,.12) !important;
  backdrop-filter:blur(10px) saturate(.96);
}
body[class*="theme-global-"] .hero-side .feature.card::before,
body[class*="theme-global-"] .version-notice::before{
  background:
    linear-gradient(180deg,transparent,color-mix(in srgb,var(--theme-a,#e8c886) 70%,white 30%) 24%,color-mix(in srgb,var(--theme-b,#b88946) 56%,var(--theme-a,#e8c886) 44%) 76%,transparent) !important;
  opacity:.64 !important;
}
body[class*="theme-global-"] .hero-side .feature.card::after,
body[class*="theme-global-"] .version-notice::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.07) 20%,transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%,rgba(0,0,0,.12)) !important;
  opacity:.76 !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 70%,#f6efe0 30%) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#fff2e4 !important;
  text-shadow:0 2px 0 rgba(0,0,0,.56),0 0 12px rgba(0,0,0,.36) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:#e3d8c8 !important;
  font-weight:760 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.62) !important;
}
body[class*="theme-global-"] .hero-side .feature .heading-ico{
  color:#fff3df !important;
  background:
    radial-gradient(circle at 34% 22%,rgba(255,255,255,.18),transparent 48%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.08) 72%),rgba(24,24,27,.82)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 30%,rgba(255,255,255,.12) 70%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 12px color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%) !important;
}
body[class*="theme-global-"] .version-notice .version-log-btn{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 16%,rgba(50,42,34,.86) 84%),rgba(13,12,12,.94)) !important;
  color:#fff1dc !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.10) 72%) !important;
}

/* === global theme comfort v15: warmer bright neutral panels === */
body[class*="theme-global-"] .hero-main{
  background:
    linear-gradient(90deg,rgba(18,20,23,.66) 0%,rgba(31,32,35,.52) 42%,rgba(30,31,34,.46) 66%,rgba(18,19,22,.60) 100%),
    radial-gradient(ellipse at 54% 88%,color-mix(in srgb,var(--theme-a,#e8c886) 15%,transparent 85%),transparent 38%),
    linear-gradient(180deg,rgba(255,249,236,.10),rgba(255,249,236,.045) 42%,rgba(10,10,12,.28)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 30%,rgba(255,255,255,.18) 70%) !important;
  box-shadow:
    0 28px 72px rgba(0,0,0,.30),
    0 0 34px color-mix(in srgb,var(--theme-a,#e8c886) 10%,transparent 90%),
    inset 0 1px 0 rgba(255,255,255,.16) !important;
}
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 86% 12%,color-mix(in srgb,var(--theme-a,#e8c886) 15%,rgba(255,255,255,.10) 85%),transparent 34%),
    linear-gradient(125deg,color-mix(in srgb,var(--theme-a,#e8c886) 8%,rgba(255,255,255,.06) 92%),transparent 42%),
    linear-gradient(180deg,rgba(74,75,78,.76),rgba(38,39,43,.82)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.18) 72%) !important;
  box-shadow:
    0 20px 44px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -18px 28px rgba(0,0,0,.10) !important;
}
body[class*="theme-global-"] .hero-side .feature.card::after,
body[class*="theme-global-"] .version-notice::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.10) 20%,transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.07),transparent 32%,rgba(0,0,0,.10)) !important;
  opacity:.78 !important;
}
body[class*="theme-global-"] .hero-main .hero-ribbon,
body[class*="theme-global-"] .hero-main .stat-shell{
  background:
    radial-gradient(circle at 82% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%),transparent 34%),
    linear-gradient(180deg,rgba(43,44,48,.78),rgba(18,19,22,.84)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.14) 76%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 22px rgba(0,0,0,.18) !important;
}
body[class*="theme-global-"] .hero-main h2,
body[class*="theme-global-"] .hero-main p,
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  text-shadow:0 2px 0 rgba(0,0,0,.52),0 0 12px rgba(0,0,0,.30) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:#eee2d1 !important;
}

/* === global theme comfort v16: clear daylight glass tone === */
body[class*="theme-global-"]{
  background:
    radial-gradient(circle at 48% 4%,rgba(255,255,255,.28),transparent 28%),
    radial-gradient(ellipse at 50% 58%,rgba(255,255,255,.08) 0 42%,rgba(0,0,0,.12) 100%),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02) 38%,rgba(6,8,10,.20)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover fixed no-repeat !important;
}
body[class*="theme-global-"]::before{
  background:
    radial-gradient(circle at 50% 48%,transparent 0 66%,rgba(0,0,0,.20) 100%),
    linear-gradient(180deg,rgba(255,255,255,.10),transparent 30%,rgba(0,0,0,.06)) !important;
  opacity:.46 !important;
  mix-blend-mode:normal !important;
}
body[class*="theme-global-"]::after{
  opacity:.16 !important;
}
body[class*="theme-global-"] #app::before{
  opacity:.28 !important;
}
body[class*="theme-global-"] .hero-main{
  background:
    linear-gradient(90deg,rgba(8,10,12,.42) 0%,rgba(16,18,20,.24) 42%,rgba(255,250,236,.08) 68%,rgba(8,10,12,.34) 100%),
    radial-gradient(ellipse at 54% 88%,color-mix(in srgb,var(--theme-a,#e8c886) 13%,transparent 87%),transparent 40%),
    linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.04) 42%,rgba(0,0,0,.14)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,rgba(255,255,255,.30) 66%) !important;
  box-shadow:
    0 24px 56px rgba(0,0,0,.20),
    0 0 34px color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%),
    inset 0 1px 0 rgba(255,255,255,.24) !important;
}
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 14%,rgba(255,255,255,.34) 86%),transparent 34%),
    linear-gradient(125deg,color-mix(in srgb,var(--theme-a,#e8c886) 7%,rgba(255,255,255,.22) 93%),transparent 42%),
    linear-gradient(180deg,rgba(255,252,244,.82),rgba(245,241,231,.68) 58%,rgba(230,225,214,.58)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 30%,rgba(255,255,255,.44) 70%) !important;
  box-shadow:
    0 20px 42px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.62),
    inset 0 -16px 28px rgba(255,255,255,.10) !important;
  backdrop-filter:blur(12px) saturate(1.05);
}
body[class*="theme-global-"] .hero-side .feature.card::before,
body[class*="theme-global-"] .version-notice::before{
  background:
    linear-gradient(180deg,transparent,color-mix(in srgb,var(--theme-a,#e8c886) 48%,white 52%) 20%,color-mix(in srgb,var(--theme-b,#b88946) 34%,white 66%) 78%,transparent) !important;
  opacity:.58 !important;
}
body[class*="theme-global-"] .hero-side .feature.card::after,
body[class*="theme-global-"] .version-notice::after{
  background:
    linear-gradient(110deg,transparent 0 17%,rgba(255,255,255,.34) 20%,transparent 42%),
    radial-gradient(circle at 90% 14%,rgba(255,255,255,.24),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.18),transparent 34%,rgba(255,255,255,.06)) !important;
  opacity:.82 !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:color-mix(in srgb,var(--theme-c,#16202a) 72%,var(--theme-b,#b88946) 28%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.82) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#272018 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.78) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:#3d352b !important;
  font-weight:820 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.68) !important;
}
body[class*="theme-global-"] .hero-side .feature .heading-ico{
  color:#2e261b !important;
  background:
    radial-gradient(circle at 34% 22%,rgba(255,255,255,.70),transparent 48%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 42%,white 58%),color-mix(in srgb,var(--theme-b,#b88946) 32%,white 68%)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 36%,rgba(255,255,255,.42) 64%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.76),
    0 8px 18px rgba(0,0,0,.08) !important;
}
body[class*="theme-global-"] .hero-main .hero-ribbon,
body[class*="theme-global-"] .hero-main .stat-shell{
  background:
    radial-gradient(circle at 82% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 14%,rgba(255,255,255,.10) 86%),transparent 34%),
    linear-gradient(180deg,rgba(38,39,42,.62),rgba(12,13,15,.70)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 26%,rgba(255,255,255,.18) 74%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 10px 22px rgba(0,0,0,.14) !important;
}
body[class*="theme-global-"] .hero-main h2,
body[class*="theme-global-"] .hero-main p{
  text-shadow:0 2px 0 rgba(0,0,0,.54),0 0 14px rgba(0,0,0,.36) !important;
}
body[class*="theme-global-"] .version-notice .version-log-btn{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(255,255,255,.62) 78%),color-mix(in srgb,var(--theme-b,#b88946) 28%,rgba(255,255,255,.46) 72%)) !important;
  color:#2a2117 !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 36%,rgba(255,255,255,.42) 64%) !important;
  box-shadow:
    0 12px 24px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.62) !important;
}

/* === global theme comfort v17: text contrast guard === */
body[class*="theme-global-"] .screen-title,
body[class*="theme-global-"] .hero-main h2{
  color:#fff8eb !important;
  -webkit-text-stroke:.35px rgba(30,22,13,.32);
  text-shadow:
    0 2px 0 rgba(0,0,0,.56),
    0 0 14px rgba(0,0,0,.42),
    0 0 30px rgba(0,0,0,.28) !important;
}
body[class*="theme-global-"] .screen-desc,
body[class*="theme-global-"] .hero-main p{
  color:#fff0dc !important;
  font-weight:780 !important;
  text-shadow:
    0 1px 0 rgba(0,0,0,.72),
    0 0 12px rgba(0,0,0,.46) !important;
}
body[class*="theme-global-"] .screen-head .screen-desc{
  max-width:860px;
}
body[class*="theme-global-"] .hero-main p{
  width:max-content;
  max-width:min(820px,100%);
  padding:8px 12px;
  border-radius:14px;
  background:linear-gradient(90deg,rgba(0,0,0,.22),rgba(0,0,0,.12) 68%,transparent);
}
body[class*="theme-global-"] .hero-main .hero-ribbon,
body[class*="theme-global-"] .hero-main .stat-shell{
  color:#fff4df !important;
}
body[class*="theme-global-"] .hero-main .stat-shell span,
body[class*="theme-global-"] .hero-main .stat-shell label{
  color:#f5dfbd !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70) !important;
}
body[class*="theme-global-"] .hero-main .stat-shell strong{
  color:#fff9ec !important;
  text-shadow:0 1px 0 rgba(0,0,0,.64),0 0 12px rgba(0,0,0,.30) !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:#2f4a54 !important;
  font-weight:1000 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.92) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#17130e !important;
  font-weight:1000 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.88) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:#27221c !important;
  font-weight:850 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.82) !important;
}
body[class*="theme-global-"] .nav-btn,
body[class*="theme-global-"] .top-action-pill,
body[class*="theme-global-"] .meta-pill,
body[class*="theme-global-"] .top-asset-pill{
  color:#fff5df !important;
  text-shadow:0 1px 0 rgba(0,0,0,.58) !important;
}

/* === global theme comfort v18: themed top navigation === */
body[class*="theme-global-"] .topbar{
  background:
    radial-gradient(circle at 10% 0,color-mix(in srgb,var(--theme-a,#e8c886) 22%,transparent 78%),transparent 28%),
    radial-gradient(circle at 82% 0,color-mix(in srgb,var(--theme-b,#b88946) 18%,transparent 82%),transparent 30%),
    linear-gradient(90deg,
      color-mix(in srgb,var(--theme-c,#121820) 52%,rgba(10,12,14,.90) 48%) 0%,
      color-mix(in srgb,var(--theme-a,#e8c886) 14%,rgba(14,15,18,.92) 86%) 48%,
      color-mix(in srgb,var(--theme-c,#121820) 46%,rgba(9,10,12,.94) 54%) 100%
    ) !important;
  border-bottom-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,rgba(255,255,255,.10) 66%) !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.24),
    0 1px 0 color-mix(in srgb,var(--theme-a,#e8c886) 24%,transparent 76%),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
}
body[class*="theme-global-"] .logo-emblem{
  background:
    radial-gradient(circle at 30% 18%,rgba(255,255,255,.72),transparent 34%),
    linear-gradient(145deg,
      color-mix(in srgb,var(--theme-a,#e8c886) 72%,white 28%) 0%,
      color-mix(in srgb,var(--theme-b,#b88946) 76%,white 24%) 48%,
      color-mix(in srgb,var(--theme-c,#121820) 32%,var(--theme-a,#e8c886) 68%) 100%
    ) !important;
  box-shadow:
    0 14px 28px color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(0,0,0,.28) 82%),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -5px 0 rgba(0,0,0,.18) !important;
}
body[class*="theme-global-"] .logo-title{
  color:#fff7e8 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.62),0 0 16px color-mix(in srgb,var(--theme-a,#e8c886) 22%,transparent 78%) !important;
}
body[class*="theme-global-"] .logo-sub{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 68%,#fff 32%) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.60) !important;
}
body[class*="theme-global-"] .nav-btn,
body[class*="theme-global-"] .meta-pill,
body[class*="theme-global-"] .top-action-pill,
body[class*="theme-global-"] .auth-pill,
body[class*="theme-global-"] .top-asset-pill{
  background:
    radial-gradient(circle at 20% 0,color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%),transparent 44%),
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-c,#121820) 24%,rgba(255,255,255,.10) 76%),
      color-mix(in srgb,var(--theme-c,#121820) 48%,rgba(9,10,12,.86) 52%)
    ) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 30%,rgba(255,255,255,.14) 70%) !important;
  color:#fff7e7 !important;
  box-shadow:
    0 10px 22px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 0 0 1px color-mix(in srgb,var(--theme-a,#e8c886) 8%,transparent 92%) !important;
}
body[class*="theme-global-"] .nav-btn .ico,
body[class*="theme-global-"] .top-action-pill .ico,
body[class*="theme-global-"] .meta-pill .ico{
  background:
    radial-gradient(circle at 35% 20%,rgba(255,255,255,.28),transparent 42%),
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 26%,rgba(255,255,255,.08) 74%),color-mix(in srgb,var(--theme-b,#b88946) 24%,rgba(0,0,0,.30) 76%)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 34%,rgba(255,255,255,.12) 66%) !important;
  color:color-mix(in srgb,var(--theme-a,#e8c886) 70%,white 30%) !important;
}
body[class*="theme-global-"] .nav-btn.active,
body[class*="theme-global-"] .nav-btn:hover,
body[class*="theme-global-"] .top-action-pill.active,
body[class*="theme-global-"] .top-action-pill:hover,
body[class*="theme-global-"] .auth-pill:hover,
body[class*="theme-global-"] .top-asset-pill:hover{
  background:
    radial-gradient(circle at 26% 0,color-mix(in srgb,var(--theme-a,#e8c886) 38%,rgba(255,255,255,.12) 62%),transparent 44%),
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.10) 72%),
      color-mix(in srgb,var(--theme-b,#b88946) 26%,rgba(14,15,18,.86) 74%)
    ) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 54%,rgba(255,255,255,.18) 46%) !important;
  box-shadow:
    0 12px 26px rgba(0,0,0,.20),
    0 0 18px color-mix(in srgb,var(--theme-a,#e8c886) 18%,transparent 82%),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
}
body[class*="theme-global-"] .nav-btn.active::after{
  background:
    linear-gradient(90deg,transparent,color-mix(in srgb,var(--theme-a,#e8c886) 72%,white 28%),transparent) !important;
  opacity:.72 !important;
}
body[class*="theme-global-"] .top-asset-pill b,
body[class*="theme-global-"] .meta-pill b,
body[class*="theme-global-"] .auth-pill b{
  color:#fff7e6 !important;
}
body[class*="theme-global-"] .top-asset-pill span,
body[class*="theme-global-"] .auth-pill span{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 58%,#fff 42%) !important;
}

/* === profile layout v3: no history and balanced columns === */
#view-profile .profile-grid{
  grid-template-columns:minmax(360px,430px) minmax(0,1fr) !important;
  align-items:stretch !important;
}
#view-profile .info-stack,
#view-profile .identity-card,
#view-profile .title-panel-card{
  height:100% !important;
}
#view-profile .identity-card .card-pad,
#view-profile .title-panel-card .card-pad{
  min-height:100% !important;
  display:flex !important;
  flex-direction:column !important;
}
#view-profile .identity-card .region-row{
  margin-top:14px !important;
}
#view-profile .title-manager{
  flex:1 1 auto !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
}
#view-profile .title-role-panel-merged{
  flex:1 1 auto !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
}
#view-profile .title-card-grid-merged{
  flex:1 1 auto !important;
  max-height:none !important;
  min-height:0 !important;
}
#view-profile .profile-history-card{
  display:none !important;
}
@media(max-width:1320px){
  #view-profile .profile-grid{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
  #view-profile .info-stack,
  #view-profile .identity-card,
  #view-profile .title-panel-card,
  #view-profile .identity-card .card-pad,
  #view-profile .title-panel-card .card-pad{
    height:auto !important;
    min-height:0 !important;
  }
  #view-profile .title-card-grid-merged{
    max-height:none !important;
  }
}

/* === shop structure v2: category switcher and shorter page === */
#view-shop .shop-shell{
  grid-template-columns:minmax(300px,340px) minmax(0,1fr) !important;
  gap:18px !important;
}
#view-shop .shop-content-stack{
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
  gap:14px !important;
  min-width:0 !important;
}
#view-shop .shop-grid-2,
#view-shop .shop-grid-3{
  display:contents !important;
}
#view-shop .shop-category-tabs{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:10px !important;
  padding:10px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.10) 72%) !important;
  border-radius:22px !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb,var(--theme-a,#e8c886) 12%,rgba(255,255,255,.08) 88%),
      rgba(10,10,12,.68)
    ) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 40px rgba(0,0,0,.18) !important;
}
#view-shop .shop-category-tab{
  min-width:0 !important;
  min-height:58px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  gap:4px !important;
  padding:10px 14px !important;
  border-radius:16px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.055) !important;
  color:#f7ead8 !important;
  cursor:pointer !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
}
#view-shop .shop-category-tab span{
  font-size:15px !important;
  font-weight:1000 !important;
  line-height:1.1 !important;
}
#view-shop .shop-category-tab b{
  font-size:10px !important;
  letter-spacing:1.3px !important;
  text-transform:uppercase !important;
  color:rgba(255,244,223,.62) !important;
}
#view-shop .shop-category-tab:hover,
#view-shop .shop-category-tab.active{
  color:#fffaf0 !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 58%,rgba(255,255,255,.18) 42%) !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb,var(--theme-a,#e8c886) 36%,rgba(255,255,255,.18) 64%),
      color-mix(in srgb,var(--theme-b,#b88946) 24%,rgba(20,18,18,.78) 76%)
    ) !important;
  box-shadow:
    0 10px 24px color-mix(in srgb,var(--theme-a,#e8c886) 15%,transparent 85%),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
}
#view-shop .shop-category-tab.active b{
  color:rgba(255,255,255,.82) !important;
}
#view-shop .shop-block[data-shop-section]{
  display:none !important;
}
#view-shop .shop-block[data-shop-section].active{
  display:block !important;
  min-height:0 !important;
}
#view-shop .shop-block[data-shop-section].active .card-pad{
  display:grid !important;
  grid-template-rows:auto auto minmax(0,1fr) !important;
  gap:10px !important;
  max-height:min(680px,calc(100dvh - 255px)) !important;
  min-height:460px !important;
  padding:20px !important;
}
#view-shop .shop-block[data-shop-section].active .shop-grid{
  overflow:auto !important;
  min-height:0 !important;
  padding:2px 6px 4px 2px !important;
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--theme-a,#e8c886) 56%,rgba(255,255,255,.25) 44%) rgba(255,255,255,.08);
}
#view-shop .shop-block[data-shop-section].active .theme-grid,
#view-shop #voiceShopGrid,
#view-shop #itemShopGrid,
#view-shop #bundleShopGrid{
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr)) !important;
  gap:14px !important;
}
#view-shop .shop-preview-panel{
  top:16px !important;
}
#view-shop .shop-preview-pad{
  gap:14px !important;
}
#view-shop .shop-summary-grid{
  gap:9px !important;
}
@media(max-width:1320px){
  #view-shop .shop-shell{
    grid-template-columns:1fr !important;
  }
  #view-shop .shop-preview-panel{
    position:relative !important;
    top:auto !important;
  }
}

/* === home one-screen layout v1: compact desktop lobby === */
@media(min-width:981px){
  #app{
    grid-template-rows:78px minmax(0,1fr) 0 !important;
  }
  .footerbar{
    display:none !important;
  }
  #view-home.view.active{
    height:100% !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) auto !important;
    gap:14px !important;
    padding:22px 28px 18px !important;
  }
  #view-home .screen-head{
    margin-bottom:0 !important;
    align-items:center !important;
    gap:18px !important;
  }
  #view-home .screen-title{
    font-size:clamp(32px,2.1vw,42px) !important;
    line-height:1 !important;
    margin:0 !important;
  }
  #view-home .screen-desc{
    margin-top:7px !important;
    max-width:980px !important;
    font-size:13px !important;
    line-height:1.52 !important;
  }
  #view-home .action-row{
    flex:0 0 auto !important;
    align-items:center !important;
  }
  #view-home .action-row .btn{
    min-height:42px !important;
    padding:0 18px !important;
    border-radius:14px !important;
  }
  #view-home .hero-layout{
    min-height:0 !important;
    height:100% !important;
    grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr) !important;
    gap:16px !important;
  }
  #view-home .hero-main{
    min-height:0 !important;
    height:100% !important;
    gap:10px !important;
    justify-content:center !important;
    padding:22px 24px !important;
  }
  #view-home .hero-ribbon{
    padding:6px 12px !important;
    font-size:10px !important;
    margin-bottom:0 !important;
  }
  #view-home .hero-main h2{
    font-size:clamp(38px,2.65vw,52px) !important;
    line-height:1.02 !important;
    margin:4px 0 4px !important;
    max-width:920px !important;
  }
  #view-home .hero-main p{
    max-width:860px !important;
    font-size:13px !important;
    line-height:1.58 !important;
    padding:7px 10px !important;
  }
  #view-home .hero-stats{
    margin-top:12px !important;
    gap:9px !important;
  }
  #view-home .hero-stats .stat-shell{
    min-height:74px !important;
    padding:12px 14px !important;
    border-radius:15px !important;
  }
  #view-home .hero-stats .stat-shell span{
    font-size:11px !important;
  }
  #view-home .hero-stats .stat-shell strong{
    font-size:clamp(20px,1.45vw,27px) !important;
    margin-top:5px !important;
  }
  #view-home .hero-side,
  #view-home .feature-grid{
    height:100% !important;
    min-height:0 !important;
  }
  #view-home .feature-grid{
    grid-template-columns:1fr 1fr !important;
    grid-auto-rows:minmax(0,1fr) !important;
    gap:12px !important;
  }
  #view-home .feature.card{
    min-height:0 !important;
    height:auto !important;
  }
  #view-home .feature.card .card-pad{
    height:100% !important;
    padding:18px 20px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }
  #view-home .feature .kicker{
    font-size:10px !important;
    letter-spacing:1.8px !important;
  }
  #view-home .feature h3{
    font-size:clamp(21px,1.45vw,26px) !important;
    line-height:1.08 !important;
    margin:8px 0 8px !important;
  }
  #view-home .feature p{
    font-size:13px !important;
    line-height:1.55 !important;
  }
  #view-home .feature .heading-ico{
    width:25px !important;
    height:25px !important;
    border-radius:9px !important;
  }
  #view-home .version-notice{
    margin-top:0 !important;
    min-height:118px !important;
    padding:16px 22px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-template-rows:auto auto auto !important;
    column-gap:22px !important;
    row-gap:3px !important;
    align-items:center !important;
  }
  #view-home .version-notice .kicker,
  #view-home .version-notice h3,
  #view-home .version-notice p{
    grid-column:1 !important;
  }
  #view-home .version-notice .kicker{
    font-size:10px !important;
    letter-spacing:1.8px !important;
  }
  #view-home .version-notice h3{
    margin:2px 0 3px !important;
    font-size:22px !important;
    line-height:1.08 !important;
  }
  #view-home .version-notice p{
    max-width:1280px !important;
    margin:0 !important;
    font-size:13px !important;
    line-height:1.54 !important;
  }
  #view-home .version-notice .version-log-btn{
    grid-column:2 !important;
    grid-row:1 / span 3 !important;
    align-self:center !important;
    margin-top:0 !important;
    min-height:42px !important;
    padding:0 18px !important;
  }
}
@media(min-width:981px) and (max-height:860px){
  #view-home{
    gap:10px !important;
    padding-top:16px !important;
    padding-bottom:12px !important;
  }
  #view-home .screen-title{
    font-size:32px !important;
  }
  #view-home .hero-main h2{
    font-size:40px !important;
  }
  #view-home .hero-main p,
  #view-home .feature p,
  #view-home .version-notice p{
    font-size:12px !important;
    line-height:1.45 !important;
  }
  #view-home .version-notice{
    min-height:104px !important;
    padding-top:13px !important;
    padding-bottom:13px !important;
  }
}
@media(min-width:981px) and (max-width:1320px){
  #view-home{
    overflow:auto !important;
    grid-template-rows:auto auto auto !important;
  }
  #view-home .hero-layout{
    height:auto !important;
    grid-template-columns:1fr !important;
  }
  #view-home .hero-main{
    min-height:360px !important;
  }
}

/* === profile title vault v4: filtered title library === */
#view-profile .title-current-strip{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  padding:10px !important;
  border-radius:16px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 24%,rgba(255,255,255,.10) 76%) !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb,var(--theme-a,#d8bb8b) 10%,rgba(255,255,255,.06) 90%),
      rgba(255,255,255,.026)
    ) !important;
}
#view-profile .title-current-strip>span{
  color:var(--muted) !important;
  font-size:12px !important;
  font-weight:1000 !important;
  letter-spacing:1px !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}
#view-profile .title-current-strip .title-plaque{
  min-width:0 !important;
}
#view-profile .title-filter-tabs{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px !important;
}
#view-profile .title-filter-tab{
  min-width:0 !important;
  min-height:44px !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:7px !important;
  padding:0 10px !important;
  border-radius:13px !important;
  border:1px solid rgba(255,226,180,.11) !important;
  background:rgba(255,255,255,.04) !important;
  color:#f1e2cb !important;
  cursor:pointer !important;
  text-align:left !important;
}
#view-profile .title-filter-tab i{
  font-style:normal !important;
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 75%,white 25%) !important;
  font-weight:1000 !important;
}
#view-profile .title-filter-tab span{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:12px !important;
  font-weight:1000 !important;
}
#view-profile .title-filter-tab b{
  min-width:20px !important;
  height:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  background:rgba(0,0,0,.22) !important;
  color:#fff3d8 !important;
  font-size:11px !important;
}
#view-profile .title-filter-tab.active,
#view-profile .title-filter-tab:hover{
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 48%,rgba(255,255,255,.18) 52%) !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb,var(--theme-a,#d8bb8b) 26%,rgba(255,255,255,.08) 74%),
      color-mix(in srgb,var(--theme-b,#b78340) 16%,rgba(10,10,12,.70) 84%)
    ) !important;
}
#view-profile .title-empty-state{
  min-height:180px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  grid-column:1/-1 !important;
  border:1px dashed rgba(255,226,180,.18) !important;
  border-radius:18px !important;
  color:var(--muted) !important;
  text-align:center !important;
}
#view-profile .title-empty-state strong{
  color:#fff2d5 !important;
  font-size:18px !important;
}
#view-profile .title-empty-state span{
  max-width:360px !important;
  font-size:13px !important;
  line-height:1.6 !important;
}
@media(min-width:981px){
  #view-profile.view.active{
    height:100% !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    gap:16px !important;
    padding:22px 28px 18px !important;
  }
  #view-profile .screen-head{
    margin-bottom:0 !important;
  }
  #view-profile .screen-title{
    font-size:clamp(32px,2.1vw,42px) !important;
  }
  #view-profile .screen-desc{
    margin-top:7px !important;
    font-size:13px !important;
    line-height:1.55 !important;
  }
  #view-profile .profile-grid{
    height:100% !important;
    min-height:0 !important;
    grid-template-columns:minmax(340px,410px) minmax(0,1fr) !important;
    gap:18px !important;
    align-items:stretch !important;
  }
  #view-profile .info-stack,
  #view-profile .identity-card,
  #view-profile .title-panel-card{
    height:100% !important;
    min-height:0 !important;
  }
  #view-profile .identity-card .card-pad{
    min-height:0 !important;
    height:100% !important;
    overflow:auto !important;
  }
  #view-profile .title-panel-card .card-pad{
    min-height:0 !important;
    height:100% !important;
    display:grid !important;
    grid-template-rows:auto auto auto minmax(0,1fr) !important;
    gap:9px !important;
    padding:20px !important;
  }
  #view-profile .title-panel-card h3{
    margin:2px 0 0 !important;
    font-size:23px !important;
  }
  #view-profile .title-panel-card p{
    margin:0 !important;
    font-size:12px !important;
    line-height:1.5 !important;
  }
  #view-profile .title-manager{
    margin-top:0 !important;
    min-height:0 !important;
    display:flex !important;
  }
  #view-profile .title-role-panel-merged{
    width:100% !important;
    min-height:0 !important;
    overflow:hidden !important;
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    padding:12px !important;
  }
  #view-profile .title-role-head{
    margin-bottom:0 !important;
    flex:0 0 auto !important;
  }
  #view-profile .title-count-row{
    flex:0 0 auto !important;
    margin-bottom:0 !important;
  }
  #view-profile .title-filter-tabs{
    flex:0 0 auto !important;
  }
  #view-profile .title-card-grid-merged{
    flex:1 1 auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:auto !important;
    align-content:start !important;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr)) !important;
    gap:10px !important;
    padding:2px 6px 2px 2px !important;
  }
  #view-profile .title-card{
    min-height:94px !important;
    gap:6px !important;
    padding:11px !important;
  }
  #view-profile .title-card-copy{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
  }
  #view-profile .title-card-state{
    margin-top:auto !important;
  }
}
@media(max-width:980px){
  #view-profile .title-current-strip{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
  #view-profile .title-filter-tabs{
    display:flex !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px !important;
  }
  #view-profile .title-filter-tab{
    flex:0 0 108px !important;
  }
  #view-profile .title-card-grid-merged{
    grid-template-columns:1fr !important;
    max-height:430px !important;
    overflow:auto !important;
  }
}

/* === global theme softness v19: softer full-device palette === */
body[class*="theme-global-"]{
  --soft-theme-a:color-mix(in srgb,var(--theme-a,#e8c886) 42%,#eadfce 58%);
  --soft-theme-b:color-mix(in srgb,var(--theme-b,#b88946) 34%,#958879 66%);
  --soft-theme-c:color-mix(in srgb,var(--theme-c,#121820) 38%,#1a1816 62%);
  --soft-theme-line:color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(255,255,255,.18) 82%);
  --soft-theme-glow:color-mix(in srgb,var(--theme-a,#e8c886) 7%,transparent 93%);
  background:
    linear-gradient(180deg,rgba(245,238,226,.10),rgba(8,8,9,.34)),
    linear-gradient(135deg,rgba(18,17,16,.58),rgba(25,23,21,.42)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover fixed no-repeat !important;
}
body[class*="theme-global-"]::before{
  opacity:.34 !important;
  background:
    linear-gradient(180deg,rgba(255,249,238,.08),rgba(12,12,13,.26)),
    radial-gradient(circle at 18% 10%,var(--soft-theme-glow),transparent 30%) !important;
}
body[class*="theme-global-"]::after{
  opacity:.16 !important;
  filter:saturate(.52) brightness(.92) !important;
}
body[class*="theme-global-"] #app::before{
  opacity:.18 !important;
  filter:saturate(.5) !important;
}
body[class*="theme-global-"] .topbar{
  background:
    radial-gradient(circle at 12% 0,color-mix(in srgb,var(--soft-theme-a) 10%,transparent 90%),transparent 30%),
    linear-gradient(90deg,rgba(18,18,18,.90),color-mix(in srgb,var(--soft-theme-c) 22%,rgba(20,20,21,.88) 78%),rgba(15,15,16,.92)) !important;
  border-bottom-color:var(--soft-theme-line) !important;
  box-shadow:0 14px 28px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.10) !important;
}
body[class*="theme-global-"] .logo-emblem,
body[class*="theme-global-"] .btn-primary{
  background:linear-gradient(180deg,#f4ead7 0%,var(--soft-theme-a) 46%,var(--soft-theme-b) 100%) !important;
  box-shadow:0 10px 20px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.50),inset 0 -3px 0 rgba(80,60,36,.18) !important;
}
body[class*="theme-global-"] .nav-btn,
body[class*="theme-global-"] .meta-pill,
body[class*="theme-global-"] .top-action-pill,
body[class*="theme-global-"] .auth-pill,
body[class*="theme-global-"] .top-asset-pill,
body[class*="theme-global-"] .btn-secondary,
body[class*="theme-global-"] .btn-ghost{
  background:linear-gradient(180deg,rgba(44,42,40,.72),rgba(14,14,15,.88)) !important;
  border-color:var(--soft-theme-line) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.10) !important;
}
body[class*="theme-global-"] .nav-btn.active,
body[class*="theme-global-"] .nav-btn:hover,
body[class*="theme-global-"] .top-action-pill.active,
body[class*="theme-global-"] .top-action-pill:hover,
body[class*="theme-global-"] .auth-pill:hover,
body[class*="theme-global-"] .top-asset-pill:hover{
  background:linear-gradient(180deg,color-mix(in srgb,var(--soft-theme-a) 16%,rgba(54,52,50,.76) 84%),rgba(18,18,19,.88)) !important;
  border-color:color-mix(in srgb,var(--soft-theme-a) 34%,rgba(255,255,255,.16) 66%) !important;
  box-shadow:0 9px 20px rgba(0,0,0,.17),0 0 10px var(--soft-theme-glow),inset 0 1px 0 rgba(255,255,255,.14) !important;
}
body[class*="theme-global-"] .nav-btn .ico,
body[class*="theme-global-"] .top-action-pill .ico,
body[class*="theme-global-"] .meta-pill .ico,
body[class*="theme-global-"] .heading-ico{
  background:linear-gradient(180deg,color-mix(in srgb,var(--soft-theme-a) 20%,rgba(255,255,255,.08) 80%),rgba(30,30,31,.72)) !important;
  border-color:var(--soft-theme-line) !important;
  color:color-mix(in srgb,var(--soft-theme-a) 74%,#fff 26%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 8px var(--soft-theme-glow) !important;
}
body[class*="theme-global-"] .card,
body[class*="theme-global-"] .modal-card,
body[class*="theme-global-"] .money-plaque,
body[class*="theme-global-"] .table-card,
body[class*="theme-global-"] .shop-preview-scene{
  border-color:var(--soft-theme-line) !important;
  background:
    radial-gradient(circle at 86% 12%,var(--soft-theme-glow),transparent 30%),
    linear-gradient(180deg,color-mix(in srgb,var(--soft-theme-c) 16%,rgba(44,42,39,.72) 84%),rgba(12,12,13,.86)) !important;
  box-shadow:0 24px 52px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body[class*="theme-global-"] .hero-main,
body[class*="theme-global-"] .case-stage{
  border-color:var(--soft-theme-line) !important;
  background:
    linear-gradient(180deg,rgba(10,10,11,.14),rgba(10,10,11,.46)),
    radial-gradient(ellipse at 54% 88%,var(--soft-theme-glow),transparent 44%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  box-shadow:0 24px 54px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body[class*="theme-global-"] .stage-shell{
  border-color:var(--soft-theme-line) !important;
  background:
    radial-gradient(circle at 50% 0,var(--soft-theme-glow),transparent 34%),
    linear-gradient(180deg,color-mix(in srgb,var(--soft-theme-c) 16%,rgba(34,32,30,.78) 84%),rgba(8,8,9,.92)) !important;
  box-shadow:0 24px 58px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--soft-theme-a) 8%,rgba(255,255,255,.10) 92%),transparent 34%),
    linear-gradient(180deg,rgba(236,229,216,.64),rgba(214,205,190,.50)) !important;
  border-color:color-mix(in srgb,var(--soft-theme-a) 18%,rgba(255,255,255,.42) 82%) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.22) !important;
}
body[class*="theme-global-"] .stat-shell,
body[class*="theme-global-"] .status-chip,
body[class*="theme-global-"] .summary-card,
body[class*="theme-global-"] .history-item,
body[class*="theme-global-"] .result-row,
body[class*="theme-global-"] .room-line,
body[class*="theme-global-"] .shop-item,
body[class*="theme-global-"] .title-role-panel,
body[class*="theme-global-"] .title-card,
body[class*="theme-global-"] .title-current-strip,
body[class*="theme-global-"] .title-filter-tab{
  border-color:color-mix(in srgb,var(--soft-theme-a) 16%,rgba(255,255,255,.13) 84%) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.022)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body[class*="theme-global-"] .feature-pill,
body[class*="theme-global-"] .shop-state-pill,
body[class*="theme-global-"] .shop-type-pill,
body[class*="theme-global-"] .mode-badge,
body[class*="theme-global-"] .room-badge,
body[class*="theme-global-"] .title-badge,
body[class*="theme-global-"] .hero-ribbon,
body[class*="theme-global-"] .title-card-role{
  border-color:var(--soft-theme-line) !important;
  background:color-mix(in srgb,var(--soft-theme-a) 9%,rgba(255,255,255,.05) 91%) !important;
  color:color-mix(in srgb,var(--soft-theme-a) 70%,#fff 30%) !important;
  box-shadow:none !important;
}
body[class*="theme-global-"] .kicker,
body[class*="theme-global-"] .plaque-title,
body[class*="theme-global-"] th,
body[class*="theme-global-"] .shop-price,
body[class*="theme-global-"] .shop-preview-meta,
body[class*="theme-global-"] .title-filter-tab i{
  color:color-mix(in srgb,var(--soft-theme-a) 70%,#f4ead9 30%) !important;
  text-shadow:none !important;
}
body[class*="theme-global-"] .hero-side .feature .kicker,
body[class*="theme-global-"] .version-notice .kicker{
  color:color-mix(in srgb,var(--soft-theme-c) 58%,#6f665c 42%) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#211d18 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.72) !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:#3a332b !important;
  text-shadow:0 1px 0 rgba(255,255,255,.58) !important;
}
body[class*="theme-global-"] .hero-main h2,
body[class*="theme-global-"] .screen-title{
  text-shadow:0 2px 8px rgba(0,0,0,.48) !important;
}
body[class*="theme-global-"] .hero-main p{
  background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.08) 70%,transparent) !important;
}
body[class*="theme-global-"] .version-notice .version-log-btn{
  background:linear-gradient(180deg,color-mix(in srgb,var(--soft-theme-a) 16%,rgba(56,48,40,.84) 84%),rgba(18,17,16,.90)) !important;
  border-color:var(--soft-theme-line) !important;
  box-shadow:0 8px 16px rgba(0,0,0,.16) !important;
}
body[class*="theme-global-"] .live-dot{
  background:var(--soft-theme-a) !important;
  box-shadow:0 0 8px var(--soft-theme-glow) !important;
}
body[class*="theme-global-"] .shop-item.equipped,
body[class*="theme-global-"] .title-card.equipped{
  box-shadow:0 0 0 1px color-mix(in srgb,var(--soft-theme-a) 18%,transparent 82%),0 12px 24px rgba(0,0,0,.16) !important;
}
body[class*="theme-global-"] .case-btn.player .case-shell{
  box-shadow:0 0 18px color-mix(in srgb,var(--soft-theme-a) 18%,transparent 82%),0 14px 22px rgba(0,0,0,.34) !important;
}
body[class*="theme-global-"] .case-btn.ai .case-shell{
  outline-color:color-mix(in srgb,var(--soft-theme-a) 46%,transparent 54%) !important;
}
body[class*="theme-global-"] .case-stage::before,
body[class*="theme-global-"] .case-grid::before,
body[class*="theme-global-"] .case-grid::after,
body[class*="theme-global-"] .stage-shell::before,
body[class*="theme-global-"] .stage-shell::after{
  opacity:.42 !important;
  filter:saturate(.52) !important;
}
body[class*="theme-global-"] .nav-btn.active::after{
  opacity:.36 !important;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--soft-theme-a) 50%,white 50%),transparent) !important;
}

/* === visual comfort v20: warmer tone, tighter lobby, polished shop/profile details === */
body[class*="theme-global-"]{
  --soft-theme-a:color-mix(in srgb,var(--theme-a,#e8c886) 52%,#fff0d8 48%);
  --soft-theme-b:color-mix(in srgb,var(--theme-b,#b88946) 42%,#b59b7b 58%);
  --soft-theme-c:color-mix(in srgb,var(--theme-c,#121820) 28%,#241d17 72%);
  --soft-theme-line:color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,247,232,.22) 76%);
  --soft-theme-glow:color-mix(in srgb,var(--theme-a,#e8c886) 11%,transparent 89%);
  background:
    linear-gradient(180deg,rgba(255,242,220,.16),rgba(19,15,12,.24)),
    linear-gradient(135deg,rgba(46,36,27,.34),rgba(18,16,14,.34)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover fixed no-repeat !important;
}
body[class*="theme-global-"]::before{
  opacity:.28 !important;
  background:
    linear-gradient(180deg,rgba(255,244,226,.12),rgba(38,28,20,.16)),
    radial-gradient(circle at 18% 10%,var(--soft-theme-glow),transparent 32%) !important;
}
body[class*="theme-global-"]::after{
  opacity:.12 !important;
  filter:saturate(.62) brightness(.98) !important;
}
body[class*="theme-global-"] .topbar{
  background:
    radial-gradient(circle at 12% 0,color-mix(in srgb,var(--soft-theme-a) 13%,transparent 87%),transparent 32%),
    linear-gradient(90deg,rgba(32,27,22,.90),color-mix(in srgb,var(--soft-theme-c) 28%,rgba(27,24,21,.86) 72%),rgba(21,19,18,.90)) !important;
}
body[class*="theme-global-"] .card,
body[class*="theme-global-"] .modal-card,
body[class*="theme-global-"] .money-plaque,
body[class*="theme-global-"] .table-card,
body[class*="theme-global-"] .shop-preview-scene{
  background:
    radial-gradient(circle at 86% 12%,var(--soft-theme-glow),transparent 32%),
    linear-gradient(180deg,color-mix(in srgb,var(--soft-theme-c) 10%,rgba(57,45,34,.78) 90%),rgba(18,15,13,.84)) !important;
  box-shadow:0 22px 46px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.10) !important;
}
body[class*="theme-global-"] .hero-main,
body[class*="theme-global-"] .case-stage{
  background:
    linear-gradient(180deg,rgba(23,17,13,.10),rgba(18,14,11,.34)),
    radial-gradient(ellipse at 54% 88%,var(--soft-theme-glow),transparent 44%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
}
body[class*="theme-global-"] .hero-side .feature.card,
body[class*="theme-global-"] .version-notice{
  background:
    radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--soft-theme-a) 12%,rgba(255,255,255,.14) 88%),transparent 34%),
    linear-gradient(180deg,rgba(246,234,216,.70),rgba(229,216,195,.58)) !important;
  border-color:color-mix(in srgb,var(--soft-theme-a) 22%,rgba(255,255,255,.46) 78%) !important;
}
body[class*="theme-global-"] .stat-shell,
body[class*="theme-global-"] .status-chip,
body[class*="theme-global-"] .summary-card,
body[class*="theme-global-"] .history-item,
body[class*="theme-global-"] .result-row,
body[class*="theme-global-"] .room-line,
body[class*="theme-global-"] .shop-item,
body[class*="theme-global-"] .title-role-panel,
body[class*="theme-global-"] .title-card,
body[class*="theme-global-"] .title-current-strip,
body[class*="theme-global-"] .title-filter-tab{
  background:
    linear-gradient(180deg,rgba(255,246,229,.070),rgba(255,246,229,.028)) !important;
  border-color:color-mix(in srgb,var(--soft-theme-a) 22%,rgba(255,255,255,.13) 78%) !important;
}
body[class*="theme-global-"] .hero-side .feature h3,
body[class*="theme-global-"] .version-notice h3{
  color:#1e1812 !important;
}
body[class*="theme-global-"] .hero-side .feature p,
body[class*="theme-global-"] .version-notice p{
  color:#34291f !important;
}

@media(min-width:981px){
  #view-home.view.active{
    grid-template-rows:auto auto auto !important;
    align-content:start !important;
    gap:12px !important;
    overflow:hidden !important;
  }
  #view-home .screen-head{
    min-height:0 !important;
  }
  #view-home .hero-layout{
    height:auto !important;
    min-height:0 !important;
    grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr) !important;
    align-items:stretch !important;
  }
  #view-home .hero-main{
    height:auto !important;
    min-height:clamp(360px,43vh,430px) !important;
    justify-content:center !important;
    padding:20px 24px !important;
  }
  #view-home .hero-main h2{
    font-size:clamp(36px,2.35vw,46px) !important;
    margin:2px 0 2px !important;
  }
  #view-home .hero-main p{
    font-size:12.5px !important;
    line-height:1.52 !important;
  }
  #view-home .hero-stats{
    margin-top:10px !important;
  }
  #view-home .hero-stats .stat-shell{
    min-height:66px !important;
    padding:10px 12px !important;
  }
  #view-home .feature-grid{
    height:auto !important;
    grid-auto-rows:minmax(172px,auto) !important;
    gap:10px !important;
  }
  #view-home .feature.card{
    height:auto !important;
    min-height:172px !important;
  }
  #view-home .feature.card .card-pad{
    justify-content:flex-start !important;
    padding:16px 18px !important;
  }
  #view-home .feature h3{
    font-size:clamp(20px,1.25vw,23px) !important;
    margin:6px 0 7px !important;
  }
  #view-home .feature p{
    font-size:12.5px !important;
    line-height:1.48 !important;
  }
  #view-home .version-notice{
    min-height:94px !important;
    padding:14px 20px !important;
    row-gap:2px !important;
  }
  #view-home .version-notice h3{
    font-size:24px !important;
  }
  #view-home .version-notice p{
    font-size:12.5px !important;
    line-height:1.48 !important;
  }
  #view-home .version-notice .version-log-btn{
    min-height:38px !important;
  }
}

#view-shop .shop-item{
  min-width:0 !important;
}
#view-shop .shop-item .btn{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
}
#view-shop .shop-buy-btn{
  display:grid !important;
  grid-template-columns:auto auto minmax(0,1fr) !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  padding:0 12px !important;
  white-space:nowrap !important;
}
#view-shop .shop-buy-btn .ico{
  margin:0 !important;
}
#view-shop .shop-btn-label{
  min-width:max-content !important;
}
#view-shop .shop-btn-price{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-size:clamp(11px,.78vw,13px) !important;
  letter-spacing:0 !important;
}

#view-profile .identity-card .card-pad{
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--soft-theme-a,#e8c886) 46%,rgba(255,255,255,.28) 54%) rgba(255,246,229,.055);
}
#view-profile .identity-card .card-pad::-webkit-scrollbar{
  width:10px;
}
#view-profile .identity-card .card-pad::-webkit-scrollbar-track{
  border-radius:999px;
  background:rgba(255,246,229,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}
#view-profile .identity-card .card-pad::-webkit-scrollbar-thumb{
  border:2px solid rgba(22,17,13,.78);
  border-radius:999px;
  background:linear-gradient(180deg,var(--soft-theme-a,#e8c886),var(--soft-theme-b,#b88946));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
}
#view-profile .identity-card .card-pad::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#fff0d2,var(--soft-theme-a,#e8c886));
}

/* === lobby spacing and aurora recovery v21 === */
body[class*="theme-global-"] #view-home .version-notice .version-log-btn{
  min-width:154px !important;
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--soft-theme-a,#e8c886) 60%,#fff8e6 40%) 0%,
      color-mix(in srgb,var(--soft-theme-a,#e8c886) 52%,var(--soft-theme-b,#b88946) 48%) 54%,
      color-mix(in srgb,var(--soft-theme-b,#b88946) 70%,#6f4b27 30%) 100%) !important;
  border-color:color-mix(in srgb,var(--soft-theme-a,#e8c886) 58%,rgba(255,255,255,.32) 42%) !important;
  color:#24170a !important;
  text-shadow:0 1px 0 rgba(255,255,255,.42) !important;
  box-shadow:
    0 12px 24px rgba(0,0,0,.18),
    0 0 18px var(--soft-theme-glow,rgba(232,200,134,.18)),
    inset 0 1px 0 rgba(255,255,255,.48),
    inset 0 -3px 0 rgba(61,39,17,.20) !important;
}
body[class*="theme-global-"] #view-home .version-notice .version-log-btn .ico{
  background:rgba(255,255,255,.28) !important;
  color:#21160b !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.36) !important;
}

@media(min-width:981px){
  #view-home.view.active{
    grid-template-rows:auto minmax(0,1fr) auto !important;
    align-content:stretch !important;
    gap:18px !important;
    padding:26px 32px 24px !important;
    overflow:hidden !important;
  }
  #view-home .screen-head{
    margin-bottom:0 !important;
    gap:26px !important;
  }
  #view-home .screen-desc{
    max-width:850px !important;
    line-height:1.62 !important;
  }
  #view-home .hero-layout{
    height:100% !important;
    min-height:0 !important;
    grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr) !important;
    gap:22px !important;
    align-items:stretch !important;
  }
  #view-home .hero-main{
    height:100% !important;
    min-height:clamp(400px,47vh,482px) !important;
    justify-content:center !important;
    padding:26px 30px !important;
    gap:12px !important;
  }
  #view-home .hero-main h2{
    font-size:clamp(39px,2.45vw,50px) !important;
    margin:4px 0 2px !important;
  }
  #view-home .hero-main p{
    max-width:760px !important;
    font-size:13px !important;
    line-height:1.62 !important;
    padding:10px 12px !important;
  }
  #view-home .hero-stats{
    margin-top:14px !important;
    gap:12px !important;
  }
  #view-home .hero-stats .stat-shell{
    min-height:74px !important;
    padding:12px 14px !important;
  }
  #view-home .hero-stats .stat-shell strong{
    font-size:clamp(22px,1.45vw,28px) !important;
  }
  #view-home .hero-side,
  #view-home .feature-grid{
    height:100% !important;
    min-height:0 !important;
  }
  #view-home .feature-grid{
    grid-auto-rows:minmax(0,1fr) !important;
    gap:16px !important;
  }
  #view-home .feature.card{
    min-height:188px !important;
  }
  #view-home .feature.card .card-pad{
    justify-content:flex-start !important;
    padding:20px 22px !important;
  }
  #view-home .feature h3{
    font-size:clamp(21px,1.32vw,25px) !important;
    margin:8px 0 8px !important;
  }
  #view-home .feature p{
    font-size:13px !important;
    line-height:1.58 !important;
  }
  #view-home .version-notice{
    min-height:116px !important;
    padding:18px 24px !important;
    column-gap:26px !important;
    row-gap:4px !important;
  }
  #view-home .version-notice h3{
    font-size:26px !important;
  }
  #view-home .version-notice p{
    font-size:13px !important;
    line-height:1.55 !important;
  }
  #view-home .version-notice .version-log-btn{
    min-height:42px !important;
    justify-self:end !important;
    align-self:center !important;
  }
}

body.theme-global-aurora{
  --theme-a:#c8fff4 !important;
  --theme-b:#9eb4ff !important;
  --theme-c:#18324b !important;
  --theme-glow:rgba(155,244,236,.24) !important;
  --theme-line:rgba(197,246,255,.30) !important;
  --soft-theme-a:#d8fff8 !important;
  --soft-theme-b:#aebdff !important;
  --soft-theme-c:#18324b !important;
  --soft-theme-line:rgba(199,248,255,.36) !important;
  --soft-theme-glow:rgba(155,244,236,.20) !important;
  color:#f6fdff !important;
  background:
    radial-gradient(circle at 18% 8%,rgba(213,255,250,.22),transparent 30%),
    radial-gradient(circle at 80% 12%,rgba(160,180,255,.20),transparent 28%),
    linear-gradient(180deg,rgba(235,252,255,.14),rgba(20,39,60,.44)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover fixed no-repeat !important;
}
body.theme-global-aurora::before{
  opacity:.34 !important;
  background:
    linear-gradient(100deg,transparent 0 24%,rgba(188,255,244,.18) 38%,transparent 55%,rgba(153,170,255,.14) 70%,transparent 100%),
    radial-gradient(circle at 50% 4%,rgba(232,255,255,.18),transparent 34%) !important;
  mix-blend-mode:screen !important;
}
body.theme-global-aurora::after{
  opacity:.20 !important;
  filter:saturate(.86) brightness(1.08) !important;
}
body.theme-global-aurora .topbar{
  background:
    radial-gradient(circle at 16% 0,rgba(199,255,248,.18),transparent 28%),
    linear-gradient(90deg,rgba(17,34,50,.90),rgba(22,42,62,.84),rgba(15,28,43,.92)) !important;
  border-bottom-color:rgba(207,250,255,.30) !important;
  box-shadow:0 16px 34px rgba(5,18,34,.22),0 0 30px rgba(155,244,236,.18) !important;
}
body.theme-global-aurora .logo-emblem,
body.theme-global-aurora .btn-primary{
  background:linear-gradient(180deg,#f8ffff 0%,#c8fff4 42%,#9eb4ff 100%) !important;
}
body.theme-global-aurora .nav-btn,
body.theme-global-aurora .meta-pill{
  background:linear-gradient(180deg,rgba(40,70,86,.70),rgba(16,28,42,.84)) !important;
  border-color:rgba(207,250,255,.20) !important;
}
body.theme-global-aurora .nav-btn.active,
body.theme-global-aurora .nav-btn:hover,
body.theme-global-aurora .top-action-pill:hover,
body.theme-global-aurora .top-action-pill.active{
  background:linear-gradient(180deg,rgba(188,255,244,.24),rgba(27,50,70,.88)) !important;
  border-color:rgba(207,250,255,.42) !important;
  box-shadow:0 12px 24px rgba(7,24,40,.20),0 0 18px rgba(155,244,236,.18) !important;
}
body.theme-global-aurora .hero-main,
body.theme-global-aurora .case-stage{
  background:
    linear-gradient(180deg,rgba(7,16,26,.34),rgba(8,18,30,.62)),
    radial-gradient(circle at 68% 20%,rgba(199,255,248,.22),transparent 30%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
}
body.theme-global-aurora #view-home .hero-side .feature.card,
body.theme-global-aurora #view-home .version-notice{
  background:
    radial-gradient(circle at 84% 8%,rgba(255,255,255,.34),transparent 32%),
    linear-gradient(180deg,rgba(224,250,255,.78),rgba(188,218,239,.62)) !important;
  border-color:rgba(207,250,255,.54) !important;
  box-shadow:0 22px 46px rgba(6,22,36,.18),inset 0 1px 0 rgba(255,255,255,.44) !important;
}
body.theme-global-aurora #view-home .hero-side .feature .kicker,
body.theme-global-aurora #view-home .version-notice .kicker{
  color:#2d7080 !important;
}
body.theme-global-aurora #view-home .hero-side .feature h3,
body.theme-global-aurora #view-home .version-notice h3{
  color:#102536 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.70) !important;
}
body.theme-global-aurora #view-home .hero-side .feature p,
body.theme-global-aurora #view-home .version-notice p{
  color:#1f3a4b !important;
  text-shadow:0 1px 0 rgba(255,255,255,.58) !important;
}
body.theme-global-aurora #view-home .version-notice .version-log-btn{
  background:linear-gradient(180deg,#f6ffff 0%,#c8fff4 48%,#9eb4ff 100%) !important;
  border-color:rgba(207,250,255,.72) !important;
  color:#102536 !important;
  box-shadow:0 12px 24px rgba(8,28,44,.18),0 0 22px rgba(155,244,236,.22),inset 0 1px 0 rgba(255,255,255,.62) !important;
}
body.theme-global-aurora #view-home .hero-ribbon{
  background:rgba(14,35,54,.72) !important;
  border-color:rgba(207,250,255,.28) !important;
  color:#e7fffb !important;
}

/* === lobby density and notice readability v22 === */
body[class*="theme-global-"] #view-home .hero-main,
body[class*="theme-global-"] #view-home .hero-side .feature.card,
body[class*="theme-global-"] #view-home .version-notice{
  isolation:isolate;
}
body[class*="theme-global-"] #view-home .hero-main > *,
body[class*="theme-global-"] #view-home .hero-side .feature.card > *,
body[class*="theme-global-"] #view-home .version-notice > *{
  position:relative;
  z-index:2;
}
body[class*="theme-global-"] #view-home .hero-main{
  background:
    linear-gradient(180deg,rgba(4,5,6,.18),rgba(4,5,6,.08) 40%,rgba(4,5,6,.34)),
    radial-gradient(ellipse at 52% 84%,color-mix(in srgb,var(--theme-a,#e8c886) 38%,transparent 62%),transparent 35%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
}
body[class*="theme-global-"] #view-home .hero-main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 10%,color-mix(in srgb,var(--theme-a,#e8c886) 34%,transparent 66%) 10.4% 10.8%,transparent 11.4% 88.6%,color-mix(in srgb,var(--theme-a,#e8c886) 30%,transparent 70%) 89.2% 89.6%,transparent 90.2%),
    radial-gradient(ellipse at 52% 92%,rgba(255,255,255,.28) 0 10%,color-mix(in srgb,var(--theme-a,#e8c886) 30%,transparent 70%) 11% 19%,transparent 32%),
    repeating-linear-gradient(100deg,transparent 0 58px,color-mix(in srgb,var(--theme-a,#e8c886) 11%,transparent 89%) 60px 62px,transparent 64px 132px),
    linear-gradient(180deg,transparent 0 58%,color-mix(in srgb,var(--theme-c,#18202a) 36%,rgba(0,0,0,.16) 64%) 74%,rgba(0,0,0,.30));
  opacity:.78;
}
body[class*="theme-global-"] #view-home .hero-main::after{
  background:
    linear-gradient(180deg,rgba(255,255,255,.09),transparent 18%,rgba(0,0,0,.18)),
    radial-gradient(circle,rgba(255,255,255,.48) 0 1px,transparent 1.7px) !important;
  background-size:100% 100%,92px 92px !important;
  opacity:.38 !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature.card,
body[class*="theme-global-"] #view-home .version-notice{
  background:
    linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,.22)),
    radial-gradient(circle at 88% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 30%,rgba(255,255,255,.24) 70%),transparent 34%),
    radial-gradient(ellipse at 12% 100%,color-mix(in srgb,var(--theme-b,#b88946) 25%,transparent 75%),transparent 46%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 48%,rgba(255,255,255,.42) 52%) !important;
  box-shadow:
    0 20px 46px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -24px 36px rgba(0,0,0,.08) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature.card::before,
body[class*="theme-global-"] #view-home .version-notice::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 72%,white 28%) 0 5px,transparent 5px),
    radial-gradient(ellipse at 78% 72%,rgba(255,255,255,.34),transparent 28%),
    repeating-linear-gradient(115deg,transparent 0 34px,color-mix(in srgb,var(--theme-a,#e8c886) 14%,transparent 86%) 36px 38px,transparent 40px 82px),
    linear-gradient(180deg,rgba(255,255,255,.58),rgba(244,236,221,.42) 42%,rgba(232,219,198,.56));
  opacity:.88 !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature.card::after,
body[class*="theme-global-"] #view-home .version-notice::after{
  z-index:1;
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.46) 20%,transparent 42%),
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.34),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.24),transparent 34%,color-mix(in srgb,var(--theme-c,#16202a) 10%,transparent 90%)) !important;
  opacity:.76 !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature .kicker,
body[class*="theme-global-"] #view-home .version-notice .kicker{
  color:color-mix(in srgb,var(--theme-c,#16202a) 76%,#5b4a36 24%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.70) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature h3,
body[class*="theme-global-"] #view-home .version-notice h3{
  color:color-mix(in srgb,var(--theme-c,#16202a) 88%,#080604 12%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.78) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature p,
body[class*="theme-global-"] #view-home .version-notice p{
  color:#241d16 !important;
  font-weight:850 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.66) !important;
}
body[class*="theme-global-"] #view-home .version-notice p{
  max-width:1320px !important;
  padding:6px 10px !important;
  border-radius:10px !important;
  background:rgba(255,250,240,.48) !important;
  box-shadow:inset 0 0 0 1px rgba(70,50,28,.10) !important;
}
body[class*="theme-global-"] #view-home .version-notice .version-log-btn{
  color:#17100a !important;
}
body.theme-global-marina #view-home,
body.theme-global-cloud #view-home,
body.theme-global-aurora #view-home{
  --lobby-bright-panel:rgba(250,254,255,.58);
}
body.theme-global-marina #view-home .hero-side .feature.card::before,
body.theme-global-marina #view-home .version-notice::before,
body.theme-global-cloud #view-home .hero-side .feature.card::before,
body.theme-global-cloud #view-home .version-notice::before,
body.theme-global-aurora #view-home .hero-side .feature.card::before,
body.theme-global-aurora #view-home .version-notice::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 70%,white 30%) 0 5px,transparent 5px),
    radial-gradient(ellipse at 78% 72%,rgba(255,255,255,.38),transparent 28%),
    repeating-linear-gradient(115deg,transparent 0 34px,color-mix(in srgb,var(--theme-a,#e8c886) 14%,transparent 86%) 36px 38px,transparent 40px 82px),
    linear-gradient(180deg,var(--lobby-bright-panel,rgba(255,255,255,.58)),rgba(232,240,244,.52)) !important;
}
@media(max-width:980px){
  body[class*="theme-global-"] #view-home .hero-main::before{
    opacity:.54;
    background:
      radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 34%,transparent 66%),transparent 34%),
      linear-gradient(180deg,transparent 0 52%,rgba(0,0,0,.28));
  }
  body[class*="theme-global-"] #view-home .hero-side .feature.card::before,
  body[class*="theme-global-"] #view-home .version-notice::before{
    opacity:.78 !important;
  }
  body[class*="theme-global-"] #view-home .version-notice p{
    padding:8px 10px !important;
    font-size:13px !important;
    line-height:1.62 !important;
  }
}

/* === lobby hero bright match v23 === */
body[class*="theme-global-"] #view-home .hero-main{
  background:
    linear-gradient(180deg,rgba(255,255,255,.46),rgba(255,255,255,.24)),
    radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 32%,rgba(255,255,255,.24) 68%),transparent 34%),
    radial-gradient(ellipse at 16% 100%,color-mix(in srgb,var(--theme-b,#b88946) 26%,transparent 74%),transparent 46%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 50%,rgba(255,255,255,.42) 50%) !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -24px 38px rgba(0,0,0,.08) !important;
}
body[class*="theme-global-"] #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 74%,white 26%) 0 6px,transparent 6px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.36),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.26) 72%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 14%,transparent 86%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,rgba(255,255,255,.62),rgba(246,238,224,.44) 44%,rgba(232,219,198,.56)) !important;
  opacity:.90 !important;
}
body[class*="theme-global-"] #view-home .hero-main::after{
  z-index:1;
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.46) 20%,transparent 42%),
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.34),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.24),transparent 34%,color-mix(in srgb,var(--theme-c,#16202a) 10%,transparent 90%)) !important;
  background-size:100% 100% !important;
  opacity:.72 !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon{
  color:color-mix(in srgb,var(--theme-c,#16202a) 82%,#090805 18%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.78) !important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 46%,rgba(255,255,255,.74) 54%),color-mix(in srgb,var(--theme-b,#b88946) 28%,rgba(255,255,255,.62) 72%)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 52%,rgba(0,0,0,.10) 48%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 8px 18px rgba(0,0,0,.08) !important;
}
body[class*="theme-global-"] #view-home .hero-main h2{
  color:color-mix(in srgb,var(--theme-c,#16202a) 90%,#080604 10%) !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.82) !important;
}
body[class*="theme-global-"] #view-home .hero-main p{
  width:auto !important;
  max-width:880px !important;
  color:#241d16 !important;
  font-weight:850 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.70) !important;
  background:rgba(255,250,240,.50) !important;
  box-shadow:inset 0 0 0 1px rgba(70,50,28,.10) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  background:
    radial-gradient(circle at 84% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.30) 76%),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.66),rgba(245,235,216,.54)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 42%,rgba(0,0,0,.10) 58%) !important;
  color:#241d16 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.74),0 10px 22px rgba(0,0,0,.10) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell span,
body[class*="theme-global-"] #view-home .hero-main .stat-shell label{
  color:color-mix(in srgb,var(--theme-c,#16202a) 72%,#53422f 28%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.74) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell strong{
  color:color-mix(in srgb,var(--theme-c,#16202a) 88%,#070604 12%) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.78) !important;
}
body.theme-global-marina #view-home .hero-main::before,
body.theme-global-cloud #view-home .hero-main::before,
body.theme-global-aurora #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 70%,white 30%) 0 6px,transparent 6px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.40),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 26%,rgba(255,255,255,.32) 74%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 14%,transparent 86%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,var(--lobby-bright-panel,rgba(250,254,255,.58)),rgba(232,240,244,.54)) !important;
}
@media(max-width:980px){
  body[class*="theme-global-"] #view-home .hero-main::before{
    opacity:.82 !important;
  }
}

/* === lobby hero brightness trim v24 === */
body[class*="theme-global-"] #view-home .hero-main{
  background:
    linear-gradient(180deg,rgba(255,248,236,.28),rgba(255,248,236,.14)),
    radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(255,255,255,.12) 78%),transparent 34%),
    radial-gradient(ellipse at 16% 100%,color-mix(in srgb,var(--theme-b,#b88946) 20%,transparent 80%),transparent 46%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -24px 38px rgba(0,0,0,.12) !important;
}
body[class*="theme-global-"] #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 62%,white 38%) 0 6px,transparent 6px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.20),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(255,255,255,.12) 78%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 10%,transparent 90%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,rgba(255,248,236,.38),rgba(239,226,204,.24) 44%,rgba(171,142,102,.22)) !important;
  opacity:.66 !important;
}
body[class*="theme-global-"] #view-home .hero-main::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.20) 20%,transparent 42%),
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.18),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.10),transparent 34%,rgba(0,0,0,.08)) !important;
  opacity:.48 !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 34%,rgba(255,255,255,.54) 66%),color-mix(in srgb,var(--theme-b,#b88946) 24%,rgba(255,255,255,.42) 76%)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 8px 18px rgba(0,0,0,.10) !important;
}
body[class*="theme-global-"] #view-home .hero-main p{
  background:rgba(255,248,236,.34) !important;
  box-shadow:inset 0 0 0 1px rgba(70,50,28,.08) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  background:
    radial-gradient(circle at 84% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(255,255,255,.18) 82%),transparent 34%),
    linear-gradient(180deg,rgba(255,248,236,.46),rgba(236,222,198,.36)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.50),0 10px 22px rgba(0,0,0,.12) !important;
}
body.theme-global-marina #view-home .hero-main::before,
body.theme-global-cloud #view-home .hero-main::before,
body.theme-global-aurora #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 60%,white 40%) 0 6px,transparent 6px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.24),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 20%,rgba(255,255,255,.16) 80%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 10%,transparent 90%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,rgba(244,250,252,.38),rgba(217,229,235,.28)) !important;
}
@media(max-width:980px){
  body[class*="theme-global-"] #view-home .hero-main::before{
    opacity:.58 !important;
  }
}

/* === lobby hero brightness trim v25 === */
body[class*="theme-global-"] #view-home .hero-main{
  background:
    linear-gradient(180deg,rgba(255,242,220,.18),rgba(255,242,220,.08)),
    radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 16%,rgba(255,255,255,.08) 84%),transparent 34%),
    radial-gradient(ellipse at 16% 100%,color-mix(in srgb,var(--theme-b,#b88946) 16%,transparent 84%),transparent 46%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,.23),
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -24px 38px rgba(0,0,0,.16) !important;
}
body[class*="theme-global-"] #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 52%,white 48%) 0 5px,transparent 5px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.12),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 16%,rgba(255,255,255,.08) 84%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 7%,transparent 93%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,rgba(255,242,220,.24),rgba(190,160,118,.16) 44%,rgba(70,50,32,.18)) !important;
  opacity:.48 !important;
}
body[class*="theme-global-"] #view-home .hero-main::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.12) 20%,transparent 42%),
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.10),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.06),transparent 34%,rgba(0,0,0,.12)) !important;
  opacity:.36 !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.36) 72%),color-mix(in srgb,var(--theme-b,#b88946) 22%,rgba(255,255,255,.28) 78%)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.40),0 8px 18px rgba(0,0,0,.12) !important;
}
body[class*="theme-global-"] #view-home .hero-main p{
  background:rgba(255,242,220,.24) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  background:
    radial-gradient(circle at 84% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 13%,rgba(255,255,255,.10) 87%),transparent 34%),
    linear-gradient(180deg,rgba(255,242,220,.32),rgba(192,166,126,.24)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 10px 22px rgba(0,0,0,.14) !important;
}
body.theme-global-marina #view-home .hero-main::before,
body.theme-global-cloud #view-home .hero-main::before,
body.theme-global-aurora #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 50%,white 50%) 0 5px,transparent 5px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.14),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 14%,rgba(255,255,255,.10) 86%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 7%,transparent 93%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,rgba(230,240,244,.24),rgba(130,153,164,.16)) !important;
}
@media(max-width:980px){
  body[class*="theme-global-"] #view-home .hero-main::before{
    opacity:.42 !important;
  }
}

/* === lobby hero brightness and theme text v26 === */
body[class*="theme-global-"] #view-home{
  --lobby-ink:color-mix(in srgb,var(--theme-c,#16202a) 86%,#15100a 14%);
  --lobby-copy:color-mix(in srgb,var(--theme-c,#16202a) 68%,#413324 32%);
  --lobby-muted:color-mix(in srgb,var(--theme-c,#16202a) 54%,var(--theme-b,#b88946) 46%);
  --lobby-accent-ink:color-mix(in srgb,var(--theme-b,#b88946) 54%,var(--theme-c,#16202a) 46%);
  --lobby-scene-title:color-mix(in srgb,var(--theme-a,#e8c886) 70%,#fff9ec 30%);
  --lobby-scene-copy:color-mix(in srgb,var(--theme-a,#e8c886) 34%,#fff0da 66%);
}
body.theme-global-vault #view-home{
  --lobby-ink:#2d2114;
  --lobby-copy:#443424;
  --lobby-muted:#725423;
  --lobby-accent-ink:#7a5520;
  --lobby-scene-title:#fff0c8;
  --lobby-scene-copy:#f3dfbd;
}
body.theme-global-marina #view-home{
  --lobby-ink:#10364a;
  --lobby-copy:#214d5d;
  --lobby-muted:#216a7d;
  --lobby-accent-ink:#0d6684;
  --lobby-scene-title:#dff9ff;
  --lobby-scene-copy:#d4eef6;
}
body.theme-global-cloud #view-home{
  --lobby-ink:#2d2a58;
  --lobby-copy:#403c67;
  --lobby-muted:#5b5190;
  --lobby-accent-ink:#5a4fa1;
  --lobby-scene-title:#eeeaff;
  --lobby-scene-copy:#e3ddff;
}
body.theme-global-aurora #view-home{
  --lobby-ink:#15384a;
  --lobby-copy:#244d5d;
  --lobby-muted:#28737a;
  --lobby-accent-ink:#1b7880;
  --lobby-scene-title:#e4fffb;
  --lobby-scene-copy:#d5f7f2;
}
body[class*="theme-global-"] #view-home .screen-title{
  color:var(--lobby-scene-title) !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 2px 0 rgba(0,0,0,.44),0 0 16px rgba(0,0,0,.32) !important;
}
body[class*="theme-global-"] #view-home .screen-desc{
  color:var(--lobby-scene-copy) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.58),0 0 12px rgba(0,0,0,.30) !important;
}
body[class*="theme-global-"] #view-home .hero-main{
  background:
    linear-gradient(180deg,rgba(255,236,208,.14),rgba(255,236,208,.055)),
    radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,rgba(255,255,255,.06) 88%),transparent 34%),
    radial-gradient(ellipse at 16% 100%,color-mix(in srgb,var(--theme-b,#b88946) 13%,transparent 87%),transparent 46%),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,.25),
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -24px 38px rgba(0,0,0,.18) !important;
}
body[class*="theme-global-"] #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 45%,white 55%) 0 5px,transparent 5px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.08),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,rgba(255,255,255,.06) 88%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 5%,transparent 95%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,rgba(255,236,208,.18),rgba(170,132,86,.12) 44%,rgba(48,35,24,.20)) !important;
  opacity:.40 !important;
}
body[class*="theme-global-"] #view-home .hero-main::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.08) 20%,transparent 42%),
    radial-gradient(circle at 88% 14%,rgba(255,255,255,.08),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 34%,rgba(0,0,0,.14)) !important;
  opacity:.30 !important;
}
body[class*="theme-global-"] #view-home .hero-main h2,
body[class*="theme-global-"] #view-home .hero-side .feature h3,
body[class*="theme-global-"] #view-home .version-notice h3{
  color:var(--lobby-ink) !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.66) !important;
}
body[class*="theme-global-"] #view-home .hero-main p,
body[class*="theme-global-"] #view-home .hero-side .feature p,
body[class*="theme-global-"] #view-home .version-notice p{
  color:var(--lobby-copy) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.56) !important;
}
body[class*="theme-global-"] #view-home .hero-main p{
  background:rgba(255,236,208,.18) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature .kicker,
body[class*="theme-global-"] #view-home .version-notice .kicker,
body[class*="theme-global-"] #view-home .hero-main .stat-shell span,
body[class*="theme-global-"] #view-home .hero-main .stat-shell label{
  color:var(--lobby-muted) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.62) !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon,
body[class*="theme-global-"] #view-home .version-notice .version-log-btn{
  color:var(--lobby-accent-ink) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.62) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell strong{
  color:var(--lobby-ink) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.66) !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 23%,rgba(255,255,255,.26) 77%),color-mix(in srgb,var(--theme-b,#b88946) 18%,rgba(255,255,255,.20) 82%)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 8px 18px rgba(0,0,0,.13) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  background:
    radial-gradient(circle at 84% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 10%,rgba(255,255,255,.08) 90%),transparent 34%),
    linear-gradient(180deg,rgba(255,236,208,.26),rgba(170,140,100,.20)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 22px rgba(0,0,0,.15) !important;
}
body.theme-global-marina #view-home .hero-main::before,
body.theme-global-cloud #view-home .hero-main::before,
body.theme-global-aurora #view-home .hero-main::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#e8c886) 42%,white 58%) 0 5px,transparent 5px),
    radial-gradient(ellipse at 70% 72%,rgba(255,255,255,.10),transparent 30%),
    radial-gradient(ellipse at 52% 94%,color-mix(in srgb,var(--theme-a,#e8c886) 10%,rgba(255,255,255,.08) 90%) 0 13%,transparent 36%),
    repeating-linear-gradient(115deg,transparent 0 42px,color-mix(in srgb,var(--theme-a,#e8c886) 5%,transparent 95%) 44px 46px,transparent 48px 100px),
    linear-gradient(180deg,rgba(218,232,238,.18),rgba(91,112,126,.13)) !important;
}
@media(max-width:980px){
  body[class*="theme-global-"] #view-home .hero-main::before{
    opacity:.36 !important;
  }
}

/* === lobby readability guard v27 === */
body[class*="theme-global-"] #view-home{
  --lobby-text-plate:color-mix(in srgb,var(--theme-a,#e8c886) 7%,rgba(255,246,232,.30) 93%);
  --lobby-text-plate-strong:color-mix(in srgb,var(--theme-a,#e8c886) 9%,rgba(255,246,232,.40) 91%);
  --lobby-dark-shadow:color-mix(in srgb,var(--theme-c,#16202a) 72%,rgba(0,0,0,.62) 28%);
}
body[class*="theme-global-"] #view-home .screen-desc{
  width:max-content;
  max-width:min(980px,100%);
  padding:7px 11px;
  border-radius:10px;
  background:color-mix(in srgb,var(--theme-c,#16202a) 32%,rgba(0,0,0,.22) 68%) !important;
  color:var(--lobby-scene-copy) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.72),0 0 10px rgba(0,0,0,.38) !important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--theme-a,#e8c886) 14%,transparent 86%) !important;
}
body[class*="theme-global-"] #view-home .hero-main h2{
  width:max-content;
  max-width:100%;
  padding:4px 8px;
  border-radius:10px;
  background:var(--lobby-text-plate) !important;
  color:var(--lobby-ink) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.72) !important;
}
body[class*="theme-global-"] #view-home .hero-main p,
body[class*="theme-global-"] #view-home .version-notice p{
  color:var(--lobby-copy) !important;
  background:var(--lobby-text-plate-strong) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.70) !important;
  box-shadow:inset 0 0 0 1px rgba(65,48,28,.10) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature h3,
body[class*="theme-global-"] #view-home .version-notice h3{
  color:var(--lobby-ink) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.74) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature p{
  color:var(--lobby-copy) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.66) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature .kicker,
body[class*="theme-global-"] #view-home .version-notice .kicker{
  color:var(--lobby-muted) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.72) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  background:
    radial-gradient(circle at 84% 10%,color-mix(in srgb,var(--theme-a,#e8c886) 11%,rgba(255,255,255,.10) 89%),transparent 34%),
    linear-gradient(180deg,rgba(255,240,216,.34),rgba(178,147,104,.25)) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell span,
body[class*="theme-global-"] #view-home .hero-main .stat-shell label{
  color:var(--lobby-muted) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell strong{
  color:var(--lobby-ink) !important;
}
@media(max-width:980px){
  body[class*="theme-global-"] #view-home .screen-desc,
  body[class*="theme-global-"] #view-home .hero-main h2{
    width:auto;
  }
}

/* === lobby text color only v28 === */
body[class*="theme-global-"] #view-home{
  --lobby-card-title:color-mix(in srgb,var(--theme-c,#16202a) 88%,#070604 12%);
  --lobby-card-copy:color-mix(in srgb,var(--theme-c,#16202a) 64%,#3d3022 36%);
  --lobby-card-meta:color-mix(in srgb,var(--theme-b,#b88946) 56%,var(--theme-c,#16202a) 44%);
  --lobby-on-scene-title:color-mix(in srgb,var(--theme-a,#e8c886) 62%,#fff 38%);
  --lobby-on-scene-copy:color-mix(in srgb,var(--theme-a,#e8c886) 24%,#fff3df 76%);
}
body.theme-global-vault #view-home{
  --lobby-card-title:#2a1d10;
  --lobby-card-copy:#3f2f20;
  --lobby-card-meta:#76541f;
  --lobby-on-scene-title:#fff0c5;
  --lobby-on-scene-copy:#f6e4c4;
}
body.theme-global-marina #view-home{
  --lobby-card-title:#0f3a4f;
  --lobby-card-copy:#214f61;
  --lobby-card-meta:#0d6a87;
  --lobby-on-scene-title:#d8f8ff;
  --lobby-on-scene-copy:#d4eef6;
}
body.theme-global-cloud #view-home{
  --lobby-card-title:#2d2a5a;
  --lobby-card-copy:#423d69;
  --lobby-card-meta:#5b5297;
  --lobby-on-scene-title:#eeeaff;
  --lobby-on-scene-copy:#e3ddff;
}
body.theme-global-aurora #view-home{
  --lobby-card-title:#13394c;
  --lobby-card-copy:#245064;
  --lobby-card-meta:#167880;
  --lobby-on-scene-title:#dcfffb;
  --lobby-on-scene-copy:#d4f7f2;
}
body[class*="theme-global-"] #view-home .screen-desc,
body[class*="theme-global-"] #view-home .hero-main h2,
body[class*="theme-global-"] #view-home .hero-main p,
body[class*="theme-global-"] #view-home .version-notice p{
  background:transparent !important;
  box-shadow:none !important;
}
body[class*="theme-global-"] #view-home .screen-desc{
  width:auto !important;
  max-width:980px !important;
  padding:0 !important;
  border-radius:0 !important;
  color:var(--lobby-on-scene-copy) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70),0 0 12px rgba(0,0,0,.38) !important;
}
body[class*="theme-global-"] #view-home .screen-title{
  color:var(--lobby-on-scene-title) !important;
  text-shadow:0 2px 0 rgba(0,0,0,.52),0 0 16px rgba(0,0,0,.38) !important;
}
body[class*="theme-global-"] #view-home .hero-main h2{
  width:auto !important;
  padding:0 !important;
  border-radius:0 !important;
  color:var(--lobby-card-title) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.74),0 0 1px rgba(0,0,0,.12) !important;
}
body[class*="theme-global-"] #view-home .hero-main p{
  padding:0 !important;
  color:var(--lobby-card-copy) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.68) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature h3,
body[class*="theme-global-"] #view-home .version-notice h3,
body[class*="theme-global-"] #view-home .hero-main .stat-shell strong{
  color:var(--lobby-card-title) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.72) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature p,
body[class*="theme-global-"] #view-home .version-notice p{
  color:var(--lobby-card-copy) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.66) !important;
}
body[class*="theme-global-"] #view-home .hero-side .feature .kicker,
body[class*="theme-global-"] #view-home .version-notice .kicker,
body[class*="theme-global-"] #view-home .hero-main .stat-shell span,
body[class*="theme-global-"] #view-home .hero-main .stat-shell label,
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon,
body[class*="theme-global-"] #view-home .version-notice .version-log-btn{
  color:var(--lobby-card-meta) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.66) !important;
}

/* === lobby soft readable panels v29 === */
body[class*="theme-global-"] #view-home{
  --lobby-readable-title:#2f2a22;
  --lobby-readable-copy:#4c443a;
  --lobby-readable-meta:#6f6455;
  --lobby-readable-accent:color-mix(in srgb,var(--theme-a,#d8bb8b) 36%,#6b5a46 64%);
  --lobby-panel-top:color-mix(in srgb,var(--theme-a,#d8bb8b) 8%,rgba(242,236,224,.86) 92%);
  --lobby-panel-bottom:color-mix(in srgb,var(--theme-b,#b88946) 7%,rgba(222,214,200,.80) 93%);
}
body.theme-global-vault #view-home{
  --lobby-readable-title:#302719;
  --lobby-readable-copy:#4e4131;
  --lobby-readable-meta:#746149;
  --lobby-readable-accent:#7a6138;
}
body.theme-global-marina #view-home{
  --lobby-readable-title:#1d3f4a;
  --lobby-readable-copy:#385660;
  --lobby-readable-meta:#5a6f74;
  --lobby-readable-accent:#3c7887;
}
body.theme-global-cloud #view-home{
  --lobby-readable-title:#343452;
  --lobby-readable-copy:#4e4d66;
  --lobby-readable-meta:#686682;
  --lobby-readable-accent:#6862a0;
}
body.theme-global-aurora #view-home{
  --lobby-readable-title:#21454c;
  --lobby-readable-copy:#3c5c61;
  --lobby-readable-meta:#60777a;
  --lobby-readable-accent:#3c8180;
}
body[class*="theme-global-"] #view-home .hero-main,
body[class*="theme-global-"] #view-home .hero-side .feature.card,
body[class*="theme-global-"] #view-home .version-notice{
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,rgba(255,255,255,.42) 78%) !important;
  background:
    radial-gradient(circle at 86% 8%,color-mix(in srgb,var(--theme-a,#d8bb8b) 10%,rgba(255,255,255,.14) 90%),transparent 36%),
    linear-gradient(180deg,var(--lobby-panel-top),var(--lobby-panel-bottom)) !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -18px 28px rgba(70,54,34,.07) !important;
  backdrop-filter:blur(8px) saturate(.82) !important;
}
body[class*="theme-global-"] #view-home .hero-main::before,
body[class*="theme-global-"] #view-home .hero-side .feature.card::before,
body[class*="theme-global-"] #view-home .version-notice::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 52%,rgba(255,255,255,.44) 48%) 0 4px,transparent 4px),
    linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.08) 42%,rgba(112,88,58,.08)) !important;
  opacity:.70 !important;
}
body[class*="theme-global-"] #view-home .hero-main::after,
body[class*="theme-global-"] #view-home .hero-side .feature.card::after,
body[class*="theme-global-"] #view-home .version-notice::after{
  background:
    linear-gradient(110deg,transparent 0 18%,rgba(255,255,255,.16) 20%,transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 38%,rgba(0,0,0,.04)) !important;
  opacity:.44 !important;
}
body[class*="theme-global-"] #view-home .screen-title{
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 28%,#fff4df 72%) !important;
  text-shadow:0 2px 0 rgba(0,0,0,.50),0 0 12px rgba(0,0,0,.34) !important;
}
body[class*="theme-global-"] #view-home .screen-desc{
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 18%,#f1e6d5 82%) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.62),0 0 10px rgba(0,0,0,.30) !important;
}
body[class*="theme-global-"] #view-home .hero-main h2,
body[class*="theme-global-"] #view-home .hero-side .feature h3,
body[class*="theme-global-"] #view-home .version-notice h3,
body[class*="theme-global-"] #view-home .hero-main .stat-shell strong{
  color:var(--lobby-readable-title) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.62) !important;
}
body[class*="theme-global-"] #view-home .hero-main p,
body[class*="theme-global-"] #view-home .hero-side .feature p,
body[class*="theme-global-"] #view-home .version-notice p{
  color:var(--lobby-readable-copy) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.54) !important;
  background:transparent !important;
  box-shadow:none !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon,
body[class*="theme-global-"] #view-home .hero-side .feature .kicker,
body[class*="theme-global-"] #view-home .version-notice .kicker,
body[class*="theme-global-"] #view-home .hero-main .stat-shell span,
body[class*="theme-global-"] #view-home .hero-main .stat-shell label,
body[class*="theme-global-"] #view-home .version-notice .version-log-btn{
  color:var(--lobby-readable-accent) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.58) !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon,
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  background:
    linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.10)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 18%,rgba(80,64,42,.16) 82%) !important;
}
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 18px rgba(0,0,0,.10) !important;
}

/* === lobby softer readable panels v30 === */
body[class*="theme-global-"] #view-home{
  --lobby-readable-title:#363229;
  --lobby-readable-copy:#555047;
  --lobby-readable-meta:#766e62;
  --lobby-readable-accent:color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,#766c5f 78%);
  --lobby-panel-top:color-mix(in srgb,var(--theme-a,#d8bb8b) 5%,rgba(238,233,224,.88) 95%);
  --lobby-panel-bottom:color-mix(in srgb,var(--theme-b,#b88946) 4%,rgba(221,215,205,.84) 96%);
}
body.theme-global-vault #view-home{
  --lobby-readable-title:#352c20;
  --lobby-readable-copy:#544a3c;
  --lobby-readable-meta:#7b6f5f;
  --lobby-readable-accent:#77664e;
}
body.theme-global-marina #view-home{
  --lobby-readable-title:#28434c;
  --lobby-readable-copy:#465d63;
  --lobby-readable-meta:#68787b;
  --lobby-readable-accent:#587d86;
}
body.theme-global-cloud #view-home{
  --lobby-readable-title:#3b3a55;
  --lobby-readable-copy:#56556c;
  --lobby-readable-meta:#707087;
  --lobby-readable-accent:#6e6b92;
}
body.theme-global-aurora #view-home{
  --lobby-readable-title:#2d484f;
  --lobby-readable-copy:#486066;
  --lobby-readable-meta:#6b7d7f;
  --lobby-readable-accent:#5b8181;
}
body[class*="theme-global-"] #view-home .hero-main,
body[class*="theme-global-"] #view-home .hero-side .feature.card,
body[class*="theme-global-"] #view-home .version-notice{
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 14%,rgba(255,255,255,.46) 86%) !important;
  background:
    radial-gradient(circle at 86% 8%,color-mix(in srgb,var(--theme-a,#d8bb8b) 6%,rgba(255,255,255,.10) 94%),transparent 38%),
    linear-gradient(180deg,var(--lobby-panel-top),var(--lobby-panel-bottom)) !important;
  box-shadow:
    0 16px 34px rgba(0,0,0,.13),
    inset 0 1px 0 rgba(255,255,255,.38),
    inset 0 -16px 24px rgba(70,54,34,.045) !important;
  backdrop-filter:blur(9px) saturate(.72) !important;
}
body[class*="theme-global-"] #view-home .hero-main::before,
body[class*="theme-global-"] #view-home .hero-side .feature.card::before,
body[class*="theme-global-"] #view-home .version-notice::before{
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--theme-a,#d8bb8b) 34%,rgba(255,255,255,.50) 66%) 0 3px,transparent 3px),
    linear-gradient(180deg,rgba(255,255,255,.20),rgba(255,255,255,.06) 44%,rgba(112,88,58,.045)) !important;
  opacity:.52 !important;
}
body[class*="theme-global-"] #view-home .hero-main::after,
body[class*="theme-global-"] #view-home .hero-side .feature.card::after,
body[class*="theme-global-"] #view-home .version-notice::after{
  background:
    linear-gradient(110deg,transparent 0 20%,rgba(255,255,255,.09) 22%,transparent 44%),
    linear-gradient(180deg,rgba(255,255,255,.05),transparent 42%,rgba(0,0,0,.025)) !important;
  opacity:.30 !important;
}
body[class*="theme-global-"] #view-home .screen-title{
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 20%,#fff1dc 80%) !important;
  text-shadow:0 2px 0 rgba(0,0,0,.42),0 0 10px rgba(0,0,0,.26) !important;
}
body[class*="theme-global-"] #view-home .screen-desc{
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 12%,#eadfcd 88%) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.52),0 0 8px rgba(0,0,0,.22) !important;
}
body[class*="theme-global-"] #view-home .hero-main h2,
body[class*="theme-global-"] #view-home .hero-side .feature h3,
body[class*="theme-global-"] #view-home .version-notice h3,
body[class*="theme-global-"] #view-home .hero-main .stat-shell strong{
  color:var(--lobby-readable-title) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.50) !important;
}
body[class*="theme-global-"] #view-home .hero-main p,
body[class*="theme-global-"] #view-home .hero-side .feature p,
body[class*="theme-global-"] #view-home .version-notice p{
  color:var(--lobby-readable-copy) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.42) !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon,
body[class*="theme-global-"] #view-home .hero-side .feature .kicker,
body[class*="theme-global-"] #view-home .version-notice .kicker,
body[class*="theme-global-"] #view-home .hero-main .stat-shell span,
body[class*="theme-global-"] #view-home .hero-main .stat-shell label,
body[class*="theme-global-"] #view-home .version-notice .version-log-btn{
  color:var(--lobby-readable-accent) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.46) !important;
}
body[class*="theme-global-"] #view-home .hero-main .hero-ribbon,
body[class*="theme-global-"] #view-home .hero-main .stat-shell{
  background:
    linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.075)) !important;
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 12%,rgba(80,64,42,.13) 88%) !important;
}

/* === lobby hero subtle blurred scene v31 === */
body[class*="theme-global-"] #view-home .hero-main{
  background:
    linear-gradient(180deg,var(--lobby-panel-top),var(--lobby-panel-bottom)) !important;
}
body[class*="theme-global-"] #view-home .hero-main::before{
  content:"";
  position:absolute;
  inset:-16px;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(238,232,222,.30),rgba(224,216,204,.42)),
    var(--theme-scene-img) var(--theme-scene-pos)/cover no-repeat !important;
  filter:blur(10px) saturate(.62) brightness(1.02);
  opacity:.26 !important;
  transform:scale(1.035);
}
body[class*="theme-global-"] #view-home .hero-main::after{
  z-index:1;
  background:
    radial-gradient(circle at 82% 8%,color-mix(in srgb,var(--theme-a,#d8bb8b) 7%,rgba(255,255,255,.12) 93%),transparent 38%),
    linear-gradient(180deg,rgba(242,236,226,.55),rgba(224,216,204,.42)) !important;
  opacity:.78 !important;
}
body.theme-global-marina #view-home .hero-main::before,
body.theme-global-cloud #view-home .hero-main::before,
body.theme-global-aurora #view-home .hero-main::before{
  opacity:.22 !important;
  filter:blur(11px) saturate(.58) brightness(1.03);
}

/* === lobby light content accents v32 === */
@media(min-width:981px){
  #view-home .hero-main{
    display:grid !important;
    grid-template-rows:auto minmax(24px,1fr) auto auto auto auto minmax(16px,.55fr) auto !important;
    align-content:stretch !important;
    align-items:start !important;
    justify-content:stretch !important;
    row-gap:10px !important;
  }
  #view-home .hero-soft-notes{grid-row:1}
  #view-home .hero-ribbon{grid-row:3}
  #view-home .hero-main h2{grid-row:4}
  #view-home .hero-main p{grid-row:5}
  #view-home .hero-stats{grid-row:6}
  #view-home .hero-flow-mini{grid-row:8}
}
body[class*="theme-global-"] #view-home .hero-soft-notes,
body[class*="theme-global-"] #view-home .hero-flow-mini,
body[class*="theme-global-"] #view-home .feature-soft-line{
  position:relative;
  z-index:2;
}
#view-home .hero-soft-notes,
#view-home .hero-flow-mini,
#view-home .feature-soft-line{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
#view-home .hero-soft-notes span,
#view-home .hero-flow-mini span,
#view-home .feature-soft-line span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.8px;
  white-space:nowrap;
}
#view-home .hero-flow-mini{
  width:100%;
  padding:10px 12px;
  border-radius:15px;
}
#view-home .hero-flow-mini i{
  flex:0 0 34px;
  height:1px;
}
#view-home .feature.card{
  display:flex !important;
  flex-direction:column !important;
}
#view-home .feature-soft-line{
  margin-top:auto;
  padding-top:10px;
}
body[class*="theme-global-"] #view-home .hero-soft-notes span,
body[class*="theme-global-"] #view-home .hero-flow-mini span,
body[class*="theme-global-"] #view-home .feature-soft-line span{
  color:color-mix(in srgb,var(--lobby-readable-accent,#766c5f) 82%,#565047 18%) !important;
  background:color-mix(in srgb,var(--theme-a,#d8bb8b) 7%,rgba(255,255,255,.18) 93%) !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 14%,rgba(80,64,42,.12) 86%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.42) !important;
}
body[class*="theme-global-"] #view-home .hero-flow-mini{
  background:
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055)) !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 10%,rgba(80,64,42,.10) 90%) !important;
}
body[class*="theme-global-"] #view-home .hero-flow-mini i{
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,rgba(90,78,62,.30) 78%),transparent) !important;
}
body[class*="theme-global-"] #view-home .feature-soft-line{
  border-top:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 9%,rgba(90,78,62,.12) 91%) !important;
}
@media(max-width:980px){
  #view-home .hero-soft-notes,
  #view-home .hero-flow-mini,
  #view-home .feature-soft-line{
    gap:6px;
  }
  #view-home .hero-flow-mini{
    padding:8px;
  }
  #view-home .hero-flow-mini i{
    flex:0 0 20px;
  }
}

/* === lobby compact hero layout v33 === */
@media(min-width:981px){
  #view-home.view.active{
    grid-template-rows:auto auto auto !important;
    align-content:start !important;
    gap:16px !important;
  }
  #view-home .hero-layout{
    height:auto !important;
    min-height:0 !important;
    align-items:start !important;
    gap:22px !important;
  }
  #view-home .hero-main{
    display:grid !important;
    grid-template-rows:auto auto auto minmax(116px,1fr) auto !important;
    align-content:stretch !important;
    align-items:start !important;
    height:auto !important;
    min-height:clamp(430px,48vh,505px) !important;
    padding:22px 28px !important;
    row-gap:8px !important;
  }
  #view-home .hero-ribbon{
    grid-row:1 !important;
    align-self:start !important;
  }
  #view-home .hero-main h2{
    grid-row:2 !important;
    margin:6px 0 0 !important;
  }
  #view-home .hero-main p{
    grid-row:3 !important;
    max-width:860px !important;
    margin:0 !important;
    padding:0 !important;
  }
  #view-home .hero-stats{
    grid-row:5 !important;
    align-self:end !important;
    margin-top:0 !important;
  }
  #view-home .hero-side,
  #view-home .feature-grid{
    height:auto !important;
    min-height:0 !important;
  }
  #view-home .feature-grid{
    grid-auto-rows:minmax(198px,auto) !important;
    gap:12px !important;
  }
  #view-home .feature.card{
    min-height:198px !important;
    height:auto !important;
  }
  #view-home .feature.card .card-pad{
    padding:16px 18px !important;
  }
  #view-home .feature h3{
    margin:6px 0 6px !important;
  }
  #view-home .feature p{
    line-height:1.48 !important;
  }
  #view-home .feature-soft-line{
    padding-top:8px !important;
  }
}

/* === frontend scrollbar system v35 === */
html,
body,
body *{
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 34%,#8b8173 66%) rgba(255,246,229,.075);
}
body::-webkit-scrollbar,
body *::-webkit-scrollbar{
  width:10px;
  height:10px;
}
body::-webkit-scrollbar-track,
body *::-webkit-scrollbar-track{
  border-radius:999px;
  background:rgba(255,246,229,.075);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.045);
}
body::-webkit-scrollbar-thumb,
body *::-webkit-scrollbar-thumb{
  min-height:38px;
  border:2px solid rgba(236,229,216,.36);
  border-radius:999px;
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-a,#d8bb8b) 38%,#b9afa2 62%),
      color-mix(in srgb,var(--theme-b,#b88946) 24%,#7f7569 76%)) padding-box;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34);
}
body::-webkit-scrollbar-thumb:hover,
body *::-webkit-scrollbar-thumb:hover{
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-a,#d8bb8b) 48%,#d7cec0 52%),
      color-mix(in srgb,var(--theme-b,#b88946) 32%,#8d8275 68%)) padding-box;
}
body::-webkit-scrollbar-corner,
body *::-webkit-scrollbar-corner{
  background:transparent;
}

/* === version modal fixed scroll area v35 === */
#versionModal .version-modal-card{
  display:grid !important;
  grid-template-rows:auto auto minmax(0,1fr) auto !important;
  width:min(780px,calc(100vw - 28px)) !important;
  max-height:min(760px,calc(100vh - 36px)) !important;
  overflow:hidden !important;
}
#versionModal .player-changelog-list{
  min-height:0 !important;
  max-height:min(52vh,460px) !important;
  margin:16px 0 0 !important;
  padding-right:8px !important;
  overflow:auto !important;
  overscroll-behavior:contain;
}
#versionModal .modal-actions{
  margin-top:14px !important;
  padding-top:12px !important;
  border-top:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 13%,rgba(255,255,255,.10) 87%) !important;
}
@media(max-width:980px){
  #versionModal .version-modal-card{
    width:100% !important;
    max-height:calc(100dvh - 24px) !important;
  }
  #versionModal .player-changelog-list{
    max-height:calc(100dvh - 230px) !important;
  }
}

/* === lobby balanced tall layout v34 === */
@media(min-width:981px){
  #view-home.view.active{
    gap:18px !important;
  }
  #view-home .hero-layout{
    align-items:stretch !important;
    gap:22px !important;
  }
  #view-home .hero-main{
    grid-template-rows:minmax(34px,.42fr) auto auto auto minmax(54px,.58fr) auto minmax(20px,.22fr) !important;
    min-height:clamp(500px,54vh,570px) !important;
    padding:24px 28px !important;
  }
  #view-home .hero-ribbon{
    grid-row:2 !important;
  }
  #view-home .hero-main h2{
    grid-row:3 !important;
    margin:7px 0 0 !important;
  }
  #view-home .hero-main p{
    grid-row:4 !important;
  }
  #view-home .hero-stats{
    grid-row:6 !important;
    align-self:start !important;
  }
  #view-home .hero-side{
    height:100% !important;
    min-height:0 !important;
    align-self:stretch !important;
  }
  #view-home .feature-grid{
    height:100% !important;
    min-height:0 !important;
    grid-template-rows:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(0,1fr) !important;
    gap:12px !important;
  }
  #view-home .feature.card{
    min-height:0 !important;
    height:100% !important;
  }
  #view-home .feature.card .card-pad{
    min-height:0 !important;
    height:100% !important;
  }
  #view-home .version-notice{
    margin-top:12px !important;
  }
}

/* === shop compact card title fit v36 === */
#view-shop #voiceShopGrid .shop-item.compact,
#view-shop #itemShopGrid .shop-item.compact{
  gap:12px !important;
}
#view-shop #voiceShopGrid .shop-item-head,
#view-shop #itemShopGrid .shop-item-head{
  display:grid !important;
  grid-template-columns:50px minmax(0,1fr) !important;
  column-gap:12px !important;
  row-gap:8px !important;
  align-items:center !important;
}
#view-shop #voiceShopGrid .shop-icon,
#view-shop #itemShopGrid .shop-icon{
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  width:50px !important;
  height:50px !important;
  flex-basis:50px !important;
  border-radius:16px !important;
}
#view-shop #voiceShopGrid .shop-head-copy,
#view-shop #itemShopGrid .shop-head-copy{
  grid-column:2 !important;
  grid-row:1 !important;
  min-width:0 !important;
  max-width:100% !important;
  gap:4px !important;
  overflow:hidden !important;
}
#view-shop #voiceShopGrid .shop-state-pill,
#view-shop #itemShopGrid .shop-state-pill{
  grid-column:2 !important;
  grid-row:2 !important;
  justify-self:start !important;
  max-width:100% !important;
  padding:6px 10px !important;
  white-space:nowrap !important;
}
#view-shop #voiceShopGrid .shop-head-copy h4,
#view-shop #itemShopGrid .shop-head-copy h4{
  min-width:0 !important;
  max-width:100% !important;
  font-size:18px !important;
  line-height:1.12 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #voiceShopGrid .shop-subtitle,
#view-shop #itemShopGrid .shop-subtitle,
#view-shop #voiceShopGrid .shop-price,
#view-shop #itemShopGrid .shop-price{
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #itemShopGrid .item-role-pill{
  margin-right:6px !important;
  vertical-align:middle !important;
}

/* === profile region and equipped title fit v37 === */
#view-profile .identity-card .region-row{
  display:grid !important;
  grid-template-columns:minmax(0,220px) max-content !important;
  align-items:center !important;
  gap:10px !important;
  max-width:100% !important;
}
#view-profile .profile-region-select{
  width:220px !important;
  max-width:100% !important;
  flex:0 0 220px !important;
}
#view-profile .region-select-trigger{
  min-width:0 !important;
  min-height:42px !important;
  padding:0 11px 0 13px !important;
  border-radius:13px !important;
  border-color:color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,rgba(255,255,255,.12) 78%) !important;
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-c,#241a12) 34%,rgba(255,255,255,.07) 66%),
      rgba(10,9,9,.82)
    ) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 8px 18px rgba(0,0,0,.16) !important;
}
#view-profile .region-select-trigger span:first-child{
  display:block !important;
  max-width:100% !important;
}
#view-profile .region-select-trigger .ico{
  width:22px !important;
  height:22px !important;
  flex:0 0 22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:8px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 22%,rgba(255,255,255,.10) 78%) !important;
  background:rgba(255,255,255,.055) !important;
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 72%,#fff 28%) !important;
  font-size:12px !important;
  line-height:1 !important;
}
#view-profile .region-select-menu{
  width:100% !important;
  min-width:220px !important;
}
#view-profile .title-current-strip{
  grid-template-columns:auto minmax(0,320px) !important;
  justify-content:start !important;
}
#view-profile .title-current-strip .title-plaque-profile{
  width:320px !important;
  max-width:100% !important;
  justify-self:start !important;
}
#view-profile .title-current-strip .title-plaque-text,
#view-profile .title-current-strip .title-plaque-text b,
#view-profile .title-current-strip .title-plaque-text em{
  min-width:0 !important;
  max-width:100% !important;
}
#view-profile .title-card.equipped .title-card-top{
  min-width:0 !important;
}
#view-profile .title-card.equipped .title-card-top b{
  min-width:0 !important;
  max-width:170px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
@media(max-width:560px){
  #view-profile .identity-card .region-row{
    grid-template-columns:1fr !important;
  }
  #view-profile .profile-region-select,
  #view-profile .region-select-menu{
    width:100% !important;
    min-width:0 !important;
  }
  #view-profile .title-current-strip{
    grid-template-columns:1fr !important;
  }
  #view-profile .title-current-strip .title-plaque-profile{
    width:100% !important;
  }
}

/* === PVP matchmaking layout v40: centered actions and smoother queue bar === */
#view-setup .pvp-flow-panel > .pvp-panel-inner .pvp-main-action{
  justify-self:center !important;
  width:min(340px,100%) !important;
  min-width:260px !important;
  max-width:340px !important;
  height:48px !important;
  min-height:48px !important;
  padding:0 24px !important;
  margin-top:8px !important;
  border-radius:14px !important;
  font-size:15px !important;
  letter-spacing:0 !important;
}
#view-setup .pvp-flow-panel > .pvp-panel-inner .pvp-main-action .ico{
  min-width:28px !important;
  font-size:12px !important;
}
#view-setup .pvp-matching-panel{
  min-height:100% !important;
  align-content:center !important;
  gap:18px !important;
  padding:22px 16px !important;
}
#view-setup .pvp-matching-panel .pvp-status-head{
  width:min(960px,100%) !important;
  justify-self:center !important;
}
#view-setup .pvp-matching-panel .pvp-status-head h3{
  font-size:30px !important;
  line-height:1.1 !important;
}
#view-setup .pvp-matching-panel .pvp-status-head > strong{
  color:#9ee4ff !important;
  font-size:18px !important;
}
#view-setup .pvp-matching-panel .pvp-pulse-dot{
  width:20px !important;
  height:20px !important;
  box-shadow:0 0 0 9px rgba(120,216,255,.12),0 0 28px rgba(120,216,255,.46) !important;
}
#view-setup .pvp-matching-panel .pvp-progress{
  width:min(920px,100%) !important;
  height:12px !important;
  justify-self:center !important;
  overflow:hidden !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,rgba(0,0,0,.40),rgba(255,255,255,.08),rgba(0,0,0,.38)) !important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.55),0 8px 18px rgba(0,0,0,.12) !important;
}
#view-setup .pvp-matching-panel .pvp-progress i{
  width:34% !important;
  height:100% !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,transparent 0%,#72d9ff 18%,#c7f0df 58%,#ffe1a2 100%) !important;
  animation:pvpProgressFlow 1.65s linear infinite !important;
  will-change:transform !important;
}
@keyframes pvpProgressFlow{
  from{transform:translate3d(-125%,0,0)}
  to{transform:translate3d(315%,0,0)}
}
#view-setup .pvp-matching-panel .pvp-timing-strip{
  width:min(560px,100%) !important;
  justify-self:center !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
#view-setup .pvp-matching-panel .pvp-timing-strip span{
  min-height:58px !important;
  grid-template-columns:1fr !important;
  gap:5px !important;
  justify-items:center !important;
  align-content:center !important;
  padding:10px 14px !important;
  border-radius:15px !important;
  background:
    radial-gradient(circle at 78% 0,rgba(255,226,180,.12),transparent 40%),
    linear-gradient(180deg,rgba(255,255,255,.065),rgba(0,0,0,.20)) !important;
}
#view-setup .pvp-matching-panel .pvp-timing-strip label{
  font-size:12px !important;
  letter-spacing:.5px !important;
}
#view-setup .pvp-matching-panel .pvp-timing-strip strong{
  justify-self:center !important;
  color:#fff2d1 !important;
  font-size:18px !important;
  line-height:1.05 !important;
}
#view-setup .pvp-matching-panel .pvp-match-stats{
  width:min(980px,100%) !important;
  justify-self:center !important;
  gap:10px !important;
}
#view-setup .pvp-matching-panel .pvp-match-stats .room-line{
  min-height:54px !important;
  padding:10px 14px !important;
  border-radius:15px !important;
}
#view-setup .pvp-matching-panel .pvp-match-stats .room-line label{
  font-size:12px !important;
}
#view-setup .pvp-matching-panel .pvp-match-stats .room-line strong{
  font-size:16px !important;
}
#view-setup .pvp-matching-panel .pvp-flow-actions{
  justify-content:center !important;
  margin-top:2px !important;
}
#view-setup .pvp-matching-panel .pvp-flow-actions .pvp-secondary-action{
  width:min(220px,100%) !important;
  min-width:180px !important;
  height:44px !important;
  min-height:44px !important;
  padding:0 22px !important;
  border-radius:14px !important;
  font-size:14px !important;
}
@media(max-width:760px){
  #view-setup .pvp-flow-panel > .pvp-panel-inner .pvp-main-action{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  #view-setup .pvp-matching-panel{
    padding:18px 12px !important;
    align-content:start !important;
  }
  #view-setup .pvp-matching-panel .pvp-status-head{
    grid-template-columns:auto minmax(0,1fr) auto !important;
  }
  #view-setup .pvp-matching-panel .pvp-status-head h3{
    font-size:24px !important;
  }
  #view-setup .pvp-matching-panel .pvp-timing-strip,
  #view-setup .pvp-matching-panel .pvp-match-stats{
    grid-template-columns:1fr !important;
  }
  #view-setup .pvp-matching-panel .pvp-flow-actions .pvp-secondary-action{
    width:100% !important;
    min-width:0 !important;
  }
}

/* === shop voice and item label layout v38 === */
#view-shop #voiceShopGrid .shop-compact-head,
#view-shop #itemShopGrid .shop-compact-head{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:9px !important;
  align-items:start !important;
}
#view-shop #voiceShopGrid .shop-title-line,
#view-shop #itemShopGrid .shop-title-line{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  min-width:0 !important;
}
#view-shop #voiceShopGrid .shop-title-line .shop-icon,
#view-shop #itemShopGrid .shop-title-line .shop-icon{
  grid-column:auto !important;
  grid-row:auto !important;
  width:44px !important;
  height:44px !important;
  flex-basis:44px !important;
  border-radius:14px !important;
  font-size:20px !important;
}
#view-shop #voiceShopGrid .shop-title-line h4,
#view-shop #itemShopGrid .shop-title-line h4{
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  font-size:18px !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #voiceShopGrid .shop-tag-line,
#view-shop #itemShopGrid .shop-tag-line{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  flex-wrap:wrap !important;
  min-width:0 !important;
  padding-left:54px !important;
  margin-top:-2px !important;
}
#view-shop #voiceShopGrid .shop-tag-line .shop-subtitle,
#view-shop #voiceShopGrid .shop-tag-line .shop-price,
#view-shop #itemShopGrid .shop-tag-line .shop-price{
  display:inline-flex !important;
  align-items:center !important;
  min-height:24px !important;
  max-width:100% !important;
  padding:4px 9px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,226,180,.10) !important;
  background:rgba(255,255,255,.045) !important;
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 64%,#f7eee1 36%) !important;
  font-size:11px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.3px !important;
  text-transform:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #voiceShopGrid .shop-tag-line .shop-state-pill,
#view-shop #itemShopGrid .shop-tag-line .shop-state-pill{
  grid-column:auto !important;
  grid-row:auto !important;
  justify-self:auto !important;
  flex:0 0 auto !important;
  min-height:24px !important;
  max-width:100% !important;
  margin-left:auto !important;
  padding:4px 9px !important;
  font-size:11px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
#view-shop #itemShopGrid .shop-item-guide{
  margin-top:2px !important;
}
@media(max-width:560px){
  #view-shop #voiceShopGrid .shop-tag-line,
  #view-shop #itemShopGrid .shop-tag-line{
    padding-left:0 !important;
  }
  #view-shop #voiceShopGrid .shop-tag-line .shop-state-pill,
  #view-shop #itemShopGrid .shop-tag-line .shop-state-pill{
    margin-left:0 !important;
  }
}

/* === shop voice and item card reset v40 === */
#view-shop #voiceShopGrid .shop-service-card,
#view-shop #itemShopGrid .shop-service-card{
  display:grid !important;
  grid-template-rows:auto auto minmax(44px,1fr) auto !important;
  gap:10px !important;
  min-height:206px !important;
  padding:15px !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-compact-head,
#view-shop #itemShopGrid .shop-service-card .shop-compact-head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:12px !important;
  min-width:0 !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-title-line,
#view-shop #itemShopGrid .shop-service-card .shop-title-line{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  min-width:0 !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-title-line .shop-icon,
#view-shop #itemShopGrid .shop-service-card .shop-title-line .shop-icon{
  grid-column:auto !important;
  grid-row:auto !important;
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
  border-radius:14px !important;
  font-size:20px !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-title-copy,
#view-shop #itemShopGrid .shop-service-card .shop-title-copy{
  display:grid !important;
  gap:3px !important;
  min-width:0 !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-title-copy h4,
#view-shop #itemShopGrid .shop-service-card .shop-title-copy h4{
  margin:0 !important;
  min-width:0 !important;
  max-width:100% !important;
  color:var(--text) !important;
  font-size:18px !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-title-copy span,
#view-shop #itemShopGrid .shop-service-card .shop-title-copy span{
  min-width:0 !important;
  max-width:100% !important;
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 55%,var(--muted) 45%) !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-state-pill,
#view-shop #itemShopGrid .shop-service-card .shop-state-pill{
  grid-column:auto !important;
  grid-row:auto !important;
  justify-self:end !important;
  align-self:center !important;
  margin:0 !important;
  min-height:26px !important;
  max-width:120px !important;
  padding:5px 10px !important;
  font-size:11px !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-chip-row,
#view-shop #itemShopGrid .shop-service-card .shop-chip-row{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-type-pill,
#view-shop #itemShopGrid .shop-service-card .item-role-pill,
#view-shop #voiceShopGrid .shop-service-card .shop-price,
#view-shop #itemShopGrid .shop-service-card .shop-price{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:26px !important;
  max-width:100% !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  font-size:11px !important;
  font-weight:1000 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-type-pill{
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 25%,rgba(255,255,255,.10) 75%) !important;
  background:color-mix(in srgb,var(--theme-a,#d8bb8b) 15%,rgba(255,255,255,.045) 85%) !important;
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 76%,#fff 24%) !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-price,
#view-shop #itemShopGrid .shop-service-card .shop-price{
  border:1px solid rgba(255,226,180,.10) !important;
  background:rgba(255,255,255,.045) !important;
  color:color-mix(in srgb,var(--theme-a,#d8bb8b) 46%,#fff0dc 54%) !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-card-copy,
#view-shop #itemShopGrid .shop-service-card .shop-card-copy{
  min-width:0 !important;
  margin:0 !important;
  padding:10px 11px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,226,180,.08) !important;
  background:rgba(255,255,255,.032) !important;
  color:var(--muted) !important;
  font-size:12px !important;
  line-height:1.45 !important;
  letter-spacing:0 !important;
  overflow:hidden !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-item-actions,
#view-shop #itemShopGrid .shop-service-card .shop-item-actions{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
  margin:0 !important;
  align-self:end !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-item-actions{
  grid-template-columns:1fr !important;
}
#view-shop #voiceShopGrid .shop-service-card .shop-item-actions .btn,
#view-shop #itemShopGrid .shop-service-card .shop-item-actions .btn{
  width:100% !important;
  min-width:0 !important;
  min-height:38px !important;
  padding:8px 10px !important;
}
@media(max-width:680px){
  #view-shop #voiceShopGrid .shop-service-card,
  #view-shop #itemShopGrid .shop-service-card{
    min-height:0 !important;
  }
  #view-shop #voiceShopGrid .shop-service-card .shop-compact-head,
  #view-shop #itemShopGrid .shop-service-card .shop-compact-head{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
  #view-shop #voiceShopGrid .shop-service-card .shop-state-pill,
  #view-shop #itemShopGrid .shop-service-card .shop-state-pill{
    justify-self:start !important;
  }
}

/* === compact voice price v41 === */
#view-shop #voiceShopGrid .shop-voice-card .shop-chip-row{
  display:grid !important;
  grid-template-columns:max-content minmax(0,1fr) !important;
  align-items:center !important;
  gap:7px !important;
}
#view-shop #voiceShopGrid .shop-voice-card .shop-price{
  min-width:0 !important;
  width:100% !important;
  max-width:100% !important;
  justify-content:flex-start !important;
}
#view-shop #voiceShopGrid .shop-voice-card .shop-item-actions{
  grid-template-columns:minmax(70px,.78fr) minmax(0,1.22fr) !important;
}
#view-shop #voiceShopGrid .shop-voice-card .shop-item-actions .btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:12px !important;
}
#view-shop #voiceShopGrid .shop-voice-card .shop-item-actions .btn .ico{
  flex:0 0 auto !important;
}

/* === play stage blurred background v43 === */
#view-play .case-stage{
  isolation:isolate !important;
  overflow:hidden !important;
  background:
    linear-gradient(180deg,rgba(8,8,10,.34),rgba(5,5,6,.72)),
    color-mix(in srgb,var(--theme-c,#17120d) 34%,#050505 66%) !important;
}
#view-play .case-stage::before{
  content:"" !important;
  position:absolute !important;
  inset:-24px !important;
  z-index:0 !important;
  pointer-events:none !important;
  border-radius:inherit !important;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.30)),
    var(--theme-scene-img,none),
    var(--theme-scene,linear-gradient(180deg,#1b1612,#060505)) !important;
  background-position:center,var(--theme-scene-pos,center),center !important;
  background-size:cover,cover,cover !important;
  background-repeat:no-repeat !important;
  filter:blur(5px) saturate(.78) brightness(.98) !important;
  transform:scale(1.025) !important;
  opacity:.90 !important;
  mix-blend-mode:normal !important;
  animation:none !important;
}
#view-play .case-stage::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  border-radius:inherit !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 18%,rgba(255,255,255,.08) 82%) !important;
  background:
    radial-gradient(circle at 50% 52%,color-mix(in srgb,var(--theme-a,#d8bb8b) 10%,transparent 90%),transparent 46%),
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.10)) !important;
  mix-blend-mode:normal !important;
  animation:none !important;
}
#view-play .case-stage .case-grid{
  position:relative !important;
  z-index:2 !important;
}

/* === system proportional resize guard v44 === */
:root{
  --fluid-page-pad:clamp(12px,1.35vw,28px);
  --fluid-panel-gap:clamp(10px,1.05vw,22px);
  --fluid-card-pad:clamp(14px,1.15vw,24px);
  --fluid-side-col:clamp(176px,15.2vw,292px);
  --fluid-case-gap-x:clamp(8px,.85vw,19px);
  --fluid-case-gap-y:clamp(8px,.75vw,18px);
  --fluid-stage-min:clamp(330px,43vh,540px);
}
html,
body,
#app,
.viewport,
.view,
.card,
.card-pad,
.stage-shell,
.table-layout,
.hero-layout,
.setup-grid,
.profile-grid,
.leaderboard-grid,
.records-grid,
.shop-shell{
  min-width:0 !important;
}
#app{
  grid-template-rows:minmax(64px,auto) minmax(0,1fr) auto !important;
}
.topbar{
  grid-template-columns:minmax(185px,max-content) minmax(0,1fr) minmax(260px,max-content) !important;
  gap:var(--fluid-panel-gap) !important;
  height:auto !important;
  min-width:0 !important;
  padding:clamp(10px,.85vw,14px) var(--fluid-page-pad) !important;
}
.logo-wrap,
.logo-wrap > div:last-child,
.main-nav,
.top-meta{
  min-width:0 !important;
}
.main-nav{
  gap:clamp(6px,.45vw,10px) !important;
}
.top-meta{
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
}
.nav-btn{
  min-width:clamp(82px,5.4vw,104px) !important;
  padding-inline:clamp(10px,.8vw,16px) !important;
  white-space:nowrap !important;
}
.meta-pill{
  min-width:0 !important;
  max-width:100% !important;
  padding-inline:clamp(10px,.8vw,16px) !important;
  white-space:nowrap !important;
}
.view{
  height:100% !important;
  overflow:auto !important;
  padding:var(--fluid-page-pad) !important;
}
.screen-head,
.action-row{
  min-width:0 !important;
}
.hero-layout{
  grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr) !important;
  gap:var(--fluid-panel-gap) !important;
}
.hero-stats,
.feature-grid,
.record-stats,
.shop-summary-grid,
.profile-stat-grid{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;
}
.setup-grid{
  grid-template-columns:minmax(280px,24%) minmax(0,1fr) !important;
  gap:var(--fluid-panel-gap) !important;
}
.profile-grid,
#view-profile .profile-grid{
  grid-template-columns:minmax(300px,28%) minmax(0,1fr) !important;
  gap:var(--fluid-panel-gap) !important;
}
.leaderboard-grid{
  grid-template-columns:minmax(260px,24%) minmax(0,1fr) !important;
  gap:var(--fluid-panel-gap) !important;
}
.records-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:var(--fluid-panel-gap) !important;
}
.achievement-grid{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) !important;
  gap:var(--fluid-panel-gap) !important;
}
.rooms-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:var(--fluid-panel-gap) !important;
}
.room-card .card-pad{
  grid-template-columns:minmax(0,1fr) minmax(140px,22%) !important;
  column-gap:var(--fluid-panel-gap) !important;
}
.card-pad,
.room-card .card-pad,
.mode-card .card-pad,
.shop-block .card-pad{
  padding:var(--fluid-card-pad) !important;
}
#view-shop .shop-shell{
  grid-template-columns:minmax(280px,24%) minmax(0,1fr) !important;
  gap:var(--fluid-panel-gap) !important;
}
#view-shop .shop-category-tabs{
  grid-template-columns:repeat(auto-fit,minmax(128px,1fr)) !important;
}
#view-shop .shop-block[data-shop-section].active .card-pad{
  max-height:min(680px,calc(100dvh - 245px)) !important;
}
#view-shop .shop-block[data-shop-section].active .theme-grid,
#view-shop #voiceShopGrid,
#view-shop #itemShopGrid,
#view-shop #bundleShopGrid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)) !important;
}
.modal-card,
.auth-modal-card,
.message-modal-card,
.version-modal-card,
.feedback-modal-card,
.reward-modal-card,
.item-modal-card,
.poster-modal-card{
  max-width:calc(100vw - (var(--fluid-page-pad) + var(--fluid-page-pad))) !important;
  max-height:calc(100dvh - (var(--fluid-page-pad) + var(--fluid-page-pad))) !important;
}
.modal-grid{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;
}

@media(min-width:981px){
  #view-home.view.active{
    overflow:auto !important;
    padding:var(--fluid-page-pad) !important;
  }
  #view-home .hero-layout{
    grid-template-columns:minmax(0,1.16fr) minmax(330px,.84fr) !important;
    gap:var(--fluid-panel-gap) !important;
  }
  #view-home .hero-main{
    min-height:clamp(440px,52vh,570px) !important;
  }
  #view-home .feature-grid{
    gap:clamp(10px,.7vw,14px) !important;
  }
  #view-play.game-view{
    overflow:auto !important;
    padding:clamp(8px,.8vw,16px) !important;
  }
  #view-play .table-layout{
    grid-template-columns:minmax(168px,var(--fluid-side-col)) minmax(0,1fr) minmax(168px,var(--fluid-side-col)) !important;
    gap:var(--fluid-panel-gap) !important;
    height:100% !important;
    min-height:0 !important;
    align-items:stretch !important;
  }
  #view-play .money-plaque{
    min-width:0 !important;
    padding:clamp(10px,.9vw,18px) !important;
  }
  #view-play .money-list{
    gap:clamp(5px,.5vw,9px) !important;
  }
  #view-play .money-pill,
  #view-play .money-pill.high{
    height:clamp(28px,3.2vh,40px) !important;
    padding-inline:clamp(8px,.75vw,14px) !important;
  }
  #view-play .stage-shell{
    grid-template-rows:auto auto auto minmax(var(--fluid-stage-min),1fr) auto auto auto !important;
    gap:clamp(6px,.55vw,10px) !important;
    height:100% !important;
    min-height:0 !important;
    padding:clamp(6px,.7vw,10px) !important;
  }
  #view-play .stage-head{
    grid-template-columns:minmax(140px,1fr) minmax(0,auto) !important;
    width:100% !important;
    min-width:0 !important;
  }
  #view-play .stage-head-right,
  #view-play .stage-switches{
    min-width:0 !important;
    max-width:100% !important;
  }
  #view-play .stage-status{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:clamp(5px,.5vw,9px) !important;
  }
  #view-play .status-chip{
    min-width:0 !important;
    padding:clamp(6px,.55vw,9px) !important;
  }
  #view-play .case-stage{
    min-height:var(--fluid-stage-min) !important;
    height:100% !important;
    padding:clamp(10px,.95vw,18px) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  #view-play .case-grid{
    width:min(100%,980px) !important;
    max-width:100% !important;
    grid-template-columns:repeat(7,minmax(0,1fr)) !important;
    gap:var(--fluid-case-gap-y) var(--fluid-case-gap-x) !important;
    align-content:center !important;
    justify-content:center !important;
    padding:clamp(6px,1vh,18px) 0 !important;
  }
  #view-play .case-btn{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:56px !important;
    max-height:88px !important;
    aspect-ratio:1.25 / .82 !important;
  }
  #view-play .announcer,
  #view-play .control-deck,
  #view-play .item-deck{
    min-width:0 !important;
    max-width:100% !important;
  }
  #view-play .control-deck{
    justify-content:center !important;
    align-items:center !important;
  }
  #view-play .control-deck .banker-offer-panel{
    min-width:0 !important;
    max-width:100% !important;
    justify-content:center !important;
  }
  #view-play .control-deck .input,
  #view-play .control-deck .banker-offer-input{
    min-width:0 !important;
    max-width:100% !important;
  }
}

@media(min-width:981px) and (max-width:1680px){
  .topbar{
    grid-template-columns:minmax(185px,max-content) minmax(0,1fr) !important;
  }
  .main-nav{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    justify-content:flex-start !important;
    flex-wrap:nowrap !important;
    max-width:100% !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding-bottom:2px !important;
  }
  .top-meta{
    justify-content:flex-end !important;
  }
}

@media(min-width:981px) and (max-width:1320px){
  .hero-layout,
  .setup-grid,
  .profile-grid,
  #view-profile .profile-grid,
  .leaderboard-grid,
  .records-grid,
  #view-shop .shop-shell{
    grid-template-columns:1fr !important;
  }
  .room-card .card-pad{
    grid-template-columns:1fr !important;
  }
  #view-home .hero-layout{
    grid-template-columns:1fr !important;
  }
  #view-shop .shop-preview-panel{
    position:relative !important;
    top:auto !important;
  }
}

@media(min-width:981px) and (max-width:1180px){
  #view-play .table-layout{
    grid-template-columns:1fr !important;
    height:auto !important;
  }
  #view-play .stage-shell{
    order:1 !important;
  }
  #view-play .table-layout .money-plaque{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:clamp(8px,1vw,12px) !important;
  }
  #view-play .table-layout .money-plaque:first-child{
    order:2 !important;
  }
  #view-play .table-layout .money-plaque:last-child{
    order:3 !important;
  }
  #view-play .case-grid{
    width:min(100%,900px) !important;
  }
}

@media(min-width:981px) and (max-height:820px){
  :root{
    --fluid-stage-min:clamp(280px,38vh,430px);
  }
  #view-play .money-pill,
  #view-play .money-pill.high{
    height:clamp(26px,3vh,34px) !important;
  }
  #view-play .stage-head{
    min-height:48px !important;
    height:auto !important;
  }
  #view-play .announcer{
    min-height:44px !important;
    max-height:72px !important;
  }
}

@media(max-width:980px){
  #view-profile .profile-grid,
  #view-shop .shop-shell{
    grid-template-columns:1fr !important;
  }
  #view-shop .shop-category-tabs{
    grid-template-columns:1fr !important;
  }
  #view-shop .shop-block[data-shop-section].active .card-pad{
    max-height:none !important;
    min-height:0 !important;
  }
  .modal-card,
  .auth-modal-card,
  .message-modal-card,
  .version-modal-card,
  .feedback-modal-card,
  .reward-modal-card,
  .item-modal-card,
  .poster-modal-card{
    max-width:100% !important;
    max-height:calc(100dvh - 24px) !important;
  }
}

/* === player version 3.0.0 lobby line removal final eof === */
body[class*="theme-global-"] #view-home .hero-side .feature.card::before,
body[class*="theme-global-"] #view-home .version-notice::before,
#view-home .hero-side .feature.card::before,
#view-home .version-notice::before{
  content:none !important;
  display:none !important;
  background:none !important;
  border:0 !important;
  opacity:0 !important;
}

/* === lobby hero intro text size adjustment === */
#view-home .hero-main > p{
  font-size:clamp(16px,.92vw,18px) !important;
  line-height:1.76 !important;
}

/* === setup page rollback v3.0.3: restore compact room list === */
#view-setup{
  --setup-rooms-card-h:174px;
  --setup-rooms-gap:11px;
  --setup-mode-gap:24px;
  --setup-total-h:calc(var(--setup-rooms-card-h) * 4 + var(--setup-rooms-gap) * 3);
  --setup-mode-card-h:calc((var(--setup-total-h) - var(--setup-mode-gap)) / 2);
}
#view-setup .setup-grid{
  grid-template-columns:minmax(420px,1.08fr) minmax(520px,.92fr) !important;
  gap:26px !important;
  align-items:start !important;
}
#view-setup .mode-stack{
  grid-template-rows:repeat(2,var(--setup-mode-card-h)) !important;
  gap:var(--setup-mode-gap) !important;
  align-items:stretch !important;
}
#view-setup .mode-card{
  height:var(--setup-mode-card-h) !important;
  min-height:var(--setup-mode-card-h) !important;
  max-height:var(--setup-mode-card-h) !important;
}
#view-setup .mode-card .card-pad{
  height:100% !important;
  min-height:0 !important;
  padding:28px 30px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}
#view-setup .mode-card h3{
  font-size:30px !important;
  margin:12px 0 12px !important;
}
#view-setup .mode-card p{
  flex:1 1 auto !important;
  font-size:15px !important;
  line-height:1.78 !important;
  margin:0 0 10px !important;
}
#view-setup .mode-foot{
  margin-top:22px !important;
}
#view-setup .setup-side{
  display:block !important;
  height:auto !important;
  align-self:start !important;
  margin-top:0 !important;
}
#view-setup .rooms-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:none !important;
  grid-auto-rows:auto !important;
  gap:var(--setup-rooms-gap) !important;
  transform:none !important;
  height:auto !important;
  align-content:start !important;
  align-items:start !important;
}
#view-setup .room-card{
  min-height:0 !important;
  height:var(--setup-rooms-card-h) !important;
  max-height:none !important;
}
#view-setup .room-card .card-pad{
  height:100% !important;
  min-height:0 !important;
  padding:14px 16px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 180px !important;
  grid-template-rows:auto auto 1fr !important;
  column-gap:18px !important;
  row-gap:4px !important;
}
#view-setup .room-card .room-badge{
  grid-column:1 !important;
  grid-row:1 !important;
  width:max-content !important;
}
#view-setup .room-card h3{
  grid-column:1 !important;
  grid-row:2 !important;
  font-size:21px !important;
  margin:2px 0 0 !important;
}
#view-setup .room-card p{
  grid-column:1 !important;
  grid-row:3 !important;
  font-size:12px !important;
  line-height:1.38 !important;
  min-height:0 !important;
  margin:0 !important;
  flex:none !important;
}
#view-setup .room-card .room-meta{
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  gap:5px !important;
  margin-top:0 !important;
  align-self:start !important;
}
#view-setup .room-card .room-line{
  padding:5px 9px !important;
}
#view-setup .room-card .room-start-btn{
  grid-column:2 !important;
  grid-row:3 !important;
  align-self:start !important;
  min-height:36px !important;
  margin-top:0 !important;
}
@media(max-width:1320px){
  #view-setup .setup-grid{
    grid-template-columns:1fr !important;
  }
  #view-setup .mode-stack{
    grid-template-rows:none !important;
  }
  #view-setup .mode-card{
    height:auto !important;
    min-height:280px !important;
    max-height:none !important;
  }
  #view-setup .rooms-grid{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:760px){
  #view-setup .mode-card,
  #view-setup .room-card{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }
  #view-setup .mode-card .card-pad{
    padding:22px !important;
  }
  #view-setup .room-card .card-pad{
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
    padding:16px !important;
  }
  #view-setup .room-card .room-badge,
  #view-setup .room-card h3,
  #view-setup .room-card p,
  #view-setup .room-card .room-meta,
  #view-setup .room-card .room-start-btn{
    grid-column:1 !important;
    grid-row:auto !important;
  }
  .reward-modal-grid,
  .reward-claim-box{
    grid-template-columns:1fr !important;
  }
  .reward-claim-box .btn{
    width:100%;
  }
}

/* === reward modal layout v3.0.4: separated panels and centered content === */
#rewardModal{
  align-items:center !important;
  justify-content:center !important;
  padding:clamp(16px,3vw,34px) !important;
}
#rewardModal .reward-modal-card{
  width:min(1240px,calc(100vw - 32px)) !important;
  max-height:min(940px,calc(100dvh - 24px)) !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
  gap:20px !important;
  padding:30px !important;
  overflow:hidden !important;
}
#rewardModal .modal-title{
  text-align:center !important;
  line-height:1.15 !important;
}
#rewardModal .reward-modal-grid{
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:minmax(520px,1fr) minmax(360px,420px) !important;
  gap:22px !important;
  align-items:stretch !important;
}
#rewardModal .reward-support-panel,
#rewardModal .reward-ranking-panel{
  min-width:0 !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  border-radius:24px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 20%,transparent 80%) !important;
  background:
    radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--theme-a,#e8c886) 12%,transparent 88%),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(0,0,0,.16)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
#rewardModal .reward-support-panel{
  align-items:center !important;
  padding:24px !important;
  text-align:center !important;
}
#rewardModal .reward-support-panel .modal-copy{
  width:100% !important;
  max-width:560px !important;
  margin:0 auto 14px !important;
}
#rewardModal .reward-image-wrap{
  width:min(430px,100%) !important;
  aspect-ratio:1 / 1 !important;
  margin:0 auto 16px !important;
  flex:0 0 auto !important;
  display:grid !important;
  place-items:center !important;
  padding:12px !important;
  background:#fff !important;
}
#rewardModal .reward-image-wrap img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:contain !important;
  border-radius:14px !important;
  background:#fff !important;
}
#rewardModal .reward-claim-box{
  width:min(560px,100%) !important;
  max-width:none !important;
  margin:0 auto !important;
  grid-template-columns:minmax(0,1fr) minmax(150px,auto) !important;
  align-items:end !important;
}
#rewardModal .reward-claim-box label{
  text-align:left !important;
  color:color-mix(in srgb,var(--theme-a,#e8c886) 30%,#efe4d2 70%) !important;
}
#rewardModal #rewardAmountInput{
  width:100% !important;
  height:46px !important;
  min-height:46px !important;
  border-radius:14px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.10) 76%) !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028)),
    rgba(0,0,0,.30) !important;
  color:#fff7e8 !important;
  padding:0 14px !important;
  font-size:15px !important;
  font-weight:900 !important;
  outline:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
#rewardModal #rewardAmountInput::placeholder{
  color:color-mix(in srgb,var(--theme-a,#e8c886) 20%,rgba(245,230,210,.56) 80%) !important;
}
#rewardModal #rewardAmountInput:focus{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 58%,white 42%) !important;
  box-shadow:
    0 0 0 3px color-mix(in srgb,var(--theme-a,#e8c886) 16%,transparent 84%),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}
#rewardModal #submitRewardClaimBtn{
  height:46px !important;
  min-height:46px !important;
  white-space:nowrap !important;
  padding-inline:16px !important;
}
#rewardModal .reward-thanks{
  width:min(560px,100%) !important;
  max-width:none !important;
}
#rewardModal .reward-ranking-panel{
  padding:22px !important;
  text-align:left !important;
}
#rewardModal .reward-ranking-panel .kicker,
#rewardModal .reward-ranking-panel h3,
#rewardModal .reward-ranking-panel p{
  text-align:left !important;
}
#rewardModal .reward-ranking-list{
  min-height:0 !important;
  display:flex !important;
  flex:0 0 auto !important;
  flex-direction:column !important;
  align-items:stretch !important;
  overflow:visible !important;
  gap:6px !important;
  padding-right:2px !important;
}
#rewardModal .reward-rank-row{
  grid-template-columns:24px minmax(0,1fr) auto !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  padding:5px 8px !important;
  gap:8px !important;
  border-radius:10px !important;
  box-sizing:border-box !important;
}
#rewardModal .reward-rank-row span{
  width:22px !important;
  height:22px !important;
  font-size:11px !important;
}
#rewardModal .reward-rank-row strong,
#rewardModal .reward-rank-row b{
  font-size:13px !important;
  line-height:1.1 !important;
}
#rewardModal .reward-ranking-pager{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  min-height:34px !important;
  margin-top:10px !important;
  padding-top:10px !important;
  border-top:1px solid rgba(255,226,180,.10) !important;
}
#rewardModal .reward-ranking-pager.hidden{
  display:none !important;
}
#rewardModal .reward-ranking-pager .icon-btn{
  width:32px !important;
  height:32px !important;
  border-radius:50% !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 26%,rgba(255,255,255,.12) 74%) !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035)),
    rgba(0,0,0,.22) !important;
  color:#fff1d6 !important;
  font-size:20px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
#rewardModal .reward-ranking-pager .icon-btn:disabled{
  opacity:.38 !important;
  cursor:not-allowed !important;
}
#rewardModal .reward-ranking-pager span{
  min-width:54px !important;
  text-align:center !important;
  color:color-mix(in srgb,var(--theme-a,#e8c886) 50%,white 50%) !important;
  font-weight:900 !important;
}
#rewardModal .modal-actions{
  margin-top:0 !important;
  padding-top:2px !important;
}
#rewardModal .reward-thanks{
  position:fixed !important;
  left:50% !important;
  top:50% !important;
  z-index:140 !important;
  width:min(760px,calc(100vw - 40px)) !important;
  max-width:calc(100vw - 40px) !important;
  margin:0 !important;
  padding:30px 34px !important;
  display:grid !important;
  place-items:center !important;
  gap:8px !important;
  pointer-events:none !important;
  border-radius:32px !important;
  transform:translate(-50%,-50%) !important;
  animation:rewardThanksViewportPop .88s cubic-bezier(.18,1.35,.2,1) both, rewardThanksGlow 1.8s ease-in-out infinite alternate !important;
}
#rewardModal .reward-thanks.hidden{
  display:none !important;
}
#rewardModal .reward-thanks strong{
  display:block !important;
  color:#24160a !important;
  font-size:clamp(32px,4.8vw,72px) !important;
  line-height:1.02 !important;
  font-weight:1000 !important;
}
#rewardModal .reward-thanks span{
  display:block !important;
  color:#3a2109 !important;
  font-size:clamp(20px,2.3vw,36px) !important;
  line-height:1.15 !important;
  font-weight:1000 !important;
}
@keyframes rewardThanksViewportPop{
  0%{opacity:0;transform:translate(-50%,-43%) scale(.72)}
  68%{opacity:1;transform:translate(-50%,-52%) scale(1.08)}
  100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@media(max-width:900px){
  #rewardModal .reward-modal-card{
    width:min(720px,calc(100vw - 24px)) !important;
    max-height:calc(100dvh - 24px) !important;
    overflow:auto !important;
  }
  #rewardModal .reward-modal-grid{
    grid-template-columns:1fr !important;
  }
  #rewardModal .reward-support-panel,
  #rewardModal .reward-ranking-panel{
    padding:16px !important;
  }
  #rewardModal .reward-image-wrap{
    width:min(360px,100%) !important;
  }
  #rewardModal .reward-claim-box{
    grid-template-columns:1fr !important;
  }
  #rewardModal .reward-claim-box .btn{
    width:100% !important;
  }
}

/* === V3.4.9 mobile reward modal final layout === */
@media(max-width:640px){
  #rewardModal{
    align-items:center !important;
    justify-content:center !important;
    padding:10px !important;
    overflow:hidden !important;
  }
  #rewardModal .reward-modal-card{
    width:calc(100vw - 20px) !important;
    max-width:420px !important;
    max-height:calc(100svh - 20px) !important;
    grid-template-rows:auto minmax(0,1fr) auto !important;
    gap:10px !important;
    padding:16px 14px 14px !important;
    overflow:hidden !important;
    border-radius:18px !important;
  }
  #rewardModal .modal-title{
    font-size:clamp(24px,8vw,32px) !important;
    margin:0 !important;
  }
  #rewardModal .reward-modal-grid{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
    padding:0 2px 2px !important;
  }
  #rewardModal .reward-support-panel,
  #rewardModal .reward-ranking-panel{
    width:100% !important;
    flex:0 0 auto !important;
    padding:12px !important;
    border-radius:16px !important;
  }
  #rewardModal .reward-support-panel .modal-copy{
    margin:0 auto 10px !important;
    font-size:12px !important;
    line-height:1.65 !important;
  }
  #rewardModal .reward-image-wrap{
    width:min(210px,78vw) !important;
    max-width:210px !important;
    margin:0 auto 10px !important;
    padding:8px !important;
    border-radius:16px !important;
  }
  #rewardModal .reward-image-wrap img{
    border-radius:10px !important;
  }
  #rewardModal .reward-claim-box{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    margin:0 !important;
  }
  #rewardModal .reward-claim-box label{
    font-size:12px !important;
  }
  #rewardModal #rewardAmountInput{
    height:42px !important;
    min-height:42px !important;
    border-radius:12px !important;
    font-size:14px !important;
  }
  #rewardModal #submitRewardClaimBtn{
    width:100% !important;
    height:42px !important;
    min-height:42px !important;
  }
  #rewardModal .reward-ranking-panel .kicker{
    display:none !important;
  }
  #rewardModal .reward-ranking-panel h3{
    margin:0 0 3px !important;
    font-size:20px !important;
    line-height:1.15 !important;
  }
  #rewardModal .reward-ranking-panel p{
    margin:0 0 8px !important;
    font-size:12px !important;
    line-height:1.35 !important;
  }
  #rewardModal .reward-ranking-list{
    gap:6px !important;
    overflow:visible !important;
  }
  #rewardModal .reward-rank-row{
    height:31px !important;
    min-height:31px !important;
    max-height:31px !important;
    grid-template-columns:24px minmax(0,1fr) minmax(48px,auto) !important;
    padding:4px 8px !important;
    gap:7px !important;
    border-radius:9px !important;
  }
  #rewardModal .reward-rank-row span{
    width:21px !important;
    height:21px !important;
  }
  #rewardModal .reward-rank-row strong,
  #rewardModal .reward-rank-row b{
    font-size:12px !important;
  }
  #rewardModal .reward-rank-row strong{
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  #rewardModal .modal-actions{
    display:block !important;
    padding-top:0 !important;
    margin:0 !important;
  }
  #rewardModal .modal-actions .btn{
    width:100% !important;
    min-height:40px !important;
    height:40px !important;
    border-radius:12px !important;
  }
}

/* === V3.0.9 play amount and exit visibility final pass === */
#view-play .money-pill,
#view-play .money-pill.high{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  height:42px !important;
  padding:0 10px !important;
  font-size:0 !important;
  overflow:hidden !important;
}
#view-play .money-pill-text{
  display:inline-block !important;
  max-width:100% !important;
  min-width:0 !important;
  color:inherit !important;
  font-size:var(--money-font-size,17px) !important;
  font-weight:1000 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  transform:scaleX(var(--money-scale,.98)) !important;
  transform-origin:center !important;
}
#view-play .money-pill.gone{
  justify-content:flex-start !important;
}
#view-play .money-pill.gone .money-pill-text{
  max-width:calc(100% - 18px) !important;
}
.case-stage .case-btn.opened .case-label > .case-amount-box,
.case-stage .case-btn.peeked .case-label > .case-amount-box{
  width:100% !important;
  max-width:100% !important;
  min-height:34px !important;
  padding:0 3px !important;
}
.case-stage .case-amount-box .neutral-case-amount,
.case-stage .case-amount-box .neutral-case-amount.compact,
.case-stage .case-amount-box .neutral-case-amount.tiny{
  max-width:100% !important;
  font-size:min(var(--case-amount-size,18px),18px) !important;
  transform:translate(-50%,-50%) scaleX(var(--case-amount-scale,.88)) !important;
}
body.run-locked #backSetupBtn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:104px !important;
  border-color:rgba(255,189,145,.52) !important;
  background:linear-gradient(180deg,#ffd7b0,#c26a40 52%,#70301f 100%) !important;
  color:#fff8ef !important;
  font-weight:1000 !important;
  box-shadow:0 10px 22px rgba(194,88,52,.24),inset 0 1px 0 rgba(255,247,232,.42) !important;
}
body.run-locked #backSetupBtn::before{
  content:"!";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:16px;
  height:16px;
  border-radius:999px;
  margin-right:6px;
  font-size:11px;
  line-height:1;
  color:#74321f;
  background:rgba(255,248,232,.78);
}

/* === V3.1.0 themed confirm dialog === */
.confirm-modal-card{
  width:min(520px,100%) !important;
  text-align:center;
}
.confirm-modal-card .modal-title{
  color:color-mix(in srgb,var(--theme-a,#f1d49a) 72%,#fff 28%);
}
.confirm-modal-card .modal-copy{
  max-width:440px;
  margin:8px auto 16px;
  color:#eadcc6;
  font-size:15px;
}
.confirm-modal-card .modal-actions .btn{
  min-width:142px;
}
body[class*="theme-global-"] .confirm-modal-card{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(255,255,255,.10) 78%) !important;
  box-shadow:0 36px 92px rgba(0,0,0,.55),0 0 34px color-mix(in srgb,var(--theme-glow,rgba(232,200,134,.18)) 82%,transparent) !important;
}

/* === V3.1.1 side value opened amount centering === */
#view-play .money-pill.gone,
#view-play .money-pill.gone.high{
  justify-content:center !important;
}
#view-play .money-pill.gone .money-pill-text{
  max-width:calc(100% - 22px) !important;
  text-align:center !important;
}

/* === V3.1.2 opened value slash marker === */
#view-play .money-pill.gone .money-pill-text{
  position:relative !important;
  z-index:2 !important;
}
#view-play .money-pill.gone::before,
#view-play .money-pill.gone.high::before{
  content:"" !important;
  position:absolute !important;
  left:10px !important;
  right:24px !important;
  top:50% !important;
  z-index:3 !important;
  height:2px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,transparent,rgba(255,240,205,.88) 12%,rgba(255,128,128,.95) 52%,rgba(255,240,205,.88) 88%,transparent) !important;
  box-shadow:0 0 8px rgba(255,132,132,.34),0 1px 0 rgba(0,0,0,.45) !important;
  opacity:.95 !important;
  transform:rotate(-10deg) !important;
  transform-origin:center !important;
  pointer-events:none !important;
}
#view-play .money-pill.gone::after{
  z-index:4 !important;
}

/* === V3.1.2 remove opened value cross marker === */
#view-play .money-pill.gone .money-pill-text{
  max-width:100% !important;
  text-align:center !important;
}
#view-play .money-pill.gone::before,
#view-play .money-pill.gone.high::before{
  left:10px !important;
  right:10px !important;
}
#view-play .money-pill.gone::after,
#view-play .money-pill.gone.high::after{
  content:none !important;
  display:none !important;
}

/* === V3.1.3 corner-aligned opened value slash === */
#view-play .money-pill.gone::before,
#view-play .money-pill.gone.high::before{
  content:"" !important;
  position:absolute !important;
  inset:5px 9px !important;
  z-index:3 !important;
  width:auto !important;
  height:auto !important;
  border-radius:inherit !important;
  background:linear-gradient(to top right,transparent calc(50% - 1.35px),rgba(255,240,205,.92) calc(50% - 1.35px),rgba(255,128,128,.98) 50%,rgba(255,240,205,.92) calc(50% + 1.35px),transparent calc(50% + 1.35px)) !important;
  box-shadow:none !important;
  opacity:.96 !important;
  transform:none !important;
  pointer-events:none !important;
}

/* === V3.1.4 opened value text strike === */
#view-play .money-pill.gone::before,
#view-play .money-pill.gone.high::before,
#view-play .money-pill.gone::after,
#view-play .money-pill.gone.high::after{
  content:none !important;
  display:none !important;
  background:none !important;
  box-shadow:none !important;
}
#view-play .money-pill.gone .money-pill-text{
  max-width:100% !important;
  color:inherit !important;
  text-align:center !important;
  text-decoration-line:line-through !important;
  text-decoration-thickness:2.5px !important;
  text-decoration-color:rgba(255,238,205,.96) !important;
  text-decoration-skip-ink:none !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70),0 0 10px rgba(255,140,140,.16) !important;
}

/* === V3.1.5 diagonal text strike === */
#view-play .money-pill.gone .money-pill-text{
  position:relative !important;
  z-index:2 !important;
  text-decoration:none !important;
}
#view-play .money-pill.gone .money-pill-text::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  right:auto !important;
  top:50% !important;
  width:calc(100% + 10px) !important;
  height:2px !important;
  border-radius:999px !important;
  background:rgba(255,232,197,.94) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.55) !important;
  transform:translate(-50%,-50%) rotate(3deg) !important;
  transform-origin:center !important;
  pointer-events:none !important;
}

/* === V3.1.8 case history and gentler opened value strike === */
.stage-history-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:0 15px;
  border-radius:999px;
  border:1px solid rgba(255,231,181,.36);
  background:linear-gradient(180deg,rgba(48,37,25,.92),rgba(15,11,8,.98));
  color:#f7e8cc;
  font-size:13px;
  font-weight:1000;
  box-shadow:0 12px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,250,235,.14);
  cursor:pointer;
  white-space:nowrap;
}
.stage-history-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.06);
}
.stage-head .stage-history-btn{
  height:32px !important;
  min-height:32px !important;
  line-height:32px !important;
  padding:0 12px !important;
  align-items:center !important;
  border-radius:14px !important;
  font-size:12px !important;
  box-shadow:0 6px 12px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,248,230,.08) !important;
}
.stage-head .stage-history-btn:hover{
  transform:none !important;
}
.case-history-modal-card{
  width:min(620px,100%) !important;
  text-align:left;
}
.case-history-list{
  display:grid;
  gap:9px;
  max-height:min(52vh,520px);
  overflow:auto;
  margin:14px 0 2px;
  padding-right:4px;
}
.case-history-row{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) minmax(104px,auto);
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  box-shadow:inset 0 1px 0 rgba(255,248,230,.05);
}
.case-history-row span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:26px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.18);
  background:rgba(255,226,180,.07);
  color:#d8c2a4;
  font-size:12px;
  font-weight:1000;
}
.case-history-row strong{
  min-width:0;
  color:#fff0cf;
  font-size:15px;
  font-weight:1000;
}
.case-history-row b{
  justify-self:end;
  color:#ffe0a7;
  font-size:15px;
  font-weight:1000;
  white-space:nowrap;
}
.case-history-empty{
  padding:18px;
  border-radius:14px;
  border:1px dashed rgba(255,226,180,.18);
  color:#cbb89d;
  text-align:center;
  font-weight:900;
}

/* === V3.1.9 result review actions === */
.result-modal-card{
  width:min(760px,100%) !important;
}
.result-actions{
  align-items:center;
}
.result-actions .btn{
  min-width:132px;
}
#resultModal #resultViewBoardBtn{
  border-color:rgba(255,214,145,.38) !important;
  background:linear-gradient(180deg,rgba(108,77,44,.98),rgba(48,33,22,.98) 58%,rgba(18,12,9,.99) 100%) !important;
  color:#fff0cf !important;
  box-shadow:0 14px 28px rgba(0,0,0,.26),0 0 0 1px rgba(255,226,180,.08),inset 0 1px 0 rgba(255,248,230,.16) !important;
}
#resultModal #resultShareBtn{
  border-color:rgba(177,198,255,.42) !important;
  background:linear-gradient(180deg,rgba(76,88,130,.96),rgba(26,31,55,.98)) !important;
  color:#eef4ff !important;
  box-shadow:0 14px 28px rgba(56,77,151,.18),inset 0 1px 0 rgba(236,244,255,.16) !important;
}
#resultModal #resultShareBtn small{
  display:inline-flex;
  align-items:center;
  margin-left:4px;
  padding:2px 6px;
  border-radius:999px;
  background:rgba(255,230,150,.16);
  color:#ffe6a2;
  font-size:11px;
  line-height:1;
  font-weight:900;
}

/* === V3.2.4 PC shop equal-height columns === */
@media(min-width:1321px){
  #view-shop .shop-shell{
    --shop-pc-column-height:clamp(540px,calc(100dvh - 220px),700px);
    align-items:stretch !important;
  }
  #view-shop .shop-preview-panel,
  #view-shop .shop-content-stack{
    align-self:stretch !important;
    height:var(--shop-pc-column-height) !important;
    max-height:var(--shop-pc-column-height) !important;
    min-height:0 !important;
  }
  #view-shop .shop-preview-pad{
    display:grid !important;
    grid-template-rows:auto auto minmax(170px,1fr) auto auto !important;
    height:100% !important;
    min-height:0 !important;
    box-sizing:border-box !important;
  }
  #view-shop .shop-preview-scene{
    height:auto !important;
    min-height:170px !important;
  }
  #view-shop .shop-summary-grid{
    align-self:end !important;
  }
  #view-shop .shop-block[data-shop-section].active{
    align-self:stretch !important;
    height:100% !important;
    min-height:0 !important;
  }
  #view-shop .shop-block[data-shop-section].active .card-pad{
    height:100% !important;
    max-height:none !important;
    min-height:0 !important;
    box-sizing:border-box !important;
  }
  #view-shop .shop-block[data-shop-section].active .shop-grid{
    min-height:0 !important;
  }
}

/* === V3.2.8 shop item role split === */
#view-shop #itemShopGrid.shop-role-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:start !important;
}
#view-shop .shop-item-role-section{
  min-width:0 !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
  gap:12px !important;
  padding:14px !important;
  border-radius:18px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.09) 76%) !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.022)),
    rgba(0,0,0,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.06),0 14px 28px rgba(0,0,0,.12) !important;
}
#view-shop .shop-item-role-head{
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  min-width:0 !important;
}
#view-shop .shop-item-role-head > span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:38px !important;
  height:38px !important;
  border-radius:14px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 30%,rgba(255,255,255,.12) 70%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.08) 72%),rgba(0,0,0,.24)) !important;
  color:#fff1d0 !important;
  font-size:18px !important;
  font-weight:1000 !important;
}
#view-shop .shop-item-role-head div{
  display:grid !important;
  gap:3px !important;
  min-width:0 !important;
}
#view-shop .shop-item-role-head strong{
  color:#fff2d8 !important;
  font-size:16px !important;
  font-weight:1000 !important;
  line-height:1.15 !important;
}
#view-shop .shop-item-role-head em{
  color:var(--muted) !important;
  font-size:12px !important;
  font-style:normal !important;
  font-weight:800 !important;
  line-height:1.35 !important;
}
#view-shop .shop-item-role-list{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)) !important;
  gap:12px !important;
}
#view-shop .shop-item-role-list .shop-service-card{
  min-height:214px !important;
}
@media(max-width:1180px){
  #view-shop #itemShopGrid.shop-role-grid{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:680px){
  #view-shop .shop-item-role-section{
    padding:12px !important;
    border-radius:16px !important;
  }
  #view-shop .shop-item-role-list{
    grid-template-columns:1fr !important;
  }
}

/* === V3.3.0 shop item role tabs === */
#view-shop #itemShopGrid.shop-role-tabs-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
  align-items:stretch !important;
}
#view-shop .shop-item-role-tabs{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  padding:8px !important;
  border-radius:18px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.10) 76%) !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.018)),
    rgba(0,0,0,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.08),0 14px 30px rgba(0,0,0,.14) !important;
}
#view-shop .shop-item-role-tab{
  width:100% !important;
  min-width:0 !important;
  min-height:58px !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:9px !important;
  padding:10px 12px !important;
  border-radius:14px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 20%,rgba(255,255,255,.10) 80%) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.012)) !important;
  color:var(--text) !important;
  cursor:pointer !important;
  text-align:left !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.07) !important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease !important;
}
#view-shop .shop-item-role-tab:hover{
  transform:translateY(-1px) !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 42%,rgba(255,255,255,.16) 58%) !important;
}
#view-shop .shop-item-role-tab.active{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 58%,rgba(255,255,255,.18) 42%) !important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 25%,rgba(255,255,255,.10) 75%),rgba(0,0,0,.20)),
    color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(0,0,0,.30) 82%) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.16),0 10px 22px color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(0,0,0,.24) 82%) !important;
}
#view-shop .shop-item-role-tab span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:34px !important;
  height:34px !important;
  border-radius:12px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 28%,rgba(255,255,255,.10) 72%) !important;
  background:rgba(0,0,0,.18) !important;
  color:#fff1d0 !important;
  font-size:16px !important;
  font-weight:1000 !important;
}
#view-shop .shop-item-role-tab b{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:#fff4dd !important;
  font-size:14px !important;
  font-weight:1000 !important;
  line-height:1.15 !important;
}
#view-shop .shop-item-role-tab em{
  justify-self:end !important;
  white-space:nowrap !important;
  color:var(--muted) !important;
  font-size:11px !important;
  font-style:normal !important;
  font-weight:900 !important;
}
#view-shop .shop-item-role-tab.active em{
  color:#fff0c8 !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-section{
  width:100% !important;
  min-height:0 !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-list{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)) !important;
}
@media(max-width:680px){
  #view-shop .shop-item-role-tabs{
    gap:8px !important;
    padding:7px !important;
    border-radius:16px !important;
  }
  #view-shop .shop-item-role-tab{
    min-height:54px !important;
    grid-template-columns:30px minmax(0,1fr) !important;
    gap:8px !important;
    padding:9px 10px !important;
  }
  #view-shop .shop-item-role-tab span{
    width:30px !important;
    height:30px !important;
  }
  #view-shop .shop-item-role-tab b{
    font-size:13px !important;
  }
  #view-shop .shop-item-role-tab em{
    display:none !important;
  }
}

/* === V3.3.1 compact item shop tabs and cards === */
#view-shop .shop-block[data-shop-section="items"].active .card-pad{
  gap:6px !important;
  padding:14px !important;
}
#view-shop .shop-block[data-shop-section="items"].active .kicker{
  display:none !important;
}
#view-shop .shop-block[data-shop-section="items"].active h3{
  margin:0 !important;
  font-size:24px !important;
  line-height:1.05 !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid{
  gap:8px !important;
  padding-top:0 !important;
}
#view-shop .shop-item-role-tabs{
  width:min(100%,360px) !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:4px !important;
  margin:-2px 0 0 !important;
  padding:4px !important;
  border-radius:999px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 20%,rgba(255,255,255,.10) 80%) !important;
  background:rgba(0,0,0,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.06) !important;
}
#view-shop .shop-item-role-tab{
  min-height:34px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:6px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  border:1px solid transparent !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:center !important;
}
#view-shop .shop-item-role-tab:hover{
  transform:none !important;
}
#view-shop .shop-item-role-tab.active{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 44%,rgba(255,255,255,.15) 56%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.10) 76%),rgba(0,0,0,.18)) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.15) !important;
}
#view-shop .shop-item-role-tab span{
  display:none !important;
}
#view-shop .shop-item-role-tab b{
  text-align:center !important;
  color:#fff4df !important;
  font-size:13px !important;
  font-weight:1000 !important;
}
#view-shop .shop-item-role-tab em{
  justify-self:end !important;
  min-width:22px !important;
  padding:3px 6px !important;
  border-radius:999px !important;
  background:rgba(0,0,0,.20) !important;
  color:#f6dfb5 !important;
  font-size:10px !important;
  font-style:normal !important;
  font-weight:1000 !important;
  line-height:1 !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-section{
  display:block !important;
  gap:0 !important;
  grid-template-rows:1fr !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-list{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr)) !important;
  gap:8px !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-prop-card{
  grid-template-rows:auto auto minmax(34px,1fr) auto !important;
  gap:7px !important;
  min-height:156px !important;
  padding:11px !important;
  border-radius:16px !important;
  box-sizing:border-box !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-compact-head{
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:8px !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-title-line{
  grid-template-columns:36px minmax(0,1fr) !important;
  gap:8px !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-title-line .shop-icon{
  width:36px !important;
  height:36px !important;
  flex-basis:36px !important;
  border-radius:12px !important;
  font-size:17px !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-title-copy h4{
  font-size:15px !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-title-copy span{
  font-size:11px !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-state-pill{
  max-width:74px !important;
  min-height:23px !important;
  padding:4px 7px !important;
  font-size:10px !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-chip-row{
  gap:5px !important;
}
#view-shop #itemShopGrid .shop-service-card .item-role-pill,
#view-shop #itemShopGrid .shop-service-card .shop-price{
  min-height:23px !important;
  padding:4px 7px !important;
  font-size:10px !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-card-copy{
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  padding:7px 8px !important;
  font-size:11px !important;
  line-height:1.35 !important;
  -webkit-line-clamp:2 !important;
  box-sizing:border-box !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-item-actions{
  width:100% !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
}
#view-shop #itemShopGrid .shop-service-card .shop-item-actions .btn{
  width:100% !important;
  max-width:100% !important;
  min-height:34px !important;
  padding:7px 8px !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:12px !important;
}
#view-shop #itemShopGrid .shop-quantity-row{
  width:100% !important;
  display:grid !important;
  grid-template-columns:34px minmax(56px,1fr) 34px !important;
  align-items:center !important;
  gap:6px !important;
  margin:2px 0 8px !important;
}
#view-shop #itemShopGrid .shop-qty-btn,
#view-shop #itemShopGrid .shop-qty-input{
  height:32px !important;
  border-radius:10px !important;
  border:1px solid rgba(219,192,146,.24) !important;
  background:rgba(8,11,16,.48) !important;
  color:#fff3d7 !important;
  text-align:center !important;
  font-weight:900 !important;
  box-sizing:border-box !important;
}
#view-shop #itemShopGrid .shop-qty-btn{
  cursor:pointer !important;
  font-size:17px !important;
  line-height:1 !important;
}
#view-shop #itemShopGrid .shop-qty-input{
  min-width:0 !important;
  padding:0 4px !important;
  font-size:13px !important;
}
#view-shop #itemShopGrid .shop-buy-btn span[id^="shopQtyTotal_"]{
  display:inline !important;
}
#itemModal .shop-item-guide{
  min-height:48px !important;
  display:grid !important;
  align-content:center !important;
  margin:6px 0 8px !important;
  padding:8px 10px !important;
}
#itemModal .shop-item-guide span{
  line-height:1.38 !important;
}
@media(max-width:680px){
  #itemModal .item-modal-actions-row{
    grid-template-columns:1fr;
  }
  #itemModal .item-modal-top{
    align-items:flex-start;
    flex-direction:column;
  }
}
@media(max-width:680px){
  #view-shop .shop-block[data-shop-section="items"].active .card-pad{
    padding:12px !important;
  }
  #view-shop .shop-item-role-tabs{
    width:100% !important;
  }
  #view-shop .shop-item-role-tab{
    min-height:34px !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    padding:0 10px !important;
  }
  #view-shop .shop-item-role-tab em{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  #view-shop #itemShopGrid.shop-role-tabs-grid .shop-prop-card{
    min-height:0 !important;
  }
}

/* === V3.3.2 item shop header alignment === */
#view-shop .shop-block[data-shop-section="items"].active .card-pad{
  gap:10px !important;
  padding:20px !important;
  grid-template-rows:auto auto minmax(0,1fr) !important;
}
#view-shop .shop-block[data-shop-section="items"].active .kicker{
  display:block !important;
}
#view-shop .shop-block[data-shop-section="items"].active h3{
  margin:10px 0 4px !important;
  font-size:30px !important;
  line-height:1.1 !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid{
  gap:10px !important;
  padding-top:6px !important;
}
#view-shop .shop-item-role-tabs{
  margin:0 0 4px !important;
}
@media(max-width:680px){
  #view-shop .shop-block[data-shop-section="items"].active .card-pad{
    padding:16px !important;
  }
  #view-shop .shop-block[data-shop-section="items"].active h3{
    font-size:26px !important;
  }
}

/* === V3.3.3 compact item tabs and priced bundle buttons === */
#view-shop .shop-item-role-tabs{
  width:min(100%,260px) !important;
  justify-self:start !important;
  gap:3px !important;
  padding:3px !important;
}
#view-shop .shop-item-role-tab{
  min-height:30px !important;
  gap:5px !important;
  padding:0 9px !important;
}
#view-shop .shop-item-role-tab b{
  font-size:12px !important;
}
#view-shop .shop-item-role-tab em{
  min-width:18px !important;
  padding:2px 5px !important;
  font-size:10px !important;
}
#view-shop #bundleShopGrid .shop-bundle-card{
  grid-template-rows:auto minmax(0,1fr) auto !important;
  gap:10px !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-guide{
  margin:0 !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions{
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions .btn{
  flex:0 1 auto !important;
  width:auto !important;
  min-width:150px !important;
  max-width:100% !important;
  min-height:36px !important;
  padding:8px 12px !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:12px !important;
}
@media(max-width:680px){
  #view-shop .shop-item-role-tabs{
    width:min(100%,260px) !important;
  }
  #view-shop .shop-item-role-tab{
    min-height:30px !important;
  }
  #view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions .btn{
    width:auto !important;
    min-width:150px !important;
  }
}

/* === V3.3.4 shop tabs, bundle cards and stage header === */
#view-shop .shop-category-tabs{
  gap:7px !important;
  padding:6px !important;
  border-radius:16px !important;
}
#view-shop .shop-category-tab{
  min-height:42px !important;
  gap:2px !important;
  padding:7px 11px !important;
  border-radius:12px !important;
}
#view-shop .shop-category-tab span{
  font-size:13px !important;
  line-height:1.05 !important;
}
#view-shop .shop-category-tab b{
  font-size:9px !important;
  letter-spacing:.9px !important;
}
#view-shop .shop-item-role-tabs{
  width:min(100%,190px) !important;
  gap:2px !important;
  padding:2px !important;
  border-radius:12px !important;
}
#view-shop .shop-item-role-tab{
  min-height:26px !important;
  gap:4px !important;
  padding:0 7px !important;
  border-radius:10px !important;
}
#view-shop .shop-item-role-tab b{
  font-size:11px !important;
}
#view-shop .shop-item-role-tab em{
  min-width:16px !important;
  padding:1px 4px !important;
  font-size:9px !important;
}
#view-shop #bundleShopGrid{
  align-items:start !important;
}
#view-shop #bundleShopGrid .shop-bundle-card{
  align-self:start !important;
  grid-template-rows:auto auto auto !important;
  gap:9px !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-guide{
  min-height:0 !important;
  display:grid !important;
  align-content:start !important;
  gap:8px !important;
  padding:10px !important;
}
#view-shop #bundleShopGrid .bundle-grant-list{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(96px,1fr)) !important;
  gap:7px !important;
  margin-top:2px !important;
}
#view-shop #bundleShopGrid .bundle-grant-list span{
  width:100% !important;
  min-width:0 !important;
  min-height:26px !important;
  height:26px !important;
  padding:0 8px !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:11px !important;
  line-height:1 !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions{
  display:grid !important;
  grid-template-columns:1fr !important;
  width:100% !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions .btn{
  width:100% !important;
  min-width:0 !important;
  min-height:34px !important;
  padding:7px 10px !important;
}
.stage-room-group{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  min-width:0 !important;
}
.stage-head .stage-mode-badge{
  min-width:66px !important;
  justify-content:center !important;
  color:#fff2d2 !important;
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 42%,rgba(255,255,255,.14) 58%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(255,255,255,.08) 82%),rgba(0,0,0,.22)) !important;
}
.stage-status{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}
@media(max-width:680px){
  #view-shop .shop-category-tabs{
    gap:6px !important;
    padding:5px !important;
  }
  #view-shop .shop-category-tab{
    min-height:38px !important;
    padding:6px 8px !important;
  }
  #view-shop .shop-item-role-tabs{
    width:min(100%,190px) !important;
  }
  #view-shop #bundleShopGrid .bundle-grant-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  #view-play .stage-head-right{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  #view-play .stage-room-group{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:minmax(76px,.34fr) minmax(0,.66fr) !important;
    gap:7px !important;
    width:100% !important;
  }
  #view-play .stage-head .stage-room-group .title-badge{
    grid-column:auto !important;
    width:100% !important;
    justify-content:center !important;
  }
  #view-play .stage-status{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* === V3.3.5 final item tabs and equal bundle cards === */
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tabs{
  display:inline-flex !important;
  grid-template-columns:none !important;
  align-items:center !important;
  justify-self:start !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  gap:0 !important;
  margin:0 0 6px !important;
  padding:2px !important;
  border-radius:10px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(255,255,255,.10) 78%) !important;
  background:rgba(0,0,0,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.06) !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:72px !important;
  min-height:28px !important;
  height:28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  padding:0 12px !important;
  border-radius:8px !important;
  border:1px solid transparent !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#d8c7aa !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab.active{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 48%,rgba(255,255,255,.12) 52%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.08) 76%),rgba(0,0,0,.22)) !important;
  color:#fff3d8 !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab b{
  font-size:12px !important;
  line-height:1 !important;
  font-weight:1000 !important;
  color:inherit !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab em{
  display:none !important;
}
#view-shop #bundleShopGrid{
  align-items:stretch !important;
}
#view-shop #bundleShopGrid .shop-bundle-card{
  height:100% !important;
  min-height:342px !important;
  display:grid !important;
  grid-template-rows:auto minmax(178px,1fr) auto !important;
  gap:10px !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-guide{
  height:178px !important;
  min-height:178px !important;
  max-height:178px !important;
  overflow:hidden !important;
  align-content:start !important;
  box-sizing:border-box !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-guide > span{
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  line-height:1.35 !important;
}
#view-shop #bundleShopGrid .bundle-grant-list{
  max-height:104px !important;
  overflow:auto !important;
  padding-right:2px !important;
  scrollbar-width:thin !important;
}
#view-shop #bundleShopGrid .bundle-grant-list span{
  height:24px !important;
  min-height:24px !important;
  max-height:24px !important;
  font-size:10px !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions{
  align-self:end !important;
}
@media(max-width:680px){
  #view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tabs{
    width:auto !important;
  }
  #view-shop #bundleShopGrid .shop-bundle-card{
    min-height:326px !important;
  }
}

/* === V3.3.6 pill role tabs and no-scroll bundle cards === */
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tabs{
  display:inline-flex !important;
  grid-template-columns:none !important;
  align-items:center !important;
  justify-content:center !important;
  justify-self:start !important;
  width:auto !important;
  min-width:210px !important;
  max-width:max-content !important;
  height:42px !important;
  min-height:42px !important;
  gap:3px !important;
  margin:0 0 8px !important;
  padding:3px !important;
  border-radius:999px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.11) 76%) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.20)) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.08),0 8px 18px rgba(0,0,0,.16) !important;
  overflow:hidden !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:100px !important;
  height:36px !important;
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 18px !important;
  border-radius:999px !important;
  border:1px solid transparent !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#d8c7aa !important;
  transform:none !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab.active{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 48%,rgba(255,255,255,.16) 52%) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 40%,#fff5d8 60%),color-mix(in srgb,var(--theme-b,#b88946) 46%,rgba(0,0,0,.16) 54%)) !important;
  color:#281806 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 6px 12px rgba(0,0,0,.18) !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab b{
  font-size:13px !important;
  line-height:1 !important;
  font-weight:1000 !important;
  color:inherit !important;
  text-align:center !important;
}
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab em,
#view-shop #itemShopGrid.shop-role-tabs-grid .shop-item-role-tab span{
  display:none !important;
}
#view-shop #bundleShopGrid{
  align-items:stretch !important;
  grid-auto-rows:1fr !important;
}
#view-shop #bundleShopGrid .shop-bundle-card{
  min-height:420px !important;
  height:100% !important;
  display:grid !important;
  grid-template-rows:auto minmax(252px,1fr) auto !important;
  gap:10px !important;
}
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-guide{
  min-height:252px !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  align-content:start !important;
  gap:8px !important;
  box-sizing:border-box !important;
}
#view-shop #bundleShopGrid .bundle-grant-list{
  max-height:none !important;
  overflow:visible !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  padding-right:0 !important;
}
#view-shop #bundleShopGrid .bundle-grant-list span{
  height:28px !important;
  min-height:28px !important;
  max-height:28px !important;
  min-width:0 !important;
  width:100% !important;
  justify-content:center !important;
  padding:0 9px !important;
  font-size:11px !important;
}
@media(max-width:980px){
  #view-shop #bundleShopGrid .shop-bundle-card{
    min-height:0 !important;
    height:auto !important;
  }
  #view-shop #bundleShopGrid .shop-bundle-card .shop-item-guide{
    min-height:0 !important;
  }
  #view-shop #bundleShopGrid .bundle-grant-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* === frontend performance pass v3.5.1 === */
.case-reveal-video-fallback{
  border-radius:28%;
  background:
    radial-gradient(circle at 50% 35%,rgba(255,230,170,.28),transparent 34%),
    linear-gradient(145deg,#f1d19b 0%,#9a6a30 32%,#1a120b 58%,#d5a35a 100%);
  box-shadow:0 16px 30px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.32);
}
.case-reveal-video-fallback::after{
  content:"VD";
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff3cf;
  font-weight:1000;
  font-size:clamp(52px,8vw,92px);
  letter-spacing:0;
  text-shadow:0 2px 10px rgba(0,0,0,.44);
}
@media (hover:hover) and (pointer:fine){
  .btn:hover,
  .nav-btn:hover,
  .top-action-pill:hover,
  .foot-btn:hover,
  .modal-actions .btn:hover,
  .version-log-btn:hover,
  .shop-item-role-tab:hover{
    transform:none !important;
    filter:none !important;
  }
  .mode-card:hover,
  .room-card:hover,
  .shop-item-card:hover,
  .theme-card:hover,
  .voice-card:hover,
  .shop-bundle-card:hover{
    transform:translateY(-1px) !important;
    filter:none !important;
  }
  .case-btn:hover:not([disabled]){
    transform:translateY(-2px) !important;
  }
}
html.performance-lite *,
html.performance-lite *::before,
html.performance-lite *::after{
  scroll-behavior:auto !important;
}
html.performance-lite body::before{
  opacity:.22 !important;
  mix-blend-mode:normal !important;
}
html.performance-lite .btn,
html.performance-lite .nav-btn,
html.performance-lite .meta-pill,
html.performance-lite .card,
html.performance-lite .mode-card,
html.performance-lite .room-card,
html.performance-lite .case-btn,
html.performance-lite .shop-item-card,
html.performance-lite .theme-card,
html.performance-lite .voice-card,
html.performance-lite .shop-bundle-card,
html.performance-lite .foot-btn{
  transition:border-color .12s ease,background-color .12s ease,color .12s ease !important;
  will-change:auto !important;
}
html.performance-lite .btn:hover,
html.performance-lite .nav-btn:hover,
html.performance-lite .top-action-pill:hover,
html.performance-lite .mode-card:hover,
html.performance-lite .room-card:hover,
html.performance-lite .case-btn:hover,
html.performance-lite .shop-item-card:hover,
html.performance-lite .theme-card:hover,
html.performance-lite .voice-card:hover,
html.performance-lite .shop-bundle-card:hover,
html.performance-lite .foot-btn:hover{
  transform:none !important;
  filter:none !important;
}
html.performance-lite .modal,
html.performance-lite .auth-dropdown,
html.performance-lite .message-modal-card,
html.performance-lite .version-modal-card,
html.performance-lite .feedback-modal-card,
html.performance-lite .poster-modal-card{
  backdrop-filter:none !important;
}
html.performance-lite .card,
html.performance-lite .modal-card,
html.performance-lite .topbar,
html.performance-lite .money-plaque,
html.performance-lite .case-stage,
html.performance-lite .control-deck,
html.performance-lite .announcer,
html.performance-lite .stage-head,
html.performance-lite .stage-status,
html.performance-lite .ai-banner{
  box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,248,230,.04) !important;
}
html.performance-lite .case-stage::before,
html.performance-lite #view-play .case-stage::before,
html.performance-lite .case-reveal-crate{
  animation:none !important;
  filter:none !important;
}
html.performance-lite .firework-layer span,
html.performance-lite .firework-layer i,
html.performance-lite .feedback-flash,
html.performance-lite .audience-strip,
html.performance-lite .feedback-callout{
  will-change:auto !important;
}

/* === V3.5.3 faster in-round case reveal rhythm === */
#view-play .case-btn.opening{
  animation:unlock .46s ease !important;
}

/* === V3.5.4 fixed lazy records and compact shop login buttons === */
#view-records .records-grid{
  align-items:start !important;
}
#view-records .record-panel{
  min-height:0 !important;
}
#view-records .record-panel .card-pad{
  display:grid !important;
  grid-template-rows:auto auto minmax(0,1fr) !important;
  min-height:0 !important;
}
#view-records .history-list{
  max-height:min(56vh,620px) !important;
  min-height:220px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  align-content:start !important;
  padding-right:6px !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(219,192,146,.42) rgba(255,255,255,.04) !important;
}
#view-records .history-list::-webkit-scrollbar{
  width:8px;
}
#view-records .history-list::-webkit-scrollbar-track{
  background:rgba(255,255,255,.04);
  border-radius:999px;
}
#view-records .history-list::-webkit-scrollbar-thumb{
  background:rgba(219,192,146,.42);
  border-radius:999px;
}
#view-records .history-item{
  flex:0 0 auto !important;
}
#view-records .history-load-more{
  min-height:40px;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  color:#f5dfb7;
  font-weight:1000;
  cursor:pointer;
}
#view-records .history-load-more:hover{
  border-color:rgba(255,226,180,.24);
  filter:brightness(1.05);
}
#view-records .record-battle-tabs{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  max-width:520px;
  margin:0 0 18px;
}
#view-records .record-battle-tabs .leader-tab:not(.active){
  color:#fff3dc;
  border-color:rgba(255,226,180,.36);
  background:linear-gradient(180deg,rgba(255,243,218,.15),rgba(74,49,22,.34));
  box-shadow:inset 0 1px 0 rgba(255,250,235,.14),0 8px 18px rgba(0,0,0,.12);
  text-shadow:0 1px 8px rgba(0,0,0,.34);
}
#view-records .record-battle-tabs .leader-tab:not(.active):hover{
  color:#fffaf0;
  border-color:rgba(255,226,180,.5);
  filter:brightness(1.04);
}
#view-shop #itemShopGrid .shop-buy-btn,
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions .btn,
#view-shop #voiceShopGrid .shop-voice-card .shop-item-actions .btn{
  min-width:0 !important;
  max-width:100% !important;
}
#view-shop #itemShopGrid .shop-buy-btn > span,
#view-shop #bundleShopGrid .shop-bundle-card .shop-item-actions .btn > span,
#view-shop #voiceShopGrid .shop-voice-card .shop-item-actions .btn > span{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#view-shop #voiceShopGrid .shop-voice-card.disabled{
  opacity:.68;
}
#view-shop #voiceShopGrid .shop-voice-card.disabled .shop-icon{
  filter:grayscale(1);
}
#view-shop #voiceShopGrid .shop-voice-card.disabled .shop-item-actions{
  grid-template-columns:1fr;
}

/* === V3.5.5 compact result summary === */
#resultModal .result-list{
  display:grid !important;
  gap:8px !important;
  max-height:none !important;
  overflow:visible !important;
  margin:10px 0 8px !important;
}
#resultModal .result-summary-list{
  display:grid;
  gap:8px;
}
#resultModal .result-row{
  align-items:center;
  min-height:42px;
  padding:10px 12px !important;
  border-radius:14px !important;
}
#resultModal .result-row span{
  min-width:0;
  color:var(--muted);
  font-size:13px;
}
#resultModal .result-row b{
  min-width:0;
  text-align:right;
  overflow-wrap:anywhere;
  font-size:14px;
}
#resultModal .result-core{
  border-color:rgba(255,226,180,.14) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.022)) !important;
}
#resultModal .result-details{
  margin-top:8px;
  border:1px solid rgba(255,226,180,.10);
  border-radius:16px;
  background:rgba(255,255,255,.025);
  overflow:hidden;
}
#resultModal .result-details summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:42px;
  padding:0 13px;
  cursor:pointer;
  color:#f7e5c6;
  font-weight:1000;
}
#resultModal .result-details summary::-webkit-details-marker{
  display:none;
}
#resultModal .result-details summary::after{
  content:'+';
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.16);
  color:#ffe1a5;
  font-weight:1000;
}
#resultModal .result-details[open] summary::after{
  content:'-';
}
#resultModal .result-details summary b{
  margin-left:auto;
  color:var(--muted);
  font-size:12px;
}
#resultModal .result-detail-list{
  display:grid;
  gap:6px;
  max-height:260px;
  overflow:auto;
  padding:0 8px 8px;
  -webkit-overflow-scrolling:touch;
}
#resultModal .result-detail-list .result-row{
  min-height:36px;
  padding:8px 10px !important;
  background:rgba(255,255,255,.018) !important;
}
#resultModal .modal-copy{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  max-width:620px;
  margin:6px auto 8px !important;
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
}

/* === V3.5.8 PVP entry capsules and preview cards === */
#view-setup .screen-head{
  align-items:flex-start !important;
}
.setup-battle-switch{
  flex:0 0 auto;
  display:inline-grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:4px;
  min-width:276px;
  min-height:48px;
  padding:5px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.18);
  background:linear-gradient(180deg,rgba(255,246,224,.11),rgba(24,18,14,.42));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 42px rgba(0,0,0,.22);
}
.setup-battle-tab{
  border:0;
  outline:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:38px;
  padding:0 16px;
  border-radius:999px;
  background:transparent;
  color:rgba(255,238,210,.72);
  font-weight:1000;
  font-size:14px;
  letter-spacing:0;
  cursor:pointer;
  white-space:nowrap;
  transition:.16s ease;
}
.setup-battle-tab .ico{
  font-size:13px;
}
.setup-battle-tab:hover{
  color:#fff7e6;
  background:rgba(255,255,255,.06);
}
.setup-battle-tab.active{
  color:#2a1808;
  background:linear-gradient(180deg,#fff0c8,#d5a65e 48%,#9b6729 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 10px 24px rgba(0,0,0,.24);
}
#view-setup.setup-battle-pvp .setup-grid{
  grid-template-columns:1fr !important;
  gap:0 !important;
}
#view-setup.setup-battle-pvp .mode-stack{
  display:none !important;
}
#view-setup.setup-battle-pvp .setup-side{
  width:100% !important;
}
#view-setup .rooms-grid.pvp-entry-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:none !important;
  grid-auto-rows:auto !important;
  gap:14px !important;
  transform:none !important;
  height:auto !important;
  align-items:stretch !important;
}
#view-setup .pvp-entry-card{
  cursor:default;
  min-height:334px;
}
#view-setup .pvp-entry-card:hover{
  transform:translateY(-3px);
}
#view-setup .pvp-entry-card .card-pad{
  height:100%;
  min-height:0 !important;
  padding:22px !important;
  display:grid !important;
  grid-template-rows:auto auto 1fr auto;
  gap:16px;
}
.pvp-entry-top{
  display:flex;
  align-items:center;
  gap:14px;
}
.pvp-entry-icon{
  flex:0 0 48px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.18);
  background:linear-gradient(180deg,rgba(255,235,190,.16),rgba(255,255,255,.035));
  color:#ffe0a4;
  font-weight:1000;
  font-size:24px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
}
.pvp-entry-top h3{
  margin:4px 0 0 !important;
  font-size:24px !important;
  line-height:1.16 !important;
}
#view-setup .pvp-entry-card p{
  margin:0 !important;
  color:var(--text-soft);
  font-size:14px !important;
  line-height:1.72 !important;
}
.pvp-entry-meta{
  display:grid;
  gap:8px;
  align-self:start;
}
.pvp-entry-btn{
  width:100%;
  min-height:42px;
  margin-top:0 !important;
}
@media(max-width:1120px){
  #view-setup .rooms-grid.pvp-entry-grid{
    grid-template-columns:1fr !important;
  }
  #view-setup .pvp-entry-card{
    min-height:0;
  }
}
@media(max-width:760px){
  #view-setup .screen-head{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .setup-battle-switch{
    width:100%;
    min-width:0;
  }
}

/* === V3.5.8 PVP local flow console === */
#view-setup .pvp-console{
  width:100%;
  display:grid;
  gap:14px;
}
#view-setup .pvp-console-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  padding:18px 20px;
  border-radius:20px;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(255,255,255,.10) 82%);
  background:
    radial-gradient(circle at 86% 0,color-mix(in srgb,#89d7ff 12%,transparent 88%),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(0,0,0,.20));
  box-shadow:inset 0 1px 0 rgba(255,248,230,.07),0 18px 42px rgba(0,0,0,.20);
}
#view-setup .pvp-console-head h2{
  margin:3px 0 6px;
  font-size:30px;
  line-height:1.12;
  letter-spacing:0;
}
#view-setup .pvp-console-head p{
  margin:0;
  max-width:880px;
  color:var(--text-soft);
  line-height:1.7;
}
#view-setup .pvp-mode-switch{
  display:inline-grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
  min-width:236px;
  padding:4px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.16);
  background:rgba(0,0,0,.24);
}
#view-setup .pvp-mode-switch button,
#view-setup .pvp-subtabs button{
  border:0;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  background:transparent;
  color:rgba(255,238,210,.72);
  font-weight:1000;
  cursor:pointer;
  white-space:nowrap;
}
#view-setup .pvp-mode-switch button.active,
#view-setup .pvp-subtabs button.active{
  color:#241606;
  background:linear-gradient(180deg,#fff0c8,#d7aa63 48%,#9b6729 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.46),0 8px 18px rgba(0,0,0,.22);
}
#view-setup .pvp-summary-strip,
#view-setup .pvp-safety-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
#view-setup .pvp-summary-strip > div,
#view-setup .pvp-safety-strip span{
  min-width:0;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.18));
  padding:10px 12px;
}
#view-setup .pvp-summary-strip label{
  display:block;
  color:var(--muted);
  font-size:12px;
  margin-bottom:5px;
}
#view-setup .pvp-summary-strip strong{
  display:block;
  color:#fff2d6;
  font-size:16px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#view-setup .pvp-safety-strip span{
  color:#ddcfb8;
  text-align:center;
  font-size:13px;
  font-weight:800;
}
#view-setup .pvp-console-grid{
  display:grid;
  grid-template-columns:minmax(340px,.82fr) minmax(0,1.42fr);
  gap:14px;
  align-items:stretch;
  min-height:clamp(440px,44vh,600px);
}
#view-setup .pvp-panel{
  min-width:0;
  min-height:100%;
  border-radius:20px;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 18%,rgba(255,255,255,.10) 82%);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(0,0,0,.22));
  box-shadow:inset 0 1px 0 rgba(255,248,230,.06),0 18px 42px rgba(0,0,0,.20);
  padding:16px;
}
#view-setup .pvp-room-panel{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
#view-setup .pvp-flow-panel{
  display:grid;
}
#view-setup .pvp-flow-panel > .pvp-panel-inner,
#view-setup .pvp-flow-panel > .pvp-status-panel{
  min-height:100%;
}
#view-setup .pvp-section-title{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:12px;
}
#view-setup .pvp-section-title h3{
  margin:3px 0 0;
  font-size:22px;
  line-height:1.15;
}
#view-setup .pvp-section-title > span{
  flex:0 0 auto;
  border-radius:999px;
  border:1px solid rgba(137,215,255,.22);
  background:rgba(137,215,255,.08);
  color:#bce9ff;
  font-size:12px;
  font-weight:900;
  padding:7px 10px;
}
#view-setup .pvp-room-list,
#view-setup .pvp-status-lines{
  display:grid;
  gap:8px;
}
#view-setup .pvp-room-panel .pvp-room-list{
  grid-template-rows:repeat(4,minmax(0,1fr));
}
#view-setup .pvp-room-option{
  width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  text-align:left;
  padding:11px 12px;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.11);
  background:rgba(0,0,0,.18);
  color:#f4e4c8;
  cursor:pointer;
  transition:.16s ease;
}
#view-setup .pvp-room-option:hover,
#view-setup .pvp-room-option.active{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 44%,rgba(255,255,255,.14) 56%);
  background:linear-gradient(180deg,color-mix(in srgb,var(--theme-a,#e8c886) 12%,rgba(255,255,255,.05) 88%),rgba(0,0,0,.22));
}
#view-setup .pvp-room-option.locked{
  opacity:.58;
}
#view-setup .pvp-room-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  border:1px solid rgba(255,226,180,.14);
  background:rgba(255,255,255,.055);
  color:#ffe0a4;
  font-size:20px;
  font-weight:1000;
}
#view-setup .pvp-room-main{
  min-width:0;
  display:grid;
  gap:4px;
}
#view-setup .pvp-room-main b,
#view-setup .pvp-room-price strong{
  color:#fff3da;
  font-size:15px;
}
#view-setup .pvp-room-main em,
#view-setup .pvp-room-price em{
  color:var(--muted);
  font-style:normal;
  font-size:12px;
  line-height:1.45;
}
#view-setup .pvp-room-main em{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
#view-setup .pvp-room-price{
  display:grid;
  gap:4px;
  justify-items:end;
  white-space:nowrap;
}
#view-setup .pvp-panel-inner{
  display:grid;
  gap:14px;
}
#view-setup .pvp-flow-copy,
#view-setup .pvp-create-copy p,
#view-setup .pvp-small-note{
  margin:0;
  color:var(--text-soft);
  line-height:1.72;
}
#view-setup .pvp-role-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
#view-setup .pvp-role-btn{
  min-width:0;
  min-height:98px;
  display:grid;
  align-content:start;
  gap:8px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.12);
  background:rgba(0,0,0,.18);
  color:#f2dfc0;
  text-align:left;
  cursor:pointer;
}
#view-setup .pvp-role-btn.active{
  border-color:rgba(137,215,255,.36);
  background:linear-gradient(180deg,rgba(137,215,255,.13),rgba(0,0,0,.18));
}
#view-setup .pvp-role-btn b{
  color:#fff2d8;
  font-size:15px;
}
#view-setup .pvp-role-btn span{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}
#view-setup .pvp-status-lines.compact{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
#view-setup .pvp-main-action{
  width:100%;
  min-height:46px;
}
#view-setup .pvp-status-panel{
  display:grid;
  gap:16px;
}
#view-setup .pvp-status-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
}
#view-setup .pvp-status-head h3{
  margin:3px 0 0;
  font-size:24px;
  line-height:1.16;
}
#view-setup .pvp-status-head strong{
  color:#bce9ff;
}
#view-setup .pvp-pulse-dot{
  width:16px;
  height:16px;
  border-radius:50%;
  background:#78d8ff;
  box-shadow:0 0 0 8px rgba(120,216,255,.10),0 0 24px rgba(120,216,255,.38);
}
#view-setup .pvp-pulse-dot.ready{
  background:#97ffc6;
  box-shadow:0 0 0 8px rgba(151,255,198,.10),0 0 24px rgba(151,255,198,.34);
}
#view-setup .pvp-progress{
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.08);
}
#view-setup .pvp-progress i{
  display:block;
  width:42%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#78d8ff,#e8c886);
  animation:pvpProgress 1.4s ease-in-out infinite alternate;
}
@keyframes pvpProgress{
  from{transform:translateX(0)}
  to{transform:translateX(138%)}
}
#view-setup .pvp-flow-actions,
#view-setup .pvp-ready-actions,
#view-setup .pvp-code-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
#view-setup .pvp-flow-actions .btn,
#view-setup .pvp-ready-actions .btn{
  flex:1 1 160px;
  min-height:42px;
}
#view-setup .pvp-subtabs{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  gap:4px;
  padding:4px;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.14);
  background:rgba(0,0,0,.20);
}
#view-setup .pvp-code-form{
  display:grid;
  gap:8px;
}
#view-setup .pvp-code-form label{
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
#view-setup .pvp-code-input{
  flex:1 1 220px;
  text-transform:uppercase;
  letter-spacing:2px;
  font-weight:1000;
}
#view-setup .pvp-code-display{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(137,215,255,.22);
  background:rgba(137,215,255,.08);
}
#view-setup .pvp-code-display span{
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
#view-setup .pvp-code-display strong{
  color:#fff4dc;
  font-size:28px;
  letter-spacing:4px;
}
#view-setup .pvp-ready-card{
  display:grid;
  gap:14px;
}
#view-setup .pvp-ready-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);
  gap:10px;
  align-items:stretch;
}
#view-setup .pvp-player-seat{
  min-width:0;
  display:grid;
  gap:5px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.12);
  background:rgba(0,0,0,.18);
}
#view-setup .pvp-player-seat.ready{
  border-color:rgba(151,255,198,.26);
  background:linear-gradient(180deg,rgba(151,255,198,.10),rgba(0,0,0,.18));
}
#view-setup .pvp-player-seat span,
#view-setup .pvp-player-seat em{
  color:var(--muted);
  font-style:normal;
  font-size:12px;
}
#view-setup .pvp-player-seat strong{
  color:#fff2da;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#view-setup .pvp-versus{
  display:grid;
  place-items:center;
  border-radius:16px;
  border:1px solid rgba(255,226,180,.12);
  color:#ffe0a4;
  font-weight:1000;
  background:rgba(255,255,255,.04);
}
.pvp-live-panel{
  display:grid;
  gap:12px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(128,210,255,.20);
  background:linear-gradient(180deg,rgba(25,54,73,.48),rgba(12,16,24,.42));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.pvp-live-panel.hidden{display:none}
.pvp-live-head,
.pvp-live-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:center;
}
.pvp-live-head{grid-template-columns:minmax(0,1fr) auto}
.pvp-live-head b,
.pvp-live-head strong{
  display:block;
  color:#f4fbff;
  font-size:13px;
}
.pvp-live-head span,
.pvp-live-meta label,
.pvp-live-seat span,
.pvp-live-seat em{
  color:var(--muted);
  font-size:12px;
  font-style:normal;
}
.pvp-live-head strong{
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(128,210,255,.22);
  background:rgba(128,210,255,.10);
  white-space:nowrap;
}
.pvp-live-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr);
  gap:10px;
}
.pvp-live-seat,
.pvp-live-vs,
.pvp-live-meta span{
  min-width:0;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.20);
}
.pvp-live-seat{
  display:grid;
  gap:5px;
  padding:12px;
}
.pvp-live-seat strong{
  overflow:hidden;
  color:#fff4da;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pvp-live-vs{
  display:grid;
  place-items:center;
  color:#9edbff;
  font-weight:1000;
}
.pvp-live-meta span{
  display:grid;
  gap:4px;
  padding:10px;
}
.pvp-live-meta b{
  overflow:hidden;
  color:#f4fbff;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media(max-width:1120px){
  #view-setup .pvp-console-grid{
    grid-template-columns:1fr;
  }
  #view-setup .pvp-summary-strip,
  #view-setup .pvp-safety-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  #view-setup .pvp-console-head{
    grid-template-columns:1fr;
    padding:16px;
    border-radius:18px;
  }
  #view-setup .pvp-console-head h2{
    font-size:26px;
  }
  #view-setup .pvp-console-grid{
    min-height:0;
  }
  #view-setup .pvp-mode-switch{
    width:100%;
    min-width:0;
  }
  #view-setup .pvp-summary-strip,
  #view-setup .pvp-safety-strip,
  #view-setup .pvp-status-lines.compact,
  #view-setup .pvp-role-grid{
    grid-template-columns:1fr;
  }
  #view-setup .pvp-panel{
    padding:14px;
    border-radius:18px;
  }
  #view-setup .pvp-room-option{
    grid-template-columns:38px minmax(0,1fr);
  }
  #view-setup .pvp-room-price{
    grid-column:2;
    justify-items:start;
  }
  #view-setup .pvp-status-head{
    grid-template-columns:auto minmax(0,1fr);
  }
  #view-setup .pvp-status-head strong{
    grid-column:2;
  }
  #view-setup .pvp-ready-grid{
    grid-template-columns:1fr;
  }
  .pvp-live-grid,
  .pvp-live-meta{
    grid-template-columns:1fr;
  }
  .pvp-live-vs{
    min-height:34px;
  }
  #view-setup .pvp-versus{
    min-height:34px;
  }
  #view-setup .pvp-code-display{
    grid-template-columns:1fr;
  }
  #view-setup .pvp-code-display strong{
    font-size:24px;
  }
}

/* === V3.5.8 PVP opacity pass: match setup room cards === */
#view-setup .pvp-console-head,
#view-setup .pvp-panel,
#view-setup .pvp-summary-strip > div{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 26%,rgba(255,255,255,.08) 74%) !important;
  background:
    radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--theme-a,#e8c886) 13%,transparent 87%),transparent 34%),
    linear-gradient(180deg,rgba(42,32,20,.58),rgba(6,5,4,.70)) !important;
  box-shadow:0 16px 38px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
#view-setup .pvp-safety-strip span,
#view-setup .pvp-room-option,
#view-setup .pvp-role-btn,
#view-setup .pvp-player-seat,
#view-setup .pvp-versus{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 24%,rgba(255,255,255,.08) 76%) !important;
  background:
    radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--theme-a,#e8c886) 10%,transparent 90%),transparent 34%),
    linear-gradient(180deg,rgba(34,26,17,.50),rgba(5,4,4,.62)) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.07) !important;
}
#view-setup .pvp-room-option:hover,
#view-setup .pvp-room-option.active{
  border-color:color-mix(in srgb,var(--theme-a,#e8c886) 42%,rgba(255,255,255,.12) 58%) !important;
  background:
    radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--theme-a,#e8c886) 16%,transparent 84%),transparent 34%),
    linear-gradient(180deg,rgba(62,43,22,.62),rgba(7,6,5,.74)) !important;
}
#view-setup .pvp-role-btn.active{
  border-color:rgba(137,215,255,.36) !important;
  background:
    radial-gradient(circle at 88% 14%,rgba(137,215,255,.11),transparent 32%),
    linear-gradient(180deg,rgba(18,28,29,.58),rgba(4,4,5,.70)) !important;
}
#view-setup .pvp-player-seat.ready{
  border-color:rgba(151,255,198,.28) !important;
  background:
    radial-gradient(circle at 88% 14%,rgba(151,255,198,.11),transparent 32%),
    linear-gradient(180deg,rgba(18,31,20,.58),rgba(4,4,5,.70)) !important;
}
#view-setup .pvp-mode-switch,
#view-setup .pvp-subtabs,
#view-setup .pvp-progress{
  background:rgba(10,8,7,.48) !important;
}
#view-setup .pvp-code-display{
  background:
    radial-gradient(circle at 88% 14%,rgba(137,215,255,.10),transparent 32%),
    linear-gradient(180deg,rgba(18,28,29,.56),rgba(4,4,5,.68)) !important;
}
#view-setup .pvp-safety-strip{
  display:none !important;
}

/* === V3.5.8 PVP capsule controls polish === */
#view-setup .setup-battle-switch,
#view-setup .pvp-mode-switch,
#view-setup .pvp-subtabs{
  gap:5px !important;
  padding:5px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 38%,rgba(255,255,255,.12) 62%) !important;
  background:linear-gradient(180deg,rgba(20,18,15,.96),rgba(7,7,7,.96)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 12px 28px rgba(0,0,0,.32) !important;
}
#view-setup .setup-battle-tab,
#view-setup .pvp-mode-switch button,
#view-setup .pvp-subtabs button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-height:38px !important;
  padding:0 15px !important;
  border:1px solid rgba(255,226,180,.14) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03)) !important;
  color:rgba(255,240,218,.88) !important;
  font-size:14px !important;
  font-weight:1000 !important;
  letter-spacing:0 !important;
  word-spacing:0 !important;
  text-indent:0 !important;
  line-height:1 !important;
  text-align:center !important;
  text-shadow:0 1px 0 rgba(0,0,0,.42) !important;
}
#view-setup .capsule-ico{
  flex:0 0 22px;
  width:22px;
  min-width:22px;
  height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.22);
  background:linear-gradient(180deg,rgba(255,248,230,.14),rgba(255,248,230,.05));
  color:#ffe6b0;
  font-size:12px;
  font-weight:1000;
  line-height:1;
  letter-spacing:0 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
}
#view-setup .capsule-label{
  display:inline-block;
  min-width:0;
  letter-spacing:0 !important;
  word-spacing:0 !important;
  line-height:1;
}
#view-setup .setup-battle-tab:hover,
#view-setup .pvp-mode-switch button:hover,
#view-setup .pvp-subtabs button:hover{
  color:#fff9eb !important;
  border-color:rgba(255,226,180,.28) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05)) !important;
}
#view-setup .setup-battle-tab.active,
#view-setup .pvp-mode-switch button.active,
#view-setup .pvp-subtabs button.active{
  color:#241606 !important;
  border-color:rgba(255,245,220,.72) !important;
  background:linear-gradient(180deg,#fff4cf 0%,#e0b465 48%,#a46d2a 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62),0 0 0 1px rgba(255,226,180,.24),0 10px 24px rgba(0,0,0,.30),0 0 22px rgba(224,180,101,.28) !important;
  text-shadow:none !important;
}
#view-setup .setup-battle-tab.active .capsule-ico,
#view-setup .pvp-mode-switch button.active .capsule-ico,
#view-setup .pvp-subtabs button.active .capsule-ico{
  color:#241606;
  border-color:rgba(36,22,6,.28);
  background:rgba(36,22,6,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20);
}

/* === V3.5.8 PVP flow focus pass === */
#view-setup.setup-battle-pvp .pvp-flow-panel{
  background:
    radial-gradient(circle at 86% 12%,rgba(216,168,82,.10),transparent 30%),
    linear-gradient(180deg,rgba(36,28,22,.82),rgba(8,7,6,.88)) !important;
}
#view-setup .pvp-flow-panel > .pvp-panel-inner{
  gap:12px !important;
  align-content:start !important;
}
#view-setup .pvp-role-grid{
  gap:10px !important;
  align-items:stretch !important;
}
#view-setup .pvp-role-btn{
  position:relative !important;
  overflow:hidden !important;
  min-height:88px !important;
  padding:15px 16px 14px !important;
  align-content:center !important;
  gap:7px !important;
  border-radius:15px !important;
  border-color:rgba(255,226,180,.22) !important;
  background:
    linear-gradient(90deg,rgba(255,226,180,.08),transparent 34%),
    linear-gradient(180deg,rgba(35,27,20,.82),rgba(8,7,6,.90)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 22px rgba(0,0,0,.18) !important;
}
#view-setup .pvp-role-btn::before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:4px;
  border-radius:0 999px 999px 0;
  background:#dfb467;
  opacity:.62;
}
#view-setup .pvp-role-btn.role-auto::before{background:#78d8ff}
#view-setup .pvp-role-btn.role-challenger::before{background:#dfb467}
#view-setup .pvp-role-btn.role-banker::before{background:#f3cba1}
#view-setup .pvp-role-btn b{
  position:relative;
  z-index:1;
  margin:0 !important;
  color:#fff3db !important;
  font-size:16px !important;
  line-height:1.18 !important;
}
#view-setup .pvp-role-btn span{
  position:relative;
  z-index:1;
  max-width:32ch;
  color:rgba(238,224,202,.74) !important;
  font-size:12px !important;
  line-height:1.45 !important;
}
#view-setup .pvp-role-btn.active{
  transform:translateY(-2px);
  border-color:rgba(255,232,185,.58) !important;
  outline:1px solid rgba(255,226,180,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 14px 28px rgba(0,0,0,.26),0 0 22px rgba(223,180,103,.18) !important;
}
#view-setup .pvp-role-btn.role-auto.active{
  background:
    radial-gradient(circle at 88% 18%,rgba(120,216,255,.18),transparent 30%),
    linear-gradient(180deg,rgba(25,43,46,.88),rgba(6,7,7,.92)) !important;
  border-color:rgba(120,216,255,.48) !important;
}
#view-setup .pvp-role-btn.role-challenger.active{
  background:
    radial-gradient(circle at 88% 18%,rgba(223,180,103,.22),transparent 30%),
    linear-gradient(180deg,rgba(58,39,18,.88),rgba(8,6,5,.92)) !important;
}
#view-setup .pvp-role-btn.role-banker.active{
  background:
    radial-gradient(circle at 88% 18%,rgba(243,203,161,.20),transparent 30%),
    linear-gradient(180deg,rgba(52,34,25,.88),rgba(8,6,5,.92)) !important;
}
#view-setup .pvp-role-btn.active::before{
  top:8px;
  bottom:8px;
  width:5px;
  opacity:1;
  box-shadow:0 0 18px currentColor;
}
#view-setup .pvp-status-lines.compact{
  gap:8px !important;
  margin-top:0 !important;
}
#view-setup .pvp-status-lines.compact .room-line{
  min-height:34px !important;
  padding:6px 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,226,180,.18) !important;
  background:linear-gradient(180deg,rgba(30,23,17,.76),rgba(8,7,6,.86)) !important;
}
#view-setup .pvp-status-lines.compact .room-line label{
  margin:0 !important;
  color:rgba(238,224,202,.70) !important;
  font-size:12px !important;
  line-height:1 !important;
}
#view-setup .pvp-status-lines.compact .room-line strong{
  color:#fff2d8 !important;
  font-size:14px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
#view-setup .pvp-flow-panel .pvp-main-action{
  justify-self:center !important;
  width:min(460px,100%) !important;
  min-height:40px !important;
  height:42px !important;
  padding:0 22px !important;
  margin-top:2px !important;
  border-radius:13px !important;
  font-size:14px !important;
  box-shadow:0 10px 22px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.38) !important;
}
#view-setup .pvp-room-option{
  position:relative !important;
  overflow:hidden !important;
}
#view-setup .pvp-room-option.active{
  transform:translateX(3px);
  border-color:rgba(255,226,180,.62) !important;
  outline:1px solid rgba(255,226,180,.32);
  background:
    radial-gradient(circle at 88% 14%,rgba(224,180,101,.18),transparent 34%),
    linear-gradient(180deg,rgba(61,43,22,.84),rgba(8,7,6,.92)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 14px 28px rgba(0,0,0,.26),0 0 24px rgba(224,180,101,.18) !important;
}
#view-setup .pvp-room-option.active::before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:5px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg,#fff1c6,#d9a95e);
  box-shadow:0 0 18px rgba(224,180,101,.45);
}
#view-setup .pvp-room-option.active .pvp-room-icon{
  border-color:rgba(255,238,198,.52) !important;
  background:linear-gradient(180deg,#fff0c4,#bf8540) !important;
  color:#211406 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.40),0 8px 18px rgba(0,0,0,.22) !important;
}
#view-setup .setup-battle-switch,
#view-setup .pvp-mode-switch,
#view-setup .pvp-subtabs{
  background:linear-gradient(180deg,#17130f,#050505) !important;
  border-color:rgba(255,226,180,.42) !important;
}
#view-setup .setup-battle-tab,
#view-setup .pvp-mode-switch button,
#view-setup .pvp-subtabs button{
  min-height:36px !important;
  gap:8px !important;
}
#view-setup .capsule-ico{
  font-size:11px !important;
  letter-spacing:0 !important;
}

/* === V3.5.8 PVP compact labels and action polish === */
#view-setup .pvp-mode-switch .capsule-ico{
  width:24px !important;
  min-width:24px !important;
  flex-basis:24px !important;
  font-size:10px !important;
}
#view-setup .pvp-room-option{
  grid-template-columns:38px minmax(0,1fr) minmax(70px,auto) !important;
  gap:10px !important;
  padding:9px 11px !important;
}
#view-setup .pvp-room-icon{
  width:36px !important;
  height:36px !important;
  border-radius:12px !important;
  font-size:15px !important;
  letter-spacing:0 !important;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,245,216,.26),transparent 42%),
    linear-gradient(180deg,rgba(255,232,180,.13),rgba(0,0,0,.18)) !important;
}
#view-setup .pvp-room-option.active .pvp-room-icon{
  font-size:15px !important;
}
#view-setup .pvp-room-main{
  gap:3px !important;
}
#view-setup .pvp-room-main b,
#view-setup .pvp-room-price strong{
  font-size:14px !important;
}
#view-setup .pvp-room-main em,
#view-setup .pvp-room-price em{
  font-size:11.5px !important;
  line-height:1.35 !important;
}
#view-setup .pvp-role-btn{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  min-height:80px !important;
  padding:12px 13px !important;
  align-items:center !important;
  align-content:center !important;
  gap:10px !important;
}
#view-setup .pvp-role-icon{
  position:relative;
  z-index:1;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:11px;
  border:1px solid rgba(255,226,180,.18);
  background:rgba(255,255,255,.055);
  color:#ffe0a4;
  font-style:normal;
  font-size:14px;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
#view-setup .pvp-role-btn.active .pvp-role-icon{
  border-color:rgba(255,232,185,.46);
  background:linear-gradient(180deg,rgba(255,237,199,.18),rgba(255,237,199,.06));
  color:#fff0c2;
}
#view-setup .pvp-role-copy{
  position:relative;
  z-index:1;
  min-width:0;
  display:grid !important;
  gap:4px !important;
}
#view-setup .pvp-role-btn .pvp-role-copy b{
  font-size:15px !important;
}
#view-setup .pvp-role-btn .pvp-role-copy span{
  max-width:none !important;
  font-size:11.5px !important;
  line-height:1.38 !important;
}
#view-setup .pvp-stat-row,
#view-setup .pvp-match-stats{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:6px !important;
}
#view-setup .pvp-stat-row .room-line,
#view-setup .pvp-match-stats .room-line{
  min-height:32px !important;
  padding:6px 8px !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  gap:8px !important;
  align-items:center !important;
  justify-content:normal !important;
}
#view-setup .pvp-stat-row .room-line label,
#view-setup .pvp-match-stats .room-line label{
  font-size:11px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
#view-setup .pvp-stat-row .room-line strong,
#view-setup .pvp-match-stats .room-line strong{
  min-width:0 !important;
  justify-self:end !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-size:13px !important;
  white-space:nowrap !important;
}
#view-setup .pvp-flow-panel .pvp-main-action{
  width:min(320px,100%) !important;
  height:40px !important;
  min-height:40px !important;
  padding:0 18px !important;
  gap:8px !important;
}
#view-setup .pvp-flow-panel .pvp-main-action .ico{
  min-width:22px;
  font-size:10px;
  letter-spacing:0;
}
#view-setup .pvp-flow-actions{
  justify-content:center !important;
}
#view-setup .pvp-flow-actions .pvp-secondary-action{
  flex:0 0 auto !important;
  width:min(220px,100%) !important;
  min-height:38px !important;
  height:38px !important;
  padding:0 18px !important;
}

/* === V3.5.8 skin/table cards aligned with compact shop cards === */
#view-shop #skinShopGrid,
#view-shop #tableShopGrid{
  grid-template-columns:repeat(auto-fit,minmax(215px,1fr)) !important;
  grid-auto-rows:max-content !important;
  gap:9px !important;
  align-content:start !important;
  align-items:start !important;
}
#view-shop #skinShopGrid .shop-item,
#view-shop #tableShopGrid .shop-item{
  min-height:0 !important;
  height:auto !important;
  align-self:start !important;
  padding:10px !important;
  gap:7px !important;
  border-radius:15px !important;
}
#view-shop #skinShopGrid .theme-thumb,
#view-shop #tableShopGrid .theme-thumb{
  height:78px !important;
  border-radius:12px !important;
}
#view-shop #skinShopGrid .shop-meta-row,
#view-shop #tableShopGrid .shop-meta-row{
  gap:6px !important;
  align-items:center !important;
}
#view-shop #skinShopGrid .shop-type-pill,
#view-shop #skinShopGrid .shop-state-pill,
#view-shop #tableShopGrid .shop-type-pill,
#view-shop #tableShopGrid .shop-state-pill{
  min-height:22px !important;
  padding:4px 7px !important;
  font-size:10.5px !important;
  line-height:1 !important;
  letter-spacing:.15px !important;
}
#view-shop #skinShopGrid .shop-head-copy,
#view-shop #tableShopGrid .shop-head-copy{
  gap:3px !important;
}
#view-shop #skinShopGrid h4,
#view-shop #tableShopGrid h4{
  font-size:15.5px !important;
  line-height:1.08 !important;
}
#view-shop #skinShopGrid .shop-subtitle,
#view-shop #tableShopGrid .shop-subtitle{
  font-size:10.5px !important;
  line-height:1.2 !important;
  letter-spacing:.55px !important;
}
#view-shop #skinShopGrid .shop-price,
#view-shop #tableShopGrid .shop-price{
  font-size:11.5px !important;
  line-height:1.15 !important;
}
#view-shop #skinShopGrid .shop-item-actions,
#view-shop #tableShopGrid .shop-item-actions{
  display:grid !important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr) !important;
  gap:6px !important;
  margin:0 !important;
  align-self:end !important;
}
#view-shop #skinShopGrid .shop-item-actions .btn,
#view-shop #tableShopGrid .shop-item-actions .btn{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  flex:initial !important;
  min-height:36px !important;
  height:auto !important;
  padding:6px 8px !important;
  border-radius:10px !important;
  font-size:12.5px !important;
  line-height:1.1 !important;
}
#view-shop #skinShopGrid .shop-item-actions .shop-buy-btn,
#view-shop #tableShopGrid .shop-item-actions .shop-buy-btn{
  display:grid !important;
  grid-template-columns:auto auto minmax(0,1fr) !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  gap:6px !important;
  white-space:nowrap !important;
}
#view-shop #skinShopGrid .shop-item-actions .shop-buy-btn .shop-btn-label,
#view-shop #tableShopGrid .shop-item-actions .shop-buy-btn .shop-btn-label{
  min-width:max-content !important;
}
#view-shop #skinShopGrid .shop-item-actions .shop-buy-btn .shop-btn-price,
#view-shop #tableShopGrid .shop-item-actions .shop-buy-btn .shop-btn-price{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-size:11.5px !important;
  letter-spacing:0 !important;
}

/* === PVP real-match timing and compact actions === */
#view-setup .pvp-timing-strip{
  width:max-content !important;
  max-width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(132px,max-content)) !important;
  gap:8px !important;
  align-items:center !important;
}
#view-setup .pvp-timing-strip span{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:auto auto !important;
  align-items:center !important;
  gap:8px !important;
  min-height:34px !important;
  padding:6px 10px !important;
  border-radius:12px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 22%,rgba(255,255,255,.08) 78%) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.18)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
#view-setup .pvp-timing-strip label{
  color:var(--muted) !important;
  font-size:11px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
#view-setup .pvp-timing-strip strong{
  color:#fff0c8 !important;
  font-size:13px !important;
  font-weight:1000 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
#view-setup .pvp-ready-actions,
#view-setup .pvp-flow-actions{
  justify-content:flex-start !important;
  align-items:center !important;
}
#view-setup .pvp-ready-actions .btn,
#view-setup .pvp-flow-actions .btn,
#view-setup .pvp-code-row .btn{
  flex:0 0 auto !important;
  width:auto !important;
  max-width:100% !important;
  min-height:38px !important;
  height:38px !important;
  padding:0 16px !important;
}
#view-setup .pvp-ready-actions .btn-secondary{
  min-width:128px !important;
}
#view-setup .pvp-ready-actions .btn-primary{
  min-width:168px !important;
}
#view-setup .pvp-flow-actions .btn{
  min-width:118px !important;
}
#view-setup .pvp-flow-panel .pvp-main-action{
  justify-self:start !important;
  width:auto !important;
  min-width:168px !important;
  max-width:240px !important;
}
@media(max-width:760px){
  #view-setup .pvp-timing-strip{
    width:100% !important;
    grid-template-columns:1fr !important;
  }
  #view-setup .pvp-timing-strip span{
    grid-template-columns:auto minmax(0,1fr) !important;
  }
  #view-setup .pvp-timing-strip strong{
    justify-self:end !important;
  }
  #view-setup .pvp-ready-actions .btn,
  #view-setup .pvp-flow-actions .btn,
  #view-setup .pvp-code-row .btn,
  #view-setup .pvp-flow-panel .pvp-main-action{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
}

/* === Final overrides: setup rule notes and PVP action sizing === */
#view-setup .setup-rule-panel{
  grid-column:1 / -1 !important;
  min-width:0 !important;
  border-radius:18px !important;
  border:1px solid rgba(255,226,180,.18) !important;
  background:
    radial-gradient(circle at 88% 0,rgba(255,226,180,.10),transparent 30%),
    linear-gradient(180deg,rgba(27,21,15,.72),rgba(8,7,6,.78)) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.07),0 14px 30px rgba(0,0,0,.18) !important;
  padding:14px 16px !important;
}
#view-setup .setup-rule-panel h3{
  margin:3px 0 10px !important;
  font-size:18px !important;
  line-height:1.2 !important;
}
#view-setup .setup-rule-panel ul{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:7px 14px !important;
}
#view-setup .setup-rule-panel li{
  position:relative !important;
  padding-left:13px !important;
  color:rgba(244,235,220,.82) !important;
  font-size:12.5px !important;
  line-height:1.55 !important;
}
#view-setup .setup-rule-panel li::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:.68em !important;
  width:5px !important;
  height:5px !important;
  border-radius:50% !important;
  background:linear-gradient(180deg,#fff0c5,#d5a55d) !important;
  box-shadow:0 0 10px rgba(223,181,104,.38) !important;
}
#view-setup .setup-rule-panel b{
  color:#fff1d0 !important;
}
#view-setup .rooms-grid:not(.pvp-entry-grid){
  grid-template-rows:auto repeat(2,var(--setup-row-h)) !important;
  grid-auto-rows:var(--setup-row-h) !important;
}
#view-setup .pvp-console .setup-rule-panel{
  grid-column:auto !important;
}
#view-setup .pvp-ready-actions{
  justify-content:center !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
#view-setup .pvp-ready-actions .btn{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:180px !important;
  max-width:260px !important;
  height:40px !important;
  min-height:40px !important;
  padding:0 18px !important;
}
#view-setup .pvp-flow-actions .btn:not(.pvp-secondary-action){
  flex:0 0 auto !important;
  width:auto !important;
  min-width:180px !important;
  max-width:260px !important;
}
@media(max-width:900px){
  #view-setup .setup-rule-panel ul{
    grid-template-columns:1fr !important;
  }
  #view-setup .rooms-grid:not(.pvp-entry-grid){
    grid-template-rows:none !important;
    grid-auto-rows:auto !important;
  }
}

/* === Final setup rules overview placement === */
#view-setup .setup-rules-overview{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:12px 0 14px !important;
}
#view-setup .setup-rules-overview .setup-rule-panel{
  grid-column:auto !important;
  min-height:100% !important;
  padding:13px 15px !important;
}
#view-setup .setup-rules-overview .setup-rule-panel.active{
  border-color:rgba(255,226,180,.48) !important;
  background:
    radial-gradient(circle at 88% 0,rgba(255,226,180,.16),transparent 34%),
    linear-gradient(180deg,rgba(50,36,20,.78),rgba(8,7,6,.82)) !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.10),0 16px 34px rgba(0,0,0,.22),0 0 22px rgba(223,181,104,.10) !important;
}
#view-setup .setup-rules-overview .pvp-rule-panel.active{
  border-color:rgba(139,216,255,.42) !important;
  background:
    radial-gradient(circle at 88% 0,rgba(127,213,255,.14),transparent 34%),
    linear-gradient(180deg,rgba(28,42,46,.76),rgba(8,7,6,.82)) !important;
}
#view-setup .rooms-grid:not(.pvp-entry-grid){
  grid-template-rows:repeat(2,var(--setup-row-h)) !important;
  grid-auto-rows:var(--setup-row-h) !important;
}
@media(max-width:1100px){
  #view-setup .setup-rules-overview{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:900px){
  #view-setup .rooms-grid:not(.pvp-entry-grid){
    grid-template-rows:none !important;
    grid-auto-rows:auto !important;
  }
}

/* === Final setup public notice board === */
#view-setup .setup-rules-overview{
  display:block !important;
  margin:10px 0 14px !important;
}
#view-setup .setup-rules-board{
  width:100%;
  min-height:58px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:10px 14px;
  border:1px solid rgba(255,226,180,.34);
  border-radius:16px;
  background:
    linear-gradient(90deg,rgba(64,45,22,.82),rgba(15,12,9,.86)),
    radial-gradient(circle at 90% 0,rgba(255,226,180,.18),transparent 34%);
  box-shadow:inset 0 1px 0 rgba(255,248,230,.10),0 14px 32px rgba(0,0,0,.20);
  color:#f7ead0;
  cursor:pointer;
  text-align:left;
}
#view-setup .setup-rules-board:hover{
  border-color:rgba(255,226,180,.55);
  transform:translateY(-1px);
}
#view-setup .setup-rules-board-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:linear-gradient(180deg,#fff0c8,#c89045);
  color:#231405;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 8px 18px rgba(0,0,0,.20);
}
#view-setup .setup-rules-board-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
#view-setup .setup-rules-board-copy b{
  font-size:17px;
  line-height:1.1;
}
#view-setup .setup-rules-board-copy em{
  color:rgba(244,235,220,.76);
  font-style:normal;
  font-size:12.5px;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#view-setup .setup-rules-board-current,
#view-setup .setup-rules-board-action{
  min-height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:1000;
  white-space:nowrap;
}
#view-setup .setup-rules-board-current{
  border:1px solid rgba(255,226,180,.20);
  background:rgba(255,255,255,.06);
  color:#fff0cf;
}
#view-setup .setup-rules-board-action{
  background:linear-gradient(180deg,#fff1ca,#d8aa62 52%,#99642a);
  color:#211307;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42);
}
#view-setup .setup-rules-board.is-pvp{
  border-color:rgba(139,216,255,.32);
  background:
    linear-gradient(90deg,rgba(30,48,52,.82),rgba(15,12,9,.86)),
    radial-gradient(circle at 90% 0,rgba(127,213,255,.16),transparent 34%);
}
.setup-rules-modal-card{
  width:min(1080px,calc(100vw - 34px));
}
.setup-rules-modal-body{
  margin-top:14px;
}
.setup-rules-modal-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.setup-rules-modal-grid .setup-rule-panel{
  min-height:100%;
}
@media(max-width:900px){
  #view-setup .setup-rules-board{
    grid-template-columns:38px minmax(0,1fr);
  }
  #view-setup .setup-rules-board-current,
  #view-setup .setup-rules-board-action{
    grid-column:2;
    justify-self:start;
  }
  .setup-rules-modal-grid{
    grid-template-columns:1fr;
  }
}

/* === V3.5.8 compact setup rules icon and readable modal === */
#view-setup{
  position:relative;
}
#view-setup .setup-rules-overview{
  position:absolute !important;
  z-index:24 !important;
  top:92px !important;
  right:32px !important;
  display:block !important;
  width:auto !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
  pointer-events:none !important;
}
#view-setup .setup-rules-icon-btn{
  pointer-events:auto;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,238,204,.58);
  border-radius:12px;
  background:linear-gradient(180deg,#fff1c8,#d9aa62 52%,#9a6429);
  color:#211306;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.52),0 12px 26px rgba(0,0,0,.28);
  cursor:pointer;
}
#view-setup .setup-rules-icon-btn span{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:8px;
  background:rgba(38,21,7,.10);
  font-size:15px;
  font-weight:1000;
  line-height:1;
}
#view-setup .setup-rules-icon-btn:hover{
  transform:translateY(-1px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.60),0 14px 30px rgba(0,0,0,.32),0 0 18px rgba(231,181,92,.22);
}
#view-setup .setup-rules-icon-btn.is-pvp{
  border-color:rgba(159,224,255,.52);
  background:linear-gradient(180deg,#e5f7ff,#94d4ef 48%,#437b93);
  color:#071721;
}
.setup-rules-modal-card{
  width:min(640px,calc(100vw - 34px)) !important;
  padding:22px !important;
  border-radius:24px !important;
  text-align:left !important;
}
.setup-rules-modal-card .modal-title{
  font-size:28px !important;
  line-height:1.14 !important;
  text-align:center !important;
}
.setup-rules-modal-card .modal-copy{
  max-width:none !important;
  margin:6px 0 14px !important;
  text-align:center !important;
  line-height:1.55 !important;
}
.setup-rules-modal-body{
  margin-top:0 !important;
}
.setup-rules-modal-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
  padding:5px;
  border:1px solid rgba(255,226,180,.16);
  border-radius:999px;
  background:rgba(0,0,0,.26);
}
.setup-rules-modal-tabs button{
  min-height:38px;
  border:0;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:transparent;
  color:rgba(244,235,220,.70);
  font-size:13px;
  font-weight:1000;
  cursor:pointer;
}
.setup-rules-modal-tabs button span{
  min-width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:999px;
  border:1px solid rgba(255,226,180,.18);
  background:rgba(255,255,255,.06);
  font-size:10px;
  letter-spacing:0;
}
.setup-rules-modal-tabs button.active{
  color:#241506;
  background:linear-gradient(180deg,#fff1c8,#d7a95f 52%,#9b672a);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 8px 18px rgba(0,0,0,.22);
}
.setup-rules-brief-card{
  margin-top:12px;
  border:1px solid rgba(255,226,180,.18);
  border-radius:18px;
  background:
    radial-gradient(circle at 86% 0,rgba(255,226,180,.10),transparent 34%),
    linear-gradient(180deg,rgba(35,27,20,.86),rgba(9,7,6,.92));
  box-shadow:inset 0 1px 0 rgba(255,248,230,.07);
  padding:16px;
}
.setup-rules-brief-card.is-pvp{
  border-color:rgba(139,216,255,.26);
  background:
    radial-gradient(circle at 86% 0,rgba(127,213,255,.11),transparent 34%),
    linear-gradient(180deg,rgba(25,38,42,.86),rgba(8,8,8,.92));
}
.setup-rules-brief-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:12px;
}
.setup-rules-brief-icon{
  flex:0 0 auto;
  min-width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  border:1px solid rgba(255,226,180,.22);
  background:rgba(255,255,255,.07);
  color:#fff0cf;
  font-size:11px;
  font-weight:1000;
  letter-spacing:0;
}
.setup-rules-brief-head h3{
  margin:2px 0 0;
  font-size:22px;
  line-height:1.12;
}
.setup-rules-brief-list{
  display:grid;
  gap:8px;
}
.setup-rules-brief-row{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:9px 10px;
  border:1px solid rgba(255,226,180,.10);
  border-radius:12px;
  background:rgba(255,255,255,.035);
}
.setup-rules-brief-row b{
  color:#fff0cf;
  font-size:13px;
  line-height:1.45;
}
.setup-rules-brief-row span{
  color:rgba(244,235,220,.82);
  font-size:13px;
  line-height:1.55;
}
@media(max-width:760px){
  #view-setup .setup-rules-overview{
    top:18px !important;
    right:18px !important;
  }
  #view-setup .setup-rules-icon-btn{
    width:38px;
    height:38px;
    border-radius:11px;
  }
  .setup-rules-modal-card{
    padding:18px !important;
  }
  .setup-rules-brief-row{
    grid-template-columns:1fr;
    gap:3px;
  }
}

/* === EOF final PVP matchmaking visual fix v41 === */
#view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner{
  align-content:start !important;
}
#view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner .btn.pvp-main-action{
  justify-self:center !important;
  align-self:center !important;
  width:min(360px,100%) !important;
  min-width:280px !important;
  max-width:360px !important;
  height:50px !important;
  min-height:50px !important;
  padding:0 28px !important;
  margin:10px auto 0 !important;
  border-radius:15px !important;
  font-size:15px !important;
  gap:10px !important;
}
#view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner .btn.pvp-main-action .ico{
  width:30px !important;
  min-width:30px !important;
  font-size:12px !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel{
  min-height:100% !important;
  height:100% !important;
  display:grid !important;
  grid-template-rows:auto auto auto auto auto !important;
  align-content:center !important;
  justify-items:center !important;
  gap:22px !important;
  padding:26px 18px !important;
}
#view-setup.setup-battle-pvp .pvp-matching-panel .pvp-status-head{
  width:min(940px,100%) !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  gap:16px !important;
}
#view-setup.setup-battle-pvp .pvp-matching-panel .pvp-status-head h3{
  font-size:32px !important;
  line-height:1.08 !important;
}
#view-setup.setup-battle-pvp .pvp-matching-panel .pvp-status-head > strong{
  color:#9fe6ff !important;
  font-size:18px !important;
}
#view-setup.setup-battle-pvp .pvp-matching-panel .pvp-pulse-dot{
  width:20px !important;
  height:20px !important;
  box-shadow:0 0 0 10px rgba(120,216,255,.12),0 0 30px rgba(120,216,255,.48) !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-progress{
  width:min(940px,100%) !important;
  height:13px !important;
  border-radius:999px !important;
  overflow:hidden !important;
  background:linear-gradient(90deg,rgba(0,0,0,.46),rgba(255,255,255,.09),rgba(0,0,0,.42)) !important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.58),0 8px 20px rgba(0,0,0,.14) !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-progress i{
  width:34% !important;
  height:100% !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,transparent 0%,#75dcff 18%,#c8f0dc 58%,#ffe0a1 100%) !important;
  animation:pvpProgressSmoothFinal 1.55s linear infinite !important;
  will-change:transform !important;
}
@keyframes pvpProgressSmoothFinal{
  from{transform:translate3d(-130%,0,0)}
  to{transform:translate3d(315%,0,0)}
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-timing-strip{
  width:min(580px,100%) !important;
  max-width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  justify-self:center !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-timing-strip span{
  min-height:64px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  justify-items:center !important;
  align-content:center !important;
  gap:6px !important;
  padding:11px 16px !important;
  border-radius:16px !important;
  background:
    radial-gradient(circle at 78% 0,rgba(255,226,180,.13),transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.22)) !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-timing-strip label{
  font-size:13px !important;
  letter-spacing:.4px !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-timing-strip strong{
  justify-self:center !important;
  color:#fff2d1 !important;
  font-size:19px !important;
  line-height:1.05 !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-match-stats{
  width:min(940px,100%) !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  justify-self:center !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-match-stats .room-line{
  min-height:56px !important;
  padding:11px 16px !important;
  border-radius:16px !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-match-stats .room-line label{
  font-size:12px !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-match-stats .room-line strong{
  font-size:16px !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-flow-actions{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  margin-top:0 !important;
}
#view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-flow-actions .btn.pvp-secondary-action{
  width:min(230px,100%) !important;
  min-width:190px !important;
  height:46px !important;
  min-height:46px !important;
  padding:0 24px !important;
  border-radius:15px !important;
  font-size:14px !important;
}
@media(max-width:760px){
  #view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner .btn.pvp-main-action{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  #view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel{
    align-content:start !important;
    gap:16px !important;
    padding:18px 12px !important;
  }
  #view-setup.setup-battle-pvp .pvp-matching-panel .pvp-status-head h3{
    font-size:24px !important;
  }
  #view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-timing-strip,
  #view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-match-stats{
    grid-template-columns:1fr !important;
  }
  #view-setup.setup-battle-pvp .pvp-status-panel.pvp-matching-panel .pvp-flow-actions .btn.pvp-secondary-action{
    width:100% !important;
    min-width:0 !important;
  }
}

/* === EOF final setup notice and PVP guide fill v42 === */
#view-setup .setup-rules-overview{
  position:static !important;
  z-index:auto !important;
  width:100% !important;
  height:auto !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  margin:-6px 0 14px !important;
  padding:0 !important;
  pointer-events:auto !important;
}
#view-setup .setup-rules-notice-chip{
  position:relative !important;
  pointer-events:auto !important;
  min-width:190px !important;
  min-height:42px !important;
  display:inline-grid !important;
  grid-template-columns:30px minmax(0,1fr) !important;
  align-items:center !important;
  gap:9px !important;
  padding:6px 12px 6px 8px !important;
  border:1px solid rgba(255,226,180,.22) !important;
  border-radius:13px !important;
  background:
    radial-gradient(circle at 88% 0,rgba(255,226,180,.10),transparent 40%),
    linear-gradient(180deg,rgba(38,28,18,.58),rgba(8,7,6,.66)) !important;
  color:#f7ead0 !important;
  box-shadow:inset 0 1px 0 rgba(255,248,230,.08),0 10px 20px rgba(0,0,0,.14) !important;
  cursor:pointer !important;
  text-align:left !important;
}
#view-setup .setup-rules-notice-chip.is-pvp{
  border-color:rgba(142,216,255,.24) !important;
  background:
    radial-gradient(circle at 88% 0,rgba(126,216,255,.10),transparent 40%),
    linear-gradient(180deg,rgba(24,37,41,.58),rgba(8,7,6,.66)) !important;
}
#view-setup .setup-rules-notice-chip:hover{
  transform:translateY(-1px) !important;
  border-color:rgba(255,226,180,.54) !important;
}
#view-setup .setup-rules-notice-icon{
  position:relative !important;
  width:30px !important;
  height:30px !important;
  display:block !important;
  border-radius:10px !important;
  background:linear-gradient(180deg,rgba(255,240,200,.94),rgba(212,164,92,.88)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.44),0 7px 14px rgba(0,0,0,.16) !important;
}
#view-setup .setup-rules-notice-icon::before{
  content:"" !important;
  position:absolute !important;
  left:8px !important;
  top:7px !important;
  width:12px !important;
  height:15px !important;
  border:2px solid #211407 !important;
  border-radius:3px !important;
  background:rgba(255,255,255,.22) !important;
}
#view-setup .setup-rules-notice-icon::after{
  content:"" !important;
  position:absolute !important;
  left:12px !important;
  top:12px !important;
  width:8px !important;
  height:7px !important;
  border-top:2px solid #211407 !important;
  border-bottom:2px solid #211407 !important;
  box-shadow:0 4px 0 -2px #211407 !important;
}
#view-setup .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon{
  background:linear-gradient(180deg,rgba(231,248,255,.94),rgba(144,210,238,.88)) !important;
}
#view-setup .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon::before{
  border-color:#071720 !important;
}
#view-setup .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon::after{
  border-color:#071720 !important;
  box-shadow:0 4px 0 -2px #071720 !important;
}
#view-setup .setup-rules-notice-copy{
  min-width:0 !important;
  display:grid !important;
  gap:3px !important;
}
#view-setup .setup-rules-notice-copy b{
  color:#fff1d0 !important;
  font-size:14px !important;
  line-height:1.1 !important;
}
#view-setup .setup-rules-notice-copy em{
  color:rgba(244,235,220,.72) !important;
  font-style:normal !important;
  font-size:11px !important;
  line-height:1.1 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
#view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner{
  min-height:100% !important;
  grid-template-rows:auto auto auto auto minmax(180px,1fr) !important;
  align-content:stretch !important;
  gap:14px !important;
}
#view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner .pvp-main-action{
  margin-top:2px !important;
}
#view-setup .pvp-guide-panel{
  min-height:188px !important;
  align-self:stretch !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
  gap:12px !important;
  padding:14px !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#e8c886) 20%,rgba(255,255,255,.10) 80%) !important;
  border-radius:18px !important;
  background:
    radial-gradient(circle at 88% 0,rgba(255,226,180,.10),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.20)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
#view-setup .pvp-guide-panel.friend{
  background:
    radial-gradient(circle at 88% 0,rgba(137,215,255,.10),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.20)) !important;
}
#view-setup .pvp-guide-head{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-start !important;
  gap:12px !important;
}
#view-setup .pvp-guide-head h4{
  margin:3px 0 0 !important;
  color:#fff1d0 !important;
  font-size:18px !important;
  line-height:1.14 !important;
}
#view-setup .pvp-guide-head > span{
  flex:0 0 auto !important;
  min-height:28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 10px !important;
  border-radius:999px !important;
  border:1px solid rgba(137,215,255,.24) !important;
  background:rgba(137,215,255,.08) !important;
  color:#bdeaff !important;
  font-size:12px !important;
  font-weight:1000 !important;
}
#view-setup .pvp-guide-steps{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
  align-items:stretch !important;
}
#view-setup .pvp-guide-step{
  min-width:0 !important;
  min-height:86px !important;
  display:grid !important;
  grid-template-rows:24px auto minmax(0,1fr) !important;
  gap:5px !important;
  padding:10px !important;
  border-radius:14px !important;
  border:1px solid rgba(255,226,180,.12) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.18)) !important;
}
#view-setup .pvp-guide-step i{
  width:24px !important;
  height:24px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:9px !important;
  background:linear-gradient(180deg,#fff0c8,#c99645) !important;
  color:#211306 !important;
  font-style:normal !important;
  font-size:12px !important;
  font-weight:1000 !important;
}
#view-setup .pvp-guide-step b{
  color:#fff0cf !important;
  font-size:14px !important;
  line-height:1.1 !important;
}
#view-setup .pvp-guide-step span{
  color:rgba(244,235,220,.72) !important;
  font-size:11.5px !important;
  line-height:1.4 !important;
}
#view-setup .pvp-guide-notes{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}
#view-setup .pvp-guide-notes span{
  min-width:0 !important;
  min-height:34px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:7px 10px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,226,180,.10) !important;
  background:rgba(0,0,0,.16) !important;
}
#view-setup .pvp-guide-notes b{
  color:var(--muted) !important;
  font-size:11px !important;
  white-space:nowrap !important;
}
#view-setup .pvp-guide-notes em{
  min-width:0 !important;
  color:#fff0cf !important;
  font-style:normal !important;
  font-size:12px !important;
  font-weight:1000 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
@media(max-width:980px){
  #view-setup .setup-rules-overview{
    top:18px !important;
    left:auto !important;
    right:18px !important;
  }
  #view-setup .setup-rules-notice-chip{
    min-width:46px !important;
    grid-template-columns:34px !important;
    padding:6px !important;
  }
  #view-setup .setup-rules-notice-copy{
    display:none !important;
  }
  #view-setup .pvp-guide-steps{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:760px){
  #view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner{
    grid-template-rows:auto !important;
  }
  #view-setup .pvp-guide-panel{
    min-height:0 !important;
  }
  #view-setup .pvp-guide-steps,
  #view-setup .pvp-guide-notes{
    grid-template-columns:1fr !important;
  }
}

/* === Final unified setup rules notice and modal colors === */
#view-setup .setup-rules-overview{
  position:static !important;
  z-index:auto !important;
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:-6px 0 14px !important;
  pointer-events:auto !important;
}
#view-setup .setup-rules-notice-chip,
#view-setup .setup-rules-notice-chip.is-pvp{
  min-width:190px !important;
  grid-template-columns:30px minmax(0,1fr) !important;
  padding:6px 12px 6px 8px !important;
  border-color:rgba(255,226,180,.24) !important;
  background:
    radial-gradient(circle at 88% 0,rgba(255,226,180,.10),transparent 40%),
    linear-gradient(180deg,rgba(38,28,18,.58),rgba(8,7,6,.66)) !important;
  color:#f7ead0 !important;
}
#view-setup .setup-rules-notice-icon,
#view-setup .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon{
  background:linear-gradient(180deg,rgba(255,240,200,.94),rgba(212,164,92,.88)) !important;
}
#view-setup .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon::before,
#view-setup .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon::after{
  border-color:#211407 !important;
}
#view-setup .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon::after{
  box-shadow:0 4px 0 -2px #211407 !important;
}
.setup-rules-modal-tabs button.active,
.setup-rules-modal-tabs button.active[aria-selected="true"]{
  color:#241506 !important;
  background:linear-gradient(180deg,#fff1c8,#d7a95f 52%,#9b672a) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 8px 18px rgba(0,0,0,.22) !important;
}
.setup-rules-brief-card,
.setup-rules-brief-card.is-pvp{
  border-color:rgba(255,226,180,.18) !important;
  background:
    radial-gradient(circle at 86% 0,rgba(255,226,180,.10),transparent 34%),
    linear-gradient(180deg,rgba(35,27,20,.86),rgba(9,7,6,.92)) !important;
}
.setup-rules-brief-icon{
  border-color:rgba(255,226,180,.22) !important;
  background:rgba(255,255,255,.07) !important;
  color:#fff0cf !important;
}
#view-setup .daily-relief-card{
  min-width:0 !important;
  max-width:650px !important;
  min-height:48px !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  padding:6px 8px 6px 7px !important;
  border-radius:16px !important;
  border:1px solid rgba(255,226,180,.18) !important;
  background:
    radial-gradient(circle at 8% 0,rgba(255,236,190,.12),transparent 42%),
    linear-gradient(180deg,rgba(38,28,18,.58),rgba(8,7,6,.62)) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,248,230,.05) !important;
}
#view-setup .daily-relief-card.is-eligible{
  border-color:rgba(133,226,169,.34) !important;
  background:
    radial-gradient(circle at 8% 0,rgba(133,226,169,.16),transparent 42%),
    linear-gradient(180deg,rgba(34,49,34,.62),rgba(8,9,7,.66)) !important;
}
#view-setup .daily-relief-icon{
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,#fff0c8,#c99645) !important;
  color:#211306 !important;
  font-size:18px !important;
  font-weight:1000 !important;
  line-height:1 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.46),0 6px 14px rgba(0,0,0,.18) !important;
}
#view-setup .daily-relief-main{
  min-width:0 !important;
  display:grid !important;
  gap:2px !important;
}
#view-setup .daily-relief-main b{
  color:#fff0cf !important;
  font-size:13px !important;
  line-height:1.15 !important;
}
#view-setup .daily-relief-main em{
  min-width:0 !important;
  color:rgba(244,235,220,.72) !important;
  font-style:normal !important;
  font-size:11.5px !important;
  line-height:1.25 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
#view-setup .daily-relief-action{
  min-width:92px !important;
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,241,209,.32) !important;
  background:linear-gradient(180deg,#f4e4c3,#d2b07d 46%,#8f6838) !important;
  color:#211306 !important;
  font-size:12px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
  white-space:nowrap !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 8px 16px rgba(0,0,0,.20) !important;
}
#view-setup .daily-relief-action:disabled{
  cursor:not-allowed !important;
  opacity:.58 !important;
  filter:saturate(.75) !important;
}
@media(max-width:980px){
  #view-setup .setup-rules-overview{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    justify-content:stretch !important;
    margin:0 0 12px !important;
  }
  #view-setup .daily-relief-card{
    max-width:none !important;
    width:100% !important;
  }
  #view-setup .setup-rules-notice-chip,
  #view-setup .setup-rules-notice-chip.is-pvp{
    width:100% !important;
    min-width:0 !important;
    grid-template-columns:30px minmax(0,1fr) !important;
    padding:7px 12px 7px 8px !important;
  }
  #view-setup .setup-rules-notice-copy{
    display:grid !important;
  }
}
@media(max-width:520px){
  #view-setup .daily-relief-card{
    grid-template-columns:30px minmax(0,1fr) !important;
  }
  #view-setup .daily-relief-action{
    grid-column:1 / -1 !important;
    width:100% !important;
  }
  #view-setup .daily-relief-main em{
    white-space:normal !important;
  }
}

/* === PVP setup compact layout v43 === */
#view-setup.setup-battle-pvp > .setup-rules-overview{
  display:none !important;
}
#view-setup.setup-battle-pvp .pvp-console{
  gap:12px !important;
}
#view-setup.setup-battle-pvp .pvp-console-head{
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:18px !important;
  align-items:center !important;
  padding:16px 18px !important;
}
#view-setup.setup-battle-pvp .pvp-console-actions{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
#view-setup.setup-battle-pvp .pvp-console-actions .setup-rules-notice-chip{
  min-width:168px !important;
  min-height:38px !important;
  grid-template-columns:28px minmax(0,1fr) !important;
  padding:5px 10px 5px 7px !important;
  border-radius:12px !important;
  background:
    radial-gradient(circle at 88% 0,rgba(255,226,180,.10),transparent 42%),
    linear-gradient(180deg,rgba(35,27,19,.76),rgba(8,7,6,.82)) !important;
}
#view-setup.setup-battle-pvp .setup-rules-notice-icon,
#view-setup.setup-battle-pvp .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon{
  width:28px !important;
  height:28px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:linear-gradient(180deg,#fff3cd,#d7aa62 54%,#9b672a) !important;
  color:#211407 !important;
  font-family:Arial,sans-serif !important;
  font-size:16px !important;
  font-style:italic !important;
  font-weight:1000 !important;
  line-height:1 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 6px 14px rgba(0,0,0,.18) !important;
}
#view-setup.setup-battle-pvp .setup-rules-notice-icon::before,
#view-setup.setup-battle-pvp .setup-rules-notice-icon::after,
#view-setup.setup-battle-pvp .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon::before,
#view-setup.setup-battle-pvp .setup-rules-notice-chip.is-pvp .setup-rules-notice-icon::after{
  content:none !important;
  display:none !important;
}
#view-setup.setup-battle-pvp .setup-rules-notice-copy b{
  font-size:13px !important;
}
#view-setup.setup-battle-pvp .setup-rules-notice-copy em{
  font-size:10.5px !important;
}
#view-setup.setup-battle-pvp .pvp-mode-switch{
  min-width:224px !important;
}
#view-setup.setup-battle-pvp .pvp-console-grid{
  grid-template-columns:minmax(270px,.56fr) minmax(0,1.56fr) !important;
  gap:14px !important;
  min-height:0 !important;
  align-items:stretch !important;
}
#view-setup.setup-battle-pvp .pvp-panel{
  min-height:100% !important;
  height:100% !important;
  padding:14px !important;
}
#view-setup.setup-battle-pvp .pvp-room-panel{
  align-self:stretch !important;
  grid-template-rows:auto auto !important;
}
#view-setup.setup-battle-pvp .pvp-room-panel .pvp-room-list{
  grid-template-rows:none !important;
  grid-auto-rows:minmax(72px,auto) !important;
  gap:8px !important;
}
#view-setup.setup-battle-pvp .pvp-room-option{
  min-height:72px !important;
  grid-template-columns:34px minmax(0,1fr) minmax(66px,auto) !important;
  gap:9px !important;
  padding:9px 10px !important;
}
#view-setup.setup-battle-pvp .pvp-room-icon{
  width:32px !important;
  height:32px !important;
  border-radius:10px !important;
  font-size:14px !important;
}
#view-setup.setup-battle-pvp .pvp-room-main b,
#view-setup.setup-battle-pvp .pvp-room-price strong{
  font-size:13.5px !important;
}
#view-setup.setup-battle-pvp .pvp-room-main em,
#view-setup.setup-battle-pvp .pvp-room-price em{
  font-size:11px !important;
  line-height:1.28 !important;
}
#view-setup.setup-battle-pvp .pvp-room-main em{
  -webkit-line-clamp:1 !important;
}
#view-setup.setup-battle-pvp .pvp-flow-panel > .pvp-panel-inner{
  grid-template-rows:auto auto auto auto !important;
  min-height:100% !important;
  height:100% !important;
  align-content:start !important;
  gap:13px !important;
}
#view-setup.setup-battle-pvp .pvp-guide-panel{
  display:none !important;
}
@media(max-width:1100px){
  #view-setup.setup-battle-pvp .pvp-console-head{
    grid-template-columns:1fr !important;
  }
  #view-setup.setup-battle-pvp .pvp-console-actions{
    justify-content:space-between !important;
  }
  #view-setup.setup-battle-pvp .pvp-console-actions .setup-rules-notice-chip,
  #view-setup.setup-battle-pvp .pvp-mode-switch{
    flex:1 1 220px !important;
  }
}
@media(max-width:980px){
  #view-setup.setup-battle-pvp .pvp-console-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  #view-setup.setup-battle-pvp .pvp-console-actions .setup-rules-notice-chip{
    width:100% !important;
    min-width:0 !important;
  }
  #view-setup.setup-battle-pvp .pvp-mode-switch{
    width:100% !important;
    min-width:0 !important;
  }
  #view-setup.setup-battle-pvp .pvp-console-grid{
    grid-template-columns:1fr !important;
  }
  #view-setup.setup-battle-pvp .pvp-room-panel .pvp-room-list{
    grid-auto-rows:auto !important;
  }
  #view-setup.setup-battle-pvp .pvp-room-option{
    min-height:0 !important;
    grid-template-columns:34px minmax(0,1fr) !important;
  }
  #view-setup.setup-battle-pvp .pvp-room-price{
    grid-column:2 !important;
    justify-items:start !important;
  }
}

/* === PVE setup room list compact layout v45 === */
#view-setup:not(.setup-battle-pvp){
  --setup-rooms-card-h:132px !important;
  --setup-rooms-gap:10px !important;
  --setup-mode-gap:20px !important;
  --setup-total-h:calc(var(--setup-rooms-card-h) * 4 + var(--setup-rooms-gap) * 3) !important;
  --setup-mode-card-h:calc((var(--setup-total-h) - var(--setup-mode-gap)) / 2) !important;
}
#view-setup:not(.setup-battle-pvp) .setup-grid{
  grid-template-columns:minmax(420px,1.18fr) minmax(430px,.82fr) !important;
  gap:28px !important;
  align-items:start !important;
}
#view-setup:not(.setup-battle-pvp) .mode-stack{
  grid-template-rows:repeat(2,var(--setup-mode-card-h)) !important;
  gap:var(--setup-mode-gap) !important;
}
#view-setup:not(.setup-battle-pvp) .mode-card{
  height:var(--setup-mode-card-h) !important;
  min-height:var(--setup-mode-card-h) !important;
  max-height:var(--setup-mode-card-h) !important;
}
#view-setup:not(.setup-battle-pvp) .mode-card .card-pad{
  padding:22px 26px 20px !important;
}
#view-setup:not(.setup-battle-pvp) .mode-card h3{
  font-size:28px !important;
  margin:8px 0 8px !important;
}
#view-setup:not(.setup-battle-pvp) .mode-card p{
  font-size:14px !important;
  line-height:1.62 !important;
  margin:0 !important;
}
#view-setup:not(.setup-battle-pvp) .mode-foot{
  margin-top:12px !important;
}
#view-setup:not(.setup-battle-pvp) .rooms-grid,
#view-setup:not(.setup-battle-pvp) .rooms-grid:not(.pvp-entry-grid){
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:none !important;
  grid-auto-rows:var(--setup-rooms-card-h) !important;
  gap:var(--setup-rooms-gap) !important;
  align-items:start !important;
  align-content:start !important;
  height:auto !important;
  transform:none !important;
}
#view-setup:not(.setup-battle-pvp) .room-card{
  height:var(--setup-rooms-card-h) !important;
  min-height:0 !important;
  max-height:var(--setup-rooms-card-h) !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .card-pad{
  height:100% !important;
  min-height:0 !important;
  padding:9px 12px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(136px,164px) !important;
  grid-template-rows:auto auto minmax(0,1fr) !important;
  column-gap:12px !important;
  row-gap:2px !important;
  align-content:start !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .room-badge{
  grid-column:1 !important;
  grid-row:1 !important;
  width:max-content !important;
  max-width:100% !important;
  min-height:30px !important;
  padding:5px 9px !important;
  gap:6px !important;
  font-size:10px !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .room-badge .ico{
  --icon-box:20px !important;
  --icon-size:11px !important;
}
#view-setup:not(.setup-battle-pvp) .room-card h3{
  grid-column:1 !important;
  grid-row:2 !important;
  font-size:19px !important;
  line-height:1.14 !important;
  margin:2px 0 0 !important;
}
#view-setup:not(.setup-battle-pvp) .room-card p{
  grid-column:1 !important;
  grid-row:3 !important;
  min-height:0 !important;
  margin:0 !important;
  font-size:11.5px !important;
  line-height:1.34 !important;
  color:rgba(244,235,220,.72) !important;
  overflow:hidden !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .room-meta{
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  gap:3px !important;
  margin-top:0 !important;
  align-self:start !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .room-line{
  min-height:23px !important;
  padding:2px 8px !important;
  border-radius:999px !important;
  gap:8px !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .room-line label{
  font-size:10.5px !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .room-line strong{
  font-size:12.5px !important;
}
#view-setup:not(.setup-battle-pvp) .room-card .room-start-btn{
  grid-column:2 !important;
  grid-row:3 !important;
  align-self:start !important;
  width:100% !important;
  min-height:30px !important;
  height:30px !important;
  margin-top:2px !important;
  padding:0 12px !important;
  font-size:13px !important;
}
@media(max-width:1320px){
  #view-setup:not(.setup-battle-pvp) .setup-grid{
    grid-template-columns:1fr !important;
  }
  #view-setup:not(.setup-battle-pvp) .mode-stack{
    grid-template-rows:none !important;
  }
  #view-setup:not(.setup-battle-pvp) .mode-card{
    height:auto !important;
    min-height:220px !important;
    max-height:none !important;
  }
  #view-setup:not(.setup-battle-pvp) .rooms-grid,
  #view-setup:not(.setup-battle-pvp) .rooms-grid:not(.pvp-entry-grid){
    grid-template-columns:1fr !important;
    grid-auto-rows:var(--setup-rooms-card-h) !important;
  }
}
@media(max-width:760px){
  #view-setup:not(.setup-battle-pvp) .room-card{
    height:auto !important;
    max-height:none !important;
  }
  #view-setup:not(.setup-battle-pvp) .room-card .card-pad{
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
    padding:14px !important;
  }
  #view-setup:not(.setup-battle-pvp) .room-card .room-badge,
  #view-setup:not(.setup-battle-pvp) .room-card h3,
  #view-setup:not(.setup-battle-pvp) .room-card p,
  #view-setup:not(.setup-battle-pvp) .room-card .room-meta,
  #view-setup:not(.setup-battle-pvp) .room-card .room-start-btn{
    grid-column:1 !important;
    grid-row:auto !important;
  }
  #view-setup:not(.setup-battle-pvp) .room-card .room-meta{
    margin-top:8px !important;
  }
}

/* === Profile title cards v49: unified card metrics across all tabs === */
#view-profile .title-card-grid-merged{
  grid-auto-rows:136px !important;
  align-items:stretch !important;
}
#view-profile .title-card-grid-merged .title-card{
  box-sizing:border-box !important;
  height:136px !important;
  min-height:136px !important;
  display:grid !important;
  grid-template-rows:20px 22px minmax(0,1fr) 22px !important;
  align-content:stretch !important;
  gap:6px !important;
  padding:11px !important;
  overflow:hidden !important;
}
#view-profile .title-card-grid-merged .title-card-top{
  min-width:0 !important;
  height:20px !important;
  align-items:center !important;
}
#view-profile .title-card-grid-merged .title-card-top b{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
#view-profile .title-card-grid-merged .title-card-top em{
  height:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 6px !important;
}
#view-profile .title-card-grid-merged .title-card-role{
  justify-self:start !important;
  align-self:start !important;
  height:22px !important;
  min-height:22px !important;
  max-height:22px !important;
}
#view-profile .title-card-grid-merged .title-card-copy{
  min-height:0 !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
  align-self:start !important;
  margin:0 !important;
}
#view-profile .title-card-grid-merged .title-card-state{
  justify-self:start !important;
  align-self:end !important;
  margin-top:0 !important;
  min-height:22px !important;
  display:inline-flex !important;
  align-items:center !important;
}
@media(max-width:980px){
  #view-profile .title-card-grid-merged{
    grid-auto-rows:136px !important;
  }
  #view-profile .title-card-grid-merged .title-card{
    height:136px !important;
    min-height:136px !important;
  }
}

/* === rules announcement detail scroll v43 === */
.setup-rules-modal-card{
  max-height:calc(100dvh - 28px) !important;
  overflow:auto !important;
  -webkit-overflow-scrolling:touch;
}
.setup-rules-brief-row span{
  overflow-wrap:anywhere;
}

/* === profile title plaque icon consistency v50 === */
#view-profile #profileTitle .title-plaque-profile,
#view-profile .title-current-strip .title-plaque-profile{
  min-height:44px !important;
  align-items:center !important;
  gap:9px !important;
  padding:7px 9px !important;
}
#view-profile #profileTitle .title-plaque-profile .title-plaque-crown,
#view-profile .title-current-strip .title-plaque-profile .title-plaque-crown{
  width:30px !important;
  min-width:30px !important;
  height:30px !important;
  min-height:30px !important;
  border-radius:10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid color-mix(in srgb,var(--theme-a,#d8bb8b) 42%,transparent 58%) !important;
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--theme-a,#d8bb8b) 78%,white 22%),
      color-mix(in srgb,var(--theme-b,#b78340) 78%,#4a2b13 22%)
    ) !important;
  color:#1d1006 !important;
  font-size:14px !important;
  font-weight:1000 !important;
  line-height:1 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 6px 14px rgba(0,0,0,.24) !important;
}
