@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-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}@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-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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.contents{display:contents}.grow{flex-grow:1}.border{border-style:var(--tw-border-style);border-width:1px}.object-contain{object-fit:contain}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--ink:#05070d;--navy:#0a111d;--navy-2:#111b2a;--burgundy:#541222;--burgundy-light:#8d2438;--cream:#fff6dc;--muted:#b8c3cf;--cyan:#42e8f5;--cyan-deep:#0c8da1;--gold:#f2c75d;--gold-deep:#8e6321;--danger:#ff4961;--line:#5ee6f15c;--metal:linear-gradient(180deg, #263442 0%, #111a24 48%, #070c12 100%);--display:"Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#020307}body{min-height:100svh;color:var(--cream);font-family:var(--display);-webkit-font-smoothing:antialiased;background:radial-gradient(at 50% 12%,#2753643b,#0000 28rem),radial-gradient(at 50% 90%,#5f12222e,#0000 30rem),#020307;margin:0;font-size:14px;overflow-x:hidden}button,button,a{font:inherit}a{color:inherit;text-decoration:none}:where(h1,h2,h3,p,li,button,a,strong,span){line-break:strict;word-break:auto-phrase}:where(p,li){overflow-wrap:break-word;text-wrap:pretty}:where(h1,h2,h3,button,a,strong){overflow-wrap:normal;word-break:keep-all;text-wrap:balance}.text-line{display:block}button,[role=button]{touch-action:manipulation;cursor:pointer}button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{flex:none;width:1.35rem;height:1.35rem}.app-frame{isolation:isolate;background:var(--ink);width:min(100%,430px);min-height:100svh;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 0 1px #7ba4b438,0 0 90px #000000e6}.app-frame:after{content:"";z-index:100;pointer-events:none;background:linear-gradient(135deg,#42e8f5cc 0 2px,#0000 2px) 0 0/18px 18px no-repeat,linear-gradient(315deg,#f2c75db8 0 2px,#0000 2px) 100% 100%/18px 18px no-repeat;border:1px solid #90c8d62e;position:absolute;inset:0}.sound-toggle{min-width:52px;min-height:48px;color:var(--cyan);border:1px solid var(--line);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);background:#020a12f0;justify-content:center;align-items:center;gap:4px;padding:5px 8px;transition:color .2s,border-color .2s,background-color .2s;display:inline-flex}.sound-toggle span{font:800 12px/1 var(--mono);letter-spacing:.08em}.sound-toggle:hover{color:#fff;border-color:var(--cyan);background:#092230}.primary-button,.secondary-button,.share-button{letter-spacing:.04em;border:0;justify-content:center;align-items:center;gap:10px;width:100%;min-height:52px;font-size:14px;font-weight:900;transition:color .2s,background-color .2s,border-color .2s,filter .2s;display:flex}.primary-button{color:#031016;background:linear-gradient(180deg, #a4fbff, var(--cyan) 45%, #18bfcf);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);border:1px solid #c9fdff;box-shadow:inset 0 -5px 12px #00465238,0 0 24px #42e8f53d}.primary-button:hover{filter:brightness(1.12)}.primary-button--large{min-height:60px;font-size:17px}.secondary-button,.share-button{color:var(--cream);background:linear-gradient(#1c2631f0,#050a11f5);border:1px solid #f8f4e766}.secondary-button:hover,.share-button:hover{color:var(--cyan);border-color:var(--cyan)}.title-screen{min-height:100svh;padding:max(18px, env(safe-area-inset-top)) 18px max(20px, env(safe-area-inset-bottom));background:radial-gradient(at 50% 42%,#eec0591f,#0000 34%),linear-gradient(#070b13 0%,#160a13 68%,#05070b 100%);flex-direction:column;display:flex;position:relative}.title-screen>.sound-toggle{z-index:30;top:max(14px, env(safe-area-inset-top));position:absolute;right:14px}.title-noise{z-index:1;pointer-events:none;opacity:.22;background-image:radial-gradient(#ffffff24 .55px,#0000 .7px);background-size:5px 5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}.title-copy{z-index:5;text-align:center;padding-top:clamp(45px,7svh,66px);position:relative}.title-copy>p,.system-label,.result-header p{color:var(--cyan);font:800 12px/1.3 var(--mono);letter-spacing:.16em;margin:0 0 10px}.title-copy h1{color:var(--cream);letter-spacing:-.065em;-webkit-text-stroke:.8px var(--cream);text-shadow:4px 4px #7e1428,-2px -2px #0d8699,0 0 26px #42e8f53d;margin:0;font-size:clamp(2.25rem,11.5vw,3.05rem);font-weight:1000;line-height:.96;position:relative}.title-copy h1:before,.title-copy h1:after{content:attr(data-text);pointer-events:none;opacity:0;position:absolute;inset:0}.title-copy h1:before{color:var(--cyan);animation:.78s steps(2,end) title-channel;transform:translate(-4px)}.title-copy h1:after{color:var(--danger);animation:.78s steps(2,end) 40ms reverse title-channel;transform:translate(4px)}.title-copy h1 span{color:var(--gold);letter-spacing:.02em;margin-bottom:7px;font-size:.64em;display:block}.title-rule{align-items:center;gap:8px;max-width:330px;margin:16px auto 0;display:flex}.title-rule i{background:linear-gradient(90deg, transparent, var(--cyan));flex:1;height:1px}.title-rule i:last-child{transform:scaleX(-1)}.title-rule b{letter-spacing:.09em;text-shadow:0 2px #000,0 0 12px #42e8f540;font-size:16px;font-weight:950}.title-stage{z-index:3;background:#100b0a;border-top:1px solid #f2c75d33;border-bottom:1px solid #42e8f538;flex:1;min-height:276px;margin:11px -18px 8px;position:relative;overflow:hidden}.title-stage-art,.stage-background,.howto-stage-art{object-fit:cover}.title-stage-art{object-position:50% 53%;filter:saturate(.9)brightness(.74)contrast(1.05)}.title-stage-vignette{z-index:2;background:radial-gradient(at 50% 55%,#0000 35%,#000000b8 100%);position:absolute;inset:0}.title-cast{z-index:4;justify-content:center;align-items:flex-end;height:77%;display:flex;position:absolute;bottom:12px;left:9%;right:9%}.title-cast .stage-character{filter:drop-shadow(0 11px 8px #000000e6);width:34%;height:100%}.title-cast .stage-character:nth-child(2){height:96%;margin:0 -3%}.title-stage-caption{z-index:6;font:800 12px/1 var(--mono);align-items:center;gap:7px;display:flex;position:absolute;bottom:9px;left:12px}.title-stage-caption span{color:#061116;background:var(--cyan);padding:5px 7px}.title-stage-caption b{color:var(--cream);text-shadow:0 1px 3px #000}.title-actions{z-index:5;gap:9px;display:grid;position:relative}.title-actions>p{color:#aeb9c9;text-align:center;font:700 12px/1.4 var(--mono);letter-spacing:.08em;margin:2px 0 0}@keyframes title-channel{0%,to{opacity:0;clip-path:inset(0)}18%{opacity:.7;clip-path:inset(10% 0 65%)}35%{opacity:0}52%{opacity:.55;clip-path:inset(62% 0 14%)}68%{opacity:0}}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#000209db;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.howto-modal{width:min(100%,398px);max-height:calc(100svh - 32px);padding:27px 21px max(21px, env(safe-area-inset-bottom));clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);background:linear-gradient(155deg,#121d29,#070b13 70%);border:1px solid #66dbe875;position:relative;overflow-y:auto;box-shadow:0 0 0 3px #03080fcc,0 0 55px #000000b8,inset 0 0 45px #42e8f506}.modal-close{z-index:8;width:44px;height:44px;color:var(--cream);background:#090e16;border:1px solid #ffffff3d;place-items:center;display:grid;position:absolute;top:10px;right:10px}.howto-modal h2{letter-spacing:-.035em;margin:0 0 17px;font-size:1.9rem;font-weight:950;line-height:1.12}.howto-title{-webkit-text-stroke:.45px var(--cream);text-shadow:3px 3px 0 #711427, -1px -1px 0 var(--cyan)}.howto-steps{gap:8px;margin:0;padding:0;list-style:none;display:grid}.howto-steps li{border:1px solid #ffffff14;border-left:3px solid var(--cyan);background:#ffffff09;align-items:center;gap:13px;min-height:62px;padding:9px 11px;display:flex}.howto-steps li>b{width:34px;color:var(--cyan);font:800 1.55rem/1 var(--mono)}.howto-steps li span{color:var(--muted);font-size:14px;line-height:1.45}.howto-steps li strong{color:var(--cream);font-size:15px;display:block}.howto-cast{background:#140c09;border:1px solid #f2c75d47;height:155px;margin:13px 0;position:relative;overflow:hidden}.howto-stage-art{filter:brightness(.52)saturate(.78);object-position:50% 54%}.howto-cast-row{z-index:2;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:8px 10px 0}.howto-cast-row>div{flex-direction:column;align-items:center;width:33.333%;height:100%;display:flex}.howto-cast-row .stage-character{filter:drop-shadow(0 4px 3px #000);flex:1;width:100%;min-height:0}.howto-cast-row span{min-height:23px;color:var(--cream);text-shadow:0 2px 2px #000;font-size:12px;font-weight:900}.game-screen{min-height:100svh;padding:max(8px, env(safe-area-inset-top)) 8px max(9px, env(safe-area-inset-bottom));background:radial-gradient(at 50% 45%,#131b25 0,#05080e 72%);flex-direction:column;display:flex;position:relative}.game-hud{z-index:40;background:var(--metal);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);border:1px solid #6b9cad6b;flex:none;padding:3px;position:relative;box-shadow:0 4px 12px #00000094}.hud-rail{min-height:20px;font:800 12px/1 var(--mono);border-bottom:1px solid #50b7c54d;justify-content:space-between;align-items:center;padding:0 7px;display:flex}.hud-rail span{color:var(--cyan);letter-spacing:.11em}.hud-rail b{color:#9fb0bd;font-size:12px}.hud-grid{grid-template-columns:1.35fr .9fr .8fr .95fr 55px;gap:3px;padding-top:3px;display:grid}.hud-cell{clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);background:linear-gradient(#050e18fa,#02070dfa);border:1px solid #5986975c;flex-direction:column;justify-content:center;align-items:center;height:57px;display:flex}.hud-cell span{color:var(--muted);font:800 12px/1 var(--mono);letter-spacing:.02em}.hud-cell strong{color:var(--cyan);font:850 1.38rem/1 var(--mono);text-shadow:0 0 9px #42e8f557}.hud-cell--time{border-color:#42e8f59e}.hud-cell--time strong{font-size:1.62rem}.hud-cell--combo strong,.hud-cell--combo span{color:var(--gold)}.hud-cell small{color:var(--muted);font-size:12px}.hud-grid .sound-toggle{flex-direction:column;width:55px;min-width:0;height:57px;min-height:57px;padding:2px}.timer-track{background:#04080d;border:1px solid #658a9766;height:7px;margin-top:4px;position:relative;overflow:hidden}.timer-track:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 9%,#00000073 9% 10%);position:absolute;inset:0}.timer-fill{background:linear-gradient(90deg, var(--cyan-deep), #a5fbff);height:100%;box-shadow:0 0 9px var(--cyan);transition:width .1s linear,background-color .2s}.timer-fill--danger{background:var(--danger);box-shadow:0 0 11px var(--danger);animation:.4s steps(2,end) infinite timer-danger}.stage-shell{background:var(--metal);clip-path:polygon(11px 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%,0 11px);border:1px solid #86aebb75;flex-direction:column;flex:1;min-height:0;margin-top:6px;padding:4px;display:flex;position:relative;box-shadow:0 7px 18px #0000009e,inset 0 0 0 1px #ffffff0a}.stage-shell:before,.stage-shell:after{content:"";z-index:44;pointer-events:none;background:#010305;border-radius:50%;width:5px;height:5px;position:absolute;top:15px;box-shadow:inset 1px 1px #53626b,0 calc(100svh - 225px) #010305}.stage-shell:before{left:5px}.stage-shell:after{right:5px}.stage-instruction{color:#edf7fa;background:#07101b;border-bottom:1px solid #42e8f533;justify-content:center;align-items:center;gap:7px;min-height:30px;font-size:13px;font-weight:900;display:flex}.stage-instruction span{color:#061116;background:var(--cyan);font:900 12px/1 var(--mono);letter-spacing:.06em;padding:4px 6px}.stage{-webkit-user-select:none;user-select:none;background:#160d0a;border-left:1px solid #040609;border-right:1px solid #040609;flex:1;min-height:0;position:relative;overflow:hidden}.stage-background{z-index:0;object-position:50% 52%;filter:saturate(.92)contrast(1.04)brightness(.88)}.stage-atmosphere{z-index:1;pointer-events:none;background:radial-gradient(at 50% 52%,#ffe0961a,#0000 48%),linear-gradient(#03091114,#0000 62%,#00000057);position:absolute;inset:0}.scanlines{z-index:24;pointer-events:none;opacity:.15;mix-blend-mode:soft-light;background:repeating-linear-gradient(0deg,#0000 0 3px,#c4eef417 3px 4px);position:absolute;inset:0}.stage-plaque{z-index:4;color:#f6e0ad;text-align:center;background:linear-gradient(#3a2818,#17100b);border:1px solid #9a7640;flex-direction:column;align-items:center;padding:4px 2px 5px;display:flex;position:absolute;top:16.3%;left:28%;right:28%;transform:perspective(120px)rotateX(-4deg);box-shadow:0 3px 8px #000000a6,inset 0 0 0 1px #26180e}.stage-plaque small{color:#c9ac72;font:700 12px/.9 var(--mono);letter-spacing:.02em;white-space:nowrap;transform:scale(.72)}.stage-plaque strong{font-size:12px;line-height:1.15}.stage-plaque span{color:#d6c295;font-size:12px;line-height:1;transform:scale(.8)}.background-panel{z-index:3;color:#cfe6e8a6;width:16%;height:14%;font:800 12px/1 var(--mono);background:linear-gradient(145deg,#1b343994,#4e2a207a);border:2px solid #7da4ac4d;flex-direction:column;justify-content:flex-end;align-items:center;padding:5px;display:flex;position:absolute;top:23%;left:22%}.background-panel b{color:#f4e0b6b8;font-size:15px}.background-panel--odd{transform:skewY(-3deg)rotate(-1deg)}.stage-prop{z-index:8;pointer-events:none;transform-origin:50% 100%;filter:drop-shadow(0 4px 3px #000000b8);position:absolute}.stage-prop-image{object-fit:contain}.prop-clock{z-index:5;width:14%;height:14%;top:22%;left:43%}.prop-clock--offset{transform:rotate(8deg)}.clock-hand{z-index:3;transform-origin:50% 100%;background:#2b1b10;border-radius:2px;width:2px;position:absolute;bottom:49%;left:49%}.clock-hand--minute{height:27%;transform:rotate(52deg)}.clock-hand--hour{height:18%;transform:rotate(138deg)}.clock-hand--reverse-second{background:var(--danger);width:1px;height:31%;box-shadow:0 0 3px var(--danger);animation:1.2s linear infinite reverse-second}.clock-invalid-time{z-index:5;color:#fff7dc;font:950 12px/1 var(--mono);text-align:center;letter-spacing:.02em;background:#6e1018;border:1px solid #ff8e9d;padding:2px;position:absolute;bottom:-4%;left:6%;right:6%;box-shadow:0 0 7px #ff49618c}.prop-poster{z-index:4;width:16%;height:22%;top:22%;left:75%}.prop-poster--blur{filter:blur(.7px)drop-shadow(0 4px 3px #000000b3);transform:rotate(1deg)}.poster-copy{z-index:3;color:#351917;text-align:center;text-shadow:0 1px #f0d99d;font:900 12px/1.05 serif;position:absolute;top:35%;left:22%;right:19%;transform:rotate(-1deg)}.poster-date{z-index:4;color:#6e1018;font:900 12px/1 var(--mono);text-align:center;background:#ffefc6e0;border:1px solid #6e10188c;padding:2px 0;position:absolute;bottom:17%;left:18%;right:16%;transform:rotate(-2deg)}.poster-cast-count{z-index:5;color:#fff7dc;font:950 12px/1 var(--mono);text-align:center;background:#741621;border:1px solid #f2c75d;padding:2px 0;position:absolute;bottom:15%;left:12%;right:11%;transform:rotate(-2deg)}.prop-stage-light{z-index:6;width:16%;height:17%;top:5%;left:65%}.prop-stage-light--tilt{transform:rotate(9deg)}.prop-chair{z-index:5;width:17%;height:25%;top:54%;left:15%}.prop-chair--odd{transform:rotate(-6deg)translateY(4px)}.prop-chair--upside-down{transform-origin:50%;filter:drop-shadow(0 -4px 3px #000000b8);transform:rotate(180deg)}.prop-crate{z-index:10;width:18%;height:15%;top:67%;left:3%}.prop-crate--open{filter:brightness(1.08)drop-shadow(0 4px 3px #000);transform:rotate(3deg)}.prop-crate span{z-index:2;color:#d8ba8e;font:900 12px/1 var(--mono);text-align:center;position:absolute;inset:40% 0 auto;transform:rotate(-4deg)}.speech-bubble{z-index:16;color:#1f160e;background:#fff8e7;border:2px solid #271b13;border-radius:8px;max-width:42%;padding:6px 9px;font-size:12px;font-weight:900;position:absolute;top:30%;left:9%;box-shadow:0 3px 5px #00000073}.speech-bubble:after{content:"";border:6px solid #0000;border-top-color:#fff8e7;position:absolute;top:100%;left:30%}.speech-bubble--wrong-person{top:29%;left:57%}.speech-bubble--wrong-person:after{left:68%}.prop-telephone{width:17%;height:14%;top:53%;left:31%}.phone-detail{z-index:4;color:#25160e;font:900 12px/1 var(--mono);white-space:nowrap;text-align:center;background:#f4e3b7;border:1px solid #50331d;position:absolute;box-shadow:0 1px 2px #000}.phone-detail--wrong-label{color:#6c1118;background:#f7dfad;border-color:#7a1720;padding:2px 3px;top:48%;left:18%;transform:rotate(-6deg)}.prop-glass{width:8%;height:13%;top:55%;left:48%}.prop-glass--marked{filter:drop-shadow(0 0 4px #42e8f58c);transform:rotate(8deg)}.prop-glass--swapping{animation:1.55s steps(2,end) infinite glass-swap}.glass-waterline{z-index:4;background:#98f6ff;border-radius:3px;height:3px;position:absolute;top:48%;left:22%;right:20%;transform:rotate(18deg);box-shadow:0 0 4px #42e8f5cc}.glass-wrong-label{z-index:5;color:#6c1118;font:950 12px/1 var(--mono);white-space:nowrap;background:#f7dfad;border:1px solid #7a1720;padding:2px 3px;position:absolute;top:38%;left:-22%;transform:rotate(5deg);box-shadow:0 1px 2px #000}.prop-script{width:15%;height:13%;top:54%;left:51%;transform:rotate(-7deg)}.prop-script span{z-index:2;color:#3c2718;text-align:center;font:900 12px/1 serif;position:absolute;top:42%;left:20%;right:18%;transform:rotate(-2deg)}.prop-script .script-copy--upside-down{transform:rotate(178deg)}.prop-script--swapping{animation:1.55s steps(2,end) infinite script-swap}.prop-flower{width:12%;height:19%;top:49%;left:61%}.flower-scene-tag{z-index:5;color:#4a1216;font:950 12px/1 var(--mono);white-space:nowrap;background:#f4dfa7;border:1px solid #852532;padding:2px 3px;position:absolute;bottom:4%;left:14%;transform:rotate(-8deg);box-shadow:0 1px 2px #000}.prop-microphone{width:13%;height:31%;top:48%;left:13%}.prop-microphone--too-high{filter:drop-shadow(0 0 7px #f2c75d80);top:25%}.prop-microphone--cable-missing{clip-path:inset(0 0 15%);filter:drop-shadow(0 0 5px #ff496152)}.prop-hat{width:15%;height:11%;top:66%;left:80%}.prop-hat--marked{transform:rotate(-9deg)}.prop-bag{width:17%;height:14%;top:62%;left:5%}.prop-bag--open{filter:brightness(1.16)drop-shadow(0 4px 3px #000);transform:rotate(4deg)}.prop-bag--giant{z-index:15;filter:drop-shadow(0 7px 6px #000000e6);width:32%;height:31%;animation:1.8s ease-in-out infinite alternate giant-bag-breathe;top:47%;left:1%}.stage-prop--target{z-index:17}.bag-name-tag{z-index:4;color:#2e1c12;background:#f1d99d;border:1px solid #5b3b20;padding:2px 3px;font:900 12px/1 serif;position:absolute;top:42%;right:7%;transform:rotate(6deg)}.wing-peek{z-index:7;filter:drop-shadow(0 3px 3px #000);width:18%;height:27%;position:absolute;top:45%;left:1%;overflow:hidden}.wing-peek .stage-character{width:100%;height:100%;transform:translate(-42%)}.held-script{z-index:17;filter:drop-shadow(0 3px 3px #000);width:18%;height:18%;position:absolute;top:49%;right:8%;transform:rotate(8deg)}.held-script>img{object-fit:contain}.held-script span{z-index:2;color:#3c2617;text-align:center;font:900 12px/1.05 serif;position:absolute;top:35%;left:18%;right:16%}.yaegashi-shadow{z-index:5;filter:blur(3px);background:#02030594;border-radius:50%;width:24%;height:8%;position:absolute;top:68%;left:38%;transform:skew(-18deg)}.stage-character{min-width:0;position:relative}.character-fallback{width:100%;height:100%;color:var(--cream);background:linear-gradient(180deg,var(--character-accent),#141824);border-radius:48% 48% 18% 18%;place-items:center;display:grid}.character-fallback span{font-size:2rem;font-weight:900}.character-slot{z-index:12;filter:drop-shadow(0 6px 5px #000000e0);width:29%;height:43%;position:absolute;top:35%}.character-slot--takase{left:7%}.character-slot--yaegashi{height:43.5%;left:35.5%}.character-slot--tanaka{right:6.5%}.character-slot--crooked{transform:rotate(2deg)}.character-slot--floating{filter:drop-shadow(0 13px 8px #42e8f56b);transform:translateY(-16%)}.takase-name-tag{z-index:17;color:#3b1620;font:950 12px/1 var(--mono);background:#f5dfa4;border:1px solid #812638;padding:2px 4px;position:absolute;top:53%;left:19%;transform:rotate(-5deg);box-shadow:0 1px 2px #000}.next-scene-wrap{z-index:12;pointer-events:none;position:absolute;inset:0}.next-scene-wrap .character-slot{pointer-events:none}.next-scene-wrap--active .character-slot{filter:drop-shadow(0 0 10px #42e8f5bf)hue-rotate(18deg);transform:rotate(-3deg)}.space-helmet{z-index:16;aspect-ratio:1;border:3px solid var(--cyan);width:18%;box-shadow:inset 0 0 12px #42e8f580, 0 0 10px var(--cyan);border-radius:50%;position:absolute;top:36%;left:69%}.space-helmet:after{content:"";background:var(--cyan);width:1px;height:10px;position:absolute;bottom:100%;left:50%}.future-prop{z-index:17;color:#021117;background:var(--cyan);font:900 12px/1.1 var(--mono);padding:4px;position:absolute;top:57%;left:77%;transform:rotate(8deg)}.empty-mark{z-index:9;color:#f8f4e74d;font:900 3rem/1 var(--mono);position:absolute;top:47%;left:45%}.subtitle{z-index:18;min-height:9%;color:var(--cream);text-align:center;text-shadow:0 1px 2px #000;background:#010307eb;border:1px solid #42e8f594;border-width:1px 3px;justify-content:center;align-items:center;padding:6px 9px;font-size:13px;font-weight:950;display:flex;position:absolute;bottom:14%;left:9%;right:9%;box-shadow:0 3px 8px #000000a6}.subtitle span{color:var(--cyan);margin-right:4px}.subtitle .wrong-letter{color:var(--danger);margin:0;text-decoration:underline;text-decoration-thickness:2px}.subtitle--wrong{color:var(--gold);border-color:var(--gold)}.subtitle .subtitle-scene-number{color:#201407;background:var(--gold);font:950 12px/1 var(--mono);white-space:nowrap;margin-right:7px;padding:2px 4px}.audience-overlay{z-index:19;pointer-events:none;position:absolute;inset:82% 0 0;overflow:hidden}.audience-overlay .stage-character--compact{width:20%;height:145%;filter:brightness(.74) drop-shadow(0 0 6px var(--cyan));position:absolute;bottom:-55%}.audience-anomaly--right{right:8%}.audience-anomaly--left{left:6%}.audience-rebel{width:16%;height:95%;position:absolute;bottom:-15%;left:46%;transform:rotate(25deg)}.audience-rebel i{aspect-ratio:.85;border:2px solid var(--gold);background:#06080d;border-radius:52% 48% 35% 35%;width:72%;position:absolute;top:0;left:12%;box-shadow:0 0 9px #f2c75d73}.audience-rebel span{color:var(--gold);font:900 12px/1 var(--mono);position:absolute;top:-12px;left:-12px}.audience-gaze{z-index:20;color:#42e8f58f;font:800 12px/1 var(--mono);letter-spacing:12px;position:absolute;bottom:3%;left:28%}.stage-character--compact{width:100%;height:100%;position:relative}.anomaly-layer{z-index:35;pointer-events:none;position:absolute;inset:0}.target-area,.decoy-area{pointer-events:auto;background:0 0;border:0;min-width:44px;min-height:44px;padding:0;position:absolute}.target-area:focus-visible,.decoy-area:focus-visible{outline-color:var(--gold);background:#f2c75d29}.hint-pulse{z-index:2;border:3px dashed var(--gold);min-width:52px;min-height:52px;box-shadow:0 0 0 5px #f2c75d1f, 0 0 28px var(--gold);background:#f2c75d1a;animation:1.4s ease-out both hint-pulse;position:absolute}.difficulty-line{color:#c5cfdb;background:#07101a;border-top:1px solid #42e8f52e;justify-content:space-between;align-items:center;min-height:31px;padding:0 9px;font-size:12px;font-weight:900;display:flex}.difficulty-line span{color:var(--gold);font:850 12px/1 var(--mono);letter-spacing:.1em}.game-footer{color:#b1bdca;min-height:50px;font:800 12px/1.2 var(--mono);justify-content:space-between;align-items:center;gap:8px;padding:4px 4px 0;display:flex}.hint-button{color:#071018;background:linear-gradient(180deg,#ffeb9d,var(--gold));clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);border:1px solid #fff0ad;justify-content:center;align-items:center;gap:7px;min-width:150px;min-height:44px;font-size:13px;font-weight:950;display:flex}.hint-button:hover:not(:disabled){filter:brightness(1.1)}.hint-button--used,.hint-button:disabled{color:#96a3b6;cursor:not-allowed;background:#111827;border-color:#334155}@keyframes glass-swap{50%{transform:translate(165%)rotate(-7deg)}}@keyframes script-swap{50%{transform:translate(-58%)rotate(5deg)}}@keyframes reverse-second{0%{transform:rotate(35deg)}to{transform:rotate(-325deg)}}@keyframes giant-bag-breathe{to{transform:scale(1.08)}}@keyframes timer-danger{50%{opacity:.42}}@keyframes hint-pulse{0%,to{opacity:0;transform:scale(.78)}22%,68%{opacity:1;transform:scale(1.08)}45%{opacity:.38;transform:scale(.94)}}.correct-feedback{z-index:70;text-align:center;pointer-events:none;background:#000a1238;place-content:center;padding:20px;animation:.32s ease-out both correct-feedback-in;display:grid;position:fixed;inset:0}.correct-feedback strong{z-index:2;color:#061116;background:linear-gradient(180deg,#bafcff,var(--cyan));-webkit-text-stroke:1px #061116;width:min(100%,370px);text-shadow:2px 2px 0 var(--gold);white-space:pre-line;clip-path:polygon(7% 0,100% 12%,94% 100%,0 84%);margin:0 auto;padding:17px 22px;font-size:clamp(1.85rem,8vw,2.35rem);font-weight:1000;line-height:1.1;display:block;position:relative;transform:rotate(-3deg);box-shadow:0 0 32px #42e8f58c}.correct-feedback>p{z-index:2;width:min(100%,370px);color:var(--cream);border:1px solid #42e8f59e;border-left:4px solid var(--cyan);text-wrap:balance;background:#030c14f2;margin:10px auto 0;padding:10px 13px;font-size:14px;font-weight:850;line-height:1.55;position:relative;box-shadow:0 7px 18px #00000080}.correct-feedback>span{z-index:2;width:max-content;color:var(--cyan);border:1px solid var(--cyan);font:850 12px/1 var(--mono);letter-spacing:.12em;background:#06101b;margin:5px auto 0;padding:6px 10px;position:relative}.correct-feedback-action{z-index:3;pointer-events:auto;color:#061116;background:linear-gradient(180deg,#fff0a8,var(--gold));letter-spacing:.05em;clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);border:1px solid #fff5c5;width:min(100%,290px);min-height:52px;margin:12px auto 0;padding:10px 16px;font-size:15px;font-weight:1000;transition:filter .2s,transform .2s;position:relative;box-shadow:0 0 22px #f2c75d5c}.correct-feedback-action:hover{filter:brightness(1.08)}.correct-feedback-action:active{transform:translateY(1px)}.impact-lines{z-index:1;aspect-ratio:1;background:repeating-conic-gradient(from 0deg,#fff9e2f5 0 1deg,transparent 1deg 8deg);width:min(110vw,470px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-mask-image:radial-gradient(circle,#0000 0 28%,#000 29% 62%,#0000 63%);mask-image:radial-gradient(circle,#0000 0 28%,#000 29% 62%,#0000 63%)}.miss-feedback{z-index:70;color:#fff;border:2px solid var(--danger);text-align:center;pointer-events:none;background:linear-gradient(#4b0b17,#21050a);width:max-content;max-width:88vw;padding:14px 19px;font-size:16px;font-weight:950;animation:1.15s ease-out both miss-pop;position:fixed;top:48%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 30px #ff496180}.miss-feedback span{color:var(--danger);font:900 15px/1 var(--mono);letter-spacing:.16em;margin-bottom:6px;display:block}.game-screen--correct{animation:.36s ease-out screen-shake}.game-screen--miss:before{content:"";z-index:60;pointer-events:none;background:#ff123047;animation:.36s ease-out both red-flash;position:fixed;inset:0}@keyframes feedback-pop{0%{opacity:0;transform:scale(.65)}55%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:scale(1)}}@keyframes correct-feedback-in{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes miss-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.85)}12%,72%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.97)}}@keyframes red-flash{0%{opacity:1}to{opacity:0}}@keyframes screen-shake{20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}.result-screen{min-height:100svh;padding:max(21px,env(safe-area-inset-top)) 15px max(22px,env(safe-area-inset-bottom));background:radial-gradient(at 50% 18%,#42e8f51f,#0000 34%),radial-gradient(at 50% 75%,#6f18292e,#0000 40%),#060910;overflow-y:auto}.result-header{text-align:center;border-bottom:1px solid #42e8f540;margin-bottom:12px;padding:8px 0 11px;position:relative}.result-header h1{letter-spacing:.15em;text-shadow:2px 2px #681427;margin:0;font-size:1.9rem;font-weight:950}.result-header span{color:#99aaba;font:800 12px/1 var(--mono);letter-spacing:.12em}.score-card{text-align:center;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);background:linear-gradient(150deg,#121d2a,#060b13 72%);border:1px solid #6daebe80;padding:14px;position:relative;box-shadow:inset 0 0 28px #42e8f509}.score-card:before{content:"TSUKKOMI POWER";color:#42e8f559;font:700 12px/1 var(--mono);letter-spacing:.08em;transform-origin:0 0;position:absolute;top:8px;left:9px;transform:scale(.72)}.score-card>p{color:var(--muted);letter-spacing:.13em;margin:0;font-size:13px;font-weight:900}.score-number{justify-content:center;align-items:flex-end;margin:3px 0 12px;line-height:1;display:flex}.score-number strong{color:var(--gold);font:850 clamp(4.2rem,22vw,5.7rem)/.9 var(--mono);text-shadow:0 0 22px #f2c75d47,3px 3px #5a3314}.score-number span{color:var(--muted);font:750 1rem/1 var(--mono);margin-bottom:8px}.result-stats{border-top:1px solid #ffffff1a;grid-template-columns:repeat(4,1fr);display:grid}.result-stats>div{border-right:1px solid #ffffff14;padding:10px 3px 0}.result-stats>div:last-child{border:0}.result-stats span{color:var(--muted);font-size:12px;line-height:1.2;display:block}.result-stats strong{color:var(--cyan);font:850 1.25rem/1.4 var(--mono)}.result-stats small{color:var(--muted);font-size:12px}.result-type-card{text-align:center;background:linear-gradient(145deg,#241522,#09111b 62%);border:1px solid #f2c75d57;min-height:280px;margin-top:10px;padding:16px 16px 0;position:relative;overflow:hidden;box-shadow:inset 0 -55px 75px #7b243329}.result-type-card:before{content:"";pointer-events:none;border:1px solid #ffffff0a;position:absolute;inset:5px}.result-type-index{color:#f2c75d7a;font:800 12px/1 var(--mono);letter-spacing:.04em;position:absolute;top:9px;right:10px}.result-type-card>p:first-of-type{color:var(--gold);font:850 12px/1 var(--mono);letter-spacing:.12em;margin:0 0 4px}.result-type-card h2{color:var(--cream);margin:0;font-size:1.25rem;font-weight:950}.result-comment{z-index:3;color:#e0e7ef;max-width:340px;margin:7px auto 0;font-size:14px;line-height:1.55;position:relative}.result-character-zone{background:radial-gradient(at 50% 100%,#f2c75d3b,#0000 58%);border-top:1px solid #ffffff12;height:165px;position:absolute;bottom:0;left:0;right:0}.result-character-zone .stage-character{filter:drop-shadow(0 6px 5px #000);width:170px;height:165px;margin:0 auto}.fourth-audience{justify-content:center;align-items:flex-end;height:100%;display:flex;position:relative}.fourth-audience:before{content:"";background:conic-gradient(from 165deg at 50% 0%,transparent 0 42%,#ffecaf2e 45% 55%,transparent 58%);width:150px;height:180px;position:absolute;top:-15px}.fourth-audience span{background:#02040a;border-top:1px solid #2b3850;border-radius:50% 50% 15% 15%;width:55px;height:84px;margin:0 -6px}.fourth-audience b{z-index:2;color:var(--danger);font:850 3rem/1 var(--mono);text-shadow:0 0 18px var(--danger);position:absolute;top:23px;left:50%;transform:translate(-50%)}.result-actions{grid-template-columns:1fr 1.45fr;gap:8px;margin-top:10px;display:grid}.result-actions .share-button,.result-actions .primary-button{min-width:0;padding:0 7px;font-size:14px}.landscape-notice{z-index:200;color:var(--cream);text-align:center;background:#070914;place-items:center;padding:30px;font-size:16px;font-weight:900;display:none;position:fixed;inset:0}@media (min-width:431px){.app-frame{border-left:1px solid #75a8b840;border-right:1px solid #75a8b840}}@media (max-height:700px) and (orientation:portrait){.title-copy{padding-top:43px}.title-copy h1{font-size:clamp(2.05rem,10.8vw,2.75rem)}.title-stage{min-height:215px}.title-actions{gap:6px}.primary-button--large{min-height:53px}.stage-instruction{min-height:26px}.hud-cell,.hud-grid .sound-toggle{height:53px;min-height:53px}.game-footer{min-height:47px}.stage-plaque{top:15%}}@media (max-width:355px){.hud-grid{grid-template-columns:1.28fr .86fr .76fr .9fr 50px}.hud-grid .sound-toggle{width:50px}.hud-cell strong{font-size:1.25rem}.hud-cell--time strong{font-size:1.45rem}.stage-instruction{font-size:12px}.hint-button{min-width:142px}.result-stats span{font-size:12px}}@media (orientation:landscape) and (max-height:520px){.landscape-notice{display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.clock-hand{transform:rotate(-18deg)}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
