:root{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:#3d3027;background:#d9cbbb;font-synthesis:none}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer;font:inherit}button:focus-visible{outline:3px solid #256c62;outline-offset:3px}[hidden]{display:none!important}#world{position:fixed;inset:0;background:linear-gradient(#ded2c1 0%,#e9dfd0 47%,#c0ad96 100%)}#world canvas{display:block;width:100%;height:100%}#app{position:relative;isolation:isolate;display:flex;flex-direction:column;height:100dvh;max-width:640px;margin:auto;padding:calc(12px + env(safe-area-inset-top)) clamp(16px,5vw,30px) calc(12px + env(safe-area-inset-bottom));pointer-events:none}#app:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(180deg,#e5dac9d9 0%,#e5dac9a3 14%,transparent 35%,transparent 61%,#d8c5aa66 77%,#d8c5aadd 100%)}button,dialog{pointer-events:auto}header{height:42px;flex:none;display:flex;align-items:center;justify-content:space-between;z-index:5}.brand{display:flex;align-items:center;gap:7px;color:#5d4734;font-size:11px;font-weight:700;letter-spacing:.08em}.brand-symbol{font-size:23px;line-height:1;color:#bd6b32}#sound{border:1px solid #aa8e6e;border-radius:6px;background:#fff4dfcf;box-shadow:0 2px 0 #947e69,0 5px 12px #6a554425;color:#56402b;font-size:12px;font-weight:700;padding:8px 10px;min-height:36px}#sound span{color:#c27834}.screen{position:relative;flex:1;min-height:0;text-align:center}#home{display:flex;flex-direction:column}.home-title{margin-top:clamp(7px,2vh,22px);text-shadow:0 2px 14px #f6eadccc}.home-kicker{display:inline-block;color:#9c552b;font-size:11px;font-weight:800;letter-spacing:.19em;border-bottom:2px solid #df8d36;padding-bottom:3px}h1{font-size:clamp(21px,6vw,35px);line-height:1.42;letter-spacing:-.045em;margin:8px 0;font-weight:900;color:#4b3222}h1 em{font-style:normal;color:#aa512c}#heroMount{flex:1;min-height:120px}.home-bottom{padding-bottom:clamp(10px,2vh,22px)}.rules{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 auto 14px;font-size:12px;font-weight:700;color:#5b4531;text-shadow:0 1px 6px #f6e8d4}.rules b{font-size:22px;color:#b65b2e;font-variant-numeric:tabular-nums}.rules i{display:block;width:4px;height:4px;background:#9c7953;transform:rotate(45deg)}.primary{width:100%;min-height:59px;padding:12px 20px;border:1px solid #bc591f;border-radius:10px;background:linear-gradient(#ffb34d,#e87622);color:#fff9eb;box-shadow:0 4px 0 #a94b22,0 8px 18px #5e3d2570,inset 0 1px 0 #ffe2a6;font-size:17px;font-weight:900;text-shadow:0 1px 1px #a84318;display:flex;align-items:center;justify-content:center;gap:17px}.primary:disabled{opacity:.58}.primary:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #a94b22,0 3px 8px #5e3d254a}.primary span{font-size:14px}.under-button,.text-button{border:0;background:transparent;color:#624832;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:4px;padding:15px 10px 2px}.under-button span{font-size:13px;margin-left:5px}#play{display:flex;flex-direction:column}.dashboard{display:flex;align-items:stretch;gap:8px;max-width:380px;width:100%;margin:5px auto 0}.dashboard>div{min-width:0;background:#fff4dfd9;border:1px solid #c9b698;box-shadow:0 2px 7px #75624722;padding:5px 10px 4px;border-radius:6px}.dashboard>div:first-child{flex:1;text-align:left}.dashboard>div:not(:first-child){min-width:76px}.dashboard small{display:block;font-size:10px;color:#83654a;font-weight:700}.dashboard b{display:block;font-size:25px;line-height:1.18;color:#4f3523;font-variant-numeric:tabular-nums}.dashboard b span,.dashboard b small{display:inline;font-size:11px;margin-left:3px}.combo-card{display:block}.total-track{height:4px;background:#ab8b66a1;margin:8px 2px 0;overflow:hidden;border-radius:5px}.total-track>div{height:100%;background:#ef9a3d;transform-origin:left}#stage{flex:1;min-height:0;position:relative;margin-top:4px}.stage-top{position:absolute;z-index:2;left:0;right:0;top:5px;display:flex;justify-content:space-between;font-size:11px;font-weight:800;color:#62492e;text-shadow:0 2px 7px #fff4dd}.stage-top span:last-child{background:#fbf2e2b9;padding:3px 7px;border:1px solid #c9b69b;border-radius:3px;font-variant-numeric:tabular-nums}.stage-floor,#playMount{display:none}#arrival{position:absolute;left:5%;top:26%;font-size:clamp(29px,9vw,49px);font-weight:1000;color:#ae4e28;text-shadow:3px 3px 0 #fff0d2,0 5px 10px #6e3c287e;transform:rotate(-12deg);opacity:0}.arrive #arrival{animation:arrival .36s both}@keyframes arrival{12%,62%{opacity:1;transform:scale(1.17) rotate(-12deg)}100%{opacity:0;transform:translateY(-22px) rotate(-8deg)}}#stamp{position:absolute;top:20%;left:0;right:0;font-size:clamp(27px,8vw,45px);font-weight:1000;text-shadow:2px 3px 0 #fff6df,0 6px 15px #63482b91;transform:rotate(-5deg)}#reaction{position:absolute;bottom:20%;left:-12px;right:-12px;font-size:clamp(25px,8vw,40px);font-weight:1000;color:#ac432c;text-shadow:2px 3px 0 #fff1d0,0 6px 12px #6c3f236d}#answerReveal{position:absolute;bottom:8%;left:0;right:0;font-size:11px;font-weight:800;color:#583d2b;text-shadow:0 1px 6px #fff}#face,#fx{display:none!important}.limit{display:flex;justify-content:space-between;align-items:baseline;margin:2px 1px 4px;color:#624730;font-size:11px;font-weight:800}.limit b{font-size:22px;font-variant-numeric:tabular-nums}.limit b span{font-size:11px}.question-track{height:8px;border:1px solid #9e7c57;border-radius:5px;background:#d4b891;overflow:hidden;box-shadow:inset 0 1px 3px #876b4a}.question-track>div{height:100%;transform-origin:left;background:#ed983c;box-shadow:inset 0 1px 0 #ffd28a}.answers{display:flex;gap:10px;margin-top:12px}.answers button{flex:1;min-width:0;min-height:70px;border-radius:8px;border:1px solid #ba7a38;background:linear-gradient(#ffe7b5,#eeb667);box-shadow:0 4px 0 #a2713e,0 7px 12px #674a2d55,inset 0 1px #fff8d8;color:#563b20;display:flex;align-items:center;justify-content:center;gap:7px}.answers #med{border-color:#6d7569;background:linear-gradient(#f5f6eb,#b3b7aa);box-shadow:0 4px 0 #72776f,0 7px 12px #493f3555,inset 0 1px #fff;color:#303b36}.answers button:disabled{filter:saturate(.5);opacity:.68}.answers button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #a2713e,0 3px 7px #674a2d55}.choice-icon{font-size:23px;line-height:1}.answers b{font-size:clamp(18px,5vw,23px)}.play-hint{font-size:10px;color:#674a2e;font-weight:700;margin:10px 0 1px;text-shadow:0 1px 4px #fff}#stop{align-self:center;border:1px solid #9e896f;border-radius:5px;background:#f4e7d3db;color:#634a35;font-size:11px;margin-top:8px;padding:6px 12px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.08em;color:#a25830}#clear,#result{flex:initial;margin:auto 0;background:#fff6e8ed;border:1px solid #cbb08d;border-radius:9px;box-shadow:0 14px 35px #5f493760,0 3px 0 #b99c78;padding:22px 20px;max-height:calc(100% - 70px);overflow:auto}#clear h2,#result h2{font-size:clamp(26px,7vw,38px);color:#6e3c24;margin:10px 0}#clearScore{font-size:17px;font-weight:800}#clear .clear-note{font-size:13px;line-height:1.7;margin:18px 0}.secondary{width:100%;border:1px solid #b18d62;border-radius:8px;background:linear-gradient(#fffaf0,#e5d4b9);box-shadow:0 3px 0 #aa8f6f;padding:14px;font-size:14px;font-weight:800;color:#543d2a;margin-top:12px}.secondary:active{transform:translateY(2px);box-shadow:0 1px 0 #aa8f6f}#result h2{font-size:24px}.medal{display:none}.rank-label{font-size:11px;margin:8px 0 3px;color:#866243}h3{font-size:19px;color:#ae5529;margin:0 0 12px}.results{border-top:1px solid #d4bfa3}.results>div{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid #e7d8c5;font-size:12px}.results b{font-size:18px;color:#583c29;font-variant-numeric:tabular-nums}.results small{font-size:10px;margin-left:2px}#resultnote{font-size:10px;margin:10px 0 15px;color:#705b49}#result .primary{min-height:49px;font-size:15px}#result .text-button{font-size:11px;padding:12px 5px 0}dialog{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:#fff9ec;border:1px solid #b99b75;border-radius:10px;padding:24px 21px;box-shadow:0 15px 35px #3123168a;color:#443329}dialog::backdrop{background:#33291e99;backdrop-filter:blur(4px)}dialog h2{font-size:20px;text-align:center;margin:0 0 24px}dialog p{font-size:15px;line-height:1.85;margin:18px 0}dialog .primary{margin-top:23px;font-size:15px;min-height:55px}dialog .secondary{margin-top:8px}.warning-icon{display:none}#error{position:fixed;bottom:10px;left:10px;right:10px;background:#fff5dc;padding:20px;z-index:99;font-size:14px}#error button{display:block;margin:10px}
@media(max-height:700px){#app{padding-top:calc(7px + env(safe-area-inset-top));padding-bottom:calc(7px + env(safe-area-inset-bottom))}header{height:35px}.home-title{margin-top:3px}h1{font-size:clamp(21px,5.7vw,31px);margin:4px 0}.home-kicker{font-size:10px}.home-bottom{padding-bottom:2px}.rules{margin-bottom:8px}.primary{min-height:52px}.under-button{padding-top:11px}#heroMount{min-height:85px}.dashboard{margin-top:2px}.dashboard b{font-size:21px}.dashboard>div{padding:3px 7px}.stage-top{top:1px}.answers{margin-top:8px}.answers button{min-height:60px}.play-hint{margin-top:7px}.limit b{font-size:19px}#result{padding:12px 16px;max-height:calc(100% - 48px)}#result h2{margin:4px 0;font-size:21px}#result h3{margin-bottom:7px;font-size:17px}.results>div{padding:4px 0;font-size:11px}.results b{font-size:16px}#resultnote{margin:7px 0}#result .primary{min-height:43px}dialog p{margin:13px 0}}
@media(max-width:350px){#app{padding-inline:12px}.dashboard>div:not(:first-child){min-width:65px}.answers b{font-size:17px}.choice-icon{font-size:19px}dialog p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.arrive #arrival{animation:none;opacity:1}}

/* Warm arcade controls and two compact visual clues; the 3D table stays unobstructed. */
#heroMount{position:relative}.sample-cues{position:absolute;left:0;right:0;top:clamp(17px,4vh,43px);display:flex;justify-content:space-between;gap:12px;pointer-events:none}.sample-cues>span{display:flex;flex-direction:column;gap:3px;min-width:0;max-width:44%;border-radius:11px;border:2px solid #fff6e7;background:#fff5e9e3;box-shadow:0 3px 0 #a68d70,0 7px 20px #6f4b2f4a;padding:7px 10px;text-align:left;transform:rotate(-3deg)}.sample-cues .cue-candy{text-align:right;transform:rotate(3deg)}.sample-cues b{font-size:clamp(11px,3.6vw,16px);color:#a84e42}.sample-cues .cue-candy b{color:#2874a9}.sample-cues small{font-size:clamp(8px,2.3vw,11px);font-weight:700;color:#65513e}.answers button{background:linear-gradient(180deg,#78d7ff 0%,#37a9f2 48%,#247bd8 100%);border:2px solid #c6f4ff;color:#fff;box-shadow:0 5px 0 #18579a,0 8px 18px #174b7c79,inset 0 2px 0 #def8ff;text-shadow:0 2px 2px #14589b,-1px 0 #14589b,1px 0 #14589b}.answers #med{background:linear-gradient(180deg,#ffa9a3 0%,#f3756c 52%,#de504a 100%);border:2px solid #ffe3d9;color:#fff;box-shadow:0 5px 0 #a23c36,0 8px 18px #793a367d,inset 0 2px 0 #ffdbd5;text-shadow:0 2px 2px #a53936,-1px 0 #a53936,1px 0 #a53936}.answers button:active:not(:disabled),.answers #med:active:not(:disabled){transform:translateY(4px) scale(.985);box-shadow:0 1px 0 #6d4a3d,0 3px 6px #65402d80}.answers button:disabled{opacity:.78;filter:saturate(.78)}.choice-icon{font-size:22px;background:#ffffff3b;border-radius:50%;width:28px;height:28px;display:grid;place-items:center}.dashboard>div{background:#49352be8;border-color:#d9ae60;box-shadow:0 3px 0 #9b6e35,0 6px 13px #4c291c70;color:#fff7e9}.dashboard small,.dashboard b,.dashboard b small{color:#fff8ea}.dashboard>div:first-child{background:#4b3428ed}.dashboard b{font-weight:900}.total-track{height:7px;background:#5035259e;border:1px solid #f0c77b}.total-track>div{background:linear-gradient(#ffda69,#fda838)}.home-kicker{color:#bc6731}h1{color:#fff9eb;text-shadow:2px 3px 0 #563524,-1px -1px 0 #563524,1px -1px 0 #563524,-1px 1px 0 #563524,0 6px 14px #563524b0}h1 em{color:#9bdef7;text-shadow:2px 3px 0 #364a60,-1px -1px 0 #364a60,1px -1px 0 #364a60,0 6px 14px #364a60b0}.home-title{margin-top:clamp(12px,3vh,28px)}.brand{background:#fff4dfb7;border-radius:6px;padding:4px 7px}.rules{background:#fff3dcba;border:1px solid #d6bb8a;box-shadow:0 3px 0 #ae8d69;border-radius:7px;width:max-content;padding:3px 13px}.play-hint{background:#fff5dfa8;border-radius:4px;align-self:center;padding:3px 9px}#stamp{color:#2394a4}.arrive #arrival{color:#b9552a}#clear,#result{border:3px solid #e3b76c;background:#fff5dfed}.primary{font-size:18px}
@media(max-height:700px){.sample-cues{top:13px}.sample-cues>span{padding:5px 7px}.home-title{margin-top:5px}}

/* One-second round: clear, prominent readout. */
.limit b{color:#a54625;font-size:26px}.question-track{height:10px}#stage{filter:contrast(1.025)}

.dashboard>div:first-child{position:relative}#timeDelta{position:absolute;right:9px;top:9px;font-size:14px;opacity:0;text-shadow:0 2px 5px #251607}.dashboard .gain{color:#8cf2ad}.dashboard .loss{color:#ff9c91}.dashboard #timeDelta.pop{animation:delta .65s ease-out both}@keyframes delta{0%{opacity:0;transform:translateY(13px) scale(.8)}25%,65%{opacity:1;transform:translateY(0) scale(1.12)}100%{opacity:0;transform:translateY(-16px)}}

header{justify-content:flex-end}#comboBonus{position:absolute;z-index:10;top:31%;left:4%;right:4%;pointer-events:none;text-align:center;display:flex;flex-direction:column;gap:3px;color:#fff9dc;text-shadow:0 3px 0 #75451a,0 6px 18px #2a1a15;font-weight:1000;animation:comboBounce .65s both}#comboBonus[hidden]{display:none}#comboBonus b{font-size:clamp(23px,7vw,36px)}#comboBonus strong{font-size:clamp(17px,5vw,26px)}#comboBonus em{font-style:normal;color:#a2ffca;font-size:clamp(22px,7vw,37px)}#comboBonus.normal{top:34%;color:#d4ffdb;text-shadow:0 3px 0 #327d58,0 5px 12px #23422e}#comboBonus.special{top:28%;background:radial-gradient(ellipse,#f8bb43b8,transparent 72%);padding:8px 0}#comboBonus.super{background:radial-gradient(ellipse,#ffc768d9,transparent 75%);filter:drop-shadow(0 0 14px #ffd45a)}#comboBonus.super em{color:#fff099}@keyframes comboBounce{0%{opacity:0;transform:scale(.55) translateY(18px)}23%{opacity:1;transform:scale(1.17) translateY(-5px)}48%{transform:scale(.97)}75%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.05) translateY(-10px)}}#time.time-bump{animation:timeBump .55s ease-out}@keyframes timeBump{30%{transform:scale(1.22);color:#a2ffca}100%{transform:scale(1)}}
#fx{display:block!important;position:absolute;inset:0;pointer-events:none;overflow:hidden}#fx .spark{position:absolute;left:50%;top:43%;width:5px;height:13px;background:#ffe39a;border-radius:3px;box-shadow:0 0 7px #fff8c0;animation:sparkFlight .68s ease-out both}#fx .spark:nth-child(3n){background:#a9f5ff}#fx .spark:nth-child(3n + 1){background:#ffd1a2}@keyframes sparkFlight{0%{opacity:0;transform:translate(0,0) scale(.2) rotate(0)}25%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) scale(.6) rotate(240deg)}}#comboBonus.super:before{content:"";position:fixed;inset:0;background:#fff5c8;opacity:0;animation:comboFlash .35s both;z-index:-1}@keyframes comboFlash{35%{opacity:.33}100%{opacity:0}}@media(prefers-reduced-motion:reduce){#fx .spark,#comboBonus,#comboBonus.super:before,#time.time-bump{animation:none}#comboBonus{opacity:1}}

#comboBonus small{font-size:12px;color:#fff8df;letter-spacing:.05em}

.share-x{display:block;pointer-events:auto;margin:10px 0 0;padding:11px 14px;min-height:43px;border:1px solid #26211c;border-radius:7px;background:linear-gradient(#39332d,#1d1a18);box-shadow:0 3px 0 #100e0d;color:#fff8e9;text-decoration:none;text-align:center;font-size:14px;font-weight:800;line-height:20px}.share-x:active{transform:translateY(2px);box-shadow:0 1px 0 #100e0d}.share-x:focus-visible{outline:3px solid #256c62;outline-offset:3px}
.next-rank{margin:5px 0 9px;padding:8px 10px;border:1px solid #d7ba8e;border-radius:7px;background:#fff9ebc9;text-align:left;color:#62482f}.next-rank small{display:block;font-size:10px;font-weight:800;color:#a46631}.next-rank>b{display:block;font-size:14px;margin:2px 0 5px}.rank-progress-row{display:grid;grid-template-columns:80px 1fr auto;gap:4px;align-items:center;border-top:1px solid #e9d9bd;padding:3px 0;font-size:11px}.rank-progress-row strong{text-align:right;font-size:11px}.rank-progress-row em{min-width:47px;text-align:right;font-style:normal;color:#a46032;font-weight:800}.rank-progress-row em:last-child{white-space:nowrap}.next-rank p{font-size:10px;line-height:1.4;margin:5px 0 0;font-weight:700;color:#8b532d}#result[data-rank="16"] #rank,#result[data-rank="17"] #rank,#result[data-rank="18"] #rank,#result[data-rank="19"] #rank,#result[data-rank="20"] #rank{color:#9a6021;text-shadow:0 1px #fff,0 0 10px #f3c771;animation:rankRise .7s ease-out both}#result[data-rank="20"] #rank{color:#8d4e17;text-shadow:0 1px #fff,0 0 12px #f1ca68,0 0 22px #e9ad43;font-size:clamp(19px,6vw,26px)}#result[data-rank="20"] .rank-label:before,#result[data-rank="20"] .rank-label:after{content:'✦';color:#d5a33c;margin:0 8px;display:inline-block;animation:rankSpark 1.2s ease-out both}@keyframes rankRise{from{opacity:.45;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}@keyframes rankSpark{0%{opacity:0;transform:scale(.2) rotate(-25deg)}60%{opacity:1;transform:scale(1.25) rotate(15deg)}100%{opacity:1;transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){#result[data-rank] #rank,#result[data-rank="20"] .rank-label:before,#result[data-rank="20"] .rank-label:after{animation:none}}
.save-image{display:block;width:100%;pointer-events:auto;margin-top:10px;min-height:43px;padding:10px 14px;border:1px solid #af8050;border-radius:7px;background:linear-gradient(#fff5d9,#e7c997);box-shadow:0 3px 0 #ab8a61;color:#64412a;font-size:14px;font-weight:800}.save-image:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 #ab8a61}.save-image:disabled{opacity:.55}.share-x{margin-top:8px}.share-hint{font-size:10px;line-height:1.4;color:#755946;margin:9px 0 0}#imageDialog{width:min(95vw,700px);padding:16px;max-height:calc(100dvh - 30px)}#imageDialog h2{margin:0 0 8px;font-size:18px}#imageDialog p{margin:0 0 8px;font-size:13px;line-height:1.4}#sharePreview{display:block;width:100%;height:auto;max-height:60dvh;object-fit:contain;user-select:auto;-webkit-user-select:auto;-webkit-touch-callout:default;border:1px solid #dcc6a5}#imageDialog .image-download{display:block;pointer-events:auto;text-decoration:none;text-align:center;margin-top:12px}#imageDialog .secondary{min-height:42px}
.result-share{margin:10px 0 13px;padding:10px;border:2px solid #d3a76a;border-radius:9px;background:#fff9eccf;box-shadow:0 3px 0 #b99162;text-align:left}.result-share>b{display:block;margin:0 0 8px;color:#704326;font-size:13px}.share-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.share-actions .save-image,.share-actions .share-x{display:flex;align-items:center;justify-content:center;width:100%;margin:0;min-height:48px;padding:8px 4px;font-size:clamp(11px,3.4vw,14px);white-space:nowrap}.share-actions .share-x{background:linear-gradient(#45413c,#24201e);border:2px solid #39312a}.result-share .share-hint{margin:8px 0 0;font-size:11px;line-height:1.35}
/* Keep the replay and share actions visible above the detailed record. */
#result{margin:0;align-self:center;width:100%;padding:10px 13px;max-height:100%;scrollbar-width:thin}#result .eyebrow{font-size:10px}#result h2{margin:2px 0;font-size:21px}#result .rank-label{margin:3px 0 0}#result h3{margin:0 0 6px;font-size:18px}.result-share{margin:6px 0 8px;padding:7px 9px}.result-share>b{margin-bottom:5px}.share-actions .save-image,.share-actions .share-x{min-height:42px}.result-share .share-hint{margin-top:5px;font-size:10px}#result #again{min-height:43px;margin-bottom:10px}.next-rank{margin:0 0 6px;padding:6px 8px}.next-rank>b{margin:1px 0 3px}.rank-progress-row{padding:2px 0}.next-rank p{margin-top:3px}.results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;text-align:left}.results>div{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;padding:4px 0;font-size:10px}.results b{font-size:16px;line-height:1.1}#resultnote{margin:5px 0}#result .text-button{padding:6px 5px 0}
