:root{--panel: rgba(28,18,13,.78);--ink: #f4ead8;--muted: #c9b79c;--amber: #f0b43c;--danger: #e2483a;--font-display: "Dela Gothic One", "Hiragino Sans", "Yu Gothic", sans-serif;--font-score: "Rye", Georgia, serif;--font-body: "Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;color-scheme:dark}html,body{height:100%}[hidden]{display:none!important}body{margin:0;background:#1f3b4d;color:var(--ink);font-family:var(--font-body);overflow:hidden;-webkit-user-select:none;user-select:none}#c{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.hud{position:fixed;left:0;right:0;top:0;pointer-events:none;padding-top:calc(env(safe-area-inset-top,0px) + 10px);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:grid;grid-template-columns:1fr auto 1fr;align-items:start}.score{grid-column:2;display:flex;flex-direction:column;align-items:center;gap:5px}.clock{font-family:var(--font-score);font-size:min(15vw,60px);line-height:1;color:var(--amber);font-variant-numeric:tabular-nums;-webkit-text-stroke:min(1.2vw,5px) #1c120d;paint-order:stroke fill;text-shadow:0 min(1vw,4px) 0 #1c120d;transition:color .2s,opacity .15s}.clock.urgent{color:#ff3d2e}.clock.tick{animation:ctick .25s ease-out}@keyframes ctick{0%{transform:scale(1.25)}to{transform:none}}@media(prefers-reduced-motion:reduce){.clock.tick{animation:none}}.readout{display:grid}.readout>*{grid-area:1/1;justify-self:center;transition:opacity .15s}.dist{display:flex;gap:min(5vw,22px);align-items:baseline;font-family:var(--font-score);font-size:min(11vw,46px);-webkit-text-stroke:min(1.2vw,5px) #1c120d;paint-order:stroke fill;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;text-shadow:0 2px 0 rgba(0,0,0,.45);opacity:0;padding-bottom:3px;border-bottom:2px solid transparent;transition:opacity .15s,color .2s,border-color .2s}.dist small{font-size:.55em;opacity:.7;margin-left:2px}.dist .lab{font-family:var(--font-display);font-size:.36em;-webkit-text-stroke:0;margin-right:4px;opacity:.85;vertical-align:.35em}.score.flying .clock,.score.flying .gripbar{opacity:0}.score.flying .dist{opacity:1}.dist.final{border-bottom-color:currentColor}.dist.best,.dist.over{color:var(--amber)}.dist.punch{animation:punch .12s ease-out}@keyframes punch{0%{transform:scale(1.15)}to{transform:none}}@media(prefers-reduced-motion:reduce){.dist.punch{animation:none}}.gripbar{transition:opacity .15s;position:relative;width:min(44vw,170px);height:8px;background:#1c120d99;border-radius:3px;overflow:hidden}.gripbar i,.gripbar b{position:absolute;left:0;top:0;bottom:0;width:100%}.gripbar b{background:var(--danger);opacity:.75}.gripbar i{background:var(--amber);transition:background-color .2s}.gripbar.jolt{animation:jolt .25s}@keyframes jolt{0%,to{transform:none}25%{transform:translateY(-2px)}50%{transform:translateY(2px)}75%{transform:translateY(-1px)}}@media(prefers-reduced-motion:reduce){.gripbar.jolt{animation:none}}.gripbar i.low{background:var(--danger)}.corner{grid-column:3;justify-self:end;display:flex;gap:8px}.iconbtn{pointer-events:auto;width:36px;height:36px;border-radius:50%;border:0;background:var(--panel);color:var(--ink);padding:8px;cursor:pointer}.iconbtn svg{display:block;width:100%;height:100%}.iconbtn .off,.iconbtn.muted .on{display:none}.iconbtn.muted .off{display:inline}.iconbtn.muted{color:var(--muted)}.iconbtn:focus-visible{outline:2px solid var(--amber);outline-offset:2px}#ink{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}.card button:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.count{position:fixed;inset:0;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(20,10,6,0) 0,rgba(20,10,6,0) min(40vw,240px),rgba(20,10,6,.25) 100%)}.count:before{content:"";position:absolute;inset:0;background:#140a06;opacity:0}.count.pop:before{animation:cdim 1s ease-out forwards}@keyframes cdim{0%{opacity:.35}35%{opacity:.1}to{opacity:.08}}.count>*{grid-area:1/1}.count .ring{width:min(70vw,420px);aspect-ratio:1;max-width:100%;border-radius:50%;border:min(2.4vw,14px) solid var(--cc,#f0b43c);opacity:0}.count .num{will-change:transform;font-family:var(--font-score);font-size:min(62vw,360px);line-height:1;color:var(--cc,#f0b43c);-webkit-text-stroke:min(2.2vw,13px) #1c120d;paint-order:stroke fill;text-shadow:0 min(2vw,12px) 0 #1c120d,0 0 min(10vw,60px) var(--cc,#f0b43c)}.count[data-n="3"]{--cc:#f0b43c}.count[data-n="2"]{--cc:#ff8a2a}.count[data-n="1"]{--cc:#ff3d2e}.count.pop .num{animation:cpop 1s linear forwards}.count.pop .ring{animation:cring .6s ease-out}@keyframes cpop{0%{transform:scale(2.6) rotate(-12deg);opacity:0;animation-timing-function:cubic-bezier(.2,1.5,.35,1)}22%{opacity:1}45%{transform:none;animation-timing-function:cubic-bezier(.4,0,.2,1)}65%{transform:translateY(calc(-50vh + 150px)) scale(.42);opacity:1}85%,to{transform:translateY(calc(-50vh + 130px)) scale(.4);opacity:0}}@keyframes cring{0%{transform:scale(.35);opacity:1}to{transform:scale(1.25);opacity:0}}@media(prefers-reduced-motion:reduce){.count.pop .num,.count.pop .ring{animation:none}}.title{position:fixed;inset:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:calc(env(safe-area-inset-top,0px) + min(14vh,110px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:linear-gradient(to bottom,#140a0699,#140a0626 55%,#140a0600 75%);transition:opacity .35s}.title.gone{opacity:0}.title h1{margin:0;font-family:var(--font-display);font-weight:400;font-size:min(17vw,96px);line-height:1.02;text-align:center;color:var(--amber);-webkit-text-stroke:min(1.6vw,9px) #1c120d;paint-order:stroke fill;text-shadow:0 min(1.4vw,8px) 0 #1c120d;transform:rotate(-4deg);animation:tin .6s cubic-bezier(.2,1.5,.35,1)}.title h1 span{display:block;color:var(--ink);font-size:.82em}.title h1 small{display:block;color:var(--ink);font-size:.5em}.title .en{margin:0;font-family:var(--font-score);font-size:min(4.4vw,22px);letter-spacing:.18em;white-space:nowrap;color:var(--ink);opacity:.85;transform:rotate(-4deg)}.title.compact h1,.title.compact .en{display:none}.title.compact{background:none}@keyframes tin{0%{transform:scale(1.8) rotate(-14deg);opacity:0}to{transform:rotate(-4deg);opacity:1}}@media(prefers-reduced-motion:reduce){.title h1{animation:none}}.hud .score{transition:opacity .3s}.hud.pre .score,.hud.done .score{opacity:0;pointer-events:none}.result{position:fixed;inset:0;display:flex;align-items:safe center;justify-content:center;pointer-events:none;overflow-y:auto;overscroll-behavior:contain;padding-top:calc(env(safe-area-inset-top,0px) + 10px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 10px);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.card{position:relative;z-index:2;pointer-events:auto;background:#23170f;border-radius:14px;padding:14px 14px 12px;width:min(340px,100%);display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:0 10px 30px #0006;text-align:center}.card h2{margin:0;font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1.1;color:var(--amber);-webkit-text-stroke:5px #1c120d;paint-order:stroke fill;transform:rotate(-3deg)}.praise{font-family:var(--font-display);font-size:16px;letter-spacing:.06em;color:var(--amber);-webkit-text-stroke:3px #1c120d;paint-order:stroke fill;text-shadow:0 0 14px rgba(240,180,60,.55);animation:praise .9s cubic-bezier(.2,1.6,.35,1) both,glow 1.2s ease-in-out .9s infinite alternate}.praise:before,.praise:after{content:"\2605";margin:0 6px;font-size:.85em}@keyframes praise{0%{transform:scale(0) rotate(-20deg)}to{transform:none}}@keyframes glow{to{text-shadow:0 0 22px rgba(240,180,60,1)}}.stats{width:100%;margin-top:12px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px}.stat{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px 5px;border-radius:10px;background:#fff6e20f;min-width:0;animation:rowin .45s cubic-bezier(.2,1.3,.4,1) both}.stat:nth-child(2){animation-delay:.18s}.stat:nth-child(3){animation-delay:.36s}@keyframes rowin{0%{transform:translate(-30px);opacity:0}to{transform:none;opacity:1}}.stat .k{font-family:var(--font-display);font-size:11px;color:var(--muted);line-height:1.3;white-space:nowrap}.stat .v{font-family:var(--font-score);font-size:27px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;-webkit-text-stroke:3px #1c120d;paint-order:stroke fill}.stat .v small{font-size:.45em;margin-left:3px;opacity:.75}.stat .b{font-size:9.5px;line-height:1.2;color:var(--muted);font-variant-numeric:tabular-nums;min-height:1em}.stat.new{background:#f0b43c29;box-shadow:inset 0 0 0 2px var(--amber)}.stat.new .v{color:var(--amber)}.stat.new .b{color:var(--amber);font-weight:700}.stamp{position:absolute;right:-8px;top:-9px;font-size:10px!important;padding:1px 5px!important;line-height:1.2;font-family:var(--font-display);font-size:12px;color:#fff;background:var(--danger);padding:3px 8px;border-radius:4px;box-shadow:0 0 0 2px #1c120d;transform:rotate(15deg);opacity:0}.stat.new .stamp{animation:stampIn .4s cubic-bezier(.2,1.8,.4,1) both;animation-delay:var(--sd,.8s)}@keyframes stampIn{0%{transform:scale(2.4) rotate(20deg);opacity:0}to{transform:rotate(15deg);opacity:1}}@keyframes stamp{0%{transform:scale(3) rotate(30deg);opacity:0}to{transform:rotate(10deg);opacity:1}}.confetti{position:fixed;z-index:1;top:-20px;width:9px;height:14px;pointer-events:none;animation:fall linear forwards}@keyframes fall{to{transform:translate(var(--dx),110vh) rotate(var(--rot))}}@media(prefers-reduced-motion:reduce){.stat,.praise,.stat.new .stamp{animation:none;opacity:1}.confetti{display:none}}.card .sub{font-size:12px;color:var(--muted)}.resfoot{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px}.resfoot:not(:has(.lucky:not([hidden]))):not(:has(.sub:not(:empty))){display:none}.chips{display:flex;gap:6px}.card button{font-family:var(--font-body);font-weight:700;font-size:13px;color:var(--ink);background:#4a3022;border:0;border-radius:999px;padding:6px 12px;cursor:pointer}.chips button[aria-pressed=true]{background:var(--ink);color:#2a1a10}.card .primary{background:var(--amber);color:#2a1a10;padding:10px 30px;font-size:15px}.btns{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}.card #shareBtn{padding:10px 20px;font-size:15px}.credit{display:flex;justify-content:space-between;align-items:baseline;align-self:stretch;gap:8px;margin:0;font-size:11px;color:var(--muted)}.credit a{color:inherit;text-underline-offset:3px}#version{position:fixed;right:max(8px,env(safe-area-inset-right,0px));bottom:calc(env(safe-area-inset-bottom,0px) + 4px);margin:0;font-size:10px;line-height:1;color:var(--ink);opacity:.45;pointer-events:none}.photoRow{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 200px minmax(0,1fr);align-items:center;gap:10px}.shotcol{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.photoRow.one .shotcol{visibility:hidden}#photoWrap{position:relative;transform:rotate(-2deg)}#photo{display:block;width:100%;aspect-ratio:480/436;border:5px solid var(--ink);border-radius:4px;background:#1c3546;box-shadow:0 6px 14px #00000073;cursor:pointer}#photoMenu{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:4px;background:#1c120d8c}.card #photoMenu button{min-width:140px;padding:8px 16px;background:var(--ink);color:#2a1a10}.card .shotcol button{display:flex;flex-direction:column;align-items:center;gap:1px;padding:0;background:none;border-radius:4px;font-size:8.5px;font-weight:700;white-space:nowrap;color:var(--muted);opacity:.75}.shotcol img{display:block;width:40px;aspect-ratio:4/3;border:2px solid transparent;border-radius:3px;object-fit:cover}.card .shotcol button.on{opacity:1;color:var(--ink)}.shotcol button.on img{border-color:var(--amber)}#photoToast{position:absolute;left:50%;bottom:10px;transform:translate(-50%);margin:0;padding:6px 12px;border-radius:999px;background:#1c120de0;color:var(--ink);font-size:12px;white-space:nowrap;pointer-events:none}.lucky{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.lucky .chip{font-family:var(--font-display);font-size:11px;color:var(--amber);border:1.5px dashed currentColor;padding:2px 8px;border-radius:3px;animation:chip .4s cubic-bezier(.2,1.6,.4,1) both}.lucky .chip.bad{color:#8a9aa8}.lucky .chip.rare{border-style:solid;box-shadow:0 0 8px #f0b43c8c}.lucky .chip.rare:before{content:"\2605";margin-right:3px}.lucky .chip.super{border:1.5px solid #ff5ad0;box-shadow:0 0 12px #ff5ad0b3;background-image:linear-gradient(90deg,#ff5a5a,#ffd35a,#5aff8a,#5ad6ff,#c85aff,#ff5a5a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:chip .4s cubic-bezier(.2,1.6,.4,1) both,rainbow 1.2s linear infinite}.lucky .chip.super:before{content:"\2726";margin-right:3px}@keyframes chip{0%{transform:scale(0) rotate(-10deg)}to{transform:none}}.stat.word .v{font-family:var(--font-display);font-size:19px;-webkit-text-stroke:3px #1c120d}.dist.lost{color:#ff5ad0}.result.legend:before{content:"";position:fixed;inset:-50%;z-index:0;pointer-events:none;background:repeating-conic-gradient(from 0deg,#ffd65a47 0 10deg,#ff5ac800 10deg 20deg);animation:rays 6s linear infinite}@keyframes rays{to{transform:rotate(360deg)}}.result.legend .card{box-shadow:0 0 0 4px #1c120d,0 0 0 8px #ff5ad0,0 0 40px 10px #ffd65acc;animation:legendIn .7s cubic-bezier(.2,1.6,.35,1) both,legendGlow 1.2s ease-in-out .7s infinite alternate}@keyframes legendIn{0%{transform:scale(.3) rotate(-12deg)}to{transform:none}}@keyframes legendGlow{to{box-shadow:0 0 0 4px #1c120d,0 0 0 8px #5ad6ff,0 0 60px 18px #ff5ac8e6}}.result.legend .card h2{font-size:38px;background:linear-gradient(90deg,#ff5a5a,#ffd35a,#5aff8a,#5ad6ff,#c85aff,#ff5a5a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:0;filter:drop-shadow(0 3px 0 #1c120d);animation:rainbow 1.2s linear infinite}@keyframes rainbow{to{background-position:200% 0}}.result.legend .stat.new{background:#ff5ac82e;box-shadow:inset 0 0 0 2px #ff5ad0}.result.legend .stat.new .v{color:#ffd35a}@media(prefers-reduced-motion:reduce){.result.legend:before,.result.legend .card,.result.legend .card h2{animation:none}}.snd{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:#140a068c;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.snd-box{width:min(100%,260px);box-sizing:border-box;padding:22px 20px 18px;border-radius:14px;background:#23170f;box-shadow:0 10px 30px #00000080;text-align:center}.snd-box svg{width:36px;height:36px;color:var(--amber)}.snd-box p{margin:8px 0 16px;font-family:var(--font-display);font-size:18px;letter-spacing:.08em;color:var(--ink)}.snd-box button{width:100%;height:46px;border:0;border-radius:999px;background:var(--amber);color:#2a1a10;font-family:var(--font-body);font-weight:700;font-size:16px;cursor:pointer}.snd-box button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.share-layer{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:16px;background:#0a06049e}.share-box{width:min(520px,100%);max-height:100%;overflow:auto;box-sizing:border-box;display:flex;flex-direction:column;gap:12px;padding:16px;background:#23170f;border-radius:14px;box-shadow:0 20px 60px #00000080}.share-box:focus{outline:none}.share-box h2{margin:0;font-family:var(--font-display);font-weight:400;font-size:20px;text-align:center;color:var(--amber)}.share-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.share-opts:has(#shareVid[hidden]){grid-template-columns:1fr}.share-card{display:flex;flex-direction:column;min-width:0;padding:0;overflow:hidden;border:2px solid #4a3022;border-radius:10px;background:#1a110b;color:var(--ink);cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent}.share-card:hover:not(:disabled){border-color:var(--amber)}.share-card:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.share-card:disabled{cursor:wait}.share-prev{position:relative;display:block;height:34vh;height:34svh;background:#0d0805}.share-prev img,.share-prev video{display:block;width:100%;height:100%;object-fit:contain}.share-wait{position:absolute;inset:0;display:grid;place-items:center;font-size:13px;color:var(--muted)}.share-lab{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;font-weight:700;font-size:14px;background:#f0b43c29}.share-lab svg{flex:none}.share-close{align-self:center;padding:4px 14px;border:0;background:none;color:var(--muted);font:inherit;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:5px;cursor:pointer}@media(max-height:640px){.photoRow{grid-template-columns:minmax(0,1fr) 180px minmax(0,1fr)}.stat .b{display:none}.card h2{font-size:26px}.result.legend .card h2{font-size:30px}}
