:root{font-family:Noto Sans SC,system-ui,sans-serif;color:#263832;background:#f4f0e7;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100dvh}button{font:inherit;cursor:pointer}button:focus-visible{outline:3px solid #e38b37;outline-offset:3px}#app{min-height:100dvh}.shell{max-width:1120px;margin:auto;padding:30px 32px 24px}.topbar{display:flex;align-items:center;justify-content:space-between}.brand{font-weight:900;font-size:18px;letter-spacing:.08em}.brand span{color:#dd793a}.edition{font-size:11px;font-weight:700;letter-spacing:.14em;color:#89958a}.layout{display:grid;grid-template-columns:minmax(280px,1fr) 390px;align-items:center;gap:8%;padding:24px 0}.intro{max-width:495px}.eyebrow{display:inline-flex;gap:8px;align-items:center;color:#c77340;font-weight:800;font-size:12px;letter-spacing:.13em}.eyebrow:before{content:"";width:20px;height:2px;background:#c77340}.intro h1{font-size:clamp(50px,7vw,82px);line-height:1.1;letter-spacing:-.065em;margin:22px 0 17px;color:#20382f}.intro h1 em{font-style:normal;color:#dc7f43}.lead{font-size:16px;line-height:1.9;color:#68796f;max-width:365px}.tagline{font-weight:700;color:#435d50;font-size:14px;margin:28px 0 18px}.guide{display:flex;gap:12px;flex-wrap:wrap}.pill{padding:10px 13px;border:1px solid #d9ded2;border-radius:9px;background:#faf9f2;color:#62746a;font-size:12px}.note{margin-top:40px;border-left:3px solid #d8a275;padding-left:14px;color:#91a096;line-height:1.7;font-size:12px}.device{position:relative;width:100%;max-width:390px;aspect-ratio:390/720;background:#d6e4cf;border:7px solid #243b31;border-radius:26px;overflow:hidden;box-shadow:0 22px 55px #31443722}.game-host{position:absolute;top:0;right:0;bottom:0;left:0}.game-host canvas{display:block;margin:auto}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:end;justify-content:center;background:linear-gradient(180deg,transparent 20%,#192b22a8 100%);padding:18px;z-index:2}.overlay[hidden],.controls[hidden],.hud[hidden]{display:none}.card{width:100%;background:#fffdf5;border-radius:16px;padding:20px;text-align:center;box-shadow:0 8px 30px #172b2220}.card .small{font-size:11px;letter-spacing:.15em;color:#d27d45;font-weight:800}.card h2{font-size:25px;margin:8px 0;color:#233d30}.card p{font-size:12px;line-height:1.7;color:#7a8d80;margin:5px 0 14px}.primary{width:100%;padding:13px;border:0;border-radius:9px;color:#fff;background:#df8146;font-weight:800;box-shadow:0 4px #b96532}.hud{position:absolute;left:12px;right:12px;top:12px;display:flex;justify-content:space-between;gap:6px;z-index:1;pointer-events:none}.hudbox{background:#fffdf3ed;border-radius:10px;padding:7px 10px;font-size:10px;color:#75877a;font-weight:700;box-shadow:0 2px 8px #182f1f18}.hudbox strong{display:block;font-size:16px;line-height:1.2;color:#294638}.traffic strong{color:#d26348}.controls{position:absolute;bottom:12px;left:12px;right:12px;display:flex;justify-content:space-between;z-index:3;touch-action:none}.control-group{display:flex;gap:8px}.control{width:57px;height:57px;border:1px solid #ffffff9c;border-radius:14px;background:#fffdf3df;color:#345445;font-size:22px;font-weight:800;box-shadow:0 3px 8px #162d1c24;touch-action:none;user-select:none;-webkit-user-select:none}.control.brake{width:72px;font-size:13px}.control.pressed{background:#df8146;color:#fff}.foot{display:flex;justify-content:space-between;border-top:1px solid #dde1d4;padding-top:18px;font-size:11px;color:#9ba69a}.foot strong{color:#788b7b}.game-error{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:25px;text-align:center;background:#f9f6eb;color:#455b4d}.pause-label{position:absolute;top:70px;left:50%;transform:translate(-50%);padding:8px 15px;border-radius:20px;background:#243b31e8;color:#fff;font-size:12px;z-index:4;white-space:nowrap}.pause-label[hidden]{display:none}@media(max-width:720px){.shell{padding:18px 16px 24px}.topbar{margin-bottom:18px}.layout{display:flex;flex-direction:column;gap:18px;padding:0}.intro{width:100%;max-width:390px}.intro h1{font-size:42px;margin:9px 0 5px}.lead{font-size:13px;line-height:1.6;margin:0}.tagline,.guide,.note{display:none}.device{max-width:390px;max-height:calc(100dvh - 150px);min-height:470px}.foot{margin-top:20px}.edition{font-size:10px}}@media(max-height:700px)and (max-width:720px){.intro h1{font-size:32px}.device{min-height:400px}.shell{padding-top:10px}.topbar{margin-bottom:8px}}:root .speech{position:absolute;z-index:3;transform:translate(-50%,-100%);max-width:70%;padding:7px 10px;border:2px solid #354d3f;border-radius:12px;background:#fffdf5;color:#293c31;font-size:12px;font-weight:800;white-space:nowrap;box-shadow:0 3px 8px #182f1f33;pointer-events:none}:root .speech:after{content:"";position:absolute;bottom:-8px;left:50%;width:10px;height:10px;background:#fffdf5;border-right:2px solid #354d3f;border-bottom:2px solid #354d3f;transform:translate(-50%) rotate(45deg)}:root .speech[hidden]{display:none}.control.accelerate{width:62px;background:#df8146;color:#fff;font-size:13px}.control.accelerate.pressed{background:#ad5a2f}.hudbox{padding:7px 6px}.hudbox strong{font-size:13px;white-space:nowrap}@media(max-width:380px){.control{width:48px;height:52px}.control.brake,.control.accelerate{width:51px}.control-group{gap:5px}.hudbox{font-size:9px}.hudbox strong{font-size:12px}}.vertical-controls{flex-direction:column;align-items:center}#controls .vertical-controls .control{width:57px;height:50px;font-size:22px}.controls{align-items:flex-end}@media(max-width:380px){#controls .vertical-controls .control{width:48px;height:46px}}.control.horn{width:66px;height:52px;font-size:13px;background:#f3d18e;color:#6c4c2d}.control.horn:disabled{opacity:.5;cursor:not-allowed}.control.horn span{display:inline-block;min-width:18px;border-radius:9px;background:#fff9e5;font-size:11px}@media(min-width:721px){#app .shell{max-width:1260px}#app .layout{grid-template-columns:minmax(280px,1fr) min(480px,48vw);gap:6%}#app .device{max-width:480px}}.fullscreen{position:absolute;right:12px;top:64px;z-index:5;border:1px solid #ffffffaa;border-radius:8px;background:#fffdf3e8;color:#345445;padding:7px 10px;font-size:12px;font-weight:700}.fullscreen[hidden]{display:none}.device:fullscreen{width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;border:0;border-radius:0;background:#243b31}.device:fullscreen .game-host canvas{object-fit:contain}.device:fullscreen .controls{max-width:940px;left:50%;right:auto;width:calc(100% - 24px);transform:translate(-50%)}.device:fullscreen .hud{max-width:940px;left:50%;right:auto;width:calc(100% - 24px);transform:translate(-50%)}.device:fullscreen .overlay .card{max-width:390px}@media(min-width:721px){#app .shell{max-width:1500px}#app .layout{grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:5%;align-items:center}#app .device{width:100%;max-width:none;aspect-ratio:960/600}#app .intro h1{font-size:clamp(42px,4vw,65px)}#app .fullscreen{top:75px}}.intro{text-align:center}.guide{justify-content:center}.note{border-left:0;padding-left:0}.device{touch-action:none}.device .controls,.device .overlay,.device .fullscreen{touch-action:auto}.hudbox.traffic.red-active{background:#ffded5;border:2px solid #d94b36;box-shadow:0 0 0 3px #e66a4e55}.hudbox.traffic.red-active strong{color:#a72d21!important;font-weight:900}.brand{display:flex;align-items:center;gap:9px}.brand-logo{width:34px;height:34px;border-radius:10px;display:block}.immersive-exit{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:7;border:1px solid #ffffffaa;border-radius:999px;background:#243b31d9;color:#fff;padding:6px 14px;font-size:12px;font-weight:700}.immersive-exit[hidden]{display:none}body.immersive{overflow:hidden;background:#243b31}body.immersive .topbar,body.immersive .intro,body.immersive .board,body.immersive .how-to-play,body.immersive .site-footer{display:none}body.immersive .shell{max-width:none;padding:0;margin:0}body.immersive .layout{display:block;padding:0}body.immersive .device{width:100vw;height:100dvh;max-width:none;max-height:none;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}body.immersive .fullscreen{display:none}body.immersive .device .controls{bottom:max(12px,env(safe-area-inset-bottom))}.device{background:#c1d8bb}@media(min-width:721px){#app .layout{display:flex;flex-direction:column;align-items:center;gap:24px}#app .intro{width:100%;max-width:1100px;text-align:center}#app .guide{justify-content:center}#app .device{width:100%;max-width:1100px}#app .lead{max-width:none}#app .note{margin-top:18px;border-left:0;padding-left:0}}.lives-hearts{display:flex;gap:3px;color:#d85452;letter-spacing:0}.lives-hearts .lost{color:#bbc5b9}.hudbox.lives-low{background:#ffded5;box-shadow:0 0 0 2px #e66a4e88}.hudbox.lives-low strong{color:#a72d21}.result-face{margin:0 auto 4px;line-height:0}.result-face[hidden],.result-face .face-frown,.result-face .face-tear,.result-face.is-sad .face-smile{display:none}.result-face.is-sad .face-frown,.result-face.is-sad .face-tear{display:initial}.hudbox.traffic.yellow-active{background:#fff1c8;box-shadow:0 0 0 2px #e3b34888}.life-loss{position:absolute;z-index:6;transform:translate(-50%);padding:3px 9px;border-radius:999px;background:#fff3ee;border:1px solid #e7a99b;color:#b4382b;font-size:13px;font-weight:900;letter-spacing:.02em;box-shadow:0 3px 10px #7d2b201f;pointer-events:none;opacity:0}.life-loss.play{animation:life-loss 1s cubic-bezier(.3,1.2,.5,1) forwards}@keyframes life-loss{0%{opacity:0;transform:translate(-50%,8px) scale(.7)}22%{opacity:1;transform:translate(-50%) scale(1.12)}45%{transform:translate(-50%,-4px) scale(1)}to{opacity:0;transform:translate(-50%,-30px) scale(1)}}.hudbox.lives-hit{animation:lives-hit .46s ease-in-out}@keyframes lives-hit{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@media(prefers-reduced-motion:reduce){.life-loss.play{animation-duration:.01ms;opacity:1}.hudbox.lives-hit{animation:none}}.how-to-play{max-width:1100px;margin:54px auto 64px;padding:0 4px}.how-to-header{text-align:center;margin-bottom:28px}.how-to-eyebrow{color:#c77340;font-size:11px;font-weight:800;letter-spacing:.16em}.how-to-header h2{margin:9px 0;color:#20382f;font-size:clamp(26px,3vw,36px)}.how-to-header p,.how-to-card p{color:#68796f;font-size:14px;line-height:1.85}.how-to-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.how-to-card{padding:22px;border:1px solid #e0e4d9;border-radius:14px;background:#faf9f2}.how-to-number{color:#d78a58;font-size:12px;font-weight:800;letter-spacing:.08em}.how-to-card h3{margin:10px 0 6px;color:#294638;font-size:16px}.how-to-card p{margin:0}.how-to-note{display:flex;gap:16px;margin-top:16px;padding:18px 22px;border-radius:12px;background:#e8ede0;color:#68796f;font-size:13px;line-height:1.8}.how-to-note strong{color:#385447;white-space:nowrap}@media(max-width:720px){.how-to-play{margin:40px auto 44px;padding:0}.how-to-grid{grid-template-columns:1fr;gap:10px}.how-to-card{padding:17px 19px}.how-to-note{flex-direction:column;gap:4px;padding:16px 19px}}.site-footer{border-top:1px solid #dce1d4;padding:36px 4px 18px;color:#788b7b}.footer-main{display:flex;justify-content:space-between;gap:40px;padding-bottom:32px}.footer-brand strong{display:flex;align-items:center;gap:8px;font-size:17px;color:#294638;letter-spacing:.06em}.footer-brand .brand-logo{width:26px;height:26px;border-radius:8px}.footer-brand strong span{color:#dd793a}.footer-brand p{font-size:13px;line-height:1.9;margin:12px 0 0}.footer-links{display:flex;flex-wrap:wrap;gap:54px}.footer-links div{display:flex;flex-direction:column;gap:10px}.footer-links h2{margin:0 0 3px;font-size:13px;color:#385447}.footer-links a{color:#788b7b;text-decoration:none;font-size:13px}.footer-links a:hover{color:#c77340;text-decoration:underline}.footer-links a:focus-visible{outline:3px solid #e38b37;outline-offset:3px}.footer-bottom{border-top:1px solid #e0e4d9;padding-top:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;color:#99a598}@media(max-width:720px){.site-footer{padding-top:28px}.footer-main{flex-direction:column;gap:24px}.footer-links{gap:28px;justify-content:space-between}.footer-bottom{flex-direction:column;gap:5px}}.board{max-width:1100px;margin:46px auto 0;padding:26px 28px;border:1px solid #e0e4d9;border-radius:16px;background:#faf9f2}.board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-bottom:20px;border-bottom:1px dashed #dfe4d8}.board-eyebrow{color:#c77340;font-size:11px;font-weight:800;letter-spacing:.16em}.board-head h2{margin:7px 0 6px;color:#20382f;font-size:25px}.board-head p{margin:0;max-width:460px;color:#7c8d80;font-size:13px;line-height:1.8}.board-best{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:12px 18px;border-radius:12px;background:#eef2e6;transition:background .3s ease}.board-best.is-new{background:#ffe9c9;box-shadow:0 0 0 2px #e8b26b88}.board-best-label{font-size:11px;color:#7c8d80;letter-spacing:.08em}.board-best strong{font-size:34px;line-height:1.15;color:#294638;font-variant-numeric:tabular-nums}.board-best-sub{font-size:11px;color:#7c8d80}.board-list{list-style:none;margin:6px 0 0;padding:0}.board-row{display:grid;grid-template-columns:48px minmax(90px,1fr) 86px minmax(120px,1.4fr) 62px;align-items:center;gap:10px;padding:11px 8px;border-bottom:1px solid #eceee5;font-size:13px;color:#5c7064}.board-row:last-child{border-bottom:0}.board-top{background:#fff6e3;border-radius:9px}.board-rank{font-size:15px;font-weight:800;color:#a8794d}.board-rider{font-weight:700;color:#33513f}.board-time{font-family:ui-monospace,SFMono-Regular,monospace;font-size:15px;font-weight:700;color:#294638}.board-meta{font-size:12px;color:#829184}.board-date{font-size:12px;color:#9aa699;text-align:right}.entry-tag{padding:2px 6px;border-radius:5px;background:#eef2e6;font-size:11px}.board-empty{margin:22px 0 6px;padding:22px;border-radius:10px;background:#f2f4ec;color:#84938a;font-size:13px;text-align:center}.board-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;font-size:11px;color:#9aa699}.board-foot button{border:1px solid #d9ded2;border-radius:7px;background:#fffdf5;color:#7c8d80;padding:5px 11px;font-size:11px}.board-foot button:disabled{opacity:.45;cursor:not-allowed}.board-foot button:focus-visible{outline:3px solid #e38b37;outline-offset:3px}@media(max-width:720px){.board{margin-top:30px;padding:20px 18px}.board-head{flex-direction:column;align-items:stretch;gap:16px}.board-best{align-items:flex-start}.board-row{grid-template-columns:34px minmax(70px,1fr) 70px;gap:6px}.board-meta{grid-column:2 / 4;font-size:11px}.board-date{display:none}.board-foot{flex-direction:column;align-items:flex-start;gap:8px}}.hero-title{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;margin:18px 0 22px;font-size:clamp(46px,6.4vw,80px);line-height:1.06;letter-spacing:-.055em;color:#20382f}.hero-line{display:inline-flex;align-items:center;gap:.08em;white-space:nowrap}.hero-line-a{transform:rotate(-1.6deg)}.hero-line-b{transform:rotate(1deg);position:relative;padding-bottom:.14em}.hero-sticker{display:inline-block;padding:0 .16em .06em;margin-right:.08em;border:3px solid #20382f;border-radius:.22em;background:#ffd977;color:#20382f;box-shadow:.07em .07em #20382f;transform:rotate(-3deg)}.hero-knight{position:relative;display:inline-block;isolation:isolate}.hero-clock{align-self:flex-start;font-size:.86em;line-height:1;margin:.02em 0 0 -.02em;transform:translateY(-.12em) rotate(-12deg);filter:saturate(1.15) drop-shadow(0 3px 0 #00000010)}.hero-em{font-style:normal;color:#dc7f43;position:relative;z-index:1;padding:0 .06em}.hero-underline{position:absolute;left:50%;bottom:-.06em;width:min(3.1em,96%);height:.26em;transform:translate(-50%) rotate(-1deg);overflow:visible;pointer-events:none}.hero-underline path{fill:none;stroke:#e9a86b;stroke-width:7;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:260;animation:ink-draw .9s .25s ease-out forwards}.hero-line-b:hover .hero-em,.hero-title:hover .hero-sticker{transform:rotate(0) scale(1.03)}.hero-sticker,.hero-em{transition:transform .25s ease}@keyframes ink-draw{to{stroke-dashoffset:0}}@keyframes hero-pop{0%{opacity:0;transform:translateY(14px) rotate(-2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}.hero-title .hero-line{animation:hero-pop .55s cubic-bezier(.22,.9,.3,1.1) both}.hero-title .hero-line-b{animation-delay:.1s}@media(max-width:720px){.hero-title{font-size:clamp(34px,9vw,44px);gap:8px;margin:12px 0 10px}.hero-sticker{border-width:2px;box-shadow:.06em .06em #20382f}}@media(prefers-reduced-motion:reduce){.hero-title .hero-line,.hero-underline path{animation:none}.hero-underline path{stroke-dashoffset:0}.hero-sticker,.hero-em{transition:none}}@font-face{font-family:Resource Han Rounded;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/rhr-heavy.woff2) format("woff2");unicode-range:U+516b,U+52e4,U+5357,U+58eb,U+6307,U+65e9,U+901a,U+9a91}.brand,.footer-brand strong,.how-to-header h2{font-family:Resource Han Rounded,PingFang SC,system-ui,sans-serif;font-weight:400;letter-spacing:.03em}.brand{font-size:23px}.footer-brand strong{font-size:20px}.how-to-header h2{letter-spacing:.02em}
