@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-white:#fff;--spacing:.25rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.hidden{display:none}.inline-flex{display:inline-flex}.cursor-pointer{cursor:pointer}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.rounded-none{border-radius:0}.border-\[3px\]{border-style:var(--tw-border-style);border-width:3px}.border-\[var\(--line\)\]{border-color:var(--line)}.bg-white{background-color:var(--color-white)}.px-3{padding-inline:calc(var(--spacing)*3)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.text-\[var\(--ink\)\]{color:var(--ink)}.transition-\[filter\,box-shadow\,transform\]{transition-property:filter,box-shadow,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}}@font-face{font-family:Fusion Pixel CN;src:url(/fonts/fusion-pixel/FusionPixelCN-10px-monospaced-zh_hans.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}:root{--ink:#1a0626;--ink-80:#1a0626cc;--ink-50:#1a062680;--ink-20:#1a062633;--ink-10:#1a062614;--paper:#f0eaf5;--paper-warm:#f8f4fb;--panel-bg:#ffffffed;--orange:#ff7a2e;--orange-hot:#f50;--orange-soft:#fff0e4;--orange-glow:#ff7a2e4d;--teal:#5a9b92;--teal-glow:#5a9b9233;--gold:#ffc233;--gold-soft:#fffae6;--danger:#f35;--danger-soft:#ffe8ec;--bezel:#1a0626;--bezel-shine:#3d1850;--screen-glow:#ff7a2e0a;--cabinet:#0d0115;--line:#2f0838;--dot:#2f08381a;--shadow-sm:3px 3px 0 var(--line);--shadow-md:5px 5px 0 var(--line);--shadow-lg:8px 8px 0 var(--line)}*{box-sizing:border-box}html,body,#root{width:100%;max-width:100%;overflow-x:hidden}::selection{background:var(--orange);color:#fff}body{min-height:100vh;color:var(--ink);background:radial-gradient(ellipse at 50% 40%,transparent 30%,#1a06260d 100%),radial-gradient(circle at 1px 1px,var(--dot)1px,transparent 0)0 0/16px 16px,linear-gradient(170deg,#fbf9fd,#ece4f2);-webkit-font-smoothing:antialiased;margin:0;font-family:Chakra Petch,Fusion Pixel CN,sans-serif;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--ink-20);border-radius:3px}button,input{font-family:Chakra Petch,Fusion Pixel CN,sans-serif}h1,h2,h3,.marquee,.answer-reveal,.result-banner,.room-chip,button{letter-spacing:.06em;font-family:"Press Start 2P",Fusion Pixel CN,monospace}.lobby-page{background:radial-gradient(circle at 1px 1px,#ffffff09 1px,transparent 0)0 0/20px 20px,radial-gradient(ellipse at 50% 35%,#1c0c30 0%,var(--cabinet)70%);place-items:center;min-height:100vh;padding:32px 20px;display:grid;overflow-x:hidden}.lobby-card{border:6px solid var(--bezel);width:min(960px,100%);box-shadow:inset 0 0 80px #ff7a2e06,inset 0 0 200px #1a06260a,0 0 0 2px var(--bezel-shine),var(--shadow-lg),0 0 60px #ff7a2e0f,0 20px 60px #0d011566;background:radial-gradient(at 50% 40%,#ffffff80,#0000 70%),linear-gradient(175deg,#f8f3fc,#eee6f4,#e8ddf0);padding:44px 40px 0;animation:.55s cubic-bezier(.22,1,.36,1) crt-on;position:relative;overflow-x:hidden}.lobby-card:before{content:"";pointer-events:none;z-index:10;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#1a062605 3px 4px);position:absolute;inset:0}.lobby-card:after{content:"";pointer-events:none;z-index:11;background:linear-gradient(#0000,#ffffff0a 40%,#ffffff0f,#ffffff0a 60%,#0000);height:60px;animation:7s linear infinite crt-refresh;position:absolute;left:0;right:0}.lobby-card h1{color:var(--orange);text-shadow:3px 3px 0 var(--line),0 0 30px #ff7a2e40,0 0 60px #ff7a2e14;margin:0 0 6px;font-size:30px;line-height:1.5}.lobby-card>p{color:var(--ink-80);letter-spacing:.02em;margin:0 0 4px;font-family:VT323,Fusion Pixel CN,monospace;font-size:24px}.locale-row{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-top:18px;display:flex}.locale-field{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.locale-field>span{letter-spacing:.04em;color:var(--ink-50);font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:9px}.locale-field input{border:3px solid var(--line);width:220px;box-shadow:var(--shadow-sm);background:#fff;padding:10px 12px;font-size:15px;transition:border-color .15s,box-shadow .15s}.locale-field input:focus-visible{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft),var(--shadow-sm);outline:none}.locale-row .retro-select__trigger{min-width:140px;box-shadow:var(--shadow-sm);background-color:#fff}.forms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.stacked-form{border:3px solid var(--line);background:var(--paper-warm);box-shadow:var(--shadow-md);flex-direction:column;gap:12px;padding:20px;transition:transform .2s,box-shadow .2s;display:flex}.stacked-form:hover{box-shadow:7px 7px 0 var(--line);transform:translate(-2px,-2px)}.stacked-form h2{border-bottom:2px solid var(--ink-10);align-items:center;gap:8px;margin:0;padding-bottom:12px;font-size:12px;display:flex}.stacked-form h2:before{content:">";color:var(--orange);font-size:14px}.forms-grid>.stacked-form:last-child{justify-content:center}input,button{border:3px solid var(--line);color:var(--ink);background:#fff;outline:none;padding:10px 14px;font-size:16px;transition:border-color .15s,box-shadow .15s,transform .12s,background .15s}input:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft),0 0 14px #ff7a2e1a}.checkbox-field{color:var(--ink-80);cursor:pointer;align-items:center;gap:10px;font-size:13px;font-weight:700;display:flex}.checkbox-field input[type=checkbox]{appearance:none;border:3px solid var(--line);cursor:pointer;background:#fff;flex-shrink:0;width:22px;height:22px;margin:0;transition:background .12s,border-color .12s;position:relative}.checkbox-field input[type=checkbox]:hover{border-color:var(--orange)}.checkbox-field input[type=checkbox]:checked{background:var(--orange);border-color:var(--line)}.checkbox-field input[type=checkbox]:checked:after{content:"×";color:var(--ink);font-size:18px;font-weight:900;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.checkbox-field input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px var(--orange-soft)}.retro-select{display:inline-block;position:relative}.retro-select__trigger{border:3px solid var(--line);color:var(--ink);cursor:pointer;box-shadow:none;text-align:left;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%231a0626' stroke-width='2.5' fill='none' stroke-linecap='square'/%3E%3C/svg%3E") right 12px center no-repeat;justify-content:flex-start;align-items:center;min-width:120px;padding:10px 36px 10px 14px;font-family:Chakra Petch,Fusion Pixel CN,sans-serif;font-size:16px;font-weight:600;transition:border-color .15s,box-shadow .15s;display:inline-flex;position:relative}.retro-select__trigger:hover{box-shadow:none;filter:none;border-color:var(--orange);transform:none}.retro-select__trigger--open{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft)}.retro-select__trigger:disabled{opacity:.55;cursor:not-allowed}.retro-select__menu{z-index:100;border:3px solid var(--line);background:var(--paper-warm);box-shadow:var(--shadow-md);min-width:100%;animation:.12s ease-out menu-appear;position:absolute;top:calc(100% + 4px);left:0}.retro-select__option{width:100%;box-shadow:none;text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none;border-radius:0;padding:10px 14px;font-family:Chakra Petch,Fusion Pixel CN,sans-serif;font-size:15px;font-weight:600;display:block}.retro-select__option+.retro-select__option{border-top:2px solid var(--ink-10)}.retro-select__option:hover{background:var(--orange-soft);box-shadow:none;filter:none;transform:none}.retro-select__option--active{background:var(--orange);color:var(--ink)}.retro-select__option--active:hover{background:var(--orange);filter:brightness(1.06);box-shadow:none;transform:none}.stacked-form .retro-select,.stacked-form .retro-select__trigger{width:100%}button{cursor:pointer;background:var(--orange);box-shadow:var(--shadow-md);font-size:11px;font-weight:700;position:relative}button:hover{box-shadow:7px 7px 0 var(--line);filter:brightness(1.06);transform:translate(-2px,-2px)}button:active{box-shadow:2px 2px 0 var(--line);filter:brightness(.96);transform:translate(2px,2px)}button:disabled{opacity:.45;cursor:not-allowed;box-shadow:var(--shadow-md);filter:none!important;transform:none!important}.ghost-btn{border:3px solid var(--line);box-shadow:var(--shadow-sm);letter-spacing:.06em;background:0 0;padding:8px 14px;font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:10px}.ghost-btn:hover{background:var(--danger-soft);border-color:var(--danger);box-shadow:5px 5px 0 var(--danger)}.room-list-panel{border:3px solid var(--line);background:var(--paper-warm);box-shadow:var(--shadow-md);margin-top:22px;padding:16px}.room-list-panel h2{letter-spacing:.06em;border-bottom:none;align-items:center;gap:8px;margin:0;padding:0;font-size:11px;display:flex}.room-list-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.room-list-toggle:hover{color:var(--orange)}.room-list-arrow{color:var(--orange);font-size:10px;transition:transform .2s;display:inline-block}.room-list-arrow--open{transform:rotate(90deg)}.room-list-panel h2:before{content:none}.room-list{border-top:2px solid var(--ink-10);gap:8px;margin-top:12px;padding-top:12px;display:grid}.room-list-item{border:2px solid var(--ink-20);border-left:5px solid var(--orange);background:linear-gradient(135deg,#fff 0%,var(--paper-warm)100%);grid-template-columns:1fr auto;gap:4px 14px;padding:12px 14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.room-list-item:hover{border-color:var(--orange);border-left-color:var(--orange-hot);box-shadow:4px 4px 0 var(--ink-20);transform:translate(-1px,-1px)}.room-list-item-head{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.room-list-title{letter-spacing:.03em;margin:0;font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:10px;font-weight:700}.room-list-meta{letter-spacing:.03em;color:var(--ink-50);grid-column:1;font-family:VT323,Fusion Pixel CN,monospace;font-size:12px}.room-list-join-btn{text-align:center;letter-spacing:.04em;grid-area:2/2/4;place-self:center end;min-width:0;padding:8px 18px;font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:12px}.copy-btn{border:2px solid var(--ink-20);min-width:30px;box-shadow:2px 2px 0 var(--ink-10);color:var(--ink-50);background:#fff;padding:5px 8px;font-size:14px;line-height:1;transition:border-color .15s,color .15s,box-shadow .12s}.copy-btn:hover{border-color:var(--orange);color:var(--orange);box-shadow:3px 3px 0 var(--ink-20)}.room-chip-with-copy{align-items:center;gap:8px;display:inline-flex}.room-chip-with-copy .copy-btn{background:var(--paper);min-width:28px;padding:4px 7px;font-family:Chakra Petch,Fusion Pixel CN,sans-serif}.room-list-pagination{justify-content:flex-end;align-items:center;gap:10px;margin-top:14px;display:flex}.room-list-pagination span{color:var(--ink-50);font-family:VT323,Fusion Pixel CN,monospace;font-size:20px}.room-list-pagination button{border:2px solid var(--ink-20);color:var(--ink-80);letter-spacing:.04em;box-shadow:2px 2px 0 var(--ink-10);background:0 0;min-width:80px;padding:8px 14px;font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:10px}.room-list-pagination button:hover:not(:disabled){border-color:var(--orange);color:var(--orange);box-shadow:3px 3px 0 var(--ink-20);background:var(--orange-soft)}.room-list-pagination button:disabled{opacity:.35;box-shadow:1px 1px 0 var(--ink-10)}.lobby-card>.status-line{background:var(--ink);color:var(--orange);letter-spacing:.05em;border-top:3px solid var(--bezel-shine);text-shadow:0 0 10px var(--orange-glow);margin:28px -40px 0;padding:10px 40px;font-family:VT323,Fusion Pixel CN,monospace;font-size:20px;position:relative}.lobby-card>.status-line:before{content:"●";color:#2d5;text-shadow:0 0 8px #2d59;vertical-align:1px;margin-right:10px;font-size:10px}.lobby-card>.status-line:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#ffffff08 2px 4px);position:absolute;inset:0}.ai-mascot{background:var(--ink);z-index:20;width:80px;height:52px;box-shadow:0 -2px 0 var(--bezel-shine),0 -6px 20px #1a06264d;border-radius:6px 6px 0 0;justify-content:center;align-items:center;gap:10px;margin-inline:auto;animation:.4s cubic-bezier(.22,1,.36,1) .5s both mascot-pop;display:flex;position:absolute;top:-40px;left:0;right:0}.ai-mascot__eye{background:#fff;border-radius:50%;width:26px;height:26px;animation:4.5s ease-in-out infinite eye-blink;position:relative;overflow:hidden}.ai-mascot__eye--right{animation-delay:70ms}.ai-mascot__pupil{background:var(--orange);border-radius:2px;width:11px;height:11px;margin-left:-5.5px;animation:8s ease-in-out infinite pupil-look;position:absolute;bottom:3px;left:50%}.ai-mascot__eye--right .ai-mascot__pupil{animation-delay:-.15s}.ai-mascot--canvas{background:var(--line);width:58px;height:38px;box-shadow:none;opacity:1;z-index:2;border-radius:5px 5px 0 0;gap:8px;margin-inline:0;animation:12s ease-in-out infinite mascot-roam;position:absolute;top:-38px;left:20%;right:auto}.ai-mascot--canvas .ai-mascot__eye{width:18px;height:18px}.ai-mascot--canvas .ai-mascot__pupil{width:7px;height:7px;margin-left:-3.5px;bottom:2px}.attribution{border:2px solid var(--ink-20);border-left:5px solid var(--orange);text-align:center;box-shadow:2px 2px 0 var(--ink-10);background:linear-gradient(135deg,#fff9,#fff0e466);margin-top:24px;padding:16px 24px}.attribution__lead{color:var(--ink-80);margin:0 0 6px;font-size:16px;font-weight:600}.attribution a{color:var(--orange);text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #ff7a2e66;text-decoration:underline #ff7a2e66;text-decoration-thickness:2px;transition:color .15s,text-decoration-color .15s}.attribution a:hover{color:var(--orange-hot);-webkit-text-decoration-color:var(--orange-hot);text-decoration-color:var(--orange-hot)}.attribution__cta{color:var(--ink-50);margin:0;font-size:13px}.game-page{flex-direction:column;width:min(1360px,100%);height:100vh;margin:0 auto;padding:8px 16px 10px;display:flex;overflow:hidden}.game-page--drawing,.game-page--drawing :not(input):not(textarea):not(button){-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.game-page[data-ui-locale=zh-CN] .room-chip,.game-page[data-ui-locale=zh-CN] .locale-inline .retro-select__trigger,.game-page[data-ui-locale=zh-CN] .ghost-btn,.game-page[data-ui-locale=zh-CN] .panel h3{letter-spacing:.03em;font-size:12px}.game-page[data-ui-locale=zh-CN] .locale-inline .retro-select__trigger{text-align:center;justify-content:center}.game-page[data-ui-locale=zh-CN] .name-row{font-size:11px}.game-page[data-ui-locale=zh-CN] .meta-row{font-size:22px}.game-page[data-ui-locale=zh-CN] .primary-btn,.game-page[data-ui-locale=zh-CN] .answer-reveal{letter-spacing:.02em;font-size:15px}.game-page[data-ui-locale=zh-CN] .result-banner{font-size:18px}.game-page[data-ui-locale=zh-CN] .status-line{font-size:20px}.marquee{border:3px solid var(--line);background:var(--ink);color:var(--orange);box-shadow:var(--shadow-md);text-shadow:0 0 12px #ff7a2e80;flex-shrink:0;padding:10px 0;font-size:12px;position:relative;overflow:hidden}.marquee:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#ffffff08 2px 4px);position:absolute;inset:0}.marquee__track{white-space:nowrap;will-change:transform;animation:18s linear infinite marquee-scroll;display:inline-flex}.marquee__text{flex-shrink:0;padding-inline-end:4em}.top-row{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;min-width:0;margin-top:8px;display:flex}.room-chip{border:3px solid var(--line);background:var(--paper-warm);box-shadow:var(--shadow-sm);white-space:nowrap;align-items:center;min-width:0;min-height:48px;padding:8px 14px;font-size:10px;display:inline-flex}.room-chip-with-copy>span{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.top-row .ghost-btn{justify-content:center;align-items:center;min-height:48px;margin-left:auto;display:inline-flex}.locale-inline .retro-select__trigger{background-color:var(--paper-warm);min-width:110px;min-height:48px;box-shadow:var(--shadow-sm);letter-spacing:.06em;text-align:center;justify-content:center;padding:8px 34px 8px 14px;font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:10px}.game-grid{flex:1;grid-template-rows:1fr;grid-template-columns:260px minmax(300px,1fr) 260px;gap:10px;min-width:0;min-height:0;margin-top:10px;display:grid}.panel{border:4px solid var(--line);background:var(--panel-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-width:0;min-height:0;box-shadow:var(--shadow-md);flex-direction:column;padding:0;display:flex;overflow:hidden}.panel h3{background:var(--ink);color:var(--paper);text-transform:uppercase;letter-spacing:.1em;border-bottom:none;margin:0;padding:14px 16px;font-size:11px;position:relative}.panel h3:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#ffffff06 2px 4px);position:absolute;inset:0}.left-panel h3{text-shadow:0 0 8px #ff7a2e4d;background:linear-gradient(135deg,#1a0626,#2d1240)}.right-panel{background:linear-gradient(175deg,#eaeef8f2,#e4e9f6eb)}.right-panel h3{color:#8accc2;text-shadow:0 0 8px #8accc240;background:linear-gradient(135deg,#10232e,#152d38)}.guess-feed{flex:1;gap:0;min-height:0;padding:10px 14px;display:grid;overflow-y:auto}.guess-item{border-bottom:2px solid var(--ink-10);grid-template-columns:44px 1fr;align-items:center;gap:10px;padding:10px 0;display:grid}.guess-item:last-child{border-bottom:none}.avatar{border:3px solid var(--line);width:44px;height:44px;box-shadow:2px 2px 0 var(--line);background:linear-gradient(145deg,#fdf7ff,#efe0ff);border-radius:50%;place-items:center;font-size:13px;font-weight:700;transition:transform .2s;display:grid}.guess-item:hover .avatar{transform:rotate(-5deg)scale(1.06)}.name-row{letter-spacing:.03em;color:var(--ink-80);margin-bottom:4px;font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:9px}.bubble{border:2px solid var(--ink-20);background:#fff;border-radius:999px;align-items:center;min-height:28px;padding:4px 12px;font-family:VT323,Fusion Pixel CN,monospace;font-size:18px;transition:all .2s;display:inline-flex}.bubble.wrong{border-color:var(--danger);color:#8a1535;background:linear-gradient(135deg,#ffeaf0,#ffd3dd)}.bubble.correct{color:#1d5f35;background:linear-gradient(135deg,#ecffee,#d8f5e3);border-color:#19a34a;font-weight:600;box-shadow:0 0 14px #19a34a33}.guess-item--drawer{background:linear-gradient(135deg,#fff0e480,#ff7a2e0f);border-bottom-color:#0000;border-radius:6px;margin:2px -6px;padding:8px 6px}.guess-item--drawer .avatar{border-color:var(--orange);box-shadow:2px 2px 0 var(--orange);background:linear-gradient(145deg,#fff4e8,#ffe0c4);position:relative}.avatar__pen{filter:drop-shadow(1px 1px 0 var(--orange));font-size:14px;line-height:1;position:absolute;top:-6px;right:-6px}.bubble.drawer{border-color:var(--orange);color:var(--orange-hot);letter-spacing:.04em;background:linear-gradient(135deg,#fff4e8,#ffe8d4);font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:10px;font-weight:700}.center-stage{--stage-content-width:min(100%,520px);--canvas-content-width:min(var(--stage-content-width),max(250px, calc(100dvh - 470px) ));align-content:start;justify-items:center;gap:8px;width:100%;min-width:0;min-height:0;padding-top:42px;padding-bottom:12px;display:grid;overflow:hidden}.center-stage>.meta-row,.center-stage>.drawer-word,.center-stage>.guess-form,.center-stage>.primary-btn,.center-stage>.answer-reveal,.center-stage>.status-line{width:var(--stage-content-width)}.center-stage>.canvas-frame{width:var(--canvas-content-width);margin-bottom:10px}.center-stage>.status-line{text-align:center}.center-stage>.primary-btn+.answer-reveal,.center-stage>.answer-reveal+.primary-btn{margin-top:6px}.answer-reveal{text-align:center;background:linear-gradient(180deg,var(--orange)0%,var(--orange-hot)100%);min-width:0;color:var(--ink);border:4px solid var(--line);box-shadow:var(--shadow-lg);text-shadow:1px 1px #0000001f;letter-spacing:.04em;white-space:nowrap;padding:16px 24px;font-size:13px}.canvas-frame{border:8px solid var(--line);width:var(--canvas-content-width);box-shadow:var(--shadow-lg),inset 0 0 40px #1a06260a;background:#fff;padding:6px;position:relative}.canvas-frame:after{content:"";pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,#0000,#0000 4px,#1a062603 4px 8px);position:absolute;inset:6px}canvas{aspect-ratio:1;image-rendering:auto;border:1px solid var(--ink-10);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;cursor:crosshair;width:100%;display:block}.canvas-fullscreen-toggle{display:none}.center-stage--fullscreen{z-index:1200;box-sizing:border-box;background:#0d0115f7;width:100dvw;height:100dvh;padding:10px;position:fixed;inset:0;overflow:hidden}.center-stage--fullscreen .canvas-fullscreen-toggle{top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 10px);z-index:1201;white-space:nowrap;font-size:10px;position:fixed}.center-stage--fullscreen .canvas-frame{width:min(100dvw - 20px,100dvh - 150px,560px);margin:auto}.center-stage--fullscreen>:not(.canvas-fullscreen-toggle):not(.canvas-frame){display:none}.meta-row{color:var(--ink-80);flex-wrap:wrap;justify-content:space-between;gap:10px 18px;font-family:VT323,Fusion Pixel CN,monospace;font-size:20px;display:flex}.drawer-word{border:3px solid var(--gold);text-align:center;overflow-wrap:anywhere;max-width:100%;box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#fffde8,#fff7cc);padding:10px 18px;font-size:18px;font-weight:700;animation:2.5s ease-in-out infinite glow-gold}.guess-form{gap:8px;width:min(520px,100%);display:flex}.guess-form input{flex:1}.guess-form button{min-width:100px;box-shadow:var(--shadow-sm)}.guess-form button:hover{box-shadow:5px 5px 0 var(--line)}.primary-btn{letter-spacing:.04em;background:linear-gradient(180deg,var(--orange)0%,var(--orange-hot)100%);text-shadow:1px 1px #0000001f;min-width:0;box-shadow:var(--shadow-lg);padding:16px 24px;font-family:"Press Start 2P",Fusion Pixel CN,monospace;font-size:13px}.primary-btn:hover{box-shadow:10px 10px 0 var(--line)}.primary-btn:active{box-shadow:3px 3px 0 var(--line)}.ai-card{border:3px solid var(--teal);background:linear-gradient(145deg,#f3f5f9,#ebeff5);margin:14px;padding:16px;font-family:VT323,Fusion Pixel CN,Chakra Petch,monospace;font-size:22px;line-height:1.3;position:relative;box-shadow:3px 3px #14374633}.ai-card p:after{content:"█";color:var(--teal);margin-left:4px;font-size:.75em;animation:1s step-end infinite blink-cursor}.confidence{border:3px solid var(--teal);color:#2e5c54;letter-spacing:.06em;background:#5a9b9214;margin-top:14px;padding:6px 14px;font-family:VT323,Fusion Pixel CN,Chakra Petch,monospace;font-size:18px;display:inline-block}.rules-box{border:3px solid var(--ink-20);color:var(--ink-80);background:#ffffffb3;margin:0 14px 14px;padding:14px;font-family:VT323,Fusion Pixel CN,Chakra Petch,monospace;font-size:18px;line-height:1.5}.result-banner{border:4px solid var(--line);background:var(--ink);color:var(--orange);text-align:center;box-shadow:var(--shadow-lg);text-shadow:0 0 12px #ff7a2e66;flex-shrink:0;margin-top:10px;padding:12px 20px;font-size:16px;position:relative;overflow:hidden}.result-banner:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#ffffff06 2px 4px);position:absolute;inset:0}.result-banner.result-humans{color:#fc4;text-shadow:0 0 16px #ffcc4473;background:linear-gradient(135deg,#1a1200,#2d1e00);border-color:#5a4000;animation:1.5s ease-in-out infinite glow-win}.result-banner.result-ai{color:#f68;text-shadow:0 0 16px #ff668873;background:linear-gradient(135deg,#1a0018,#30002a);border-color:#4a0035;animation:1.5s ease-in-out infinite glow-lose}.status-line{color:var(--ink-80);margin-top:10px;font-family:VT323,Fusion Pixel CN,monospace;font-size:18px}.toast-stack{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;max-width:380px;display:flex;position:fixed;bottom:24px;right:24px}.toast{pointer-events:auto;border:3px solid var(--line);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);word-break:break-word;border-left-width:6px;max-width:min(92vw,380px);padding:12px 16px;font-size:14px;font-weight:600;line-height:1.4;animation:.3s cubic-bezier(.22,1,.36,1) forwards toast-slide-in;position:relative}.toast-success{color:#5a4000;background:linear-gradient(135deg,#fff8e6,#ffefcc);border-left-color:#c89000}.toast-error{color:#5a0020;background:linear-gradient(135deg,#ffe8ec,#ffd4dc);border-left-color:#c24}.toast-info{border-left-color:var(--ink);color:var(--ink);background:linear-gradient(135deg,#f0eaff,#e4d8ff)}@keyframes mascot-roam{0%,10%{left:15%}20%,30%{left:55%}40%,50%{left:75%}55%,65%{left:40%}70%,80%{left:10%}90%,to{left:15%}}@keyframes mascot-pop{0%{opacity:0;transform:translateY(8px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pupil-look{0%,12%{transform:translate(4px)}16%,28%{transform:translate(0)}32%,42%{transform:translate(-4px,1px)}46%,54%{transform:translateY(-1px)}58%,68%{transform:translate(3px,2px)}72%,84%{transform:translate(-2px)}88%,to{transform:translate(0)}}@keyframes eye-blink{0%,92%,to{transform:scaleY(1)}95%,97%{transform:scaleY(.08)}}@keyframes crt-on{0%{opacity:0;filter:brightness(4);transform:scaleY(.008)}35%{opacity:1;filter:brightness(1.4);transform:scaleY(1.04)}65%{filter:brightness(1.1);transform:scaleY(.99)}to{opacity:1;filter:brightness();transform:scaleY(1)}}@keyframes crt-refresh{0%{top:-8%}to{top:105%}}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes menu-appear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-badge{0%,to{box-shadow:var(--shadow-md);transform:scale(1)}50%{box-shadow:5px 5px 0 var(--line),0 0 16px #ff7a2e33;transform:scale(1.03)}}@keyframes glow-gold{0%,to{box-shadow:var(--shadow-sm),0 0 #ffc23300}50%{box-shadow:var(--shadow-sm),0 0 18px #ffc23340}}@keyframes glow-win{0%,to{box-shadow:var(--shadow-lg),0 0 20px #ffc2331a}50%{box-shadow:var(--shadow-lg),0 0 36px #ffc23340}}@keyframes glow-lose{0%,to{box-shadow:var(--shadow-lg),0 0 20px #ff66881a}50%{box-shadow:var(--shadow-lg),0 0 36px #ff668840}}@keyframes blink-cursor{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes toast-slide-in{0%{opacity:0;transform:translate(120%)}to{opacity:1;transform:translate(0)}}@media(max-width:1120px){.game-page{height:auto;overflow:visible}.game-grid{grid-template-rows:auto;grid-template-columns:1fr}.top-row{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"room players""locale leave";align-items:stretch;display:grid}.top-row>*{min-width:0}.top-row .room-chip-with-copy{grid-area:room}.top-row .room-chip:not(.room-chip-with-copy){grid-area:players;justify-content:center}.top-row .locale-inline{grid-area:locale}.top-row .locale-inline .retro-select__trigger{width:100%;min-width:0}.top-row .ghost-btn{grid-area:leave;width:100%;margin-left:0}.panel{min-height:auto}.guess-form{flex-direction:column}.forms-grid{grid-template-columns:1fr}.primary-btn{min-width:auto;width:var(--stage-content-width,min(100%,520px))}.lobby-card{padding:32px 24px 0}.lobby-card>.status-line{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}}@media(max-width:768px){.canvas-fullscreen-toggle{display:inline-flex}}@media(max-width:560px){.top-row{grid-template-columns:1fr;grid-template-areas:"room""players""locale""leave"}}@media(max-width:640px){.lobby-page{padding:16px 10px}.lobby-card{border-width:4px;padding:24px 16px 0}.lobby-card>.status-line{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.lobby-card h1{font-size:20px}.lobby-card>p{font-size:18px}.locale-row{flex-direction:column;align-items:flex-start}.locale-field input{width:100%}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}
