:root{font-family:Arial,Helvetica,sans-serif;color:#edf5fb;background:#060a11;font-synthesis:none;font-weight:400;--cyan:#00e5ff;--muted:#7e8b9e;--border:#233040;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:360px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #c6faff;outline-offset:5px}button{border:0}button:disabled{cursor:default}[hidden]{display:none!important}::selection{background:#00e5ff44}#app{min-height:100svh;display:grid;place-items:center;padding:28px 40px}.game-shell{width:100%;max-width:1840px}.topbar{height:57px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-family:monospace;letter-spacing:1.4px}.brand{color:#eef5fa;text-decoration:none;font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:1.6px;font-size:14px;white-space:nowrap;display:flex;align-items:center;gap:7px}.brand-mark{color:var(--cyan);font-size:29px;margin-right:5px}.brand-light{font-weight:400;color:#96a5b8;margin-left:-3px}.top-center{font-size:9px;color:#566478;letter-spacing:2px}.system-status{font-size:9px;color:#8ca4ac;display:flex;align-items:center;gap:9px;white-space:nowrap}.system-status i,.tiny-dot{width:5px;height:5px;background:var(--cyan);border-radius:50%;display:inline-block;box-shadow:0 0 8px #00e5ff55}.arena{position:relative;height:calc(100svh - 169px);min-height:480px;max-height:1000px;overflow:hidden;border:1px solid #253141;background:#080d18;border-radius:3px}canvas{display:block;width:100%;height:100%}.arena-coordinate{position:absolute;z-index:1;pointer-events:none;font:9px monospace;letter-spacing:1.7px;color:#536377}.top-left{left:25px;top:22px}.bottom-right{right:25px;bottom:22px;font-size:8px}.footer{height:55px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#627184;font:9px monospace;letter-spacing:1.2px}.footer>span:first-child{display:flex;align-items:center;gap:9px}.footer .tiny-dot{width:4px;height:4px}.footer-controls{display:flex;align-items:center;gap:5px}.footer-controls b{font-weight:400;color:#3d4c60;margin:0 10px}kbd{display:inline-flex;justify-content:center;align-items:center;min-width:19px;height:20px;padding:1px 5px;border:1px solid #354151;border-radius:3px;font:9px monospace;color:#9fadb9;background:#101927}.version{margin-left:14px;color:#465368}.overlay{position:absolute;inset:0;z-index:3}.menu-overlay{background:linear-gradient(90deg,#080d18f7 0%,#080d18d9 30%,#080d1855 52%,transparent 70%)}.menu-content{position:absolute;top:50%;left:7%;transform:translateY(-51%);max-width:53%}.eyebrow{font:10px monospace;color:#9daab9;letter-spacing:2px;display:flex;align-items:center;gap:10px}.eyebrow>span:not(.title-period){height:1px;width:23px;background:var(--cyan)}h1{margin:24px 0 17px;font-size:clamp(52px,6.5vw,112px);line-height:.91;letter-spacing:-4.5px;font-weight:900;color:#f3f6fa}h1>span:not(.title-period){color:var(--cyan);text-shadow:0 0 35px #00e5ff15}.title-period{color:#f1f6fa;font-size:.75em}.subtitle{font:11px monospace;letter-spacing:5px;color:#c8d1dc;margin:22px 0}.menu-description{font-size:13px;line-height:1.9;color:#8b9aab;margin:0 0 28px}.primary{display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--cyan);color:#03161b;border:1px solid var(--cyan);font:700 11px monospace;letter-spacing:1.8px;min-height:49px;padding:0 23px;transition:background .18s,box-shadow .18s,transform .18s}.primary:hover{background:#7af2ff;box-shadow:0 0 30px #00e5ff22;transform:translateY(-1px)}.primary>span{font-size:22px;font-weight:400}.start-button{width:240px}.menu-best{display:flex;gap:14px;align-items:center;margin-top:26px}.record-icon{color:#6b8092;font-size:30px}.hud-label{display:block;font:9px monospace;color:#8c9bae;letter-spacing:1.3px}.menu-best strong{display:block;margin-top:5px;font:18px monospace;letter-spacing:1px}.menu-best small{font:9px monospace;color:#64798b}.specimen-label{position:absolute;right:6%;bottom:16%;text-align:right}.specimen-label .eyebrow{justify-content:flex-end;color:#60919d;font-size:9px}.specimen-line{display:block;height:1px;width:40px;background:#00e5ff77;margin:16px 0 16px auto}.specimen-label p{color:#647c8c;font:10px/1.8 monospace;letter-spacing:2px}.specimen-label strong{color:#b3c7ce;font-weight:400}.menu-instructions{position:absolute;bottom:25px;left:7%;display:flex;align-items:center;gap:28px;color:#61748a;font:9px monospace;letter-spacing:.7px}.menu-instructions>span{display:flex;align-items:center;gap:8px}.menu-instructions .tiny-dot{background:#69838b;box-shadow:none;width:4px;height:4px}.menu-instructions kbd{font-size:9px}.modal-overlay{display:grid;place-items:center;background:#060b16c9;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);padding:24px;overflow:auto}.modal{width:min(100%,520px);text-align:center;padding:30px 42px;background:linear-gradient(145deg,#111e2bed,#0c1320f7);border:1px solid #2a3d4d;box-shadow:0 20px 90px #0006;position:relative}.modal:before{content:"";position:absolute;top:-1px;left:30%;width:40%;height:1px;background:var(--cyan);box-shadow:0 0 20px #00e5ff44}.modal .eyebrow{justify-content:center;font-size:9px;color:#70bdc8}.modal h2{font-size:44px;line-height:1;letter-spacing:-1.8px;margin:21px 0 14px;font-weight:900}.modal h2>span{color:var(--cyan)}.modal>p{font-size:12px;color:#8e9daf;line-height:1.6;margin:0 0 26px}.modal .primary{width:100%;margin-top:10px}.compact{max-width:370px}.secondary{background:#142132;border:1px solid #2c4055;color:#c2d1df;min-height:44px;width:100%;margin-top:10px;font:10px monospace;letter-spacing:1.4px}.secondary:hover{background:#1c2e43;border-color:#5b7c94}.text-button{background:none;color:#8da0b3;font:10px monospace;letter-spacing:1.3px;padding:18px 12px;min-height:44px}.text-button:hover{color:var(--cyan)}.modal-hint{font:8px monospace;letter-spacing:1.1px;color:#728499;display:block;margin-top:15px}.upgrades{width:min(100%,960px);padding:33px 30px}.upgrade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}.upgrade-card{display:flex;flex-direction:column;text-align:left;background:#111f2e;border:1px solid #2c4153;color:#dce8f1;padding:20px 18px 0;transition:transform .16s,border-color .16s,background .16s}.upgrade-card:hover{transform:translateY(-4px);border-color:var(--cyan);background:#142a39}.card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:26px}.upgrade-icon{font:34px/1 monospace;color:var(--cyan)}.upgrade-card:nth-child(2) .upgrade-icon{color:#b78aff}.upgrade-card .hud-label{font-size:8px}.upgrade-card h3{font-size:20px;letter-spacing:-.5px;margin:10px 0}.upgrade-card p{color:#91a2b5;font-size:12px;line-height:1.7;margin:0 0 20px;flex:1}.upgrade-stat{font:10px monospace;color:#73dce7;line-height:1.6;padding:12px 0 18px}.card-select{border-top:1px solid #2c4153;padding:15px 0;display:flex;justify-content:space-between;font:9px monospace;letter-spacing:.5px;color:#c7d6e2}.card-select>span{color:var(--cyan)}.final-score{padding:16px 0 24px}.final-score>strong{display:block;font:54px monospace;color:var(--cyan);letter-spacing:-3px;margin:7px 0}.new-record,.best-line{display:block;color:#a291c6;font:9px monospace;letter-spacing:1.5px}.new-record{color:var(--cyan)}.results{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:25px;padding:20px 0;border-top:1px solid #27384a;border-bottom:1px solid #27384a}.results>div+div{border-left:1px solid #27384a}.results strong{display:block;font:22px monospace}.results span{display:block;font:8px monospace;color:#7c92a5;margin-top:8px;letter-spacing:1px}.danger{color:#ff6e88!important}.hud{position:absolute;inset:0;pointer-events:none;padding:26px 30px;display:flex;align-items:flex-start;justify-content:space-between;background:linear-gradient(#080d18e0,transparent 130px);z-index:2}.hud~.overlay:not([hidden]){z-index:3}.hud .hud-label{font-size:8px;letter-spacing:1px}.health-block{width:205px;margin-top:10px}.health-block .hud-label{display:flex;justify-content:space-between;gap:18px}.health-track{height:7px;background:#213044;margin-top:11px;overflow:hidden}.health-track>div{height:100%;width:100%;background:var(--cyan);box-shadow:0 0 15px #00e5ff77;transition:width .12s}.health-track .low{background:#ff4968}.timer-block{position:absolute;left:50%;transform:translate(-50%);text-align:center}.timer-block strong{display:block;font:31px monospace;letter-spacing:1px;margin-top:6px}.hud-stats{display:flex;align-items:center;gap:30px}.hud-stats>div{text-align:right}.hud-stats strong{font:18px monospace;display:block;margin-top:8px}.pause-button{pointer-events:auto;background:#0e1d2a;border:1px solid #354859;color:#a8c8d5;width:35px;height:35px;font:18px monospace}.pause-button:hover{color:var(--cyan);border-color:var(--cyan)}.xp-row{position:absolute;left:30px;right:30px;bottom:25px;display:flex;align-items:center;gap:15px;color:#b392f8;font:10px monospace;letter-spacing:1px}.xp-track{height:3px;background:#243044;flex:1}.xp-track>div{height:100%;width:0;background:#9b5cff;box-shadow:0 0 10px #9b5cff55;transition:width .12s}.xp-label{font-size:8px;color:#7a688e}.arena:has(.hud:not([hidden])) .arena-coordinate{display:none}@media(min-width:1600px){#app{padding:35px 50px}.arena{height:calc(100svh - 190px)}.menu-description{font-size:15px}.menu-content,.menu-instructions{left:8%}.menu-best{margin-top:36px}}@media(max-height:800px)and (min-width:801px){#app{padding:12px 30px}.arena{height:calc(100svh - 132px);min-height:430px}.topbar{height:50px}.footer{height:46px}.menu-content{transform:translateY(-49%)}h1{font-size:clamp(54px,6.5vw,90px);margin-top:20px}.menu-description{margin-bottom:20px;line-height:1.7}.menu-best{margin-top:20px}.menu-instructions{bottom:18px}.subtitle{margin:17px 0}.modal{padding-top:23px;padding-bottom:23px}.modal h2{font-size:37px}.game-over .final-score{padding:4px 0 17px}.results{padding:16px 0;margin-bottom:17px}}@media(max-width:1000px){#app{padding:15px 22px}.top-center{display:none}h1{letter-spacing:-3px}.menu-content{left:6%}.menu-instructions{left:6%;gap:15px}.specimen-label{right:4%;bottom:18%}.footer>span:last-child{display:none}.hud-stats{gap:15px}.health-block{width:165px}.upgrades{padding:25px 20px}.upgrade-card{padding:17px 12px 0}.upgrade-card h3{font-size:18px}}@media(max-width:700px){#app{padding:8px 10px}.topbar{height:48px}.brand{font-size:11px;letter-spacing:1px}.brand-mark{font-size:23px}.system-status{font-size:7px;letter-spacing:.7px}.arena{height:calc(100svh - 108px);min-height:570px}.menu-overlay{background:linear-gradient(90deg,#080d18f5,#080d18b0 70%,#080d1840)}.menu-content{top:46%;max-width:90%;left:8%}h1{font-size:clamp(55px,12vw,82px)}.eyebrow{font-size:8px}.specimen-label{display:none}.menu-instructions{left:8%;bottom:25px;display:grid;gap:12px;font-size:8px}.top-left{left:20px;top:20px}.bottom-right{display:none}.footer{font-size:7px;height:44px;letter-spacing:.3px}.footer-controls{font-size:7px;gap:3px}.footer-controls kbd{min-width:14px;padding:0 2px;font-size:7px;height:17px}.footer-controls b{margin:0 3px}.hud{padding:20px 15px}.health-block{width:115px}.health-block .hud-label{font-size:7px;letter-spacing:0}.hud-stats{gap:10px}.hud-stats>div:first-child{display:none}.hud-stats strong{font-size:15px}.timer-block strong{font-size:24px}.timer-block .hud-label{font-size:7px}.pause-button{width:28px;height:30px}.xp-row{left:16px;right:16px;bottom:20px}.modal-overlay{padding:12px}.modal{padding:25px 20px}.modal h2{font-size:34px}.upgrade-grid{grid-template-columns:1fr;gap:9px;margin-top:15px}.upgrades{max-width:420px}.upgrade-card{display:grid;grid-template-columns:42px 1fr;column-gap:13px;padding:13px 14px}.card-top{grid-column:1;grid-row:1/5;display:flex;flex-direction:column;gap:13px;margin:0}.upgrade-icon{font-size:26px}.upgrade-card .hud-label{grid-column:2}.upgrade-card h3{grid-column:2;font-size:17px;margin:5px 0}.upgrade-card p{grid-column:2;font-size:10px;line-height:1.4;margin:0}.upgrade-stat{grid-column:2;padding:6px 0 0;font-size:9px}.card-select{display:none}.modal.upgrades>p{margin-bottom:10px}.modal-hint{font-size:7px;line-height:1.6}.final-score>strong{font-size:46px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}.modal-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}}
