:root{--cream:#faf9f6;--cream-bg:#faf9f6;--cream-2:#f2efea;--paper:#fffefa;--surface:#fffefa;--surface-2:#f2efea;--surface-hover:#f5f2ed;--sidebar-bg:#fffefa;--ink:#17252c;--ink-2:#536068;--ink-3:#707a7d;--line:#e6e2da;--accent:#df594b;--accent-deep:#bc4438;--accent-soft:#fcece6;--forest:#477457;--forest-deep:#244c3c;--forest-soft:#eaf0e7;--red:#cf594e;--red-deep:#a83932;--blue:#39778f;--blue-deep:#285b70;--green:#477457;--green-deep:#315a40;--orange:#b98132;--orange-deep:#916022;--purple:#84709a;--purple-deep:#665079;--yellow:#efc36b;--coin:#efc36b;--coin-deep:#916022;--heart:var(--red);--heart-deep:var(--red-deep);--grass:var(--accent);--grass-deep:var(--accent-deep);--grass-light:#f0a08e;--dirt:#a88867;--dirt-deep:#836748;--dirt-darker:#624e38;--tan:#c4a174;--tan-deep:#a07b50;--sky-1:#eaf0e7;--sky-2:#f3f4ee;--cloud:#fffefa;--sky-gradient:linear-gradient(160deg, #f6f4ed, #eaf0e7);--sunset-gradient:linear-gradient(150deg, #f4e7d3, #ecd4bf);--pop-1:0 2px 7px #17252c0a;--pop-2:0 4px 12px #17252c0d;--shadow-sm:0 2px 7px #17252c08;--shadow-btn:0 3px 8px #9e3f2114;--shadow-card:0 5px 20px #24302308;--shadow-pop:0 20px 70px #17252c24;--shadow-depth:0 10px 28px #17252c14;--glow-gold:0 0 24px #efc36b66;--glow-green:0 0 24px #47745744;--glow-red:0 0 24px #cf594e44;--glow-blue:0 0 24px #39778f44;--radius-sm:10px;--radius:14px;--radius-lg:18px;--radius-xl:24px;--font-display:"Outfit", system-ui, -apple-system, sans-serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--bg-cream:var(--cream);--bg-card:var(--paper);--bg-overlay:#17252c66;--text-dark:var(--ink);--text-medium:var(--ink-2);--text-light:var(--ink-3);--text-white:#fff;--z-base:1;--z-dropdown:10;--z-modal:100;--z-overlay:200;--z-toast:300}.game-sprite{flex-shrink:0;display:inline-block}.gs-float{animation:3s ease-in-out infinite gs-float}.gs-bounce{animation:2s ease-in-out infinite gs-bounce}.gs-spin{animation:4s linear infinite gs-spin}.gs-shake{animation:.5s ease-in-out gs-shake}.gs-pop{animation:.4s cubic-bezier(.34,1.56,.64,1) gs-pop}.gs-idle{animation:2.5s ease-in-out infinite gs-idle}.gs-walk{animation:.6s steps(2,end) infinite gs-walk}@keyframes gs-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes gs-bounce{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-16px)scale(1.05)}60%{transform:translateY(-16px)scale(1.05)}}@keyframes gs-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gs-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes gs-pop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes gs-idle{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-3px)rotate(-1deg)}75%{transform:translateY(-3px)rotate(1deg)}}@keyframes gs-walk{0%{transform:translate(0)}50%{transform:translate(2px)}}.sprite-floater{pointer-events:none;z-index:0;opacity:.18;animation:ease-in-out infinite gs-float;position:absolute}.platform-ground{flex-direction:column;display:flex}.parallax-bg .parallax-layer{transition:opacity .5s}*{box-sizing:border-box}html,body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{background:var(--cream);min-height:100vh}#root{z-index:var(--z-base);min-height:100vh;position:relative}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}button:disabled{cursor:not-allowed}input,textarea,select{font-family:inherit}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:#c9cdc3;border-radius:100px}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}::selection{color:var(--ink);background:#df594b26}:focus-visible{outline:3px solid var(--accent-deep);outline-offset:3px}a{color:var(--blue-deep);font-weight:600;text-decoration:none}a:hover{color:var(--accent-deep)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;margin:0;font-weight:600;line-height:1.2}.btn{border-radius:var(--radius-sm);min-height:44px;font-family:var(--font-body);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:13px;font-weight:600;line-height:1.4;transition:background .18s,transform .18s,box-shadow .18s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.55;box-shadow:none;transform:none}.btn-primary,.btn-accent{background:var(--accent);color:#fff;box-shadow:var(--shadow-btn)}.btn-primary:hover,.btn-accent:hover{background:var(--accent-deep);color:#fff}.btn-green{background:var(--forest);color:#fff;box-shadow:var(--shadow-sm)}.btn-green:hover{background:var(--forest-deep)}.btn-ghost{background:var(--paper);border-color:var(--line);color:var(--ink-2)}.btn-ghost:hover{background:var(--cream-2);color:var(--ink)}.btn-lg{border-radius:12px;padding:14px 24px;font-size:15px}.icon-btn{border-radius:var(--radius-sm);background:var(--paper);border:1px solid var(--line);width:42px;height:42px;color:var(--ink-2);box-shadow:none;flex-shrink:0;place-items:center;font-size:18px;transition:background .18s;display:grid}.icon-btn:hover{background:var(--cream-2);color:var(--ink)}.icon-btn:active{transform:translateY(1px)}.tag,.badge{border:1px solid var(--line);background:var(--cream-2);color:var(--ink-2);border-radius:100px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.tag.math,.badge-blue{color:var(--blue-deep);background:#eaf1f3;border-color:#d6e3e7}.tag.sci,.badge-green{background:var(--forest-soft);color:var(--green-deep);border-color:#d5e3d3}.tag.ela,.badge-red{color:var(--red-deep);background:#faeeea;border-color:#f0d9d2}.tag.soc,.badge-purple{color:var(--purple-deep);background:#f0edf4;border-color:#e3dcec}.tag.art,.badge-orange{color:var(--orange-deep);background:#f9f0df;border-color:#eadfbe}.dot{background:var(--green);border-radius:50%;width:8px;height:8px;display:inline-block}.input,.select,input,select,textarea{border-radius:var(--radius-sm);background:var(--paper);width:100%;font:400 14px/1.5 var(--font-body);color:var(--ink);border:1px solid #d9ddd4;padding:12px 14px;transition:border-color .18s,box-shadow .18s}.input:focus,.select:focus,input:focus,select:focus,textarea:focus{border-color:var(--forest);outline:none;box-shadow:0 0 0 3px #47745718}input::placeholder,textarea::placeholder{color:var(--ink-3)}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--forest)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23707a7d' d='M6 8.825L1.175 4 2.238 2.938 6 6.7 9.763 2.938 10.825 4z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}select option{background:var(--paper);color:var(--ink)}.loading-spinner{border:3px solid var(--line);border-top-color:var(--forest);border-radius:50%;width:40px;height:40px;animation:.7s linear infinite spin}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes pop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes confettiFall{0%{opacity:1;transform:translateY(-20px)rotate(0)}to{opacity:0;transform:translateY(420px)rotate(540deg)}}@keyframes scorePopup{0%{opacity:0;transform:translateY(0)scale(.5)}30%{opacity:1;transform:translateY(-20px)scale(1.2)}to{opacity:0;transform:translateY(-50px)scale(1)}}.mobile-menu-btn{z-index:201;background:var(--surface);border:1px solid var(--line);width:44px;height:44px;box-shadow:var(--pop-1);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;font-size:20px;transition:transform 80ms,box-shadow 80ms;display:none;position:fixed;top:14px;left:14px}.mobile-menu-btn:hover{background:var(--cream-2)}.mobile-menu-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}html,body,.sidebar,.btn-ghost,.icon-btn,.section,input,select,textarea,.modal,.data-table,.tag{transition:background .3s,color .3s,border-color .3s,box-shadow .3s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{grid-template-columns:228px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--paper);-webkit-backdrop-filter:none;backdrop-filter:none;border-right:1px solid var(--line);flex-direction:column;gap:18px;height:100vh;padding:22px 18px;display:flex;position:sticky;top:0;overflow:hidden}.brand{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:6px 8px 14px;display:flex}.brand-mark{background:var(--tan);color:#fff;width:44px;height:44px;font-family:var(--font-display);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:14px;place-items:center;font-size:22px;font-weight:600;display:grid;position:relative;transform:rotate(-3deg)}.brand-text{font-family:var(--font-display);letter-spacing:-.02em;font-size:20px;font-weight:600;line-height:1}.brand-text small{font-family:var(--font-body);color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:700;display:block}.nav{flex-direction:column;flex:1;gap:4px;min-height:0;display:flex;overflow-y:auto}.nav-section{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding:14px 10px 6px;font-size:11px;font-weight:700}.nav-item{font-family:var(--font-display);color:var(--ink-2);text-align:left;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;width:100%;padding:10px 12px;font-size:14px;font-weight:700;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;display:flex}.nav-item:hover{background:#3535410a}.nav-item.active{background:var(--grass);color:#fff;border:1px solid var(--line);box-shadow:var(--shadow-card);font-weight:600}.nav-icon{place-items:center;width:22px;height:22px;font-size:16px;display:grid}.sidebar-footer{flex-direction:column;gap:10px;margin-top:auto;display:flex}.classroom-card{background:var(--cream-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:14px}.classroom-card .label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:600}.classroom-card .name{font-family:var(--font-display);margin:4px 0 8px;font-size:16px;font-weight:600}.classroom-card .meta{color:var(--ink-2);gap:8px;font-size:12px;display:flex}.classroom-card .meta span{background:var(--paper);border-radius:100px;padding:3px 8px;font-weight:700}.user-row{cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:8px;display:flex}.user-row:hover{background:#3535410a}.user-avatar{background:var(--paper);width:36px;height:36px;color:var(--ink);font-family:var(--font-display);border:1px solid var(--line);border-radius:12px;place-items:center;font-size:14px;font-weight:600;display:grid}.user-name{font-size:13px;font-weight:700}.user-role{color:var(--ink-3);font-size:11px;font-weight:700}.main{min-width:0;padding:28px 36px 80px}.topbar{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.topbar h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:32px;font-weight:600;line-height:1.1}.topbar .greeting{color:var(--ink-3);margin-top:4px;font-size:14px;font-weight:700}.hero-grid{grid-template-columns:1.5fr 1fr 1fr;gap:18px;margin-bottom:28px;display:grid}.hero-card{background:var(--paper);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-card);padding:24px;position:relative;overflow:hidden}.hero-card.dark{background:var(--forest-deep);color:#fff;border:1px solid var(--line);box-shadow:var(--shadow-card)}.hero-card .eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:600}.hero-card.dark .eyebrow{color:#ffffffbf}.hero-card .stat{font-family:var(--font-display);letter-spacing:-.04em;margin:14px 0 6px;font-size:48px;font-weight:600;line-height:1}.hero-card .stat-sub{color:var(--ink-3);font-size:13px;font-weight:700}.hero-card.dark .stat-sub{color:#ffffffb3}.hero-card .delta{background:var(--cream-2);color:var(--green-deep);border:1px solid var(--line);border-radius:100px;align-items:center;gap:4px;margin-top:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.hero-card .corner-badge{border:1px solid var(--line);width:38px;height:38px;box-shadow:var(--shadow-card);border-radius:12px;place-items:center;font-size:18px;display:grid;position:absolute;top:18px;right:18px}.hero-card.feature{color:#fff;border:1px solid var(--line);min-height:200px;box-shadow:var(--shadow-card);background:linear-gradient(135deg,#244c3c,#3e6655);flex-direction:column;justify-content:space-between;display:flex}.hero-card.feature .eyebrow{color:#fffc}.hero-card.feature h3{font-family:var(--font-display);letter-spacing:-.02em;max-width:280px;margin:12px 0 0;font-size:28px;font-weight:600;line-height:1.1}.hero-card.feature .pattern{background:radial-gradient(circle,#ffffff2e 0%,#fff0 60%);border-radius:50%;width:220px;height:220px;position:absolute;bottom:-40px;right:-40px}.feature-cta{background:var(--paper);color:var(--ink);font-family:var(--font-display);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:14px;align-self:flex-start;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:600;display:inline-flex}.feature-cta:active{box-shadow:var(--shadow-card);transform:translateY(1px)}.section{margin-bottom:36px}.section-head{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.section-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600}.section-link{color:var(--ink-2);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:100px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;transition:transform .1s,box-shadow .1s;display:inline-flex}.section-link:active{box-shadow:var(--shadow-card);transform:translateY(1px)}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.game-tile{border-radius:var(--radius-lg);cursor:pointer;color:#fff;border:1px solid var(--line);min-height:200px;box-shadow:var(--shadow-card);text-align:left;flex-direction:column;justify-content:space-between;padding:20px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.game-tile:hover{box-shadow:var(--shadow-card);transform:translateY(-3px)}.game-tile:active{box-shadow:var(--shadow-card);transform:translateY(1px)}.game-tile .tile-emoji{width:56px;height:56px;color:var(--tile-accent,var(--forest));line-height:1}.game-tile .tile-emoji img{width:56px;height:56px;display:block}.game-tile h3{font-family:var(--font-display);letter-spacing:-.02em;color:inherit;margin:0 0 4px;font-size:22px;font-weight:600}.game-tile p{opacity:.85;color:inherit;margin:0;font-size:13px;font-weight:700;line-height:1.4}.game-tile .tile-bottom{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.game-tile .tile-pill{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--line);color:var(--ink);background:#ffffffeb;border-radius:100px;padding:4px 10px;font-size:11px;font-weight:700}.game-tile .tile-arrow{background:var(--paper);width:32px;height:32px;color:var(--ink);border:1px solid var(--line);border-radius:50%;place-items:center;transition:transform .15s;display:grid}.game-tile:hover .tile-arrow{transform:translate(2px)}.tile-action-btn{border:1px solid var(--line);cursor:pointer;opacity:1;background:#fff3;border-radius:8px;place-items:center;width:28px;height:28px;font-size:13px;transition:all .15s;display:grid}.game-tile:hover .tile-action-btn{opacity:1}.tile-action-btn:hover{background:var(--cream-2);transform:translateY(-1px)}.lib-menu-item{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;padding:10px 14px;font-size:13px;font-weight:700;transition:background .1s;display:block}.lib-menu-item:hover{background:var(--surface-2,#f3f4f6)}.tile-quiz{--tile-accent:var(--accent)}.tile-memory{--tile-accent:var(--blue)}.tile-boss{--tile-accent:var(--purple)}.tile-scramble{--tile-accent:var(--orange)}.tile-speed{--tile-accent:var(--forest)}.tile-spin{--tile-accent:var(--orange-deep)}.tile-board{--tile-accent:var(--forest)}.tile-trivia{--tile-accent:var(--blue-deep)}.game-tile[class*=tile-]{background:var(--paper);color:var(--ink);border-top:3px solid var(--tile-accent,var(--forest))}.game-tile[class*=tile-] p{color:var(--ink-2)}.tile-pattern{pointer-events:none;background:radial-gradient(circle,#ffffff29 0%,#fff0 65%);border-radius:50%;width:160px;height:160px;position:absolute;top:-30px;right:-30px}.list-card{background:var(--paper);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-card);overflow:hidden}.list-row{border-bottom:1px solid var(--line);grid-template-columns:50px 1.5fr 1fr 1fr 1fr auto;align-items:center;gap:16px;padding:14px 20px;transition:background .1s;display:grid}.list-row:last-child{border-bottom:none}.list-row:hover{background:var(--cream)}.list-row.list-head{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);background:var(--cream-2);border-bottom:1px solid var(--line);font-size:11px;font-weight:600}.list-row.list-head:hover{background:var(--cream-2)}.list-icon{border:1px solid var(--line);border-radius:12px;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.list-game{font-size:14px;font-weight:700}.list-meta{color:var(--ink-3);margin-top:2px;font-size:12px;font-weight:700}.list-cell{color:var(--ink-2);font-size:13px;font-weight:700}.list-cell.num{font-family:var(--font-display);color:var(--ink);font-size:16px;font-weight:600}.modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;z-index:100;background:#3535418c;place-items:center;padding:24px;animation:.2s fadeIn;display:grid;position:fixed;inset:0}.modal{background:var(--paper);border-radius:var(--radius-xl);border:1px solid var(--line);width:min(960px,100%);max-height:90vh;box-shadow:var(--shadow-pop);flex-direction:column;animation:.25s popIn;display:flex;overflow:hidden}.modal-head{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.modal-head h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600}.close-btn{background:var(--cream-2);cursor:pointer;border:1px solid var(--line);width:38px;height:38px;box-shadow:var(--shadow-card);border-radius:12px;place-items:center;font-size:16px;font-weight:600;transition:transform .1s,box-shadow .1s;display:grid}.close-btn:active{box-shadow:var(--shadow-card);transform:translateY(1px)}.modal-body{flex:1;padding:28px;overflow-y:auto}.modal-foot{background:var(--paper);border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 28px;display:flex}.data-table-wrap{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.data-table-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.data-table-header h3{font-family:var(--font-display);font-size:18px;font-weight:600}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line);background:var(--cream-2);padding:12px 24px;font-size:11px;font-weight:600}.data-table td{border-bottom:1px solid var(--line);color:var(--ink-2);padding:12px 24px;font-size:14px;font-weight:700}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--cream)}.form-group{margin-bottom:18px}.form-group label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px;font-size:12px;font-weight:600;display:block}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.stat-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:24px;position:relative;overflow:hidden}.stat-card:before{content:"";border-radius:var(--radius-lg) var(--radius-lg) 0 0;height:4px;position:absolute;top:0;left:0;right:0}.stat-card.red:before{background:linear-gradient(90deg, var(--red), var(--orange))}.stat-card.green:before{background:linear-gradient(90deg, var(--green), #7ec45a)}.stat-card.blue:before{background:linear-gradient(90deg, var(--blue), #7bbde8)}.stat-card.orange:before{background:linear-gradient(90deg, var(--orange), var(--yellow))}.stat-card.purple:before{background:linear-gradient(90deg, var(--purple), #b893d6)}.stat-card .stat-icon{border-radius:var(--radius-sm);border:1px solid var(--line);justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:14px;font-size:22px;display:flex}.stat-card.red .stat-icon{background:#e855551a}.stat-card.green .stat-icon{background:#63a63e1a}.stat-card.blue .stat-icon{background:#5ba3d91a}.stat-card.orange .stat-icon{background:#e8a13c1a}.stat-card.purple .stat-icon{background:#9b6ec61a}.stat-card .stat-value{font-family:var(--font-display);margin-bottom:4px;font-size:36px;font-weight:600;line-height:1}.stat-card .stat-label{color:var(--ink-3);font-size:13px;font-weight:700}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 24px;display:flex}.empty-state .empty-icon{margin-bottom:18px;font-size:48px}.empty-state .empty-title{font-family:var(--font-display);margin-bottom:8px;font-size:22px;font-weight:600}.empty-state .empty-desc{color:var(--ink-3);max-width:360px;margin-bottom:24px;font-size:14px;font-weight:700}.lang-selector{background:var(--paper);border:1px solid var(--line);cursor:pointer;border-radius:100px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:700;display:flex}.lang-selector:hover{background:var(--cream-2)}.fab{z-index:50;background:var(--grass);color:#fff;border:1px solid var(--line);box-shadow:var(--shadow-depth);font-family:var(--font-display);border-radius:100px;align-items:center;gap:10px;padding:16px 24px;font-size:15px;font-weight:600;display:inline-flex;position:fixed;bottom:28px;right:28px}.fab:active{box-shadow:var(--shadow-depth);transform:translateY(1px)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-bottom:28px;display:grid}.page-header{border-bottom:1px solid var(--line);background:var(--paper);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-dropdown);justify-content:space-between;align-items:center;padding:20px 28px;display:flex;position:sticky;top:0}.page-header h1{font-family:var(--font-display);font-size:24px;font-weight:600}.page-header .header-subtitle{color:var(--ink-3);margin-top:2px;font-size:13px;font-weight:700}.page-header .header-actions{align-items:center;gap:10px;display:flex}.page-body{padding:28px 36px}@media (width<=1100px){.hero-grid{grid-template-columns:1fr 1fr}.hero-card.feature{grid-column:span 2}}@media (width<=820px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:300;width:280px;height:100vh;box-shadow:none;transition:transform .3s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:16px 0 48px #00000026}.mobile-backdrop{z-index:299;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;animation:.2s fadeIn;display:none;position:fixed;inset:0}.mobile-backdrop.show{display:block}.mobile-menu-btn{display:flex}.main{padding-top:64px}.topbar{padding-left:54px}.hero-grid{grid-template-columns:1fr}.hero-card.feature{grid-column:auto}}@media (width<=768px){.page-body{padding:18px}.page-header{padding:16px 18px}.form-row{grid-template-columns:1fr}.main{padding:16px 14px 60px}.topbar h1{font-size:24px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px}.stat-card .stat-value{font-size:28px}.stat-card .stat-icon{width:38px;height:38px;margin-bottom:10px;font-size:18px}.data-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{min-width:520px}.data-table th,.data-table td{padding:10px 14px;font-size:12px}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.game-tile{min-height:160px;padding:14px}.game-tile h3{font-size:17px}.game-tile .tile-emoji{font-size:32px}.list-row{grid-template-columns:40px 1fr auto;gap:10px;padding:10px 14px}.list-row .list-cell:nth-child(n+4){display:none}.modal{border-radius:16px;width:min(100%,100vw);max-height:100vh}.modal-head{padding:14px 18px}.modal-body{padding:18px}.modal-foot{padding:14px 18px}.fab{padding:12px 18px;font-size:14px;bottom:16px;right:16px}}@media (width<=480px){.stats-grid{grid-template-columns:1fr}.hero-card .stat{font-size:40px}.topbar{flex-direction:column;align-items:flex-start;gap:8px}}.health-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.health-head h2{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:9px;margin:0;font-size:22px;font-weight:600;display:inline-flex}.health-lastrun{color:var(--ink-3);margin-top:3px;font-size:12px;font-weight:600}.health-summary{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.health-chip{background:var(--surface-2);color:var(--ink-2);border:1.5px solid var(--line);border-radius:100px;align-items:center;gap:7px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.health-chip.pass{background:color-mix(in srgb, var(--green) 14%, var(--surface));color:var(--green-deep);border-color:color-mix(in srgb, var(--green) 40%, var(--surface))}.health-chip.warn{background:color-mix(in srgb, var(--orange) 16%, var(--surface));color:var(--orange-deep);border-color:color-mix(in srgb, var(--orange) 40%, var(--surface))}.health-chip.fail{background:color-mix(in srgb, var(--red) 14%, var(--surface));color:var(--red-deep);border-color:color-mix(in srgb, var(--red) 40%, var(--surface))}.health-grid{grid-template-columns:repeat(auto-fill,minmax(min(430px,100%),1fr));gap:10px;display:grid}.health-divider{grid-column:1/-1;align-items:center;gap:12px;margin:14px 0 2px;display:flex}.health-divider span{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);white-space:nowrap;font-size:11px;font-weight:600}.health-divider:after{content:"";background:var(--line);border-radius:2px;flex:1;height:1.5px}.health-row{background:var(--surface);border:1.5px solid var(--line);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .25s,background .25s;display:flex}.health-row.pass{border-color:color-mix(in srgb, var(--green) 45%, var(--surface));background:color-mix(in srgb, var(--green) 7%, var(--surface))}.health-row.warn{border-color:color-mix(in srgb, var(--orange) 50%, var(--surface));background:color-mix(in srgb, var(--orange) 9%, var(--surface))}.health-row.fail{border-color:color-mix(in srgb, var(--red) 50%, var(--surface));background:color-mix(in srgb, var(--red) 8%, var(--surface))}.health-row.skip{opacity:.65}.health-row .h-icon{background:var(--surface-2);border:1px solid var(--line);width:38px;height:38px;color:var(--ink-2);border-radius:11px;flex:none;place-items:center;font-size:18px;display:grid}.health-row .h-body{flex:1;min-width:0}.health-row .h-name{color:var(--ink);font-size:13.5px;font-weight:700}.health-row .h-detail{color:var(--ink-3);overflow-wrap:anywhere;margin-top:2px;font-size:12px}.health-row .h-meta{flex:none;align-items:center;gap:8px;display:flex}.health-row .h-ms{background:var(--surface-2);color:var(--ink-2);white-space:nowrap;border-radius:100px;padding:3px 8px;font-size:11px;font-weight:700}.health-row .h-run{border:1.5px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer;border-radius:9px;align-items:center;gap:5px;padding:5px 11px;font-size:11px;font-weight:700;transition:background .15s;display:inline-flex}.health-row .h-run:hover{background:var(--surface-hover)}.health-row .h-status{place-items:center;display:grid}.sidebar{gap:20px;padding:30px 17px 20px}.brand{border:0;gap:10px;padding:0 7px 12px}.brand-mark{width:37px;height:40px;box-shadow:none;background:var(--accent-soft);color:var(--accent);border:0;border-radius:13px;transform:rotate(-7deg)}.brand-text{letter-spacing:-1px;font-size:26px;font-weight:700}.brand-text small{letter-spacing:.08em;margin-top:7px;font-size:9px;font-weight:500}.nav-section{letter-spacing:.12em;padding:14px 14px 9px;font-size:10px;font-weight:600}.nav-item{min-height:44px;font:500 12px/1.4 var(--font-body);border:0;border-radius:9px;gap:11px;padding:12px 13px}.nav-item.active{color:var(--accent-deep);background:var(--accent-soft);box-shadow:none;border:0;font-weight:600}.nav-item.active:active{box-shadow:none;transform:none}.nav-icon svg{stroke-width:1.7px}.user-row{text-align:left;border-top:1px solid var(--line);border-radius:0;width:100%;padding:17px 5px 0}.user-avatar{background:var(--forest-soft);border:0;border-radius:50%;flex-shrink:0;width:34px;height:34px}.user-name{font-size:11px;line-height:1.6}.user-role{font-size:10px;font-weight:400}.main{width:100%;max-width:1600px;margin:0 auto;padding:37px clamp(25px,3.25vw,54px) 72px}.topbar{flex-wrap:wrap;align-items:center;gap:20px}.topbar h1{letter-spacing:-.04em;font-size:clamp(27px,2.55vw,38px);font-weight:600}.topbar .greeting{margin-top:9px;font-size:13px;font-weight:400}.hero-card.feature h3{color:#fff;font-weight:600}.hero-card .stat-sub,.list-meta,.list-cell,.game-tile p,.empty-state .empty-desc{font-weight:400;line-height:1.6}.game-tile .tile-emoji{align-items:center;display:flex}.game-tile .tile-arrow{background:var(--forest-soft);color:var(--forest);border:0}.game-tile .tile-pill{background:var(--cream-2);border:0}.section-head{flex-wrap:wrap;gap:16px}.modal-backdrop{background:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-head,.modal-foot{flex-shrink:0}.modal-body{min-height:0}.modal-foot{flex-wrap:wrap;gap:12px}.data-table td{font-weight:400}.form-group label{text-transform:none;letter-spacing:0;color:var(--ink-2);font-size:12px;font-weight:600}.lang-selector{border-radius:9px;min-height:40px;font-size:11px;font-weight:500}.form-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:960px;display:grid}.product-info-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px;display:grid}.product-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:26px}.product-panel h3{align-items:center;gap:9px;display:flex}.product-help-hero{color:#fff;background:linear-gradient(125deg,#244c3c,#3c6556);border-radius:18px;margin-bottom:28px;padding:32px}.product-help-hero h2{color:#fff}.product-page-heading{margin-bottom:18px;font-size:22px}@media (width<=820px){.main{padding:28px 20px 64px}}@media (width<=560px){.main{padding:25px 17px 60px}.form-panel-grid{grid-template-columns:minmax(0,1fr)}.product-panel{padding:20px}.product-help-hero{padding:25px}.modal-backdrop{padding:12px}.section-title{font-size:20px}}.gm-screen{z-index:200;color:var(--ink);background:radial-gradient(1200px 600px at 90% -10%, var(--sky-2) 0%, transparent 50%), radial-gradient(900px 500px at -10% 100%, #d4f0dc 0%, transparent 55%), var(--cream);flex-direction:column;padding:18px 28px 28px;display:flex;position:fixed;inset:0;overflow:hidden}.gm-screen.dark{color:#fff;background:radial-gradient(1400px 700px at 50% -10%, #2d74ff 0%, var(--ink) 60%)}.gm-screen.purple{background:radial-gradient(1400px 700px at 50% -10%, #2ecc71 0%, var(--ink) 60%);color:#fff}.gm-screen.crimson{background:radial-gradient(1400px 700px at 50% -10%, #ff4d5e 0%, var(--ink) 60%);color:#fff}.gm-screen.green{color:#fff;background:radial-gradient(1400px 700px at 50% -10%,#1fb573 0%,#0e3d2a 60%)}.gm-screen.gold{color:var(--ink);background:radial-gradient(1400px 700px at 50% -10%,#ffc845 0%,#ff8a1f 60%)}.gm-top{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.gm-top .live-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);color:inherit;background:#ffffff1f}.gm-screen:not(.dark):not(.purple):not(.crimson):not(.green):not(.gold) .gm-top .live-pill{background:var(--paper);color:var(--ink);border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 6px 18px #17252c14}.gm-stat{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#ffffff1f;border-radius:100px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.gm-screen:not(.dark):not(.purple):not(.crimson):not(.green):not(.gold) .gm-stat{background:var(--paper);border:1px solid var(--line);color:var(--ink-2);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 6px 18px #17252c14}.gm-stat strong{font-family:var(--font-display);font-size:16px;font-weight:800}.gm-stage{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;min-height:0;display:flex}.mm-board{grid-template-columns:repeat(4,minmax(120px,180px));grid-auto-rows:minmax(100px,160px);gap:12px;width:100%;max-width:800px;padding:0 12px;display:grid}.mm-card{perspective:1000px;cursor:pointer}.mm-inner{width:100%;height:100%;transform-style:preserve-3d;border-radius:18px;transition:transform .5s;position:relative}.mm-card.flipped .mm-inner,.mm-card.matched .mm-inner{transform:rotateY(180deg)}.mm-face{backface-visibility:hidden;text-align:center;border:1px solid var(--line);word-break:break-word;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;padding:8px;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:0 6px 18px #17252c14}.mm-face.back{background:linear-gradient(135deg, var(--green), var(--blue));color:#fff;font-family:var(--font-display);font-size:36px}.mm-face.front{background:var(--paper);color:var(--ink);font-family:var(--font-display);gap:4px;font-size:11px;line-height:1.3;transform:rotateY(180deg)}.mm-card.matched .mm-face.front{border:3px solid var(--green);box-shadow:0 5px 0 var(--green-deep);background:linear-gradient(135deg,#ddf5e8,#b8e8c8)}.mm-q{color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;flex-shrink:0;font-size:9px;font-weight:600}.bb-arena{grid-template-columns:1fr 1fr;align-items:end;gap:28px;width:100%;max-width:980px;display:grid}.bb-fighter{text-align:center}.bb-portrait{border:1px solid var(--line);border-radius:36px;place-items:center;width:220px;height:220px;margin:0 auto;font-size:120px;transition:transform .2s;display:grid;position:relative;box-shadow:0 6px 18px #17252c14}.bb-portrait.player{background:linear-gradient(135deg,#2d74ff,#5ba0ff)}.bb-portrait.boss{background:linear-gradient(135deg,#c8313f,#ff4d5e)}.bb-portrait.hit{animation:.4s hitShake}@keyframes hitShake{0%,to{transform:translate(0)}25%{transform:translate(-12px,4px)rotate(-3deg)}75%{transform:translate(12px,-4px)rotate(3deg)}}.bb-name{font-family:var(--font-display);letter-spacing:-.01em;margin-top:14px;font-size:22px;font-weight:800}.bb-hp{border:1px solid var(--line);background:#3535414d;border-radius:100px;height:20px;margin-top:10px;position:relative;overflow:hidden}.bb-hp-fill{background:linear-gradient(90deg, var(--green), #4fd89a);border-radius:100px;height:100%;transition:width .5s}.bb-hp-fill.boss{background:linear-gradient(90deg, var(--red), #ff8a1f)}.bb-hp-fill.low{background:linear-gradient(90deg, var(--red), #c8313f)}.bb-hp-text{font-family:var(--font-display);color:#fff;text-shadow:0 1px 2px #35354180;place-items:center;font-size:12px;font-weight:800;display:grid;position:absolute;inset:0}.bb-vs{text-align:center;font-family:var(--font-display);color:var(--yellow);text-shadow:0 5px 0 var(--ink);font-size:48px;font-weight:800}.bb-damage{font-family:var(--font-display);color:var(--yellow);text-shadow:0 5px 0 var(--orange-deep);pointer-events:none;z-index:5;font-size:56px;font-weight:800;animation:1s ease-out forwards damageFly;position:absolute}@keyframes damageFly{0%{opacity:0;transform:translateY(0)scale(.5)}30%{opacity:1;transform:translateY(-30px)scale(1.2)}to{opacity:0;transform:translateY(-100px)scale(1)}}.bb-explosion{pointer-events:none;font-size:80px;animation:.6s ease-out forwards explode;position:absolute}@keyframes explode{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(2)}}.ws-stage{--tileW:clamp(64px, calc(min(88vw, 1040px) / var(--tiles,8) - 14px), 132px);flex-direction:column;align-items:center;gap:clamp(22px,4.5vh,44px);width:100%;display:flex}.ws-prompt{font-family:var(--font-display);text-align:center;max-width:min(860px,92vw);color:var(--ink);background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-depth,0 5px 0 var(--ink));border-radius:24px;padding:clamp(18px,3vh,30px) clamp(24px,4vw,44px);font-size:clamp(22px,2.6vw,32px);font-weight:800;line-height:1.35}.ws-slots{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.ws-slot{width:var(--tileW,64px);height:calc(var(--tileW,64px) * 1.22);background:color-mix(in srgb, var(--paper) 55%, transparent);border:1px dashed color-mix(in srgb, var(--ink) 35%, transparent);font-family:var(--font-display);font-weight:800;font-size:calc(var(--tileW,64px) * .52);color:var(--ink);text-transform:uppercase;border-radius:16px;place-items:center;display:grid}.ws-slot.filled{background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 6px 18px #17252c14}.ws-slot.correct{background:var(--green);color:#fff;border:1px solid var(--line);box-shadow:0 5px 0 var(--green-deep)}.ws-slot.wrong{background:var(--red);color:#fff;border:1px solid var(--line);box-shadow:0 5px 0 var(--red-deep);animation:.4s shake}.ws-tray{flex-wrap:wrap;justify-content:center;gap:12px;max-width:min(920px,92vw);display:flex}.ws-tile{width:calc(var(--tileW,64px) * .86);height:var(--tileW,64px);background:linear-gradient(180deg, #fff, var(--sky-2));color:var(--ink);font-family:var(--font-display);font-weight:800;font-size:calc(var(--tileW,64px) * .44);text-transform:uppercase;border:1px solid var(--line);cursor:pointer;border-radius:14px;transition:transform .1s;box-shadow:0 6px 18px #17252c14}.ws-tile:hover:not(:disabled){transform:translateY(-2px)}.ws-tile:active:not(:disabled){transform:translateY(3px);box-shadow:0 6px 18px #17252c14}.ws-tile:disabled{opacity:.25;cursor:default}.sm-card-stack{width:min(440px,90vw);height:clamp(300px,44vh,400px);position:relative}.sm-card{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:28px;flex-direction:column;justify-content:center;padding:26px 28px 40px;transition:transform .4s,opacity .4s;display:flex;position:absolute;inset:0;box-shadow:0 6px 18px #17252c14}.sm-card .sm-q-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:700}.sm-card .sm-q-text{font-family:var(--font-display);letter-spacing:-.01em;margin-top:10px;font-size:22px;font-weight:700;line-height:1.3}.sm-divider{background:var(--sky-1);border-radius:2px;height:3px;margin:18px 0}.sm-card .sm-a-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:700}.sm-card .sm-a-text{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin-top:8px;font-size:36px;font-weight:800;line-height:1.1}.sm-card.swipe-right{opacity:0;transform:translate(420px)rotate(20deg)}.sm-card.swipe-left{opacity:0;transform:translate(-420px)rotate(-20deg)}.sm-stamp{font-family:var(--font-display);letter-spacing:.1em;opacity:0;border:3px solid;border-radius:14px;padding:8px 16px;font-size:14px;font-weight:800;position:absolute;top:24px;right:24px;transform:rotate(-12deg)}.sm-card.choose-right .sm-stamp.match{opacity:1;color:var(--green-deep);border-color:var(--green)}.sm-card.choose-left .sm-stamp.nope{opacity:1;color:var(--red-deep);border-color:var(--red);top:24px;left:24px;right:auto;transform:rotate(12deg)}.sm-controls{gap:24px;margin-top:12px;display:flex}.sm-btn{cursor:pointer;border:1px solid var(--line);border-radius:50%;place-items:center;width:84px;height:84px;font-size:36px;transition:transform .1s,box-shadow .1s;display:grid}.sm-btn.no{background:var(--red);color:#fff;box-shadow:0 6px 18px #17252c14}.sm-btn.yes{background:var(--green);color:#fff;box-shadow:0 6px 18px #17252c14}.sm-btn:active{transform:translateY(3px);box-shadow:0 6px 18px #17252c14}.spin-stage{grid-template-columns:1fr 1fr;align-items:center;gap:36px;width:100%;max-width:1100px;display:grid}.spin-wheel-wrap{width:460px;height:460px;margin:0 auto;position:relative}.spin-pointer{background:var(--ink);clip-path:polygon(50% 100%,0 0,100% 0);z-index:3;filter:drop-shadow(0 5px #3535414d);width:40px;height:60px;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.spin-wheel{width:100%;height:100%;transition:transform 4s cubic-bezier(.16,1,.3,1)}.spin-center{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.spin-center-disc{background:var(--ink);width:110px;height:110px;color:var(--cream);font-family:var(--font-display);text-align:center;border:3px solid #ffffff4d;border-radius:50%;place-items:center;font-size:14px;font-weight:800;line-height:1.1;display:grid;box-shadow:0 0 0 8px #ffffff80}.spin-side{flex-direction:column;gap:16px;display:flex}.spin-multiplier-display{background:var(--paper);color:var(--ink);border:1px solid var(--line);text-align:center;border-radius:28px;padding:28px;box-shadow:0 6px 18px #17252c14}.spin-multi-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:700}.spin-multi-val{font-family:var(--font-display);letter-spacing:-.04em;background:linear-gradient(135deg, var(--green), var(--red));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:8px 0;font-size:96px;font-weight:800;line-height:1}.spin-q-card{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:22px;padding:22px 24px;box-shadow:0 6px 18px #17252c14}.spin-q-text{font-family:var(--font-display);font-size:18px;font-weight:700;line-height:1.3}.spin-q-options{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.spin-opt{background:var(--sky-2);border:1px solid var(--line);text-align:left;cursor:pointer;border-radius:12px;padding:10px 14px;font-size:14px;font-weight:600;transition:transform .1s,box-shadow .1s;box-shadow:0 6px 18px #17252c14}.spin-opt:hover{transform:translateY(-1px);box-shadow:0 6px 18px #17252c14}.spin-opt.correct{background:var(--green);color:#fff;border-color:var(--ink);box-shadow:0 3px 0 var(--green-deep)}.spin-opt.wrong{background:var(--red);color:#fff;border-color:var(--ink);box-shadow:0 3px 0 var(--red-deep)}.btn-spin{background:var(--ink);width:100%;color:var(--cream);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line);border-radius:18px;padding:18px 22px;font-size:18px;font-weight:800;box-shadow:0 6px #35354180}.btn-spin:disabled{opacity:.4;cursor:not-allowed}.qb-grid{grid-template-columns:repeat(5,1fr);gap:12px;width:100%;max-width:1200px;display:grid}.qb-cat{background:var(--ink);color:var(--yellow);text-align:center;font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border:3px solid #ffc8454d;border-radius:16px;place-items:center;min-height:70px;padding:18px 14px;font-size:15px;font-weight:800;line-height:1.2;display:grid}.qb-cell{color:var(--yellow);text-align:center;font-family:var(--font-display);letter-spacing:-.01em;cursor:pointer;border:1px solid var(--line);box-shadow:0 5px 0 var(--ink), inset 0 1px 0 #ffffff26;text-shadow:0 2px 4px #3535414d;background:linear-gradient(#2d74ff,#1b4fcc);border-radius:16px;min-height:90px;padding:22px 12px;font-size:32px;font-weight:800;transition:transform .1s,box-shadow .1s}.qb-cell:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 18px #17252c14}.qb-cell:active:not(:disabled){transform:translateY(3px);box-shadow:0 6px 18px #17252c14}.qb-cell:disabled{color:#ffffff26;cursor:default;box-shadow:none;text-shadow:none;background:#ffffff0a;border-color:#ffffff0f}.qb-teams{gap:12px;margin-bottom:18px;display:flex}.qb-team{background:#ffffff14;border:3px solid #ffffff2e;border-radius:16px;flex:1;align-items:center;gap:14px;padding:14px 18px;display:flex}.qb-team.active{border-color:var(--yellow);background:#ffc8452e;box-shadow:0 0 0 3px #ffc8454d}.qb-team-emoji{font-size:28px}.qb-team-name{font-family:var(--font-display);font-size:14px;font-weight:700}.qb-team-score{font-family:var(--font-display);color:var(--yellow);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;margin-top:2px;font-size:28px;font-weight:800;line-height:1}.qb-card-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#353541d9;place-items:center;padding:24px;animation:.2s fadeIn;display:grid;position:absolute;inset:0}.qb-card{color:#fff;border:1px solid var(--line);text-align:center;background:linear-gradient(#2d74ff,#1b4fcc);border-radius:28px;width:min(820px,100%);padding:48px;animation:.3s popIn;box-shadow:0 6px 18px #17252c14}.qb-card-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--yellow);font-size:13px;font-weight:700}.qb-card-clue{font-family:var(--font-display);letter-spacing:-.02em;margin-top:18px;font-size:40px;font-weight:800;line-height:1.2}.qb-options{grid-template-columns:1fr 1fr;gap:14px;margin-top:30px;display:grid}.qb-points-pill{background:var(--yellow);color:var(--ink);border:1px solid var(--line);font-family:var(--font-display);border-radius:100px;margin-top:12px;padding:8px 18px;font-size:22px;font-weight:800;display:inline-block;box-shadow:0 6px 18px #17252c14}.gm-screen.in-scene{background:0 0}.bb-hp-fill{z-index:2;position:relative}.bb-hp .fx-hp-ghost{z-index:1}.bb-hp-text{z-index:3}.bb-sprite{filter:drop-shadow(0 6px 4px #18142559)}.bb-portrait.bb-attack{animation:.55s cubic-bezier(.34,1.56,.64,1) bbLungeRight}.bb-portrait.bb-attack-left{animation:.55s cubic-bezier(.34,1.56,.64,1) bbLungeLeft}@keyframes bbLungeRight{0%,to{transform:translate(0)rotate(0)}35%{transform:translate(52px)rotate(4deg)}}@keyframes bbLungeLeft{0%,to{transform:translate(0)rotate(0)}35%{transform:translate(-52px)rotate(-4deg)}}@media (prefers-reduced-motion:reduce){.bb-portrait.bb-attack,.bb-portrait.bb-attack-left{animation:none}}.gm-screen.in-scene .bb-name{color:var(--ink);text-shadow:0 1px #ffffff73}.mm-card.mm-shake,.mm-card.mm-wrong{animation:.45s mmShake}@keyframes mmShake{0%,to{transform:translate(0)}25%{transform:translate(-8px)rotate(-1.5deg)}50%{transform:translate(7px)rotate(1.5deg)}75%{transform:translate(-5px)}}@media (prefers-reduced-motion:reduce){.mm-card.mm-shake{animation:none}}.sm-card{will-change:transform, opacity}.sm-card.swipe-right{opacity:0;transition:transform .45s cubic-bezier(.5,-.2,.75,.4),opacity .45s;transform:translate(480px,-40px)rotate(28deg)}.sm-card.swipe-left{opacity:0;transition:transform .45s cubic-bezier(.5,-.2,.75,.4),opacity .45s;transform:translate(-480px,-40px)rotate(-28deg)}.sm-card.choose-right .sm-stamp.match{animation:.22s cubic-bezier(.34,1.8,.64,1) smStampSlam}.sm-card.choose-left .sm-stamp.nope{animation:.22s cubic-bezier(.34,1.8,.64,1) smStampSlamTilt}@keyframes smStampSlam{0%{opacity:0;transform:scale(2.4)rotate(-14deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes smStampSlamTilt{0%{opacity:0;transform:scale(2.4)rotate(-6deg)}to{opacity:1;transform:scale(1)rotate(12deg)}}@media (prefers-reduced-motion:reduce){.sm-card.choose-right .sm-stamp.match,.sm-card.choose-left .sm-stamp.nope{animation:none}}.ws-slots.solved-wave .ws-slot{animation:.55s both wsWave;animation-delay:calc(var(--i,0) * 70ms)}@keyframes wsWave{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-16px)scale(1.12)}}.ws-slot.wrong{animation:.45s mmShake}@media (prefers-reduced-motion:reduce){.ws-slots.solved-wave .ws-slot,.ws-slot.wrong{animation:none}}.trivia-grid-game.in-scene{background:0 0}.tg-cell-coin{opacity:.35;filter:saturate(.6);width:30px}.spin-pointer.kick{animation:.12s ease-out spinKick}@keyframes spinKick{0%{transform:translate(-50%)rotate(0)}40%{transform:translate(-50%)rotate(-16deg)}to{transform:translate(-50%)rotate(0)}}.spin-multi-val.landed{animation:.5s cubic-bezier(.34,1.7,.64,1) multLand}@keyframes multLand{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.spin-pointer.kick,.spin-multi-val.landed{animation:none}}.bbx-root{z-index:200;color:var(--ink);background:linear-gradient(#c2633f 0%,#a94e33 60%,#93422c 100%);flex-direction:column;display:flex;position:fixed;inset:0}.bbx-arena{flex:54%;min-height:0;position:relative}.bbx-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.bbx-loading{font-family:var(--font-display);color:var(--ink);place-items:center;font-weight:800;display:grid;position:absolute;inset:0}.bbx-hud{z-index:3;margin-bottom:0;padding:14px 20px;position:absolute;top:0;left:0;right:0}.bbx-hp-row{z-index:3;justify-content:space-between;gap:20px;padding:0 4%;display:flex;position:absolute;bottom:10px;left:0;right:0}.bbx-hp-block{width:42%}.bbx-hp-block .bb-name{color:var(--ink);background:color-mix(in srgb, var(--paper) 88%, transparent);border:1px solid var(--line);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:100px;align-items:center;margin-top:0;margin-bottom:6px;padding:3px 14px;font-size:14px;display:inline-flex;box-shadow:0 6px 18px #17252c14}.bbx-question-zone{flex-direction:column;flex:46%;justify-content:center;align-items:center;gap:14px;padding:12px 20px 22px;display:flex;overflow-y:auto}@media (width<=820px){.bbx-arena{flex-basis:44%}.bbx-question-zone{flex-basis:56%}.bbx-hp-block .bb-name{font-size:12px}}.mm-question{text-align:center;width:100%;max-width:760px;padding:20px 28px}.mm-question-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--blue-deep);margin-bottom:6px;font-size:11px;font-weight:800}.mm-peek{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-depth,0 5px 0 var(--ink));border-radius:24px;flex-direction:column;align-items:center;gap:6px;padding:14px 34px;display:flex}.mm-peek-title{font-family:var(--font-display);color:var(--ink);font-size:22px;font-weight:800}.mm-peek-count{font-family:var(--font-display);color:var(--grass);font-size:44px;font-weight:800;line-height:1;animation:.3s popIn}.mm-board-answers{grid-template-columns:repeat(4,minmax(130px,190px));grid-auto-rows:minmax(92px,130px);justify-content:center}.mm-answer-face{font-family:var(--font-display);font-weight:800;line-height:1.25}.mm-stars{letter-spacing:6px;margin:2px 0 6px;font-size:34px}@media (width<=820px){.mm-board-answers{grid-template-columns:repeat(2,minmax(130px,1fr))}}.sm-card-body{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.sm-card .sm-q-text{text-align:center;margin-top:2px;font-size:clamp(19px,2.2vw,24px)}.sm-card .sm-divider{width:70%;margin:12px auto}.sm-a-chip{font-family:var(--font-display);color:var(--ink);background:color-mix(in srgb, var(--blue) 12%, var(--paper));border:1px solid var(--line);max-width:100%;box-shadow:inset 0 -4px 0 color-mix(in srgb, var(--blue) 22%, var(--paper));border-radius:18px;padding:14px 28px;font-weight:800;line-height:1.2}.sm-card-foot{color:var(--ink-3);text-align:center;font-size:11px;position:absolute;bottom:12px;left:0;right:0}.spin-wheel-wrap{transition:transform .35s,opacity .35s,filter .35s}.spin-stage.q-open .spin-wheel-wrap{opacity:.82;filter:saturate(.85);transform:scale(.9)}.spin-wheel-wrap.pulse{animation:.5s cubic-bezier(.34,1.7,.64,1) wheelLand}@keyframes wheelLand{35%{transform:scale(1.05)}}.spin-wheel path.seg-hit{animation:.38s ease-in-out 3 segHit}@keyframes segHit{50%{filter:brightness(1.45)}}.spin-bulb{fill:#fff3d6;opacity:.55}.spin-wheel.is-spinning .spin-bulb.a{animation:.24s step-end infinite bulbBlink}.spin-wheel.is-spinning .spin-bulb.b{animation:.24s step-end .12s infinite bulbBlink}.spin-wheel.is-landed .spin-bulb{fill:var(--yellow);opacity:1;animation:.4s ease-in-out 3 bulbGlow}@keyframes bulbBlink{0%{fill:#ffc845;opacity:1}50%{fill:#fff3d6;opacity:.5}}@keyframes bulbGlow{50%{filter:brightness(1.4)drop-shadow(0 0 6px #ffc845cc)}}.spin-payout{background:var(--paper);color:var(--ink);border:1px solid var(--line);text-align:center;border-radius:28px;padding:22px 24px;box-shadow:0 6px 18px #17252c14}.spin-turn{font-family:var(--font-display);margin-bottom:10px;font-size:20px;font-weight:800}.spin-pay-rows{flex-direction:column;gap:8px;margin-top:12px;display:flex}.spin-pay{color:var(--ink-2);background:color-mix(in srgb, var(--sky-2) 55%, var(--paper));border:2px solid var(--ink);border-radius:12px;align-items:center;gap:10px;padding:6px 12px;font-size:14px;font-weight:700;display:flex}.spin-pay-chip{color:#fff;min-width:46px;font-family:var(--font-display);border:2px solid var(--ink);text-align:center;border-radius:9px;padding:3px 8px;font-size:14px;font-weight:800}.spin-pay.gold{background:color-mix(in srgb, var(--yellow) 30%, var(--paper))}.spin-pay.mystery{background:color-mix(in srgb, #7b3ff2 14%, var(--paper))}.spin-q-card{animation:.45s cubic-bezier(.34,1.56,.64,1) qCardPop}@keyframes qCardPop{0%{opacity:0;transform:scale(.85)translateY(12px)}}.spin-q-mult{font-family:var(--font-display);border:1px solid var(--line);background:var(--sky-2);color:var(--ink);border-radius:100px;align-items:center;gap:6px;margin-bottom:10px;padding:5px 14px;font-size:14px;font-weight:800;display:inline-flex}.spin-q-mult.jackpot{background:var(--yellow);animation:1.2s ease-in-out infinite multGlowPulse}.spin-q-mult.mystery{color:#fff;background:#3a3a4a}@keyframes multGlowPulse{50%{box-shadow:0 0 16px #ffc845bf}}.spin-reveal{border:1px solid var(--line);text-align:center;border-radius:12px;margin-top:12px;padding:10px 14px;font-size:15px;font-weight:700;animation:.4s cubic-bezier(.34,1.56,.64,1) qCardPop}.spin-reveal.correct{background:color-mix(in srgb, var(--yellow) 35%, var(--paper))}.spin-reveal.wrong{background:color-mix(in srgb, #7b3ff2 12%, var(--paper));color:var(--ink-2)}@media (prefers-reduced-motion:reduce){.spin-wheel-wrap{transition:none}.spin-wheel-wrap.pulse,.spin-wheel path.seg-hit,.spin-wheel.is-spinning .spin-bulb.a,.spin-wheel.is-spinning .spin-bulb.b,.spin-wheel.is-landed .spin-bulb,.spin-q-card,.spin-q-mult.jackpot,.spin-reveal{animation:none}}.adventure-game-scene{z-index:200;background:#faf9f6}.adventure-game-world{opacity:.76;background-position:50%;background-size:cover;position:absolute;inset:0}.adventure-game-wash{background:linear-gradient(#faf9f6eb,#faf9f61f 25%,#faf9f642 70%,#faf9f6c7);position:absolute;inset:0}.adventure-game-scene.with-vignette .adventure-game-wash{box-shadow:inset 0 0 160px #17252c40}.adventure-game-dust{pointer-events:none;background:radial-gradient(circle at 18% 72%,#f4dd9e 0 2px,#0000 3px),radial-gradient(circle at 77% 22%,#fffefa 0 2px,#0000 3px);animation:8s ease-in-out infinite alternate adventureDust;position:absolute;inset:0}@keyframes adventureDust{to{opacity:.3;transform:translateY(-24px)}}.adventure-game-scene .gm-screen,.adventure-game-scene .trivia-grid-game{color:#17252c;padding:20px 28px 28px;overflow:hidden auto}.adventure-game-scene .gm-top,.adventure-game-scene .tg-topbar{flex-wrap:wrap;gap:16px;margin-bottom:0;padding:0 0 16px}.adventure-game-scene .gm-top>div:last-child,.adventure-game-scene .tg-score-area{flex-wrap:wrap;gap:8px!important}.adventure-game-scene .live-pill,.adventure-game-scene .gm-top .live-pill,.adventure-game-scene .gm-stat,.adventure-game-scene .tg-score-pill,.adventure-game-scene .live-icon-btn,.adventure-game-scene .qa-team-pill{color:#17252c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf5;border:1px solid #e6e2da;box-shadow:0 3px 12px #17252c0f}.adventure-game-scene .live-pill{border-radius:12px;flex-wrap:wrap;max-width:100%;font-size:12px}.adventure-game-scene .live-pill strong{color:#536068;font-size:13px;font-weight:600}.adventure-game-scene .live-pill .pill-icon{color:#fffefa;border-radius:8px}.adventure-game-scene .gm-stat,.adventure-game-scene .tg-score-pill{min-height:40px;font-family:var(--font-body);border-radius:10px;padding:8px 12px;font-size:12px}.adventure-game-scene .gm-stat strong{font-size:15px;font-weight:650}.adventure-game-scene button.gm-stat{cursor:pointer}.adventure-game-scene .live-icon-btn{border-radius:10px;width:40px;height:40px}.adventure-game-scene .live-icon-btn.exit{color:#ac463d;background:#fffefa;border-color:#e6e2da}.adventure-game-scene .live-icon-btn:hover,.adventure-game-scene button.gm-stat:hover{background:#f2eee5}.adventure-game-scene .gm-stage{gap:22px;min-height:min-content;padding:22px 0}.adventure-game-scene .qa-team-hud{gap:8px;padding:0 0 14px}.adventure-game-scene .qa-team-pill{border-radius:12px;padding:8px 12px;font-size:12px}.adventure-game-scene .qa-team-pill.active{background:#eef4eb;border-color:#477457;transform:none;box-shadow:0 0 0 2px #4774571f}.adventure-game-scene .qa-team-pill-emoji,.game-team-marker{color:#477457;width:24px;height:24px;font:600 12px var(--font-body);background:#e7ece3;border-radius:7px;place-items:center;display:inline-grid}.game-instruction{color:#536068;text-align:center;background:#fffefaf2;border:1px solid #e6e2da;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:500}.adventure-game-scene .ws-stage{--tileW:clamp(44px, calc(min(86vw, 940px) / var(--tiles,8) - 12px), 104px);gap:32px}.adventure-game-scene .ws-prompt{background:#fffefa;border:1px solid #e6e2da;border-radius:18px;font-size:clamp(21px,2.5vw,32px);font-weight:600;box-shadow:0 14px 40px #17252c1a}.adventure-game-scene .ws-slot{cursor:pointer;background:#fffefac2;border:1px dashed #7c8c83;border-radius:12px;font-weight:600}.adventure-game-scene .ws-slot.filled,.adventure-game-scene .ws-tile{background:#fffefa;border:1px solid #dcd7c9;border-radius:12px;box-shadow:0 3px #cfc9ba,0 8px 18px #17252c1f}.adventure-game-scene .ws-tile{font-weight:600}.adventure-game-scene .ws-tile:hover:not(:disabled){background:#f5f0e4}.adventure-game-scene .ws-tile:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #cfc9ba}.adventure-game-scene .ws-slot.correct{color:#fff;background:#477457;border-color:#365b43;box-shadow:0 3px #365b43}.adventure-game-scene .ws-slot.wrong{color:#fff;background:#bf554c;border-color:#a2463e;box-shadow:0 3px #a2463e}.adventure-game-scene .sm-card{background:#fffefa;border:1px solid #e6e2da;border-radius:20px;box-shadow:0 20px 48px #17252c2e}.adventure-game-scene .sm-card-stack{width:min(480px,90vw)}.adventure-game-scene .sm-divider{background:#e6e2da;height:1px}.adventure-game-scene .sm-a-chip{color:#355940;box-shadow:none;background:#edf2e9;border:1px solid #dce5d8;border-radius:12px;font-weight:600}.adventure-game-scene .sm-stamp{background:#fffefa;border-width:1px;border-radius:8px}.adventure-game-scene .sm-btn{width:150px;height:58px;font:600 14px var(--font-body);border:1px solid #0000;border-radius:12px;justify-content:center;gap:9px;display:flex;box-shadow:0 6px 18px #17252c24}.adventure-game-scene .sm-btn.no{color:#ac463d;background:#fffefa;border-color:#dfb9b4}.adventure-game-scene .sm-btn.yes{color:#fffefa;background:#477457}.adventure-game-scene .sm-btn:hover{transform:translateY(-2px)}.adventure-game-scene .sm-btn:active{transform:translateY(1px)}.adventure-game-scene .spin-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.adventure-game-scene .spin-wheel-wrap{aspect-ratio:1;filter:drop-shadow(0 16px 30px #17252c2e);width:min(430px,100%);height:auto}.adventure-game-scene .spin-pointer{filter:drop-shadow(0 3px 4px #17252c33);width:26px;height:42px}.adventure-game-scene .spin-center-disc{background:#253b44;border:1px solid #d8b36c;width:92px;height:92px;font-size:12px;font-weight:600;box-shadow:0 0 0 5px #fffefae0}.adventure-game-scene .spin-payout,.adventure-game-scene .spin-q-card{background:#fffefa;border:1px solid #e6e2da;border-radius:18px;padding:26px;box-shadow:0 14px 40px #17252c1f}.adventure-game-scene .spin-pay{background:#f7f5ef;border:1px solid #e6e2da;border-radius:8px;font-weight:500}.adventure-game-scene .spin-pay.gold{background:#f7efd9}.adventure-game-scene .spin-pay.mystery{background:#ede9ef}.adventure-game-scene .spin-pay-chip{border:0;border-radius:6px}.adventure-game-scene .spin-turn{justify-content:center;align-items:center;gap:6px;font-weight:600;display:flex}.adventure-game-scene .spin-multi-val{color:#477457;-webkit-text-fill-color:currentColor;background:0 0;font-weight:600}.adventure-game-scene .btn-spin{color:#fff;letter-spacing:0;text-transform:none;cursor:pointer;background:#df594b;border:1px solid #ca4d42;border-radius:12px;font-size:16px;font-weight:600;box-shadow:0 5px 15px #ac463d2e}.adventure-game-scene .spin-q-mult{background:#edf2e9;border:1px solid #e6e2da;border-radius:8px;font-size:12px;font-weight:600}.adventure-game-scene .spin-q-mult.jackpot{background:#f7efd9}.adventure-game-scene .spin-q-mult.mystery{background:#253b44}.adventure-game-scene .spin-q-text{font-size:22px;font-weight:600}.adventure-game-scene .spin-opt{box-shadow:none;color:#17252c;background:#f8f6f0;border:1px solid #e6e2da;border-radius:10px;padding:14px}.adventure-game-scene .spin-opt:hover:not(:disabled){box-shadow:none;background:#edf2e9;border-color:#477457}.adventure-game-scene .spin-opt.correct{color:#355940;box-shadow:none;background:#e5efe2;border-color:#477457}.adventure-game-scene .spin-opt.wrong{color:#9c4038;box-shadow:none;background:#f7e5e1;border-color:#bf554c}.adventure-game-scene .spin-reveal{border:1px solid #e6e2da;font-weight:500}@media (width<=760px){.adventure-game-scene .gm-screen,.adventure-game-scene .trivia-grid-game{padding:14px}.adventure-game-scene .gm-top,.adventure-game-scene .tg-topbar{gap:10px}.adventure-game-scene .live-pill{width:100%}.adventure-game-scene .gm-stage{padding:16px 0}.adventure-game-scene .spin-stage{grid-template-columns:1fr;gap:20px;max-width:500px}.adventure-game-scene .spin-wheel-wrap{width:min(290px,80vw)}.adventure-game-scene .spin-center-disc{width:66px;height:66px;font-size:10px}.adventure-game-scene .spin-pointer{width:22px;height:32px}.adventure-game-scene .ws-slots,.adventure-game-scene .ws-tray{gap:8px}.adventure-game-scene .sm-card-stack{width:min(440px,100vw - 40px)}.adventure-game-scene .sm-controls{gap:12px}.adventure-game-scene .sm-btn{width:140px}}@media (prefers-reduced-motion:reduce){.adventure-game-dust{animation:none}}.login-page{isolation:isolate;background:var(--cream,#faf9f6);grid-template-columns:minmax(320px,1fr) minmax(360px,440px);justify-content:center;align-items:center;gap:clamp(36px,7vw,100px);min-height:100vh;padding:88px max(32px,50vw - 570px);display:grid;position:relative}.login-welcome{color:#fffefa;background:#253c37;border-radius:24px;align-self:stretch;min-height:580px;position:relative;overflow:hidden}.login-welcome img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.login-welcome:after{content:"";background:linear-gradient(#122520c7,#12252033 58%,#12252014);position:absolute;inset:0}.login-welcome-copy{z-index:1;padding:clamp(28px,4vw,52px);position:relative}.login-eyebrow{letter-spacing:.18em;color:#e9e5cd;font-size:10px;font-weight:700}.login-welcome h2{color:#fffefa;font:600 clamp(34px, 4vw, 52px)/1.12 var(--font-display);letter-spacing:-.04em;margin:24px 0 18px}.login-welcome p{color:#eef0e4;max-width:300px;font-size:15px;line-height:1.7}.login-lang-bar{z-index:10;position:absolute;top:24px;right:28px}.login-card{background:var(--paper,#fffefa);border:1px solid var(--line,#e6e2da);text-align:center;z-index:1;border-radius:22px;width:100%;padding:38px 32px;position:relative;box-shadow:0 12px 42px #17252c0d}.login-logo{color:#d55d45;background:#fae7dc;border-radius:16px;place-items:center;width:52px;height:52px;margin:0 auto 16px;display:grid}.login-title{font:650 34px/1.15 var(--font-display);color:var(--ink);letter-spacing:-.04em;margin-bottom:8px}.login-subtitle{color:var(--ink-3);margin-bottom:28px;font-size:14px;font-weight:400}.login-card input{min-height:48px;font-size:14px}.login-divider{align-items:center;gap:14px;margin-bottom:24px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--line);flex:1;height:1px}.login-divider span{color:var(--ink-3);white-space:nowrap;font-size:11px;font-weight:500}.login-roles{flex-direction:column;gap:10px;display:flex}.role-btn{border:1px solid var(--line);background:var(--paper);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:14px;padding:14px 18px;transition:border-color .15s;display:flex}.role-btn:hover{border-color:var(--green)}.role-btn .role-icon{width:42px;height:42px;color:var(--green);background:#eff3eb;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.role-btn .role-name{font-family:var(--font-display);color:var(--ink);font-size:15px;font-weight:600;display:block}.role-btn .role-desc{color:var(--ink-3);margin-top:2px;font-size:12px;display:block}.login-footer-text{color:var(--ink-3);margin-top:24px;font-size:12px;font-weight:400}.login-home{cursor:pointer;color:var(--ink-3);background:0 0;border:0;align-items:center;gap:8px;font-size:13px;display:flex;position:absolute;top:27px;left:28px}.login-home:hover{color:var(--ink)}@media (width<=800px){.login-page{grid-template-columns:minmax(0,440px);padding:88px 20px 32px}.login-welcome{display:none}}@media (width<=400px){.login-card{padding:30px 22px}.login-home{font-size:12px;left:20px}.login-lang-bar{right:20px}}
