:root{--bg:#080b16;--panel:#10182b;--panel2:#151f36;--line:rgba(255,255,255,.12);--text:#f4f7ff;--muted:#aeb8d4;--gold:#ffd76b;--green:#5ff2a0;--blue:#5bc7ff;--pink:#ff72d2;--red:#ff6b7a;--radius:22px;--shadow:0 18px 50px rgba(0,0,0,.35)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at top left,#182650 0,#080b16 34%,#060811 100%);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px clamp(14px,3vw,30px);background:rgba(8,11,22,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.2px}.brand-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--gold),#ff9f43);color:#211300;box-shadow:0 0 30px rgba(255,215,107,.3)}.top-nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.top-nav a,.btn{border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.04));color:var(--text);padding:10px 13px;border-radius:14px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:hover,.top-nav a:hover{border-color:rgba(255,215,107,.45);transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,#ffe072,#ffb33c);color:#211300;border:0}.btn.good{background:linear-gradient(135deg,#5ff2a0,#1dbf72);color:#03130a;border:0}.btn.danger{background:linear-gradient(135deg,#ff7585,#ff3f61);border:0}.btn.small{padding:8px 10px;border-radius:12px;font-size:.9rem}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.app-shell{width:min(1220px,100%);margin:0 auto;padding:18px clamp(12px,3vw,26px) 60px}.hero{border:1px solid var(--line);background:linear-gradient(135deg,rgba(91,199,255,.14),rgba(255,215,107,.1),rgba(255,114,210,.08));border-radius:28px;padding:22px;box-shadow:var(--shadow);margin-bottom:18px;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;inset:auto -10% -45% auto;width:320px;height:320px;border-radius:50%;background:rgba(255,215,107,.13);filter:blur(3px)}.hero h1{margin:0 0 8px;font-size:clamp(1.8rem,5vw,3.5rem);line-height:1.05}.hero p{margin:0;color:var(--muted);max-width:760px}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.card h2,.card h3{margin:0 0 10px;line-height:1.2}.muted{color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:16px 0}.stat{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055);padding:12px}.stat span{display:block;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.stat strong{display:block;font-size:1.18rem;margin-top:4px}.bar{height:12px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;border:1px solid var(--line)}.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--blue));border-radius:999px}.tabs{display:flex;gap:8px;overflow-x:auto;padding:6px 0 14px;position:sticky;top:66px;background:linear-gradient(180deg,rgba(8,11,22,.98),rgba(8,11,22,.72));z-index:25}.tab-btn{white-space:nowrap;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);padding:10px 13px;border-radius:999px;font-weight:900;cursor:pointer}.tab-btn.active{background:linear-gradient(135deg,var(--gold),#ff9f43);color:#211300;border:0}.tab-panel{display:none}.tab-panel.active{display:block}.action-card{display:flex;flex-direction:column;gap:10px;min-height:220px}.pill-row{display:flex;gap:8px;flex-wrap:wrap}.pill{border:1px solid var(--line);background:rgba(255,255,255,.06);border-radius:999px;padding:6px 9px;color:var(--muted);font-size:.86rem}.shop-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.shop-tab{border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);border-radius:999px;padding:8px 11px;cursor:pointer;font-weight:800}.shop-tab.active{background:rgba(255,215,107,.2);border-color:rgba(255,215,107,.45)}.form-row{display:grid;gap:7px;margin-bottom:13px}.form-row label{font-weight:900}.input,select,textarea{width:100%;border:1px solid var(--line);border-radius:14px;background:#0c1324;color:var(--text);padding:12px;outline:none}textarea{min-height:110px;resize:vertical}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px}table{border-collapse:collapse;width:100%;min-width:760px;background:rgba(255,255,255,.035)}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{color:#fff;background:rgba(255,255,255,.07)}.admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.admin-nav a{padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.06);font-weight:850}.popup-modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:grid;place-items:center;z-index:100;padding:16px}.popup-box{width:min(560px,100%);background:linear-gradient(180deg,#18233d,#10182b);border:1px solid rgba(255,255,255,.18);border-radius:28px;padding:20px;box-shadow:var(--shadow)}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.option-grid button{padding:14px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);font-weight:900;cursor:pointer}.option-grid button:hover{background:rgba(255,215,107,.16)}.toast-host{position:fixed;right:14px;bottom:14px;z-index:200;display:grid;gap:10px}.toast{background:#111a2e;border:1px solid var(--line);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow);max-width:340px}.event-overlay{position:fixed;inset:0;z-index:180;background:radial-gradient(circle at center,rgba(255,215,107,.16),rgba(10,14,28,.88));pointer-events:none;overflow:hidden}.event-card{position:absolute;left:50%;top:16%;transform:translateX(-50%);width:min(580px,calc(100% - 28px));border:1px solid rgba(255,255,255,.2);background:rgba(12,18,34,.88);backdrop-filter:blur(14px);border-radius:26px;padding:18px;text-align:center;box-shadow:var(--shadow);pointer-events:auto}.drop-claim{animation:pulse 1.1s infinite}@keyframes pulse{50%{transform:scale(1.03)}}.particle{position:absolute;top:-40px;font-size:28px;animation:fall linear forwards;opacity:.9}@keyframes fall{to{transform:translateY(calc(100vh + 60px)) rotate(360deg);opacity:0}}.auth-wrap{width:min(480px,100%);margin:30px auto}.notice{border:1px solid rgba(255,215,107,.35);background:rgba(255,215,107,.08);padding:12px;border-radius:16px;margin-bottom:14px}.error{border-color:rgba(255,107,122,.45);background:rgba(255,107,122,.08)}.success{border-color:rgba(95,242,160,.45);background:rgba(95,242,160,.08)}.progress-note{font-size:.9rem;color:var(--muted);margin-top:8px}.rank-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 10px;background:rgba(255,215,107,.14);border:1px solid rgba(255,215,107,.28);font-weight:900;color:#ffe293}.locked-note{font-size:.92rem;color:var(--muted);border-top:1px solid var(--line);padding-top:10px;margin-top:auto}.kbd{font-family:ui-monospace,Consolas,monospace;background:rgba(255,255,255,.08);padding:2px 6px;border-radius:7px}.footer-space{height:30px}@media(max-width:900px){.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header{align-items:flex-start;flex-direction:column}.top-nav{width:100%;justify-content:flex-start}.tabs{top:105px}.option-grid{grid-template-columns:1fr}.card{padding:14px}.hero{padding:18px}table{min-width:680px}}@media(max-width:430px){.app-shell{padding-left:10px;padding-right:10px}.stat-grid{grid-template-columns:1fr}.top-nav a,.btn{width:100%}.top-nav{display:grid;grid-template-columns:1fr 1fr}.tabs{top:120px}}

/* V2 full-play additions */
.notice{padding:12px 14px;border:1px solid var(--line,#26344f);border-radius:16px;margin:0 0 14px;background:rgba(255,255,255,.06)}.notice.success{border-color:rgba(46,213,115,.4)}.notice.error{border-color:rgba(255,71,87,.5)}
.auth-card{max-width:520px;margin:40px auto;padding:24px;border:1px solid var(--line,#26344f);border-radius:24px;background:rgba(12,18,35,.92);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.form-stack{display:grid;gap:14px}.form-stack label,.panel label{display:grid;gap:7px;color:#dce8ff;font-weight:700}.input,select,textarea{width:100%;background:#101a31;color:#fff;border:1px solid #314366;border-radius:14px;padding:12px;box-sizing:border-box}textarea{min-height:92px;resize:vertical}
.hero-card{display:flex;justify-content:space-between;gap:18px;align-items:stretch;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:linear-gradient(135deg,rgba(71,123,255,.18),rgba(39,212,146,.1));margin-bottom:16px}.hero-card h1{margin:8px 0}.hero-rank{min-width:210px;display:grid;gap:6px;align-content:center;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:16px}.hero-rank b{font-size:1.35rem;color:#ffe680}.hero-rank span,.hero-rank small{color:#b8c7e6}
.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:14px 0}.stat-card{padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(12,18,35,.9);min-width:0}.stat-card span{display:block;color:#9fb2d8;font-size:.86rem}.stat-card b{display:block;font-size:1.25rem;word-break:break-word}.bar{height:8px;border-radius:999px;background:#1a2740;margin-top:8px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#43e895,#ffee72)}
.tabs,.shop-tabs,.admin-nav,.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.tab-btn,.shop-tab,.admin-nav a,.btn{border:1px solid rgba(255,255,255,.14);background:#111d35;color:#fff;border-radius:999px;padding:10px 14px;text-decoration:none;cursor:pointer;font-weight:800}.tab-btn.active,.shop-tab.active,.btn.primary{background:linear-gradient(135deg,#4278ff,#24d494);border-color:transparent}.btn.green{background:#1f9d66}.btn.gold{background:#9b7617}.btn.danger{background:#a73545}.btn.small{padding:7px 11px;font-size:.85rem}.tab-panel{display:none}.tab-panel.active{display:block}.panel,.card{border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(12,18,35,.92);padding:18px;margin:14px 0}.grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.game-card{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.045);padding:16px}.game-card h3{margin-top:0}.muted,.game-card p{color:#aebdd8;line-height:1.5}.pill{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:6px 10px;background:rgba(255,255,255,.06);color:#dbe8ff;font-size:.86rem}.mini-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mini-stat-grid>div,.feed-item,.rank-row,.upgrade-row{border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:12px;background:rgba(255,255,255,.04)}.mini-stat-grid span,.feed-item span,.feed-item small{display:block;color:#aebdd8;margin-top:5px}.feed-list{display:grid;gap:10px}.upgrade-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0}.rank-list{display:grid;gap:8px}.rank-row{display:flex;justify-content:space-between}.rank-row.unlocked{border-color:rgba(67,232,149,.35);background:rgba(67,232,149,.08)}
.table-wrap{overflow:auto;max-width:100%}table{width:100%;border-collapse:separate;border-spacing:0 8px}th{text-align:left;color:#9fb2d8;font-size:.85rem}td,th{padding:10px;background:rgba(255,255,255,.04)}td:first-child,th:first-child{border-radius:12px 0 0 12px}td:last-child,th:last-child{border-radius:0 12px 12px 0}.inline{display:inline}.drop-row{display:grid;grid-template-columns:1.3fr .7fr .7fr .7fr;gap:8px;margin:8px 0}.toast-host{position:fixed;right:14px;bottom:14px;z-index:10000;display:grid;gap:8px}.toast{background:#111d35;color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:12px 14px;max-width:330px;box-shadow:0 16px 40px rgba(0,0,0,.35)}.toast.success{border-color:#43e895}.toast.error{border-color:#ff6b7a}
.popup-modal{position:fixed;inset:0;background:rgba(0,0,0,.74);z-index:9999;display:grid;place-items:center;padding:16px}.popup-box{width:min(560px,100%);background:#101a31;border:1px solid rgba(255,255,255,.18);border-radius:26px;padding:20px;box-shadow:0 30px 80px rgba(0,0,0,.45)}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option-grid button{padding:13px;border-radius:16px;background:#172746;color:#fff;border:1px solid rgba(255,255,255,.16);font-weight:800}
.event-overlay{position:fixed;inset:0;z-index:9998;background:radial-gradient(circle at top,#233f78,rgba(0,0,0,.86));overflow:hidden;display:grid;place-items:center;padding:16px}.event-overlay[hidden]{display:none}.event-card{position:relative;z-index:2;width:min(560px,100%);text-align:center;border:1px solid rgba(255,255,255,.2);border-radius:28px;background:rgba(9,14,28,.84);padding:24px}.particle{position:absolute;top:-40px;font-size:28px;animation:fall linear forwards;z-index:1}.gold-storm .particle{filter:drop-shadow(0 0 12px gold)}.book-storm{background:radial-gradient(circle,#27345c,#050814)}.energy-surge{background:radial-gradient(circle,#125b52,#050814)}@keyframes fall{to{transform:translateY(110vh) rotate(360deg);opacity:.2}}
@media(max-width:980px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two{grid-template-columns:1fr}.hero-card{flex-direction:column}.mini-stat-grid{grid-template-columns:1fr}}
@media(max-width:620px){.app-shell{padding-left:12px!important;padding-right:12px!important}.site-header{padding-left:12px!important;padding-right:12px!important}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid{grid-template-columns:1fr}.upgrade-row{align-items:stretch;flex-direction:column}.option-grid{grid-template-columns:1fr}.drop-row{grid-template-columns:1fr}.top-nav{gap:6px}.brand span:last-child{font-size:.95rem}}

/* V3 playable mobile hardening + tab fixes */
html,body{width:100%;max-width:100%;overflow-x:hidden!important;}
*,*::before,*::after{box-sizing:border-box;min-width:0;}
img,svg,video,canvas,iframe{max-width:100%;height:auto;}
body{touch-action:manipulation;}
.app-shell{width:min(1180px,100%);max-width:100%;margin:0 auto;padding-left:clamp(14px,4vw,26px)!important;padding-right:clamp(14px,4vw,26px)!important;overflow-x:hidden;}
.site-header{width:100%;max-width:100%;padding-left:clamp(14px,4vw,26px)!important;padding-right:clamp(14px,4vw,26px)!important;overflow-x:hidden;}
.tabs{position:relative!important;top:auto!important;z-index:3;width:100%;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:9px;align-items:stretch;margin:16px 0 18px;overflow:visible!important;}
.tab-btn,.shop-tab,.quick-game-btn,.btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.tab-btn{width:100%;justify-content:center;text-align:center;border-radius:16px;white-space:normal;line-height:1.2;min-height:44px;}
.tab-panel{width:100%;max-width:100%;overflow:hidden;}
.tab-panel.active{display:block!important;}
.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))!important;}
.grid-two{grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr))!important;}
.stat-grid{grid-template-columns:repeat(auto-fit,minmax(min(155px,100%),1fr))!important;}
.panel,.card,.game-card,.hero-card,.stat-card{max-width:100%;overflow-wrap:anywhere;word-break:normal;}
.hero-card{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(220px,300px);}
.shop-tabs{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:8px;}
.shop-tab{width:100%;border-radius:14px;}
.quick-group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:14px;margin-top:14px;}
.quick-game-group{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.04);padding:14px;overflow:hidden;}
.quick-game-group h3{margin:0 0 12px;}
.quick-game-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(145px,100%),1fr));gap:9px;}
.quick-game-btn{border:1px solid rgba(255,255,255,.13);background:linear-gradient(135deg,rgba(66,120,255,.18),rgba(36,212,148,.1));color:#fff;border-radius:16px;padding:11px;text-align:left;cursor:pointer;display:grid;gap:4px;min-height:62px;}
.quick-game-btn span{font-weight:900;line-height:1.2;}
.quick-game-btn small{color:#aebdd8;font-weight:800;}
.quick-game-btn:hover,.quick-game-btn:focus-visible{outline:none;border-color:rgba(255,215,107,.55);background:rgba(255,215,107,.12);}
.upgrade-row{max-width:100%;}
.table-wrap.custom-scroll{overflow:auto;}
.table-wrap{max-width:100%;}
.table-wrap::-webkit-scrollbar,.custom-scroll::-webkit-scrollbar,.feed-list::-webkit-scrollbar,.rank-list::-webkit-scrollbar{width:10px;height:10px;}
.table-wrap::-webkit-scrollbar-track,.custom-scroll::-webkit-scrollbar-track,.feed-list::-webkit-scrollbar-track,.rank-list::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:999px;}
.table-wrap::-webkit-scrollbar-thumb,.custom-scroll::-webkit-scrollbar-thumb,.feed-list::-webkit-scrollbar-thumb,.rank-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#4278ff,#24d494);border-radius:999px;border:2px solid rgba(10,15,30,.9);}
.leaderboard-stack{display:grid;gap:18px;grid-template-columns:1fr!important;}
.leaderboard-card-list{display:grid;gap:10px;}
.leaderboard-row-card{display:grid;grid-template-columns:auto minmax(0,1.2fr) repeat(5,minmax(92px,1fr));gap:8px;align-items:center;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:rgba(255,255,255,.045);padding:10px;}
.leaderboard-row-card .place{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:rgba(255,215,107,.16);color:#ffe680;font-weight:950;}
.leaderboard-row-card .name{font-weight:950;color:#fff;}
.leaderboard-row-card .metric{display:grid;gap:2px;}
.leaderboard-row-card .metric small{color:#9fb2d8;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;}
.leaderboard-row-card .metric b{font-size:.95rem;}
@media(max-width:760px){
  .app-shell{padding-left:14px!important;padding-right:14px!important;}
  .site-header{padding-left:14px!important;padding-right:14px!important;}
  .hero-card{grid-template-columns:1fr!important;}
  .hero-rank{min-width:0!important;width:100%;}
  .tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .tab-btn{font-size:.93rem;padding:11px 9px;}
  .mini-stat-grid{grid-template-columns:1fr!important;}
  .top-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;}
  .top-nav a{width:100%;text-align:center;}
  .leaderboard-row-card{grid-template-columns:44px minmax(0,1fr);}
  .leaderboard-row-card .metric{grid-column:1 / -1;grid-template-columns:1fr 1fr;display:grid;background:rgba(0,0,0,.13);border-radius:12px;padding:8px;}
  .popup-modal{padding-left:14px!important;padding-right:14px!important;}
  .popup-box{max-height:calc(100dvh - 30px);overflow:auto;}
}
@media(max-width:420px){
  .tabs{grid-template-columns:1fr 1fr;}
  .stat-grid{grid-template-columns:1fr!important;}
  .quick-game-buttons{grid-template-columns:1fr;}
  .btn,.top-nav a{min-height:44px;}
}

/* V4 live game / events / pagination polish */
.pager{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}
.pager-count,.pager-page{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 11px;background:rgba(255,255,255,.05);color:#dce8ff;font-weight:800}.pager-count{color:#ffe680}
.live-drop-host,.live-message-host{position:fixed;left:clamp(12px,4vw,24px);right:clamp(12px,4vw,24px);z-index:9997;display:grid;gap:10px;pointer-events:none}.live-drop-host{bottom:18px}.live-message-host{top:84px}.live-drop-card,.live-message-card{pointer-events:auto;width:min(520px,100%);border:1px solid rgba(255,255,255,.18);border-radius:20px;background:linear-gradient(135deg,rgba(17,29,53,.96),rgba(33,49,84,.96));box-shadow:0 20px 60px rgba(0,0,0,.38);padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;animation:slideInLive .25s ease-out}.live-message-card{margin-left:auto;background:linear-gradient(135deg,rgba(38,22,61,.96),rgba(17,29,53,.96));align-items:flex-start}.live-drop-card b,.live-message-card b{display:block;color:#fff}.live-drop-card span,.live-message-card p,.live-message-card small{display:block;margin:.15rem 0;color:#b9c8e8}.live-message-card p{white-space:pre-wrap}@keyframes slideInLive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.event-overlay:before,.event-overlay:after{content:"";position:absolute;inset:-20%;pointer-events:none;mix-blend-mode:screen;opacity:.7}.event-overlay:before{background:conic-gradient(from 0deg,rgba(66,120,255,.0),rgba(66,120,255,.28),rgba(255,114,210,.2),rgba(36,212,148,.22),rgba(255,215,107,.22),rgba(66,120,255,.0));animation:spinShow 8s linear infinite}.event-overlay:after{background:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 2px,transparent 2px 70px);animation:panShow 5s linear infinite}@keyframes spinShow{to{transform:rotate(360deg)}}@keyframes panShow{to{transform:translateX(70px)}}.event-vector-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}.dj-light-show,.nightclub-show{background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.22),rgba(5,8,20,.93)),linear-gradient(135deg,rgba(66,120,255,.38),rgba(255,0,170,.22),rgba(36,212,148,.18))}.dj-light-show .event-vector-layer:before,.nightclub-show .event-vector-layer:before{content:"";position:absolute;left:50%;top:-20%;width:140vw;height:140vh;transform:translateX(-50%);background:conic-gradient(rgba(255,255,255,.0),rgba(91,199,255,.28),rgba(255,114,210,.26),rgba(255,215,107,.22),rgba(255,255,255,.0));clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);animation:beamSweep 2.6s ease-in-out infinite alternate}.football-show{background:radial-gradient(circle at 50% 20%,rgba(70,255,128,.2),rgba(3,15,8,.92)),linear-gradient(180deg,#09200f,#05101b)}.football-show .event-vector-layer:before{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 2px,transparent 2px 12.5%),linear-gradient(180deg,rgba(34,180,80,.2),rgba(34,180,80,.55));border-top:3px solid rgba(255,255,255,.32)}.football-show .event-vector-layer:after{content:"";position:absolute;left:50%;bottom:8%;width:34vw;height:16vw;transform:translateX(-50%);border:3px solid rgba(255,255,255,.5);border-bottom:0;border-radius:8px 8px 0 0}.racing-neon{background:radial-gradient(circle at 50% 30%,rgba(255,60,60,.22),rgba(0,0,0,.9)),linear-gradient(135deg,#17050a,#06152c)}.racing-neon .event-vector-layer:before{content:"";position:absolute;inset:55% -10% auto;height:40%;background:repeating-linear-gradient(90deg,#fff 0 30px,#111 30px 60px);transform:skewY(-8deg);opacity:.28;animation:raceTrack .8s linear infinite}.racing-neon .event-vector-layer:after{content:"";position:absolute;left:0;right:0;top:45%;height:4px;background:linear-gradient(90deg,transparent,#ff2d55,#5bc7ff,#ffe680,transparent);box-shadow:0 0 28px #5bc7ff;animation:panShow 1.2s linear infinite}.stage-spotlight{background:radial-gradient(circle at 50% 20%,rgba(255,215,107,.25),rgba(8,11,22,.9)),linear-gradient(135deg,#1a0c22,#081629)}.stage-spotlight .event-vector-layer:before{content:"";position:absolute;left:10%;top:-10%;width:35%;height:120%;background:linear-gradient(180deg,rgba(255,255,255,.32),transparent);clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);animation:beamSweep 2.2s ease-in-out infinite alternate}.stage-spotlight .event-vector-layer:after{content:"";position:absolute;right:10%;top:-10%;width:35%;height:120%;background:linear-gradient(180deg,rgba(91,199,255,.3),transparent);clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);animation:beamSweep 2.8s ease-in-out infinite alternate-reverse}.event-controls{justify-content:center}.event-card{max-width:calc(100vw - 28px)}@keyframes beamSweep{from{transform:translateX(-10%) rotate(-8deg)}to{transform:translateX(10%) rotate(8deg)}}@keyframes raceTrack{to{transform:translateX(-60px) skewY(-8deg)}}
@media(max-width:700px){.live-message-host{top:122px}.live-drop-card,.live-message-card{width:100%;flex-direction:column;align-items:stretch}.live-drop-card .btn,.live-message-card .btn{width:100%}.pager{display:grid;grid-template-columns:1fr 1fr}.pager-count,.pager-page{grid-column:1/-1;text-align:center}.event-card{padding:18px}.event-controls .btn{width:100%}}


/* V5 tab + mobile hardening */
html, body { width:100%; max-width:100%; overflow-x:hidden !important; }
body { overscroll-behavior-x:none; }
.app-shell, .site-header, .tabs, .tab-panel, .panel, .card, .game-card, .hero-card, .stat-grid, .card-grid, .grid-two { max-width:100%; }
.tabs { position:relative !important; top:auto !important; z-index:5 !important; display:grid !important; grid-template-columns:repeat(auto-fit,minmax(min(132px,100%),1fr)) !important; gap:9px !important; overflow:visible !important; padding:8px 0 14px !important; }
.tab-btn { display:flex !important; align-items:center !important; justify-content:center !important; min-height:46px !important; text-decoration:none !important; user-select:none !important; pointer-events:auto !important; }
.tab-btn:focus-visible { outline:3px solid rgba(255,215,107,.85); outline-offset:3px; }
.tab-panel { display:none !important; }
.tab-panel.active { display:block !important; }
.energy-stat-card .energy-value { display:flex !important; align-items:baseline; gap:3px; white-space:nowrap; flex-wrap:nowrap; line-height:1.15; }
.energy-stat-card .energy-value span { display:inline !important; white-space:nowrap; }
.energy-stat-card .bar { margin-top:8px; }
.stat-card b, .stat-card strong { overflow-wrap:normal; word-break:normal; }
@media(max-width:520px){
  .app-shell{padding-left:14px!important;padding-right:14px!important;}
  .tabs{grid-template-columns:1fr 1fr!important;}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .energy-stat-card{grid-column:1 / -1;}
}
@media(max-width:360px){
  .tabs{grid-template-columns:1fr!important;}
  .stat-grid{grid-template-columns:1fr!important;}
}
.event-overlay[hidden], [hidden] { display:none !important; }

/* V7 non-blocking admin event widget: keeps game playable while events run */
.event-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:80 !important;
  pointer-events:none !important;
  overflow:hidden !important;
  display:block !important;
  padding:0 !important;
  background:transparent !important;
  opacity:.72 !important;
  mix-blend-mode:screen;
}
.event-overlay[hidden]{display:none !important;}
.event-overlay:before,.event-overlay:after{pointer-events:none !important; opacity:.48 !important;}
.event-overlay .event-vector-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
.event-overlay.dj-light-show,.event-overlay.nightclub-show,
.event-overlay.football-show,.event-overlay.racing-neon,
.event-overlay.stage-spotlight,.event-overlay.gold-storm,
.event-overlay.book-storm,.event-overlay.energy-surge{background:transparent !important;}
.event-overlay .particle{z-index:2;pointer-events:none;text-shadow:0 0 14px rgba(255,255,255,.55);}
.event-widget{
  position:fixed;
  right:clamp(12px,3vw,24px);
  bottom:clamp(12px,3vw,24px);
  width:min(410px,calc(100vw - 24px));
  z-index:9998;
  pointer-events:auto;
  border:1px solid rgba(255,255,255,.2);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(11,18,34,.96),rgba(26,38,66,.94));
  box-shadow:0 22px 70px rgba(0,0,0,.48),0 0 30px rgba(91,199,255,.14);
  backdrop-filter:blur(16px);
  padding:14px;
  color:var(--text);
  animation:eventWidgetIn .2s ease-out;
}
.event-widget[hidden]{display:none !important;}
.event-widget-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;}
.event-widget h3{margin:7px 0 0;font-size:1.08rem;line-height:1.2;color:#fff;}
.event-widget p{margin:8px 0;color:var(--muted);line-height:1.45;}
.event-live-pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:950;color:#101827;background:linear-gradient(135deg,#ffd76b,#ff9f2d);box-shadow:0 0 18px rgba(255,200,77,.25);}
.event-widget-actions{display:flex;gap:7px;flex:0 0 auto;}
.event-icon-btn{width:34px;height:34px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;font-weight:1000;cursor:pointer;line-height:1;}
.event-icon-btn:hover{background:rgba(255,255,255,.16);}
.event-icon-btn.danger{background:rgba(255,75,96,.14);border-color:rgba(255,75,96,.28);}
.event-widget-status{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:16px;padding:10px 11px;margin:10px 0;color:#dbe7ff;font-weight:750;}
.event-widget-status.drop-ready{border-color:rgba(95,242,160,.38);background:rgba(95,242,160,.1);color:#eafff2;}
.event-widget-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.event-widget-controls .btn{min-width:0;}
.event-widget.has-drop{box-shadow:0 24px 80px rgba(0,0,0,.52),0 0 34px rgba(95,242,160,.22);border-color:rgba(95,242,160,.35);}
.event-mini-pill{width:100%;border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,rgba(17,29,53,.97),rgba(33,49,84,.95));border-radius:18px;padding:11px 12px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:950;cursor:pointer;box-shadow:0 16px 48px rgba(0,0,0,.35);}
.event-mini-pill small{color:var(--muted);font-weight:800;}
.event-mini-pill.drop-ready{border-color:rgba(95,242,160,.5);background:linear-gradient(135deg,rgba(18,72,56,.98),rgba(32,49,84,.95));animation:pulse 1.1s infinite;}
.event-mini-pill.drop-ready b{color:#ddffe9;font-size:.85rem;}
.event-widget.minimized{padding:0;background:transparent;border:0;box-shadow:none;width:min(360px,calc(100vw - 24px));}
@keyframes eventWidgetIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:700px){
  .event-widget{left:12px;right:12px;bottom:12px;width:auto;padding:12px;border-radius:20px;}
  .event-widget-controls{display:grid;grid-template-columns:1fr;}
  .event-widget-controls .btn{width:100%;}
}


/* V8 professional JDL Learn UI + instant/live states */
:root{
  --bg:#f4fbf8; --bg2:#eef7ff; --ink:#132033; --text:#f8fbff; --dark:#101827;
  --muted:#627086; --panel:#ffffff; --panel2:#f7fbff; --line:rgba(24,45,71,.13);
  --green:#48d597; --green2:#b7f4cf; --mint:#e8fff3; --blue:#67b7ff; --navy:#12233f;
  --lilac:#d9d2ff; --peach:#ffd6b8; --yellow:#ffe9a6; --red:#e74757; --radius:24px;
  --shadow:0 18px 45px rgba(18,35,63,.12);
}
html,body{width:100%;max-width:100%;overflow-x:hidden!important;background:linear-gradient(135deg,#f6fff9 0%,#eef7ff 42%,#fff8ee 100%)!important;color:var(--ink)!important;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 5%,rgba(72,213,151,.18),transparent 28%),radial-gradient(circle at 86% 8%,rgba(103,183,255,.18),transparent 28%),radial-gradient(circle at 50% 100%,rgba(255,214,184,.2),transparent 32%);z-index:-1;}
.site-header{background:rgba(255,255,255,.82)!important;color:var(--ink);border-bottom:1px solid rgba(18,35,63,.08)!important;box-shadow:0 10px 30px rgba(18,35,63,.06);backdrop-filter:blur(18px);}
.brand{color:#15243b;font-weight:1000}.brand-icon{background:linear-gradient(135deg,var(--green),var(--blue))!important;color:#06131e;box-shadow:0 10px 26px rgba(72,213,151,.28)}
.top-nav a{background:#fff!important;color:#16233b!important;border:1px solid rgba(18,35,63,.12)!important;box-shadow:0 8px 22px rgba(18,35,63,.06)}
.app-shell{width:min(1240px,100%);padding:20px clamp(14px,3vw,30px) 90px!important;}
.hero-card{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(232,255,243,.95) 45%,rgba(238,247,255,.96))!important;color:var(--ink);border:1px solid rgba(18,35,63,.1)!important;box-shadow:var(--shadow);}
.hero-card:after{content:"";position:absolute;right:-70px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(72,213,151,.28),transparent 65%)}
.hero-card h1{color:#16243b;letter-spacing:-.04em;font-size:clamp(2rem,5vw,4.15rem);line-height:1.02}.hero-card p,.muted{color:#64728b!important}.hero-rank{background:rgba(255,255,255,.68)!important;color:#16243b;border-color:rgba(72,213,151,.24)!important}.hero-rank b{color:#0f9f66!important}.pill{background:rgba(72,213,151,.11)!important;color:#31506a!important;border:1px solid rgba(72,213,151,.2)!important}.pill-row{align-items:center}
.stat-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.stat-card{background:rgba(255,255,255,.86)!important;color:#14233a;border:1px solid rgba(18,35,63,.1)!important;border-radius:22px;box-shadow:0 10px 28px rgba(18,35,63,.06)}.stat-card span{color:#6a7890}.stat-card b{color:#16233b;font-weight:1000;font-size:clamp(1.1rem,2.4vw,1.45rem)}.bar{background:rgba(18,35,63,.08)!important;border:0!important}.bar>i{background:linear-gradient(90deg,var(--green),var(--blue))!important}
.tabs{position:relative!important;top:auto!important;background:transparent!important;padding:6px 0 16px!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(138px,1fr))!important;gap:10px!important;overflow:visible!important;box-shadow:none!important;border:0!important;}
.tab-btn{background:rgba(255,255,255,.78)!important;color:#15243b!important;border:1px solid rgba(18,35,63,.1)!important;border-radius:18px!important;box-shadow:0 8px 24px rgba(18,35,63,.06);min-height:52px!important;font-weight:1000!important;letter-spacing:.01em}.tab-btn.active{background:linear-gradient(135deg,#67b7ff,#48d597)!important;color:#06131e!important;border:0!important;box-shadow:0 16px 35px rgba(72,213,151,.24)}
.panel,.game-card,.card,.quick-game-group,.auth-card{background:rgba(255,255,255,.9)!important;color:#14233a;border:1px solid rgba(18,35,63,.1)!important;border-radius:24px!important;box-shadow:var(--shadow)}.panel h2,.panel h3,.game-card h3,.card h2,.card h3{color:#16243b}.game-card p,.panel p{color:#65758d}.grid-two{gap:16px}.card-grid{gap:16px}.game-card{transition:transform .18s ease,box-shadow .18s ease}.game-card:hover{transform:translateY(-2px);box-shadow:0 24px 50px rgba(18,35,63,.12)}
.btn,.quick-game-btn{border-radius:16px!important;font-weight:1000!important}.btn.primary,.quick-game-btn{background:linear-gradient(135deg,#67b7ff,#48d597)!important;color:#06131e!important;border:0!important;box-shadow:0 12px 26px rgba(72,213,151,.18)}.btn.green{background:linear-gradient(135deg,#48d597,#9df2c0)!important;color:#06131e!important;border:0!important}.btn.gold{background:linear-gradient(135deg,#ffe9a6,#ffbd73)!important;color:#2f1a05!important;border:0!important}.btn.danger{background:linear-gradient(135deg,#ff6a7a,#e74757)!important;color:#fff!important;border:0!important}.btn:disabled,.quick-game-btn:disabled,.is-waiting{opacity:1!important;cursor:not-allowed!important;background:linear-gradient(135deg,#e74757,#c91f35)!important;color:#fff!important;border:0!important;box-shadow:none!important;transform:none!important}.is-waiting small,.is-waiting span{color:#fff!important}.cooldown-note{display:none!important}
.quick-game-group{padding:16px}.quick-game-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px}.quick-game-btn{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:12px}.quick-game-btn span{font-size:.95rem}.quick-game-btn small{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.45);color:#102037;font-weight:1000;white-space:nowrap}.shop-tabs{gap:10px}.shop-tab{background:#fff!important;color:#16243b!important;border:1px solid rgba(18,35,63,.1)!important}.shop-tab.active{background:linear-gradient(135deg,#e8fff3,#eef7ff)!important;border-color:rgba(72,213,151,.35)!important;color:#0e6f4a!important}
.popup-modal{background:rgba(9,18,34,.34)!important;backdrop-filter:blur(7px);padding:14px}.popup-box{background:linear-gradient(180deg,#ffffff,#f6fbff)!important;color:#16243b!important;border:1px solid rgba(18,35,63,.12)!important;box-shadow:0 30px 90px rgba(18,35,63,.22)}.popup-box h2,.popup-box p{color:#16243b!important}.option-grid button{background:#fff!important;color:#16243b!important;border:1px solid rgba(18,35,63,.12)!important}.option-grid button:hover{background:#e8fff3!important;border-color:rgba(72,213,151,.35)!important}.input,select,textarea{background:#fff!important;color:#16243b!important;border:1px solid rgba(18,35,63,.14)!important}.input:focus,select:focus,textarea:focus{outline:3px solid rgba(72,213,151,.22)}
.toast-host{right:16px;bottom:16px;gap:10px}.toast{border:0!important;border-radius:18px!important;font-weight:950;box-shadow:0 18px 45px rgba(18,35,63,.18);max-width:min(390px,calc(100vw - 32px));padding:14px 16px}.toast.success{background:#46dd8e!important;color:#06130d!important}.toast.error{background:#e74757!important;color:#fff!important}.toast:not(.success):not(.error){background:#15243b!important;color:#fff!important}
.live-drop-card,.live-message-card,.event-widget{background:rgba(255,255,255,.94)!important;color:#16243b!important;border:1px solid rgba(18,35,63,.12)!important;box-shadow:0 18px 45px rgba(18,35,63,.16)}.live-drop-card span,.live-message-card p,.live-message-card small,.event-widget p{color:#63738b!important}.event-widget h3{color:#16243b!important}.event-widget-status{background:#f2fbf7!important;color:#17334a!important;border-color:rgba(72,213,151,.2)!important}.event-live-pill{background:linear-gradient(135deg,#48d597,#67b7ff)!important;color:#06131e!important}.event-icon-btn{background:#f6f9fd!important;color:#16243b!important;border-color:rgba(18,35,63,.12)!important}.event-icon-btn.danger{background:#fff0f2!important;color:#e74757!important}.event-mini-pill{background:linear-gradient(135deg,#fff,#e8fff3)!important;color:#16243b!important;border-color:rgba(72,213,151,.25)!important}
.table-wrap{border-color:rgba(18,35,63,.1)!important;background:#fff!important}table{background:#fff!important;color:#16243b!important}th{background:#f2fbf7!important;color:#16243b!important}td,th{border-color:rgba(18,35,63,.08)!important}.admin-nav a{background:#fff!important;color:#16243b!important;border-color:rgba(18,35,63,.1)!important}.pager .btn{background:#fff!important;color:#16243b!important;border:1px solid rgba(18,35,63,.1)!important}
::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:#e9f3f2;border-radius:999px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#67b7ff,#48d597);border-radius:999px;border:2px solid #e9f3f2}*{scrollbar-width:thin;scrollbar-color:#48d597 #e9f3f2}
@media(max-width:980px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.hero-card{display:grid}.hero-rank{min-width:0}.tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}.quick-game-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.app-shell{padding-left:14px!important;padding-right:14px!important}.site-header{padding-left:14px!important;padding-right:14px!important}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tab-btn{min-height:50px!important;padding:9px 8px!important}.quick-game-buttons{grid-template-columns:1fr}.game-card,.panel{padding:14px!important}.energy-stat-card{grid-column:1 / -1}.top-nav{display:flex!important}.top-nav a{width:auto!important;flex:1 1 auto}.toast-host{left:12px;right:12px;bottom:12px}.toast{max-width:none}.hero-card h1{font-size:2rem}.event-widget{left:12px!important;right:12px!important;width:auto!important}}
@media(max-width:380px){.tabs{grid-template-columns:1fr!important}.stat-grid{grid-template-columns:1fr!important}.top-nav{display:grid!important;grid-template-columns:1fr 1fr}.brand{font-size:.95rem}}

/* V9 playable polish: toasts above event widget, extra visual effects, admin MP3 checker */
body.event-widget-live .toast-host{bottom:300px!important;z-index:10002!important;}
@media(max-width:700px){body.event-widget-live .toast-host{left:12px!important;right:12px!important;bottom:320px!important;}}
.mp3-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.mp3-card{display:grid;gap:8px;background:rgba(255,255,255,.75);border:1px solid rgba(18,35,63,.1);border-radius:18px;padding:12px}.mp3-card audio{width:100%}
.event-overlay.pastel-aurora:before{background:radial-gradient(circle at 12% 20%,rgba(72,213,151,.55),transparent 22%),radial-gradient(circle at 70% 18%,rgba(103,183,255,.45),transparent 24%),radial-gradient(circle at 45% 75%,rgba(217,210,255,.55),transparent 26%)!important;animation:panShow 7s linear infinite!important}.event-overlay.green-matrix:after{background:repeating-linear-gradient(90deg,rgba(72,213,151,.18) 0 2px,transparent 2px 32px),repeating-linear-gradient(0deg,rgba(72,213,151,.12) 0 2px,transparent 2px 32px)!important;animation:panShow 2.8s linear infinite!important}.event-overlay.rocket-maths .event-vector-layer:before{content:"";position:absolute;inset:45% -20% auto;height:5px;background:linear-gradient(90deg,transparent,#67b7ff,#48d597,#ffe9a6,transparent);box-shadow:0 0 35px #67b7ff;animation:panShow 1s linear infinite}.event-overlay.word-rain:after{background:repeating-linear-gradient(180deg,rgba(72,213,151,.13) 0 4px,transparent 4px 55px)!important;animation:fall 6s linear infinite!important}.event-overlay.gem-cave:before{background:conic-gradient(from 45deg,rgba(103,183,255,.0),rgba(103,183,255,.28),rgba(72,213,151,.25),rgba(217,210,255,.35),rgba(103,183,255,.0))!important}.event-overlay.confetti-cannon:after,.event-overlay.firework-finale:after{background:radial-gradient(circle at 20% 30%,rgba(255,215,107,.45),transparent 8%),radial-gradient(circle at 80% 22%,rgba(231,71,87,.4),transparent 9%),radial-gradient(circle at 54% 70%,rgba(72,213,151,.42),transparent 8%)!important;animation:pulse 1.3s ease-in-out infinite!important}.event-overlay.ocean-wave:after{background:repeating-radial-gradient(ellipse at bottom,rgba(103,183,255,.25) 0 8px,transparent 8px 36px)!important;animation:panShow 4s linear infinite!important}.event-overlay.laser-grid:before{background:conic-gradient(from 90deg,transparent,rgba(103,183,255,.38),transparent,rgba(231,71,214,.25),transparent)!important;animation:spinShow 3.6s linear infinite!important}.event-overlay.trophy-spark:before{background:radial-gradient(circle at center,rgba(255,215,107,.42),transparent 35%)!important;animation:pulse 1.6s infinite!important}.event-overlay.space-warp:before{background:repeating-radial-gradient(circle at center,rgba(255,255,255,.2) 0 2px,transparent 2px 40px)!important;animation:spinShow 5s linear infinite!important}.event-overlay.jungle-quest:after{background:linear-gradient(135deg,rgba(72,213,151,.25),rgba(20,110,65,.14)),repeating-linear-gradient(120deg,rgba(72,213,151,.18) 0 12px,transparent 12px 50px)!important}.event-overlay.dance-floor:after{background:repeating-linear-gradient(45deg,rgba(255,114,210,.18) 0 20px,rgba(103,183,255,.18) 20px 40px,rgba(72,213,151,.16) 40px 60px)!important;animation:panShow 1.6s linear infinite!important}.event-overlay.singing-stars:before{background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.35),transparent 8%),radial-gradient(circle at 65% 22%,rgba(255,215,107,.28),transparent 9%),radial-gradient(circle at 60% 76%,rgba(103,183,255,.24),transparent 9%)!important;animation:pulse 2s ease-in-out infinite!important}.event-overlay.lightning-bolt:after{background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.38) 36%,rgba(72,213,151,.28) 38%,transparent 41%)!important;animation:pulse .75s steps(2,end) infinite!important}.event-overlay.rainbow-lesson:before{background:conic-gradient(from 0deg,rgba(255,100,120,.22),rgba(255,215,107,.24),rgba(72,213,151,.24),rgba(103,183,255,.24),rgba(217,210,255,.28),rgba(255,100,120,.22))!important;animation:spinShow 9s linear infinite!important}


/* V10: achievements, footer, no hash-jump tabs, stronger MP3/admin polish */
.site-footer{width:min(1220px,100%);margin:0 auto;padding:18px clamp(14px,3vw,26px) 28px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#66809a;font-size:.92rem;border-top:1px solid rgba(18,35,63,.08)}.site-footer a{text-decoration:none!important;color:inherit!important;font-weight:900}.site-footer a:hover{color:#0e6f4a!important}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}.compact-ranks .rank-row{position:relative}.rank-row.current{border-color:rgba(72,213,151,.65)!important;box-shadow:0 0 0 3px rgba(72,213,151,.12)}.account-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.account-stat-grid>div{border:1px solid rgba(18,35,63,.09);border-radius:18px;padding:12px;background:rgba(255,255,255,.72)}.account-stat-grid b{display:block;color:#12233f;font-size:1.2rem}.account-stat-grid span{display:block;color:#60748e;font-weight:900;font-size:.82rem;margin-top:2px}.counter-list{display:grid;gap:8px;max-height:390px;overflow:auto;padding-right:4px}.counter-list>div{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid rgba(18,35,63,.08);background:rgba(255,255,255,.7);border-radius:14px;padding:9px 10px}.counter-list span{color:#334b68;font-weight:850}.counter-list b{color:#0e6f4a}.achievement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.achievement-card{border:1px solid rgba(18,35,63,.09);background:rgba(255,255,255,.78);border-radius:20px;padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}.achievement-card.ready{border-color:rgba(72,213,151,.45);box-shadow:0 14px 28px rgba(72,213,151,.12)}.achievement-card.claimed{border-color:rgba(102,128,154,.2);background:rgba(238,243,248,.82)}.achievement-card h4{margin:0;color:#102037;line-height:1.2}.achievement-card p{margin:0;color:#60748e;line-height:1.42}.achievement-card small{color:#66809a;font-weight:800}.achievement-card>b{color:#0e6f4a;font-size:.88rem}.achievement-difficulty{align-self:flex-start;border-radius:999px;padding:5px 8px;background:#e8fff3;color:#0e6f4a;font-weight:1000;font-size:.76rem}.achievement-bar{height:10px;margin:2px 0}.small-achievements .achievement-card{min-height:auto}.tab-btn{scroll-margin-top:0!important}.tabs{scroll-margin-top:0!important}.is-waiting,.btn.is-waiting,.quick-game-btn.is-waiting{background:linear-gradient(135deg,#e74757,#b9162d)!important;color:#fff!important}@media(max-width:700px){.site-footer{display:grid;grid-template-columns:1fr;gap:6px;text-align:left}.section-head{display:grid}.achievement-grid{grid-template-columns:1fr}.account-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.counter-list{max-height:520px}}@media(max-width:390px){.account-stat-grid{grid-template-columns:1fr}.site-footer{padding-left:14px;padding-right:14px}}

/* V11 polish/fixes */
.full-span{grid-column:1/-1}
.regen-live{display:block;margin-top:8px;color:var(--muted);font-weight:800;white-space:nowrap}
.energy-value{white-space:nowrap;display:inline-flex;align-items:center;gap:2px;line-height:1.1}
.energy-slash{display:inline-block}
.panel,.card,.game-card,.stat-card,.achievement-card,.admin-card,.table-wrap,table,tbody,tr,td,th{color:var(--text)}
.admin-page .panel,.admin-page .card,.admin-page table,.admin-page .table-wrap{background:rgba(255,255,255,.78);color:#102018}
table th,table td{color:#102018;background:rgba(255,255,255,.72)}
table th{background:rgba(105,230,150,.20)}
.btn.is-waiting,.quick-game-btn.is-waiting{background:#d61f3d!important;color:#fff!important;border-color:#d61f3d!important;opacity:1;cursor:not-allowed}
.tiny-note{font-size:.82rem;margin-top:-6px;margin-bottom:10px}
html,body{max-width:100%;overflow-x:hidden}
*{box-sizing:border-box;min-width:0}
.main-shell,.container,.page-wrap{width:min(1180px,100%);max-width:100%;padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));overflow-x:hidden}
.tabs{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
@media(max-width:720px){.grid-two{grid-template-columns:1fr!important}.full-span{grid-column:auto}.upgrade-row{align-items:flex-start}.upgrade-row .btn{width:100%}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid{grid-template-columns:1fr}.quick-game-buttons{grid-template-columns:1fr}.tabs{padding:6px 0;gap:7px}.tab-btn{flex:1 1 calc(50% - 8px);justify-content:center}.energy-value{font-size:1.05rem}.site-footer{flex-direction:column;align-items:flex-start;gap:6px}}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px max(14px,env(safe-area-inset-left));font-weight:800;color:var(--muted);width:min(1180px,100%);margin:0 auto}


/* V12 final gameplay fixes */
:root{--coin:#ffd76b;--okgreen:#65f0a5;--failred:#e62a45}
.stat-card b[data-stat]{transition:transform .12s ease}
.cost-chip{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border-radius:999px;padding:4px 8px;background:rgba(255,215,107,.18);color:#2b1a00;font-weight:1000;line-height:1}
.cost-chip .cost-icon{filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))}
.cost-chip b{color:inherit}
.cost-gems{background:rgba(103,183,255,.18);color:#062647}
.cost-learning_stars{background:rgba(255,239,160,.22);color:#3a2a00}
.challenge-overview-panel{background:linear-gradient(135deg,rgba(232,255,243,.92),rgba(238,246,255,.94))!important;color:#102018!important}
.challenge-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.challenge-card{border:1px solid rgba(18,35,63,.09);background:rgba(255,255,255,.78);border-radius:22px;padding:15px;display:grid;gap:10px;color:#102018}
.challenge-card h3{margin:0;color:#102018}.challenge-card p{margin:0;color:#536982}
.challenge-meta{display:flex;flex-wrap:wrap;gap:8px}.challenge-meta span{border-radius:999px;background:rgba(72,213,151,.16);padding:6px 9px;font-weight:900;color:#0d5b3d;font-size:.84rem}
.challenge-score{display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:16px;background:#102018;color:#e8fff3;padding:10px 12px}
.challenge-score b{font-size:1.25rem}.challenge-score span{color:#bdf5d2;font-size:.84rem;font-weight:900}
.challenge-prize{border-radius:16px;background:rgba(255,215,107,.18);padding:10px 12px}.challenge-prize b{display:block;color:#5f4300}.challenge-prize span{color:#423412}
.tabs{position:sticky;top:66px;z-index:25;background:rgba(244,250,255,.88)!important;border:1px solid rgba(18,35,63,.08);border-radius:22px;padding:8px!important;box-shadow:0 10px 28px rgba(10,23,45,.08)!important}
.tab-btn{appearance:none;border:1px solid rgba(18,35,63,.1)!important;background:#fff!important;color:#17314e!important}
.tab-btn.active{background:linear-gradient(135deg,#48d597,#67b7ff)!important;color:#082018!important}
.shop-grid .pill:first-child{background:rgba(255,215,107,.16);border-color:rgba(255,215,107,.35)}
.toast.success{background:#65f0a5!important;color:#06170d!important;border:1px solid rgba(3,36,19,.2)!important;font-weight:900}
.toast.error{background:#d61f3d!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;font-weight:900}
.admin-page table,.admin-page tbody,.admin-page tr,.admin-page td,.admin-page th,
table,tbody,tr,td,th{color:#102018!important}
.admin-page table a, table a{color:#0b6244!important;text-decoration:none!important;font-weight:900}
.mp3-card{background:rgba(255,255,255,.88)!important;color:#102018!important}
.mp3-card b,.mp3-card small{color:#102018!important}
@media(max-width:720px){
  .tabs{top:112px;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible!important}
  .tab-btn{width:100%;min-height:48px}
  .challenge-card-grid{grid-template-columns:1fr}
}


/* V12.1 emergency gameplay/layout hotfix */
.rank-badge,
.challenge-overview-panel .rank-badge{
  color:#3a2600!important;
  background:linear-gradient(135deg,#fff0a8,#ffd76b)!important;
  border-color:rgba(170,118,0,.22)!important;
}
.rank-badge *{color:inherit!important}

.regen-live{
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  white-space:nowrap!important;
  line-height:1.25!important;
  color:#60748e!important;
}
.regen-live b{
  display:inline!important;
  color:#102018!important;
  white-space:nowrap!important;
  line-height:1.25!important;
}

.btn,
.quick-game-btn,
.shop-tab,
.tab-btn{
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.btn .cost-chip{
  flex:0 0 auto!important;
  margin-left:3px!important;
}

#tab-upgrades .grid-two{
  width:100%!important;
  grid-template-columns:minmax(290px,.9fr) minmax(380px,1.1fr)!important;
  align-items:start!important;
}
#tab-upgrades .panel{
  min-width:0!important;
  overflow:visible!important;
}
.upgrade-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  margin:10px 0!important;
  padding:14px!important;
  background:rgba(255,255,255,.74)!important;
  border:1px solid rgba(18,35,63,.09)!important;
  border-radius:18px!important;
  color:#102018!important;
  min-width:0!important;
}
.upgrade-row > div{
  min-width:0!important;
}
.upgrade-row b,
.upgrade-row p,
.upgrade-row span:not(.cost-icon){
  color:#102018!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.upgrade-row p{
  margin:.35rem 0 0!important;
  line-height:1.45!important;
  color:#536982!important;
}
.upgrade-row .btn{
  justify-self:end!important;
  width:auto!important;
  min-width:124px!important;
  max-width:100%!important;
  min-height:44px!important;
  padding:10px 14px!important;
  line-height:1.1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  text-align:center!important;
  flex-shrink:0!important;
}

#tab-upgrades .building-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
  margin-top:14px!important;
}
#tab-upgrades .building-list .upgrade-row{
  margin:0!important;
  grid-template-columns:1fr!important;
  grid-template-rows:1fr auto!important;
  align-content:space-between!important;
  min-height:156px!important;
}
#tab-upgrades .building-list .upgrade-row .btn{
  justify-self:start!important;
  align-self:end!important;
}

#tab-progress .panel,
#tab-progress .rank-row,
#tab-progress .achievement-card,
#tab-progress .account-stat-grid>div,
#tab-progress .counter-list>div{
  color:#102018!important;
}
#tab-progress .panel h2,
#tab-progress .panel h3,
#tab-progress .rank-row b,
#tab-progress .rank-row span,
#tab-progress .achievement-card h4,
#tab-progress .achievement-card p,
#tab-progress .achievement-card small,
#tab-progress .account-stat-grid b,
#tab-progress .account-stat-grid span,
#tab-progress .counter-list span,
#tab-progress .counter-list b{
  color:#102018!important;
}
#tab-progress .muted{
  color:#60748e!important;
}

.challenge-overview-panel,
.challenge-overview-panel h2,
.challenge-overview-panel p,
.challenge-overview-panel .muted{
  color:#102018!important;
}
.challenge-overview-panel .muted{
  color:#4f6682!important;
}

@media(max-width:1050px){
  #tab-upgrades .grid-two{grid-template-columns:1fr 1fr!important}
  #tab-upgrades .building-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  #tab-upgrades .grid-two{grid-template-columns:1fr!important}
  .upgrade-row{grid-template-columns:1fr!important;align-items:start!important}
  .upgrade-row .btn{justify-self:stretch!important;width:100%!important;min-width:0!important}
  #tab-upgrades .building-list{grid-template-columns:1fr!important}
  #tab-upgrades .building-list .upgrade-row{min-height:auto!important}
}


/* V12.2: richer overview, challenge gating copy, MP3/event polish */
.rank-badge{
  color:#211500!important;
  background:linear-gradient(135deg,#fff2ad,#ffc45d)!important;
  border-color:rgba(99,62,0,.18)!important;
  text-shadow:none!important;
}
.overview-dashboard-panel{
  background:linear-gradient(135deg,rgba(14,25,45,.96),rgba(20,48,70,.94))!important;
  border:1px solid rgba(103,183,255,.22)!important;
  box-shadow:0 22px 70px rgba(0,0,0,.24), inset 0 0 45px rgba(72,213,151,.05)!important;
}
.overview-activity-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:14px;
}
.overview-activity-card{
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  padding:15px;
  min-height:154px;
  display:flex;
  flex-direction:column;
  gap:8px;
  box-shadow:0 16px 38px rgba(0,0,0,.18);
}
.overview-activity-card>span{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  border-radius:999px;
  padding:6px 9px;
  background:rgba(103,183,255,.15);
  color:#dff1ff;
  font-weight:1000;
  font-size:.8rem;
}
.overview-activity-card h3{
  margin:0;
  color:#ffffff;
  font-size:1.05rem;
  line-height:1.25;
}
.overview-activity-card p{
  margin:0;
  color:#afc0d8;
  line-height:1.45;
}
.overview-activity-card b{
  color:#9df2c0;
  line-height:1.35;
  margin-top:auto;
}
.overview-activity-card small{
  color:#7f95b2;
}
.challenge-overview-panel .rank-badge,
#tab-progress .rank-badge{
  color:#211500!important;
}
.mp3-card.missing{
  border-color:rgba(255,107,122,.35)!important;
  background:rgba(255,107,122,.06)!important;
}
.event-overlay[hidden]{
  display:none!important;
}
.event-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:9990!important;
  pointer-events:none!important;
  overflow:hidden!important;
}
.event-vector-layer{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 20%,rgba(255,215,107,.18),transparent 28%),
    radial-gradient(circle at 78% 28%,rgba(103,183,255,.16),transparent 30%),
    radial-gradient(circle at 48% 72%,rgba(72,213,151,.15),transparent 34%);
  animation:eventVectorPulse 2.8s ease-in-out infinite alternate;
}
.event-overlay.dj-light-show .event-vector-layer,
.event-overlay.nightclub-show .event-vector-layer,
.event-overlay.laser-grid .event-vector-layer{
  background:
    linear-gradient(110deg,transparent 0 38%,rgba(103,183,255,.20) 40%,transparent 43%),
    linear-gradient(70deg,transparent 0 50%,rgba(255,100,180,.18) 52%,transparent 55%),
    radial-gradient(circle at 50% 50%,rgba(255,255,255,.10),transparent 45%);
}
.event-overlay.green-matrix .event-vector-layer{
  background:linear-gradient(180deg,rgba(72,213,151,.08),rgba(6,13,22,.30));
}
.event-overlay.firework-finale .event-vector-layer,
.event-overlay.confetti-cannon .event-vector-layer{
  background:radial-gradient(circle at 50% 35%,rgba(255,215,107,.24),transparent 32%),radial-gradient(circle at 20% 75%,rgba(255,107,122,.16),transparent 30%),radial-gradient(circle at 80% 70%,rgba(103,183,255,.16),transparent 30%);
}
@keyframes eventVectorPulse{
  from{opacity:.55;transform:scale(1)}
  to{opacity:.95;transform:scale(1.04)}
}
@media(max-width:1100px){
  .overview-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .overview-activity-grid{grid-template-columns:1fr;}
  .overview-activity-card{min-height:auto;}
}

/* V12.3: cooldown fix visuals, stronger overview, admin readability, live message modal, wow event effects */
.admin-page{background:#eef5fb!important;color:#102018!important;}
.admin-page .app-shell{line-height:1.65!important;}
.admin-page .card,.admin-page .panel{background:rgba(255,255,255,.94)!important;color:#102018!important;border:1px solid rgba(18,35,63,.10)!important;box-shadow:0 16px 36px rgba(15,35,65,.08)!important;margin:18px 0!important;padding:20px!important;}
.admin-page h1,.admin-page h2,.admin-page h3,.admin-page h4,.admin-page label,.admin-page b,.admin-page strong,.admin-page p,.admin-page span,.admin-page small{color:#102018!important;line-height:1.45!important;}
.admin-page .muted{color:#536982!important;line-height:1.55!important;}
.admin-page .admin-hero-card{background:linear-gradient(135deg,#ffffff,#e8fff3)!important;}
.admin-page form,.admin-page label{gap:10px!important;}
.admin-page label{margin-bottom:14px!important;display:grid!important;}
.admin-page .input,.admin-page select,.admin-page textarea{background:#f9fcff!important;color:#102018!important;border:1px solid rgba(18,35,63,.20)!important;margin-top:6px!important;line-height:1.4!important;}
.admin-page .btn{margin-top:6px!important;margin-right:8px!important;color:#06170d!important;}
.admin-page .btn.danger{color:#fff!important;}
.admin-page .drop-row{display:grid;grid-template-columns:1.3fr .8fr .8fr .8fr;gap:10px;margin:10px 0;padding:10px;border:1px solid rgba(18,35,63,.10);border-radius:16px;background:#f8fbff;}
.admin-page .feed-list{display:grid;gap:12px;}
.admin-page .feed-item{display:grid;gap:7px;padding:13px;border-radius:16px;background:#f8fbff;border:1px solid rgba(18,35,63,.09);color:#102018!important;}
.admin-page .mp3-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;}
.admin-page .mp3-card{display:grid;gap:10px;padding:14px;border-radius:18px;border:1px solid rgba(18,35,63,.10);background:#fff!important;}
.admin-page .mp3-card.missing{opacity:.72;}
.admin-page audio{width:100%;}
.admin-page .table-wrap{margin-top:12px!important;}
.admin-page table{background:#fff!important;}
.admin-page th{background:#e8fff3!important;color:#102018!important;}
.admin-page td{background:#fff!important;color:#102018!important;line-height:1.5!important;}
.app-shell .panel,.app-shell .card,.game-card{line-height:1.5;}
.app-shell .section-head{gap:14px;margin-bottom:14px;}
.overview-dashboard-panel .section-head h2{color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.35)!important;}
.overview-dashboard-panel .section-head .muted{color:#c8d7eb!important;}
.overview-pro-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;align-items:start;margin-top:16px;}
.overview-stats-panel,.reward-history-panel{background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(238,246,255,.96))!important;color:#102018!important;}
.overview-stats-panel h2,.reward-history-panel h2,.overview-stats-panel p,.reward-history-panel p{color:#102018!important;}
.performance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.performance-card{border:1px solid rgba(18,35,63,.09);border-radius:20px;background:linear-gradient(145deg,#ffffff,#f4f9ff);padding:14px;display:grid;gap:12px;}
.performance-card h3{margin:0;color:#102018!important;}
.performance-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
.performance-metrics span{border-radius:14px;background:#eef7ff;padding:10px;display:grid;gap:2px;}
.performance-metrics b{color:#0e6f4a!important;font-size:1.15rem;}
.performance-metrics small{color:#536982!important;font-weight:900;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em;}
.reward-drop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;}
.reward-drop-card{position:relative;overflow:hidden;border:1px solid rgba(18,35,63,.09);border-radius:20px;background:linear-gradient(145deg,#102018,#174866);padding:14px;display:grid;gap:9px;min-height:130px;box-shadow:0 15px 35px rgba(13,40,65,.15);}
.reward-drop-card:after{content:"";position:absolute;right:-35px;top:-35px;width:95px;height:95px;border-radius:50%;background:rgba(255,215,107,.25);}
.reward-drop-card span{color:#ffe8a1!important;font-weight:1000;text-transform:uppercase;font-size:.76rem;letter-spacing:.06em;}
.reward-drop-card b{color:#fff!important;line-height:1.35!important;}
.reward-drop-card small{color:#bed7ef!important;font-weight:900;}
.live-message-host{position:fixed;inset:0;z-index:10050;pointer-events:none;display:grid;place-items:center;padding:18px;}
.live-message-card.live-message-modal{position:relative;width:min(520px,100%);overflow:hidden;border-radius:28px;background:linear-gradient(135deg,#ffffff,#e8fff3);border:2px solid rgba(72,213,151,.45);box-shadow:0 30px 90px rgba(0,0,0,.42);padding:0;color:#102018!important;pointer-events:none;animation:messagePop .25s ease-out;}
.live-message-glow{position:absolute;inset:-40%;background:conic-gradient(from 0deg,rgba(72,213,151,.32),rgba(103,183,255,.24),rgba(255,215,107,.28),rgba(72,213,151,.32));animation:spinShow 5s linear infinite;opacity:.7;}
.live-message-content{position:relative;margin:3px;border-radius:25px;background:rgba(255,255,255,.94);padding:22px;display:grid;gap:10px;text-align:center;}
.live-message-content span{color:#0e6f4a!important;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;}
.live-message-content b{color:#102018!important;font-size:1.35rem;line-height:1.2!important;}
.live-message-content p{color:#263d56!important;font-size:1.02rem;line-height:1.55!important;margin:0;white-space:pre-wrap;}
.live-message-content small{color:#536982!important;font-weight:900;}
.live-message-content em{color:#775200!important;font-style:normal;font-weight:1000;background:#fff1ad;border-radius:999px;padding:7px 11px;justify-self:center;}
.toast{background:#fff!important;color:#102018!important;border:1px solid rgba(18,35,63,.12)!important;}
@keyframes messagePop{from{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}
.event-overlay{background:radial-gradient(circle at center,rgba(255,215,107,.22),rgba(5,8,18,.94) 68%)!important;mix-blend-mode:normal!important;}
.event-vector-layer{filter:saturate(1.5);opacity:1!important;}
.event-beam-layer{position:absolute;inset:-20%;background:linear-gradient(70deg,transparent 0 28%,rgba(255,255,255,.30) 31%,transparent 35%),linear-gradient(110deg,transparent 0 55%,rgba(103,183,255,.25) 59%,transparent 63%),linear-gradient(140deg,transparent 0 40%,rgba(255,114,210,.22) 44%,transparent 48%);animation:eventBeams 1.8s linear infinite;}
.event-wow-title{position:absolute;left:50%;top:8%;transform:translateX(-50%);font-weight:1000;font-size:clamp(1.8rem,7vw,5rem);line-height:1;text-align:center;color:#fff;text-shadow:0 0 18px rgba(255,255,255,.8),0 0 45px rgba(103,183,255,.75),0 8px 22px rgba(0,0,0,.55);white-space:nowrap;max-width:96%;overflow:hidden;text-overflow:ellipsis;animation:eventTitlePulse 1.6s ease-in-out infinite alternate;}
.particle{font-weight:1000;text-shadow:0 0 12px rgba(255,255,255,.85),0 8px 18px rgba(0,0,0,.4);z-index:3;}
.event-widget{z-index:10000!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 20px 70px rgba(0,0,0,.35),0 0 45px rgba(103,183,255,.22)!important;}
.event-overlay.dj-light-show .event-beam-layer,.event-overlay.nightclub-show .event-beam-layer,.event-overlay.laser-grid .event-beam-layer{background:repeating-conic-gradient(from 0deg,rgba(255,0,160,.28) 0 8deg,transparent 8deg 18deg,rgba(0,210,255,.28) 18deg 28deg,transparent 28deg 42deg),radial-gradient(circle at center,rgba(255,255,255,.25),transparent 25%);animation:spinShow 2.2s linear infinite;}
.event-overlay.racing-neon .event-beam-layer{background:repeating-linear-gradient(90deg,rgba(255,255,255,.0) 0 80px,rgba(255,215,107,.32) 80px 90px,rgba(255,255,255,.0) 90px 160px),linear-gradient(90deg,rgba(255,0,70,.22),rgba(0,210,255,.22));animation:panShow .8s linear infinite;}
.event-overlay.football-show .event-beam-layer{background:radial-gradient(circle at 50% 80%,rgba(72,213,151,.32),transparent 32%),repeating-linear-gradient(90deg,rgba(255,255,255,.14) 0 4px,transparent 4px 70px);}
.event-overlay.book-storm .event-beam-layer,.event-overlay.word-rain .event-beam-layer{background:repeating-linear-gradient(180deg,rgba(255,255,255,.16) 0 3px,transparent 3px 42px),linear-gradient(135deg,rgba(103,183,255,.22),rgba(72,213,151,.16));animation:panShow 1.3s linear infinite;}
.event-overlay.energy-surge .event-beam-layer,.event-overlay.lightning-bolt .event-beam-layer{background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.55) 37%,rgba(95,242,160,.42) 39%,transparent 43%),radial-gradient(circle,rgba(95,242,160,.32),transparent 45%);animation:pulse .55s steps(2,end) infinite;}
@keyframes eventBeams{from{transform:translateX(-8%) rotate(0deg)}to{transform:translateX(8%) rotate(10deg)}}
@keyframes eventTitlePulse{from{opacity:.88;transform:translateX(-50%) scale(.98)}to{opacity:1;transform:translateX(-50%) scale(1.04)}}
@media(max-width:1000px){.overview-pro-grid{grid-template-columns:1fr}.performance-grid{grid-template-columns:1fr}.reward-drop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.admin-page .drop-row{grid-template-columns:1fr}.admin-page .card,.admin-page .panel{padding:16px!important}.performance-metrics{grid-template-columns:1fr 1fr}.reward-drop-grid{grid-template-columns:1fr}.event-wow-title{top:6%;white-space:normal}.live-message-content{padding:18px}.live-message-content b{font-size:1.15rem}}/* V12.3 badge readability */
.rank-badge{background:linear-gradient(135deg,#ffe072,#ffba46)!important;color:#211300!important;border:0!important;}
.challenge-overview-panel .rank-badge,.achievements-panel .rank-badge{color:#211300!important;}

/* V12.4: hard cooldown display guard, overview rows, top-right admin messages, bigger event WOW visuals */
.overview-pro-grid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;align-items:stretch!important;margin-top:18px!important;}
.overview-stats-panel,.reward-history-panel{width:100%!important;}
.reward-drop-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
@media(max-width:1050px){.reward-drop-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.reward-drop-grid{grid-template-columns:1fr!important}}

.live-message-host{position:fixed!important;top:84px!important;right:18px!important;left:auto!important;bottom:auto!important;inset:auto 18px auto auto!important;z-index:10050!important;pointer-events:none!important;display:grid!important;place-items:unset!important;justify-items:end!important;width:min(520px,calc(100vw - 24px))!important;padding:0!important;}
.live-message-card.live-message-modal{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;border-radius:26px!important;background:linear-gradient(135deg,#ffffff,#e8fff3)!important;padding:0!important;color:#102018!important;overflow:hidden!important;pointer-events:none!important;}
.live-message-content{display:grid!important;width:100%!important;margin:0!important;border-radius:24px!important;padding:22px 24px!important;text-align:left!important;background:rgba(255,255,255,.96)!important;}
.live-message-content em{justify-self:start!important;}
.live-message-content b{color:#102018!important;}
@media(max-width:700px){.live-message-host{top:112px!important;right:12px!important;width:calc(100vw - 24px)!important}.live-message-content{padding:18px!important}}

.event-wow-title{display:none!important;}
.event-overlay{background:#03050d!important;mix-blend-mode:normal!important;}
.event-overlay .event-vector-layer,.event-overlay .event-beam-layer,.event-overlay .event-strobe-layer,.event-overlay .event-rave-floor{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.event-overlay .event-vector-layer{background:radial-gradient(circle at 50% 52%,rgba(255,255,255,.18),transparent 18%),radial-gradient(circle at 20% 18%,rgba(103,183,255,.24),transparent 24%),radial-gradient(circle at 82% 24%,rgba(255,114,210,.22),transparent 24%),radial-gradient(circle at 55% 88%,rgba(72,213,151,.18),transparent 30%);filter:saturate(1.8) contrast(1.15);}
.event-overlay .event-rave-floor{top:54%;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.15)),repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 2px,transparent 2px 64px),repeating-linear-gradient(0deg,rgba(255,255,255,.07) 0 2px,transparent 2px 54px);transform:perspective(420px) rotateX(62deg) scale(1.6);transform-origin:50% 100%;animation:raveFloorMove 1.2s linear infinite;opacity:.78;}
.event-overlay .event-beam-layer{inset:-25%;background:repeating-conic-gradient(from 0deg,rgba(255,0,170,.28) 0 7deg,transparent 7deg 18deg,rgba(0,210,255,.28) 18deg 28deg,transparent 28deg 40deg,rgba(255,215,107,.22) 40deg 47deg,transparent 47deg 60deg);animation:spinShow 2.4s linear infinite;mix-blend-mode:screen;opacity:.95;}
.event-overlay .event-strobe-layer{background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.35),transparent 14%),linear-gradient(90deg,transparent 0 48%,rgba(255,255,255,.25) 50%,transparent 52%);animation:eventStrobe .42s steps(2,end) infinite;mix-blend-mode:screen;opacity:.45;}
.event-overlay .particle{z-index:5!important;font-size:clamp(28px,4.5vw,68px)!important;filter:drop-shadow(0 0 18px rgba(255,255,255,.85));}
@keyframes raveFloorMove{to{background-position:64px 54px,64px 0,0 54px}}
@keyframes eventStrobe{0%,45%{opacity:.12}46%,70%{opacity:.78}71%,100%{opacity:.24}}

.event-overlay.rave-mega-blast .event-vector-layer,.event-overlay.club-laser-chaos .event-vector-layer,.event-overlay.neon-confetti-rave .event-vector-layer{background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.35),transparent 14%),radial-gradient(circle at 18% 20%,rgba(255,0,170,.5),transparent 26%),radial-gradient(circle at 82% 25%,rgba(0,210,255,.48),transparent 26%),radial-gradient(circle at 50% 84%,rgba(72,213,151,.34),transparent 32%)!important;}
.event-overlay.rave-mega-blast .event-beam-layer,.event-overlay.club-laser-chaos .event-beam-layer{animation:spinShow .9s linear infinite!important;opacity:1!important;background:repeating-conic-gradient(from 0deg,rgba(255,0,170,.44) 0 5deg,transparent 5deg 14deg,rgba(0,210,255,.44) 14deg 20deg,transparent 20deg 30deg,rgba(255,215,107,.35) 30deg 36deg,transparent 36deg 48deg)!important;}
.event-overlay.strobe-storm .event-strobe-layer{animation:eventStrobe .18s steps(2,end) infinite!important;opacity:.9!important;}
.event-overlay.bass-drop-tunnel .event-beam-layer,.event-overlay.cyber-rainbow-grid .event-beam-layer{background:repeating-radial-gradient(circle at center,rgba(255,255,255,.24) 0 3px,transparent 3px 38px),conic-gradient(rgba(255,0,170,.3),rgba(0,210,255,.35),rgba(72,213,151,.3),rgba(255,215,107,.28),rgba(255,0,170,.3))!important;animation:spinShow 1.4s linear infinite!important;}
.event-overlay.disco-mirrorball .event-vector-layer{background:radial-gradient(circle at 50% 18%,rgba(255,255,255,.5),transparent 8%),repeating-conic-gradient(from 45deg,rgba(255,255,255,.16) 0 6deg,rgba(103,183,255,.1) 6deg 12deg,rgba(255,114,210,.12) 12deg 18deg)!important;animation:spinShow 5s linear infinite!important;}
.event-overlay.winner-gold-burst .event-vector-layer,.event-overlay.victory-fireworks .event-vector-layer,.event-overlay.mega-celebration .event-vector-layer{background:radial-gradient(circle at 50% 45%,rgba(255,215,107,.58),transparent 22%),radial-gradient(circle at 20% 25%,rgba(255,255,255,.4),transparent 12%),radial-gradient(circle at 80% 20%,rgba(255,114,210,.35),transparent 14%),radial-gradient(circle at 65% 78%,rgba(72,213,151,.32),transparent 18%)!important;animation:pulse 1.1s ease-in-out infinite!important;}
.event-overlay.car-race-mayhem .event-rave-floor{background:repeating-linear-gradient(90deg,#fff 0 38px,#050505 38px 76px),linear-gradient(90deg,rgba(255,0,70,.35),rgba(0,210,255,.35))!important;animation:raceTrack .35s linear infinite!important;opacity:.55!important;}
.event-overlay.building-boom .event-vector-layer{background:linear-gradient(180deg,rgba(103,183,255,.20),rgba(3,5,13,.94)),repeating-linear-gradient(90deg,rgba(255,215,107,.18) 0 12px,transparent 12px 70px),repeating-linear-gradient(0deg,rgba(255,215,107,.13) 0 12px,transparent 12px 70px)!important;}
.event-overlay.prize-vault .event-vector-layer{background:radial-gradient(circle at center,rgba(255,215,107,.5),transparent 18%),radial-gradient(circle at 50% 82%,rgba(72,213,151,.32),transparent 28%),linear-gradient(135deg,rgba(103,183,255,.16),rgba(255,114,210,.18))!important;}
.event-overlay.candy-carnival .event-vector-layer{background:radial-gradient(circle at 15% 20%,rgba(255,114,210,.45),transparent 25%),radial-gradient(circle at 85% 24%,rgba(255,215,107,.42),transparent 24%),radial-gradient(circle at 50% 80%,rgba(103,183,255,.35),transparent 30%)!important;}

.admin-page .admin-event-editor{display:grid!important;gap:16px!important;}
.admin-page .saved-event-list{max-height:520px;overflow:auto;padding-right:4px;}
.admin-page .saved-event-item{grid-template-columns:1fr auto;align-items:center;}
.admin-page .form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
@media(max-width:760px){.admin-page .saved-event-item{grid-template-columns:1fr}.admin-page .form-actions .btn{width:100%}}

/* V12.5: stable live cooldowns, admin visual preview, saved preset actions, player monitoring */
.saved-event-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:10px!important;}
.saved-event-actions form{margin:0!important;display:inline-flex!important;}
.edit-preset-btn{background:#102347!important;color:#fff!important;border-color:#102347!important;min-width:120px;text-align:center;justify-content:center;}
.delete-preset-btn,.btn.danger.delete-preset-btn{background:#e13d55!important;color:#fff!important;border-color:#e13d55!important;min-width:92px;text-align:center;justify-content:center;}
.visual-select-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;}
.preview-visual-btn{background:#eef7ff!important;color:#102347!important;border:1px solid #bdd2ec!important;white-space:nowrap;}
.drop-row-head{background:#102347!important;color:#fff!important;font-weight:1000!important;border-radius:14px!important;padding:12px 14px!important;}
.drop-row-head span{color:#fff!important;font-size:.88rem;text-transform:uppercase;letter-spacing:.04em;}
.admin-visual-preview{position:fixed!important;inset:0!important;z-index:20000!important;pointer-events:auto!important;overflow:hidden!important;display:block!important;}
.admin-preview-end{position:fixed!important;right:24px!important;bottom:24px!important;z-index:20020!important;background:#e13d55!important;color:#fff!important;border-color:#e13d55!important;padding:14px 20px!important;box-shadow:0 18px 40px rgba(0,0,0,.35)!important;}
.admin-visual-preview .particle{position:absolute;top:-80px;z-index:5;animation:particleFall linear forwards;filter:drop-shadow(0 0 18px rgba(255,255,255,.9));pointer-events:none;}
.admin-online-stats .stat-card small{display:block;margin-top:8px;color:#3c5876;font-weight:800;line-height:1.35;}
.admin-users-table table td,.admin-users-table table th{vertical-align:top;line-height:1.45!important;}
.online-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-weight:1000;font-size:.78rem;border:1px solid #d8e4ef;background:#eef4fb;color:#153150;}
.online-pill.online{background:#d9ffe9;color:#086434;border-color:#73e4a1;}
.online-pill.recent{background:#fff0bf;color:#765200;border-color:#ffd86d;}
.online-pill.offline{background:#eef1f5;color:#54677c;border-color:#d9e1ea;}
.user-profile-panel{display:grid;gap:16px!important;}
.focus-advice{border:1px solid #dce8f5;background:#f5faff;border-radius:20px;padding:16px 18px;line-height:1.5!important;}
.focus-advice b{display:block;color:#061f3d;font-size:1.05rem;margin-bottom:6px;}
.focus-advice p{margin:0;color:#243b56;}
.focus-advice.excellent{background:#eafff4;border-color:#8deab7;}
.focus-advice.focus{background:#fff6da;border-color:#ffd35c;}
.live-message-host{top:78px!important;right:18px!important;width:min(560px,calc(100vw - 28px))!important;justify-items:stretch!important;}
.live-message-card.live-message-modal{width:100%!important;max-width:none!important;}
.live-message-content{width:100%!important;box-sizing:border-box!important;}
@media(max-width:800px){.visual-select-row{grid-template-columns:1fr}.preview-visual-btn{width:100%;}.drop-row-head{display:none!important}.saved-event-actions{flex-direction:column;align-items:stretch}.saved-event-actions .btn{width:100%;}.admin-preview-end{right:14px!important;bottom:14px!important}.admin-users-table table{min-width:980px}}
@keyframes particleFall{0%{transform:translateY(-10vh) rotate(0deg) scale(.8);opacity:0}10%{opacity:1}100%{transform:translateY(115vh) rotate(720deg) scale(1.25);opacity:0}}

/* ===== V12.7 auth revamp + readability fixes ===== */
body.auth-page{background:radial-gradient(circle at top left,#203765 0,#0a1020 34%,#060811 100%)}
body.auth-page .app-shell{width:min(1320px,100%);padding-top:24px}
.auth-landing{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.9fr);gap:18px;align-items:stretch}
.auth-showcase,.auth-card-large{border:1px solid rgba(255,255,255,.12);border-radius:30px;box-shadow:0 20px 60px rgba(0,0,0,.28)}
.auth-showcase{position:relative;overflow:hidden;padding:28px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.03))}
.auth-showcase:before{content:"";position:absolute;right:-110px;top:-90px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,215,107,.26),transparent 62%)}
.auth-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,215,107,.12);border:1px solid rgba(255,215,107,.24);color:#ffe07f;font-size:.86rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.auth-showcase h1{margin:12px 0 12px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.05}
.auth-intro{max-width:860px;color:#d8e5ff;font-size:1.04rem}
.auth-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.auth-feature-card{padding:16px;border-radius:22px;background:rgba(8,14,28,.42);border:1px solid rgba(255,255,255,.08)}
.auth-feature-card b{display:block;margin-bottom:6px;font-size:1rem}
.auth-feature-card p{margin:0;color:#b7c6e1}
.auth-highlight-band,.auth-stat-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.auth-highlight-band>div,.auth-stat-strip>div{padding:14px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.auth-highlight-band strong,.auth-stat-strip b{display:block;margin-bottom:4px}
.auth-highlight-band span,.auth-stat-strip span{display:block;color:#bfd1ef;font-size:.92rem}
.auth-panel-wrap{display:flex;align-items:stretch}
.auth-card-large{width:100%;max-width:none;padding:26px;background:linear-gradient(180deg,rgba(12,18,35,.98),rgba(10,15,29,.96))}
.auth-panel-chip{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:rgba(95,242,160,.12);border:1px solid rgba(95,242,160,.25);color:#8ef7bf;font-size:.84rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.auth-card-large h2{margin:12px 0 8px;font-size:1.8rem}
.form-stack.auth-form-stack{display:grid;gap:12px;margin-top:16px}
.auth-form-stack label{display:grid;gap:6px;font-weight:800}
.auth-form-stack .input{background:#0b1427}
.auth-bottom-links{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;flex-wrap:wrap}
.challenge-card,.challenge-card h3,.challenge-card h4,.challenge-card .title{color:#102018!important}
.challenge-card p,.challenge-card .muted{color:#415470!important}
.leaderboard-row-card .name{color:#101924!important}
.leaderboard-row-card .metric b{color:#0f1b2f!important}
.leaderboard-row-card .metric small{color:#556b87!important}

/* ===== V12.7 event overlay improvements ===== */
.event-overlay.no-rain .particle:not(.rocket):not(.burst){display:none!important}
.event-overlay .particle{will-change:transform,opacity;pointer-events:none}
.event-overlay .particle.fall{animation:particleFallV127 linear forwards!important}
.event-overlay .particle.drift{animation:particleDriftV127 linear forwards!important}
.event-overlay .particle.float{animation:particleFloatV127 linear forwards!important}
.event-overlay .particle.rise{animation:particleRiseV127 linear forwards!important}
.event-overlay .particle.rocket{top:auto!important;bottom:-12vh;animation:rocketLaunchV127 ease-out forwards!important;font-size:clamp(10px,1vw,18px)!important;color:#fff;text-shadow:0 0 8px rgba(255,255,255,.9),0 0 24px rgba(255,215,107,.9)}
.event-overlay .particle.burst{animation:fireworkBurstV127 ease-out forwards!important;font-size:clamp(16px,2vw,34px)!important}
.event-overlay.firework-finale .event-beam-layer,.event-overlay.victory-fireworks .event-beam-layer,.event-overlay.mega-celebration .event-beam-layer{background:radial-gradient(circle at center,rgba(255,255,255,.18),transparent 24%),conic-gradient(from 0deg,rgba(255,80,115,.22),rgba(255,215,107,.24),rgba(72,213,151,.22),rgba(103,183,255,.22),rgba(255,80,115,.22))!important;animation:spinShow 5.4s linear infinite!important;opacity:.78!important}
.event-overlay.car-race-mayhem .event-vector-layer,.event-overlay.racing-neon .event-vector-layer{background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.45)),radial-gradient(circle at 18% 20%,rgba(255,0,90,.26),transparent 24%),radial-gradient(circle at 84% 18%,rgba(0,210,255,.25),transparent 22%),repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px 86px)!important}
.event-overlay.book-storm .event-vector-layer,.event-overlay.word-rain .event-vector-layer,.event-overlay.math-rain .event-vector-layer{background:radial-gradient(circle at 20% 18%,rgba(103,183,255,.22),transparent 22%),radial-gradient(circle at 84% 18%,rgba(72,213,151,.20),transparent 22%),linear-gradient(180deg,rgba(11,22,42,.72),rgba(3,6,12,.92))!important}
.event-overlay.rave-mega-blast .event-rave-floor,.event-overlay.club-laser-chaos .event-rave-floor,.event-overlay.neon-confetti-rave .event-rave-floor,.event-overlay.dj-light-show .event-rave-floor,.event-overlay.nightclub-show .event-rave-floor{opacity:.94!important;animation:raveFloorMove .65s linear infinite!important}
.admin-visual-preview.no-rain .particle:not(.rocket):not(.burst){display:none!important}
.admin-preview-end{position:absolute;top:16px;right:16px;z-index:6;pointer-events:auto}
@keyframes particleFallV127{0%{transform:translate3d(0,-15vh,0) rotate(0deg) scale(.84);opacity:0}10%{opacity:1}100%{transform:translate3d(0,116vh,0) rotate(600deg) scale(1.16);opacity:0}}
@keyframes particleDriftV127{0%{transform:translate3d(0,-15vh,0) rotate(0deg) scale(.75);opacity:0}14%{opacity:1}100%{transform:translate3d(var(--drift-x,55px),112vh,0) rotate(420deg) scale(1.18);opacity:0}}
@keyframes particleFloatV127{0%{transform:translate3d(0,-8vh,0) rotate(0deg) scale(.8);opacity:0}15%{opacity:1}100%{transform:translate3d(0,92vh,0) rotate(160deg) scale(1.08);opacity:0}}
@keyframes particleRiseV127{0%{transform:translate3d(0,105vh,0) rotate(0deg) scale(.78);opacity:0}18%{opacity:1}100%{transform:translate3d(var(--rise-x,0px),-22vh,0) rotate(-240deg) scale(1.08);opacity:0}}
@keyframes rocketLaunchV127{0%{transform:translate3d(0,0,0) scale(.9);opacity:0}18%{opacity:1}100%{transform:translate3d(0,-92vh,0) scale(1.2);opacity:0}}
@keyframes fireworkBurstV127{0%{transform:translate3d(0,0,0) scale(.4);opacity:1}100%{transform:translate3d(var(--dx,0px),var(--dy,0px),0) scale(1.5);opacity:0}}
@media(max-width:980px){.auth-landing{grid-template-columns:1fr}.auth-highlight-band,.auth-stat-strip,.auth-feature-grid{grid-template-columns:1fr 1fr}.auth-panel-wrap{order:-1}}
@media(max-width:640px){.auth-highlight-band,.auth-stat-strip,.auth-feature-grid{grid-template-columns:1fr}.auth-showcase,.auth-card-large{padding:20px}.auth-bottom-links>*{width:100%}}

/* ===== V12.7.1 final visual engine fixes ===== */
.event-overlay.no-rain .particle:not(.rocket):not(.burst),
.admin-visual-preview.no-rain .particle:not(.rocket):not(.burst){display:inline-block!important;}
.event-overlay.no-rain .particle.rain-fall,
.admin-visual-preview.no-rain .particle.rain-fall{display:none!important;}
.event-overlay .particle.rain-fall{animation:particleFallV127 linear forwards!important;}
.event-overlay .particle.float-pop{animation:visualFloatPopV127 ease-in-out forwards!important;}
.event-overlay .particle.build-pop{animation:visualBuildPopV127 ease-out forwards!important;}
.event-overlay .particle.race-car{animation:visualRaceCarV127 linear forwards!important;font-size:clamp(30px,4vw,64px)!important;filter:drop-shadow(0 0 16px rgba(255,255,255,.8));}
.event-overlay .particle.laser-bar{display:block!important;width:var(--len,48vw);height:5px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),rgba(0,210,255,.88),rgba(255,0,170,.88),transparent);box-shadow:0 0 20px rgba(0,210,255,.9),0 0 36px rgba(255,0,170,.55);animation:visualLaserBarV127 ease-in-out forwards!important;transform:rotate(var(--rot,0deg));}
.event-overlay .particle.mirror-ball{animation:visualMirrorBallV127 linear forwards!important;font-size:clamp(46px,7vw,92px)!important;filter:drop-shadow(0 0 28px rgba(255,255,255,.9));}
.event-overlay.profile-0 .event-beam-layer{animation-duration:1.1s!important;opacity:.92!important}.event-overlay.profile-1 .event-beam-layer{animation-direction:reverse!important;opacity:.72!important}.event-overlay.profile-2 .event-strobe-layer{animation-duration:.26s!important;opacity:.7!important}.event-overlay.profile-3 .event-rave-floor{animation-duration:.95s!important}.event-overlay.profile-4 .event-vector-layer{filter:hue-rotate(40deg) saturate(1.8)!important}.event-overlay.profile-5 .event-vector-layer{filter:hue-rotate(90deg) saturate(1.9)!important}.event-overlay.profile-6 .event-vector-layer{filter:hue-rotate(150deg) saturate(1.7)!important}.event-overlay.profile-7 .event-beam-layer{background:repeating-conic-gradient(from 40deg,rgba(255,255,255,.34) 0 4deg,transparent 4deg 16deg,rgba(255,215,107,.35) 16deg 24deg,transparent 24deg 42deg)!important}.event-overlay.profile-8 .event-beam-layer{background:repeating-radial-gradient(circle at center,rgba(255,255,255,.2) 0 2px,transparent 2px 36px),conic-gradient(rgba(255,0,170,.24),rgba(0,210,255,.28),rgba(72,213,151,.22),rgba(255,215,107,.2),rgba(255,0,170,.24))!important}.event-overlay.profile-9 .event-strobe-layer{opacity:.22!important;animation-duration:.9s!important}.event-overlay.profile-10 .event-rave-floor{opacity:.35!important}.event-overlay.profile-11 .event-vector-layer{background:radial-gradient(circle at 15% 20%,rgba(255,215,107,.35),transparent 22%),radial-gradient(circle at 85% 24%,rgba(255,114,210,.35),transparent 22%),radial-gradient(circle at 50% 82%,rgba(103,183,255,.3),transparent 28%)!important;}
.event-overlay.cat-firework .event-rave-floor{opacity:.08!important}.event-overlay.cat-race .event-rave-floor{opacity:.62!important}.event-overlay.cat-build .event-beam-layer{opacity:.18!important}.event-overlay.cat-math .event-strobe-layer,.event-overlay.cat-word .event-strobe-layer{opacity:.16!important}.event-overlay.cat-rave .event-strobe-layer{opacity:.55!important}
@keyframes visualFloatPopV127{0%{transform:translate3d(0,20px,0) scale(.7) rotate(0deg);opacity:0}18%{opacity:1}100%{transform:translate3d(var(--dx,40px),-120px,0) scale(1.35) rotate(160deg);opacity:0}}
@keyframes visualBuildPopV127{0%{transform:translate3d(0,90px,0) scale(.3);opacity:0}28%{opacity:1}70%{opacity:1}100%{transform:translate3d(0,-80px,0) scale(1.2);opacity:0}}
@keyframes visualRaceCarV127{0%{transform:translate3d(-20vw,var(--lane,0vh),0) rotate(0deg);opacity:0}12%{opacity:1}88%{opacity:1}100%{transform:translate3d(125vw,var(--lane,0vh),0) rotate(0deg);opacity:0}}
@keyframes visualLaserBarV127{0%{transform:translate3d(-30vw,0,0) rotate(var(--rot,0deg)) scaleX(.1);opacity:0}15%{opacity:1}70%{opacity:.9}100%{transform:translate3d(30vw,0,0) rotate(var(--rot,0deg)) scaleX(1.1);opacity:0}}
@keyframes visualMirrorBallV127{0%{transform:translate3d(0,-80px,0) rotate(0deg) scale(.7);opacity:0}20%{opacity:1}100%{transform:translate3d(0,45vh,0) rotate(720deg) scale(1.25);opacity:0}}

/* ===== V12.8 readability, admin, profile and event widget fixes ===== */
.auth-page{background:#eef7ff!important;color:#102018!important;}
.auth-page .site-header{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(18,35,63,.10)!important;box-shadow:0 10px 28px rgba(15,35,65,.08)!important;}
.auth-page .brand,.auth-page .top-nav a{color:#102018!important;}
.auth-page .top-nav a{background:#fff!important;border:1px solid rgba(18,35,63,.12)!important;box-shadow:0 8px 20px rgba(15,35,65,.06)!important;}
.auth-page .auth-landing{color:#102018!important;}
.auth-page .auth-showcase{background:linear-gradient(135deg,#f7fcff,#eff8ff 58%,#fff9e8)!important;border:1px solid rgba(18,35,63,.10)!important;color:#102018!important;box-shadow:0 26px 72px rgba(15,35,65,.16)!important;}
.auth-page .auth-showcase h1,.auth-page .auth-card-large h2{color:#102018!important;text-shadow:none!important;}
.auth-page .auth-intro,.auth-page .auth-showcase p,.auth-page .auth-card-large p,.auth-page .muted{color:#334b68!important;line-height:1.62!important;}
.auth-page .auth-kicker,.auth-page .auth-panel-chip{background:#e8fff3!important;border:1px solid rgba(11,122,78,.18)!important;color:#0e6f4a!important;text-shadow:none!important;}
.auth-page .auth-feature-card,.auth-page .auth-highlight-band>div,.auth-page .auth-stat-strip>div{background:rgba(255,255,255,.86)!important;border:1px solid rgba(18,35,63,.10)!important;color:#102018!important;box-shadow:0 12px 28px rgba(15,35,65,.08)!important;}
.auth-page .auth-feature-card b,.auth-page .auth-highlight-band strong,.auth-page .auth-stat-strip b{color:#102018!important;}
.auth-page .auth-feature-card p,.auth-page .auth-highlight-band span,.auth-page .auth-stat-strip span{color:#455f7c!important;}
.auth-page .auth-card-large{background:#fff!important;color:#102018!important;border:1px solid rgba(18,35,63,.10)!important;box-shadow:0 26px 72px rgba(15,35,65,.18)!important;}
.auth-page .auth-form-stack label,.auth-page .auth-bottom-links span{color:#102018!important;}
.auth-page .auth-form-stack .input,.auth-page .auth-form-stack select{background:#f7fbff!important;color:#102018!important;border:1px solid rgba(18,35,63,.20)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;}
.auth-page .auth-form-stack .input:focus,.auth-page .auth-form-stack select:focus{border-color:#48d597!important;box-shadow:0 0 0 4px rgba(72,213,151,.16)!important;}
.auth-page .btn.primary{color:#06170d!important;background:linear-gradient(135deg,#67b7ff,#48d597)!important;}
.auth-page .auth-bottom-links .btn{background:#10203d!important;color:#fff!important;border-color:#10203d!important;}

.admin-page .btn:not(.primary),.admin-page a.btn:not(.primary),.admin-page button.btn:not(.primary),
.admin-page .btn.small,.admin-page .edit-preset-btn,.admin-page .preview-visual-btn,.admin-page .profile-save-cell .btn,
.admin-page .admin-users-simple-table .btn,.admin-page .user-profile-panel .btn{color:#fff!important;text-shadow:none!important;}
.admin-page .btn.primary{color:#06170d!important;}
.admin-page .btn.danger,.admin-page button.danger,.admin-page a.danger{color:#fff!important;}
.admin-page .admin-users-simple-table table{min-width:0!important;}
.admin-page .admin-users-simple-table th,.admin-page .admin-users-simple-table td{color:#102018!important;}
.admin-page .admin-users-simple-table td b{color:#102018!important;}
.admin-page .admin-users-simple-table td small{color:#536982!important;}
.profile-time-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;}
.profile-time-strip span{display:grid!important;gap:2px;padding:10px 12px;border-radius:16px;background:#eef7ff!important;border:1px solid rgba(18,35,63,.10)!important;color:#102018!important;min-width:170px;}
.profile-time-strip span b{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:#0e6f4a!important;}
.profile-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:16px 0;}
.profile-summary-grid>div{display:grid;gap:4px;border:1px solid rgba(18,35,63,.10);background:#f8fbff;border-radius:18px;padding:13px;color:#102018;}
.profile-summary-grid span{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:#536982!important;}
.profile-summary-grid b{color:#102018!important;font-size:1.1rem;}
.profile-summary-grid small{color:#536982!important;}
.profile-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end;margin:16px 0;padding:14px;border:1px solid rgba(18,35,63,.10);background:#f8fbff;border-radius:20px;}
.profile-edit-grid label{margin:0!important;}
.profile-save-cell{display:flex;align-items:end;}
.profile-save-cell .btn{width:100%;}
.user-logs-table table{min-width:760px!important;}
.leaderboard-card-head{display:grid;grid-template-columns:70px 1.4fr repeat(5,minmax(90px,1fr));gap:10px;align-items:center;padding:10px 12px;margin:12px 0 8px;border-radius:16px;background:#eef7ff;border:1px solid rgba(18,35,63,.10);font-weight:1000;color:#102018;}
.leaderboard-card-head span{color:#102018!important;}
.leaderboard-row-card .place,.leaderboard-row-card .name{color:#102018!important;}
.leaderboard-row-card .name{font-weight:1000;}
@media(max-width:900px){.leaderboard-card-head{display:none}.profile-time-strip span{min-width:100%;}.profile-edit-grid{grid-template-columns:1fr}.user-logs-table table{min-width:700px!important;}}

.event-widget.expanded>p,.event-widget-status{display:none!important;}
.event-next-drop-note{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:#edf7ff;color:#102018;font-weight:900;border:1px solid rgba(18,35,63,.10);}
.event-widget .event-widget-controls{margin-top:12px;}
.preview-audio-note{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:7;max-width:min(560px,calc(100% - 30px));padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.94);color:#102018;font-weight:900;box-shadow:0 12px 35px rgba(0,0,0,.25);}

#tab-upgrades .building-list .btn .cost-chip,.building-list .btn .cost-chip,.btn .cost-chip{background:rgba(255,255,255,.16)!important;color:#fff!important;border:1px solid rgba(255,255,255,.20)!important;}
#tab-upgrades .building-list .btn .cost-chip b,.building-list .btn .cost-chip b,.btn .cost-chip b{color:#fff!important;}
#tab-upgrades .building-list .btn .cost-chip .cost-icon,.building-list .btn .cost-chip .cost-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.25));}
#tab-progress .rank-row.current span{color:#0e6f4a!important;font-weight:1000!important;}

/* ===== JDL Learn V2 - family platform, support, changelog, classic games ===== */
:root{--v2-dark:#102018;--v2-ink:#12223f;--v2-muted:#536982;--v2-light:#f7fbff;--v2-line:rgba(18,35,63,.12);--v2-gold:#f7c842;--v2-green:#0e6f4a;--v2-blue:#1f6feb;}
body.modal-open{overflow:hidden;}
.btn,.btn.small,button.btn,a.btn{font-weight:1000;text-decoration:none!important;}
.btn.primary,.btn.green,.btn.danger,.btn.dark,.admin-page .btn:not(.primary){color:#fff!important;text-shadow:none!important;}
.btn.primary{background:linear-gradient(135deg,#174ea6,#0e6f4a)!important;color:#fff!important;border-color:transparent!important;}
.auth-page .btn.primary{color:#07160f!important;background:linear-gradient(135deg,#67b7ff,#48d597)!important;}
.btn.green{background:linear-gradient(135deg,#0e6f4a,#14a06f)!important;color:#fff!important;}
.btn.danger{background:linear-gradient(135deg,#a22d2d,#e04848)!important;color:#fff!important;}
.panel,.hero-card,.game-card,.auth-card,.admin-card{color:var(--v2-dark)!important;}
.panel h1,.panel h2,.panel h3,.hero-card h1,.hero-card h2,.game-card h3,.auth-card h1,.auth-card h2{color:var(--v2-dark)!important;line-height:1.16;}
.panel p,.panel small,.hero-card p,.game-card p{line-height:1.55;}
.muted{color:var(--v2-muted)!important;}
.rank-badge,.pill{font-weight:1000;}
.star-total-badge,.learning-star-total,.stat-star-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:8px 12px;background:linear-gradient(135deg,#fff2ae,#f7c842);color:#2a1d00!important;font-weight:1000;box-shadow:0 10px 24px rgba(247,200,66,.18);border:1px solid rgba(136,95,0,.16);}
.star-total-badge svg,.learning-star-total svg{width:18px;height:18px;}

.admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 22px;padding:12px;border-radius:22px;background:#f5f9ff;border:1px solid var(--v2-line);}
.admin-nav a{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:#10203d;color:#fff!important;font-weight:1000;text-decoration:none;}
.admin-nav a:hover{filter:brightness(1.08);transform:translateY(-1px);}
.admin-stat-grid,.admin-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:18px 0;}
.admin-stat-card,.dashboard-stat-card{background:#f8fbff;border:1px solid var(--v2-line);border-radius:20px;padding:16px;box-shadow:0 12px 30px rgba(18,35,63,.06);color:var(--v2-dark)!important;}
.admin-stat-card span,.dashboard-stat-card span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--v2-green)!important;font-weight:1000;}
.admin-stat-card b,.dashboard-stat-card b{display:block;font-size:1.65rem;color:var(--v2-dark)!important;margin-top:4px;}
.admin-search-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,240px) auto auto;gap:10px;align-items:end;}

.parent-grid,.support-layout,.email-layout,.families-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.4fr);gap:18px;align-items:start;}
.family-child-list,.support-list-panel{display:grid;gap:10px;}
.family-child-card,.support-ticket-link,.email-link,.parent-link-card{display:grid;gap:4px;padding:13px 14px;border-radius:18px;background:#f8fbff;border:1px solid var(--v2-line);color:var(--v2-dark)!important;text-decoration:none!important;box-shadow:0 8px 20px rgba(18,35,63,.04);}
.family-child-card.active,.support-ticket-link.active,.email-link.active{border-color:rgba(14,111,74,.35);box-shadow:0 0 0 3px rgba(14,111,74,.10);background:#eefbf5;}
.family-child-card b,.support-ticket-link b,.email-link b,.parent-link-card b{color:var(--v2-dark)!important;font-weight:1000;}
.family-child-card span,.support-ticket-link span,.email-link span{color:var(--v2-muted)!important;font-weight:800;}
.compact-parent-forms{gap:14px;}
.child-profile-panel{margin-top:18px;}
.focus-advice{border-radius:18px;padding:14px 15px;border:1px solid var(--v2-line);background:#f8fbff;color:var(--v2-dark)!important;}
.focus-advice.warn{background:#fff8e6;border-color:rgba(247,200,66,.42);}
.focus-advice.good{background:#eefbf5;border-color:rgba(14,111,74,.22);}
.ticket-thread{display:grid;gap:10px;max-height:460px;overflow:auto;padding:12px;border-radius:20px;background:#f5f9ff;border:1px solid var(--v2-line);scroll-behavior:smooth;}
.ticket-message{max-width:78%;padding:12px 14px;border-radius:18px;background:#fff;border:1px solid var(--v2-line);box-shadow:0 6px 18px rgba(18,35,63,.05);color:var(--v2-dark)!important;}
.ticket-message.mine{justify-self:end;background:#10203d;color:#fff!important;border-color:#10203d;}
.ticket-message.mine b,.ticket-message.mine p,.ticket-message.mine small{color:#fff!important;}
.ticket-message.theirs b{color:var(--v2-green)!important;}
.ticket-message p{margin:.35rem 0;}
.ticket-reply-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:12px;}
.inline-form{display:inline-flex;margin-top:10px;}

.changelog-footer{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;margin:20px 0;}
.changelog-modal{position:fixed;inset:0;z-index:9999;background:rgba(4,10,20,.72);display:grid;place-items:center;padding:18px;}
.changelog-modal[hidden]{display:none!important;}
.changelog-modal-box{width:min(760px,100%);max-height:min(720px,88vh);overflow:auto;border-radius:26px;background:#ffffff;color:var(--v2-dark);box-shadow:0 28px 90px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.35);}
.changelog-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--v2-line);background:#f8fbff;position:sticky;top:0;z-index:2;}
.changelog-modal-head h2{margin:0;color:var(--v2-dark)!important;}
.changelog-list,.changelog-list-page{display:grid;gap:14px;padding:18px;}
.changelog-entry-card,.changelog-card{padding:16px;border-radius:20px;background:#f8fbff;border:1px solid var(--v2-line);color:var(--v2-dark)!important;}
.changelog-entry-card>div,.changelog-card>div{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;}
.changelog-entry-card h2,.changelog-card h3{margin:.65rem 0 .35rem;color:var(--v2-dark)!important;}
.changelog-entry-card p,.changelog-card p{margin:0;color:var(--v2-muted)!important;}

.quick-game-groups{display:grid;gap:18px;}
.quick-game-category{border-radius:24px;background:#f8fbff;border:1px solid var(--v2-line);padding:16px;box-shadow:0 12px 30px rgba(18,35,63,.05);}
.quick-game-category>summary,.quick-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;color:var(--v2-dark)!important;font-weight:1000;}
.quick-game-category .game-grid,.quick-games-grid{margin-top:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;}
.quick-game-category .game-card{min-height:100%;}

.popup-modal-v2{position:fixed;inset:0;z-index:9998;background:rgba(4,10,20,.72);display:grid;place-items:center;padding:18px;}
.popup-box-v2{width:min(620px,100%);max-height:88vh;overflow:auto;border-radius:28px;background:#ffffff;color:var(--v2-dark);box-shadow:0 24px 80px rgba(0,0,0,.35);padding:22px;border:1px solid rgba(255,255,255,.28);}
.popup-box-v2 h2,.popup-box-v2 p{color:var(--v2-dark)!important;}
.classic-game-stage{border-radius:24px;padding:16px;background:linear-gradient(180deg,#f8fbff,#eef7ff);border:1px solid var(--v2-line);margin:14px 0;}
.classic-stage-title{font-weight:1000;color:var(--v2-green);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;margin-bottom:12px;}
.classic-tile-grid,.classic-box-grid,.classic-popper-grid,.classic-memory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;}
.classic-tile-btn,.classic-box-btn,.classic-popper-btn,.classic-memory-card,.classic-cracker-btn{border:0;border-radius:18px;padding:14px 10px;min-height:90px;background:#10203d;color:#fff!important;font-weight:1000;box-shadow:0 12px 26px rgba(18,35,63,.16);cursor:pointer;display:grid;place-items:center;gap:6px;text-align:center;}
.classic-tile-btn span,.classic-box-btn span,.classic-popper-btn span,.classic-memory-card span{font-size:1.8rem;}
.classic-tile-btn small,.classic-box-btn small,.classic-popper-btn small{color:#fff!important;font-weight:900;}
.classic-box-btn.box-red{background:#a22d2d;}.classic-box-btn.box-blue{background:#174ea6;}.classic-box-btn.box-green{background:#0e6f4a;}.classic-box-btn.box-yellow{background:#ad7c00;color:#111!important;}.classic-box-btn.box-yellow small{color:#111!important;}
.cracker-visual{display:flex;justify-content:center;align-items:center;gap:12px;border-radius:18px;background:#10203d;color:#fff;padding:18px;font-weight:1000;margin-bottom:12px;}
.classic-cracker-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;}

#tab-upgrades .grid-two{align-items:start;gap:16px;}
#tab-upgrades .panel{background:#f8fbff;border-color:var(--v2-line);}
#tab-upgrades .upgrade-row,#tab-upgrades .building-card,.building-list article{display:grid;gap:9px;padding:15px;border-radius:20px;background:#fff;border:1px solid var(--v2-line);box-shadow:0 10px 24px rgba(18,35,63,.05);}
#tab-upgrades .building-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
#tab-upgrades .building-list .btn{width:100%;justify-content:center;margin-top:auto;}
#tab-upgrades .cost-chip,.btn .cost-chip{background:rgba(255,255,255,.18)!important;color:#fff!important;border:1px solid rgba(255,255,255,.22)!important;}
#tab-upgrades .cost-chip b,.btn .cost-chip b{color:#fff!important;}

@media(max-width:950px){.parent-grid,.support-layout,.email-layout,.families-grid{grid-template-columns:1fr}.admin-search-form{grid-template-columns:1fr}.ticket-message{max-width:94%}#tab-upgrades .building-list{grid-template-columns:1fr 1fr}.ticket-reply-form{grid-template-columns:1fr}.changelog-modal-box{max-height:86vh}.quick-game-category .game-grid,.quick-games-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.quick-game-category .game-grid,.quick-games-grid,#tab-upgrades .building-list{grid-template-columns:1fr}.classic-tile-grid,.classic-box-grid,.classic-popper-grid,.classic-memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.popup-box-v2{padding:16px;border-radius:22px}.admin-stat-grid,.admin-dashboard-grid{grid-template-columns:1fr}.ticket-message{max-width:100%}}

/* Existing V12 class names tightened for V2 */
.quick-group-grid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;}
.quick-game-group-v2{width:100%;border-radius:24px;background:#f8fbff;border:1px solid var(--v2-line);padding:16px;box-shadow:0 12px 30px rgba(18,35,63,.05);color:var(--v2-dark)!important;}
.quick-group-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px;}
.quick-group-head h3{margin:0;color:var(--v2-dark)!important;}
.quick-group-head .tiny-note{margin:.3rem 0 0;}
.quick-game-buttons{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;}
.quick-game-btn{min-height:72px;border:1px solid var(--v2-line);background:#fff;color:var(--v2-dark)!important;border-radius:18px;padding:12px;display:grid;gap:4px;align-content:center;text-align:left;font-weight:1000;box-shadow:0 8px 20px rgba(18,35,63,.04);cursor:pointer;}
.quick-game-btn span{color:var(--v2-dark)!important;}
.quick-game-btn small{color:var(--v2-green)!important;font-weight:1000;}
.quick-game-btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(18,35,63,.08);}
.quick-game-btn[disabled]{opacity:.62;cursor:not-allowed;transform:none;}
.v2-family-strip{display:grid;grid-template-columns:minmax(0,1.5fr) auto;gap:18px;align-items:center;background:linear-gradient(135deg,#f8fbff,#eefbf5)!important;}
.v2-family-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.pin-card{display:grid;gap:2px;padding:11px 14px;border-radius:18px;background:#10203d;color:#fff!important;box-shadow:0 10px 24px rgba(18,35,63,.12);}
.pin-card small,.pin-card b{color:#fff!important;}
@media(max-width:800px){.quick-game-buttons{grid-template-columns:1fr}.quick-group-head,.v2-family-strip{grid-template-columns:1fr}.v2-family-actions{justify-content:flex-start}}
.family-thread-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;}
.family-thread-card{display:grid;gap:10px;padding:14px;border-radius:22px;background:#f8fbff;border:1px solid var(--v2-line);box-shadow:0 10px 24px rgba(18,35,63,.05);}
.family-thread-card h3{margin:0;color:var(--v2-dark)!important;}
.family-thread-card .ticket-thread{max-height:300px;}
@media(max-width:620px){.family-thread-grid{grid-template-columns:1fr}}
.changelog-entry{padding:15px;border-radius:18px;background:#f8fbff;border:1px solid var(--v2-line);color:var(--v2-dark)!important;}
.changelog-entry span{display:inline-flex;margin-bottom:8px;color:var(--v2-green)!important;font-weight:1000;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;}
.changelog-entry h3{margin:.15rem 0 .35rem;color:var(--v2-dark)!important;}
.changelog-entry p{margin:0;color:var(--v2-muted)!important;}
.footer-changelog-btn{border:0;border-radius:999px;background:#10203d;color:#fff!important;padding:8px 12px;font-weight:1000;cursor:pointer;}


/* ===== JDL Learn V2.2 polish fixes ===== */
.auth-page .hero-card,
.auth-page .panel{background:#fff!important;color:#102018!important;border:1px solid rgba(18,35,63,.10)!important;box-shadow:0 26px 72px rgba(15,35,65,.12)!important;}
.auth-page .hero-card{background:linear-gradient(135deg,#f7fcff,#eff8ff 58%,#e8fff3)!important;}
.auth-page .hero-card h1,.auth-page .hero-card p,.auth-page .panel h2,.auth-page .panel h3,.auth-page .panel label{color:#102018!important;text-shadow:none!important;}
.auth-page .hero-card p,.auth-page .panel p,.auth-page .panel .muted{color:#334b68!important;}
.auth-page .form-stack label{color:#102018!important;font-weight:1000;}
.auth-page .form-stack .input,.auth-page .form-stack select,.auth-page .form-stack textarea{background:#fff!important;color:#102018!important;border:1px solid rgba(18,35,63,.20)!important;}
.auth-page .form-stack .input::placeholder,.auth-page textarea::placeholder{color:#6f8198!important;}

.changelog-modal{background:rgba(4,10,20,.76)!important;backdrop-filter:blur(8px);}
.changelog-modal-box{width:min(820px,calc(100vw - 30px))!important;border-radius:30px!important;overflow:hidden!important;background:linear-gradient(180deg,#ffffff,#f7fbff)!important;border:1px solid rgba(255,255,255,.55)!important;box-shadow:0 34px 120px rgba(0,0,0,.45)!important;}
.changelog-modal-box>.section-head{position:sticky;top:0;z-index:3;margin:0!important;padding:22px 24px!important;background:linear-gradient(135deg,#10203d,#174ea6 52%,#0e6f4a)!important;border-bottom:1px solid rgba(255,255,255,.18)!important;align-items:center!important;}
.changelog-modal-box>.section-head h2,.changelog-modal-box>.section-head p{color:#fff!important;text-shadow:none!important;}
.changelog-modal-box>.section-head .muted{color:#d8ecff!important;}
.changelog-modal-box>.section-head .pill{background:rgba(255,255,255,.18)!important;color:#fff!important;border-color:rgba(255,255,255,.32)!important;}
.changelog-modal-box>.section-head .btn{background:#fff!important;color:#10203d!important;border-color:#fff!important;min-width:auto!important;}
.modal-changelog-list{padding:20px 24px!important;background:linear-gradient(180deg,#f7fbff,#eef7ff)!important;}
.changelog-entry{position:relative;padding:18px 18px 18px 22px!important;border-radius:22px!important;background:#fff!important;border:1px solid rgba(18,35,63,.12)!important;box-shadow:0 12px 28px rgba(18,35,63,.08)!important;overflow:hidden;}
.changelog-entry:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,#67b7ff,#48d597);}
.changelog-entry span{color:#0e6f4a!important;background:#e8fff3;border:1px solid rgba(14,111,74,.14);padding:5px 8px;border-radius:999px;margin-bottom:10px!important;}
.changelog-entry h3{color:#102018!important;font-size:1.08rem!important;}
.changelog-entry p{color:#334b68!important;line-height:1.65!important;}
.changelog-modal-box>a.btn.primary{margin:0 24px 24px!important;width:calc(100% - 48px);background:linear-gradient(135deg,#174ea6,#0e6f4a)!important;color:#fff!important;}

.overview-dashboard-panel .overview-activity-card h3{color:#fff!important;text-shadow:0 1px 10px rgba(0,0,0,.22)!important;}
.overview-dashboard-panel .overview-activity-card p{color:#d7e7fb!important;}
.result-badge{display:inline-flex!important;align-items:center!important;border-radius:999px!important;padding:5px 9px!important;font-size:.82rem!important;font-weight:1000!important;font-style:normal!important;line-height:1.2!important;}
.result-success{background:#0e6f4a!important;color:#fff!important;box-shadow:0 8px 18px rgba(14,111,74,.22)!important;}
.result-failed{background:#b9162d!important;color:#fff!important;box-shadow:0 8px 18px rgba(185,22,45,.22)!important;}
.result-neutral{background:#e8f0fb!important;color:#10203d!important;border:1px solid rgba(18,35,63,.10)!important;}

.btn.is-unaffordable,.quick-game-btn.is-unaffordable,button.is-unaffordable{background:linear-gradient(135deg,#d61f3d,#a81229)!important;color:#fff!important;border-color:#a81229!important;opacity:1!important;cursor:not-allowed!important;box-shadow:none!important;}
.btn.is-unaffordable .cost-chip,.is-unaffordable .cost-chip{background:rgba(255,255,255,.18)!important;color:#fff!important;border-color:rgba(255,255,255,.25)!important;}

.admin-page .admin-nav a{background:#fff!important;color:#102018!important;border-color:rgba(18,35,63,.12)!important;text-shadow:none!important;}
.admin-page .btn.primary,.admin-page .btn.green,.admin-page button.btn.primary,.admin-page button.btn.green,.admin-page a.btn.primary,.admin-page a.btn.green{color:#fff!important;text-shadow:none!important;}
.admin-page .btn.primary *,.admin-page .btn.green *{color:#fff!important;}
.admin-page .btn:not(.danger):not(.small),.admin-page button.btn:not(.danger):not(.small),.admin-page a.btn:not(.danger):not(.small){text-shadow:none!important;}
.admin-page .fast-admin-actions .btn,.admin-page .admin-dashboard-grid .btn{color:#fff!important;}

.admin-event-subtabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0;background:#fff;border:1px solid rgba(18,35,63,.10);border-radius:24px;padding:10px;box-shadow:0 12px 30px rgba(18,35,63,.06);}
.admin-event-subtabs button{border:1px solid rgba(18,35,63,.10);background:#f8fbff;color:#102018;border-radius:999px;padding:10px 14px;font-weight:1000;cursor:pointer;}
.admin-event-subtabs button.active{background:linear-gradient(135deg,#174ea6,#0e6f4a);color:#fff;border-color:transparent;box-shadow:0 10px 22px rgba(14,111,74,.16);}
.admin-event-subpanel{display:none;}
.admin-event-subpanel.active{display:block;}

.challenge-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;}
.challenge-admin-card{border:1px solid rgba(18,35,63,.10);border-radius:24px;background:#fff;padding:16px;box-shadow:0 14px 34px rgba(18,35,63,.07);color:#102018;}
.challenge-admin-card h3,.challenge-admin-card h4{color:#102018!important;margin:.35rem 0;}
.mini-leaderboard{display:grid;gap:8px;margin-top:12px;}
.mini-leaderboard h4{margin:0;color:#102018!important;}
.mini-leaderboard>div{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid rgba(18,35,63,.10);background:#f8fbff;border-radius:14px;padding:9px 10px;color:#102018;}
.mini-leaderboard b{color:#102018!important;}
.mini-leaderboard span{color:#0e6f4a!important;font-weight:900;}
.challenge-live-board{border-top:1px solid rgba(18,35,63,.10);padding-top:10px;}

@media(max-width:720px){.admin-event-subtabs{display:grid;grid-template-columns:1fr 1fr}.admin-event-subtabs button{width:100%}.challenge-admin-grid{grid-template-columns:1fr}.changelog-modal-box{width:calc(100vw - 20px)!important}.changelog-modal-box>.section-head{padding:18px!important}.modal-changelog-list{padding:16px!important}}

/* ===== JDL Learn V2.3 changelog modal final scroll/close fixes ===== */
.changelog-modal{
  align-items:center!important;
  justify-items:center!important;
  overflow:hidden!important;
}
.changelog-modal-box{
  max-height:calc(100vh - 70px)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.changelog-modal-box>.section-head{
  flex:0 0 auto!important;
}
.changelog-modal-box [data-changelog-close],
.changelog-modal-box>.section-head .btn[data-changelog-close]{
  background:#fff!important;
  color:#071225!important;
  border:1px solid rgba(255,255,255,.9)!important;
  text-shadow:none!important;
}
.changelog-modal-box [data-changelog-close]:hover,
.changelog-modal-box>.section-head .btn[data-changelog-close]:hover{
  background:#f0f6ff!important;
  color:#071225!important;
}
.modal-changelog-list{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  max-height:none!important;
  overscroll-behavior:contain!important;
  padding-bottom:24px!important;
  scrollbar-width:thin;
  scrollbar-color:#48d597 #e7f1fb;
}
.modal-changelog-list::-webkit-scrollbar{width:10px;}
.modal-changelog-list::-webkit-scrollbar-track{background:#e7f1fb;border-radius:999px;}
.modal-changelog-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#67b7ff,#48d597);border-radius:999px;border:2px solid #e7f1fb;}
.changelog-modal-box>a.btn.primary{
  flex:0 0 auto!important;
  margin:14px 24px 24px!important;
}
@media(max-width:720px){
  .changelog-modal{padding:10px!important;}
  .changelog-modal-box{max-height:calc(100vh - 20px)!important;width:calc(100vw - 20px)!important;border-radius:24px!important;}
  .modal-changelog-list{padding-bottom:18px!important;}
  .changelog-modal-box>a.btn.primary{margin:12px 16px 18px!important;width:calc(100% - 32px)!important;}
}


/* ===== JDL Learn V2.4 changelog modal hard scroll fix ===== */
html body.modal-open{
  overflow:hidden!important;
}
.changelog-modal{
  position:fixed!important;
  inset:0!important;
  display:block!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:clamp(14px,4vh,42px) 14px!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:#48d597 rgba(231,241,251,.45)!important;
}
.changelog-modal[hidden]{display:none!important;}
.changelog-modal::-webkit-scrollbar{width:11px!important;}
.changelog-modal::-webkit-scrollbar-track{background:rgba(231,241,251,.45)!important;border-radius:999px!important;}
.changelog-modal::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#67b7ff,#48d597)!important;border-radius:999px!important;border:2px solid rgba(231,241,251,.6)!important;}
.changelog-modal-box{
  width:min(820px,calc(100vw - 30px))!important;
  max-height:calc(100vh - 42px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
.changelog-modal-box>.section-head{
  position:relative!important;
  top:auto!important;
}
.modal-changelog-list{
  display:block!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  padding:20px 24px 24px!important;
  scrollbar-width:thin!important;
  scrollbar-color:#48d597 #e7f1fb!important;
}
.modal-changelog-list::-webkit-scrollbar{width:11px!important;}
.modal-changelog-list::-webkit-scrollbar-track{background:#e7f1fb!important;border-radius:999px!important;}
.modal-changelog-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#67b7ff,#48d597)!important;border-radius:999px!important;border:2px solid #e7f1fb!important;}
.changelog-modal-box [data-changelog-close],
.changelog-modal-box>.section-head .btn[data-changelog-close]{
  color:#071225!important;
  background:#fff!important;
  border-color:#fff!important;
  text-shadow:none!important;
  opacity:1!important;
}
.changelog-modal-box [data-changelog-close] *,
.changelog-modal-box>.section-head .btn[data-changelog-close] *{color:#071225!important;}
.changelog-modal-box>a.btn.primary{
  margin:14px 24px 24px!important;
  width:calc(100% - 48px)!important;
  color:#fff!important;
}
@media(max-width:720px){
  .changelog-modal{padding:10px!important;}
  .changelog-modal-box{width:calc(100vw - 20px)!important;max-height:calc(100vh - 20px)!important;border-radius:24px!important;}
  .modal-changelog-list{padding:16px!important;}
  .changelog-modal-box>a.btn.primary{margin:12px 16px 18px!important;width:calc(100% - 32px)!important;}
}

/* ===== JDL Learn V2.5 final spacing + support contrast polish ===== */
.modal-changelog-list{
  gap:18px!important;
  row-gap:18px!important;
}
.modal-changelog-list .changelog-entry + .changelog-entry{
  margin-top:18px!important;
}
.modal-changelog-list .changelog-entry{
  margin-bottom:0!important;
}
.support-layout .form-stack label,
.support-layout .form-row label,
.support-layout label,
body:not(.admin-page) .panel .form-stack label{
  color:#102018!important;
  font-weight:1000!important;
}
.support-layout .form-stack label select,
.support-layout .form-stack label input,
.support-layout .form-stack label textarea{
  color:#102018!important;
  background:#ffffff!important;
}
@media(max-width:720px){
  .modal-changelog-list{gap:16px!important;row-gap:16px!important;}
  .modal-changelog-list .changelog-entry + .changelog-entry{margin-top:16px!important;}
}


/* ===== JDL Learn V2.8 live support/family messaging polish ===== */
.nav-badge-link{position:relative!important;}
.nav-notify-badge,.inline-notify-badge{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:20px;height:20px;padding:0 6px;border-radius:999px;
  background:#e11d35!important;color:#fff!important;
  font-size:.74rem;font-weight:1000;line-height:1;
  box-shadow:0 8px 18px rgba(225,29,53,.32);
}
.nav-notify-badge{
  position:absolute;top:-8px;right:-8px;border:2px solid #fff;
}
.inline-notify-badge{margin-left:8px;vertical-align:middle;}

.ticket-thread{position:relative;scrollbar-width:thin;scrollbar-color:#0e6f4a #e8f0fb;}
.ticket-thread::-webkit-scrollbar{width:10px;}
.ticket-thread::-webkit-scrollbar-track{background:#e8f0fb;border-radius:999px;}
.ticket-thread::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#174ea6,#0e6f4a);border-radius:999px;border:2px solid #e8f0fb;}
.ticket-message.mine{
  justify-self:end!important;
  background:linear-gradient(135deg,#1769d8,#0d54af)!important;
  color:#fff!important;
  border-color:#0d54af!important;
  border-bottom-right-radius:6px!important;
}
.ticket-message.mine b,.ticket-message.mine p,.ticket-message.mine small{color:#fff!important;}
.ticket-message.theirs{
  justify-self:start!important;
  background:#ccefdc!important;
  color:#102018!important;
  border-color:#9ad9b7!important;
  border-bottom-left-radius:6px!important;
}
.ticket-message.theirs b,.ticket-message.theirs p,.ticket-message.theirs small{color:#102018!important;}
.ticket-message.theirs b{color:#0b5d3e!important;}
.read-receipt{
  display:inline-flex;margin-left:8px;padding:3px 7px;border-radius:999px;
  font-size:.72rem;font-weight:1000;line-height:1.15;vertical-align:middle;
}
.ticket-message.mine .read-receipt.read{background:#f59e0b!important;color:#fff!important;}
.ticket-message.mine .read-receipt.unread{background:rgba(255,255,255,.2)!important;color:#fff!important;}
.ticket-closed-live-notice{
  margin-top:12px;padding:13px 15px;border-radius:16px;
  background:#b9162d!important;color:#fff!important;font-weight:1000;
  box-shadow:0 10px 24px rgba(185,22,45,.18);
}
.ticket-closed-live-notice[hidden]{display:none!important;}
.new-message-pill{
  position:sticky;bottom:10px;left:50%;justify-self:center;
  border:0;border-radius:999px;background:#10203d;color:#fff!important;
  font-weight:1000;padding:9px 14px;box-shadow:0 12px 28px rgba(18,35,63,.26);
  cursor:pointer;z-index:3;
}
.new-message-pill[hidden]{display:none!important;}
.family-messages-layout .panel{position:relative;}
.live-message-thread{min-height:360px;max-height:560px;}
.family-message-form textarea{background:#fff!important;color:#102018!important;}
.star-rank-total{display:inline-flex!important;align-items:center!important;gap:5px!important;white-space:nowrap!important;}
.star-rank-total em{font-style:normal!important;margin-left:2px!important;}
.admin-page .admin-support-nav-link{position:relative!important;}
.admin-page .admin-support-nav-link .nav-notify-badge{top:-9px;right:-9px;}

.inline-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
@media(max-width:620px){.inline-actions{justify-content:flex-start}.inline-actions .btn{width:auto!important;}}

.support-layout .panel{position:relative;}


/* ===== JDL Learn V2.9 small completion fixes ===== */
#inventoryGrid .inventory-empty-state{grid-column:1/-1;margin:0!important;}
.focus-advice + .focus-subject-grid{margin-top:16px!important;}
.focus-subject-grid{display:grid!important;gap:10px!important;line-height:1.55!important;}
.focus-subject-grid article{display:grid!important;gap:5px!important;padding:10px 12px!important;border-radius:14px!important;background:#f8fbff!important;border:1px solid var(--v2-line)!important;}
.focus-subject-grid article b,.focus-subject-grid article span{color:var(--v2-dark)!important;line-height:1.45!important;}
.focus-subject-grid article span{font-weight:800!important;color:var(--v2-muted)!important;}
.ticket-closed-live-notice + .ticket-closed-live-notice{display:none!important;}


/* ===== JDL Learn V3.0 changelog type badges + pagination ===== */
.changelog-badge-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-bottom:10px!important;
}
.changelog-version-badge,
.changelog-type-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  font-size:.78rem!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.changelog-version-badge{
  background:#e8fff3!important;
  color:#0e6f4a!important;
  border:1px solid rgba(14,111,74,.14)!important;
}
.changelog-type-badge{
  border:1px solid rgba(18,35,63,.08)!important;
  box-shadow:0 8px 18px rgba(18,35,63,.08)!important;
}
.changelog-entry>span{display:none!important;}
.changelog-pager,
.changelog-page-pager{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  flex-wrap:wrap!important;
  margin:16px 18px 18px!important;
}
.changelog-page-pager{margin:18px 0 0!important;padding-top:16px!important;border-top:1px solid rgba(18,35,63,.08)!important;}
.changelog-pager .btn,
.changelog-page-pager .btn{
  min-width:86px!important;
  text-align:center!important;
  color:#10203d!important;
  background:#fff!important;
  border:1px solid rgba(18,35,63,.12)!important;
}
.changelog-pager .btn:not(:disabled):hover,
.changelog-page-pager .btn:not(.disabled):hover{
  background:#eef7ff!important;
  border-color:rgba(14,111,74,.2)!important;
}
.changelog-pager .btn:disabled,
.changelog-page-pager .btn.disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
}
.changelog-pager .pager-count,
.changelog-page-pager .pager-count{
  background:linear-gradient(135deg,#174ea6,#0e6f4a)!important;
  color:#fff!important;
  border:0!important;
  min-width:150px!important;
  text-align:center!important;
}
.modal-changelog-list.is-loading{
  opacity:.62!important;
  pointer-events:none!important;
}
.changelog-entry-card{
  position:relative!important;
  overflow:hidden!important;
}
.changelog-entry-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:6px;
  background:linear-gradient(180deg,#67b7ff,#48d597);
}
.changelog-entry-card .changelog-badge-row{
  padding-left:2px!important;
}
@media(max-width:720px){
  .changelog-pager,
  .changelog-page-pager{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }
  .changelog-pager .pager-count,
  .changelog-page-pager .pager-count{
    grid-column:1 / -1!important;
    order:-1!important;
    width:100%!important;
  }
  .changelog-pager .btn,
  .changelog-page-pager .btn{
    width:100%!important;
    min-width:0!important;
  }
  .changelog-badge-row{
    align-items:flex-start!important;
  }
}

/* ===== JDL Learn V3.1 strict changelog type badge contrast fix =====
   This must stay below older .changelog-entry span rules because those rules
   use !important and were forcing the version badge colour onto type badges. */
.changelog-entry span.changelog-type-badge,
.changelog-card span.changelog-type-badge,
.changelog-entry-card span.changelog-type-badge,
.changelog-type-badge{
  background:var(--changelog-type-bg,#2563EB)!important;
  color:var(--changelog-type-text,#FFFFFF)!important;
  border:1px solid rgba(18,35,63,.10)!important;
  box-shadow:0 8px 18px rgba(18,35,63,.10)!important;
}
.changelog-entry span.changelog-type-badge *,
.changelog-card span.changelog-type-badge *,
.changelog-entry-card span.changelog-type-badge *,
.changelog-type-badge *{
  color:inherit!important;
}

/* V2.8 age-targeted curriculum / focus challenge / support account modal polish */
.focus-challenge-panel,
.support-family-attach-panel,
.support-modal-sections,
.focus-challenge-grid,
.focus-action-row,
.focus-summary-strip,
.admin-account-modal-box .panel,
.admin-account-modal-box .section-head {
  line-height: 1.6;
}
.focus-challenge-panel { margin-top: 22px; }
.focus-summary-strip {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 18px;
  margin: 16px 0 18px;
  border: 1px solid rgba(255,255,255,.16);
}
.focus-summary-strip b { white-space: nowrap; }
.focus-summary-strip.good { background: rgba(16,185,129,.14); color: #083b2a; }
.focus-summary-strip.warn { background: rgba(245,158,11,.18); color: #3b2600; }
.focus-challenge-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 18px;
}
.focus-challenge-card {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 45px rgba(15,23,42,.12);
  border: 1px solid rgba(15,23,42,.08);
  display: flex;
  flex-direction: column;
  gap: 12px;
  color: #102033;
}
.focus-challenge-card h3 { margin: 4px 0 0; line-height: 1.25; color: #102033; }
.focus-challenge-card p { margin: 0; line-height: 1.6; color: #334155; }
.focus-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: auto;
}
.focus-action-row .btn { white-space: normal; min-height: 42px; }

.admin-account-modal[hidden] { display: none !important; }
.admin-account-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(2,6,23,.72);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 26px 16px;
  overflow-y: auto;
}
body.modal-open { overflow: hidden; }
.admin-account-modal-box {
  position: relative;
  width: min(1180px, 100%);
  max-height: calc(100vh - 52px);
  overflow-y: auto;
  border-radius: 26px;
  background: linear-gradient(180deg, #f8fafc 0%, #eaf2fb 100%);
  color: #0f172a;
  padding: 24px;
  box-shadow: 0 30px 80px rgba(0,0,0,.38);
}
.modal-red-x {
  position: sticky;
  top: 0;
  margin-left: auto;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 999px;
  background: #dc2626;
  color: #fff;
  font-size: 28px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 30px rgba(220,38,38,.35);
}
.support-account-grid { margin: 18px 0; }
.support-modal-sections { gap: 18px; margin: 18px 0; }
.focus-mini-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.focus-mini-grid > div {
  padding: 12px;
  border-radius: 16px;
  background: rgba(15,23,42,.06);
}
.focus-mini-grid b,
.focus-mini-grid span { display: block; line-height: 1.45; }
.support-family-attach-panel { margin: 18px 0; }
.admin-account-modal-box .table-wrap { max-height: 380px; }

.quick-game-group-v2 .quick-group-head p,
.game-card p,
.quick-game-btn span,
.quick-game-btn small { line-height: 1.55; }
.quick-game-buttons { gap: 10px; }
.quick-game-btn { min-height: 74px; padding: 12px; }

@media (max-width: 720px) {
  .focus-summary-strip { flex-direction: column; gap: 8px; }
  .focus-challenge-grid { grid-template-columns: 1fr; }
  .focus-action-row .btn { width: 100%; }
  .admin-account-modal { padding: 14px 10px; }
  .admin-account-modal-box { padding: 16px; max-height: calc(100vh - 28px); border-radius: 20px; }
  .modal-red-x { width: 40px; height: 40px; }
}

/* ===== V28.1 hotfix: cooldown/wait buttons must stay visibly red ===== */
body .btn.is-waiting,
body .btn.primary.is-waiting,
body .btn.green.is-waiting,
body .btn.gold.is-waiting,
body .quick-game-btn.is-waiting,
body button[data-cooldown-key].is-waiting,
body button[data-cooldown-key][disabled].is-waiting {
  background: linear-gradient(135deg, #dc2626, #991b1b) !important;
  background-color: #dc2626 !important;
  color: #ffffff !important;
  border-color: #991b1b !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
  box-shadow: 0 10px 24px rgba(220, 38, 38, .22) !important;
  transform: none !important;
}
body .btn.is-waiting *,
body .btn.primary.is-waiting *,
body .quick-game-btn.is-waiting *,
body button[data-cooldown-key].is-waiting *,
body button[data-cooldown-key][disabled].is-waiting * {
  color: #ffffff !important;
  text-shadow: none !important;
}
body .btn.is-waiting:hover,
body .btn.primary.is-waiting:hover,
body .quick-game-btn.is-waiting:hover,
body button[data-cooldown-key].is-waiting:hover {
  background: linear-gradient(135deg, #dc2626, #991b1b) !important;
  color: #ffffff !important;
  border-color: #991b1b !important;
  transform: none !important;
}

/* ===== V12.9 Quick Games WOW upgrade: mini-game renderer, strict spacing, mobile-safe ===== */
.popup-modal-v2{align-items:center!important;justify-items:center!important;overflow-y:auto!important;overflow-x:hidden!important;padding:clamp(12px,3vw,22px)!important;-webkit-overflow-scrolling:touch!important;}
.popup-box-v2{width:min(720px,calc(100vw - 24px))!important;max-height:calc(100vh - 28px)!important;overflow-y:auto!important;overflow-x:hidden!important;border-radius:30px!important;padding:clamp(16px,3vw,24px)!important;background:linear-gradient(180deg,#122345,#0d152a)!important;color:#fff!important;display:flex!important;flex-direction:column!important;gap:14px!important;line-height:1.55!important;}
.popup-box-v2 h2{margin:0!important;line-height:1.16!important;color:#fff!important;font-size:clamp(1.35rem,3vw,2rem)!important;}
.popup-box-v2 .qgw-question-text{margin:0!important;color:#d9e8ff!important;line-height:1.55!important;font-weight:750!important;}
.qgw-meta-row,.qgw-control-row{gap:9px!important;align-items:center!important;margin:0!important;}
.qgw-control-row{padding-top:2px!important;}
.qgw-control-row .btn{min-width:96px!important;}
.qgw-stage{border:1px solid rgba(255,255,255,.16)!important;background:radial-gradient(circle at top left,rgba(103,183,255,.18),rgba(72,213,151,.09) 42%,rgba(255,255,255,.035))!important;border-radius:26px!important;padding:clamp(14px,3vw,20px)!important;display:grid!important;gap:14px!important;position:relative!important;overflow:hidden!important;color:#fff!important;line-height:1.5!important;}
.qgw-stage:before{content:"";position:absolute;inset:-40% -20% auto auto;width:260px;height:260px;border-radius:50%;background:rgba(255,224,114,.12);filter:blur(4px);pointer-events:none;}
.qgw-stage>*{position:relative;z-index:1;}
.qgw-mini-note{margin:0!important;color:#b9cbea!important;font-weight:800!important;line-height:1.5!important;}
.qgw-card-grid,.qgw-answer-row,.qgw-gate-row,.qgw-orb-grid,.qgw-tile-grid,.qgw-stack-options{display:grid!important;gap:10px!important;min-width:0!important;}
.qgw-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.qgw-answer-row,.qgw-gate-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))!important;}
.qgw-orb-grid{grid-template-columns:repeat(auto-fit,minmax(82px,1fr))!important;align-items:stretch!important;}
.qgw-tile-grid{grid-template-columns:repeat(auto-fit,minmax(72px,1fr))!important;}
.qgw-stack-options{grid-template-columns:1fr!important;}
.qgw-pressable,.qgw-answer-card,.qgw-answer-chip,.qgw-number-orb,.qgw-gate-btn,.qgw-fraction-card,.qgw-letter-tile,.qgw-sentence-strip,.qgw-map-pin,.qgw-lab-btn,.qgw-sort-card,.qgw-speed-btn{border:1px solid rgba(255,255,255,.17)!important;background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055))!important;color:#fff!important;border-radius:18px!important;padding:13px!important;min-height:58px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;text-align:center!important;font-weight:950!important;line-height:1.3!important;cursor:pointer!important;box-shadow:0 12px 24px rgba(0,0,0,.18)!important;transition:transform .16s ease,border-color .16s ease,background .16s ease!important;}
.qgw-pressable:hover,.qgw-pressable:focus-visible,.qgw-answer-card:hover,.qgw-answer-chip:hover,.qgw-number-orb:hover,.qgw-gate-btn:hover,.qgw-fraction-card:hover,.qgw-letter-tile:hover,.qgw-sentence-strip:hover,.qgw-map-pin:hover,.qgw-lab-btn:hover,.qgw-sort-card:hover,.qgw-speed-btn:hover{transform:translateY(-2px) scale(1.015)!important;border-color:rgba(255,224,114,.72)!important;background:linear-gradient(180deg,rgba(255,224,114,.24),rgba(103,183,255,.12))!important;}
.qgw-answer-card,.qgw-fraction-card,.qgw-map-pin,.qgw-lab-btn,.qgw-sort-card{flex-direction:column!important;align-items:center!important;min-height:88px!important;}
.qgw-answer-card span,.qgw-answer-chip small,.qgw-fraction-card small,.qgw-memory-card small{display:block!important;color:#b9cbea!important;font-size:.78rem!important;font-weight:900!important;line-height:1.25!important;}
.qgw-answer-card b,.qgw-answer-chip b,.qgw-fraction-card b,.qgw-map-pin b,.qgw-lab-btn b,.qgw-sort-card b,.qgw-speed-btn b{color:#fff!important;line-height:1.28!important;word-break:break-word!important;}
.qgw-duel-board{display:grid!important;grid-template-columns:1fr auto 1fr!important;gap:12px!important;align-items:center!important;}
.qgw-player{display:grid!important;gap:8px!important;place-items:center!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:22px!important;background:rgba(255,255,255,.07)!important;padding:14px!important;}
.qgw-player small{color:#b9cbea!important;font-weight:1000!important;}
.qgw-vs{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ffe072,#ffbd73);color:#221400;font-weight:1000;box-shadow:0 12px 26px rgba(255,189,115,.2);}
.qgw-dice-face{width:82px;height:82px;border-radius:22px;background:#fff;color:#111;display:grid!important;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:5px;padding:12px;box-shadow:0 16px 30px rgba(0,0,0,.3);animation:qgwDicePop .72s ease both;}
.qgw-dice-face i{width:10px;height:10px;border-radius:50%;background:#111;place-self:center;}
.dice-1 i:nth-child(n+2),.dice-2 i:nth-child(n+3),.dice-3 i:nth-child(n+4),.dice-4 i:nth-child(n+5),.dice-5 i:nth-child(n+6){display:none;}
@keyframes qgwDicePop{0%{transform:rotate(-14deg) scale(.76);opacity:.25}65%{transform:rotate(8deg) scale(1.08)}100%{transform:rotate(0) scale(1)}}
.qgw-flash-card{min-height:148px;border-radius:26px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,#fff,#dcecff);color:#102037;display:grid;place-items:center;text-align:center;padding:18px;gap:8px;box-shadow:0 18px 38px rgba(0,0,0,.28);animation:qgwFlip .75s ease both;}
.qgw-flash-card span{font-weight:1000;letter-spacing:.12em;color:#0e6f4a;font-size:.8rem}.qgw-flash-card b{color:#102037!important;font-size:clamp(1.05rem,3vw,1.45rem);line-height:1.24}.qgw-flash-card small{color:#526982;font-weight:900}
@keyframes qgwFlip{0%{transform:rotateY(80deg);opacity:.2}100%{transform:rotateY(0);opacity:1}}
.qgw-number-track,.qgw-equation-machine,.qgw-fraction-visual,.qgw-counter-visual,.qgw-word-window,.qgw-paper,.qgw-hero-token{border-radius:22px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);padding:14px;display:grid;gap:7px;text-align:center;line-height:1.4;}
.qgw-number-track span,.qgw-fraction-visual span,.qgw-counter-visual span,.qgw-word-window span,.qgw-hero-token span{font-size:2rem;line-height:1}.qgw-number-track b,.qgw-equation-machine b,.qgw-fraction-visual b,.qgw-counter-visual b,.qgw-word-window b,.qgw-paper b,.qgw-stage-question{color:#fff!important;line-height:1.35!important;}
.qgw-equation-machine span{font-size:2.4rem;animation:qgwSpin 4s linear infinite;display:inline-block}.qgw-equation-machine em{font-style:normal;color:#9df2c0;font-weight:1000}.qgw-gate-btn{font-size:1.2rem!important;}
@keyframes qgwSpin{to{transform:rotate(360deg)}}
.qgw-number-orb{aspect-ratio:1/1;border-radius:999px!important;font-size:1.1rem!important;background:radial-gradient(circle at 30% 25%,#fff 0,#9fd4ff 18%,#386cff 62%,#132b75 100%)!important;text-shadow:0 2px 6px rgba(0,0,0,.35)!important;}
.qgw-letter-bank{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;align-items:center;padding:12px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13)}
.qgw-letter-bank span,.qgw-letter-tile span{min-width:42px;min-height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#ffe072,#ffbd73);color:#211300;font-weight:1000;box-shadow:0 12px 22px rgba(0,0,0,.18)}
.qgw-text-input{font-weight:950!important;font-size:1.05rem!important;text-align:center!important;letter-spacing:.03em!important;}
.qgw-submit{width:100%!important;min-height:48px!important;}
.qgw-sentence-strip{justify-content:flex-start!important;text-align:left!important;min-height:54px!important;}.qgw-paper span{color:#9df2c0!important;font-weight:1000!important}.qgw-paper{text-align:left!important;}
.qgw-map{min-height:160px;border-radius:24px;position:relative;overflow:hidden;display:grid;place-items:center;text-align:center;gap:7px;padding:18px;background:linear-gradient(135deg,rgba(72,213,151,.25),rgba(103,183,255,.16)),repeating-linear-gradient(45deg,rgba(255,255,255,.10) 0 2px,transparent 2px 24px);border:1px solid rgba(255,255,255,.16)}
.qgw-map i{position:absolute;width:18px;height:18px;border-radius:50%;background:#ff5c75;box-shadow:0 0 0 8px rgba(255,92,117,.16)}.qgw-map i:nth-child(1){left:18%;top:26%}.qgw-map i:nth-child(2){right:20%;top:42%}.qgw-map i:nth-child(3){left:48%;bottom:20%}.qgw-map b,.qgw-map small{position:relative;z-index:1;color:#fff!important}.qgw-map b{font-size:1.4rem}.qgw-map small{max-width:92%;line-height:1.42;color:#d9e8ff!important;font-weight:850}
.qgw-beakers{display:flex;justify-content:center;gap:14px;font-size:2.25rem;filter:drop-shadow(0 12px 18px rgba(0,0,0,.35));}.qgw-beakers span{animation:qgwFloat 1.8s ease-in-out infinite}.qgw-beakers span:nth-child(2){animation-delay:.18s}.qgw-beakers span:nth-child(3){animation-delay:.36s}@keyframes qgwFloat{50%{transform:translateY(-8px)}}
.qgw-pattern-lights{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.qgw-pattern-lights i{height:42px;border-radius:14px;background:linear-gradient(135deg,#67b7ff,#48d597);animation:qgwPulse 1s ease-in-out infinite}.qgw-pattern-lights i:nth-child(2){animation-delay:.12s}.qgw-pattern-lights i:nth-child(3){animation-delay:.24s}.qgw-pattern-lights i:nth-child(4){animation-delay:.36s}@keyframes qgwPulse{50%{opacity:.45;transform:scale(.94)}}
.qgw-sort-zones{display:grid;grid-template-columns:1fr 1fr;gap:10px}.qgw-sort-zones>div{border-radius:20px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);padding:14px;display:grid;place-items:center;gap:6px;text-align:center}.qgw-sort-zones span{font-size:1.8rem}.qgw-sort-zones b{color:#fff!important;line-height:1.25}
.qgw-countdown{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}.qgw-countdown span,.qgw-countdown b{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);font-weight:1000}.qgw-countdown b{background:linear-gradient(135deg,#48d597,#ffe072);color:#102018;animation:qgwGo .7s ease infinite alternate}@keyframes qgwGo{to{transform:scale(1.08)}}
.qgw-hero-token{place-items:center}.qgw-hero-token span{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:rgba(255,255,255,.10);font-size:2.2rem}.qgw-hero-token small{color:#d9e8ff!important;font-weight:850;line-height:1.45}.qgw-sport-stage{background:radial-gradient(circle at top left,rgba(255,224,114,.22),rgba(103,183,255,.12),rgba(255,255,255,.04))!important}.qgw-creative-stage{background:radial-gradient(circle at top left,rgba(255,114,210,.20),rgba(103,183,255,.12),rgba(255,255,255,.04))!important}.qgw-arcade-stage{background:radial-gradient(circle at top left,rgba(255,92,117,.18),rgba(255,224,114,.12),rgba(255,255,255,.04))!important}.qgw-culture-stage{background:radial-gradient(circle at top left,rgba(72,213,151,.18),rgba(103,183,255,.13),rgba(255,255,255,.04))!important}
.quick-game-group-v2{display:flex!important;flex-direction:column!important;gap:12px!important;line-height:1.5!important}.quick-game-group-v2 h3{line-height:1.2!important;margin:0!important}.quick-group-head{gap:12px!important;align-items:flex-start!important}.quick-group-head p{line-height:1.45!important;margin:.35rem 0 0!important}.quick-game-buttons{gap:11px!important}.quick-game-btn{line-height:1.35!important;gap:7px!important;align-content:start!important}.quick-game-btn span,.quick-game-btn small{line-height:1.32!important}
@media(max-width:680px){.popup-modal-v2{padding:10px!important}.popup-box-v2{width:calc(100vw - 20px)!important;max-height:calc(100vh - 20px)!important;border-radius:24px!important;padding:15px!important;gap:12px!important}.qgw-card-grid,.qgw-answer-row,.qgw-gate-row{grid-template-columns:1fr!important}.qgw-duel-board{grid-template-columns:1fr!important}.qgw-vs{margin:0 auto}.qgw-dice-face{width:72px;height:72px}.qgw-sort-zones{grid-template-columns:1fr}.qgw-stage{border-radius:22px!important;padding:13px!important}.qgw-pressable,.qgw-answer-card,.qgw-answer-chip,.qgw-number-orb,.qgw-gate-btn,.qgw-fraction-card,.qgw-letter-tile,.qgw-sentence-strip,.qgw-map-pin,.qgw-lab-btn,.qgw-sort-card,.qgw-speed-btn{width:100%!important;min-height:54px!important}.qgw-orb-grid,.qgw-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.qgw-number-orb{aspect-ratio:auto!important;border-radius:18px!important}.qgw-flash-card{min-height:124px}.qgw-map{min-height:130px}.qgw-control-row .btn{width:auto!important;flex:1 1 120px!important}.quick-game-buttons{grid-template-columns:1fr!important}}

/* ===== V12.9a readability + richer mini-games follow-up ===== */
body .popup-box-v2 .qgw-question-text,
body .popup-box-v2 .progress-note,
body .qgw-stage,
body .qgw-stage p,
body .qgw-stage small,
body .qgw-stage .muted,
body .qgw-stage .qgw-mini-note,
body .qgw-stage .classic-stage-title,
body .qgw-stage .qgw-stage-question,
body .qgw-stage .qgw-memory-status{
  color:#e8f2ff !important;
}
body .qgw-stage .qgw-mini-note,
body .qgw-stage .qgw-memory-status{
  font-weight:900 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.25);
}
body .qgw-stage .classic-stage-title{
  font-size:1.05rem !important;
  font-weight:1000 !important;
  letter-spacing:.02em;
}
body .qgw-stage .qgw-answer-card small,
body .qgw-stage .qgw-answer-chip small,
body .qgw-stage .qgw-fraction-card small,
body .qgw-stage .qgw-memory-card small,
body .qgw-stage .qgw-balloon-body small,
body .qgw-stage .qgw-memory-choice small{
  color:#d9e8ff !important;
}

/* real dice pip layout */
body .qgw-dice-face{
  width:88px;
  height:88px;
  border-radius:20px;
  background:linear-gradient(145deg,#ffffff,#eaeaea) !important;
  border:1px solid rgba(0,0,0,.08);
  display:grid !important;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(3,1fr);
  gap:2px;
  padding:11px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 16px 28px rgba(0,0,0,.30) !important;
}
body .qgw-dice-face .qgw-pip{
  width:11px;
  height:11px;
  border-radius:50%;
  place-self:center;
  background:transparent;
  box-shadow:none;
}
body .qgw-dice-face .qgw-pip.on{
  background:#111827;
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.15), 0 1px 2px rgba(0,0,0,.35);
}
body .qgw-dice-face .qgw-pip.off{opacity:0;}

/* balloon popper */
body .qgw-balloon-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
  gap:14px;
  align-items:end;
  padding-top:8px;
}
body .qgw-balloon-btn{
  appearance:none;
  -webkit-appearance:none;
  border:none;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 4px 10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:0;
  cursor:pointer;
  transform:translateY(var(--balloon-shift,0));
  animation:qgwBalloonFloat 2.8s ease-in-out infinite;
  animation-delay:var(--float-delay,0s);
}
body .qgw-balloon-btn:hover{transform:translateY(calc(var(--balloon-shift,0) - 4px)) scale(1.03) !important;}
body .qgw-balloon-body{
  width:100%;
  min-height:110px;
  border-radius:48% 48% 44% 44% / 42% 42% 58% 58%;
  padding:18px 12px 20px;
  display:grid;
  place-items:center;
  text-align:center;
  gap:5px;
  color:#fff;
  border:1px solid rgba(255,255,255,.28);
  box-shadow:inset 0 10px 20px rgba(255,255,255,.18), 0 14px 28px rgba(0,0,0,.24);
}
body .qgw-balloon-btn:nth-child(6n+1) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#ffd7df,#ff6b88 44%,#c72452 100%);} 
body .qgw-balloon-btn:nth-child(6n+2) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#e0f0ff,#56a7ff 44%,#2353c5 100%);} 
body .qgw-balloon-btn:nth-child(6n+3) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#e8ffef,#53d38f 44%,#0f8a5a 100%);} 
body .qgw-balloon-btn:nth-child(6n+4) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#fff4cd,#ffc85b 44%,#d27d07 100%);} 
body .qgw-balloon-btn:nth-child(6n+5) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#f4e3ff,#b16dff 44%,#6c2ac6 100%);} 
body .qgw-balloon-btn:nth-child(6n+6) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#dffcff,#4ad7dd 44%,#138196 100%);} 
body .qgw-balloon-body b{font-size:1.05rem;color:#fff !important;line-height:1.2;word-break:break-word;}
body .qgw-balloon-body small{font-size:.74rem;font-weight:900;line-height:1.25;}
body .qgw-balloon-string{
  width:2px;
  height:34px;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.22));
  position:relative;
}
body .qgw-balloon-string:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-6px;
  width:12px;
  height:12px;
  margin-left:-6px;
  border:2px solid rgba(255,255,255,.7);
  border-top:none;
  border-left:none;
  transform:rotate(45deg);
  border-radius:0 0 10px 0;
}
@keyframes qgwBalloonFloat{50%{transform:translateY(calc(var(--balloon-shift,0) - 10px));}}

/* memory reveal */
body .qgw-memory-showcase{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(96px,1fr));
  gap:12px;
}
body .qgw-memory-preview-card,
body .qgw-memory-choice{
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  min-height:112px;
  padding:12px;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.05));
  display:grid;
  place-items:center;
  text-align:center;
  gap:6px;
}
body .qgw-memory-preview-card{
  position:relative;
  overflow:hidden;
  opacity:.48;
  transform:scale(.96);
  transition:transform .2s ease, opacity .2s ease, border-color .2s ease, box-shadow .2s ease;
}
body .qgw-memory-preview-card.active{
  opacity:1;
  transform:scale(1.02) translateY(-3px);
  border-color:rgba(255,224,114,.9);
  box-shadow:0 16px 30px rgba(0,0,0,.25),0 0 0 3px rgba(255,224,114,.12);
}
body .qgw-memory-preview-card.seen{opacity:.88;}
body .qgw-memory-front,
body .qgw-memory-back,
body .qgw-memory-choice-face{
  width:100%;
  min-height:64px;
  border-radius:14px;
  display:grid;
  place-items:center;
  padding:8px;
}
body .qgw-memory-front{background:linear-gradient(135deg,#fff,#dcecff);color:#102037;font-weight:1000;}
body .qgw-memory-back,
body .qgw-memory-choice-face{background:linear-gradient(135deg,#67b7ff,#2c4fb8);color:#fff;font-size:1.5rem;font-weight:1000;}
body .qgw-memory-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;}
body .qgw-memory-choice b{color:#fff !important;line-height:1.2;}

@media(max-width:680px){
  body .qgw-balloon-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body .qgw-balloon-body{min-height:96px;padding:14px 10px 18px;}
  body .qgw-memory-showcase,
  body .qgw-memory-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* ===== V12.10 FULL Quick Games WOW pass: stronger game-object layouts, no plain-answer look ===== */
body .popup-box-v2,
body .popup-box-v2 *{
  text-rendering:geometricPrecision;
}
body .popup-box-v2 .qgw-question-text,
body .popup-box-v2 .progress-note,
body .popup-box-v2 .muted,
body .qgw-stage,
body .qgw-stage p,
body .qgw-stage small,
body .qgw-stage em,
body .qgw-stage .qgw-mini-note,
body .qgw-stage .classic-stage-title,
body .qgw-stage .qgw-stage-question,
body .qgw-stage .qgw-memory-status{
  color:#eef6ff !important;
}
body .qgw-stage .qgw-mini-note,
body .qgw-stage .qgw-memory-status,
body .qgw-stage .classic-stage-title{
  font-weight:950 !important;
  line-height:1.55 !important;
  text-shadow:0 2px 4px rgba(0,0,0,.28);
}
body .qgw-stage .qgw-answer-card small,
body .qgw-stage .qgw-answer-chip small,
body .qgw-stage .qgw-fraction-card small,
body .qgw-stage .qgw-memory-card small,
body .qgw-stage .qgw-balloon-body small,
body .qgw-stage .qgw-memory-choice small,
body .qgw-stage .qgw-race-lane small,
body .qgw-stage .qgw-spotlight-choice small,
body .qgw-stage .qgw-passport-stamp small,
body .qgw-stage .qgw-coin-choice small,
body .qgw-stage .qgw-clock-choice small,
body .qgw-stage .qgw-swipe-card small,
body .qgw-stage .qgw-reaction-pad small{
  color:#dfeeff !important;
  opacity:1 !important;
  font-weight:900 !important;
}

/* proper physical dice faces */
body .qgw-dice-face{
  width:88px !important;
  height:88px !important;
  border-radius:20px !important;
  background:linear-gradient(145deg,#ffffff,#e9edf4) !important;
  border:1px solid rgba(0,0,0,.08) !important;
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  grid-template-rows:repeat(3,1fr) !important;
  gap:2px !important;
  padding:11px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 16px 28px rgba(0,0,0,.30) !important;
}
body .qgw-dice-face .qgw-pip{
  width:11px !important;
  height:11px !important;
  border-radius:50% !important;
  place-self:center !important;
  background:transparent !important;
  box-shadow:none !important;
}
body .qgw-dice-face .qgw-pip.on{
  background:#111827 !important;
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.18),0 1px 2px rgba(0,0,0,.35) !important;
}
body .qgw-dice-face .qgw-pip.off{opacity:0 !important;}

/* floating balloon answer objects */
body .qgw-balloon-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr)) !important;
  gap:14px !important;
  align-items:end !important;
  padding-top:8px !important;
}
body .qgw-balloon-btn{
  appearance:none !important;
  -webkit-appearance:none !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 4px 10px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:0 !important;
  cursor:pointer !important;
  transform:translateY(var(--balloon-shift,0)) !important;
  animation:qgwBalloonFloat 2.8s ease-in-out infinite !important;
  animation-delay:var(--float-delay,0s) !important;
}
body .qgw-balloon-btn:hover,
body .qgw-balloon-btn:focus-visible{transform:translateY(calc(var(--balloon-shift,0) - 6px)) scale(1.035) !important;}
body .qgw-balloon-body{
  width:100% !important;
  min-height:110px !important;
  border-radius:48% 48% 44% 44% / 42% 42% 58% 58% !important;
  padding:18px 12px 20px !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  gap:5px !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.32) !important;
  box-shadow:inset 0 10px 20px rgba(255,255,255,.18),0 14px 28px rgba(0,0,0,.24) !important;
}
body .qgw-balloon-btn:nth-child(6n+1) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#ffd7df,#ff6b88 44%,#c72452 100%) !important;}
body .qgw-balloon-btn:nth-child(6n+2) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#e0f0ff,#56a7ff 44%,#2353c5 100%) !important;}
body .qgw-balloon-btn:nth-child(6n+3) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#e8ffef,#53d38f 44%,#0f8a5a 100%) !important;}
body .qgw-balloon-btn:nth-child(6n+4) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#fff4cd,#ffc85b 44%,#d27d07 100%) !important;}
body .qgw-balloon-btn:nth-child(6n+5) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#f4e3ff,#b16dff 44%,#6c2ac6 100%) !important;}
body .qgw-balloon-btn:nth-child(6n+6) .qgw-balloon-body{background:radial-gradient(circle at 35% 25%,#dffcff,#4ad7dd 44%,#138196 100%) !important;}
body .qgw-balloon-body b{font-size:1.05rem !important;color:#fff !important;line-height:1.2 !important;word-break:break-word !important;}
body .qgw-balloon-string{
  width:2px !important;height:34px !important;border-radius:999px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.22)) !important;
  position:relative !important;
}
body .qgw-balloon-string:after{
  content:"";position:absolute;left:50%;bottom:-6px;width:12px;height:12px;margin-left:-6px;
  border:2px solid rgba(255,255,255,.7);border-top:none;border-left:none;transform:rotate(45deg);border-radius:0 0 10px 0;
}
@keyframes qgwBalloonFloat{50%{transform:translateY(calc(var(--balloon-shift,0) - 10px));}}

/* memory reveal now shows first, then gives choices */
body .qgw-memory-showcase{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(96px,1fr)) !important;
  gap:12px !important;
}
body .qgw-memory-preview-card,
body .qgw-memory-choice{
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:18px !important;
  min-height:112px !important;
  padding:12px !important;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.05)) !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  gap:6px !important;
}
body .qgw-memory-preview-card{
  position:relative !important;
  overflow:hidden !important;
  opacity:.48 !important;
  transform:scale(.96) !important;
  transition:transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease !important;
}
body .qgw-memory-preview-card.active{
  opacity:1 !important;
  transform:scale(1.02) translateY(-3px) !important;
  border-color:rgba(255,224,114,.9) !important;
  box-shadow:0 16px 30px rgba(0,0,0,.25),0 0 0 3px rgba(255,224,114,.12) !important;
}
body .qgw-memory-preview-card.seen{opacity:.88 !important;}
body .qgw-memory-front,
body .qgw-memory-back,
body .qgw-memory-choice-face{
  width:100% !important;
  min-height:64px !important;
  border-radius:14px !important;
  display:grid !important;
  place-items:center !important;
  padding:8px !important;
}
body .qgw-memory-front{background:linear-gradient(135deg,#fff,#dcecff) !important;color:#102037 !important;font-weight:1000 !important;}
body .qgw-memory-back,
body .qgw-memory-choice-face{background:linear-gradient(135deg,#67b7ff,#2c4fb8) !important;color:#fff !important;font-size:1.5rem !important;font-weight:1000 !important;}
body .qgw-memory-choice-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(120px,1fr)) !important;gap:12px !important;}
body .qgw-memory-choice b{color:#fff !important;line-height:1.2 !important;}

/* stronger premium Quick Game object types */
body .qgw-coin-options,
body .qgw-clock-options,
body .qgw-reaction-pad-grid,
body .qgw-lane-grid,
body .qgw-spotlight-grid,
body .qgw-stamp-grid,
body .qgw-game-token-grid,
body .qgw-swipe-card-row{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr)) !important;
  gap:12px !important;
}
body .qgw-cash-register,
body .qgw-clock-visual,
body .qgw-arena-board,
body .qgw-passport,
body .qgw-arcade-header{
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:24px !important;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.045)) !important;
  padding:15px !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  gap:7px !important;
}
body .qgw-cash-register span,
body .qgw-clock-visual span,
body .qgw-arena-board span,
body .qgw-passport span,
body .qgw-arcade-header span{font-size:2.2rem !important;line-height:1 !important;}
body .qgw-cash-register b,
body .qgw-clock-visual b,
body .qgw-arena-board b,
body .qgw-passport b,
body .qgw-arcade-header b{color:#fff !important;line-height:1.3 !important;}
body .qgw-coin-choice,
body .qgw-clock-choice,
body .qgw-reaction-pad,
body .qgw-race-lane,
body .qgw-spotlight-choice,
body .qgw-passport-stamp,
body .qgw-game-token,
body .qgw-swipe-card{
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:20px !important;
  min-height:92px !important;
  padding:14px !important;
  background:linear-gradient(150deg,rgba(255,255,255,.14),rgba(255,255,255,.055)) !important;
  color:#fff !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  gap:6px !important;
  box-shadow:0 14px 24px rgba(0,0,0,.2) !important;
}
body .qgw-coin-choice span{font-size:1.8rem !important;filter:drop-shadow(0 4px 8px rgba(0,0,0,.28));}
body .qgw-coin-choice{background:radial-gradient(circle at 32% 24%,rgba(255,224,114,.28),rgba(255,255,255,.08) 42%,rgba(255,255,255,.04)) !important;}
body .qgw-clock-choice{border-radius:999px !important;aspect-ratio:1/1 !important;background:radial-gradient(circle,rgba(255,255,255,.18),rgba(103,183,255,.11) 58%,rgba(255,255,255,.04)) !important;}
body .qgw-reaction-pad{background:linear-gradient(145deg,rgba(255,92,117,.18),rgba(255,224,114,.10),rgba(255,255,255,.04)) !important;}
body .qgw-pad-light{
  width:26px;height:26px;border-radius:50%;background:#ffe072;box-shadow:0 0 0 8px rgba(255,224,114,.12),0 0 24px rgba(255,224,114,.45);
  animation:qgwPadBlink .75s ease-in-out infinite alternate;
}
@keyframes qgwPadBlink{to{transform:scale(1.16);opacity:.72;}}
body .qgw-race-lane{
  position:relative !important;
  overflow:hidden !important;
  justify-items:start !important;
  text-align:left !important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.10) 0 2px,transparent 2px 28px),
    linear-gradient(145deg,rgba(255,224,114,.16),rgba(103,183,255,.10),rgba(255,255,255,.04)) !important;
}
body .qgw-race-lane:after{
  content:"🏎️";position:absolute;right:12px;bottom:8px;font-size:1.7rem;filter:drop-shadow(0 8px 10px rgba(0,0,0,.28));
}
body .qgw-lane-no{font-size:.74rem !important;font-weight:1000 !important;text-transform:uppercase !important;letter-spacing:.08em !important;color:#ffe072 !important;}
body .qgw-stage-lights{display:flex !important;justify-content:center !important;gap:14px !important;font-size:2rem !important;}
body .qgw-stage-lights span{filter:drop-shadow(0 10px 14px rgba(0,0,0,.35));animation:qgwFloat 1.7s ease-in-out infinite;}
body .qgw-stage-lights span:nth-child(2){animation-delay:.18s}
body .qgw-stage-lights span:nth-child(3){animation-delay:.36s}
body .qgw-spotlight-choice{
  background:radial-gradient(circle at top,rgba(255,224,114,.32),rgba(255,114,210,.12) 44%,rgba(255,255,255,.04)) !important;
}
body .qgw-passport{
  background:
    linear-gradient(135deg,rgba(72,213,151,.16),rgba(103,183,255,.10)),
    repeating-linear-gradient(45deg,rgba(255,255,255,.08) 0 2px,transparent 2px 22px) !important;
}
body .qgw-passport-stamp{
  border-style:dashed !important;
  border-width:2px !important;
  transform:rotate(-1deg);
}
body .qgw-passport-stamp:nth-child(even){transform:rotate(1deg);}
body .qgw-passport-stamp span{font-size:1.6rem !important;color:#ffe072 !important;}
body .qgw-game-token{
  border-radius:24px !important;
  background:linear-gradient(145deg,rgba(103,183,255,.16),rgba(72,213,151,.09),rgba(255,255,255,.04)) !important;
}
body .qgw-token-icon{
  width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.17);font-weight:1000;color:#ffe072;
}
body .qgw-swipe-card{
  position:relative !important;
  min-height:105px !important;
  transform:rotate(-.8deg);
  background:linear-gradient(145deg,rgba(72,213,151,.17),rgba(255,255,255,.075)) !important;
}
body .qgw-swipe-card:nth-child(even){transform:rotate(.8deg);}
body .qgw-card-grip{
  position:absolute;top:10px;right:12px;color:rgba(255,255,255,.55);font-weight:1000;letter-spacing:-3px;
}
body .qgw-pressable:hover,
body .qgw-pressable:focus-visible,
body .qgw-coin-choice:hover,
body .qgw-clock-choice:hover,
body .qgw-reaction-pad:hover,
body .qgw-race-lane:hover,
body .qgw-spotlight-choice:hover,
body .qgw-passport-stamp:hover,
body .qgw-game-token:hover,
body .qgw-swipe-card:hover{
  border-color:rgba(255,224,114,.84) !important;
  box-shadow:0 18px 34px rgba(0,0,0,.24),0 0 0 3px rgba(255,224,114,.11) !important;
}

/* stop any old dark text leaking inside these new game components */
body .qgw-stage b,
body .qgw-stage h3,
body .qgw-stage strong,
body .qgw-stage button,
body .qgw-stage button *,
body .qgw-stage [data-answer],
body .qgw-stage [data-answer] *{
  color:#fff !important;
}
body .qgw-flash-card b,
body .qgw-flash-card small,
body .qgw-flash-card span,
body .qgw-memory-front{color:#102037 !important;}

@media(max-width:680px){
  body .qgw-balloon-grid,
  body .qgw-coin-options,
  body .qgw-clock-options,
  body .qgw-reaction-pad-grid,
  body .qgw-lane-grid,
  body .qgw-spotlight-grid,
  body .qgw-stamp-grid,
  body .qgw-game-token-grid,
  body .qgw-swipe-card-row,
  body .qgw-memory-showcase,
  body .qgw-memory-choice-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body .qgw-balloon-body{min-height:96px !important;padding:14px 10px 18px !important;}
  body .qgw-clock-choice{aspect-ratio:auto !important;border-radius:20px !important;}
}
@media(max-width:420px){
  body .qgw-balloon-grid,
  body .qgw-coin-options,
  body .qgw-clock-options,
  body .qgw-reaction-pad-grid,
  body .qgw-lane-grid,
  body .qgw-spotlight-grid,
  body .qgw-stamp-grid,
  body .qgw-game-token-grid,
  body .qgw-swipe-card-row,
  body .qgw-memory-showcase,
  body .qgw-memory-choice-grid{
    grid-template-columns:1fr !important;
  }
}

/* ===== V12.12 mobile stat layout: keep Energy beside XP ===== */
@media(max-width:700px){
  .main-stats.stat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }
  .main-stats .energy-stat-card{
    grid-column:auto !important;
    min-width:0 !important;
  }
  .main-stats .energy-stat-card .energy-value{
    font-size:1.02rem !important;
    line-height:1.15 !important;
    white-space:nowrap !important;
  }
  .main-stats .energy-stat-card .bar{
    height:7px !important;
    margin-top:7px !important;
  }
  .main-stats .energy-stat-card small,
  .main-stats .energy-stat-card .regen-live{
    display:block !important;
    margin-top:6px !important;
    font-size:.76rem !important;
    line-height:1.25 !important;
    white-space:normal !important;
  }
}
@media(max-width:360px){
  .main-stats.stat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .main-stats .stat-card{
    padding:12px !important;
  }
  .main-stats .stat-card b{
    font-size:1rem !important;
  }
}
