:root{color:#f8f7ff;font-synthesis:none;text-rendering:optimizelegibility;background:#111426;font-family:Trebuchet MS,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(at 50% -10%,#34345e 0,#0000 48%),#111426;min-width:320px;min-height:100vh;margin:0}button{font:inherit}#app{min-height:100vh}.hidden{display:none!important}.screen{justify-content:center;align-items:center;min-height:100vh;padding:28px 20px;display:flex}.start-screen{background:radial-gradient(circle at 12% 70%,#27355b55,#0000 28%),radial-gradient(circle at 88% 24%,#5c376055,#0000 25%)}.hero-wrap{text-align:center;width:min(760px,100%);padding:48px 0 24px}.mascot-stage{justify-content:center;align-items:center;gap:clamp(5px,3vw,22px);height:112px;margin-bottom:16px;display:flex}.mascot-stage span{width:82px;height:82px;transform:rotate(var(--r,0deg));background:#222944;border:2px solid #424b70;border-radius:26px;place-items:center;font-size:48px;animation:2.4s ease-in-out infinite bob;display:grid;box-shadow:0 12px #0b0e1d,0 18px 35px #0005}.mascot-stage span:nth-child(2){--r:5deg;animation-delay:.2s}.mascot-stage span:nth-child(3){--r:-4deg;animation-delay:.4s}.mascot-stage span:nth-child(4){--r:4deg;animation-delay:.6s}.mascot-stage span:nth-child(5){--r:-5deg;animation-delay:.8s}@keyframes bob{50%{translate:0 -9px;rotate:3deg}}.eyebrow{letter-spacing:3px;color:#f6c96b;margin:10px 0;font-size:11px;font-weight:1000}h1{letter-spacing:-3px;color:#fff;text-shadow:0 5px #292b4d;margin:8px 0;font:800 clamp(48px,10vw,86px)/.95 Trebuchet MS,sans-serif}h1 em{color:#ffca67;font-style:normal}.lead{color:#c4c8dc;margin:14px 0 20px;font-size:16px}.best-pill{color:#cbd0e7;letter-spacing:1px;background:#202641;border:1px solid #424a6b;border-radius:99px;align-items:center;gap:10px;padding:8px 16px;font-size:11px;font-weight:900;display:inline-flex}.best-pill b{color:#ffcf70;font-size:16px}.main-cta{color:#272039;letter-spacing:.8px;cursor:pointer;background:#ffca67;border:0;border-radius:15px;width:min(360px,100%);margin:20px auto 22px;padding:16px 22px;font-weight:1000;transition:all .15s;display:block;box-shadow:0 6px #bd843d,0 13px 25px #0004}.main-cta:hover{transform:translateY(-3px);box-shadow:0 9px #bd843d,0 18px 28px #0005}.main-cta:active{transform:translateY(3px);box-shadow:0 2px #bd843d}.main-cta span{margin-left:8px}.mode-heading{letter-spacing:2.5px;color:#9da5c7;margin:25px 0 12px;font-size:10px;font-weight:1000}.mode-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.mode-card{color:#fff;cursor:pointer;background:#202640;border:1px solid #394362;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:130px;padding:14px 9px;transition:all .2s;display:flex}.mode-card:hover{background:#2a3150;border-color:#ffca67;transform:translateY(-4px)}.mode-card.featured{background:#34304a;border-color:#e4ae5a}.mode-card>span{font-size:28px}.mode-card b{letter-spacing:.7px;font-size:11px}.mode-card small{color:#aeb6d1;font-size:10px;line-height:1.35}.tiny-note{color:#777f9e;margin:22px 0 10px;font-size:10px}.site-links{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.site-links a{color:#9fa8ca;font-size:11px;text-decoration:none}.site-links a:hover{color:#ffcf70}.sound-toggle{z-index:20;color:#dce2f9;cursor:pointer;background:#1c2340;border:1px solid #475070;border-radius:99px;padding:9px 12px;font-size:10px;font-weight:900;position:fixed;top:14px;right:14px}.game-screen{align-items:flex-start;padding-top:76px}.hud{z-index:5;background:#171d34ed;border-bottom:1px solid #303a5a;justify-content:center;gap:clamp(14px,5vw,65px);padding:14px 12px;display:flex;position:fixed;top:0;left:0;right:0}.hud div{text-align:center;gap:2px;display:grid}.hud small{letter-spacing:1.5px;color:#9da8c8;font-size:9px;font-weight:900}.hud b{color:#fff;font-size:16px}.hud div:nth-child(3) b{color:#ffcf70}.game-shell{width:min(760px,100%);margin:10px auto}.round-row{color:#b5bdd9;letter-spacing:1.5px;justify-content:space-between;margin-bottom:8px;font-size:11px;font-weight:1000;display:flex}.countdown-track{background:#29314e;border-radius:9px;height:6px;margin-bottom:15px;overflow:hidden}.countdown-track div{background:linear-gradient(90deg,#64e6b0,#ffcf70,#ff6f83);width:100%;height:100%;transition:width .1s linear}.clue-card{text-align:center;background:#252b48;border:1px solid #465174;border-radius:18px;margin-bottom:17px;padding:19px 55px;position:relative;box-shadow:0 7px #0b1022}.clue-kicker{color:#ffcf70;letter-spacing:2px;font-size:9px;font-weight:1000}.clue-card h2{color:#fff;margin:5px 0;font:800 clamp(20px,4vw,29px)/1.2 Trebuchet MS,sans-serif}.clue-card p{color:#b9c1dc;margin:0;font-size:12px}.clue-timer{color:#ffcf70;font-size:13px;font-weight:1000;position:absolute;top:14px;right:14px}.character-board{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.character-card{color:#fff;cursor:pointer;background:linear-gradient(150deg,#2b3454,#202740);border:2px solid #424b69;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:145px;transition:transform .13s,border-color .13s,background .13s;display:flex;position:relative;overflow:hidden;box-shadow:0 5px #0b1022}.character-card:before{content:"";background:var(--char-color);height:5px;position:absolute;inset:0 0 auto}.character-card:hover{border-color:var(--char-color);background:#343e61;transform:translateY(-4px)}.character-card:active{transform:translateY(2px)}.character-card .hat{height:23px;font-size:20px;line-height:1}.creature{filter:drop-shadow(0 4px 2px #0004);font-size:43px;line-height:1.1}.mood{font-size:17px;position:absolute;top:27px;right:10px}.character-name{color:#f7f3e9;font-size:11px;font-weight:1000}.character-tags{gap:5px;margin-top:2px;display:flex}.character-tags i{letter-spacing:.5px;color:var(--char-color);background:#141b31;border-radius:5px;padding:3px 6px;font-size:8px;font-style:normal;font-weight:1000}.memory-flash{transform:scale(1.07);background:#6a5b40!important;outline:4px solid #ffcf70!important}.character-card:disabled{cursor:default}.board-foot{text-align:center;color:#818baa;margin-top:18px;font-size:10px}.urgent{animation:.5s infinite alternate pulse;color:#ff7185!important}@keyframes pulse{to{transform:scale(1.2)}}.result-card{text-align:center;background:#242b47;border:1px solid #4a5577;border-radius:25px;width:min(440px,100%);padding:36px 28px;box-shadow:0 20px 70px #0008}.result-mascot{font-size:58px}.result-card h2{margin:8px 0 0;font:800 36px Trebuchet MS,sans-serif}.score-caption{color:#9da8c8;letter-spacing:2px;margin:18px 0 0;font-size:10px;font-weight:1000}.final-score{color:#ffcf70;font:800 76px/1.1 Trebuchet MS,sans-serif}.result-stats{color:#9da8c8;letter-spacing:1px;justify-content:center;gap:35px;margin:12px 0;font-size:10px;display:flex}.result-stats b{color:#fff;font-size:18px;display:block}.home-btn{color:#aeb6d1;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:900}.toast{opacity:0;pointer-events:none;color:#272039;z-index:30;white-space:nowrap;background:#f7ce75;border-radius:99px;padding:10px 17px;font-size:12px;font-weight:1000;transition:all .18s;position:fixed;bottom:22px;left:50%;translate:-50% 20px}.toast.show{opacity:1;translate:-50%}.toast.bad{color:#fff;background:#ff7185}.toast.good{color:#132a25;background:#70e5b1}.shake{animation:.25s shake}@keyframes shake{25%{transform:translate(-7px)}75%{transform:translate(7px)}}@media (width<=620px){.hero-wrap{padding-top:35px}.mascot-stage{height:85px}.mascot-stage span{border-radius:19px;width:62px;height:62px;font-size:36px}.mode-grid{grid-template-columns:repeat(2,1fr)}.mode-card{min-height:115px}.character-board{grid-template-columns:repeat(2,1fr);gap:9px}.character-card{min-height:128px}.hud{gap:clamp(12px,4vw,25px);padding:12px 6px}.hud small{font-size:8px}.hud b{font-size:14px}.game-screen{padding:74px 13px 22px}.clue-card{padding:18px 36px}.clue-card p{font-size:10px}.clue-timer{font-size:11px;top:9px;right:9px}.sound-toggle{padding:7px 9px;font-size:9px;top:7px;right:7px}.result-card{padding:28px 20px}}@media (width<=360px){.mascot-stage span{width:53px;height:53px;font-size:30px}.lead{font-size:13px}.character-card{min-height:116px}.creature{font-size:37px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}button{-webkit-tap-highlight-color:transparent}button:not(:disabled){transition:transform .16s cubic-bezier(.2,.8,.2,1),filter .16s,box-shadow .16s}button:not(:disabled):active{transform:scale(.94)}.mode-card:hover,.character-card:hover{filter:brightness(1.15)saturate(1.15)}.main-cta:hover{animation:.32s cta-pop}@keyframes cta-pop{40%{transform:translateY(-5px)scale(1.035)}75%{transform:translateY(-2px)scale(.99)}}.character-card{animation:.36s cubic-bezier(.2,.8,.2,1) both card-enter}.character-card:nth-child(2){animation-delay:35ms}.character-card:nth-child(3){animation-delay:70ms}.character-card:nth-child(4){animation-delay:.105s}.character-card:nth-child(5){animation-delay:.14s}.character-card:nth-child(6){animation-delay:.175s}.character-card:nth-child(7){animation-delay:.21s}.character-card:nth-child(8){animation-delay:.245s}@keyframes card-enter{0%{opacity:0;transform:translateY(14px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}#fx-layer{z-index:80;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fx-piece{filter:drop-shadow(0 3px 5px #0005);font-size:clamp(18px,3vw,32px);animation:1.7s ease-in forwards fx-fall;position:absolute;top:-50px}.party-piece{font-size:clamp(22px,4vw,38px)}@keyframes fx-fall{0%{opacity:0;transform:translateY(-5vh)rotate(0)scale(.5)}12%{opacity:1}to{transform:translate3d(var(--drift),110vh,0) rotate(var(--spin)) scale(1.15);opacity:0}}.celebration{z-index:90;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;visibility:hidden;pointer-events:none;background:#080b19a8;place-items:center;padding:20px;transition:opacity .2s,visibility .2s;display:grid;position:fixed;inset:0}.celebration.show{opacity:1;visibility:visible}.celebration-card{text-align:center;background:linear-gradient(145deg,#34345e,#202641 65%,#49345c);border:2px solid #ffcf70;border-radius:26px;width:min(440px,100%);padding:30px 22px;animation:.48s cubic-bezier(.18,1.45,.35,1) forwards modal-slam;transform:translateY(45px)scale(.72)rotate(-3deg);box-shadow:0 18px 80px #0009}@keyframes modal-slam{to{transform:translateY(0)scale(1)rotate(0)}}.celebration-stars{letter-spacing:10px;font-size:32px;animation:1.8s ease-in-out infinite alternate star-spin}@keyframes star-spin{to{transform:rotate(8deg)scale(1.12)}}.celebration-card h2{color:#ffcf70;text-shadow:0 3px #7d4a2b;margin:15px 0 8px;font-size:clamp(25px,6vw,38px);line-height:1.05}.celebration-card p{color:#e4e8ff;margin:0;font-weight:800}.celebration.milestone .celebration-card{border-color:#70e5b1;padding:19px}.celebration.milestone .celebration-card h2{color:#70e5b1;font-size:clamp(23px,5vw,31px)}.celebration.gameover .celebration-card{border-color:#ff7185}.result-card{animation:.55s cubic-bezier(.2,1.25,.3,1) both result-arrive}@keyframes result-arrive{0%{opacity:0;transform:translateY(25px)scale(.86)}to{opacity:1;transform:none}}.result-mascot{animation:.8s ease-in-out infinite alternate mascot-party}@keyframes mascot-party{to{transform:rotate(12deg)scale(1.13)}}.result-stats{flex-wrap:wrap;row-gap:12px}@media (prefers-reduced-motion:reduce){.fx-piece,.celebration-card,.result-card,.result-mascot,.character-card{animation:none!important}}
