*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.mt-0\.5{margin-top:.125rem}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.w-5{width:1.25rem}.w-full{width:100%}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.break-all{word-break:break-all}.rounded-2xl{border-radius:1rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-amber-500\/40{border-color:#f59e0b66}.border-amber-500\/50{border-color:#f59e0b80}.border-rose-800\/50{border-color:#9f123980}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity, 1))}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-amber-500\/5{background-color:#f59e0b0d}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-rose-950\/40{background-color:#4c051966}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-slate-800\/60{background-color:#1e293b99}.bg-slate-900\/30{background-color:#0f172a4d}.bg-slate-900\/40{background-color:#0f172a66}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.text-amber-200{--tw-text-opacity: 1;color:rgb(253 230 138 / var(--tw-text-opacity, 1))}.text-amber-300{--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-rose-300{--tw-text-opacity: 1;color:rgb(253 164 175 / var(--tw-text-opacity, 1))}.text-rose-400{--tw-text-opacity: 1;color:rgb(251 113 133 / var(--tw-text-opacity, 1))}.text-sky-400{--tw-text-opacity: 1;color:rgb(56 189 248 / var(--tw-text-opacity, 1))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--bg: #0d0d1f;--surface: #161630;--card: #1e1e3f;--card-hover: #252550;--border: #2e2e5e;--border-hi: #4a4a8a;--gold: #f59e0b;--gold-light: #fcd34d;--gold-dark: #92400e;--teal: #22d3ee;--teal-dark: #0e7490;--pink: #f472b6;--purple: #a78bfa;--purple-dark:#4c1d95;--green: #4ade80;--red: #f87171;--red-dark: #7f1d1d;--text: #f1f0ff;--muted: #8b8bb8;--muted2: #4a4a7a}*,*:before,*:after{box-sizing:border-box}html{color-scheme:dark}body{font-family:Nunito,Kanit,system-ui,sans-serif;background-color:var(--bg);color:var(--text);min-height:100vh;line-height:1.5;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:radial-gradient(1px 1px at 12% 8%,rgba(255,255,255,.5) 0%,transparent 100%),radial-gradient(1px 1px at 78% 18%,rgba(255,255,255,.4) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 45% 55%,rgba(255,255,255,.3) 0%,transparent 100%),radial-gradient(1px 1px at 8% 75%,rgba(255,255,255,.4) 0%,transparent 100%),radial-gradient(1px 1px at 88% 65%,rgba(255,255,255,.3) 0%,transparent 100%),radial-gradient(1px 1px at 33% 38%,rgba(255,255,255,.25) 0%,transparent 100%),radial-gradient(1px 1px at 62% 88%,rgba(255,255,255,.35) 0%,transparent 100%),radial-gradient(1px 1px at 55% 22%,rgba(255,255,255,.2) 0%,transparent 100%),radial-gradient(1px 1px at 20% 52%,rgba(255,255,255,.2) 0%,transparent 100%),radial-gradient(1px 1px at 95% 42%,rgba(255,255,255,.25) 0%,transparent 100%)}#root{position:relative;z-index:1}a{color:var(--teal);text-decoration:none}a:hover{color:var(--gold-light)}.g-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:inherit;font-weight:800;font-size:14px;line-height:1;padding:12px 22px;border-radius:14px;border:none;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease;white-space:nowrap;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.g-btn:active{transform:translateY(3px)}.g-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.g-btn-gold{background:linear-gradient(160deg,#fcd34d,#f59e0b 60%,#d97706);color:#1a0a00;box-shadow:0 5px 0 var(--gold-dark),0 8px 24px #f59e0b66}.g-btn-gold:active{box-shadow:0 2px 0 var(--gold-dark),0 4px 10px #f59e0b33}.g-btn-teal{background:linear-gradient(160deg,#67e8f9,#22d3ee,#0891b2);color:#001a20;box-shadow:0 5px 0 var(--teal-dark),0 8px 24px #22d3ee59}.g-btn-teal:active{box-shadow:0 2px 0 var(--teal-dark)}.g-btn-purple{background:linear-gradient(160deg,#c4b5fd,#a78bfa,#7c3aed);color:#fff;box-shadow:0 5px 0 var(--purple-dark),0 8px 24px #a78bfa59}.g-btn-purple:active{box-shadow:0 2px 0 var(--purple-dark)}.g-btn-red{background:linear-gradient(160deg,#fca5a5,#f87171,#dc2626);color:#fff;box-shadow:0 5px 0 var(--red-dark),0 8px 24px #f8717159}.g-btn-red:active{box-shadow:0 2px 0 var(--red-dark)}.g-btn-ghost{background:#ffffff0d;color:var(--muted);border:1.5px solid var(--border);box-shadow:0 3px #00000059}.g-btn-ghost:active{box-shadow:0 1px #00000059}.g-btn-ghost:hover{background:#ffffff17;color:var(--text)}.g-btn-sm{padding:8px 16px;font-size:12px;border-radius:10px}.g-btn-lg{padding:16px 32px;font-size:16px;border-radius:16px}.g-btn-full{width:100%}.g-icon-btn{width:38px;height:38px;padding:0;border-radius:999px;font-size:17px;flex:0 0 38px}.game-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:#fff1;color:var(--muted);box-shadow:0 3px #00000047;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease,transform .08s ease}.game-icon-btn:hover{color:var(--text);border-color:#ffffff3d;background:#ffffff1c}.game-icon-btn:active{transform:translateY(2px);box-shadow:0 1px #00000047}.game-icon-btn:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.game-exit-row{display:flex;justify-content:flex-end;min-height:40px}.game-control-cluster{display:flex;align-items:center;gap:8px}.g-card{background:var(--card);border:1.5px solid var(--border);border-radius:20px;padding:24px;position:relative;overflow:hidden}.g-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);pointer-events:none}.g-card-sm{padding:16px;border-radius:16px}.g-input{width:100%;background:var(--surface);border:1.5px solid var(--border);border-radius:12px;padding:11px 15px;font-family:inherit;font-size:14px;font-weight:600;color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s}.g-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #22d3ee1f}.g-input::-moz-placeholder{color:var(--muted2);font-weight:600}.g-input::placeholder{color:var(--muted2);font-weight:600}.g-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.3px;border:1px solid transparent}.g-badge-gold{background:#f59e0b26;color:var(--gold-light);border-color:#f59e0b4d}.g-badge-teal{background:#22d3ee1f;color:var(--teal);border-color:#22d3ee40}.g-badge-pink{background:#f472b61f;color:var(--pink);border-color:#f472b640}.g-badge-green{background:#4ade801f;color:var(--green);border-color:#4ade8040}.g-badge-red{background:#f871711f;color:var(--red);border-color:#f8717140}.g-badge-purple{background:#a78bfa1f;color:var(--purple);border-color:#a78bfa40}.g-label{display:block;font-size:11px;font-weight:800;color:var(--muted);letter-spacing:1.2px;text-transform:uppercase;margin-bottom:6px}.g-error{background:#f8717114;border:1px solid rgba(248,113,113,.3);border-radius:12px;padding:12px 16px;font-size:13px;font-weight:700;color:var(--red)}.g-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:16px;background:#04040eb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.g-modal{width:min(100%,520px);max-height:min(88vh,720px);overflow:auto;border-radius:20px;border:1.5px solid var(--border);background:var(--card);box-shadow:0 24px 70px #00000075;padding:18px}.g-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.g-modal-title{font-size:18px;font-weight:900;color:var(--gold-light)}.g-modal-subtitle{font-size:12px;color:var(--muted)}.g-modal-close{width:36px;height:36px;border-radius:999px;border:1.5px solid var(--border);background:#ffffff0f;color:var(--text);font-family:inherit;font-size:22px;font-weight:900;cursor:pointer}.g-room-card{background:var(--card);border:1.5px solid var(--border);border-radius:18px;padding:18px;cursor:pointer;transition:transform .12s,border-color .15s,box-shadow .15s}.g-room-card:hover{transform:translateY(-2px);border-color:var(--teal);box-shadow:0 8px 30px #22d3ee1a}.g-player-panel{border-radius:18px;padding:14px 18px;display:flex;align-items:center;gap:14px;border:2px solid var(--border);background:var(--card);transition:border-color .2s,box-shadow .2s,background .2s}.g-player-panel.is-turn{border-color:var(--gold);background:#f59e0b0d;box-shadow:0 0 24px #f59e0b1a}.g-hero{position:relative;overflow:hidden;border-radius:24px;border:1.5px solid var(--border);min-height:220px;display:flex;align-items:flex-end;padding:32px}.g-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0d0d1f00,#0d0d1fbf)}.g-hero-content{position:relative;z-index:1}.g-row-title{font-size:16px;font-weight:900;color:var(--text);margin-bottom:2px}.g-row-subtitle{font-size:12px;color:var(--muted);font-weight:600;margin-bottom:12px}.g-hscroll{display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;padding-bottom:10px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.g-hscroll::-webkit-scrollbar{height:6px}.g-hscroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.g-hscroll::-webkit-scrollbar-track{background:transparent}.g-game-card{flex:0 0 150px;scroll-snap-align:start;border-radius:16px;overflow:hidden;cursor:pointer;border:1.5px solid var(--border);background:var(--card);transition:transform .18s ease,border-color .18s,box-shadow .18s}.g-game-card:hover{transform:translateY(-4px) scale(1.04);border-color:var(--teal);box-shadow:0 12px 32px #22d3ee2e;z-index:2}.g-game-card-art{height:150px;display:flex;align-items:center;justify-content:center;font-size:48px}.g-game-card-cover{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.g-game-card-art--placeholder{background:var(--surface);color:var(--muted2)}.g-game-card-lock{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;background:#0d0d1fa6;display:flex;align-items:center;justify-content:center;font-size:13px}.g-game-card-body{padding:10px 12px}.g-game-card-title{font-size:13px;font-weight:800;color:var(--text)}.g-game-card-tag{font-size:11px;color:var(--muted);margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.g-game-card--disabled{cursor:default;opacity:.5}.g-game-card--disabled:hover{transform:none;border-color:var(--border);box-shadow:none}@media (max-width: 640px){.g-hero{min-height:180px;padding:20px;border-radius:18px}.g-game-card{flex:0 0 120px}.g-game-card-art{height:120px;font-size:36px}}@keyframes g-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes g-pop-in{0%{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}@keyframes g-bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}@keyframes g-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.g-pulse{animation:g-pulse 1s ease infinite}.g-pop-in{animation:g-pop-in .35s cubic-bezier(.34,1.56,.64,1) both}.g-slide-up{animation:g-slide-up .3s ease both}.g-chat-bubble{background:var(--surface);border:1px solid var(--border);border-radius:12px 12px 12px 4px;padding:8px 12px;font-size:13px;line-height:1.45;max-width:240px}@media (max-width: 900px){.g-lobby-grid,.g-room-grid,.g-setup-grid{grid-template-columns:1fr!important}}.g-mobile-chat-toggle{display:none!important}.g-mobile-chat{display:none}.g-desktop-chat{display:block}@media (max-width: 900px){.g-mobile-chat-toggle{display:flex!important;width:100%}.g-mobile-chat.g-mobile-chat--open{display:block}.g-desktop-chat{display:none!important}}@media (max-width: 640px){header .g-btn-ghost{padding:6px 12px;font-size:11px}header .g-icon-btn{width:38px;height:38px;padding:0}main{padding:16px 12px!important}.g-card{padding:16px;border-radius:16px}.g-chat-bubble{max-width:80vw}}select.g-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238b8bb8' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.checkers-setup-page,.checkers-play-page{display:grid;gap:18px;max-width:560px;margin:0 auto}.checkers-start-card{display:grid;gap:14px}.checkers-cover{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.checkers-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.checkers-picker-button{min-width:0;min-height:70px;display:grid;align-content:center;gap:4px;border:1.5px solid var(--border);border-radius:14px;background:#ffffff0e;color:var(--text);font-family:inherit;cursor:pointer;text-align:left;padding:12px}.checkers-picker-button:hover{border-color:#22d3ee8c;background:#22d3ee14}.checkers-picker-button:disabled{opacity:.45;cursor:not-allowed}.checkers-picker-button span{color:var(--muted);font-size:11px;font-weight:900}.checkers-picker-button b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:900}.checkers-selected-preview{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:10px;border:1.5px solid var(--border);border-radius:14px;background:#ffffff0a}.checkers-selected-preview>span{position:relative;width:72px;height:72px;border-radius:13px;background-size:cover;background-position:center;overflow:hidden}.checkers-selected-preview i{position:absolute;left:18px;top:18px;width:36px;height:36px;background-size:200% 200%;background-position:0 0;background-repeat:no-repeat;filter:drop-shadow(0 5px 7px rgba(0,0,0,.45))}.checkers-selected-preview b{display:block;font-size:15px;font-weight:900}.checkers-selected-preview small{display:block;min-width:0;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.25}.checkers-picker-modal{width:min(100%,420px)}.checkers-picker-list{display:grid;gap:8px}.checkers-picker-list button{min-height:56px;display:flex;align-items:center;gap:12px;border-radius:14px;border:1.5px solid var(--border);background:#ffffff0d;color:var(--text);font-family:inherit;font-size:14px;font-weight:900;cursor:pointer;padding:10px 12px;text-align:left}.checkers-picker-list button.is-active{border-color:var(--gold);background:#f59e0b24;color:var(--gold-light)}.checkers-piece-mini,.checkers-board-mini{flex:0 0 42px;width:42px;height:42px;border-radius:10px;background-size:cover;background-position:center;filter:drop-shadow(0 4px 7px rgba(0,0,0,.34))}.checkers-piece-mini{background-size:200% 200%;background-position:0 0}.checkers-mode-grid,.checkers-skin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checkers-mode-card,.checkers-skin-card{display:grid;gap:8px;min-height:132px;padding:16px;border-radius:16px;border:1.5px solid var(--border);background:#ffffff0d;color:var(--text);font-family:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,transform .08s}.checkers-mode-card:hover,.checkers-skin-card:hover{border-color:#22d3ee8c;background:#22d3ee14}.checkers-mode-card:active,.checkers-skin-card:active{transform:translateY(2px)}.checkers-mode-card.is-active,.checkers-skin-card.is-active{border-color:var(--gold);background:#f59e0b1f;box-shadow:0 0 0 3px #f59e0b14}.checkers-mode-card strong{font-size:16px;font-weight:900}.checkers-mode-card small{color:var(--muted);font-size:12px;line-height:1.35}.checkers-option-card{display:grid;gap:12px}.checkers-section-title{font-size:13px;color:var(--teal);font-weight:900}.checkers-segment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.checkers-segment button{min-height:46px;border-radius:12px;border:1.5px solid var(--border);background:#ffffff0d;color:var(--muted);font-family:inherit;font-weight:900;cursor:pointer}.checkers-segment button.is-active{border-color:var(--teal);background:#22d3ee24;color:var(--teal)}.checkers-skin-card{grid-template-columns:76px minmax(0,1fr);align-items:center;min-height:98px;text-align:left}.checkers-skin-card span:last-child{font-size:13px;font-weight:900;line-height:1.2}.checkers-skin-preview{position:relative;width:76px;height:76px;border-radius:14px;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.1);overflow:hidden}.checkers-skin-preview i{position:absolute;left:20px;top:20px;width:36px;height:36px;background-size:200% 200%;background-position:0 0;background-repeat:no-repeat;filter:drop-shadow(0 5px 7px rgba(0,0,0,.45))}.checkers-play-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.checkers-board-wrap{width:100%;display:grid;justify-content:center}.checkers-board-cols{display:flex;margin-left:24px;margin-bottom:4px}.checkers-board-row{display:flex;align-items:flex-start}.checkers-board-rows{display:flex;flex-direction:column;margin-right:4px}.checkers-board-grid{background-size:100% 100%;background-position:center;border:3px solid rgba(92,58,30,.95);border-radius:14px;overflow:hidden;box-shadow:0 18px 48px #00000057}.checkers-cell{box-shadow:inset 0 0 0 1px #0000002e}.checkers-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--cell-texture);background-size:800% 800%;background-position:var(--cell-texture-x) var(--cell-texture-y);opacity:.18;mix-blend-mode:soft-light;pointer-events:none}@media (max-width: 700px){.checkers-setup-page,.checkers-play-page{gap:14px}.checkers-quick-grid{grid-template-columns:1fr 1fr;gap:8px}.checkers-picker-button{min-height:64px;padding:10px}.checkers-picker-button b{font-size:13px}.checkers-mode-grid,.checkers-skin-grid{grid-template-columns:1fr}.checkers-mode-card{min-height:104px}.checkers-play-top{grid-template-columns:1fr 1fr}.checkers-play-top>div{grid-column:1 / -1;order:-1}.checkers-board-cols,.checkers-board-rows{display:none}.checkers-board-grid{border-radius:12px;border-width:2px}}.memory-page{display:grid;gap:20px;max-width:560px;margin:0 auto}.memory-start-card,.memory-options-card{display:grid;gap:16px}.memory-start-card{background:linear-gradient(180deg,#22d3ee14,#f59e0b0d),var(--card)}.memory-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.memory-custom-btn{min-width:118px;border:none;border-radius:16px;background:linear-gradient(160deg,#c4b5fd,#a78bfa 52%,#7c3aed);color:#fff;box-shadow:0 5px 0 var(--purple-dark),0 8px 24px #a78bfa47;font-family:inherit;font-size:14px;font-weight:900;cursor:pointer}.memory-custom-btn span{display:block;font-size:18px;line-height:1;margin-bottom:4px}.memory-custom-btn:active{transform:translateY(3px);box-shadow:0 2px 0 var(--purple-dark),0 4px 12px #a78bfa2e}.memory-custom-content{display:grid;gap:16px}.memory-field-label{display:block;font-size:13px;font-weight:800;margin-bottom:8px;color:var(--text)}.memory-select{min-height:48px}.memory-cover{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.memory-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.memory-how div{display:grid;gap:5px;justify-items:center;min-height:78px;align-content:center;border:1.5px solid var(--border);border-radius:12px;background:#ffffff0d;padding:10px;text-align:center}.memory-how b{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#22d3ee24;color:var(--teal);font-size:15px;font-weight:900}.memory-how span{color:var(--muted);font-size:11px;line-height:1}.mg-grid{display:grid;gap:10px}.mg-card{aspect-ratio:1 / 1;cursor:pointer;perspective:600px}.mg-card-inner{position:relative;width:100%;height:100%;transition:transform .4s;transform-style:preserve-3d}.mg-card--flipped .mg-card-inner{transform:rotateY(180deg)}.mg-card-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:12px;backface-visibility:hidden;overflow:hidden;font-size:28px}.mg-card-back{background:#151526;border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 0 0 2px #00000029}.mg-card-front{background:var(--card-hover);border:1px solid var(--teal);transform:rotateY(180deg)}.mg-card-front img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.mg-card-back-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.mg-card-fallback{width:100%;height:100%;align-items:center;justify-content:center;font-size:13px;color:var(--muted);text-align:center}@media (max-width: 640px){.g-modal-backdrop{padding:18px;align-items:center}.g-modal{padding:16px;max-height:calc(100vh - 44px);border-radius:18px}.memory-custom-modal{width:min(100%,354px)}.memory-custom-content{gap:14px}.memory-custom-content .g-btn{padding-left:10px;padding-right:10px;white-space:normal;line-height:1.15;min-height:44px}.memory-page{gap:16px}.memory-how{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.memory-how div{min-height:70px;padding:8px 5px}.memory-how span{font-size:10px}.memory-actions{grid-template-columns:1fr}.memory-custom-btn{min-height:58px;width:100%}.memory-custom-btn span{display:inline;margin:0 6px 0 0}.mg-grid{gap:6px}.mg-card-face{font-size:18px;border-radius:8px}}.runner-page{display:grid;gap:20px;max-width:560px;margin:0 auto}.runner-center{max-width:480px;text-align:center}.runner-start-card{display:grid;gap:16px}.runner-cover{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.runner-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.runner-how div{display:grid;gap:5px;justify-items:center;min-height:88px;align-content:center;border:1.5px solid var(--border);border-radius:12px;background:#ffffff0d;padding:10px;text-align:center}.runner-how b{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:#f59e0b24;color:var(--gold-light);font-size:17px;font-weight:900}.runner-how span{color:var(--muted);font-size:11px;line-height:1.2}.runner-play{display:grid;gap:12px;width:min(100%,460px);margin:0 auto}.runner-play--focus{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;grid-template-rows:auto minmax(0,1fr) auto;width:100%;max-width:none;height:100vh;height:100dvh;margin:0;padding:max(10px,env(safe-area-inset-top)) 12px max(10px,env(safe-area-inset-bottom));overflow:hidden;overscroll-behavior:none;background:#0d0d1f}.runner-play--focus:fullscreen{background:#0d0d1f}.runner-focus-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:min(100%,460px);margin:0 auto}.runner-focus-topbar .runner-hud{min-width:0}.runner-stage{display:grid;place-items:center;min-height:0;overflow:hidden}.runner-play--focus .runner-canvas{width:min(calc(100vw - 24px),calc((100dvh - 154px)*.65625),420px);height:auto;max-height:100%}.runner-play--focus .runner-controls{width:min(100%,460px);margin:0 auto}.runner-hud{display:flex;justify-content:space-between;align-items:center;gap:12px}.runner-canvas{width:min(100%,420px,44.625vh);height:auto;aspect-ratio:420 / 640;justify-self:center;border-radius:16px;border:1.5px solid var(--border);touch-action:none;cursor:pointer;background:var(--surface);box-shadow:0 14px 40px #00000047}.runner-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px}.runner-controls--single{grid-template-columns:minmax(0,220px);justify-content:center}.runner-pad{min-height:72px;border:none;border-radius:22px;font-family:inherit;font-size:17px;font-weight:900;cursor:pointer;touch-action:none;transition:transform .08s ease,box-shadow .08s ease}.runner-pad span{display:block;font-size:24px;line-height:1;margin-bottom:4px}.runner-pad .runner-pad-icon{margin:0;font-size:34px;line-height:1}.runner-pad:active{transform:translateY(4px)}.runner-pad--jump{background:linear-gradient(160deg,#fcd34d,#f59e0b 58%,#d97706);color:#1a0a00;box-shadow:0 7px 0 var(--gold-dark),0 10px 26px #f59e0b47}.runner-pad--jump:active{box-shadow:0 3px 0 var(--gold-dark),0 5px 12px #f59e0b2e}.runner-pad--duck{background:linear-gradient(160deg,#67e8f9,#22d3ee 55%,#0891b2);color:#001a20;box-shadow:0 7px 0 var(--teal-dark),0 10px 26px #22d3ee38}.runner-pad--duck:active{box-shadow:0 3px 0 var(--teal-dark),0 5px 12px #22d3ee24}.pixel-rush-page{max-width:600px}.pixel-rush-title{color:var(--gold-light);font-size:25px;font-weight:900;line-height:1.15}.pixel-rush-subtitle,.pixel-play-subtitle{color:var(--teal);font-size:12px;font-weight:900;text-transform:uppercase}.pixel-preview{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border:2px solid rgba(255,255,255,.14);border-radius:8px;background-color:#76a8b8;background-repeat:repeat;background-size:112px 112px;image-rendering:pixelated}.pixel-preview:before{content:"";position:absolute;inset:auto 0 0;height:34%;background:#754638;border-top:14px solid #75bd45;box-shadow:inset 0 5px #a7d95d}.pixel-preview-character,.pixel-preview-fruit{position:absolute;z-index:2;display:block;background-repeat:no-repeat;image-rendering:pixelated}.pixel-preview-character{left:18%;bottom:27%;width:96px;height:96px;background-size:1200% 100%;background-position:45.45% 0}.pixel-preview-fruit{right:24%;top:26%;width:50px;height:50px;background-size:1700% 100%;background-position:31.25% 0}.pixel-preview-spikes{position:absolute;z-index:2;right:11%;bottom:27%;width:58px;height:58px;image-rendering:pixelated}.pixel-character-label{color:var(--muted);font-size:13px;text-align:center}.pixel-character-label b{color:var(--text)}.pixel-character-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pixel-character-btn{display:grid;place-items:center;min-width:0;height:66px;padding:0;border:2px solid var(--border);border-radius:8px;background:#ffffff0b;cursor:pointer}.pixel-character-btn span{display:block;width:54px;height:54px;background-repeat:no-repeat;background-size:1100% 100%;background-position:0 0;image-rendering:pixelated}.pixel-character-btn.is-active{border-color:var(--gold);background:#f59e0b1f;box-shadow:inset 0 0 0 2px #f59e0b1f}.pixel-best{color:var(--gold-light);font-size:13px;font-weight:900;text-align:center}.pixel-login-note{color:var(--muted);font-size:12px;text-align:center}.pixel-canvas{image-rendering:pixelated;border-radius:8px;border-color:#ffffff2e}.pixel-play-title{color:var(--text);font-size:15px;font-weight:900}.pixel-live-score{color:var(--gold-light);font-size:18px;font-weight:900}.pixel-live-score small{color:var(--muted);font-size:11px}.pixel-jump-btn{border-radius:8px}.pixel-jump-btn small{display:block;margin-top:3px;font-size:9px;font-weight:900}.pixel-gameover-card{display:grid;gap:8px;border-radius:8px}.pixel-gameover-title{color:#f87171;font-size:20px;font-weight:900}.pixel-final-score{color:var(--gold-light);font-size:48px;font-weight:900;line-height:1}.pixel-final-label{color:var(--muted);font-size:12px}.pixel-gameover-actions{display:grid;gap:8px}@media (max-width: 640px){.runner-page,.runner-play{gap:16px}.runner-how{grid-template-columns:1fr}.runner-canvas{width:min(100%,420px,42vh);border-radius:14px}.runner-pad{min-height:68px;border-radius:18px}.pixel-preview-character{width:78px;height:78px;bottom:25%}.pixel-preview-spikes{width:48px;height:48px;bottom:25%}.pixel-preview-fruit{width:42px;height:42px}.pixel-character-btn{height:58px}.pixel-character-btn span{width:48px;height:48px}.pixel-canvas,.pixel-jump-btn{border-radius:8px}}.numbers-page{display:grid;gap:20px;max-width:560px;margin:0 auto}.numbers-center{max-width:480px;text-align:center}.numbers-start-card{display:grid;gap:16px}.numbers-cover{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.numbers-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.numbers-how div{display:grid;gap:5px;justify-items:center;min-height:78px;align-content:center;border:1.5px solid var(--border);border-radius:12px;background:#ffffff0d;padding:10px;text-align:center}.numbers-how b{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#22d3ee24;color:var(--teal);font-size:15px;font-weight:900}.numbers-how span{color:var(--muted);font-size:11px;line-height:1}.numbers-tile{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;border-radius:14px;font-family:inherit;font-weight:900;line-height:1}.numbers-hud{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:12px}.numbers-board{display:grid;grid-template-columns:repeat(var(--numbers-cols, 4),minmax(0,1fr));gap:10px}.numbers-tile{min-width:0;min-height:0;border:1.5px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;font-size:30px;box-shadow:0 5px #00000059;transition:transform .08s ease,border-color .12s,background .12s,box-shadow .12s}.numbers-tile:disabled{cursor:default}.numbers-tile:not(:disabled):active{transform:translateY(3px);box-shadow:0 2px #00000059}.numbers-board.is-revealing .numbers-tile{border-color:#fcd34d73;background:#f59e0b0f;color:var(--gold-light)}.numbers-tile.is-active{animation:numbers-pop .18s ease both;border-color:var(--gold);background:#f59e0b38;color:var(--gold-light);box-shadow:0 0 28px #f59e0b38,0 5px #00000059}.numbers-tile.is-selected{border-color:#4ade808c;background:#4ade8024;color:var(--green)}.numbers-tile.is-wrong{border-color:#f87171bf;background:#f871712e;color:var(--red)}@media (max-width: 640px){.numbers-page{gap:16px}.numbers-how{grid-template-columns:1fr}.numbers-board{gap:7px}.numbers-tile{border-radius:10px;font-size:24px}}@keyframes numbers-pop{0%{transform:scale(.72)}to{transform:scale(1)}}.recall-page{display:grid;gap:20px;max-width:560px;margin:0 auto}.recall-center{max-width:480px;text-align:center}.recall-cover-card{display:grid;gap:16px}.recall-cover{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.recall-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.recall-mode-btn{display:grid;gap:4px;align-content:center;min-height:74px;border:1.5px solid var(--border);border-radius:12px;background:#ffffff0d;color:var(--text);font-family:inherit;cursor:pointer;padding:10px}.recall-mode-btn span{font-size:14px;font-weight:900}.recall-mode-btn small{color:var(--muted);font-size:11px;line-height:1.25}.recall-mode-btn.is-active{border-color:var(--teal);background:#22d3ee1f;box-shadow:0 0 0 3px #22d3ee14}.recall-hud{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:12px}.recall-reveal-card,.recall-answer-card{display:grid;gap:14px;justify-items:center}.recall-status{font-size:13px;color:var(--muted);font-weight:800}.recall-sequence{min-height:84px;display:flex;align-items:center;justify-content:center;font-size:clamp(34px,8vw,62px);font-weight:900;color:var(--gold-light);letter-spacing:.16em;text-align:center}.recall-sequence.is-hidden{color:var(--muted2);letter-spacing:.3em}.recall-spoken-progress{display:flex;justify-content:center;gap:7px}.recall-spoken-progress span{width:9px;height:9px;border-radius:999px;background:var(--border-hi)}.recall-spoken-progress span.is-active{background:var(--gold-light);box-shadow:0 0 12px #fcd34d8c}.recall-answer-slots{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(34px,1fr));gap:8px}.recall-slot{aspect-ratio:1 / 1;min-height:42px;display:flex;align-items:center;justify-content:center;border-radius:10px;border:1.5px solid var(--border);background:var(--surface);color:var(--text);font-size:24px;font-weight:900}.recall-slot.is-right{border-color:#4ade8099;background:#4ade8024;color:var(--green)}.recall-slot.is-wrong{border-color:#f87171b3;background:#f8717129;color:var(--red)}.recall-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.recall-key{min-height:58px;border:none;border-radius:14px;background:linear-gradient(160deg,#67e8f9,#22d3ee,#0891b2);color:#001a20;box-shadow:0 5px 0 var(--teal-dark),0 8px 24px #22d3ee33;font-family:inherit;font-size:24px;font-weight:900;cursor:pointer}.recall-key:active{transform:translateY(3px);box-shadow:0 2px 0 var(--teal-dark)}.recall-key--soft{background:#ffffff0f;color:var(--muted);border:1.5px solid var(--border);box-shadow:0 4px #00000059;font-size:15px}.recall-result-lines{display:grid;gap:4px;font-size:13px;color:var(--muted)}.recall-result-lines b{color:var(--text)}@media (max-width: 640px){.recall-page{gap:16px}.recall-mode-grid{grid-template-columns:1fr}.recall-key{min-height:54px;border-radius:12px}.recall-sequence{min-height:70px}}.hover\:bg-emerald-500:hover{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-600:hover{--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}
