@font-face{font-family:HopDisplay;src:url('/bullillion/foot-pixel.ttf') format('truetype');font-display:swap}@font-face{font-family:Illion;src:url('/arcade/pixel.woff');font-display:swap}
:root{--cream:#f0e6c5;--paper:#dfcea0;--ink:#1d2d35;--panel:#18282ef5;--line:#87968a;--gold:#f5d77b;--pixel:Illion,monospace;--display:HopDisplay,Illion,monospace;color:var(--cream);background:#294551;color-scheme:dark;font:14px/1.5 var(--pixel)}*{box-sizing:border-box}body{text-transform:uppercase;margin:0;min-height:100svh;overflow:hidden}button,input,select,textarea{font:inherit;text-transform:uppercase}button,a,input,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{border-radius:0;cursor:pointer;background:#1a3037;color:var(--cream);border:1px solid var(--line);min-height:40px;padding:10px 14px;box-shadow:0 2px 0 #14242b}button:hover{background:#314b50}button:active{transform:translateY(2px);box-shadow:none}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}svg{width:18px;height:18px;fill:currentColor;flex:none}::selection{background:var(--paper);color:var(--ink)}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}input{caret-color:var(--gold)}*{scrollbar-color:#819a91 #182c35;scrollbar-width:thin}[hidden]{display:none!important}.icons{position:absolute;width:0;height:0;overflow:hidden}.game-world{position:fixed;inset:0;z-index:-2;background:#4d777e}#scene{width:100%;height:100%;image-rendering:pixelated}.crt{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#15273118 0,#15273118 1px,transparent 1px,transparent 3px);opacity:.45}.topbar{position:fixed;z-index:5;left:0;top:0;width:100%;height:64px;padding:17px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;text-shadow:1px 2px #1d3840}.illion{display:flex;align-items:center;gap:10px}.illion>span{display:grid;place-content:center;background:#233f49;color:#e4dab9;border:1px solid #a4b5a1;width:29px;height:29px;font:24px/1 var(--pixel);padding-bottom:4px;box-shadow:2px 2px #1d3543}.illion>b{font-weight:400;letter-spacing:.02em}.position{position:absolute;left:50%;transform:translateX(-50%);font-size:11px;color:#e2e8ce;white-space:nowrap;display:flex;gap:9px;align-items:center}.position b{font-weight:400;color:#f7e4a8}.top-actions{display:flex;gap:7px;align-items:center}.top-actions>button{display:grid;place-content:center;padding:4px;min-height:29px;width:30px;background:#213941c9;font:17px var(--display);border-color:#9baf9d99}.top-actions svg{width:15px;height:15px}.top-actions>a{font-size:11px;padding:7px;background:#1c343cc9;border:1px solid #8c9f8c;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home{height:100dvh;position:relative}.wordmark{position:absolute;top:10.7vh;left:0;right:0;text-align:center;padding:0 12px;pointer-events:none}.wordmark h1{font:clamp(48px,6.8vw,92px)/1.2 var(--display);letter-spacing:-.025em;margin:0;color:#f1e6c3;-webkit-text-stroke:1px #24333a;text-shadow:0 4px #263c43,3px 5px #263c43,-2px 0 #263c43,2px 0 #263c43,0 -2px #263c43;filter:drop-shadow(2px 3px 0 #152d3680)}.menu{position:absolute;width:min(560px,calc(100% - 30px));left:50%;transform:translateX(-50%);top:44.7vh}.day-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;min-height:30px;font-size:11px;color:#f2ead0;text-shadow:1px 2px #1c3b43}.day-row>button{display:flex;gap:8px;align-items:center;min-height:30px;padding:6px 9px;background:#1d3942db;font-size:11px}.day-row svg{width:12px;height:12px;color:var(--gold)}#day-count{color:#f3dfaa}.directions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.direction{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;min-height:125px;padding:17px 6px;border:2px solid #20333a;box-shadow:inset 0 1px #fff4cc80,inset 0 -4px #112b3a38,3px 4px #17323db3;transition:transform .14s,filter .14s;background:var(--mode)}.direction:hover{background:var(--mode);filter:brightness(1.09);transform:translateY(-2px)}.direction:active{transform:translateY(3px);box-shadow:inset 0 2px #112b3a38,1px 1px #17323db3}.direction svg{width:23px;height:23px}.direction strong{font:22px/1.1 var(--display);letter-spacing:.04em}.direction span{font:14px/1.3 var(--pixel)}.sky{--mode:#e6d09e;color:#273b3b}.abyss{--mode:#254b61;color:#eee7c9}.past{--mode:#955b52;color:#fff0cf}.future{--mode:#2b625e;color:#f2ebca}.direction small{position:absolute;right:7px;top:7px;font:11px var(--pixel);padding:2px 4px;background:#132d3999;color:#fff1c9}.direction.sky small{background:#273b3b;color:#f1e6c3}.extras{display:grid;grid-template-columns:1fr 1fr 1fr;background:#1b333bea;border:1px solid #8ea193;margin-top:13px}.extras button{background:transparent;border:0;border-right:1px solid #758d84;font-size:11px;padding:10px 5px;display:flex;justify-content:center;align-items:center;gap:7px;box-shadow:none;min-height:42px}.extras button:last-child{border:0}.extras button:hover{background:#37545a}.extras svg{width:14px;height:14px}.infinity{font:25px/12px var(--pixel);margin-top:-3px}.social{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.social button{background:#19333bec;border-color:#d0cfaa;display:flex;align-items:center;justify-content:center;gap:9px;font-size:11px;min-height:43px}.social svg{width:15px;height:15px}.practice-link{display:block;margin:12px auto 0;padding:5px 12px;border:0;background:#19353e9e;color:#f5e8bf;min-height:28px;box-shadow:none;font-size:12px;text-decoration:underline;text-underline-offset:4px}.practice-link:hover{background:#254650}footer{position:fixed;bottom:max(11px,env(safe-area-inset-bottom));left:20px;right:20px;display:flex;justify-content:space-between;gap:14px;align-items:center;font:11px var(--pixel);color:#d1dfcb;text-shadow:1px 2px #243f48;z-index:4;pointer-events:none}footer a,footer button{pointer-events:auto}.footer-dot{padding:0 5px}footer button{padding:3px 6px;font:inherit;min-height:24px;background:#203c428c;border:0;box-shadow:none}.play{height:100dvh;position:relative}.question-board{position:absolute;left:50%;transform:translateX(-50%);top:8.2vh;width:min(560px,calc(100% - 28px));padding:17px 23px 18px;background:#1d292feF;border:2px solid #354c50;box-shadow:inset 0 1px #83938499,4px 6px #152b3477;text-align:center;min-height:150px}.score-row{display:flex;align-items:center;justify-content:center;gap:13px;color:#e9dfbe;font:14px/1 var(--pixel)}.score-row b{font-weight:400}.rounds{display:flex;gap:4px}.rounds span{background:#64717655;color:#d5decb;display:grid;place-content:center;width:21px;height:18px;font:9px var(--pixel);border:1px solid #71847c44}.rounds span.done{background:#93ad9c;color:#173039;border-color:#aec2a3}.rounds span.active{border-color:#e4d399;background:#b7aa7788;color:#f8e8b7}.question-context{display:flex;justify-content:center;align-items:center;gap:5px;font:11px var(--pixel);color:#d1d8c7;margin:14px 0 11px}.question-context svg{width:10px;height:10px}.question-board h2{font:clamp(18px,2.2vw,27px)/1.45 var(--display);margin:0;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:anywhere}.question-board p{font:13px/1.4 var(--pixel);margin:10px 0 0;color:#e9d58e}.clock{position:absolute;bottom:5px;left:8px;right:8px;height:3px;background:#83938733}.clock span{display:block;background:#e9dfbe;transform-origin:left;height:3px}.timer{position:absolute;right:12px;top:15px;color:#e9dfbe;font:11px var(--pixel);font-variant-numeric:tabular-nums}.timer.urgent{color:#ffbba6}.clock.urgent span{background:#ed9b88}.answer-dock{position:absolute;bottom:max(7vh,45px);left:50%;transform:translateX(-50%);width:min(560px,calc(100% - 24px));text-align:right}.skip{font:11px var(--pixel);min-height:29px;padding:5px 10px;margin-bottom:9px;background:#1b343bdb;border-color:#7e9990}.answer-dock form{display:flex;gap:8px;padding:11px;background:#152a32ed;border:1px solid #7e988b;box-shadow:3px 4px #132a3577}.answer-dock input{font:17px/1.3 var(--pixel);color:#f5eacc;background:#0d232c;padding:15px 13px;border:2px solid #cbbd84;border-radius:0;min-width:0;flex:1;min-height:54px}.answer-dock input::placeholder{color:#a2b3ac}.answer-dock input:focus{outline:none;border-color:#f1dc92;box-shadow:0 0 0 1px #f1dc9280}.answer-dock form>button,.primary{background:#e1d3aa;border:1px solid #f1e4bf;color:#243c3d;box-shadow:inset 0 -3px #ad9f795c,0 3px #162b34;display:flex;align-items:center;justify-content:center;gap:10px;font:12px var(--display)}.answer-dock form>button{min-width:115px}.primary:hover,.answer-dock form>button:hover{background:#f1e2b6}.answer-dock form>button svg{width:15px;height:15px}#input-hint{display:block;font:11px var(--pixel);margin:9px 0 0;text-align:center;color:#d8e3ce;text-shadow:1px 2px #143742}.hop-text{position:absolute;top:57%;left:0;right:0;text-align:center;font:clamp(20px,3vw,36px) var(--display);color:#f5dda0;text-shadow:3px 4px #1a3945;pointer-events:none;animation:hop-float 1.3s ease-out both}.hop-text small{display:block;font:13px var(--pixel);margin-top:9px;color:#e9ebca}@keyframes hop-float{0%{transform:translateY(12px);opacity:0}15%{opacity:1}100%{transform:translateY(-12px);opacity:1}}.result{position:absolute;bottom:max(6vh,44px);left:50%;transform:translateX(-50%);width:min(520px,calc(100% - 24px));border:1px solid #8fa596;background:#14272eef;box-shadow:4px 5px #10263070;max-height:45dvh;overflow-y:auto}.result-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--tier,#cfbd8a);color:#1c343c;gap:16px}.result-head>span{display:flex;align-items:center;gap:9px}.result-head b{font:17px/1.2 var(--display)}.result-head strong{font:24px/1 var(--display);white-space:nowrap}.result-body{padding:14px 16px 16px}.result-body>p{font:14px/1.5 var(--pixel);margin:0 0 13px;overflow-wrap:anywhere}.result-body>p b{color:#f1d98d;font-weight:400}.alternatives-heading{display:flex;justify-content:space-between;gap:12px;color:#b7c9b8;text-transform:uppercase;font:11px var(--pixel);margin-bottom:7px}.alternative{display:grid;grid-template-columns:15px minmax(0,1fr) auto;align-items:center;gap:8px;font:13px/1.6 var(--pixel);padding:2px 0}.alternative i{width:6px;height:6px;background:var(--color)}.alternative>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alternative b{font-weight:400;color:#d5e2c9;font-variant-numeric:tabular-nums}.result .primary{width:100%;margin-top:12px;min-height:43px}.primary svg{width:14px;height:14px}.subtle{border:0;box-shadow:none;padding:5px 0;min-height:24px;background:none;color:#c0d3c2;text-decoration:underline;text-underline-offset:3px;font:11px var(--pixel)}.run-nav{position:absolute;bottom:max(11px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:16px;font:11px var(--pixel);white-space:nowrap;z-index:6}.run-nav button{font:inherit;min-height:25px;border:0;box-shadow:none;background:#1b373fbf;padding:4px 8px}.run-nav>span{color:#d8dfc8;text-shadow:1px 2px #163440}body[data-view=game] footer{display:none}.finish{height:100dvh;overflow:auto;padding:75px 16px 65px;display:grid;place-items:start center}.finish-panel{width:min(560px,100%);text-align:center;padding:23px 27px;background:#1a2e36f2;border:2px solid #8f9e8b;box-shadow:5px 6px #142b3477}.finish-direction svg{width:25px;height:25px;color:#e9d69e}.finish h1{font:25px/1.45 var(--display);margin:12px 0 9px}.finish p{margin:8px 0;font:13px/1.5 var(--pixel);color:#cad9c5}.final-score{margin:18px 0 15px;display:flex;align-items:baseline;justify-content:center;gap:9px}.final-score b{font:56px/1.2 var(--display);color:#f1dc9e}.final-score span{font:16px var(--pixel);color:#b5cbbd}.finish-chart{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;max-width:350px;margin:0 auto 16px;align-items:end;height:95px}.chart-bar{display:flex;flex-direction:column;justify-content:end;height:100%;gap:7px;font:11px var(--pixel);color:#dce7c9}.chart-bar i{display:block;background:#d1bf87;min-height:3px;box-shadow:inset 2px 0 #ead7a44d,inset -2px 0 #8d845e80}.journey-distance{color:#f1dc9e!important;font:16px var(--display)!important;margin:18px 0!important;line-height:1.6!important}.finish .primary{width:100%;margin-top:18px;min-height:43px}.finish-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.finish-buttons button{font-size:11px}.finish details{text-align:left;margin-top:20px;border-top:1px solid #66847b;padding-top:15px;font:12px var(--pixel)}.finish summary{cursor:pointer;color:#d9e4c7}.finish-record{border-top:1px solid #54736d;padding:11px 0;margin-top:10px}.finish-record strong{font-weight:400;color:#e7d393}.finish-record p{margin:5px 0;color:#e1e6cc}.loading{position:fixed;inset:0;background:#162d37a8;z-index:25;display:flex;align-items:center;justify-content:center;gap:16px;font:14px var(--pixel)}.loading b{font-weight:400}.loading>span{display:block;width:15px;height:15px;background:#e5d094;animation:load 1s steps(4) infinite}@keyframes load{0%,100%{transform:rotate(0);opacity:.4}50%{transform:rotate(90deg);opacity:1}}.error{position:fixed;z-index:50;bottom:20px;left:50%;transform:translateX(-50%);width:min(540px,calc(100% - 24px));background:#503c38;border:1px solid #e6c895;color:#fff0d0;padding:16px 40px 16px 16px;box-shadow:3px 4px #18323e;font:14px var(--pixel)}.error p{margin:0 0 12px}.error>button{font:12px var(--pixel)}#dismiss-error{position:absolute;right:6px;top:4px;background:none;border:0;box-shadow:none;font-size:24px;min-height:24px;padding:0 7px}dialog{width:min(520px,calc(100% - 28px));max-height:85dvh;background:#1d3038;color:#eee7c9;border:2px solid #8c9e8d;padding:0;box-shadow:5px 7px #102833;overflow:auto}dialog::backdrop{background:#11242dc2}.dialog-title{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid #627c74}.dialog-title h2{font:20px/1.4 var(--display);margin:0}.dialog-title button{font:26px/1 var(--pixel);border:0;background:none;box-shadow:none;padding:0 5px;min-height:28px}#dialog-content{padding:20px 22px;font:14px/1.7 var(--pixel)}#dialog-content h3{font:14px/1.5 var(--display);margin:22px 0 10px}#dialog-content p{margin:0 0 15px}#dialog-content label{display:block;margin:14px 0 6px;color:#d9dfbd}#dialog-content select,#dialog-content input,#dialog-content textarea{width:100%;font:16px/1.5 var(--pixel);background:#122831;color:#f0e5c3;border:1px solid #9cad93;padding:11px;border-radius:0}#dialog-content .primary{width:100%;margin-top:18px}#dialog-content a{color:#e7d394;text-decoration:underline}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.option-grid button{font:13px var(--pixel)}.board-row{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #506d68;font:14px var(--pixel)}.board-row small{display:block;font:11px var(--pixel);color:#bdcdbb}.board-row b{font-weight:400;color:#ead8a3}.quiet{font:12px/1.6 var(--pixel);color:#b9cdbb}.help-mode{display:grid;grid-template-columns:30px 1fr;gap:9px;margin:14px 0}.help-mode svg{width:20px;height:20px;color:#e8d092}.help-mode b{font-weight:400;color:#f0d99a}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:700px){.topbar{height:54px;padding:12px 14px}.illion{gap:7px;font-size:11px}.illion>b{display:none}.position{font-size:11px}.top-actions{gap:6px}.top-actions>a{font-size:11px;max-width:110px}.top-actions>button{min-height:28px;width:29px}.wordmark{top:12vh}.wordmark h1{font-size:clamp(36px,10.4vw,64px);-webkit-text-stroke:.7px}.menu{top:41.5vh;width:min(470px,calc(100% - 26px))}.day-row{font-size:11px;gap:8px}.day-row button{font-size:11px;padding:5px 7px}.day-row button>span:last-child{display:none}.directions{gap:8px}.direction{min-height:113px;padding:15px 4px;gap:9px}.direction strong{font-size:19px}.direction span{font-size:12px}.direction svg{width:21px;height:21px}.extras{margin-top:12px}.extras button{font-size:11px;gap:5px;min-height:39px}.extras svg{width:13px;height:13px}.social{gap:8px;margin-top:9px}.social button{font-size:11px;gap:7px;min-height:40px}.social svg{width:13px;height:13px}.practice-link{font-size:11px;margin-top:10px}.question-board{top:8vh;padding:16px 16px 17px;min-height:137px}.question-board h2{font-size:clamp(16px,4.7vw,23px);line-height:1.5}.question-context{font-size:11px;margin:12px 0 9px}.question-board p{font-size:12px;margin-top:8px}.question-board .timer{font-size:11px;top:12px;right:10px}.score-row{font-size:12px;gap:8px}.rounds{gap:3px}.rounds span{width:18px;height:16px;font-size:8px}.answer-dock{bottom:max(8vh,44px)}.answer-dock form{padding:9px;gap:6px}.answer-dock input{font-size:16px;padding:12px 10px;min-height:50px}.answer-dock form>button{min-width:87px;font-size:11px;padding:9px 8px;gap:5px}.answer-dock form>button svg{width:12px;height:12px}.result{bottom:max(7vh,42px);max-height:44dvh}.result-head{padding:11px 13px}.result-head b{font-size:15px}.result-head strong{font-size:22px}.result-head svg{width:17px;height:17px}.result-body{padding:12px 13px 14px}.result-body>p{font-size:13px;margin-bottom:9px}.alternative{font-size:12px;padding:1px 0}.alternatives-heading{font-size:9px}.result .primary{font-size:11px;min-height:40px;margin-top:8px}.subtle{font-size:11px}.hop-text{top:54%;font-size:25px}.hop-text small{font-size:12px}.run-nav{font-size:9px;gap:8px}.finish{padding:65px 12px 50px}.finish-panel{padding:20px 18px}.finish h1{font-size:21px}.final-score b{font-size:47px}.finish .journey-distance{font-size:13px!important}.finish-chart{gap:7px;height:80px}.finish .primary{font-size:11px}.finish-buttons button{font-size:11px}footer{left:14px;right:14px;font-size:9px;bottom:max(8px,env(safe-area-inset-bottom))}.dialog-title{padding:17px}.dialog-title h2{font-size:18px}#dialog-content{padding:17px;font-size:13px}.finish details{font-size:11px}}@media(max-height:740px){.wordmark{top:9.5vh}.wordmark h1{font-size:clamp(35px,6vw,70px)}.menu{top:40vh}.direction{min-height:99px;gap:7px;padding:12px 4px}.direction strong{font-size:19px}.direction span{font-size:12px}.direction svg{width:19px;height:19px}.extras button,.social button{min-height:35px}.day-row{min-height:26px;margin-bottom:7px}.day-row>button{min-height:26px}.practice-link{margin-top:8px;min-height:24px}.question-board{top:8vh;padding-top:13px}.question-board h2{font-size:18px}.question-board p{font-size:11px}.question-context{margin-top:10px}.result{bottom:38px;max-height:43vh}.result-head{padding:9px 12px}.result-body{padding:10px 12px}.result-body>p{margin-bottom:7px}.alternative{font-size:11px}.subtle{font-size:11px}.result .primary{margin-top:5px;min-height:36px;font-size:11px}.answer-dock{bottom:40px}.finish{padding-top:60px}}@media(max-height:520px){.question-board{top:51px;min-height:110px}.question-board h2{font-size:15px}.question-board p{display:none}.question-context{margin:8px 0}.rounds span{height:12px}.question-board .timer{top:10px}.answer-dock{bottom:29px}.answer-dock input{min-height:42px}.answer-dock form{padding:7px}.answer-dock input{padding:9px}.skip{margin-bottom:5px}.answer-dock #input-hint{display:none}.result{bottom:27px;max-height:43vh}.alternative:nth-child(n+4){display:none}.home{overflow:auto;min-height:600px}.menu{top:240px}.wordmark{top:65px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}body.reduced *{transition:none!important;animation:none!important}
