:root{--ink:#142e30;--cream:#fff6e3;--red:#d84d35;--gold:#f4c665;--muted:#8a9d96;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;color:var(--cream);background:#102729;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 45% 10%,#234644 0,transparent 60%),#102729}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button:disabled{cursor:default}button[hidden],[hidden]{display:none!important}.layout{min-height:100svh;display:grid;grid-template-columns:1fr minmax(320px,440px) .7fr;gap:clamp(24px,5vw,90px);max-width:1400px;margin:auto;padding:40px 6vw;align-items:center}.intro{align-self:center}.brand-mark{font-family:serif;border:1px solid #aec0aa66;width:54px;height:54px;display:grid;place-items:center;transform:rotate(-6deg);font-size:30px;margin-bottom:38px;color:var(--gold)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--gold)}h1{font-size:clamp(30px,3.7vw,52px);line-height:1.6;letter-spacing:.05em;margin:24px 0}h1 span{color:var(--gold);white-space:nowrap}.lead{font-size:13px;line-height:2.2;color:#c1cdbf}.steps{margin-top:42px;font-size:12px;line-height:2}.steps b{font-size:10px;color:var(--gold);margin-right:14px}.desktop-tip{font-size:10px;color:var(--muted);margin-top:30px}.machine{position:relative;border:1px solid #72958a44;background:#fbf1dc;border-radius:26px;overflow:hidden;color:var(--ink);box-shadow:0 28px 70px #0005,0 0 0 7px #ffffff04;width:100%;max-width:440px}.game-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 12px}.wordmark{text-decoration:none;color:var(--ink);font-size:19px;font-weight:950;line-height:1;letter-spacing:.07em;display:flex;flex-direction:column;gap:6px}.wordmark>span:first-child{font-size:8px;letter-spacing:.4em;color:#8e5f40}.wordmark-bottom{font-size:11px;letter-spacing:.25em}.wordmark-bottom b{font-size:16px;color:var(--red);margin-left:3px}.icon-button{border:1px solid #d5cbb7;border-radius:99px;background:transparent;font-size:10px;font-weight:800;padding:10px 12px;color:#586457}.icon-button[aria-pressed=true]{color:var(--red);border-color:var(--red)}.scorebar{display:flex;justify-content:space-between;padding:8px 25px 0;align-items:center}.scorebar small{display:block;font-size:9px;letter-spacing:.08em;color:#7c806b}.scorebar strong{display:block;font-size:40px;font-weight:900;line-height:1.15;font-variant-numeric:tabular-nums}.scorebar em{font-size:20px;font-style:normal;margin-left:4px}.scorebar .best{text-align:right}.scorebar .best strong{font-size:24px;color:#9a7047}.scorebar .best em{font-size:13px}.progress{display:flex;gap:4px;padding:13px 25px}.progress i{height:4px;background:#dfd4bc;flex:1;border-radius:4px;transition:background .2s}.progress i.filled{background:var(--red)}.stage{height:390px;position:relative;background:#f3e6cb;isolation:isolate;overflow:hidden}canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:manipulation}.stage-label{position:absolute;top:12px;left:0;right:0;display:flex;gap:6px;justify-content:center;align-items:center;font-size:9px;color:#887b61;letter-spacing:.08em;pointer-events:none}.live-dot{width:4px;height:4px;background:#819879;border-radius:50%}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:linear-gradient(#f8efddeb,#f8efdddb 72%,#f8efdd80);padding:16px 24px;z-index:2}.hero-stamp{font-size:11px;letter-spacing:.3em;transform:rotate(-7deg);color:var(--red);font-weight:900;border:2px solid var(--red);border-radius:50%;width:118px;height:118px;display:flex;flex-direction:column;justify-content:center;box-shadow:inset 0 0 0 4px #f8efdd,inset 0 0 0 5px #d84d3540;margin-bottom:10px}.hero-stamp>span{font-size:59px;line-height:1;letter-spacing:-.06em}.hero-stamp em{font-size:30px;font-style:normal}.overlay h2{font-size:21px;letter-spacing:.03em;margin:12px 0 0}.overlay p{font-size:11px;line-height:1.9;color:#78765f;margin:12px 0 20px}.primary{border:0;background:var(--red);color:#fff9e9;font-weight:800;border-radius:12px;padding:16px 18px;box-shadow:0 4px 0 #a63729;min-height:53px;width:100%;display:flex;align-items:center;justify-content:space-between;font-size:14px;transition:transform .1s}.primary:active,.drop:active{transform:translateY(3px);box-shadow:none}.primary span{font-size:20px;line-height:1}.overlay small{font-size:8px;color:#91856b;display:block;margin-top:14px}.control-area{padding:16px 24px 0;background:var(--ink);color:var(--cream)}.drop{width:100%;border:1px solid #e7d29f50;border-radius:12px;padding:12px;background:#f6cd72;box-shadow:0 4px 0 #a57c38;color:var(--ink);display:flex;flex-direction:column;gap:4px;min-height:60px;touch-action:manipulation}.drop span{font-size:8px;letter-spacing:.14em}.drop b{font-size:17px;letter-spacing:.06em}.drop:disabled{background:#31504b;color:#9eafa2;border-color:#49635a;box-shadow:0 4px 0 #0e2423}.control-area p{text-align:center;font-size:9px;color:#b2c2ad;margin:12px 0 0;min-height:20px}.game-footer{padding:9px 18px 15px;background:var(--ink);display:flex;justify-content:space-between;align-items:center;font-size:7px;color:#9cae9c}.game-footer button{border:0;padding:4px 0;background:transparent;color:#c0cbb4;font-size:8px;text-decoration:underline;text-underline-offset:3px}.toast{position:absolute;top:75px;left:0;right:0;text-align:center;pointer-events:none;color:var(--red);font-size:24px;font-weight:900;z-index:3;opacity:0;transform:translateY(10px);transition:opacity .15s,transform .15s;text-shadow:0 2px #fff7df}.toast.show{opacity:1;transform:translateY(0)}.result .eyebrow{margin:0;color:#aa7852;font-size:9px}.result h2{font-size:20px}.result-number{font-size:84px;line-height:1.1;color:var(--red);font-weight:950;letter-spacing:-5px}.result-number em{font-size:40px;font-style:normal;letter-spacing:0}.result p{margin:5px 0 12px}.result .new-best{font-size:10px;color:#b17321;margin-bottom:14px;font-weight:bold}.secondary{margin-top:12px;width:100%;min-height:43px;border:1px solid #c9bda1;border-radius:10px;background:transparent;color:var(--ink);font-size:12px;font-weight:bold}.result .share-status{font-size:9px;min-height:14px;margin:9px 0 0}.result textarea{width:100%;height:60px;border:1px solid #c9bda1;border-radius:6px;font-size:10px;padding:6px}.note{height:550px;display:flex;flex-direction:column;align-items:center;justify-content:space-between}.vertical{writing-mode:vertical-rl;font-family:serif;font-size:17px;letter-spacing:.5em;color:#d7d9b9}.note-bottom{text-align:center}.note-bottom b{font-family:serif;font-size:18px}.note-bottom p{font-size:10px;color:#9fb39f;line-height:2}.tiny-bowl{font-size:36px;filter:sepia(.3)}dialog{border:0;border-radius:20px;padding:28px;max-width:390px;width:calc(100% - 32px);color:var(--ink);background:var(--cream);box-shadow:0 20px 90px #0005}dialog::backdrop{background:#071d24b8;backdrop-filter:blur(5px)}dialog h2{font-size:22px}dialog p,dialog li{font-size:11px;line-height:1.9}dialog ol{padding-left:18px}dialog .eyebrow{color:#a97538}.close{position:absolute;right:12px;top:12px;border:0;background:transparent;font-size:27px;color:var(--ink)}.asset-note{color:#a25637;border-top:1px solid #dacdb3;padding-top:12px}@media(max-width:1000px){.layout{grid-template-columns:1fr minmax(320px,410px);padding:24px 5vw;gap:30px}.note{display:none}.intro h1{font-size:34px}}@media(max-width:700px){.layout{display:flex;padding:0;min-height:100svh;justify-content:center;background:#142e30}.intro{display:none}.machine{border:0;border-radius:0;box-shadow:none;min-height:100svh;display:flex;flex-direction:column}.game-header{padding:calc(16px + env(safe-area-inset-top)) 23px 10px}.scorebar{padding-top:6px}.stage{height:auto;min-height:280px;flex:1}.control-area{padding-top:14px}.game-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.overlay{padding:16px 26px}.machine{max-width:480px}.primary{max-width:330px}.stage-label{top:10px}}@media(max-height:710px) and (max-width:700px){.game-header{padding-top:10px}.wordmark{font-size:17px;gap:4px}.scorebar strong{font-size:33px}.progress{padding-top:9px;padding-bottom:9px}.hero-stamp{height:88px;width:88px;font-size:9px}.hero-stamp>span{font-size:44px}.overlay h2{font-size:18px;margin:7px 0 0}.overlay p{margin:9px 0 14px}.primary{min-height:45px;padding:12px 16px}.result-number{font-size:60px}.secondary{margin-top:9px;min-height:35px}.control-area{padding-top:10px}.drop{min-height:51px;padding:8px}.control-area p{margin-top:9px}.game-footer{padding-top:4px;padding-bottom:8px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

@media(max-height:710px) and (max-width:700px){.result{overflow-y:auto;justify-content:flex-start;padding:12px 24px}.result .result-number{font-size:54px;line-height:1}.result h2{font-size:17px;margin-top:5px}.result p{font-size:10px;margin:4px 0 8px}.result .primary{min-height:42px;padding:10px 14px}.result .secondary{flex-shrink:0;min-height:34px;margin-top:8px}.result textarea{flex-shrink:0;min-height:58px}.result .share-status{min-height:12px;margin:6px 0 4px}.result .eyebrow{margin:0}}
/* HARD festival edition */
body{background:radial-gradient(ellipse at 50% 25%,#294338 0,#132c2b 45%,#0c1b20 100%)}
.layout{max-width:1450px}.brand-mark{color:#ffe0a0;border-color:#d0a75d99;box-shadow:0 0 32px #d0a75d10}.intro h1{line-height:1.55;font-weight:950;letter-spacing:.02em}.intro .eyebrow{font-size:9px;letter-spacing:2.4px}.steps b{display:inline-grid;place-items:center;border:1px solid #b38d4855;border-radius:50%;width:23px;height:23px;line-height:1}.machine{border:1px solid #ba914f99;box-shadow:0 32px 90px #0007,0 0 0 6px #d2a35409,0 0 75px #dda44c0c;background:#152d2c}.game-header{background:linear-gradient(120deg,#183b33,#10272b);padding-bottom:15px;border-bottom:1px solid #c69b5040}.wordmark,.wordmark>span:first-child{color:#f9db9b}.wordmark-bottom b{color:#ffbc59}.header-controls{display:flex;gap:6px;align-items:center}.icon-button{border-color:#ae94614d;color:#dcc69b;background:#bda86b08;padding:9px 10px;font-size:8px;min-height:34px}.icon-button[aria-pressed=true]{border-color:#e1b65d;color:#ffe0a0;background:#cfa24a14}.scorebar{background:linear-gradient(120deg,#183b33,#10272b);color:#fff1cb;padding:14px 24px 1px;gap:10px}.scorebar small{color:#b1bda2;font-size:8px}.scorebar strong{font-size:39px;letter-spacing:-1px}.scorebar .best strong{color:#e0b76d}.scorebar .best small{font-size:7px}.arcade-stats{text-align:center;align-self:center;min-width:88px}.arcade-stats>b{display:block;font-size:17px;letter-spacing:.04em;color:#ffd979;margin-top:5px;font-variant-numeric:tabular-nums}.arcade-stats>b small{font-size:9px;font-weight:500;color:#baa880}.combo-pill{display:inline-block;border:1px solid #8f9b7955;border-radius:6px;font-size:8px;padding:4px 7px;letter-spacing:.06em;color:#b8c6b0}.combo-pill.hot{color:#ffe0a0;border-color:#e8b154;background:#dfa44222;box-shadow:0 0 15px #e8b15422;animation:combo-breathe 1.3s ease-in-out infinite alternate}.progress{padding:12px 24px 9px;background:#13302e;gap:4px}.progress i{height:5px;background:#40564b;border-radius:2px}.progress i.filled{background:linear-gradient(90deg,#f4b44a,#ffedb3);box-shadow:0 0 7px #f5bd4c33}.game-meta{background:#13302e;color:#d9cead;padding:0 24px 11px;display:flex;gap:9px;align-items:center;font-size:8px}.hard-badge{color:#f3b865;font-size:7px;letter-spacing:.06em;white-space:nowrap}.hard-badge b{font-size:10px;margin-left:4px}.balance-label{margin-left:auto;color:#acbda5;white-space:nowrap}.balance-label b{color:#dfcda3;font-size:8px;font-variant-numeric:tabular-nums}.balance-track{width:63px;height:4px;background:#4f5a47;border-radius:9px;overflow:hidden}.balance-track i{height:100%;display:block;background:#e9ba60;transition:width .2s}.balance-track i.danger{background:#ff7856}.stage{border-bottom:1px solid #b7874166}.stage-label{top:9px;font-size:7px;color:#806341;font-weight:800;letter-spacing:.12em}.live-dot{background:#b08336}.overlay{background:linear-gradient(#fcf0d6f2,#fcf0d6df 70%,#fcf0d6b0);padding-top:20px;padding-bottom:20px}.festival-ticket{font-size:8px;letter-spacing:.25em;color:#af6831;font-weight:900;margin:0 0 10px}.festival-ticket span{display:block;font-size:8px;letter-spacing:.16em;margin-top:5px;color:#69816c}.hero-stamp{height:112px;width:112px;border-color:#b37b35;color:#a66b28;background:radial-gradient(#fff8e4,#e8bd6850);box-shadow:0 8px 25px #90611e20,inset 0 0 0 4px #fff0cc,inset 0 0 0 5px #a5753555;margin-bottom:6px}.hero-stamp>span{font-size:58px}.overlay h2{font-size:20px;font-weight:900;color:#234135;margin-top:8px}.overlay p{font-size:10px;margin:10px 0 17px;color:#7c7259}.primary{background:linear-gradient(135deg,#e7ac47,#ffe0a0);color:#50301a;box-shadow:0 4px 0 #b88230,0 7px 18px #a5783030;border:1px solid #ffedbe;letter-spacing:.03em}.overlay small{color:#9a8059}.control-area{background:#102c2c;padding-top:16px}.drop{background:linear-gradient(125deg,#c9402d,#ee7450);box-shadow:0 4px 0 #882b25,0 0 22px #f4652722;color:#fff2cf;border:1px solid #ef8b6099}.drop span{color:#ffe0b2;font-weight:700}.drop b{font-size:18px;letter-spacing:.12em}.drop:disabled{box-shadow:0 4px 0 #0a2020;background:#2a4640;border-color:#657a5c55;color:#9aaa91}.drop:disabled span{color:#97aa8e}.control-area p{font-size:8px;color:#b3c2a4;margin-top:11px}.game-footer{background:#102c2c}.game-footer button{font-size:7px}.game-footer span{font-size:6px;color:#8fa58a}.toast{top:24px;display:flex;align-items:center;flex-direction:column;font-size:24px;color:#b14226;line-height:1.2;text-shadow:0 2px 0 #fff4d4,1px 0 0 #fff4d4,-1px 0 0 #fff4d4}.toast b{font-weight:1000;font-style:italic;letter-spacing:-.04em}.toast span{font-size:10px;font-weight:800;color:#79502c;letter-spacing:.05em;margin-top:4px;font-style:normal}.toast.perfect b{color:#c48224;font-size:30px;text-shadow:0 2px #fff5cf,0 3px 0 #99602333}.toast.show{animation:toast-pop .2s cubic-bezier(.1,.9,.4,1.3)}.milestone{pointer-events:none;position:absolute;bottom:15px;left:50%;transform:translate(-50%,12px);width:max-content;max-width:90%;border:1px solid #e5c37d;background:#173a32e8;color:#ffe0a0;box-shadow:0 6px 20px #42291625;border-radius:9px;padding:9px 16px;text-align:center;opacity:0;transition:opacity .2s,transform .2s;z-index:1}.milestone.show{opacity:1;transform:translate(-50%,0)}.milestone b{display:block;font-size:15px;letter-spacing:.06em}.milestone span{display:block;font-size:7px;color:#e6ce99;margin-top:4px}.victory .stage{box-shadow:inset 0 0 0 2px #f9d77e}.result{background:linear-gradient(150deg,#193d35f7,#122e30ef);color:#fff1cd;padding:22px 24px;overflow-y:auto}.result .eyebrow{font-size:8px;color:#dfbe78;letter-spacing:.25em}.result h2{color:#ffe5a8;font-size:20px;line-height:1.5}.result-number{font-size:85px;line-height:1.05;margin-top:3px;letter-spacing:-6px;color:#ffdc82;text-shadow:0 4px 0 #7c5724,0 0 35px #e9bc5533}.result-number em{font-size:39px}.result-rank{font-size:8px;letter-spacing:.12em;color:#ffe5a2;border-top:1px solid #d4aa5666;border-bottom:1px solid #d4aa5666;padding:6px 11px;margin-top:4px}.result #result-message{font-size:9px;color:#bed0b4;margin:8px 0 10px}.result-stats{display:grid;grid-template-columns:1.4fr 1fr 1fr;width:100%;border:1px solid #a58b5355;border-radius:9px;background:#071c1b44;margin-bottom:7px;flex-shrink:0}.result-stats>div{padding:9px 5px;border-right:1px solid #a58b532e}.result-stats>div:last-child{border:0}.result-stats b{display:block;font-size:20px;color:#ffdb80;font-variant-numeric:tabular-nums}.result-stats span{display:block;font-size:6px;letter-spacing:.12em;color:#b9c8ab;margin-top:4px}.result .best-points{color:#b4c4aa;font-size:8px;margin:0 0 10px}.result .best-points b{color:#e5c685}.result .new-best{font-size:8px;color:#ffd976;margin:0 0 9px}.result .secondary{color:#e6d6b3;border-color:#9d8b6355;background:#c6a6550a;font-size:10px;min-height:39px;margin-top:10px}.result .share-status{font-size:8px;color:#b9c8ab;margin-top:7px;min-height:10px}.result textarea{color:#fff0c6;background:#102724;border-color:#8e7954;height:65px;font-size:8px;flex-shrink:0}.note-bottom b{color:#e9ca8b}.fx-low .combo-pill,.fx-low .toast{animation:none!important}.fx-low *{scroll-behavior:auto!important}.fx-low .milestone{transition:none}.fx-low .primary,.fx-low .drop{transition:none}dialog{background:#fff0d0}dialog .asset-note a{color:#9b552c}@keyframes toast-pop{from{transform:translateY(6px) scale(.78)}to{transform:translateY(0) scale(1)}}@keyframes combo-breathe{from{box-shadow:0 0 4px #e8b15415}to{box-shadow:0 0 15px #e8b15440}}@media(max-width:700px){.machine{border:0}.game-header{padding-top:calc(14px + env(safe-area-inset-top));padding-bottom:12px}.scorebar{padding-top:9px}.stage{min-height:260px}.overlay{padding-top:16px;padding-bottom:16px}.festival-ticket{margin-bottom:9px}.game-meta{padding-bottom:10px}.primary{max-width:330px}.result .primary{flex-shrink:0}.result-stats{max-width:330px}.result-number{font-size:80px}.control-area{padding-top:14px}}@media(max-height:740px) and (max-width:700px){.game-header{padding-top:9px;padding-bottom:9px}.scorebar{padding-top:7px}.scorebar strong{font-size:30px}.scorebar .best strong{font-size:21px}.wordmark{font-size:16px;gap:4px}.wordmark-bottom{font-size:9px}.wordmark-bottom b{font-size:13px}.icon-button{min-height:29px;font-size:7px;padding:7px 8px}.progress{padding-top:8px;padding-bottom:7px}.game-meta{padding-bottom:8px}.stage{min-height:230px}.hero-stamp{height:80px;width:80px}.hero-stamp>span{font-size:40px}.hero-stamp em{font-size:22px}.festival-ticket{font-size:7px;margin-bottom:7px}.festival-ticket span{font-size:7px;margin-top:4px}.overlay h2{font-size:17px;margin-top:5px}.overlay p{font-size:9px;margin:8px 0 12px}.primary{min-height:43px;padding:11px 14px;font-size:12px}.overlay small{font-size:7px;margin-top:11px}.drop{min-height:53px;padding:9px}.drop b{font-size:16px}.control-area{padding-top:10px}.control-area p{margin-top:10px;min-height:15px;font-size:7px}.game-footer{padding-top:5px;padding-bottom:8px}.result{justify-content:flex-start;padding:16px 23px}.result h2{font-size:17px;margin-top:7px}.result-number{font-size:59px;line-height:1.05;margin-top:4px}.result-number em{font-size:30px}.result-rank{font-size:6px;padding:4px 8px;margin-top:3px}.result #result-message{font-size:8px;margin:6px 0 8px}.result-stats>div{padding:7px 4px}.result-stats b{font-size:17px}.result-stats span{font-size:5px}.result .best-points{font-size:7px;margin-bottom:8px}.result .new-best{font-size:7px;margin-bottom:8px}.result .primary{min-height:39px;padding:9px 12px}.result .secondary{min-height:32px;margin-top:8px;font-size:9px}.result .share-status{font-size:7px;min-height:9px;margin-top:6px}.toast{top:22px}.toast.perfect b{font-size:27px}.milestone b{font-size:13px}}@media(max-height:600px) and (max-width:700px){.stage{min-height:235px}.overlay:not(.result){justify-content:flex-start;overflow-y:auto;padding:12px 23px}.festival-ticket{display:none}.hero-stamp{width:65px;height:65px;font-size:8px;flex-shrink:0}.hero-stamp>span{font-size:33px}.hero-stamp em{font-size:18px}.overlay h2{font-size:15px}.overlay p{font-size:8px;margin:6px 0 10px}.overlay small{margin-top:8px}.overlay .primary{flex-shrink:0}.result{padding-top:12px}}@media(prefers-reduced-motion:reduce){.combo-pill,.toast{animation:none!important}}

.fx-low *{transition:none!important}

.serving-count{display:block;font-size:7px;letter-spacing:.03em;color:#b6c3a8;margin-top:5px;white-space:nowrap}.serving-count b{color:#e8d6a9;font-size:8px}.result-serving{font-size:10px;color:#e2c58d;letter-spacing:.14em;margin:4px 0 6px}.result .result-rank{margin-top:2px}@media(max-height:740px) and (max-width:700px){.serving-count{font-size:6px;margin-top:3px}.serving-count b{font-size:7px}.result-serving{font-size:8px;margin:3px 0 5px}}
.result .share-status:empty{display:none}.result{padding-top:16px;padding-bottom:16px}.result .primary{min-height:51px}.result-number{font-size:72px}@media(min-width:701px){.stage{height:450px}}@media(max-height:740px) and (max-width:700px){.result-number{font-size:59px}.result .primary{min-height:39px}}
/* Spectator edition: always MAX unless the system requests reduced motion. */
.max-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 10px;border:1px solid #ecc774;color:#ffe7a6;border-radius:99px;font-size:8px;font-weight:900;background:#dba84a19;box-shadow:0 0 14px #e2b55d15;white-space:nowrap}.reaction{position:absolute;left:9px;right:9px;bottom:9px;height:80px;padding:7px 14px 7px 7px;border:2px solid #edc169;background:linear-gradient(115deg,#12342df5,#234b3cf5);box-shadow:0 5px 0 #765220,0 10px 25px #301a1744;z-index:1;display:flex;align-items:center;gap:13px;pointer-events:none;opacity:0;transform:translateX(45px) rotate(-3deg);transition:opacity .12s,transform .16s cubic-bezier(.13,.89,.4,1.25);border-radius:7px}.reaction.show{opacity:1;transform:translateX(0) rotate(-2deg)}.reaction-face{position:relative;width:73px;height:65px;flex-shrink:0;overflow:hidden;border-radius:4px;background:radial-gradient(#eccd87,#ae8133)}.reaction-face img{width:100%;height:auto;display:block;transform:translateY(-4px)}.reaction-face small{position:absolute;bottom:0;left:0;right:0;font-size:6px;text-align:center;background:#14382ee8;color:#f9e0ac;padding:2px;font-weight:800}.reaction>b{font-size:18px;line-height:1.4;color:#fff0c9;font-weight:950;font-style:italic;text-shadow:1px 2px #0a211e;letter-spacing:-.03em}.reaction.bad{border-color:#ee8352;background:linear-gradient(115deg,#773325f5,#4b241ff5);transform:translateX(-45px) rotate(3deg)}.reaction.bad.show{transform:translateX(0) rotate(2deg)}.reaction.win{border:3px solid #ffdc81;box-shadow:0 5px 0 #8b5f25,0 0 30px #ffc45b33}.toast{top:24px}.toast b{font-size:clamp(26px,8vw,35px);font-style:italic;font-weight:1000;letter-spacing:-.075em;color:#c83c25;-webkit-text-stroke:.5px #fff2ce;text-shadow:0 3px 0 #772e1e,0 5px 9px #a05f3333}.toast.perfect b{font-size:clamp(28px,9vw,38px);color:#e9ab34;-webkit-text-stroke:.7px #945524;text-shadow:0 3px 0 #fff6d7,1px 0 #fff6d7,-1px 0 #fff6d7,0 7px 10px #76521b33}.toast span{font-size:10px;letter-spacing:.04em;color:#673d1f;background:#fff3cfdf;padding:3px 9px;border-radius:99px;margin-top:9px;box-shadow:0 2px 0 #c19b5b33}.milestone{top:103px;bottom:auto;max-width:94%;border-radius:5px;background:#173a32f2;z-index:1;padding:8px 14px}.milestone b{font-size:16px;letter-spacing:.02em}.milestone span{font-size:7px}.danger .stage-label{color:#b43f27;background:#fff2cee8;border:1px solid #ca6e3a55;padding:4px 7px;left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:90%;border-radius:99px}.fever .machine{animation:fever-glow 2s ease-in-out infinite alternate}.fever .combo-pill{background:#d9a14133;box-shadow:0 0 14px #ffd47755}.victory .stage{box-shadow:inset 0 0 0 3px #ffda73}.victory .milestone b{font-size:18px}.fx-low .reaction{display:none}.fx-low .machine{animation:none!important}.fx-low .toast b{-webkit-text-stroke:0;text-shadow:0 2px #fff3cd}.fx-low .milestone{top:auto;bottom:10px}@keyframes fever-glow{from{box-shadow:0 32px 80px #0007,0 0 25px #e7b04415}to{box-shadow:0 32px 80px #0007,0 0 38px #e7b04438}}@media(max-height:740px) and (max-width:700px){.max-badge{min-height:29px;font-size:7px;padding:7px 8px}.reaction{height:58px;bottom:5px;padding:4px 10px 4px 5px;gap:9px}.reaction-face{width:57px;height:48px}.reaction>b{font-size:15px}.reaction-face small{font-size:5px;padding:1px}.milestone{top:87px;padding:7px 11px}.milestone b{font-size:13px}.milestone span{font-size:6px}.toast{top:20px}.toast b{font-size:26px}.toast.perfect b{font-size:28px}.toast span{font-size:8px;margin-top:6px}.victory .milestone b{font-size:15px}}@media(prefers-reduced-motion:reduce){.reaction{display:none}.machine{animation:none!important}}

.result{z-index:4}
/* Restaurant arcade header: one sign, one order ticket, one loud customer. */
.game-header.ramen-header{display:block;padding:9px 18px 8px;background:repeating-linear-gradient(90deg,#c64b31 0,#c64b31 48px,#bc422d 48px,#bc422d 50px);border-bottom:3px solid #edbe6c;color:#fff1cd;position:relative;isolation:isolate}.ramen-header:after{content:"";position:absolute;inset:4px 5px;border:1px solid #f6ce8880;border-bottom:0;border-radius:16px 16px 0 0;pointer-events:none;z-index:-1}.shop-topline{display:flex;align-items:center;justify-content:space-between;min-height:23px;margin-bottom:1px}.shop-curtain{font-size:8px;letter-spacing:.2em;font-weight:900;color:#ffdf9c;border-left:3px solid #ffda84;padding-left:7px}.ramen-header .icon-button{background:#762b2338;border-color:#f6cf8790;color:#fff0c5;min-height:28px;padding:6px 10px;font-size:8px}.ramen-header .icon-button[aria-pressed=true]{background:#ffe6a3;color:#703724}.sign-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1px 1px 4px}.wordmark.arcade-wordmark{display:flex;gap:0;flex-direction:column;transform:rotate(-3deg);padding:1px 0 4px;white-space:nowrap}.wordmark.arcade-wordmark .chashu-name{font-size:29px;font-weight:1000;letter-spacing:-.08em;line-height:1.15;color:#fff4d2;text-shadow:2px 2px 0 #6b2c24;-webkit-text-stroke:.45px #6b2c24}.chashu-twelve{font-size:63px;line-height:.93;letter-spacing:-.09em;color:#ffdf78;font-weight:1000;text-shadow:2px 3px 0 #7c3025,0 5px 0 #f1aa4333;-webkit-text-stroke:1px #713025;display:flex;align-items:baseline;gap:5px;margin-left:3px}.chashu-twelve em{font-size:37px;font-style:normal;letter-spacing:-.12em;color:#fff1ba}.chashu-twelve em span{font-size:39px;display:inline-block;transform:rotate(9deg);margin-left:4px;color:#ffe277}.order-ticket{position:relative;width:112px;flex-shrink:0;color:#55372a;background:#fff2ce;padding:9px 6px 7px;text-align:center;transform:rotate(5deg);box-shadow:3px 4px 0 #8c35264d;border-top:3px dotted #c54d34;border-bottom:3px dotted #c54d34}.order-ticket:before,.order-ticket:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#c14a32;top:46%;left:-3px}.order-ticket:after{left:auto;right:-3px}.order-ticket>small{display:block;letter-spacing:-.04em;font-size:7px;font-weight:800;color:#aa4930}.order-line{display:flex;justify-content:center;align-items:baseline;gap:2px;font-size:10px;font-weight:900;white-space:nowrap}.order-line b{font-size:38px;letter-spacing:-.07em;color:#b83f29;line-height:1.2;font-variant-numeric:tabular-nums}.order-line em{font-size:14px;font-style:normal;color:#5f3b2a}.order-ticket p{font-size:6px;margin:1px 0 0;letter-spacing:.03em;border-top:1px dashed #bf9664;padding-top:3px;color:#a5784d}.ramen-status{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-top:1px solid #f8cc8360;padding:6px 1px 0}.serving-shout{font-size:13px;font-weight:900;color:#fff2c3;white-space:nowrap}.serving-shout>b{font-size:25px;font-style:italic;line-height:1;letter-spacing:-.05em;color:#ffe38e;text-shadow:1px 2px #8d3428}.serving-shout small{font-size:7px;font-weight:500;margin-left:5px;color:#f7d4a4}.score-scribble{font-size:10px;font-weight:900;color:#fff2c4;white-space:nowrap}.score-scribble>span{font-size:13px;letter-spacing:.03em}.score-scribble small{font-size:6px;font-weight:500;margin-left:4px;color:#f7d4a4}.score-scribble small b{font-size:8px;font-weight:800}.combo-line{text-align:center;height:24px;margin-top:5px}.combo-sticker{display:inline-block;background:#ffe29a;color:#913b28;font-size:11px;font-weight:950;letter-spacing:.03em;line-height:1;padding:5px 17px 5px;transform:rotate(-1deg);clip-path:polygon(3% 0,100% 0,97% 100%,0 100%);min-width:170px}.combo-sticker.hot{color:#733129;background:#fff0af;animation:shout-bob .7s ease-in-out infinite alternate}.character-warning{height:37px;padding:0 18px;display:flex;align-items:center;gap:8px;background:#153a32;border-bottom:1px solid #d5ab5b77;color:#e8dfbd}.warning-face{height:36px;width:39px;overflow:hidden;flex-shrink:0;background:radial-gradient(#f5d18a,#9d7435);border-radius:50%;border:1px solid #cda65b}.warning-face img{width:100%;height:auto;display:block;transform:translateY(-3px)}.character-warning p{position:relative;margin:0;font-size:10px;letter-spacing:.025em;line-height:1.4;background:#f3dfb7;color:#3a4633;padding:4px 10px;border-radius:99px;flex:1;text-align:center;box-shadow:0 2px #0b251f}.character-warning p:before{content:"";position:absolute;border-style:solid;border-width:4px 7px 4px 0;border-color:transparent #f3dfb7 transparent transparent;left:-6px;top:8px}.character-warning.risky{background:#712f25}.character-warning.risky p{background:#ffdc86;color:#a43526;font-size:13px}.character-warning.risky p:before{border-right-color:#ffdc86}.character-warning.uneasy p{background:#f5cc87;color:#8b4b2b}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.fx-low .combo-sticker{animation:none!important}@keyframes shout-bob{from{transform:rotate(-2deg) translateY(0)}to{transform:rotate(1deg) translateY(-1px)}}@media(max-width:700px){.game-header.ramen-header{padding-top:calc(9px + env(safe-area-inset-top));padding-bottom:5px}.wordmark.arcade-wordmark .chashu-name{font-size:27px}.chashu-twelve{font-size:57px}.chashu-twelve em{font-size:34px}.chashu-twelve em span{font-size:36px}.ramen-status{padding-top:5px}.combo-line{margin-top:4px}.character-warning{height:34px}.warning-face{height:33px;width:36px}.character-warning p{font-size:9px}}@media(max-height:740px) and (max-width:700px){.game-header.ramen-header{padding:6px 15px 3px}.shop-topline{min-height:20px;margin-bottom:0}.shop-curtain{font-size:7px;letter-spacing:.15em}.ramen-header .icon-button{min-height:24px;font-size:7px;padding:4px 9px}.sign-row{gap:9px;padding:0 0 3px}.wordmark.arcade-wordmark .chashu-name{font-size:24px}.chashu-twelve{font-size:49px;line-height:.9}.chashu-twelve em{font-size:29px}.chashu-twelve em span{font-size:31px}.order-ticket{width:100px;padding:6px 5px 4px}.order-ticket>small{font-size:6px}.order-line{font-size:8px}.order-line b{font-size:33px}.order-line em{font-size:12px}.order-ticket p{font-size:5px;padding-top:2px}.ramen-status{padding-top:4px}.serving-shout{font-size:11px}.serving-shout>b{font-size:21px}.serving-shout small{font-size:6px;margin-left:4px}.score-scribble{font-size:8px}.score-scribble>span{font-size:11px}.score-scribble small{font-size:5px}.score-scribble small b{font-size:7px}.combo-line{height:20px;margin-top:3px}.combo-sticker{font-size:9px;padding:4px 12px;min-width:145px}.character-warning{height:31px;padding:0 15px;gap:7px}.warning-face{width:32px;height:29px}.character-warning p{font-size:8px;padding:3px 8px}.character-warning.risky p{font-size:11px}.character-warning p:before{top:6px}}@media(prefers-reduced-motion:reduce){.combo-sticker{animation:none!important}}
