:root{color-scheme:light;--ink:#224e60;--coral:#ee6b48;--paper:#fff5d8;font-family:"Malgun Gothic","Apple SD Gothic Neo",sans-serif}*{box-sizing:border-box}body{margin:0;background:#faf0d8;color:var(--ink);overflow-x:hidden}button{font:inherit;font-weight:700;cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}button[hidden],[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:3px solid #de5734;outline-offset:4px}canvas:focus-visible{outline:none}button:disabled{opacity:.5;cursor:default}.topbar{position:absolute;inset:0 0 auto;height:57px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:0 3%;z-index:6;background:linear-gradient(#fff4d9c9,#fff4d900)}.back-btn{font-size:11px;color:#275a69;text-decoration:none}.brand{font-weight:900;font-size:12px;letter-spacing:1px}.brand small{font-size:9px;font-weight:400;margin-left:9px}.topbar nav{display:flex;gap:6px}.topbar button{border:0;border-radius:20px;padding:9px 13px;background:#fff6dcac;font-size:10px}.topbar button:hover{background:#fff6dc}.sky{position:relative;isolation:isolate;height:calc(100svh - 88px);min-height:450px;background:#7ec8d0;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none}.overlay{position:absolute;inset:0;z-index:3}.intro{display:flex;align-items:center;background:linear-gradient(90deg,#c3e3d280,#d8efdf33 40%,transparent 67%)}.intro-copy{margin:40px 0 0 6%}.travel-label{display:inline-block;background:#fff4d9;color:#518076;box-shadow:3px 4px 0 #426e5620;padding:8px 13px;border-radius:4px;font-size:11px;font-weight:bold;transform:rotate(-3deg)}h1{font-size:clamp(42px,5.8vw,84px);font-weight:900;letter-spacing:-4px;line-height:1.22;color:#fff7da;margin:26px 0 20px;text-shadow:3px 4px 0 #386a7c,5px 6px 0 #386a7c22}h1 em{font-style:normal;color:#ffdb77;text-shadow:3px 4px 0 #9c5745,5px 6px 0 #9c574533}.intro-copy>p{font-size:14px;line-height:1.9;font-weight:600;color:#356370;text-shadow:0 1px #fff4d9}.primary{border:0;border-radius:30px;background:var(--coral);color:#fff8e5;padding:15px 25px;min-width:210px;display:flex;align-items:center;justify-content:space-between;gap:35px;font-size:17px;box-shadow:0 5px 0 #ac513c,0 7px 0 #24576615}.primary:hover{background:#e55e3a;transform:translateY(-1px)}.primary:active{transform:translateY(3px);box-shadow:0 2px 0 #ac513c}.primary>span{font-size:24px}.intro-copy .primary{margin:26px 0}.how-to{display:flex;gap:16px;font-size:10px;font-weight:bold}.how-to b{background:#fff6dc;display:inline-grid;place-items:center;height:26px;width:26px;border-radius:50%;margin-right:5px;color:#bb5e46}.record{display:block;margin-top:23px;font-size:10px;color:#4b7882}.record b{font-size:15px;margin:0 8px}.mission-stamp{position:absolute;right:7%;top:15%;background:#ffda78;color:#955340;width:135px;height:150px;border-radius:13px;transform:rotate(9deg);text-align:center;padding:15px;box-shadow:5px 6px 0 #426c6233;border:3px dashed #fff2c1}.mission-stamp>strong{display:block;font-size:33px;letter-spacing:-2px}.mission-stamp>span{font-size:11px;font-weight:700;line-height:1.6}.mission-stamp>i{display:block;font-style:normal;font-size:26px}.demo-caption{position:absolute;bottom:22px;right:4%;font-size:10px;color:#fff4d9;text-shadow:0 1px #2a5f72}.hud{position:absolute;inset:76px 4% auto;display:flex;justify-content:space-between;align-items:start;pointer-events:none;z-index:2}.mission{display:flex;flex-direction:column;gap:7px;color:#285e74;text-shadow:0 1px #fff4d9}.mission>b{font-size:21px;font-weight:900}.mission>span{font-size:11px;font-weight:600}.route-track{height:5px;background:#fff3d777;width:190px;border-radius:3px;overflow:hidden;margin-top:5px}.route-track>span{display:block;height:100%;background:#eb7451;width:0;border-radius:3px}.score-badge{text-align:right;background:#fff6dfd9;padding:10px 18px;border-radius:17px;box-shadow:3px 4px 0 #346d7b18;display:flex;flex-direction:column;min-width:109px}.score-badge>small{font-size:9px}.score-badge>strong{font-size:29px;line-height:1.3;font-variant-numeric:tabular-nums}.score-badge>span{color:#dc634c;font-size:16px;letter-spacing:3px}.combo{position:absolute;right:4%;top:220px;display:flex;align-items:center;gap:8px;color:#fff8de;text-shadow:2px 2px #77533e;pointer-events:none;z-index:2}.combo strong{font-size:39px;font-weight:900}.combo span{font-size:11px;font-weight:bold;max-width:85px}.flight-desk{height:88px;background:#fff4d9;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:10px 4%;border-top:4px solid #e6ddbf}.desk-note{display:flex;flex-direction:column;gap:7px}.desk-note b{font-size:12px}.desk-note span{font-size:10px;color:#6c8987}.desk-signature{font-size:9px;font-weight:bold;color:#8b9c88;letter-spacing:1px}.cargo{display:flex;align-items:center;gap:15px}.cargo>span{font-size:22px;color:#b75c45;letter-spacing:3px;white-space:nowrap}.cargo>small{font-size:10px;color:#7c8e86}.cargo>b{font-size:14px;background:#d2e7d5;padding:10px 13px;border-radius:20px;white-space:nowrap}.controls{display:flex;gap:12px;align-items:center}.controls button{border:0;padding:12px 21px;border-radius:24px;font-size:20px;display:flex;align-items:center;gap:10px;box-shadow:0 4px 0 #1e6d7840;touch-action:none;user-select:none}.controls button span{font-size:12px}.controls button small{font-size:8px;opacity:.7}.lift-button{background:#cfe7d9;color:#397073}.lift-button.active{background:#76b9bc;transform:translateY(2px)}.deliver-button{background:#ee714d;color:#fff4d9;box-shadow:0 4px 0 #b8573e!important}.deliver-button.ready{background:#3b9c8b;box-shadow:0 4px 0 #277666!important}.center-overlay{display:grid;place-items:center;background:#236a7550;backdrop-filter:blur(4px)}.paper-card{max-width:480px;width:90%;padding:30px 38px;background:#fff4d9;text-align:center;border-radius:26px;border:5px solid #ffffff70;box-shadow:7px 9px 0 #24596c40}.paper-card h2{font-weight:900;font-size:34px;line-height:1.35;letter-spacing:-2px;margin:24px 0 15px}.paper-card .primary{margin:23px auto 0;width:100%;max-width:290px}.text-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;margin-top:20px;font-size:11px}.medal{font-size:40px;background:#ffda7a;width:70px;height:70px;line-height:70px;margin:0 auto;border-radius:50%;color:#ba6547}.paper-card>p{font-size:12px;line-height:1.8;color:#618386}.result-stats{display:flex;justify-content:center;gap:32px;margin:24px 0}.result-stats>div{display:flex;flex-direction:column;gap:5px}.result-stats small{font-size:10px}.result-stats strong{font-size:27px}.new-record{color:#d56242!important;font-weight:bold}.toast{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);background:#245f72e8;border:2px solid #ffffff50;color:#fff4d9;font-size:12px;font-weight:700;padding:10px 19px;border-radius:23px;white-space:nowrap;opacity:0;pointer-events:none;z-index:5}.toast.visible{opacity:1}dialog{background:#fff4d9;border:4px solid #fffaf0;border-radius:22px;color:var(--ink);max-width:480px;width:calc(100% - 28px);padding:24px;box-shadow:6px 8px 0 #25526440}dialog::backdrop{background:#29586660;backdrop-filter:blur(4px)}.guide-top{display:flex;justify-content:space-between;align-items:center}.guide-top b{font-size:12px;color:#689088}.guide-top button{border:0;background:transparent;padding:8px}dialog h2{font-size:28px;letter-spacing:-1px}dialog ol{font-size:12px;line-height:1.8;padding-left:19px}dialog li{padding-left:3px;margin-bottom:14px}dialog li b{display:block;color:#b7573f}.guide-foot{font-size:10px;line-height:1.8;color:#738b84}dialog .primary{width:100%;font-size:14px}body.playing .desk-note,body.playing .desk-signature{display:none}
@media(max-height:720px) and (min-width:701px){.intro-copy{margin-top:30px}h1{font-size:54px;margin:18px 0 10px}.intro-copy>p{font-size:12px}.intro-copy .primary{margin:19px 0;padding:12px 24px}.record{margin-top:17px}.mission-stamp{top:18%}.sky{min-height:410px}.hud{top:65px}.mission>b{font-size:18px}.combo{top:185px}}
@media(max-width:700px){.topbar{height:51px;padding:0 14px;gap:6px}.back-btn{font-size:9px}.brand{font-size:10px;letter-spacing:0}.brand small{display:none}.topbar nav{gap:3px}.topbar button{font-size:9px;padding:8px 9px}.sky{height:calc(100svh - 120px);min-height:430px}.intro{align-items:start;background:linear-gradient(180deg,#d4ebd980,#d4ebd926 55%,transparent 76%)}.intro-copy{margin:90px 0 0 6%}.travel-label{font-size:9px;padding:7px 10px}h1{font-size:45px;letter-spacing:-3px;margin:24px 0 18px;line-height:1.25;text-shadow:2px 3px #386a7c}h1 em{text-shadow:2px 3px #9c5745}.intro-copy>p{font-size:11px;line-height:1.8}.intro-copy .primary{font-size:16px;min-width:190px;margin:23px 0}.how-to{font-size:9px;gap:8px}.how-to b{height:23px;width:23px;margin-right:3px}.record{margin-top:20px}.mission-stamp{right:7%;top:62%;width:104px;height:113px;padding:8px;border-radius:8px;transform:rotate(7deg)}.mission-stamp strong{font-size:26px}.mission-stamp span{font-size:8px}.mission-stamp i{font-size:20px}.demo-caption{display:none}.hud{inset:64px 5% auto}.mission>b{font-size:15px}.mission>span{font-size:9px}.route-track{width:140px;height:4px}.score-badge{padding:8px 11px;min-width:83px;border-radius:12px}.score-badge>strong{font-size:23px}.score-badge>span{font-size:13px}.combo{top:163px;right:5%}.combo strong{font-size:29px}.combo span{font-size:9px;max-width:65px}.flight-desk{height:120px;padding:10px 14px;gap:8px;flex-wrap:wrap;align-content:center}.desk-signature{display:none}.desk-note b{font-size:11px}.desk-note span{font-size:9px}.cargo{width:100%;justify-content:space-between;gap:6px;height:27px}.cargo>span{font-size:18px;letter-spacing:2px}.cargo>small{font-size:9px}.cargo>b{font-size:11px;padding:5px 11px}.controls{width:100%;gap:10px}.controls button{flex:1;padding:11px 12px;font-size:18px;justify-content:center}.controls button span{font-size:11px}.controls button small{display:none}.toast{font-size:10px;max-width:94%;white-space:normal;text-align:center;width:max-content;padding:9px 14px}.paper-card{padding:24px 20px;border-radius:21px}.paper-card h2{font-size:28px}.result-stats{gap:28px}.paper-card .primary{min-width:0}dialog{max-height:90svh;overflow:auto}dialog h2{font-size:24px}dialog ol{font-size:11px}.result-stats strong{font-size:23px}}
@media(max-width:700px){.mission-stamp{top:auto;bottom:22px;right:18px;width:96px;height:105px}}
@media(prefers-reduced-motion:reduce){.primary:hover{transform:none}.primary:active{transform:none}.travel-label,.mission-stamp{transform:none}}
