:root{
  --bg:#13090e;
  --panel:#201118;
  --panel2:rgba(255,238,200,.08);
  --text:#fff3d2;
  --muted:rgba(255,243,210,.62);
  --line:rgba(218,178,96,.20);
  --accent:#e7c56d;
  --blue:#9d2228;
  --shadow:0 18px 55px rgba(0,0,0,.09);
  --radius:34px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;min-height:100%;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter","Segoe UI",Arial,sans-serif;font-weight:800}
body{touch-action:manipulation;user-select:none;-webkit-user-select:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
img{max-width:100%;display:block}
.app{width:100%;min-height:100svh;background:radial-gradient(circle at 15% 12%,rgba(199,255,33,.45),transparent 28%),radial-gradient(circle at 90% 14%,rgba(30,91,255,.12),transparent 26%),linear-gradient(180deg,#f7fff0,#eef4e8 55%,#f8faf4);padding-bottom:108px;overflow:hidden}
.screen{display:none;min-height:100svh;width:100%;overflow-x:hidden}
.screen.is-active{display:block;animation:screenIn .28s cubic-bezier(.2,.8,.2,1)}
@keyframes screenIn{from{opacity:.65;transform:translateY(10px)}to{opacity:1;transform:none}}
.screen__inner{width:min(100%,860px);margin:0 auto;padding:22px 22px 120px;overflow-x:hidden}
.tag{margin:0 0 14px;color:var(--blue);font-size:14px;font-weight:950;text-transform:uppercase;letter-spacing:.18em}
.btn{width:100%;min-height:70px;border:1px solid var(--line);border-radius:999px;padding:18px 22px;font-size:22px;font-weight:950;letter-spacing:-.045em;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}
.btn:active{transform:scale(.985)}
.btn--primary{background:#0a0d0a;color:#fff;border-color:#0a0d0a;box-shadow:0 18px 45px rgba(0,0,0,.16)}
.btn--ghost{background:rgba(255,255,255,.68);color:#0a0d0a;border-color:rgba(0,0,0,.08)}
.home{padding-top:22px}.posterCard{border-radius:34px;padding:14px;background:rgba(255,255,255,.74);border:1px solid rgba(255,255,255,.85);box-shadow:var(--shadow);transform-origin:center top;animation:posterFloat 5.8s ease-in-out infinite}.posterCard img{border-radius:26px;width:100%;aspect-ratio:1/1;object-fit:cover;transition:opacity .24s ease,filter .3s ease,transform .3s ease}
@keyframes posterFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.campaignBadge{display:inline-flex;align-items:center;gap:12px;margin:28px 0 20px;padding:13px 18px;border-radius:999px;background:rgba(255,255,255,.62);border:1px solid var(--line);box-shadow:0 12px 28px rgba(0,0,0,.06)}.campaignBadge span{width:20px;height:20px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 10px rgba(199,255,33,.2)}.campaignBadge b{font-size:22px;font-weight:950;letter-spacing:-.04em}.mobileTitle{margin:0;font-size:clamp(76px,20vw,138px);line-height:.78;letter-spacing:-.09em;font-weight:1000}.mobileTitle mark{display:inline-block;background:#0a0d0a;color:var(--accent);border-radius:30px;padding:8px 22px 14px;margin-top:8px}.mobileLead{margin:22px 0 28px;color:rgba(8,10,8,.72);font-size:25px;line-height:1.15;letter-spacing:-.045em;font-weight:650}.actionStack,.antiHomeActions{display:grid;gap:12px}.statsGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.statsGrid div{min-height:130px;border-radius:28px;background:rgba(255,255,255,.72);border:1px solid var(--line);padding:22px;box-shadow:0 12px 36px rgba(0,0,0,.05)}.statsGrid b{font-size:58px;line-height:.85;letter-spacing:-.06em}.statsGrid span{display:block;margin-top:12px;color:var(--muted);font-size:21px;line-height:.95;letter-spacing:-.04em}.ticker{margin:28px -22px 0;padding:14px 0;background:#070b07;border-radius:999px;overflow:hidden;box-shadow:0 22px 45px rgba(0,0,0,.18)}.ticker__track{display:flex;gap:14px;width:max-content;animation:ticker 18s linear infinite}.ticker span{margin-left:14px;padding:12px 24px;border-radius:999px;color:var(--accent);border:1px solid rgba(199,255,33,.25);font-size:21px;font-weight:950;white-space:nowrap}@keyframes ticker{to{transform:translateX(-50%)}}
.gameScreen h2,.sectionHead h2,.qrScreen h2,.planScreen h2{margin:0;font-size:clamp(54px,15vw,92px);line-height:.85;letter-spacing:-.075em}.gameScreen>p:not(.tag),.sectionHead>p,.qrScreen>p{color:rgba(8,10,8,.66);font-size:22px;line-height:1.15;letter-spacing:-.04em}.classPicker,.leaderboard,.ideaForm,.qrCard,.planCards article{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:30px;box-shadow:0 16px 42px rgba(0,0,0,.06)}.classPicker{display:grid;gap:12px;padding:14px;margin:22px 0 14px}.classPicker__head{display:flex;justify-content:space-between;align-items:center;gap:12px}.classPicker__head b{font-size:19px;letter-spacing:-.04em}.classPicker__head span{padding:7px 10px;border-radius:999px;background:#080a08;color:var(--accent);font-size:12px;white-space:nowrap}.classPicker__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.classChip{min-height:48px;border:1px solid var(--line);border-radius:17px;background:#fff;color:#080a08;font-size:17px;font-weight:950}.classChip.is-active{background:#080a08;color:var(--accent)}.manualClass{display:grid;gap:7px;padding:10px;border-radius:20px;background:rgba(8,10,8,.04)}.manualClass span,.ideaForm span,.gameSave span{color:rgba(8,10,8,.58);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:950}.manualClass input,.ideaForm input,.ideaForm textarea,.gameSave input{width:100%;border:1px solid rgba(8,10,8,.11);border-radius:18px;background:#fff;padding:16px;color:#080a08}.manualClass input,.gameSave input{text-align:center;text-transform:uppercase;font-size:18px;font-weight:950}.leaderboard{padding:16px;margin-top:22px}.leaderboard__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.leaderboard__head b{font-size:20px}.leaderboard__head span{color:var(--muted)}.leaderRow{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.leaderRow div{display:flex;align-items:center;gap:10px}.leaderRow em{width:30px;height:30px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-style:normal}.leaderRow span,.leaderEmpty{color:var(--muted)}
.ideasScreen .sectionHead{margin-bottom:18px}.ideaForm{display:grid;gap:16px;padding:18px}.ideaCats{display:flex;flex-wrap:wrap;gap:8px}.ideaCat{border:1px solid var(--line);border-radius:999px;background:#fff;padding:10px 13px;font-weight:950;color:#080a08}.ideaCat.is-active{background:#080a08;color:var(--accent)}.ideaForm label{display:grid;gap:8px}.ideaForm textarea{min-height:150px;resize:vertical;line-height:1.25;font-weight:700}.ideaForm input::placeholder,.ideaForm textarea::placeholder{color:rgba(8,10,8,.28)}
.qrScreen{text-align:left}.qrCard{position:relative;margin:24px 0;padding:22px;overflow:hidden}.qrCard img{width:min(320px,100%);margin:auto;border-radius:22px;background:#fff}.qrScan{position:absolute;left:22px;right:22px;top:22px;height:3px;background:var(--blue);box-shadow:0 0 25px var(--blue);animation:qrScan 2.4s ease-in-out infinite}@keyframes qrScan{50%{transform:translateY(320px)}}.qrScreen small{display:block;text-align:center;color:var(--muted);min-height:24px;margin-top:10px}
.planScreen h2 span{display:block;margin-top:18px}.planCards{display:grid;gap:14px;margin-top:28px}.planCards article{padding:24px}.planCards i{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--accent);font-style:normal;font-size:22px;font-weight:950}.planCards h3{font-size:36px;line-height:.95;letter-spacing:-.06em;margin:34px 0 12px}.planCards p{margin:0;color:var(--muted);font-size:22px;line-height:1.15;letter-spacing:-.04em}
.bottomNav{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:100;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:8px;border-radius:31px;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(18px);box-shadow:0 15px 55px rgba(0,0,0,.14)}.navItem{min-width:0;border:0;border-radius:24px;background:rgba(255,255,255,.42);padding:10px 4px;color:rgba(8,10,8,.6);display:grid;place-items:center;gap:3px}.navItem span{min-width:34px;height:34px;padding:0 7px;border-radius:999px;background:rgba(8,10,8,.07);display:grid;place-items:center;font-weight:950}.navItem b{font-size:12px;line-height:1}.navItem.is-active{background:#080a08;color:#fff}.navItem.is-active span{background:var(--accent);color:#080a08}.navItem.is-anti-disabled{opacity:.34;filter:grayscale(1);pointer-events:none}
.gameModal,.antiIntro{position:fixed;inset:0;z-index:200;display:grid;align-items:end;justify-items:center;padding:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom));background:rgba(8,10,8,.62);backdrop-filter:blur(16px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}.gameModal.is-open,.antiIntro.is-open{opacity:1;visibility:visible;pointer-events:auto}.gameShell{position:relative;width:min(430px,100%);height:min(650px,calc(100svh - 22px));border-radius:34px;background:radial-gradient(circle at 70% 18%,rgba(199,255,33,.45),transparent 34%),linear-gradient(180deg,#f8fff1,#edf4e8);border:1px solid rgba(255,255,255,.8);box-shadow:0 34px 110px rgba(0,0,0,.34);overflow:hidden;padding:20px}.gameClose{position:absolute;top:20px;right:20px;z-index:20;width:58px;height:58px;border:0;border-radius:50%;background:#080a08;color:#fff;font-size:38px;line-height:1}.gameStage{height:100%}.gameHud{display:grid;grid-template-columns:1fr auto 74px;gap:10px;align-items:center;padding-right:68px;margin-bottom:12px}.gameHud__score,.gameHud__time{min-height:70px;border-radius:24px;background:rgba(255,255,255,.78);padding:13px 16px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 10px 24px rgba(0,0,0,.05)}.gameHud__score strong,.gameHud__time strong{font-size:28px;line-height:.88;font-weight:1000}.gameHud__score span,.gameHud__time span{margin-top:5px;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em}.gameHud__combo{height:58px;min-width:68px;border-radius:999px;background:#080a08;color:var(--accent);display:grid;place-items:center;font-size:22px;font-weight:1000}.gameProgress{height:12px;border-radius:999px;background:rgba(8,10,8,.12);overflow:hidden;margin-bottom:18px}.gameProgress i{display:block;height:100%;width:0;border-radius:inherit;background:var(--accent);box-shadow:0 0 20px rgba(199,255,33,.75);transition:width .12s linear}.gameArea{position:relative;height:calc(100% - 104px);border-radius:30px;background:radial-gradient(circle at 50% 42%,rgba(199,255,33,.25),transparent 42%),rgba(255,255,255,.42);border:1px solid var(--line);overflow:hidden;touch-action:none}.badCard{position:absolute;min-width:136px;min-height:58px;border:0;border-radius:22px;background:#080a08;color:#fff;font-size:18px;font-weight:950;letter-spacing:-.04em;padding:13px 16px;box-shadow:0 18px 42px rgba(0,0,0,.18);opacity:0;transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1);touch-action:none}.badCard.is-in{opacity:1}.badCard.is-pop{opacity:0;transform:scale(.45) rotate(12deg)!important}.badCard--heavy{background:var(--blue)}.badCard--bonus{background:var(--accent);color:#080a08}.gameBit{position:absolute;z-index:4;width:9px;height:15px;border-radius:3px;animation:bitPop .72s ease-out forwards;pointer-events:none}@keyframes bitPop{to{opacity:0;transform:translate3d(var(--x),var(--y),0) rotate(var(--r))}}.floatPts{position:absolute;z-index:6;transform:translate(-50%,-10px);color:var(--accent);-webkit-text-stroke:1px rgba(8,10,8,.22);font-size:28px;font-weight:1000;pointer-events:none;animation:ptsUp .72s ease-out forwards}@keyframes ptsUp{0%{opacity:0;transform:translate(-50%,8px) scale(.85)}18%{opacity:1}100%{opacity:0;transform:translate(-50%,-58px) scale(1.06)}}.gameResult{height:100%;display:none;align-content:start;gap:12px;overflow-y:auto;padding:40px 2px 10px}.gameResult h2{font-size:clamp(42px,12vw,60px);line-height:.86;letter-spacing:-.07em;margin:0}.gameResult>p:not(.tag){color:var(--muted);font-size:17px;line-height:1.2;margin:0}.resultCard{display:grid;grid-template-columns:1fr 1fr;gap:10px}.resultCard div,.gameSave{background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:22px;padding:14px}.resultCard span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.resultCard b{font-size:30px}.gameSave{display:grid;gap:9px}.gameSave label{display:grid;gap:7px}.gameSave small{min-height:22px;text-align:center;color:var(--muted);font-weight:850;line-height:1.2}.game-open .bottomNav{opacity:0;pointer-events:none;transform:translateY(18px)}
.antiIntro{z-index:210;align-items:center}.antiIntro__card{position:relative;width:min(430px,100%);border-radius:32px;background:radial-gradient(circle at 72% 8%,rgba(255,70,70,.22),transparent 32%),linear-gradient(180deg,#190708,#260909);color:#fff4f4;padding:28px 22px 22px;box-shadow:0 30px 90px rgba(0,0,0,.45)}.antiIntro__close{position:absolute;top:14px;right:14px;width:50px;height:50px;border:0;border-radius:50%;background:#fff;color:#ff3434;font-size:30px}.antiIntro h2{font-size:clamp(46px,13vw,70px);line-height:.84;letter-spacing:-.08em;margin:0 0 14px}.antiIntro p:not(.tag){color:rgba(255,244,244,.72);font-size:17px;line-height:1.2}.antiIntro__actions{display:grid;gap:10px;margin-top:16px}.fxCanvas{position:fixed;inset:0;z-index:500;pointer-events:none}
body.is-anti-mode{--accent:#ff3434;--blue:#ff6b6b;--bg:#170708;--text:#fff4f4;--muted:rgba(255,244,244,.66)}body.is-anti-mode .app{background:radial-gradient(circle at 18% 10%,rgba(255,52,52,.28),transparent 28%),radial-gradient(circle at 88% 14%,rgba(255,107,107,.13),transparent 26%),linear-gradient(180deg,#140606,#260909 65%,#130606)}body.is-anti-mode .posterCard,body.is-anti-mode .campaignBadge,body.is-anti-mode .statsGrid div,body.is-anti-mode .classPicker,body.is-anti-mode .leaderboard,body.is-anti-mode .ideaForm,body.is-anti-mode .qrCard,body.is-anti-mode .planCards article{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.1);color:#fff4f4;box-shadow:0 18px 45px rgba(0,0,0,.35)}body.is-anti-mode .mobileTitle,body.is-anti-mode .mobileLead,body.is-anti-mode h2,body.is-anti-mode h3,body.is-anti-mode .tag{color:#fff4f4}body.is-anti-mode .mobileTitle mark{background:#ff3434;color:#fff}body.is-anti-mode .btn--primary{background:#ff3434;border-color:#ff3434;color:#fff}body.is-anti-mode .btn--ghost{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.12);color:#fff4f4}body.is-anti-mode .bottomNav{background:rgba(20,6,7,.82);border-color:rgba(255,52,52,.18)}body.is-anti-mode .navItem{color:rgba(255,244,244,.58);background:rgba(255,255,255,.05)}body.is-anti-mode .navItem.is-active{background:#ff3434;color:#fff}body.is-anti-mode .navItem.is-active span{background:#fff;color:#ff3434}body.is-anti-mode .ticker{background:#190708}body.is-anti-mode .posterCard img{filter:saturate(1.08) contrast(1.04)}body.is-anti-mode .gameScreen,body.is-anti-mode .ideasScreen,body.is-anti-mode .qrScreen,body.is-anti-mode .planScreen{filter:saturate(.3);opacity:.5;pointer-events:none}
@media (min-width:901px){.app,.bottomNav,.gameModal,.antiIntro{max-width:520px;margin:0 auto;left:50%;right:auto;transform:translateX(-50%)}.bottomNav{width:min(496px,calc(100% - 24px))}}
@media (max-width:380px){.screen__inner{padding-left:16px;padding-right:16px}.mobileTitle{font-size:72px}.btn{min-height:64px;font-size:20px}.gameHud{grid-template-columns:1fr auto 64px;gap:8px;padding-right:62px}.gameHud__time{padding-left:10px;padding-right:10px}.gameClose{width:54px;height:54px}.classPicker__grid{grid-template-columns:repeat(4,1fr);gap:6px}.classChip{font-size:15px}}


/* final v3 tuning */
.mobileTitle{font-size:clamp(58px,16vw,78px)!important;line-height:.88!important;letter-spacing:-.075em!important}
.mobileLead{font-size:18px!important;line-height:1.18!important;letter-spacing:-.035em!important}
.tag{font-size:11px!important;letter-spacing:.12em!important}
.screen__inner h2{font-size:clamp(42px,12vw,58px)!important;line-height:.9!important;letter-spacing:-.07em!important}
.screen__inner p{font-size:17px!important;line-height:1.18!important}
.btn{min-height:62px!important;font-size:18px!important;letter-spacing:-.035em!important;border-radius:20px!important}
.btn--ghost,.btn--primary{font-weight:900!important}
.statsGrid b{font-size:24px!important}.statsGrid span{font-size:14px!important}
.leaderboard__head b,.classPicker__head b,.sectionHead h2,.planCards h3{font-size:28px!important;line-height:.95!important}
.planCards p{font-size:17px!important;line-height:1.18!important}
.gameHud{grid-template-columns:1fr auto 82px!important;padding-right:84px!important;align-items:start!important}
.gameHud__score,.gameHud__time{min-height:74px!important;padding:13px 14px!important}
.gameHud__score strong,.gameHud__time strong{font-size:26px!important}
.gameHud__combo{margin-top:4px!important;height:54px!important;min-width:66px!important;font-size:20px!important}
.gameClose{top:18px!important;right:18px!important;width:56px!important;height:56px!important;font-size:34px!important}
.antiHomeActions{display:grid;gap:12px;margin-top:16px}
.antiIntro__actions--single{grid-template-columns:1fr!important}
body.is-anti-mode .statsGrid{display:none!important}
body.is-anti-mode .posterCard{padding:0!important;background:transparent!important;border:none!important;box-shadow:none!important;border-radius:28px!important;overflow:hidden!important}
body.is-anti-mode .posterCard img{display:block;width:100%!important;border-radius:28px!important;filter:none!important}
body.is-anti-mode .campaignBadge{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.12)!important}
body.is-anti-mode .ticker{background:#2a0b0c!important;border-color:rgba(255,255,255,.08)!important}
body.is-anti-mode .ticker__track{color:#ffd7d7!important}
body.is-anti-mode .ticker__track span{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
body.is-anti-mode .antiHomeActions .btn--primary{background:#fff!important;border-color:#fff!important;color:#d32626!important}
body.is-anti-mode .gameScreen,body.is-anti-mode .ideasScreen,body.is-anti-mode .qrScreen,body.is-anti-mode .planScreen{filter:saturate(.2)!important;opacity:.42!important;pointer-events:none!important}
@media (max-width:380px){.mobileTitle{font-size:64px!important}.screen__inner h2{font-size:44px!important}.btn{font-size:17px!important;min-height:58px!important}.gameHud{grid-template-columns:1fr auto 76px!important;padding-right:80px!important}.gameClose{width:52px!important;height:52px!important;font-size:32px!important}}

/* tiny SEO line */
.seoLine{
  margin:18px 0 108px;
  padding:0 24px;
  font-size:11px;
  line-height:1.35;
  font-weight:700;
  letter-spacing:-.015em;
  color:rgba(8,10,8,.28);
}

body.is-anti-mode .seoLine{
  color:rgba(255,244,244,.22);
}

/* ==========================================================
   COMPACT POLISH: smaller typography, nav, footer, frameless posters
   ========================================================== */

/* overall less heavy */
html, body{
  font-weight:700 !important;
}

.app{
  padding-bottom:82px !important;
}

.screen__inner{
  padding:18px 18px 86px !important;
}

/* poster: no frame, no crop */
.posterCard{
  padding:0 !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:26px !important;
  overflow:hidden !important;
}

.posterCard img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  border-radius:26px !important;
}

/* smaller text */
.mobileTitle{
  font-size:clamp(50px, 14.2vw, 70px) !important;
  line-height:.88 !important;
  letter-spacing:-.072em !important;
  font-weight:950 !important;
}

.mobileTitle mark{
  border-radius:22px !important;
  padding:5px 14px 9px !important;
}

.mobileLead{
  margin:16px 0 20px !important;
  font-size:17px !important;
  line-height:1.22 !important;
  letter-spacing:-.032em !important;
  font-weight:600 !important;
}

.tag{
  margin-bottom:10px !important;
  font-size:10px !important;
  letter-spacing:.13em !important;
  font-weight:900 !important;
}

.screen__inner h2,
.gameScreen h2,
.sectionHead h2,
.qrScreen h2,
.planScreen h2{
  font-size:clamp(36px, 10.8vw, 52px) !important;
  line-height:.93 !important;
  letter-spacing:-.065em !important;
  font-weight:950 !important;
}

.gameScreen>p:not(.tag),
.sectionHead>p,
.qrScreen>p,
.planCards p{
  font-size:15px !important;
  line-height:1.26 !important;
  letter-spacing:-.02em !important;
  font-weight:650 !important;
}

/* buttons smaller */
.btn{
  min-height:54px !important;
  padding:13px 18px !important;
  border-radius:18px !important;
  font-size:16px !important;
  font-weight:850 !important;
  letter-spacing:-.03em !important;
}

/* badge/stats/ticker less huge */
.campaignBadge{
  margin:20px 0 14px !important;
  padding:10px 14px !important;
}

.campaignBadge span{
  width:14px !important;
  height:14px !important;
  box-shadow:0 0 0 7px rgba(199,255,33,.18) !important;
}

.campaignBadge b{
  font-size:16px !important;
  font-weight:850 !important;
}

.statsGrid{
  gap:10px !important;
  margin-top:18px !important;
}

.statsGrid div{
  min-height:92px !important;
  border-radius:22px !important;
  padding:16px !important;
}

.statsGrid b{
  font-size:36px !important;
}

.statsGrid span{
  margin-top:8px !important;
  font-size:15px !important;
  line-height:1 !important;
}

.ticker{
  margin:22px -18px 0 !important;
  padding:10px 0 !important;
}

.ticker span{
  padding:9px 18px !important;
  font-size:15px !important;
  font-weight:850 !important;
}

/* cards/forms smaller */
.classPicker,
.leaderboard,
.ideaForm,
.qrCard,
.planCards article{
  border-radius:24px !important;
}

.classPicker{
  margin:16px 0 12px !important;
  padding:12px !important;
}

.classPicker__head b,
.leaderboard__head b{
  font-size:17px !important;
}

.classChip{
  min-height:42px !important;
  border-radius:14px !important;
  font-size:15px !important;
  font-weight:850 !important;
}

.planCards article{
  padding:18px !important;
}

.planCards h3{
  font-size:25px !important;
  line-height:.98 !important;
  font-weight:950 !important;
}

/* bottom nav smaller */
.bottomNav{
  left:10px !important;
  right:10px !important;
  bottom:calc(8px + env(safe-area-inset-bottom)) !important;
  gap:6px !important;
  padding:6px !important;
  border-radius:24px !important;
}

.navItem{
  min-height:58px !important;
  border-radius:18px !important;
  gap:3px !important;
}

.navItem span{
  width:28px !important;
  height:28px !important;
  font-size:13px !important;
  font-weight:850 !important;
}

.navItem b{
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:-.025em !important;
}

/* game HUD fix */
.gameShell{
  padding-top:18px !important;
}

.gameClose{
  top:16px !important;
  right:16px !important;
  width:50px !important;
  height:50px !important;
  font-size:31px !important;
}

.gameHud{
  grid-template-columns:1fr auto 72px !important;
  padding-right:72px !important;
  gap:8px !important;
}

.gameHud__score,
.gameHud__time{
  min-height:64px !important;
  padding:10px 12px !important;
  border-radius:22px !important;
}

.gameHud__score strong,
.gameHud__time strong{
  font-size:24px !important;
}

.gameHud__score span,
.gameHud__time span{
  font-size:11px !important;
}

.gameHud__combo{
  min-width:56px !important;
  height:48px !important;
  border-radius:18px !important;
  font-size:18px !important;
}

/* footer / tiny SEO line */
.seoLine{
  margin:10px 0 78px !important;
  padding:0 18px !important;
  font-size:10px !important;
  line-height:1.25 !important;
  color:rgba(8,10,8,.22) !important;
  font-weight:600 !important;
}

/* anti mode: return button only when anti mode is active */
.antiHomeActions[hidden]{
  display:none !important;
}

body:not(.is-anti-mode) .antiHomeActions,
body:not(.is-anti-mode) #returnSanyaBtnTop,
body:not(.is-anti-mode) #returnSanyaBtn{
  display:none !important;
}

body.is-anti-mode .antiHomeActions:not([hidden]){
  display:grid !important;
}

/* anti poster also frameless/full */
body.is-anti-mode .posterCard{
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:26px !important;
  overflow:hidden !important;
}

body.is-anti-mode .posterCard img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  border-radius:26px !important;
}

/* mobile very small */
@media (max-width:380px){
  .mobileTitle{
    font-size:50px !important;
  }

  .screen__inner h2,
  .gameScreen h2,
  .sectionHead h2,
  .qrScreen h2,
  .planScreen h2{
    font-size:36px !important;
  }

  .btn{
    min-height:50px !important;
    font-size:15px !important;
  }

  .navItem{
    min-height:54px !important;
  }

  .navItem b{
    font-size:11px !important;
  }

  .navItem span{
    width:25px !important;
    height:25px !important;
  }
}


/* SN v4: Sanya engine, royal skin */
html,body{background:#0b0507;color:var(--text)}
.app{background:radial-gradient(circle at 11% 12%,rgba(222,190,106,.26),transparent 27%),radial-gradient(circle at 86% 52%,rgba(150,28,44,.32),transparent 34%),linear-gradient(180deg,#12070b,#1a0b11 55%,#090406);}
.screen__inner{padding-top:22px}.btn--primary{background:linear-gradient(135deg,#ffe895,#d5a33f);color:#150909;border-color:rgba(255,232,149,.65);box-shadow:0 18px 45px rgba(213,163,63,.18)}.btn--ghost{background:rgba(255,238,200,.06);color:var(--text);border-color:rgba(218,178,96,.25)}
.posterCard{background:rgba(255,232,180,.07);border:1px solid rgba(218,178,96,.28);box-shadow:0 24px 65px rgba(0,0,0,.25)}.posterCard img{object-fit:cover}.campaignBadge{background:rgba(255,232,180,.08);border-color:rgba(218,178,96,.25);color:var(--text)}.campaignBadge span{background:var(--accent);box-shadow:0 0 0 10px rgba(231,197,109,.14)}.mobileTitle{color:var(--text)}.mobileTitle mark{background:linear-gradient(135deg,#ffe895,#c98a2b);color:#150909}.mobileLead,.gameScreen>p:not(.tag),.sectionHead>p,.qrScreen>p{color:rgba(255,243,210,.70)}.tag{color:var(--accent)}
.statsGrid div,.classPicker,.leaderboard,.ideaForm,.qrCard,.planCards article,.featureCard,.museumLabel,.posterSlide{background:rgba(255,232,180,.065);border:1px solid rgba(218,178,96,.22);box-shadow:0 16px 42px rgba(0,0,0,.15)}.statsGrid span,.leaderRow span,.leaderEmpty,.planCards p{color:var(--muted)}
.ticker{background:#080305;border:1px solid rgba(218,178,96,.18)}.ticker span{color:var(--accent);border-color:rgba(231,197,109,.25)}
.bottomNav{background:rgba(9,5,5,.78);border:1px solid rgba(218,178,96,.2);box-shadow:0 18px 60px rgba(0,0,0,.42)}.navItem{background:rgba(255,238,200,.03);color:rgba(255,243,210,.58)}.navItem span{background:rgba(255,238,200,.08)}.navItem.is-active{background:linear-gradient(180deg,rgba(159,48,38,.48),rgba(76,26,18,.82));color:#fff3d2}.navItem.is-active span{background:var(--accent);color:#150909}
.home .posterCard img{aspect-ratio:1.48/1;object-fit:cover;object-position:center 22%}.home .posterCard{padding:10px}.statsGrid b{color:#fff7dc}.featureCard{border-radius:30px;padding:24px;margin-top:18px}.featureCard h3{font-size:34px;line-height:.92;letter-spacing:-.06em;margin:0 0 10px}.featureCard p{font-size:21px;line-height:1.12;color:var(--muted);margin:0}.featureCard i{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;background:rgba(231,197,109,.16);color:var(--accent);font-style:normal;margin-bottom:24px}.planCards article h3{color:#fff7dc}.planCards article i{background:rgba(231,197,109,.16);color:var(--accent)}
.classChip,.ideaCat,.manualClass input,.ideaForm input,.ideaForm textarea,.gameSave input{background:rgba(255,238,200,.08);color:#fff3d2;border-color:rgba(218,178,96,.22)}.classChip.is-active,.ideaCat.is-active{background:var(--accent);color:#150909}.classPicker__head span{background:var(--accent);color:#150909}.manualClass,.gameSave{background:rgba(255,238,200,.035)}
.gameModal,.antiIntro{background:rgba(8,3,5,.72)}.gameShell{background:linear-gradient(180deg,#1a0b11,#0b0507);border:1px solid rgba(218,178,96,.26)}.badCard{background:#fff3d2;color:#150909}.badCard--bonus{background:#ffe895}.badCard--heavy{background:#a42b2c;color:#fff3d2}.gameHud>div,.resultCard>div{background:rgba(255,238,200,.08);border:1px solid rgba(218,178,96,.18)}.gameProgress{background:rgba(255,238,200,.1)}.gameProgress i{background:linear-gradient(90deg,#9d2228,#ffe895)}
.posterRail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;margin:24px -22px 0;padding:0 22px 8px;-webkit-overflow-scrolling:touch}.posterRail::-webkit-scrollbar{display:none}.posterSlide{flex:0 0 82%;scroll-snap-align:center;border-radius:30px;padding:12px}.posterSlide img{width:100%;aspect-ratio:.72/1;object-fit:cover;border-radius:22px}.posterSlide h3{margin:14px 4px 2px;font-size:27px;line-height:.95;letter-spacing:-.05em}.posterControls{display:grid;grid-template-columns:72px 1fr 72px;gap:12px;align-items:center;margin-top:18px}.roundBtn{height:58px;border-radius:999px;border:1px solid rgba(218,178,96,.23);background:rgba(255,238,200,.05);color:#fff3d2;font-size:30px}.posterName{text-align:center;font-size:21px;color:#fff3d2;font-weight:950;letter-spacing:-.04em}.lightbox{position:fixed;inset:0;z-index:300;background:rgba(8,3,5,.88);display:none;place-items:center;padding:20px}.lightbox.is-open{display:grid}.lightbox img{max-height:86svh;max-width:94vw;border-radius:24px}.lightbox button{position:fixed;top:calc(18px + env(safe-area-inset-top));right:18px;width:54px;height:54px;border-radius:50%;border:1px solid rgba(218,178,96,.28);background:rgba(255,238,200,.08);color:#fff3d2;font-size:30px}.museumHero img{aspect-ratio:.75/1;object-fit:contain;background:rgba(0,0,0,.18)}.museumLabel{border-radius:30px;padding:24px;margin-top:18px}.museumLabel h3{font-size:37px;line-height:.93;letter-spacing:-.06em;margin:0 0 18px}.museumLabel b{display:block;color:var(--accent);font-size:25px;line-height:1.06;margin-bottom:16px}.museumLabel p{color:var(--muted);font-size:21px;line-height:1.15;margin:0}.sealToast{position:fixed;left:50%;top:45%;z-index:260;transform:translate(-50%,-50%) rotate(-8deg) scale(.75);padding:20px 34px;border:6px solid #bf2e36;border-radius:18px;background:#fff3d2;color:#bf2e36;font-size:34px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;opacity:0;pointer-events:none;box-shadow:0 22px 55px rgba(0,0,0,.28)}.sealToast.is-show{animation:sealPop 1.2s ease both}@keyframes sealPop{0%{opacity:0;transform:translate(-50%,-50%) rotate(-18deg) scale(.5)}20%,80%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) scale(1.15)}}
.fxCanvas{pointer-events:none}.seoLine{display:none}
@media (max-width:520px){.screen__inner{padding:22px 22px 122px}.mobileTitle{font-size:clamp(64px,18vw,92px)}.mobileLead{font-size:23px}.home .posterCard img{aspect-ratio:1.38/1}.statsGrid{grid-template-columns:1fr 1fr}.posterSlide{flex-basis:82%}.gameScreen h2,.sectionHead h2,.qrScreen h2,.planScreen h2{font-size:clamp(54px,15vw,84px)}.bottomNav{left:10px;right:10px}.btn{font-size:21px}.featureCard h3{font-size:31px}}
/* === v5 school universe backend additions === */
:root{--royal:#13090e;--royal2:#281016;--gold:#f1d985;--cream:#fff4d1;--muted:rgba(255,244,209,.68);--line:rgba(241,217,133,.22);--red:#8f2028}
.svitaScreen{padding-bottom:142px;gap:18px}.registerGrid{display:grid;grid-template-columns:1fr;gap:12px}.memberCard{position:relative;overflow:hidden;border:1px solid var(--line);background:linear-gradient(135deg,rgba(255,244,209,.10),rgba(143,32,40,.12));border-radius:26px;padding:20px 20px 18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}.memberCard:after{content:"";position:absolute;right:-34px;top:-34px;width:112px;height:112px;border-radius:50%;background:rgba(241,217,133,.10)}.memberCard i{font-style:normal;color:var(--gold);font-weight:900;letter-spacing:.28em}.memberCard h3{font-size:26px;line-height:1;margin:14px 0 8px;color:var(--cream)}.memberCard b{display:block;color:var(--gold);font-size:17px;text-transform:uppercase;letter-spacing:.08em}.memberCard p{margin:10px 0 0;color:var(--muted);font-size:15px;line-height:1.35}.memberCard--seed{border-color:rgba(241,217,133,.34)}.sealLab{border:1px solid var(--line);border-radius:30px;padding:22px;background:rgba(255,244,209,.055);display:grid;gap:14px}.sectionHead--compact h3{margin:0;font-size:34px;line-height:.95;color:var(--cream);text-transform:uppercase}.sealLab label,.gameSave label{display:grid;gap:8px}.sealLab label span,.gameSave label span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:900}.sealLab input,.sealLab textarea,.sealLab select,.gameSave input,.adminBox input{width:100%;border:1px solid rgba(241,217,133,.24);border-radius:18px;background:rgba(10,5,7,.45);color:var(--cream);font:700 16px/1.2 system-ui,-apple-system,Segoe UI,sans-serif;padding:15px 16px;outline:none}.sealLab textarea{min-height:84px;resize:vertical}.sealLab select{appearance:none}.actionStack--row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.permitCard{position:relative;border:1px solid rgba(241,217,133,.35);border-radius:30px;padding:22px;background:radial-gradient(circle at 80% 10%,rgba(241,217,133,.18),transparent 30%),linear-gradient(135deg,rgba(255,244,209,.16),rgba(143,32,40,.16));box-shadow:0 20px 70px rgba(0,0,0,.22)}.permitCard:before{content:"67";position:absolute;right:18px;bottom:12px;font-size:68px;line-height:1;color:rgba(241,217,133,.10);font-weight:1000}.permitTop{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--gold);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:900}.permitCard h3{margin:24px 0 8px;color:var(--cream);font-size:34px;line-height:.95}.permitCard p{margin:0;color:var(--muted)}.permitCard strong{display:block;margin:8px 0 22px;color:var(--gold);font-size:22px;text-transform:uppercase;letter-spacing:.06em}.permitCard small{color:var(--muted);font-weight:800}.formStatus{display:block;color:var(--muted);line-height:1.3}.universeBridge{border:1px solid rgba(241,217,133,.26);border-radius:24px;padding:16px;display:flex;gap:14px;align-items:center;justify-content:space-between;background:rgba(0,0,0,.18)}.universeBridge--wide{margin-top:18px}.universeBridge small{display:block;color:var(--gold);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:900}.universeBridge b{display:block;color:var(--cream);font-size:22px}.universeBridge span{display:block;color:var(--muted);font-size:13px;line-height:1.25;margin-top:3px}.miniLink{white-space:nowrap;text-decoration:none;color:#12090d;background:linear-gradient(135deg,#fff5b8,#d8b45e);border-radius:999px;padding:11px 14px;font-weight:1000}.gameSave{display:grid;gap:12px;margin-top:16px}.adminBody{min-height:100vh;background:linear-gradient(135deg,#13090e,#2b1017);color:var(--cream);font-family:system-ui,-apple-system,Segoe UI,sans-serif;padding:24px}.adminBox,.adminPanel{max-width:980px;margin:0 auto;border:1px solid var(--line);border-radius:28px;background:rgba(255,244,209,.06);padding:24px}.adminBox{margin-top:15vh;max-width:460px}.adminBox h1,.adminPanel h1{font-size:44px;line-height:1;margin:0 0 10px}.adminPanel section{margin-top:24px}.adminRow{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:14px;margin:10px 0;background:rgba(0,0,0,.18)}.adminRow b{display:block;font-size:18px}.adminRow span{display:block;color:var(--gold);font-weight:900}.adminRow p{margin:6px 0;color:var(--muted)}.adminRow small{color:rgba(255,244,209,.45)}.adminRow button{border:1px solid var(--line);background:rgba(241,217,133,.16);color:var(--cream);border-radius:12px;padding:10px 12px;font-weight:900}.bad{display:block;color:#ff8f8f;margin:10px 0}.sealToast{z-index:80}
@media (min-width: 760px){.registerGrid{grid-template-columns:repeat(2,1fr)}.memberCard h3{font-size:30px}.sealLab{grid-template-columns:1fr 1fr}.sectionHead--compact{grid-column:1/-1}.permitCard h3{font-size:42px}}
@media (max-width: 420px){.actionStack--row{grid-template-columns:1fr}.universeBridge{align-items:flex-start;flex-direction:column}.miniLink{width:100%;text-align:center}.memberCard h3{font-size:24px}.permitCard h3{font-size:30px}.permitCard strong{font-size:20px}.adminRow{grid-template-columns:1fr}.adminPanel,.adminBox{padding:18px}}


/* v5.1 privacy + spacing patch */
.svitaScreen{gap:30px!important;padding-bottom:172px!important;}
.svitaScreen>.tag + h2{margin-bottom:8px!important;}
.svitaScreen>p{margin-bottom:12px!important;}
.registerGrid{gap:22px!important;margin-top:10px!important;margin-bottom:12px!important;}
.memberCard{padding:24px 22px 22px!important;}
.sealLab{gap:20px!important;margin-top:18px!important;margin-bottom:16px!important;padding:26px!important;}
.permitCard{margin-top:14px!important;margin-bottom:16px!important;padding:26px 24px!important;}
.svitaScreen>.actionStack{margin-top:12px!important;margin-bottom:8px!important;}
.formStatus{margin-top:10px!important;font-size:14px!important;}
@media (max-width:420px){.svitaScreen{gap:26px!important}.registerGrid{gap:18px!important}.sealLab{gap:18px!important;padding:22px!important}.permitCard{padding:24px 22px!important}}


/* v5.2 world hub alignment */
.worldScreen{gap:22px!important;padding-bottom:172px!important}.worldScreen h2 span{color:var(--gold)}.worldCards{display:grid;grid-template-columns:1fr;gap:18px;margin-top:8px}.worldCard{border:1px solid var(--line);border-radius:30px;padding:24px;background:linear-gradient(135deg,rgba(255,244,209,.09),rgba(143,32,40,.14));box-shadow:0 20px 60px rgba(0,0,0,.18);display:grid;gap:14px}.worldCard i{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:18px;background:rgba(241,217,133,.16);color:var(--gold);font-style:normal;font-weight:1000;letter-spacing:.08em}.worldCard h3{font-size:37px;line-height:.92;letter-spacing:-.06em;margin:0;color:var(--cream)}.worldCard p{font-size:19px;line-height:1.2;color:var(--muted);margin:0}.worldCard .btn{text-decoration:none;text-align:center}.worldCard--sanya{background:linear-gradient(135deg,rgba(199,255,33,.10),rgba(14,84,255,.08));border-color:rgba(199,255,33,.22)}.worldRule{border:1px solid rgba(241,217,133,.24);border-radius:24px;padding:18px;background:rgba(0,0,0,.18);display:grid;gap:6px}.worldRule b{color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:12px}.worldRule span{color:var(--muted);font-size:18px;line-height:1.25;font-weight:800}.universeBridge--topAligned{margin-top:26px!important;align-items:flex-start!important}.universeBridge--home{margin-top:18px!important;align-items:flex-start!important}.miniLink--button{border:0;cursor:pointer;font:1000 14px/1 system-ui,-apple-system,Segoe UI,sans-serif}@media (min-width:760px){.worldCards{grid-template-columns:1fr 1fr}.worldCard h3{font-size:42px}}@media (max-width:420px){.worldCard{padding:22px}.worldCard h3{font-size:32px}.worldScreen{gap:20px!important}}
