:root{--ink:#183f43;--cream:#f4f2e7;--coral:#f3a17b;--sea:#0b646b}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Noto Sans KR',sans-serif;-webkit-tap-highlight-color:transparent}button,input,a{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #f1b16e;outline-offset:3px}button{border:0}a{color:inherit}.hidden{display:none!important}.site-header{height:75px;margin:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d6ddcf}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:16px;font-weight:800;letter-spacing:-.5px}.brand-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--ink);color:#f3e6bd;font-size:25px}.brand small{font-size:8px;letter-spacing:1.6px;color:#8a9789;font-weight:500;margin-left:9px}main{max-width:1190px;margin:auto;display:grid;grid-template-columns:1fr 470px;gap:80px;padding:27px 40px;align-items:center}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.7px;color:#6f9687;display:inline-flex;align-items:center;gap:8px}.eyebrow i,.game-topline i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#e99975}h1{font-size:59px;font-weight:800;line-height:1.4;letter-spacing:-3px;margin:25px 0 20px}h1 em{font-style:normal;color:#1c8585;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:12px}.intro>p{color:#788979;font-size:12px;line-height:2.1}.intro-line{height:1px;background:#bbc9b9;width:40px;margin:30px 0}.journey-note{display:flex;gap:24px;align-items:center}.journey-note b{font-size:24px}.journey-note span{color:#83917e;font-size:11px;line-height:1.9}.keys{display:flex;align-items:center;gap:7px;font-size:9px;color:#788a7c;margin-top:32px;white-space:nowrap}kbd{border:1px solid #cbd4c4;border-bottom:3px solid #cbd4c4;padding:5px;border-radius:5px;background:#eeeee3;font-size:9px}.desktop-hint{font-size:9px!important;margin-top:12px}.creator-link{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:315px;background:#e8ebdc;border:1px solid #d6decb;border-radius:9px;padding:13px 14px;color:#526f60;font-size:10px;margin-top:27px}.intro-footer{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#8f9c8c;margin-top:30px}.intro-footer span{font-size:33px;color:#c3b38a}.game-wrap{width:100%;max-width:470px;justify-self:center}.game-topline,.game-bottomline{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.8px;height:26px;align-items:center;color:#829280}.game-topline>span:first-child{display:flex;gap:6px;align-items:center;font-weight:700}.game-topline i{background:#178d78}.game-bottomline{font-size:8px;letter-spacing:0}.game{width:100%;aspect-ratio:470/740;position:relative;overflow:hidden;isolation:isolate;background:#3e9895;border-radius:23px;border:1px solid #28535a30;box-shadow:0 8px 30px #214c3e0d,0 0 0 6px #fff9;touch-action:none;user-select:none}canvas{display:block;width:100%;height:100%}.hud{position:absolute;z-index:2;inset:18px 21px auto;pointer-events:none}.hud-top{display:flex;align-items:center;justify-content:space-between}.lives{color:#ffbb98;font-size:19px;letter-spacing:3px;text-shadow:0 1px 2px #104b54}.hud-actions{display:flex;gap:6px}.icon-button{pointer-events:auto;width:30px;height:30px;border-radius:50%;border:1px solid #efffe45c;background:#134d5c80;color:#f8f5db;font-size:15px;display:grid;place-items:center}.progress{display:flex;gap:8px;align-items:center;font-size:8px;color:#f2f5df;margin-top:12px}.track{flex:1;height:4px;background:#174f587d;border-radius:6px;overflow:hidden}#progress-fill{height:100%;width:0;background:#f8d591;border-radius:6px}.hud-detail{margin-top:16px;display:flex;justify-content:space-between;color:#fcf6de}.hud-detail>div:first-child{display:flex;flex-direction:column;gap:3px}.hud-detail small{font-size:8px;letter-spacing:1.5px}.hud-detail strong{font-size:18px;letter-spacing:-.7px}.run-clock{text-align:right;display:flex;flex-direction:column;gap:3px}.run-clock b{font-size:19px;font-variant-numeric:tabular-nums}.run-clock span{font-size:9px;color:#e1e9cc}.boss-hud{margin-top:13px;background:#193c48db;border:1px solid #e9ddaf55;padding:9px 11px;border-radius:9px}.boss-hud>div:first-child{display:flex;justify-content:space-between;align-items:center}.boss-hud strong{font-size:10px;color:#fff0cf}.boss-hud span{font-size:9px;color:#f3bb8e}.boss-track{height:4px;background:#49656a;margin-top:7px;border-radius:5px;overflow:hidden}.boss-track i{height:100%;display:block;background:#f6a078;width:100%;transition:width .15s}.overlay{position:absolute;inset:0;z-index:5}.menu{text-align:center;background:linear-gradient(#124b5670 0%,#174f5a00 53%,#154e5966 100%)}.menu-top{margin:24px 26px 0;display:flex;justify-content:space-between;align-items:center;color:#ebf1d6;font-size:9px;letter-spacing:1.9px}.menu-top button{color:#f6f4d5;border:1px solid #efffdb70;border-radius:50%;background:#246e7480;width:27px;height:27px;font-size:12px}.menu-title{display:inline-block;position:relative;margin-top:12px;color:#fff0cb;text-shadow:0 3px 0 #20495522}.menu-title>span{display:block;font-size:26px;letter-spacing:6px;font-weight:600}.menu-title h2{font-size:70px;margin:0;font-weight:900;line-height:1.1;letter-spacing:-4px}.menu-title i{position:absolute;right:-32px;top:23px;color:#f2b489;font-style:normal;font-size:28px}.menu-subtitle{font-size:11px;letter-spacing:2px;color:#e3eed0;margin:12px 0 0}.menu-bottom{position:absolute;left:28px;right:28px;bottom:18px}.nickname-label{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#e5eed7;text-align:left;letter-spacing:.3px;margin-bottom:6px}.nickname-label>span{font-size:8px;opacity:.6}input{width:100%;border:1px solid #d6e5c94d;background:#f2f5dfec;color:#244e50;border-radius:9px;padding:10px 13px;font-size:13px;user-select:text;touch-action:auto;height:40px;min-width:0}input::placeholder{color:#8caaa0}.difficulty{display:flex;gap:5px;margin-top:10px}.difficulty button{flex:1;min-width:0;border:1px solid #dbecd351;background:#184e5e91;color:#d2e9d6;font-size:10px;font-weight:800;padding:9px 3px;border-radius:9px;letter-spacing:.5px}.difficulty button small{display:block;font-size:7px;font-weight:400;letter-spacing:0;margin-top:4px;opacity:.8}.difficulty button.selected{background:#f4dfab;color:#284c4a;border-color:#f4dfab}.difficulty-note{height:29px;display:grid;place-items:center;font-size:8px;color:#dbe9ce}.primary{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 19px;border-radius:11px;background:var(--coral);color:#294747;font-size:13px;font-weight:800;text-decoration:none;border:0;box-shadow:0 4px 0 #bb765b;cursor:pointer}.primary:hover{background:#ffb58d}.primary:active{transform:translateY(2px);box-shadow:0 2px 0 #bb765b}.primary>span{font-size:22px;line-height:16px}.menu-promo{background:transparent;border:0;color:#daead4;font-size:8px;margin-top:17px;padding:4px;width:100%;display:flex;justify-content:space-between}.menu-promo>span{font-size:8px;color:#f3d6aa}.touch-controls{position:absolute;inset:auto 20px 24px;z-index:3;height:105px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;opacity:0}.playing .touch-controls{opacity:1}.joystick{pointer-events:auto;width:105px;height:105px;border-radius:50%;border:1px solid #e3f9da66;background:#164d6138;position:relative;touch-action:none}.direction{position:absolute;color:#e3f5dc9c;font-size:16px;line-height:16px}.top{top:7px;left:44px}.bottom{bottom:7px;left:44px}.left{left:8px;top:44px}.right{right:8px;top:44px}.stick{width:43px;height:43px;position:absolute;left:30px;top:30px;border-radius:50%;background:#c4ead863;border:1px solid #e1f5d580;box-shadow:0 2px 7px #1b4d5022}.action-buttons{display:flex;gap:9px;align-items:flex-end;pointer-events:none}.action{pointer-events:auto;width:67px;height:67px;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:50%;border:3px solid #eff6d380;box-shadow:0 4px 0 #183d4630;color:#274a4c;touch-action:none}.action b{font-size:27px;line-height:25px}.action span{font-size:9px;font-weight:800}.action small{font-size:7px;line-height:12px;min-height:12px}.dash{background:#f3aa7d;width:77px;height:77px}.tail{background:#bfdfbb;margin-bottom:22px}.action.cooldown{background:#9aafa5;opacity:.7}.control-hint{position:absolute;left:44px;bottom:-14px;color:#e3eed5a0;font-size:7px}.toast{position:absolute;left:50%;top:34%;transform:translate(-50%,-5px);z-index:4;background:#fff5dfed;color:#255257;border-radius:22px;padding:10px 15px;max-width:85%;text-align:center;font-size:10px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;white-space:normal;min-width:220px}.toast.visible{opacity:1;transform:translate(-50%,0)}.result{background:#123d5066;backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto}.result-card{background:#fbf5e4;color:#284e50;border-radius:20px;padding:25px 23px;width:100%;text-align:center;margin:auto}.result-card h2{font-size:25px;letter-spacing:-1.2px;margin:10px 0}.result-card>p{font-size:10px;line-height:1.9;color:#7f9180;margin:8px 0 16px}.result-card .nickname-label{color:#7f9381;margin:12px 0 6px;font-size:9px}.result-card input{background:#f0edda;border:1px solid #d7dec9;text-align:center}.result-score{display:flex;align-items:center;flex-direction:column;margin:13px 0}.result-score small{font-size:8px;letter-spacing:2px;color:#888f77}.result-score strong{font-size:48px;font-weight:800;line-height:1.3;letter-spacing:-1px}.result-score>span{font-size:8px;letter-spacing:2px;color:#8c9b84}.result-stats{display:flex;border-top:1px solid #d9dfcb;border-bottom:1px solid #d9dfcb;padding:14px 0;gap:5px}.result-stats>div{flex:1;display:flex;flex-direction:column;gap:5px}.result-stats b{font-size:17px}.result-stats span{font-size:8px;color:#8c9a85}.score-details{font-size:9px;margin:12px 0 18px;text-align:left;color:#85947d}.score-details summary{cursor:pointer;text-align:center}.score-details p{line-height:1.9;margin-bottom:0}.result-links{display:flex;justify-content:space-around;margin-top:17px}.text-button{background:transparent;color:#758b7b;border:0;font-size:11px;padding:7px}.privacy-note{display:block;margin-top:13px;font-size:7px;color:#9ba590}.secondary{display:block;width:100%;background:#e5e9d7;color:#536f61;border:1px solid #cfdac6;border-radius:10px;padding:12px;font-size:11px;margin-top:14px}.pause-card{padding:36px 25px}.pause-card .primary{margin-top:27px}.pause-card .text-button{margin-top:12px}dialog{border:0;border-radius:22px;background:#fbf5e4;color:#254b50;width:calc(100% - 34px);max-width:390px;max-height:calc(100dvh - 40px);padding:30px 25px;box-shadow:0 15px 70px #0c344c55;overflow:auto}dialog::backdrop{background:#123d4b9c;backdrop-filter:blur(5px)}dialog h2{font-size:23px;letter-spacing:-1.2px;margin:12px 0}dialog>p{color:#83927e;font-size:11px;line-height:1.9}.close{position:absolute;right:13px;top:9px;font-size:27px;color:#7b9784;background:none;border:0}.guide-row{display:flex;gap:16px;font-size:10px;line-height:1.9;padding:13px 0;border-bottom:1px solid #dde2ce}.guide-row>b{width:55px;flex-shrink:0}.guide-row>span{color:#7f917f}.guide-tip{font-size:9px!important;margin:17px 0 22px}.promo-card{display:block;position:relative;overflow:hidden;text-decoration:none;border-radius:13px;padding:19px;margin-top:17px}.platform{font-size:8px;letter-spacing:1.6px}.steam-card{background:linear-gradient(125deg,#16242d,#254548);color:#ecdfc0;border:1px solid #426165}.subject-art{position:absolute;right:13px;top:26px;font-size:48px;letter-spacing:-4px;color:#79928825;transform:rotate(-90deg);font-family:monospace;font-weight:800}.promo-card h3{font-size:23px;margin:12px 0 8px;letter-spacing:-.7px}.promo-card p{font-size:10px;line-height:1.9;margin:0 0 15px;opacity:.75}.promo-card b{font-size:10px;color:#f6b68b}.little-sea-card{background:#d9e9d5;color:#3a736d;border:1px solid #c1d7c5}.little-sea-art{position:absolute;right:18px;top:8px;font-size:110px;color:#5a9c8d22;line-height:1}.coming{font-size:9px;border:1px solid #94b7a4;border-radius:20px;padding:5px 9px;display:inline-block;color:#689584}#record-preview{max-width:390px}#record-image{width:100%;display:block;border-radius:12px;margin:17px 0 20px;user-select:auto;touch-action:auto}#record-preview .primary{font-size:12px}.save-tip{font-size:9px!important;text-align:center;margin-bottom:0}
@media(min-width:701px) and (max-height:940px){main{padding-top:15px;padding-bottom:15px}.game-wrap{max-width:min(470px,calc((100dvh - 140px)*.635))}.menu-title h2{font-size:57px}.menu-title>span{font-size:22px}.menu-top{margin-top:19px}.menu-title{margin-top:5px}.menu-subtitle{font-size:9px}.menu-bottom{left:22px;right:22px;bottom:17px}.menu-promo{font-size:7px;margin-top:14px}.menu-promo span{font-size:7px}.difficulty button{font-size:9px}.difficulty button small{font-size:6px}.nickname-label{font-size:8px}h1{font-size:50px}.result-card{padding:20px 19px}.result-card h2{font-size:22px}.result-score strong{font-size:40px}.result-stats{padding:10px 0}.result-card>p{margin-bottom:10px}.result-score{margin:10px 0}.privacy-note{font-size:6px}.hud{inset:15px 15px auto}.touch-controls{left:13px;right:13px;transform:scale(.9);transform-origin:bottom center}.boss-hud{padding:6px 9px}}
@media(max-width:1000px){main{gap:34px;grid-template-columns:1fr 430px;padding-left:25px;padding-right:25px}.brand small{display:none}h1{font-size:44px}.keys{flex-wrap:wrap;max-width:290px}.intro>p{font-size:10px}.desktop-hint{font-size:8px!important}.eyebrow{font-size:8px}}
@media(max-width:700px){body{background:#0b5f66}.site-header,.intro,.game-topline,.game-bottomline{display:none}main{padding:0;display:block;height:100dvh}.game-wrap{max-width:none;height:100%}.game{width:100%;height:100dvh;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}.hud{top:max(18px,env(safe-area-inset-top));left:21px;right:21px}.menu-top{margin-top:max(28px,calc(env(safe-area-inset-top) + 15px))}.menu-title{margin-top:18px}.menu-title h2{font-size:72px}.menu-title>span{font-size:27px}.menu-bottom{bottom:max(20px,env(safe-area-inset-bottom));left:27px;right:27px}.touch-controls{bottom:max(29px,env(safe-area-inset-bottom));left:20px;right:20px}.result{padding:22px}.result-card{max-width:390px}.nickname-label{font-size:10px}input{font-size:16px;height:43px}.difficulty button{font-size:11px;padding:10px 3px}.difficulty button small{font-size:8px}.difficulty-note{font-size:9px;height:31px}.menu-promo{font-size:9px;margin-top:17px}.menu-promo>span{font-size:8px}.primary{padding:15px 18px;font-size:14px}}
@media(max-width:700px) and (max-height:730px){.menu-top{margin-top:18px}.menu-title{margin-top:7px}.menu-title>span{font-size:21px}.menu-title h2{font-size:57px}.menu-subtitle{font-size:9px;margin-top:9px}.menu-bottom{bottom:16px}.nickname-label{font-size:8px}input{height:38px}.difficulty button{font-size:9px;padding:8px 3px}.difficulty button small{font-size:7px}.difficulty-note{font-size:8px;height:26px}.menu-promo{margin-top:13px;font-size:8px}.primary{padding:12px 17px;font-size:12px}.result-card{padding:19px}.result-score strong{font-size:38px}.result-card h2{font-size:22px}.result-score{margin:9px 0}.result-card>p{margin:7px 0 10px}.result-stats{padding:10px 0}.score-details{margin:10px 0 14px}.privacy-note{font-size:6px}.result-links{margin-top:12px}}
@media(max-height:520px) and (orientation:landscape){.intro,.site-header,.game-topline,.game-bottomline{display:none}main{display:block;padding:0}.game-wrap{height:100dvh;max-width:340px}.game{height:100dvh;aspect-ratio:auto;border-radius:0}.menu-title h2{font-size:36px}.menu-title>span{font-size:15px}.menu-title{margin-top:0}.menu-top{margin-top:10px}.menu-subtitle{font-size:7px;margin-top:4px}.menu-bottom{bottom:10px}.menu-top{font-size:7px}.menu-promo{margin-top:9px}.nickname-label{font-size:7px}input{height:30px;font-size:12px}.difficulty{margin-top:5px}.difficulty button{padding:5px;font-size:8px}.difficulty button small{display:none}.difficulty-note{height:20px;font-size:7px}.primary{padding:9px;font-size:10px}.touch-controls{transform:scale(.8);transform-origin:bottom center;bottom:15px}.hud-detail{margin-top:6px}.result-card{padding:15px}.result-score strong{font-size:28px}.result-card>p,.privacy-note{display:none}.result-score{margin:5px 0}.result-card h2{font-size:18px}.result-stats{padding:7px 0}.result-links{margin-top:8px}.result-card .nickname-label{margin-top:6px}.score-details{margin:8px 0}}
