/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size: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;--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%;-moz-tab-size:4;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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.order-1{order:1}.hidden{display:none}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition\!{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))!important;transition-duration:var(--tw-duration,var(--default-transition-duration))!important}}:root{--cream:#f6eedb;--sage:#7bae73;--dark-sage:#3f5e3b;--navy:#31435b;--wood:#8b6b4a;--amber:#e5a94e;--ink:#2b3330;--paper:#fffaef;--pixel-border:#8b6b4a;--shadow-step:4px 4px 0 #c9bc9d;--dialog-panel:#fffaef;--tile:4px;--text-ink:#2b3330;--accent:#3f5e3b;color:var(--ink);background:var(--cream);font-synthesis:none;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:16px;line-height:1.7}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--navy);outline-offset:5px}img{max-width:100%;image-rendering:pixelated;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;font-weight:800;line-height:1.35}h1{font-size:40px}h2{font-size:26px}h3{font-size:20px}p{margin-top:16px}header{border-bottom:2px solid #cbbf9f;justify-content:space-between;align-items:center;max-width:1200px;margin:auto;padding:25px 0 20px;display:flex}header nav{gap:28px;font-size:14px;font-weight:600;display:flex}header nav a{align-items:center;min-height:44px;display:flex}.brand{letter-spacing:.03em;align-items:center;gap:12px;font-size:23px;font-weight:850;display:flex}.brand-mark{background:var(--sage);border:3px solid var(--dark-sage);width:26px;height:28px;box-shadow:3px 3px 0 var(--wood);display:block;position:relative}.brand-mark:after{content:"";background:var(--cream);width:5px;height:5px;box-shadow:9px 0 0 var(--cream),0 9px 0 var(--cream),9px 9px 0 var(--cream);position:absolute;top:4px;left:3px}.demo-bar{color:#5b624e;text-align:center;background:#e9e7d3;border-bottom:1px solid #d6cfb7;padding:10px 16px;font-size:12px}main{max-width:1200px;min-height:60dvh;margin:0 auto;padding:48px 0 72px}.eyebrow{letter-spacing:.12em;color:var(--dark-sage);margin:0 0 18px;font-size:13px;font-weight:700}.hero{grid-template-columns:.8fr 1.2fr;align-items:center;gap:44px;padding:18px 0 60px;display:grid}.hero h1{letter-spacing:-.06em;font-size:clamp(38px,4.3vw,60px);line-height:1.25}.hero .subtitle{color:#565d4e;max-width:360px;margin:25px 0 30px;font-size:16px;line-height:1.9}.pixel-button{border:2px solid var(--wood);background:var(--paper);min-height:48px;color:var(--ink);box-shadow:3px 3px 0 var(--wood);white-space:nowrap;border-radius:0;justify-content:center;align-items:center;gap:14px;padding:10px 22px;font-size:15px;font-weight:700;transition:transform .1s,box-shadow .1s;display:inline-flex}.pixel-button:hover{box-shadow:4px 4px 0 var(--wood);background:#eee5ce;transform:translate(-1px,-1px)}.pixel-button:active{box-shadow:none;transform:translate(3px,3px)}.pixel-button.primary{background:var(--dark-sage);color:#fffaef;border-color:#293f2b;box-shadow:4px 4px #b5be92}.pixel-button.primary:hover{background:#314d30}.pixel-button.quiet{box-shadow:none;background:0 0;border-color:#c1b393;font-weight:500}.hero-art{border:3px solid var(--wood);background:#e3d8b5;position:relative;box-shadow:7px 7px #d6c8a7}.hero-art>img{aspect-ratio:16/9;width:100%}.building-label{border-bottom:2px solid var(--wood);background:#fffaef;justify-content:space-between;gap:10px;padding:12px 16px;font-size:13px;font-weight:700;display:flex}.building-label span{font-size:12px;font-weight:400}.art-caption{border-top:2px solid var(--wood);color:#435b40;background:#e0dec4;justify-content:space-between;gap:12px;padding:12px 16px;font-size:12px;display:flex}.commuter{transform-origin:bottom;position:absolute;bottom:17%;left:46%;transform:scale(1.5)}.sprite{width:32px;height:48px;image-rendering:pixelated;background-repeat:no-repeat;background-size:192px 48px;display:block}.portrait{width:64px;height:64px;image-rendering:pixelated;background-repeat:no-repeat;background-size:384px 64px;display:block}.section-heading{margin:0 0 26px}.section-heading p{color:#626753;margin-top:10px;font-size:14px}.scene-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.scene-entry{border:2px solid var(--wood);background:var(--paper);transition:transform .15s;display:block;box-shadow:3px 3px #d1c19e}.scene-entry:hover{transform:translateY(-3px)}.preview{border-bottom:2px solid var(--wood);position:relative;overflow:hidden}.preview img{aspect-ratio:16/9;width:100%}.room-no{color:var(--paper);background:var(--navy);padding:2px 7px;font-family:monospace;font-size:12px;position:absolute;top:8px;left:8px}.entry-copy p{color:#62604e;min-height:48px;margin:12px 0 20px;font-size:13px;line-height:1.8}.entry-copy>span{color:var(--dark-sage);justify-content:space-between;font-size:12px;display:flex}.how{border-top:2px solid #c8be9f;grid-template-columns:.7fr 1.3fr;gap:48px;margin-top:70px;padding-top:40px;display:grid}.how h2{max-width:270px;font-size:29px}.steps{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.steps h3{margin:14px 0 8px;font-size:18px}.steps p{color:#656550;margin-top:0;font-size:13px}.step-number{color:var(--wood);border-bottom:3px solid var(--sage);padding-bottom:4px;font-family:monospace;font-size:24px;line-height:1}.result-teaser{grid-template-columns:.8fr 1.2fr;align-items:center;gap:80px;margin-top:40px;padding:72px 0;display:grid}.result-teaser>div:last-child{max-width:510px}.result-teaser h2{font-size:32px}.result-teaser p{color:#626550}.sample-badge{border:5px double var(--wood);outline:3px solid var(--amber);background:var(--paper);text-align:center;width:100%;max-width:320px;margin:auto;padding:28px 24px;transform:rotate(-3deg);box-shadow:8px 8px #d6c8a7}.sample-badge .portrait{transform-origin:50%;margin:10px auto 30px;transform:scale(1.5)}.sample-badge small{color:#6a704d;font-size:12px}.sample-badge h3{margin:12px 0;font-size:28px}.sample-badge p{color:var(--navy);font-size:16px}.sample-badge>span{color:#717461;margin-top:28px;font-size:11px;display:block}.muted{color:#626650;font-size:13px;line-height:1.8}.text-link{color:var(--dark-sage);text-underline-offset:6px;min-height:44px;padding-top:12px;font-size:14px;font-weight:700;text-decoration:underline;display:inline-block}.faq{border-top:2px solid #cbbf9f;max-width:850px;margin:36px auto 0;padding-top:36px}.faq h2{margin-bottom:25px}.faq details{border-bottom:1px solid #cdc3a5;padding:16px 0}.faq summary{cursor:pointer;min-height:30px;font-weight:650}.faq details p{color:#60634f;margin:12px 20px 12px 0;font-size:14px}footer{color:#60634f;border-top:2px solid #cbbf9f;align-items:center;gap:24px;max-width:1200px;margin:auto;padding:24px 0 34px;font-size:12px;display:flex}footer span{margin-left:auto}footer a{padding:10px 0}.page-intro{max-width:760px;margin-bottom:32px}.page-intro>p:not(.eyebrow){color:#64654e}.record-line{border-left:4px solid var(--sage);background:#e5e5cf;justify-content:space-between;gap:16px;margin-top:26px;padding:10px 16px;font-size:13px;display:flex}.record-line b{color:var(--dark-sage);margin-left:16px;font-family:monospace;font-size:20px}.select-grid{grid-template-columns:repeat(2,1fr);gap:30px}.select-grid h2{font-size:23px}.select-grid .entry-copy{padding:24px}.select-grid .entry-copy p{min-height:0}.select-grid .preview img{object-fit:cover;max-height:290px}.room-status{background:var(--paper);border:2px solid var(--wood);color:var(--dark-sage);padding:3px 10px;font-size:12px;position:absolute;bottom:10px;right:10px}.final-gate{text-align:center;background:#e9e8d3;border:3px dashed #a9b58b;margin-top:48px;padding:32px}.final-gate p{margin:12px 0 22px;font-size:14px}.final-gate>span{color:#626550;font-size:14px}.paper{border:2px solid var(--wood);background:var(--paper);box-shadow:var(--shadow-step);padding:28px}.paper h2{margin-bottom:16px;font-size:23px}.paper ul{padding-left:24px;list-style:square}.paper li{margin:10px 0}.game-page{padding-top:25px}.game-top{flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:22px;display:flex}.game-top h1{flex:1;font-size:21px}.game-top a{align-items:center;min-height:44px;font-size:13px;display:flex}.game-top>span{color:var(--dark-sage);font-family:monospace;font-size:17px;font-weight:700}.game-layout{grid-template-columns:1.05fr 1fr;align-items:start;gap:34px;display:grid}.game-visual{position:sticky;top:20px}.stage{border:3px solid var(--wood);background:var(--navy);position:relative;overflow:hidden}.stage>img{aspect-ratio:16/9;width:100%}.stage-actor{transform-origin:bottom;animation:2.5s steps(2,end) infinite breathe;position:absolute;bottom:14%;transform:scale(2)}.stage-actor.player{left:39%}.stage-actor.npc{bottom:21%;left:69%}.stage-wechat-group .npc{bottom:16%;left:26%}.stage-actor.witness{bottom:19%;left:21%}.stage-clock{border:2px solid var(--wood);background:#fffaef;padding:1px 8px;font-family:monospace;font-size:12px;position:absolute;top:10px;right:12px}.stage-note{color:var(--dark-sage);justify-content:space-between;padding:13px 0;font-size:13px;display:flex}.pixel-progress{grid-template-columns:repeat(18,1fr);gap:4px;display:grid}.pixel-progress i{background:#d3c8aa;border:1px solid #a69c80;height:10px}.pixel-progress i.filled{background:var(--dark-sage);border-color:var(--dark-sage)}.game-tip{color:#68684f;margin-top:18px;font-size:12px}.intro-paper p{line-height:1.9}.intro-paper .pixel-button{margin-top:25px}.dialog-window{background:var(--dialog-panel);border:3px solid var(--wood);min-height:226px;padding:20px 24px;box-shadow:inset 0 0 0 3px #e5d3af,4px 4px #ccbc99}.speaker{align-items:center;gap:16px;display:flex}.speaker .portrait{flex-shrink:0}.speaker>span{color:var(--dark-sage);font-size:16px;font-weight:750}.speaker small{color:#6c715a;margin-top:3px;font-size:11px;font-weight:400;display:block}.dialogue{margin-top:17px;font-size:18px;line-height:1.8}.inner-os{color:#68694f;border-top:1px dashed #c9c09f;margin-top:18px;padding-top:10px;font-size:13px}.options{gap:12px;margin-top:24px;display:grid}.option{text-align:left;background:var(--paper);border:2px solid #ab9871;align-items:center;gap:15px;min-height:65px;padding:13px 18px;font-size:15px;line-height:1.65;transition:transform .1s,background .1s;display:flex;box-shadow:3px 3px #d0c19d}.option span{width:26px;height:26px;color:var(--dark-sage);background:#e5e9d5;border:1px solid #7a8d64;flex-shrink:0;justify-content:center;align-items:center;font-family:monospace;font-size:14px;font-weight:700;display:flex}.option:hover{border-color:var(--dark-sage);background:#ebebd9}.option:active{box-shadow:none;transform:translate(3px,3px)}.response-next{background:#e6e9d4;justify-content:space-between;align-items:center;gap:16px;margin-top:28px;padding:20px;display:flex}.response-next p{margin:0;font-size:13px}.error{color:#843629;background:#f4ded3;border-left:4px solid #a04032;margin-top:20px;padding:12px;font-size:14px}.back{min-height:44px;margin-bottom:24px;font-size:13px;display:inline-block}.identity-panel{border:3px solid var(--dark-sage);background:#e3e7d1;grid-template-columns:200px 1fr;gap:35px;padding:35px;display:grid;box-shadow:6px 6px #bdc6a0}.identity-art{background:var(--cream);border:2px solid #8a9d73;flex-direction:column;justify-content:center;align-items:center;gap:42px;padding:35px 20px 20px;display:flex}.identity-art .portrait{transform:scale(2)}.identity-art>span{color:var(--dark-sage);font-size:12px}.identity-panel .eyebrow{margin-bottom:12px;font-size:12px}.identity-panel h1{color:var(--navy);font-size:40px}.identity-panel p{font-size:14px}.identity-panel .roast{font-size:19px;font-weight:600;line-height:1.8}.report-actions{flex-wrap:wrap;align-items:center;gap:18px;margin:32px 0;display:flex}.report-actions>span{font-size:13px}.report-body{grid-template-columns:1fr 1fr;gap:26px;display:grid}.dimensions{gap:19px;margin-top:26px;display:grid}.dimension>div:first-child{justify-content:space-between;font-size:14px;display:flex}.dimension b{color:var(--dark-sage);font-family:monospace;font-size:18px}.blocks{grid-template-columns:repeat(19,1fr);gap:3px;margin-top:7px;display:grid}.blocks i{background:#ddd5ba;height:12px}.blocks i.filled{background:var(--dark-sage)}.evidence{margin-top:24px}.evidence>p:first-child{color:#61664f;font-size:13px}.evidence blockquote{border-left:3px solid var(--sage);margin:12px 0;padding-left:13px;font-size:15px;font-weight:600}.evidence .muted{font-size:12px}.strength-risk{grid-template-columns:1fr 1fr;gap:26px;margin-top:26px;display:grid}.strength-risk ul{font-size:14px}.rational{margin-top:26px}.rational>p{font-size:15px}.scene-badges{grid-template-columns:repeat(4,1fr);gap:15px;margin-top:28px;display:grid}.scene-badges>div{text-align:center;background:#e9ecd9;border:2px solid #aeb695;padding:14px 12px;font-size:12px}.scene-badges b,.scene-badges span{display:block}.scene-badges span{margin-top:8px}.replies{margin-top:26px}.replies>div{border-top:1px dashed #cabb97;align-items:start;gap:22px;margin-top:20px;padding-top:20px;display:flex}.replies>div>span{color:var(--wood);font-family:monospace;font-size:20px}.replies p{margin:0;font-size:16px}.disclaimer{color:#696b56;max-width:800px;margin:26px 0;font-size:12px}.report-bottom{flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px;font-size:13px;display:flex}.poster-preview{border:2px solid var(--wood);background:#e6e4d1;margin-bottom:30px;padding:20px}.poster-preview summary{cursor:pointer;font-size:14px}.poster-preview img{max-width:300px;margin:20px auto}.redeem-page{max-width:780px}.ticket{border:3px solid var(--wood);background:var(--paper);padding:42px;position:relative}.ticket-label{color:var(--dark-sage);border-bottom:2px dashed #c4b58f;margin-bottom:26px;padding-bottom:20px;font-size:12px;display:block}.ticket h1{font-size:32px}.ticket>p{font-size:14px}.notice{border-left:4px solid var(--sage);background:#ebead6;margin:24px 0;padding:17px;font-size:14px}.notice p{margin:8px 0 0;font-size:13px}.ticket form{margin:28px 0}.ticket label{margin-bottom:10px;font-size:14px;font-weight:650;display:block}input:not([type=file]){background:var(--cream);border:2px solid var(--wood);width:100%;min-height:50px;color:var(--ink);border-radius:0;padding:13px 15px}input::placeholder{color:#73725e}.demo-code{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0 20px;font-size:12px;display:flex}.demo-code code{font-size:13px}.demo-code button{min-height:40px;padding:3px 12px;font-size:12px}.backup{margin-top:30px}.backup p{margin-bottom:20px;font-size:13px}.file-label{margin-top:22px;font-size:14px;display:block}.file-label input{max-width:100%;min-height:44px;margin-top:12px;font-size:13px;display:block}.legal{max-width:850px;margin:40px auto}.legal h1{font-size:32px}.legal h2{margin-top:30px}.legal p{font-size:14px}.legal>.pixel-button{margin-top:28px}.loading{min-height:50dvh;color:var(--dark-sage);justify-content:center;align-items:center;display:flex}@keyframes breathe{50%{translate:0 -1px}}@media(min-width:1400px){.hero{padding-top:25px;padding-bottom:70px}}@media(max-width:1260px){header,footer,main{margin:0 30px}.redeem-page,.legal{margin-left:auto;margin-right:auto}.hero{gap:30px}.scene-grid{gap:16px}}@media(max-width:900px){.hero{grid-template-columns:.8fr 1.2fr;gap:22px}.hero h1{font-size:40px}.scene-grid{grid-template-columns:repeat(2,1fr);gap:24px}.desktop-break{display:none}.entry-copy p{min-height:0}.how{grid-template-columns:1fr;gap:30px}.how h2{max-width:none}.result-teaser{gap:35px}.game-layout{grid-template-columns:1fr 1fr;gap:22px}.stage-actor{transform:scale(1.5)}.identity-panel{grid-template-columns:150px 1fr;gap:25px;padding:26px}.identity-panel h1{font-size:32px}.scene-badges{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){:root{font-size:15px}header{margin:0 18px;padding:12px 0}.brand{gap:9px;font-size:18px}.brand-mark{width:23px;height:25px}header nav{gap:15px;font-size:12px}.demo-bar{padding:7px 10px;font-size:10px}main{margin:0 18px;padding:30px 0 48px}h1{font-size:31px}h2{font-size:24px}.hero{flex-direction:column;align-items:stretch;gap:30px;padding:0 0 38px;display:flex}.hero-copy{position:relative}.hero .eyebrow{margin-bottom:16px;font-size:11px}.hero h1{font-size:39px;line-height:1.25}.hero h1 br.desktop-break{display:none}.hero .subtitle{max-width:330px;margin:20px 0 24px;font-size:14px;line-height:1.8}.hero-art{box-shadow:4px 4px #d6c8a7}.building-label{padding:9px 10px;font-size:11px}.building-label span{font-size:10px}.art-caption{padding:10px;font-size:10px}.commuter{transform:scale(1.25)}.section-heading h2{font-size:24px}.section-heading p{font-size:13px}.scene-grid{gap:14px}.scene-entry{box-shadow:2px 2px #d1c19e}.entry-copy{padding:12px}.entry-copy h3{font-size:17px}.entry-copy p{min-height:40px;margin:8px 0 14px;font-size:11px;line-height:1.8}.entry-copy>span{font-size:10px}.room-no{font-size:10px;top:5px;left:5px}.how{gap:25px;margin-top:42px;padding-top:30px}.how h2{font-size:24px}.steps{grid-template-columns:1fr;gap:18px}.steps>div{grid-template-columns:40px 1fr;column-gap:18px;display:grid}.step-number{grid-row:span 2;align-self:start;margin-top:5px;padding-bottom:6px;font-size:22px}.steps h3{margin:0 0 6px;font-size:18px}.steps p{font-size:13px}.result-teaser{flex-direction:column;align-items:stretch;gap:45px;margin-top:20px;padding:50px 0 30px;display:flex}.sample-badge{max-width:270px;padding:20px}.sample-badge h3,.result-teaser h2{font-size:26px}.result-teaser p{font-size:14px}.faq{margin-top:36px;padding-top:28px}.faq h2{font-size:24px}.faq summary{font-size:14px}.faq details p{font-size:13px}footer{flex-wrap:wrap;gap:0 22px;margin:0 18px;padding:18px 0 28px}footer span{width:100%;margin:8px 0 0;font-size:11px}.select-grid{grid-template-columns:1fr;gap:24px}.select-grid .entry-copy{padding:20px}.select-grid h2{font-size:23px}.select-grid .entry-copy p{font-size:13px}.select-grid .preview img{max-height:none}.page-intro{margin-bottom:24px}.page-intro .eyebrow{font-size:11px}.page-intro>p:not(.eyebrow){font-size:13px}.record-line{align-items:center;padding:8px 12px;font-size:11px}.record-line b{margin-left:8px;font-size:17px}.final-gate{margin-top:30px;padding:24px 18px}.final-gate h2{font-size:22px}.final-gate p{font-size:13px}.game-page{padding-top:14px}.game-top{grid-template-columns:1fr auto;gap:9px;margin-bottom:12px;display:grid}.game-top>a{grid-column:span 2;min-height:32px;font-size:12px}.game-top h1{font-size:19px}.game-top>span{font-size:14px}.game-layout{grid-template-columns:1fr;gap:16px}.game-visual{position:static}.stage-actor{transform:scale(1.5)}.stage-note{padding:9px 0;font-size:11px}.game-tip{display:none}.pixel-progress{gap:3px}.pixel-progress i{height:7px}.dialog-window{min-height:190px;padding:15px 17px}.speaker{gap:12px}.speaker .portrait{margin:-4px;transform:scale(.85)}.speaker>span{font-size:14px}.speaker small{font-size:10px}.dialogue{margin-top:11px;font-size:16px;line-height:1.8}.options{gap:10px;margin-top:18px}.option{gap:12px;min-height:62px;padding:12px;font-size:15px;line-height:1.6}.option span{width:25px;height:25px}.paper{padding:22px}.intro-paper h2{font-size:23px}.intro-paper p{font-size:15px}.intro-paper .muted{font-size:12px}.response-next{margin-top:20px;padding:16px;display:block}.response-next .pixel-button{width:100%;margin-top:14px}.report-page{padding-top:14px}.back{margin-bottom:12px}.identity-panel{text-align:center;flex-direction:column;gap:28px;padding:25px 22px;display:flex}.identity-art{gap:30px;min-width:150px;margin:auto;padding:25px 15px 15px}.identity-art .portrait{transform:scale(1.5)}.identity-panel .eyebrow{font-size:10px}.identity-panel h1{font-size:31px}.identity-panel .roast{font-size:17px}.identity-panel p{font-size:13px}.report-actions{gap:13px;margin:26px 0}.report-actions .pixel-button{padding:9px 14px;font-size:13px}.report-body,.strength-risk{grid-template-columns:1fr;gap:20px}.report-body h2,.strength-risk h2{font-size:22px}.report-bottom{gap:15px}.scene-badges{gap:10px}.scene-badges>div{padding:12px 8px}.replies p{font-size:14px}.replies>div{gap:15px}.ticket{padding:25px 22px}.ticket h1{font-size:28px}.ticket>p{font-size:13px}.redeem-page,.legal{margin:0 18px}.legal{margin-top:28px}.ticket-label{font-size:11px}.demo-code{gap:6px}.demo-code code{font-size:12px}.backup h2{font-size:22px}.disclaimer{font-size:11px}}@media(max-width:374px){header nav{gap:9px;font-size:11px}.brand{font-size:16px}.hero h1{font-size:36px}.pixel-button{padding:10px 17px}.game-top h1{font-size:17px}.report-actions .pixel-button{padding:9px 11px;font-size:12px}.record-line{flex-wrap:wrap}.stage-actor{transform:scale(1.35)}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{header,.demo-bar,footer,.report-actions,.report-bottom,.back{display:none}.report-page{max-width:none;margin:0}.paper,.identity-panel{box-shadow:none;break-inside:avoid}}@media(max-width:640px){.hero h1{font-size:clamp(28px,8.6vw,34px)}.hero-second{white-space:nowrap}}.group-thread{border:2px solid var(--wood);background:var(--paper);margin-top:20px;padding:15px;font-size:12px}.group-thread summary{cursor:pointer;min-height:30px;color:var(--dark-sage);font-weight:700}.group-thread>div{background:#e9ecd9;margin-top:12px;padding:10px}.group-thread p{margin-top:5px}.story-memory{color:#5d674c;border-left:3px solid var(--sage);margin-top:16px;padding:10px;font-size:12px}:root{--cream:#fff7e8;--sage:#88c77d;--dark-sage:#35664d;--paper:#fffdf5;--wood:#987044;--amber:#f7bc61;--dialog-panel:#fffdf5;--shadow-step:4px 4px 0 #e5ccaa}.hero-art,.sample-badge{box-shadow:6px 6px #efd6b0}.scene-entry{box-shadow:4px 4px #e8cfaa}.entry-copy{background:#fffdf5}.scene-entry:first-child{border-color:#8493ba}.scene-entry:nth-child(2){border-color:#d6a05f}.scene-entry:nth-child(3){border-color:#74af93}.scene-entry:nth-child(4){border-color:#78abc4}.room-no{background:#486783}.how,.faq,footer,header{border-color:#e5d3b4}.final-gate,.identity-panel{background:#edf5dc}.immersive-shell>header,.immersive-shell>.demo-bar,.immersive-shell>footer{display:none}.immersive-shell{background:#d7ecdf;min-height:100dvh}.game-page{--scene-accent:#438968;--scene-soft:#e7f5df;--scene-border:#6d936f;isolation:isolate;flex-direction:column;justify-content:space-between;max-width:none;min-height:100dvh;margin:0;padding:22px 28px 24px;display:flex;position:relative;overflow:hidden}.game-wechat-group{--scene-accent:#586fac;--scene-soft:#eeecff;--scene-border:#8493bf}.game-leader-talk{--scene-accent:#936331;--scene-soft:#fff0d4;--scene-border:#c99c60}.game-meeting-crisis{--scene-accent:#377695;--scene-soft:#e7f6fb;--scene-border:#78aec4}.game-page .game-top{z-index:3;border:3px solid var(--scene-border);background:#fffdf5f5;flex-wrap:nowrap;gap:22px;width:min(1160px,100%);margin:0 auto 18px;padding:10px 18px;position:relative;box-shadow:4px 4px #31435b25}.game-page .game-top h1{color:var(--scene-accent);font-size:21px}.game-page .game-top>span{color:var(--scene-accent)}.game-layout{width:min(1160px,100%);margin:0 auto;padding-top:clamp(170px,29dvh,320px);display:block;position:static}.game-visual{position:static}.game-page .stage{z-index:-2;background:var(--scene-soft);border:0;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.game-page .stage>img{aspect-ratio:auto;object-fit:cover;object-position:50% 50%;width:100%;height:100%;image-rendering:pixelated}.game-page .stage:after{content:"";pointer-events:none;background:linear-gradient(#0000 35%,#fff8df30);position:absolute;top:0;right:0;bottom:0;left:0}.game-page .stage-actor{transform-origin:top;z-index:1;filter:drop-shadow(0 3px #31435b35);animation:none;top:27%;bottom:auto;transform:scale(3)}.game-page .stage-actor.player{left:43%}.game-page .stage-actor.npc{top:24%;left:62%}.game-page .stage-actor.witness{top:27%;left:25%}.game-page .stage-wechat-group .player{top:26%;left:49%}.game-page .actor-name{border:1px solid var(--scene-border);white-space:nowrap;color:var(--scene-accent);background:#fffdf5;padding:1px 3px;font-size:4px;font-weight:700;line-height:1.4;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.actor-name{display:none}.game-page .actor-name{display:block}.game-page .stage-actor.acting{animation:.6s steps(4,end) both pixel-step}.game-page .stage-actor.acting .sprite{animation:.75s steps(3,end) 2 pixel-talk}.game-page .is-reacting .player:after{content:"";background:#7fcbe6;width:3px;height:4px;position:absolute;top:8px;right:-8px;box-shadow:0 -3px #dff7ff}.game-page .stage-clock{border-color:var(--scene-border);background:#fffdf5;padding:4px 10px;font-size:14px;top:103px;right:32px}.game-page .stage-note{z-index:1;color:var(--scene-accent);border:2px solid var(--scene-border);background:#fffdf5;gap:22px;width:max-content;max-width:100%;margin-bottom:8px;padding:5px 14px;position:relative}.game-page .pixel-progress{gap:4px;width:min(360px,100%);margin-bottom:12px}.game-page .pixel-progress i{border-color:var(--scene-border);background:#fffdf5;height:8px}.game-page .pixel-progress i.filled{background:var(--scene-accent);border-color:var(--scene-accent)}.game-page .game-tip,.game-page .story-memory{display:none}.game-page .group-thread{z-index:4;border-color:var(--scene-border);background:#fffdf5f5;width:250px;margin:0;padding:9px 12px;position:absolute;top:106px;right:28px}.game-page .group-thread summary{min-height:24px}.game-dialog{z-index:2;scrollbar-width:thin;scrollbar-color:var(--scene-border)#fffdf5;overscroll-behavior:contain;max-height:65dvh;padding:0 6px 6px;position:relative;overflow:auto}.game-page .dialog-window{border:3px solid var(--scene-border);min-height:0;box-shadow:inset 0 0 0 3px var(--scene-soft),4px 4px #31435b30;background:#fffdf5fa;padding:19px 26px;animation:.16s steps(3,end) dialog-enter;position:relative}.game-page .dialog-window:before{content:"";border-left:3px solid var(--scene-border);border-top:3px solid var(--scene-border);clip-path:polygon(0 0,100% 100%,0 100%);background:#fffdf5;width:18px;height:15px;position:absolute;top:-13px;left:42px}.game-page .speaker{gap:15px}.game-page .speaker .portrait{width:64px;height:64px;margin:-8px 0}.game-page .speaker>span{color:var(--scene-accent);font-size:15px}.game-page .speaker small{font-size:11px}.game-page .dialogue{margin:10px 0 0;font-size:19px;line-height:1.75}.game-page .inner-os{margin-top:10px;padding-top:8px;font-size:13px}.game-page .options{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.game-page .option{border-color:var(--scene-border);background:#fffdf5f5;min-height:66px;padding:12px 17px;box-shadow:3px 3px #31435b30}.game-page .option span{border-color:var(--scene-border);background:var(--scene-soft);color:var(--scene-accent)}.game-page .option:hover{background:var(--scene-soft);border-color:var(--scene-accent)}.game-page .pixel-button.primary{background:var(--scene-accent);border-color:var(--scene-border);box-shadow:3px 3px #31435b30}.game-page .response-next{border:2px solid var(--scene-border);background:#fffdf5f5;margin-top:14px;padding:12px 20px}.game-page .intro-paper{border-color:var(--scene-border);background:#fffdf5fa;max-width:600px;margin:auto}.game-page .intro-paper .eyebrow{color:var(--scene-accent)}.game-page .intro-paper>p{font-size:15px}@keyframes pixel-step{0%{translate:0}25%{translate:8px -3px}50%{translate:16px}75%{translate:24px -3px}to{translate:24px}}@keyframes pixel-talk{0%,to{translate:0}33%{translate:0 -1px}66%{translate:1px}}@keyframes dialog-enter{0%{translate:0 8px}to{translate:0}}@media(max-width:640px){.game-page{min-height:100dvh;padding:12px 12px 18px}.game-page .game-top{grid-template-columns:1fr auto;gap:2px 8px;margin:0;padding:8px 12px;display:grid}.game-page .game-top>a{grid-column:span 2;min-height:30px;font-size:12px}.game-page .game-top h1{font-size:17px}.game-page .game-top>span{font-size:13px}.game-layout{padding-top:150px}.game-page .stage>img{object-position:50% 50%}.game-page .stage-actor{top:21%;transform:scale(2)}.game-page .stage-actor.player{left:32%}.game-page .stage-actor.npc{top:20%;left:67%}.game-page .stage-actor.witness{top:21%;left:14%}.game-page .stage-wechat-group .player{top:22%;left:48%}.game-page .stage-clock{padding:1px 6px;font-size:12px;top:113px;right:15px}.game-page .stage-note{gap:18px;margin-bottom:6px;padding:3px 10px;font-size:11px}.game-page .pixel-progress{gap:3px;margin-bottom:10px}.game-page .pixel-progress i{height:6px}.game-dialog{max-height:calc(100dvh - 280px);padding:4px 3px}.game-page .dialog-window{padding:15px 17px}.game-page .speaker .portrait{margin:-10px -6px;transform:scale(.8)}.game-page .speaker>span{font-size:13px}.game-page .dialogue{margin-top:8px;font-size:16px;line-height:1.7}.game-page .speaker small{font-size:10px}.game-page .inner-os{font-size:12px}.game-page .options{grid-template-columns:1fr;gap:8px;margin-top:12px}.game-page .option{gap:12px;min-height:56px;padding:10px 12px;font-size:15px}.game-page .option span{width:24px;height:24px}.game-page .group-thread{width:170px;padding:5px 8px;font-size:10px;top:145px;right:12px}.game-page .group-thread summary{min-height:20px}.game-page .group-thread>div{margin-top:5px;padding:6px}.game-page .response-next{padding:12px}.game-page .intro-paper{padding:20px}.game-page .intro-paper h2{font-size:21px}.game-page .intro-paper .pixel-button{margin-top:18px}.game-page .intro-paper>p{font-size:14px}}@media(max-height:650px)and (min-width:641px){.game-layout{padding-top:130px}.game-page .stage-actor{top:23%;transform:scale(2)}.game-dialog{max-height:68dvh}}@media(prefers-reduced-motion:reduce){.game-page .stage-actor.acting,.game-page .stage-actor.acting .sprite,.game-page .dialog-window{animation:none}}.game-page .stage>picture{width:100%;height:100%;display:block}.game-page .stage>picture>img{object-fit:cover;width:100%;max-width:none;height:100%;image-rendering:pixelated}.game-page .stage-actor{top:44%}.game-page .stage-actor.npc{top:42%}.game-page .stage-actor.witness,.game-page .stage-wechat-group .player{top:44%}.game-page .group-thread{top:156px;right:28px}.game-page .stage-clock{top:110px}@media(max-width:640px){.game-page .stage-actor,.game-page .stage-actor.npc,.game-page .stage-actor.witness,.game-page .stage-wechat-group .player{top:28%}.game-page .group-thread{top:148px;right:12px}.game-page .stage-clock{top:108px}.game-page .stage>picture>img{object-position:50% 0}}:root{--cream:#fffcf1;--paper:#fffefa;--sage:#98db87;--wood:#aa7b50;--shadow-step:4px 4px 0 #f0dcb9;--dialog-panel:#fffefa}.demo-bar{background:#f2fae8}.entry-copy,.sample-badge{background:#fffefa}.identity-panel,.final-gate{background:#f1fbdf}.game-page .stage-actor.walking{left:var(--to-x);animation:1.15s steps(12,end) both scene-walk;translate:none}.game-page .stage-actor.walking:before{content:"";background-image:var(--walk-sheet);width:32px;height:48px;image-rendering:pixelated;background-size:128px 48px;animation:.28s steps(3,end) 4 walk-frames,1.15s step-end forwards walk-hide;position:absolute;top:0;right:0;bottom:0;left:0}.game-page .stage-actor.walking:after{display:none}.game-page .scene-action-cue{border:2px solid var(--scene-border);color:var(--scene-accent);z-index:2;white-space:nowrap;background:#fffefa;padding:6px 14px;font-size:13px;font-weight:700;position:absolute;top:19%;left:50%;transform:translate(-50%);box-shadow:3px 3px #52745620}.scene-action-prop{width:40px;height:48px;image-rendering:pixelated;z-index:1;transform-origin:50%;pointer-events:none;animation:.35s steps(4,end) .75s both prop-arrive;position:absolute;top:45%;left:52%;transform:scale(2)}.scene-action-prop i{display:block;position:absolute}.prop-phone{background:#96deec;border:3px solid #345476;width:20px;height:32px;top:46%;left:58%;box-shadow:2px 2px #52745640}.phone-screen{background:#f2ffff;top:3px;right:2px;bottom:6px;left:2px}.notification{background:#f48c86;width:6px;height:6px;top:0;right:-4px;box-shadow:0 0 0 2px #fff4d9}.signal{border-top:2px solid #f8be5d;border-bottom:2px solid #f8be5d;width:3px;height:10px;top:6px}.signal-one{left:-8px}.signal-two{right:-8px}.prop-phone .notification{animation:.6s steps(2,end) 3 message-pop}.prop-document,.prop-board,.prop-handoff{background:#fff8df;border:2px solid #ba925f;box-shadow:3px 3px #e5c092}.prop-document{top:47%;left:45%}.prop-board{background:#effbe4;width:49px;height:38px;top:43%;left:59%}.prop-handoff{animation:1.2s steps(8,end) both paper-handoff;top:47%;left:60%}.paper-line{background:#81b5c2;height:3px;left:6px}.line-one{width:24px;top:9px}.line-two{width:18px;top:17px}.line-three{width:22px;top:25px}.paper-stamp{background:#edab62;width:7px;height:7px;bottom:6px;right:5px;box-shadow:-2px 0 #ffe298}.prop-desk{background:#a2e9ee;border:3px solid #345476;width:43px;height:31px;top:44%;left:65%;box-shadow:0 4px #6b8cb0}.computer-screen{background:#efffff;top:3px;right:3px;bottom:3px;left:3px}.typing-pixel{background:#78b1d3;width:4px;height:4px;animation:.9s steps(3,end) 2 screen-type;top:8px;left:8px;box-shadow:7px 0 #78b1d3,14px 0 #78b1d3,0 8px #8ac891,7px 8px #8ac891}.prop-projector{background:#f7ffff;border:3px solid #78abc6;width:85px;height:48px;top:29%;left:50%;transform:scale(2)}.projector-bar{transform-origin:bottom;width:10px;animation:.9s steps(6,end) .5s both chart-build;bottom:7px}.bar-one{background:#75c6c0;height:14px;left:10px}.bar-two{background:#9eb9f0;height:23px;left:27px}.bar-three{background:#efbd71;height:31px;left:44px}.bar-four{background:#ef9b99;height:19px;left:61px}.prop-listen,.prop-present,.prop-exit{border:2px solid var(--scene-border);background:#fffefa;justify-content:center;align-items:center;gap:3px;width:29px;height:15px;display:flex;top:38%;left:61%}.prop-listen:after,.prop-present:after{content:"";border-bottom:2px solid var(--scene-border);border-right:2px solid var(--scene-border);background:#fffefa;width:5px;height:5px;position:absolute;bottom:-6px;left:8px}.prop-exit{display:none}.scene-action-prop .speech-dot{background:var(--scene-accent);width:3px;height:3px;position:static}@keyframes scene-walk{0%{left:var(--from-x)}to{left:var(--to-x)}}@keyframes walk-frames{0%{background-position-x:0}to{background-position-x:-96px}}@keyframes walk-hide{0%{opacity:1}to{opacity:0}}@keyframes expression-reveal{0%{opacity:0}to{opacity:1}}@keyframes prop-arrive{0%{opacity:0;translate:-22px}55%{opacity:0}75%,to{opacity:1;translate:0}}@keyframes paper-handoff{0%{opacity:0;left:44%}20%{opacity:1}to{opacity:1;left:60%}}@keyframes message-pop{50%{translate:0 -3px}}@keyframes screen-type{50%{width:18px}}@keyframes chart-build{0%{scale:1 0}to{scale:1}}@media(max-width:640px){.game-page .scene-action-cue{white-space:normal;text-align:center;max-width:92%;padding:4px 9px;font-size:11px;top:18%}.scene-action-prop{top:31%;transform:scale(1.5)}.prop-document,.prop-handoff{top:32%}.prop-board{top:29%}.prop-phone{top:30%;left:61%}.prop-desk{top:30%;left:66%}.prop-projector{top:22%;left:43%;transform:scale(1)}.prop-listen,.prop-present{top:25%;left:73%}}@media(prefers-reduced-motion:reduce){.game-page .stage-actor.walking{left:var(--to-x);animation:none}.game-page .stage-actor.walking .sprite{opacity:1;animation:none}.game-page .stage-actor.walking:before{display:none}.scene-action-prop{opacity:1;animation:none;translate:none}}.game-page .is-intro .scene-action-prop,.game-page .is-intro .scene-action-cue{display:none}.game-page .is-intro .player{left:18%}.game-page .is-intro .npc{left:82%}.game-page .scene-world{z-index:1;position:absolute;overflow:visible}.game-page .scene-world picture{width:100%;height:100%;display:block}.game-page .scene-world picture img{object-fit:fill;width:100%;max-width:none;height:100%;image-rendering:pixelated;display:block}.game-page .scene-world .stage-actor,.game-page .scene-world .stage-actor.npc,.game-page .scene-world .stage-actor.witness,.game-page .scene-world .stage-wechat-group .player{top:var(--feet-y);width:32px;height:48px;transform:translate(-50%,-100%)scale(var(--sprite-scale));transform-origin:bottom;filter:none;bottom:auto}.game-page .scene-world .stage-actor:after{content:"";z-index:-1;background:#52745645;width:19px;height:3px;display:block;position:absolute;bottom:-1px;left:7px}.game-page .scene-world .stage-actor.witness{left:23%}.game-page .scene-world .scene-action-prop{top:calc(var(--feet-y) - 10%);transform:scale(var(--sprite-scale))}.game-page .scene-world .prop-projector{top:17%;left:45%}.game-page .scene-world .prop-listen,.game-page .scene-world .prop-present{top:calc(var(--feet-y) - 22%)}.game-page .scene-world .npc{animation-duration:2.8s}.game-page .stage-actor.walking,.game-page .stage-actor.walking .sprite{animation-duration:2.6s}.game-page .stage-actor.walking:before{animation:.42s steps(3,end) 6 walk-frames,2.6s step-end forwards walk-hide}.game-page .scene-world .npc:before{animation:.45s steps(3,end) 6 walk-frames,2.8s step-end forwards walk-hide}@media(prefers-reduced-motion:reduce){.game-page .scene-world .stage-actor{animation:none}.game-page .scene-world .stage-actor .sprite{opacity:1;animation:none}.game-page .scene-world .stage-actor:before{display:none}}.game-page .stage{background:var(--scene-soft)}.game-page .stage:before{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0,#0000 59px,#ffffff60 59px,#ffffff60 63px),linear-gradient(0deg,#ffebcb 0,#ffebcb 45%,#0000 45%);position:absolute;top:0;right:0;bottom:0;left:0}.game-page .scene-world{border-bottom:5px solid #c5a479;overflow:hidden;box-shadow:0 6px #ead5b3}.game-page .scene-world picture img{object-fit:fill}.game-page .scene-world .stage-actor{z-index:3}.game-page .scene-world .stage-actor:after{display:block}.game-page .scene-world .scene-action-prop{z-index:2;max-width:90px;transform:scale(1.4)}.game-page .scene-world .prop-projector{top:12%;left:39%;transform:scale(1)}.game-page .scene-action-cue{z-index:3;padding:4px 12px;font-size:12px;top:108px}.game-page .stage-clock{z-index:3;top:110px}.game-page .stage-actor.walking .sprite{animation:2.6s step-end both expression-reveal}.game-page .scene-world .npc .sprite{animation-duration:2.8s}.game-page .remote-speaker{border:2px solid var(--scene-border);z-index:4;background:#fffef2;align-items:center;gap:6px;padding:6px;display:flex;position:absolute;top:8%;left:7%}.remote-speaker .portrait{margin:-13px;transform:scale(.6)}.remote-speaker span:last-child{color:var(--scene-accent);font-size:10px}.sound-control{z-index:20;color:#35664d;cursor:pointer;background:#fffef2;border:2px solid #608a65;min-height:44px;padding:6px 12px;font-size:12px;font-weight:700;position:fixed;top:85px;right:18px;box-shadow:3px 3px #e8d7b4}.immersive-shell>.sound-control{top:22px;right:28px}.game-page .game-top{width:min(1020px,100% - 150px);margin-left:0;margin-right:auto}.game-page .game-layout{width:min(1020px,100%)}.route-frame{animation:.4s ease-out both route-arrive}.route-frame:after{content:"";z-index:40;pointer-events:none;background:#fff9e7;animation:.45s cubic-bezier(.22,1,.36,1) both curtain-clear;position:fixed;top:0;right:0;bottom:0;left:0}@keyframes route-arrive{0%{opacity:.45}to{opacity:1}}@keyframes curtain-clear{0%{opacity:.65}to{opacity:0}}.game-page .dialog-window{animation:.3s cubic-bezier(.22,1,.36,1) dialog-soft}@keyframes dialog-soft{0%{opacity:.4;translate:0 8px}to{opacity:1;translate:0}}@media(max-width:640px){.sound-control{min-height:36px;padding:5px 8px;font-size:10px;top:76px;right:12px}.immersive-shell>.sound-control{min-height:38px;top:15px;right:17px}.game-page .game-top{width:100%;padding-right:95px}.game-page .game-top>span{grid-area:2/2}.game-page .scene-action-cue{max-width:60%;font-size:10px;top:105px}.game-page .stage-clock{top:106px}.game-page .scene-world .scene-action-prop{transform:scale(1)}.game-page .remote-speaker{padding:4px;top:10%;left:3%}.remote-speaker span:last-child{font-size:9px}.remote-speaker .portrait{margin:-16px;transform:scale(.5)}}@media(prefers-reduced-motion:reduce){.route-frame,.route-frame:after,.game-page .dialog-window{animation:none}.route-frame:after{display:none}.game-page .stage-actor.walking .sprite,.game-page .scene-world .npc .sprite{opacity:1;animation:none}}.hero-art{overflow:hidden}.commuter,.home-colleague{animation:1.8s steps(8,end) both welcome-step}.home-light{background:#fffbe3;width:8px;height:8px;animation:4s steps(2,end) infinite window-glow;position:absolute;top:28%;left:49%;box-shadow:0 0 0 4px #fff2a644}@keyframes welcome-step{0%{translate:-35px}to{translate:0}}@keyframes window-glow{50%{opacity:.5}}.home .hero-copy{animation:.5s ease-out both home-copy}@keyframes home-copy{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}.report-page{position:relative}.report-scenery{background:#e3f4d6;border:3px solid #9cbd87;height:185px;position:relative;overflow:hidden}.report-scenery>img{object-fit:cover;object-position:50% 65%;width:100%;height:100%;image-rendering:pixelated}.report-staff{transform-origin:bottom;gap:30px;animation:1.3s steps(8,end) both welcome-step;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)scale(1.65)}.report-page .identity-panel{background:#f1f9e4;border-top:0;margin-top:0;box-shadow:5px 5px #d7e4bb}.report-page .identity-art{background:#fffbe8;border:3px double #94af79}.report-page .pattern-badge{background:#fffefa;border:2px solid #bed0a7;padding:6px 13px;font-size:13px;display:inline-block}.report-index{background:#e9f4dd;border:2px solid #b4c798;gap:20px;margin-bottom:24px;padding:16px 20px;font-size:14px;font-weight:700;display:flex}.report-index a{color:#35664d;align-items:center;min-height:44px;display:flex}.report-page h2[id]{scroll-margin-top:25px}.scene-badges>div{padding:0 0 14px;overflow:hidden}.scene-badges img{object-fit:cover;width:100%;height:100px;margin-bottom:14px}.scene-badges b,.scene-badges span{padding:0 10px}.report-page .replies>div{background:#f2f8e9;border:1px solid #d4dfc1;margin-top:14px;padding:16px}.evidence{position:relative}.evidence blockquote{background:#edf6e4;border-left:4px solid #90bf75;padding:12px 15px}.strength-risk .paper:first-child{border-top:5px solid #88ba75}.strength-risk .paper:last-child{border-top:5px solid #e2af72}@media(max-width:640px){.report-scenery{height:145px}.report-staff{gap:20px;transform:translate(-50%)scale(1.3)}.report-index{justify-content:space-between;gap:12px;padding:8px 12px;font-size:12px}.report-page .pattern-badge{padding:5px 8px;font-size:12px}.scene-badges img{height:85px}.home-colleague{transform:scale(1.25)}}@media(prefers-reduced-motion:reduce){.commuter,.home-colleague,.home-light,.home .hero-copy,.report-staff{animation:none}}.game-page .scene-world .stage-actor.walking .sprite{opacity:1;animation:none}.game-page .scene-world .stage-actor.walking:before{z-index:2;pointer-events:none}.music-credit{z-index:4;color:#3b5748;background:#fffefa;border:1px solid #b6c9a6;padding:2px 7px;font-size:10px;position:absolute;top:82px;left:28px}.music-credit a{text-underline-offset:3px;text-decoration:underline}.track-credit{border-top:1px dashed #cbb994;margin:28px 0;padding-top:18px}.legal a:not(.pixel-button){text-decoration:underline}@media(max-width:640px){.music-credit{white-space:nowrap;max-width:calc(100% - 28px);font-size:8px;line-height:1.5;top:91px;left:14px;overflow:hidden}.game-page .scene-action-cue{top:113px}.game-page .stage-clock{top:114px}}.credential-details{border-top:1px dashed #ceb58d;margin-top:25px;padding-top:18px;font-size:13px}.credential-details summary{cursor:pointer;color:#3f6545;align-items:center;min-height:44px;display:flex}.credential-details p{margin:0 0 16px;font-size:12px}.credential-details input{min-height:44px;margin-top:10px;display:block}.ticket form .pixel-button{min-width:170px;margin-top:20px}.ticket form label{margin-top:18px}.site-shell>.sound-control{top:95px}@media(max-width:640px){.site-shell>.sound-control{top:70px}}.free-home .hero{background:#fff9e9;border-bottom:4px solid #c9d6ae;gap:32px;padding:32px 0 44px}.free-home .hero-copy h1{color:#344b45;letter-spacing:-2px;font-size:clamp(40px,5.2vw,72px);line-height:1.12}.free-home .hero-copy h1 span{color:#bc6644}.free-home .hero-art{border:4px solid #697b66;overflow:hidden;box-shadow:8px 8px #d3dec1}.free-home .hero-art img{width:100%;height:auto;image-rendering:pixelated;display:block}.free-home .hero-art .commuter{bottom:16%;left:37%}.home-colleague{transform-origin:bottom;position:absolute;bottom:16%;left:67%;transform:scale(2)}.free-home .art-caption{color:#4b6456;background:#fff9e9ee;padding:8px 12px;font-size:12px;bottom:0}.free-home .art-caption span:last-child{display:none}.free-home .scene-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.free-home .scene-entry{background:#fffcf2;border:3px solid #8a9479;padding:0;display:block;overflow:hidden;box-shadow:4px 4px #d9ddc9}.free-home .preview{position:relative}.free-home .preview img{width:100%;height:auto;image-rendering:pixelated;display:block}.room-no{color:#486056;background:#fff9e9;border:2px solid #768672;padding:3px 7px;font-weight:800;position:absolute;top:8px;left:8px}.entry-copy{padding:16px}.entry-copy h3{margin:0 0 8px;font-size:19px}.entry-copy p{min-height:48px;font-size:14px;line-height:1.7}.entry-copy>span{color:#496b59;justify-content:space-between;margin-top:14px;font-size:13px;font-weight:700;display:flex}.entry-dinner-gathering{--scene-color:#d99468}.entry-ktv-night{--scene-color:#ab98ce}.free-home .result-teaser{background:#eaf0dc;border:3px solid #97a77d;grid-template-columns:1fr 1.2fr;gap:32px;padding:32px;box-shadow:6px 6px #d2dcbf}.sample-badge{text-align:center;background:#fff9e9;border:3px solid #c2a67f;padding:24px;box-shadow:5px 5px #e0d1b5}.sample-badge .portrait{margin:0 auto 12px;display:block;transform:scale(1.2)}.sample-badge small,.sample-badge>span{color:#7b7666;font-size:12px;display:block}.free-home .faq{margin:56px 0 32px}.free-home .faq details{border-top:2px solid #d3d9bc;padding:18px 0}.free-home .faq summary{cursor:pointer;font-weight:700}.free-home .faq p{color:#626e57;line-height:1.8}.scene-select-grid .scene-card{background:#fffaf0;border:3px solid #97a17f;display:block;overflow:hidden;box-shadow:5px 5px #d7dfc8}.scene-select-grid .scene-card>img{width:100%;height:auto;image-rendering:pixelated;display:block}.scene-card-copy{padding:24px}.scene-card-copy h2{font-size:23px}.scene-card-copy .scene-status{color:#6b735c;margin:16px 0;font-size:13px;display:block}.scene-index{color:#a79067;font-size:13px;font-weight:800}.records-page>p{color:#66725c;line-height:1.8}.record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0;display:grid}.record-grid>a{color:#445c4e;background:#fffaf0;border:3px solid #a2ab8b;justify-content:space-between;padding:24px;text-decoration:none;display:flex;box-shadow:4px 4px #dce1c8}.records-page details{background:#f6f7e8;border:2px solid #b8c09c;margin:24px 0;padding:20px}.game-dinner-gathering{background:#f4d7bb}.game-ktv-night{background:#ddd4f3}.game-page .scene-world .prop-menu,.game-page .scene-world .prop-toast,.game-page .scene-world .prop-serve,.game-page .scene-world .prop-bill,.game-page .scene-world .prop-mic,.game-page .scene-world .prop-song,.game-page .scene-world .prop-duet,.game-page .scene-world .prop-applaud{width:32px;height:32px;top:calc(var(--feet-y) - 22%);box-shadow:none;transform:translate(-50%)scale(var(--sprite-scale));transform-origin:50%;background:0 0;border:0;animation:2.6s steps(12,end) both prop-arrive}.scene-action-prop>img{width:32px;height:32px;image-rendering:pixelated;display:block}.stage-ktv-night .scene-world:after{content:"";pointer-events:none;background:linear-gradient(130deg,#0000 40%,#ffd2ae18 41%,#0000 56%);animation:5s steps(5,end) infinite alternate ktv-lights;position:absolute;top:0;right:0;bottom:0;left:0}@keyframes ktv-lights{to{opacity:.3;transform:translate(6%)}}@media(max-width:800px){.free-home .scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.free-home .hero{gap:24px;padding:18px 0 32px}.free-home .hero-copy h1{font-size:46px}.free-home .result-teaser{gap:24px;padding:22px}.record-grid{grid-template-columns:1fr}}@media(max-width:520px){.free-home .entry-copy{padding:12px}.entry-copy h3{font-size:16px}.entry-copy p{min-height:60px;font-size:12px}.free-home .result-teaser{grid-template-columns:1fr}.home-colleague{transform:scale(1.5)}.scene-card-copy{padding:18px}}@media(prefers-reduced-motion:reduce){.stage-ktv-night .scene-world:after,.game-page .scene-world .scene-action-prop{animation:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
