@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,600;0,700;0,800;1,800&family=DM+Sans:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,sans-serif;color:#143b46;background:#102f3a;font-synthesis:none;--ink:#143b46;--lime:#e1fd7b;--cream:#f6f4de}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #ef714c;outline-offset:5px}[hidden]{display:none!important}#app{position:relative;height:100dvh;min-height:360px;overflow:hidden;background:#b7e4dc}#game{position:absolute;inset:0}canvas{display:block;width:100%;height:100%}header{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:28px 42px;z-index:5;pointer-events:none}header>*{pointer-events:auto}.wordmark{font:800 24px Barlow Condensed,sans-serif;letter-spacing:2px;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:10px}.wordmark:first-letter{font-size:36px}.zone{font-size:10px;font-weight:700;letter-spacing:2px;display:flex;gap:12px;align-items:center}.dot{height:6px;width:6px;background:#256b60;border-radius:50%}.act{border:1px solid #548b87;padding:5px 8px}#pause{background:#f6f4deaa;border:1px solid #143b4625;border-radius:50%;width:36px;height:36px;font-weight:700}.overlay{position:absolute;inset:0;z-index:4}.intro{position:absolute;left:8%;top:21%;max-width:550px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:3px;margin-bottom:18px}h1{font:800 clamp(64px,8.2vw,124px)/.87 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:-1px;margin:0;text-transform:uppercase}h1 em{color:#f7f5de;font-style:italic;text-shadow:0 2px 0 #558e8020}p{font-size:14px;line-height:1.7}.intro p{margin:24px 0;color:#315e61}.primary{background:var(--ink);color:var(--lime);border:0;padding:18px 24px;min-width:190px;font-size:12px;font-weight:700;letter-spacing:1px;box-shadow:4px 4px #143b4620;display:block}.primary span{float:right;font-size:18px}.primary:hover{background:#205363;transform:translateY(-1px)}.secondary{display:block;background:none;border:0;padding:14px 0;font-size:12px;font-weight:700;color:var(--ink)}.controls{display:flex;gap:17px;flex-wrap:wrap;margin-top:28px;font-size:10px}.controls span{display:flex;gap:4px;align-items:center}kbd{font:600 9px DM Sans,sans-serif;border:1px solid #143b4640;border-radius:3px;padding:4px 5px;background:#f6f4de40}.stage-label{position:absolute;right:5%;bottom:13%;text-align:right}.stage-label span{display:block;font-size:9px;letter-spacing:2px;margin-bottom:13px}.stage-label strong{font:700 24px/1.15 Barlow Condensed,sans-serif}.best{font-size:11px;margin-top:12px}.stats{position:absolute;left:42px;top:100px;display:flex;gap:32px;color:#123c47;text-shadow:0 1px #fff3}.stats small{display:block;font-size:9px;letter-spacing:2px;font-weight:700}.stats strong{display:block;font:700 29px Barlow Condensed,sans-serif;font-variant-numeric:tabular-nums}.gold{color:#956125}.speed{position:absolute;right:42px;top:100px;text-align:right}.speed span{font:700 28px Barlow Condensed,sans-serif}.speed small{font-size:9px;letter-spacing:1px}.speed>div{width:104px;height:4px;background:#143b4625;margin-top:5px}.speed i,.progress i{display:block;height:100%;background:#e1fd7b;width:0}.progress{position:absolute;bottom:0;left:0;width:100%;height:4px;background:#123c4730}.modal{display:grid;place-items:center;background:#103b4670;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal section{padding:42px;background:var(--cream);max-width:90vw;min-width:340px;box-shadow:10px 10px #103b4630}.modal h2{font:800 54px/1 Barlow Condensed,sans-serif;margin:0 0 20px}.modal .help{font-size:11px}.modal .primary{margin-top:20px}.modal #rank{display:block;font:800 48px Barlow Condensed,sans-serif;color:#379177}#toast{position:absolute;left:50%;top:19%;transform:translate(-50%);font-size:12px;letter-spacing:1px;font-weight:700;background:#f6f4de;padding:12px 20px;opacity:0;transition:opacity .2s;pointer-events:none;z-index:7;white-space:nowrap}#sound{position:absolute;bottom:34px;right:42px;z-index:8;border:0;background:#f6f4de90;color:var(--ink);padding:8px 10px;font-size:9px;letter-spacing:1px}footer{position:absolute;left:42px;bottom:36px;right:170px;display:flex;justify-content:space-between;pointer-events:none;font-size:8px;font-weight:700;letter-spacing:2px}#touch{display:none;position:absolute;bottom:60px;left:20px;right:20px;justify-content:flex-start;gap:10px;z-index:3}#touch button{touch-action:none;border:1px solid #f6f4de90;color:var(--cream);background:#143b4680;border-radius:50%;width:48px;height:48px;font-size:23px}#touch button:nth-child(3){margin-left:auto}@media(pointer:coarse){#touch{display:flex}body:has(#menu:not([hidden])) #touch{display:none}.controls{display:none}}@media(max-width:700px){header{padding:20px}.zone{font-size:8px;letter-spacing:1px}.zone .dot{display:none}.wordmark{font-size:18px;letter-spacing:1px}.intro{left:7%;top:24%}h1{font-size:76px}.stage-label{display:none}.intro p{font-size:12px}.controls{max-width:300px;gap:10px;margin-top:18px}footer{left:20px;bottom:22px}footer span:last-child{display:none}#sound{right:20px;bottom:20px}.stats{left:20px;top:80px}.speed{right:20px;top:80px}.modal section{padding:28px;min-width:300px}.modal h2{font-size:42px}}@media(max-height:600px){.intro{top:20%}h1{font-size:64px}.intro p{margin:12px 0}.controls{margin-top:14px}.eyebrow{margin-bottom:10px}.stage-label{bottom:18%}}#menu{background:linear-gradient(90deg,#b7e3dcf2,#b7e3dcd9 24%,#b7e3dc00 63%)}@media(max-width:700px){#menu{background:linear-gradient(90deg,#b7e3dce6,#b7e3dc60)}}#boss-hud{position:absolute;top:155px;left:50%;transform:translate(-50%);width:280px;text-align:center;color:#143b46;font-size:11px;font-weight:700;background:#f6f4dedb;padding:10px;pointer-events:none}#boss-hud>div{height:8px;background:#697780;margin:7px 0}#boss-health{display:block;height:100%;background:#e68a66;transition:width .2s}#boss-state{font-size:9px}#objective{position:absolute;bottom:62px;left:42px;font-size:10px;max-width:55%;color:#143b46;background:#f6f4debb;padding:5px 8px;pointer-events:none}#objective:empty{display:none}@media(max-width:700px){#objective{bottom:120px;left:20px;max-width:85%}#boss-hud{top:140px}#toast{max-width:90%;white-space:normal;text-align:center}.intro{top:18%}.intro .secondary{padding:8px 0}}#boss-hud:not([hidden])~#toast{top:240px}@media(max-width:700px){#boss-hud:not([hidden])~#toast{top:225px}}#story{z-index:12}#story section{width:560px;max-height:88dvh;overflow:auto;border-top:6px solid #ef835e}#story h2{font-size:48px}#story-copy{font-size:16px;line-height:1.8;color:#31565a}#story-goal{font-weight:700;font-size:12px;border-left:3px solid #ef835e;padding-left:12px}#finish section{max-width:580px;max-height:90dvh;overflow:auto}body:has(#story:not([hidden])) #touch{display:none}@media(max-width:700px){#story h2{font-size:36px}#story-copy{font-size:14px}}@media(prefers-reduced-motion:reduce){#story{-webkit-backdrop-filter:none;backdrop-filter:none}}.dark-world header .wordmark,.dark-world header .zone,.dark-world .stats,.dark-world .speed,.dark-world footer{color:#fff2d6}.dark-world .stats .gold{color:#ffe097}.dark-world .act{border-color:#dddcb4}
