@font-face{font-family:Space;src:url('assets/font.woff2')}*{box-sizing:border-box}body{margin:0;background:#080d25;color:#edeadd;font:16px Space,'Courier New',monospace;min-height:100vh}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 75% 0%,#183caa66,transparent 60%),radial-gradient(#4266de44 1px,transparent 1px);background-size:auto,6px 6px;z-index:-1}.stars{position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(#92afff 1px,transparent 2px),radial-gradient(#eee 1px,transparent 1px);background-size:137px 163px,227px 193px;opacity:.5;z-index:-1}header,footer{max-width:1140px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px;font-size:11px;letter-spacing:2px;color:#96a5ce}a{color:inherit}header a{text-decoration:none;color:#e9e8dc;font-size:24px}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:transparent;border:1px solid #3c5083;padding:12px 18px;transition:.15s}button:hover{border-color:#c6d4ff;background:#203b7955}button:focus-visible,a:focus-visible{outline:2px solid #f4ce66;outline-offset:4px}button.primary{background:#edeadd;color:#10152b;border-color:#edeadd;box-shadow:5px 5px 0 #3553ad;padding:17px 30px;font-weight:bold;letter-spacing:2px}button.primary:hover{transform:translateY(-2px)}main{max-width:1000px;margin:25px auto 80px;min-height:650px;padding:36px;position:relative}.eyebrow{color:#ff8e9f;font-size:12px;letter-spacing:3px;margin-bottom:22px}h1{font-size:clamp(40px,8vw,90px);letter-spacing:.14em;margin:30px 0 15px;line-height:1.1}h2{font-size:clamp(24px,4vw,38px);line-height:1.4;max-width:700px}p{line-height:1.8;color:#aeb9d8}.pill{display:inline-block;border:1px solid #4a62a1;color:#f3cf70;padding:8px 12px;font-size:12px;letter-spacing:2px}.hero{padding:45px 0 90px;position:relative}.hero p{max-width:650px}.example{display:inline-block;border:1px solid #2b4591;padding:12px;margin:10px 0 30px;font-size:14px}.gold{color:#ffd86d}.rocket{width:90px;image-rendering:pixelated;filter:drop-shadow(0 0 24px #4e79ec55)}.hero .rocket{position:absolute;right:10px;bottom:25px;width:110px;animation:float 4s ease-in-out infinite}.floor{width:100%;image-rendering:pixelated;opacity:.7;margin-top:-15px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card{border:1px solid #283c70;padding:18px;background:#0b122acc}.card b{color:#f4d16e}.card p{font-size:12px;margin-bottom:0}.row{display:flex;justify-content:space-between;align-items:center;gap:16px}.muted{color:#8191bc;font-size:12px;letter-spacing:1px}.hud{border-bottom:1px solid #2b4075;padding-bottom:22px}.dots{display:flex;gap:8px}.dot{width:12px;height:12px;background:#26375f}.dot.active{background:#edeadd}.dot.done{background:#e0bd62}.timer{font-size:36px;color:#f5d16f}.track{height:3px;background:#22335d;margin-top:20px}.track div{height:100%;background:#f4ce6d;transition:width .15s linear}.prompt{padding:30px 0;min-height:310px}input{width:100%;padding:20px;background:#080d24;border:1px solid #4b68b5;color:#fff;font-size:22px;outline:none}input:focus{border-color:#f4d16e;box-shadow:0 0 0 2px #f4d16e22}.actions{display:flex;gap:14px;margin-top:20px;align-items:center;flex-wrap:wrap}.flight{border:1px solid #283f78;padding:20px;position:relative;height:120px;overflow:hidden}.flight .rocket{width:36px;position:absolute;bottom:8px;transition:left 1s;transform:rotate(90deg)}.score{font-size:70px;color:#f6d776;margin:12px 0}.answerrow{border-bottom:1px solid #23345f;padding:16px 0;display:grid;grid-template-columns:1fr auto;gap:8px}.answerrow small{display:block;color:#8293c0;margin-bottom:5px}.feedback{border-left:3px solid #f4d16e;padding:5px 22px;margin:20px 0}.feedback h2{margin:8px 0}.settings{margin-top:22px;display:flex;align-items:center;gap:12px;color:#91a3cc;font-size:12px}select{background:#101a38;color:#eee;padding:8px;border:1px solid #344d83}dialog{background:#0e1733;color:#eee;border:1px solid #536caa;max-width:640px;width:90%;padding:32px;max-height:85vh}dialog::backdrop{background:#020611dc}#close{float:right;border:none;font-size:24px}footer{border-top:1px solid #23345b;font-size:10px;letter-spacing:1px}footer button{font-size:10px}.danger{color:#ff8e9f}@keyframes float{50%{transform:translateY(-12px)}}@media(max-width:650px){header{padding:18px}header span{display:none}main{padding:18px;margin:0 auto 40px}.hero{padding-top:20px;padding-bottom:70px}h1{letter-spacing:.05em;font-size:43px}.grid{grid-template-columns:repeat(2,1fr)}.hero .rocket{width:60px;right:0;bottom:5px}.row{gap:8px}.dots{gap:4px}.dot{width:9px;height:9px}footer{flex-wrap:wrap;padding:18px}.prompt{min-height:290px}button{padding:11px}.score{font-size:54px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Continuous pixel-art ascent, with the same three-pixel canvas scale as the original. */
#ascent{position:fixed;inset:0;width:100%;height:100%;image-rendering:pixelated;z-index:-1;pointer-events:none}body:before,.stars{display:none}body:not(.flight-mode) main{background:linear-gradient(90deg,#080d23ed,#080d23b5 70%,transparent);padding:28px}.hero .rocket,.floor{visibility:hidden}.flight-mode{height:100dvh;overflow:hidden}.flight-mode header,.flight-mode footer{display:none}.flight-mode main{position:fixed;inset:0;max-width:none;margin:0;padding:0;min-height:0;pointer-events:none}.flight-mode main button,.flight-mode main input{pointer-events:auto}#flight-hud{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;padding:20px;gap:15px;pointer-events:none;text-transform:uppercase;font-size:12px;z-index:2}#flight-hud small{display:block;letter-spacing:2px;font-size:11px;margin-bottom:12px}#flight-hud strong{font-size:23px;font-weight:normal}#altitude-name{font-size:11px;letter-spacing:1px}.flight-round{text-align:center;letter-spacing:2px}.flight-round .dots{justify-content:center;margin-top:12px}.flight-round .dot{height:3px;width:16px}.flight-points{text-align:right}.flight-points strong{display:block}#end-flight{pointer-events:auto;border:0;padding:10px 0 0 20px;color:#a0b0d9}.in-flight>.hud,.in-flight>.row,.in-flight>.track,.in-flight>.flight{display:none}.in-flight .prompt{position:static;padding:0;min-height:0}.in-flight .prompt h2{position:absolute;top:14%;left:50%;transform:translateX(-50%);width:min(560px,calc(100% - 40px));font-size:30px;text-transform:uppercase;line-height:1.5;margin:0}.in-flight .prompt h2:before{content:'ONE ANSWER · ENTER TO LAUNCH';display:block;color:#ff8a7a;font-size:12px;letter-spacing:2px;margin-bottom:18px}.in-flight #answerform{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);width:min(560px,calc(100% - 32px));background:#080c20ed;border:1px solid #293e8e;display:flex;align-items:center;padding:12px;gap:12px;pointer-events:auto}.in-flight #answerform label{display:none}.in-flight input{min-width:0;background:transparent;border:0;box-shadow:none;padding:6px 0;font-size:24px}.in-flight input::placeholder{color:#2d4ca7}.in-flight .actions{margin:0;flex-wrap:nowrap}.in-flight #skip{position:absolute;bottom:-26px;right:0;border:0;font-size:10px;padding:4px}.in-flight #answerform .primary{font-size:14px;padding:14px 20px;box-shadow:none}.in-flight>#timer{display:none}.in-flight .prompt #answerform:before{content:attr(data-time);font-size:25px}body.flight-mode .timer{position:fixed;bottom:46px;left:calc(50% - 265px);z-index:3}.ignition{position:absolute;top:22%;left:0;right:0;text-align:center}.ignition #countdown{font-size:64px;margin-top:18px;text-shadow:4px 4px #b22a21}.answer-flying{position:absolute;top:45%;left:50%;transform:translateX(-50%);background:#080c20d9;padding:10px 18px;font-size:20px;font-weight:bold;animation:answer-rise 1s ease-out both}.burning main>*:not(.answer-flying){visibility:hidden}.in-flight>.muted,.in-flight>.card{display:none}.rank-reveal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(392px,calc(100% - 32px));background:#0a0d1e;border:1px solid #9badd9;padding:30px;text-align:center;pointer-events:auto;box-shadow:0 -3px #c9d6ff;animation:reveal-in .3s ease-out}.rank-badge{width:76px;height:76px;object-fit:contain;margin:0 0 24px}.rank-reveal .muted{font-size:20px;text-transform:uppercase;color:#c9d6ff}.rank-reveal h2{font-size:30px;margin:20px 0;overflow-wrap:anywhere}.points-reveal{display:inline-block;background:#c9d6ff;color:#070b1f;padding:10px 18px;font-weight:bold;margin-bottom:28px}.rank-reveal .actions{display:flex;flex-direction:column;gap:16px}.rank-reveal .primary{width:100%;box-shadow:2px 2px #b22a21}.report-mode{overflow:auto;height:auto}.report-mode main{position:relative;max-width:740px;min-height:100vh;margin:auto;padding:50px 28px;background:#080d23e8;pointer-events:auto}.report-mode .answerrow{font-size:16px}@keyframes answer-rise{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes reveal-in{from{opacity:0;margin-top:12px}to{opacity:1;margin-top:0}}@media(max-width:650px){#flight-hud{padding:16px 12px}#altitude-name{display:block;font-size:9px}#flight-hud strong{font-size:19px}.flight-round{font-size:10px}.in-flight .prompt h2{top:16%;font-size:25px}.rank-reveal{padding:24px}.rank-reveal h2{font-size:26px}body:not(.flight-mode) main{padding:18px}.in-flight input{font-size:21px}.in-flight #answerform .primary{padding:14px 12px}.rank-badge{width:64px;height:64px}}
body.flight-mode #answerform .timer{position:static;flex-shrink:0;font-size:25px;color:#f1ede6}.in-flight .rank-reveal~.actions{display:none}
.in-flight>.track.question-clock{display:block;position:fixed;z-index:5;top:0;left:0;right:0;height:7px;margin:0;background:#070b1fbd;pointer-events:none}.question-clock #bar{height:100%;background:#f1ede6;box-shadow:0 0 12px #c9d6ff66;transition:width .1s linear,background-color .3s}.question-clock.running-low #bar{background:#ffd45c}.question-clock.running-out #bar{background:#ff6759;box-shadow:0 0 16px #e63b2e99}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ===== About / SEO section (index.html #about) ===== */
.about{max-width:1000px;margin:0 auto 60px;padding:28px 36px;background:#080d23e0;border-top:1px solid #23345b;font-size:14px}
.about h2{font-size:20px;margin:28px 0 10px;color:#edeadd}
.about h2:first-child{margin-top:0}
.about p,.about li{line-height:1.8;color:#aeb9d8;font-size:14px}
.about ol,.about ul{padding-left:22px;max-width:650px}
.about-ranks{list-style:none;padding-left:0!important}
.about b{color:#f4d16e}
.about details{border:1px solid #283c70;padding:12px 16px;margin-bottom:8px;background:#0b122acc;max-width:650px}
.about summary{cursor:pointer;color:#edeadd}
.about details p{margin:10px 0 0}
.flight-mode .about{display:none}
@media (max-width:700px){.about{padding:18px;margin-bottom:40px}}

/* ===== Share buttons (share.js) ===== */
.share-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.share-btn{display:inline-block;font-size:12px;letter-spacing:1px;padding:10px 14px;border:1px solid #3c5083;color:#edeadd;text-decoration:none;background:transparent;cursor:pointer}
.share-btn:hover{border-color:#c6d4ff;background:#203b7955}
.share-row{margin-top:28px}
.share-row .eyebrow{margin-bottom:6px}

/* ===== Footer links ===== */
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-links a{font-size:10px;letter-spacing:1px;color:#96a5ce;text-decoration:underline}
.footer-links a:hover{color:#edeadd}

/* ===== Legal / contact pages ===== */
body:not(.flight-mode) main.page{max-width:760px;min-height:0;margin:25px auto 60px;padding:36px;background:#080d23e8;line-height:1.8}
header .share-btn{font-size:12px}
.page h1{font-size:32px;letter-spacing:.05em;margin:0 0 6px}
.page h2{font-size:18px;margin:30px 0 8px}
.page p,.page li{color:#aeb9d8;font-size:14px;max-width:none}
.page a{color:#f4d16e;font-size:inherit;text-decoration:underline}
.page .muted{font-size:12px}
@media (max-width:700px){body:not(.flight-mode) main.page{padding:20px;margin:10px}}

/* ===== iOS keyboard: keep prompt visible (see animation.js) ===== */
.flight-mode main{top:var(--vv-top,0);bottom:auto;height:var(--vv-height,100dvh)}
#flight-hud,.in-flight>.track.question-clock{top:var(--vv-top,0)}
.keyboard-open #flight-hud{display:none}
.keyboard-open .in-flight .prompt h2{top:16px;font-size:20px;line-height:1.35}
.keyboard-open .in-flight .prompt h2:before{margin-bottom:8px}
.keyboard-open .in-flight #answerform{bottom:30px}
