.lantern-ascent{--ascent-ink:#253a43;--ascent-sea:#234e64;--ascent-gold:#c79a54;--ascent-paper:#fffaf1;--ascent-line:#d9d1be;color:var(--ascent-ink)}.ascent-player .challenge-workspace{padding-top:14px}.ascent-player{max-width:1240px;margin:auto}.ascent-reading{padding:4px 0 20px}.ascent-reading .arcade-question-panel{background:0 0;border:0;padding:0 0 18px}.ascent-reading .arcade-reference-passage{max-width:100%;margin:0 0 14px;font-size:19px;line-height:1.65}.ascent-reading .arcade-question-panel h2{margin:0;font-size:23px;line-height:1.4}.ascent-stage{isolation:isolate;background:#b7cdd2;border:1px solid #afad99;border-top:0;width:100%;position:relative;overflow:hidden;container-type:inline-size}.ascent-stage canvas{touch-action:none;outline:none;width:100%;height:100%;display:block}.ascent-stage canvas:focus-visible{outline-offset:-4px;outline:3px solid #f4d28b}.ascent-scene-message{text-align:center;background:#f5eddcd9;flex-direction:column;justify-content:center;align-items:center;padding:28px;display:flex;position:absolute;inset:0}.ascent-recovery{text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ascent-help{color:#5b6567;margin-top:16px;font-size:14px;line-height:1.6}.ascent-help p{margin:4px 0}.ascent-help strong{color:#394d55;font-weight:600}.ascent-help>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:10px;display:flex}.ascent-help label{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:flex}.ascent-help input{accent-color:#345b79;width:17px;height:17px}.ascent-help .text-button{font-size:15px}.ascent-part-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.ascent-part-heading>span{color:#756037;align-items:center;gap:7px;font-size:14px;display:flex}.ascent-part-prompt{font-size:23px;font-weight:500;line-height:1.45}.ascent-part-note{color:#5b6567;font-size:15px;line-height:1.6}.ascent-part-feedback{background:#f4e9d3;border:1px solid #d8bf8b;border-radius:8px;margin-top:16px;padding:22px;font-size:16px}.ascent-part-feedback p{line-height:1.6}.ascent-player .answer-feedback{margin-top:24px}.lantern-ascent .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:680px){.ascent-reading .arcade-reference-passage{font-size:17px;line-height:1.6}.ascent-reading .arcade-question-panel h2,.ascent-part-prompt{font-size:20px}.ascent-help>div{gap:6px}.ascent-part-heading{align-items:flex-start}.ascent-part-heading>span,.ascent-part-heading>.text-button{font-size:13px}.ascent-player .challenge-workspace{padding-left:0;padding-right:0}}@media (min-width:681px){.ascent-reading{border-right:1px solid var(--ascent-line);scrollbar-width:thin;max-height:calc(100svh - 120px);padding:5px 18px 12px 0;overflow:auto}.ascent-reading .arcade-reference-passage{font-size:17px;line-height:1.65}.ascent-reading .arcade-question-panel h2{font-size:20px;line-height:1.45}.ascent-help,.ascent-part-feedback,.lantern-ascent>.error-notice{grid-column:1/-1}.ascent-part-heading{flex-direction:column;gap:0}.ascent-part-heading>.text-button{padding:6px 0}.ascent-part-prompt{font-size:21px}}.ascent-beacon{border:1px solid var(--ascent-gold);background:var(--ascent-ink);width:clamp(108px,30cqw,200px);color:var(--ascent-paper);filter:drop-shadow(0 2px 3px #20374466);border-radius:6px;align-items:flex-start;gap:7px;padding:7px;display:flex;position:absolute;transform:translate(-50%,-100%)}.ascent-beacon>span{border:1px solid var(--ascent-gold);border-radius:4px;flex:none;place-items:center;width:25px;min-height:27px;font-family:Fraunces,Fraunces Fallback,Georgia,serif;font-size:19px;line-height:1.2;display:grid}.ascent-answer-content{min-width:0;max-height:min(130px, calc(var(--ascent-label-room) - 16px));overscroll-behavior:contain;scrollbar-width:thin;overflow:auto}.ascent-answer-content p{overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.35}.ascent-answer-content:focus-visible{outline:2px solid var(--ascent-gold);outline-offset:2px}.ascent-answer-content .text-button{min-height:32px;color:var(--ascent-paper);justify-content:flex-start;padding:4px 0;font-size:14px;text-decoration:underline}.ascent-beacon.is-arrived{border-color:var(--ascent-paper);box-shadow:0 0 16px #ffe5a166}.ascent-beacon.is-arrived>span{background:var(--ascent-gold);color:var(--ascent-ink)}@media (max-width:680px){.ascent-playfield{width:100%;margin-inline:auto}.ascent-beacon{gap:5px;width:clamp(120px,34cqw,150px);padding:5px}.ascent-beacon>span{width:19px;min-height:24px;font-size:17px}.ascent-answer-content{max-height:min(130px, calc(var(--ascent-label-room) - 12px))}}.ascent-playfield{min-width:0;container-type:inline-size}.ascent-success{background:var(--ascent-paper);color:var(--ascent-ink);border:2px solid var(--ascent-gold);pointer-events:none;z-index:2;border-radius:9px;align-items:center;gap:12px;padding:13px 22px;animation:.3s ease-out ascent-success-in;display:flex;position:absolute;top:18px;left:50%;transform:translate(-50%);box-shadow:0 4px 30px #ffdfa166}.ascent-success>svg{color:var(--sage)}.ascent-success>div{gap:3px;display:grid}.ascent-success strong{font:500 25px Fraunces,Fraunces Fallback,Georgia,serif}.ascent-success span{white-space:nowrap;font-size:14px}.ascent-beacon.is-correct{background:var(--sage);border-color:var(--ascent-paper);box-shadow:0 0 30px #ffdfa1aa}@keyframes ascent-success-in{0%{opacity:0;transform:translate(-50%,8px)scale(.95)}to{opacity:1;transform:translate(-50%)scale(1)}}@container (max-width:590px){.ascent-success{padding:10px 14px;top:10px}.ascent-success strong{font-size:22px}}@media (prefers-reduced-motion:reduce){.ascent-success{animation:none}}.reduced-motion .ascent-success{animation:none}.ascent-stage{border:1px solid var(--ascent-line);border-radius:8px}.ascent-reading .arcade-question-panel h2{font-size:24px;line-height:1.4}.ascent-caption{color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;margin-top:9px;font-size:13px;line-height:1.5;display:flex}.ascent-caption p{margin:0}.ascent-energy-readout{white-space:nowrap;flex:none;font-size:12px}.ascent-touch-hint{display:none}@media (pointer:coarse){.ascent-keyboard-hint{display:none}.ascent-touch-hint{display:block}}@media (max-width:680px){.ascent-reading{padding-bottom:12px}.ascent-reading .arcade-question-panel{margin-bottom:0;padding-bottom:0}.ascent-reading .arcade-question-panel h2{font-size:22px}}.lantern-ascent.arcade-study-layout{display:block}.lantern-ascent .ascent-reading{border:0;max-height:none;padding:0 0 18px;overflow:visible}.lantern-ascent .ascent-reading .arcade-question-panel{margin:0;padding:0}.lantern-ascent .ascent-reading .arcade-question-panel h2{font-size:20px;line-height:1.5}.lantern-ascent .ascent-reading .arcade-reference-passage{font-size:18px;line-height:1.55}.ascent-route-picker{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:14px;display:flex}.ascent-route-picker>.select-field{flex-shrink:0;width:min(100%,24rem)}.ascent-route-picker>span{text-align:right}.ascent-stage{--ascent-label-width:clamp(145px, 27cqw, 240px);--ascent-label-half:calc(var(--ascent-label-width)/2 + 5px);animation:.45s ease-out ascent-arrive}.ascent-beacon{box-sizing:border-box;width:var(--ascent-label-width);align-items:flex-start;gap:8px;max-width:none;padding:8px}.ascent-answer-content{min-width:0;max-height:min(138px, calc(var(--ascent-label-room) - 14px));flex:1;overflow:hidden auto}.ascent-answer-content p{white-space:normal;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:manual;hyphens:manual;font-size:16px;line-height:1.4}.ascent-beacon>span{font-size:18px}.ascent-beacon.is-arrived{z-index:1}.ascent-success{white-space:normal;top:auto;bottom:14px}.ascent-success strong{font-size:25px}@keyframes ascent-arrive{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:680px){.ascent-stage{--ascent-label-width:clamp(140px, 39cqw, 205px)}.ascent-beacon{gap:5px;padding:6px}.ascent-answer-content p{font-size:15px}.ascent-route-picker{flex-direction:column;align-items:start;gap:5px}.ascent-route-picker>span{display:none}.ascent-route-picker label{width:100%}.lantern-ascent .ascent-reading .arcade-question-panel h2{font-size:18px}.lantern-ascent .ascent-reading .arcade-reference-passage{font-size:17px}.ascent-success span{font-size:13px}.ascent-success strong{font-size:21px}}@media (prefers-reduced-motion:reduce){.ascent-stage,.ascent-success{animation:none}}.reduced-motion .ascent-stage,.ascent-reduced-motion .ascent-stage,.ascent-reduced-motion .ascent-success{animation:none}.ascent-study-stop{background:var(--ascent-paper);border:1px solid var(--ascent-gold);color:var(--ascent-ink);white-space:nowrap;pointer-events:none;border-radius:5px;align-items:center;gap:6px;padding:6px 9px;font-size:13px;display:flex;position:absolute;transform:translate(-50%,-100%)}.ascent-caption{flex-wrap:wrap;align-items:flex-start;gap:8px 16px;font-size:14px}.ascent-caption>div{flex:1;min-width:min(100%,330px)}.ascent-caption .ascent-route-hint{color:var(--ascent-ink);margin-top:4px}.ascent-lantern-readout{color:var(--ascent-ink);white-space:nowrap;font-size:14px}.ascent-energy-readout{font-size:14px}.ascent-caption .ascent-touch-hint{max-width:38ch}@media (max-width:680px){.ascent-stage{--ascent-label-width:calc(50cqw - 8px)}.ascent-beacon{gap:5px}.ascent-answer-content p{overflow-wrap:break-word;word-break:normal}}.lantern-ascent .ascent-reading{z-index:4;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:8px;margin-bottom:10px;padding:10px 14px;position:relative}.lantern-ascent .ascent-reading .arcade-question-context{scrollbar-width:thin;max-height:24svh;overflow:auto}.ascent-player .ascent-stage{min-height:calc(300px + var(--game-hud-height,55px) + 2px);height:var(--play-scene-height,65svh)}.ascent-world{will-change:transform;width:100%;position:relative}.ascent-world canvas{position:absolute;inset:0}.ascent-route-picker{grid-column:1/-1;margin:10px 0 0}.ascent-route-picker>.select-field{width:240px}.ascent-caption>div{min-width:min(100%,270px)}.ascent-caption{font-size:14px;line-height:1.4}.ascent-beacon.is-correct{background:var(--sage);transition:background .12s,box-shadow .18s;box-shadow:0 0 0 4px #ffe5a155,0 0 38px #ffe5a1bb}.ascent-dash-status{transition:background-color .14s,box-shadow .14s}.ascent-dash-status .hud-resource-icon{transition:transform .14s,color .14s}.ascent-stage[data-dashing=true] .ascent-dash-status{background:var(--surface);box-shadow:inset 0 -3px 0 var(--brass)}.ascent-stage[data-dashing=true] .ascent-dash-status .hud-resource-icon{color:var(--brass);transform:translate(3px)}.ascent-reduced-motion .ascent-dash-status,.ascent-reduced-motion .ascent-dash-status .hud-resource-icon{transition:none}.ascent-reduced-motion .ascent-dash-status .hud-resource-icon{transform:none}@media (prefers-reduced-motion:reduce){.ascent-dash-status,.ascent-dash-status .hud-resource-icon{transition:none}.ascent-stage[data-dashing=true] .ascent-dash-status .hud-resource-icon{transform:none}}.ascent-dash-status .hud-resource-value{white-space:normal}.lantern-ascent .hud-controls{grid-template-columns:16px minmax(0,1fr);display:grid}.lantern-ascent .hud-controls>svg{grid-area:1/1}.lantern-ascent .hud-controls-keyboard,.lantern-ascent .hud-controls-touch,.lantern-ascent .hud-controls-all{grid-area:1/2;align-content:center}.lantern-ascent .hud-controls .hud-controls-keyboard,.lantern-ascent .hud-controls .hud-controls-touch{display:flex}.lantern-ascent .hud-controls .hud-controls-touch,.lantern-ascent .hud-controls[data-input=touch] .hud-controls-keyboard{visibility:hidden}.lantern-ascent .hud-controls[data-input=touch] .hud-controls-touch{visibility:visible}.ascent-details-trigger{min-height:36px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:6px;padding:4px 8px;font:500 14px DM Sans,sans-serif;display:inline-flex}.ascent-details-trigger:hover{background:var(--surface)}.ascent-details-trigger:focus-visible{outline:2px solid var(--action);outline-offset:-2px}.ascent-details-dialog{width:min(640px,100% - 24px);max-height:calc(100dvh - 24px);padding:22px;overflow:auto}.ascent-details-dialog>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.ascent-details-dialog h2{margin:0;font-size:24px}.ascent-details-content{gap:16px;margin:20px 0;display:grid}.ascent-details-content .hud-context{padding:0}.ascent-details-content .hud-context>div:first-child,.ascent-details-content .hud-context-title,.ascent-details-content .hud-objective{display:block}.ascent-details-content .ascent-controls-help,.ascent-details-content .hud-navigation{border:0;padding:0}.ascent-details-content .ascent-plan-status{margin:0 0 8px}.ascent-footer-score{color:var(--ink);gap:20px;font-size:14px;display:flex}.ascent-details-content .lantern-opportunities{padding:0}.ascent-details-dialog .lantern-encounter-guide{border-radius:8px}.ascent-details-dialog .lantern-bonus-clock{padding:8px 0}.ascent-details-dialog .hint-row{margin:0;padding:0}@media (pointer:coarse){.ascent-details-trigger{min-height:44px}}@media (max-width:680px){.ascent-details-trigger{justify-content:center;width:36px;padding:4px}.ascent-details-trigger>span{display:none}}.game-toolbar-slot{flex:none;align-items:center;gap:8px;display:inline-flex}.game-toolbar-slot:empty{display:none}.ascent-reading:has(>.ascent-details-trigger){align-items:flex-start;gap:10px;display:flex}.ascent-reading>.ascent-details-trigger{flex:none;order:1}.ascent-reading>.arcade-question-panel{flex:1;min-width:0}.lantern-room-details{justify-content:space-between;align-items:center;gap:12px;display:flex}.lantern-ascent .ascent-reading.is-collapsed{background:0 0;border:0;margin:0;padding:0}.lantern-ascent .ascent-reading:has(>.lantern-encounter-guide){padding:0;overflow:hidden}.ascent-reading>.lantern-encounter-guide{border:0;flex:1}.game-toolbar-slot .ascent-details-trigger{flex-shrink:0}@media (max-width:680px){.game-toolbar-slot{gap:4px}.game-toolbar-slot .ascent-question-trigger{white-space:nowrap;width:auto;padding-inline:8px}.game-toolbar-slot .ascent-question-trigger span{display:inline}}
.ascent-journey-status{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:12px 0 6px;font-size:14px;display:flex}.ascent-journey-status>div{gap:3px;display:grid}.ascent-journey-status strong{color:var(--ink);font-size:16px}.ascent-journey-status>span{flex-shrink:0}.ascent-boss-status{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--clay);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:8px;padding:12px 14px;font-size:14px;display:flex}.ascent-boss-status meter{min-width:100px;height:16px;accent-color:var(--clay);flex:1}.ascent-boss-status>span{flex-basis:100%}.ascent-abilities{color:var(--muted);font-size:14px}.ascent-caption .ascent-lantern-readout,.ascent-caption .ascent-energy-readout{color:var(--ink)}@media (max-width:680px){.ascent-journey-status{flex-direction:column;align-items:start;gap:5px}.ascent-caption{padding-top:8px}.ascent-keyboard-hint{display:none}.ascent-touch-hint{display:block}}.ascent-camera-frame{width:100%;height:100%;position:absolute;inset:0}.ascent-stage .ascent-camera-frame{inset:0 0 var(--game-hud-height,55px);height:auto;overflow:hidden}.ascent-playfield>div>.hud-context{padding-inline:2px}.ascent-travel-prompt{padding:18px 24px}.ascent-travel-prompt p{margin:6px 0 0}
.lantern-ascent{--intro-surface:var(--lightningcss-light,#fff7e9)var(--lightningcss-dark,#242a36);--intro-choice:var(--lightningcss-light,#fffbf3)var(--lightningcss-dark,#2c3443);--intro-ink:var(--lightningcss-light,#162f43)var(--lightningcss-dark,#eef0fb);--intro-muted:var(--lightningcss-light,#56616a)var(--lightningcss-dark,#bdc6d9);--intro-enamel:var(--lightningcss-light,#12344f)var(--lightningcss-dark,#293953);--intro-brass:var(--lightningcss-light,#a67430)var(--lightningcss-dark,#a6b5e1);--intro-light:var(--lightningcss-light,#ffdfa1)var(--lightningcss-dark,#dae4ff);--intro-border:var(--lightningcss-light,#c4a268)var(--lightningcss-dark,#7789b0);--intro-shadow:var(--lightningcss-light,#162c4133)var(--lightningcss-dark,#090c2355);--intro-crack:var(--lightningcss-light,#7e6654)var(--lightningcss-dark,#adc0e0);--intro-frame-filter:none;--intro-paper-filter:none;position:relative}.lantern-ascent.is-planning{isolation:isolate}.is-planning>.ascent-gameplay{border-radius:6px;position:absolute;inset:0;overflow:hidden}.is-planning>.ascent-gameplay .ascent-reading,.is-planning>.ascent-gameplay .game-hud-footer,.is-planning>.ascent-gameplay .game-hud,.is-planning>.ascent-gameplay .ascent-beacon,.is-planning>.ascent-gameplay .ascent-world-label{visibility:hidden!important}.is-planning>.ascent-gameplay .ascent-reading{display:none}.is-planning>.ascent-gameplay .ascent-playfield{height:100%}.is-planning>.ascent-gameplay .ascent-stage{border:0;height:100%;max-height:none;animation:none}.is-planning>.ascent-gameplay .ascent-camera-frame{height:100%;inset:0}.ascent-problem-intro{z-index:5;min-height:min(800px, var(--problem-intro-height,calc(100svh - 120px)));color:var(--intro-ink);background:linear-gradient(#173a5500 65%,#102d4877);border-radius:6px;flex-direction:column;align-items:center;gap:18px;padding:24px clamp(24px,4.5vw,76px) 28px;animation:.48s ease-out both problem-intro-in;display:flex;position:relative}.problem-intro-header{grid-template-columns:1fr minmax(310px,500px) 1fr;align-items:center;gap:14px;width:100%;display:grid}.problem-intro-location{color:#fff9e9;text-shadow:0 1px 3px #102736,0 1px 8px #102736;gap:4px;font-size:15px;line-height:1.4;display:grid}.problem-intro-location>span:first-child{text-transform:uppercase;letter-spacing:.13em;font-size:12px}.problem-intro-title{text-align:center;isolation:isolate;flex-direction:column;justify-content:center;align-items:center;min-height:118px;padding:0 26px 4px;display:flex;position:relative}.problem-intro-title:before{content:"";z-index:-1;filter:var(--intro-frame-filter) drop-shadow(0 4px 5px #132d4955);background:url(/art/platformer/intro-navy-frame.webp) 50% 47%/100% 172% no-repeat;position:absolute;inset:0 0 14px}.problem-intro-title p{color:#ffe4ad;text-shadow:0 2px 2px #071e35;white-space:nowrap;outline:none;margin:0;font:400 clamp(30px,3.3vw,45px)/1.12 Georgia,serif}.problem-intro-title>span{color:#fff9e9;text-shadow:0 1px 4px #142d3d,0 1px 8px #142d3d;text-transform:uppercase;letter-spacing:.24em;font:500 11px/1 DM Sans,sans-serif;position:absolute;top:calc(100% - 2px)}.problem-intro-paper{isolation:isolate;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:clamp(24px,3vw,44px);width:100%;margin-top:8px;padding:34px 38px;display:grid;position:relative}.problem-intro-paper:before{content:"";z-index:-1;filter:var(--intro-frame-filter) drop-shadow(0 5px 14px #122c3930);border:36px solid #0000;border-image:url(/art/platformer/intro-paper-frame.webp) 280 240 fill/36px;position:absolute;inset:0}.lantern-ascent .problem-intro-paper>.arcade-question-panel{border:0;border-right:1px solid color-mix(in srgb, var(--intro-border) 45%, transparent);box-shadow:none;color:var(--intro-ink);background:0 0;border-radius:0;align-self:stretch;min-width:0;margin:0;padding:4px clamp(24px,3vw,44px) 8px 0}:root .lantern-ascent .problem-intro-paper .arcade-question-panel h2{color:var(--intro-ink);text-wrap:pretty;border:0;margin:0;padding:0;font:600 clamp(21px,1.7vw,25px)/1.4 Georgia,serif}:root .lantern-ascent .problem-intro-paper .arcade-reference-passage{color:var(--intro-ink);margin:0;font:400 clamp(18px,1.45vw,21px)/1.65 Georgia,serif}.problem-intro-paper .arcade-question-context{border-bottom:1px solid color-mix(in srgb, var(--intro-border) 40%, transparent);margin-bottom:23px;padding:0 0 24px}:root .lantern-ascent .problem-intro-paper .arcade-reading-label{color:var(--intro-muted);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font:500 12px/1.3 DM Sans,sans-serif}.problem-intro-paper .study-table-wrap{max-width:100%;overflow-x:auto}.problem-intro-choices{gap:9px;min-width:0;display:grid}.problem-intro-answer-heading{color:var(--intro-muted);letter-spacing:.09em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 3px;font:500 12px/1.3 DM Sans,sans-serif;display:flex}.problem-intro-answer-heading>span:last-child{letter-spacing:0;text-transform:none;align-items:center;gap:3px;font-size:11px;display:flex}.problem-intro-choice{--choice-wash:transparent;--choice-rim:transparent;--choice-split:60px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:6px;display:grid;position:relative}.problem-intro-activate{isolation:isolate;text-align:left;width:100%;min-height:70px;color:var(--intro-ink);cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:12px;padding:13px 24px 13px 14px;transition:color .18s,filter .16s,box-shadow .18s,transform .16s;display:flex;position:relative}.problem-choice-frame{z-index:-1;pointer-events:none;filter:drop-shadow(0 2px 2px #1f354a28);position:absolute;inset:0}.problem-choice-frame>span{transition:transform .28s ease-out;position:absolute;inset:0}.problem-choice-frame>span:before{content:"";filter:var(--intro-paper-filter);border:13px solid #0000;border-image:url(/art/platformer/intro-paper-frame.webp) 280 240 fill/13px;position:absolute;inset:0}.problem-choice-frame>span:after{content:"";background:var(--choice-wash);box-shadow:inset 0 0 0 1px var(--choice-rim);border-radius:3px;transition:background .18s,box-shadow .18s;position:absolute;inset:2px}.problem-choice-frame>span:first-child{clip-path:polygon(0 0, var(--choice-split) 0, calc(var(--choice-split) - 8px) 28%, calc(var(--choice-split) + 2px) 48%, calc(var(--choice-split) - 7px) 73%, var(--choice-split) 100%, 0 100%);transform-origin:28px}.problem-choice-frame>span:nth-child(2){clip-path:polygon(var(--choice-split) 0, calc(100% - 14px) 0, calc(100% - 6px) 32%, calc(100% - 17px) 58%, calc(100% - 9px) 100%, var(--choice-split) 100%, calc(var(--choice-split) - 7px) 73%, calc(var(--choice-split) + 2px) 48%, calc(var(--choice-split) - 8px) 28%)}.problem-choice-frame>span:last-child{clip-path:polygon(calc(100% - 14px) 0,100% 0,100% 100%,calc(100% - 9px) 100%,calc(100% - 17px) 58%,calc(100% - 6px) 32%);transform-origin:100%}.problem-intro-choice:is(.is-idle,.is-activated) .problem-choice-frame>span:nth-child(2){clip-path:none}.problem-intro-choice:is(.is-idle,.is-activated) .problem-choice-frame>span:is(:first-child,:last-child){visibility:hidden}.problem-choice-letter{isolation:isolate;color:#ffdf9d;text-shadow:0 1px 2px #0b263e;flex:none;place-items:center;width:42px;height:42px;font:400 25px/1 Georgia,serif;transition:filter .18s;display:grid;position:relative}.problem-choice-letter:before{content:"";z-index:-1;filter:var(--intro-frame-filter);background:url(/art/platformer/intro-medallion.webp) 50%/contain no-repeat;position:absolute;inset:-3px}.problem-choice-text{overflow-wrap:anywhere;min-width:0;font:400 18px/1.42 Georgia,serif}.problem-intro-eliminate{min-height:44px;color:var(--intro-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:color .15s,background .15s;display:grid}.problem-intro-eliminate svg{border:1px solid var(--intro-border);border-radius:50%;width:28px;height:28px;padding:5px}.problem-intro-eliminate:hover{color:var(--intro-ink);background:color-mix(in srgb, var(--intro-border) 20%, transparent)}.problem-intro-activate:hover{filter:brightness(1.035);transform:translateY(-1px)}.problem-intro-choice.is-activated{--choice-wash:var(--lightningcss-light,#173c61f5)var(--lightningcss-dark,#334b86f5);--choice-rim:var(--lightningcss-light,#efc773)var(--lightningcss-dark,#c6d3ff)}.problem-intro-choice.is-activated .problem-intro-activate{color:var(--lightningcss-light,#fff3d3)var(--lightningcss-dark,#f4f5ff);box-shadow:0 0 0 2px var(--choice-rim), 0 0 20px color-mix(in srgb, var(--intro-brass) 35%, transparent)}.problem-intro-choice.is-activated .problem-choice-letter{color:var(--lightningcss-light,#ffe4a2)var(--lightningcss-dark,#fff);filter:drop-shadow(0 0 7px var(--choice-rim))}.problem-intro-choice:is(.is-unchosen,.is-eliminated){--choice-wash:var(--lightningcss-light,#d6dee6f0)var(--lightningcss-dark,#222b3df5);--choice-rim:var(--lightningcss-light,#8594a5)var(--lightningcss-dark,#62718c)}.problem-intro-choice:is(.is-unchosen,.is-eliminated) .problem-intro-activate{color:var(--lightningcss-light,#435165)var(--lightningcss-dark,#c0cbe0)}.problem-intro-choice:is(.is-unchosen,.is-eliminated) .problem-choice-frame>span:first-child{transform:translate(-4px,1px)rotate(-2deg)}.problem-intro-choice:is(.is-unchosen,.is-eliminated) .problem-choice-frame>span:last-child{transform:translate(3px,2px)rotate(2deg)}.problem-intro-choice:is(.is-unchosen,.is-eliminated) .problem-choice-letter{color:#e5ebf4}.problem-intro-choice:is(.is-unchosen,.is-eliminated) .problem-choice-letter:before{filter:grayscale()brightness(.75)}.problem-intro-choice.is-eliminated{--choice-wash:var(--lightningcss-light,#bec8d5f5)var(--lightningcss-dark,#1b2333f5)}.problem-intro-choice.is-eliminated .problem-intro-activate{outline:1px dashed var(--choice-rim);outline-offset:-5px}.problem-intro-choice.is-eliminated .problem-choice-frame>span:first-child{transform:translate(-5px,2px)rotate(-3deg)}.problem-intro-choice.is-eliminated .problem-choice-frame>span:last-child{transform:translate(4px,3px)rotate(3deg)}.choice-cracks{pointer-events:none;width:calc(100% + 2px);height:calc(100% + 2px);stroke:var(--intro-light);stroke-width:1.5px;display:none;position:absolute;inset:-1px}.is-unchosen .choice-cracks,.is-eliminated .choice-cracks{display:block}.is-eliminated .choice-cracks{stroke:var(--intro-crack);stroke-width:2.2px}.problem-intro-choice:is(.is-unchosen,.is-eliminated) .choice-cracks{stroke:#f0f4ff;stroke-width:2.8px;filter:drop-shadow(1px 1px #101b30)}.problem-intro-footer{z-index:6;justify-content:center;width:100%;margin-top:auto;display:flex;position:sticky;bottom:12px}.problem-intro-route{--route-plate:var(--lightningcss-light,#12344eeb)var(--lightningcss-dark,#1c2230f0);--route-rim:var(--lightningcss-light,#ebc784)var(--lightningcss-dark,#aab6d6);--route-lit:#ffe4a6;background:var(--route-plate);border:1px solid var(--route-rim);outline:1px solid var(--route-plate);outline-offset:3px;color:#fff9ee;border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:22px;width:100%;margin:0;padding:8px 10px 8px 14px;display:grid;box-shadow:0 10px 28px #0b1f3266}.problem-intro-route-art{align-items:flex-start;width:288px;min-height:80px;padding-left:92px;display:flex;position:relative}.problem-intro-route-art:before{content:"";background:var(--route-rim);opacity:.7;border-radius:2px;width:30px;height:3px;position:absolute;bottom:5px;left:0}.problem-intro-courier{filter:drop-shadow(0 2px 3px #06172688);background:url(/art/platformer/courier-atlas.webp) 66.667% 66.667%/400% 400% no-repeat;width:78px;height:78px;transition:opacity .24s,transform .32s cubic-bezier(.3,1.4,.5,1);position:absolute;bottom:6px;left:22px}.problem-intro-arc{fill:none;width:34px;height:30px;stroke:var(--route-rim);stroke-width:2px;stroke-dasharray:3 5;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.55;transition:opacity .24s;position:absolute;bottom:8px;left:8px;overflow:visible}.problem-intro-route .problem-intro-beacon{visibility:visible;opacity:1;box-sizing:border-box;width:196px;max-width:none;margin:2px 0 12px;animation:2.4s ease-in-out .3s infinite problem-intro-sign-lit;position:relative;inset:auto;transform:none}.problem-intro-route .problem-intro-beacon .ascent-answer-content{max-height:none;overflow:visible}.problem-intro-route .problem-intro-beacon p{margin:0;font:400 16px/1.3 DM Sans,sans-serif}.problem-intro-beacon.is-empty{color:#c9d3dc;background:#1d3a50;border:1px dashed #8ea3b5;border-radius:6px;place-items:center;min-height:44px;font:400 14px/1.3 DM Sans,sans-serif;animation:none;display:grid}.problem-intro-route:not(.is-picked) .problem-intro-courier{opacity:.6;transform:translate(-6px,6px)}.problem-intro-route.is-picked .problem-intro-arc{opacity:1;animation:.9s linear infinite problem-intro-arc-travel}.problem-intro-route-copy{gap:3px;min-width:0;margin:0;display:grid}.problem-intro-route-copy strong{color:#ffe4ad;font:400 21px/1.2 Georgia,serif}.problem-intro-route-copy span{color:#f3ecdd;font:400 14px/1.4 DM Sans,sans-serif}.problem-intro-route-copy kbd{vertical-align:1px;border:1px solid var(--route-rim);color:#fff3d3;background:var(--lightningcss-light,#0c2336)var(--lightningcss-dark,#121722);border-bottom-width:3px;border-radius:5px;place-items:center;min-width:28px;height:26px;margin:0 2px;padding:0 7px;font:600 14px/1 DM Sans,sans-serif;display:inline-grid}.problem-intro-route .problem-intro-start{white-space:nowrap;width:auto;min-width:300px;min-height:66px;padding:12px 52px;font-size:20px}@keyframes problem-intro-arc-travel{to{stroke-dashoffset:-8px}}@keyframes problem-intro-sign-lit{50%{box-shadow:inset 0 1px #ffffff38,0 0 0 2px #efc773,0 0 30px #ffe0a1d0}}.problem-intro-start{isolation:isolate;color:#ffe4ad;cursor:pointer;text-shadow:0 1px 2px #071e35;text-align:center;text-transform:uppercase;letter-spacing:.1em;background:0 0;border:0;grid-template-columns:22px minmax(0,1fr) 22px;align-items:center;gap:12px;width:min(520px,100%);min-height:76px;padding:16px 68px;font:400 23px/1.2 Georgia,serif;transition:filter .18s,transform .18s;display:grid;position:relative}.problem-intro-start>span{text-wrap:balance;grid-column:2;min-width:0}.problem-intro-start>svg{grid-column:3;width:22px;height:22px}.problem-intro-start:before{content:"";z-index:-1;filter:var(--intro-frame-filter) drop-shadow(0 4px 5px #132d4955);background:url(/art/platformer/intro-navy-frame.webp) 50% 55%/100% 172% no-repeat;position:absolute;inset:0}.problem-intro-start:disabled{opacity:.72;filter:grayscale(.75)brightness(.78);color:#c9c2b0;cursor:default}.problem-intro-start:not(:disabled){color:#fff3d2;text-shadow:0 1px 2px #071e35,0 0 10px #ffd27a;filter:brightness()drop-shadow(0 0 6px #ffd98f)drop-shadow(0 0 16px #f2b74fcc);animation:.62s ease-out problem-intro-start-ignite,2.2s ease-in-out .62s infinite problem-intro-start-breathe}.problem-intro-start:hover:not(:disabled){filter:brightness(1.16)drop-shadow(0 0 8px #ffe3a6)drop-shadow(0 0 20px #f2b74f);animation:none;transform:translateY(-2px)}.problem-intro-start:active:not(:disabled){transform:translateY(0)}@keyframes problem-intro-start-ignite{0%{filter:brightness()drop-shadow(0 0 #ffd98f00)drop-shadow(0 0 #f2b74f00)}45%{filter:brightness(1.2)drop-shadow(0 0 12px #fff0c4)drop-shadow(0 0 30px #f2b74f)}}@keyframes problem-intro-start-breathe{50%{filter:brightness()drop-shadow(0 0 3px #ffd98fb0)drop-shadow(0 0 8px #f2b74f80)}}.ascent-problem-intro button:focus-visible{outline:3px solid var(--intro-brass);outline-offset:3px}.ascent-problem-intro.is-leaving{pointer-events:none;animation:.42s ease-in both problem-intro-out}@keyframes problem-intro-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes problem-intro-out{0%{opacity:1}to{opacity:0;transform:translateY(-5px)}}.ascent-beacon.is-activated:not(.is-selected){color:#fffaf1;background:#345d70;border-color:#fff0c4;box-shadow:inset 0 1px #ffffff38,0 0 0 2px #d8aa56,0 0 22px #ffe0a180}.ascent-beacon.is-activated:not(.is-selected)>span{color:#183747;background:#ffe4a6;border-color:#fff3cf;box-shadow:0 0 10px #ffe0a170}.ascent-beacon>span{position:relative}.ascent-beacon:is(.is-unchosen,.is-eliminated):not(.is-selected){color:#c0c7ca;background:#343b3f;border-color:#7c8589;box-shadow:inset 0 1px #ffffff0c}.ascent-beacon:is(.is-unchosen,.is-eliminated):not(.is-selected)>span{color:#aeb8bc;background:#252b2e;border-color:#818b90}.ascent-beacon:is(.is-unchosen,.is-eliminated):not(.is-selected) .choice-cracks{display:none}.ascent-beacon:is(.is-unchosen,.is-eliminated):not(.is-selected)>span:after{content:"";pointer-events:none;background:linear-gradient(135deg,#0000 43%,#151d21 43% 49%,#a6b1b5 49% 54%,#151d21 54% 60%,#0000 60%);position:absolute;inset:1px -3px}.ascent-beacon:is(.is-unchosen,.is-eliminated):not(.is-selected):before{content:"";pointer-events:none;clip-path:polygon(72% 0,45% 45%,80% 47%,28% 100%,0 100%,48% 56%,20% 50%);background:#151d21;width:13px;height:13px;position:absolute;bottom:-2px;left:18px}.ascent-beacon:is(.is-unchosen,.is-eliminated):not(.is-selected):after{border-top-color:#7c8589}.ascent-beacon.is-eliminated:not(.is-selected){border-style:dashed}.ascent-plan-status{color:var(--ink);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:6px 0 0;padding:0;text-decoration:underline}.lantern-journey-host:has(.is-planning)>div>.lantern-opportunities{display:none}:root[data-theme=dark] .lantern-ascent{--intro-frame-filter:grayscale(1) brightness(.8) sepia(.15) hue-rotate(170deg);--intro-paper-filter:grayscale(1) invert(.86) hue-rotate(170deg)}:root[data-theme=dark] .problem-intro-paper:before{filter:var(--intro-paper-filter)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .lantern-ascent{--intro-frame-filter:grayscale(1) brightness(.8) sepia(.15) hue-rotate(170deg);--intro-paper-filter:grayscale(1) invert(.86) hue-rotate(170deg)}:root:not([data-theme=light]) .problem-intro-paper:before{filter:var(--intro-paper-filter)}}@media (max-width:1100px){.ascent-problem-intro{padding:18px 22px 24px}.problem-intro-header{grid-template-columns:1fr minmax(280px,400px) 1fr;gap:10px}.problem-intro-paper{gap:24px;padding:30px}.problem-intro-activate{gap:9px;padding:12px 24px 12px 12px}.problem-choice-text{font-size:17px}}@media (max-height:820px) and (min-width:761px){.ascent-problem-intro{gap:10px;padding-top:12px}.problem-intro-title{min-height:88px}.problem-intro-title p{font-size:34px}.problem-intro-paper{margin-top:0;padding-block:26px}}@media (max-width:1100px){.problem-intro-route{column-gap:16px}.problem-intro-route-art{width:246px}.problem-intro-route .problem-intro-beacon{width:154px}.problem-intro-route .problem-intro-beacon p{font-size:15px}.problem-intro-route-copy strong{font-size:19px}.problem-intro-route{grid-template-columns:auto minmax(0,1fr);row-gap:4px}.problem-intro-route .problem-intro-start{grid-column:1/-1;justify-self:center;font-size:19px}}@media (max-width:760px){.ascent-player .challenge-workspace:has(.is-planning){padding:0}.ascent-problem-intro{gap:14px;min-height:0;padding:8px 5px 20px}.problem-intro-header{grid-template-columns:1fr auto;row-gap:14px}.problem-intro-title{grid-area:1/1/auto/-1;justify-self:center;width:min(100%,410px);min-height:92px}.problem-intro-title p{font-size:32px}.problem-intro-location{padding-left:8px;font-size:13px}.problem-intro-location>span:first-child{font-size:11px}.problem-intro-paper{grid-template-columns:1fr;gap:20px;margin:0;padding:26px 18px}.problem-intro-paper:before{border-width:26px;border-image-width:26px}.lantern-ascent .problem-intro-paper>.arcade-question-panel{border:0;padding:0}:root .lantern-ascent .problem-intro-paper .arcade-reference-passage{font-size:18px;line-height:1.55}:root .lantern-ascent .problem-intro-paper .arcade-question-panel h2{font-size:22px;line-height:1.4}.problem-intro-paper .arcade-question-context{margin-bottom:17px;padding-bottom:18px}.problem-intro-choices{gap:8px}.problem-intro-choice{--choice-split:49px;grid-template-columns:minmax(0,1fr) 30px;gap:4px}.problem-intro-activate{gap:9px;min-height:64px;padding:12px 24px 12px 10px}.problem-choice-letter{width:34px;height:34px;font-size:22px}.problem-choice-text{font-size:17px}.problem-intro-footer{gap:12px;position:static}.problem-intro-route{grid-template-columns:minmax(0,1fr);row-gap:6px;padding:10px 12px 8px}.problem-intro-route-art{width:auto}.problem-intro-route .problem-intro-start{letter-spacing:.06em;justify-self:center;gap:6px;width:100%;min-width:0;min-height:72px;padding:12px 30px;font-size:17px}.problem-intro-route-art{grid-column:1/-1;justify-self:center;width:auto;min-height:72px;padding-left:88px}.problem-intro-route-copy strong{font-size:19px}.problem-intro-start{gap:8px;width:min(340px,100%);min-height:104px;padding:16px 38px;font-size:21px}}@media (max-width:360px){.problem-intro-start{gap:6px;padding-inline:28px}}@media (prefers-reduced-motion:reduce){.ascent-problem-intro,.ascent-problem-intro.is-leaving{animation:none}.ascent-problem-intro *,.ascent-problem-intro :before,.ascent-problem-intro :after{transition:none}.problem-intro-start:hover:not(:disabled),.problem-intro-activate:hover{transform:none}.problem-intro-route.is-picked :is(.problem-intro-beacon,.problem-intro-arc),.problem-intro-start:not(:disabled){animation:none}}.ascent-reduced-motion .ascent-problem-intro,.ascent-reduced-motion .ascent-problem-intro.is-leaving{animation:none}.ascent-reduced-motion .ascent-problem-intro *,.ascent-reduced-motion .ascent-problem-intro :before,.ascent-reduced-motion .ascent-problem-intro :after{transition:none}.ascent-reduced-motion .problem-intro-start:hover:not(:disabled),.ascent-reduced-motion .problem-intro-activate:hover{transform:none}.ascent-reduced-motion .problem-intro-route.is-picked :is(.problem-intro-beacon,.problem-intro-arc),.ascent-reduced-motion .problem-intro-start:not(:disabled){animation:none}
.ascent-trail-guide{z-index:4;pointer-events:none;color:#fff1cb;text-shadow:0 2px 3px #152c49,0 0 8px #152c49,0 0 18px #152c49;align-items:center;gap:18px;width:max-content;max-width:calc(100% - 28px);transition:opacity .3s;animation:.5s ease-out both trail-guide-appear;display:flex;position:absolute;top:14%;left:50%;transform:translate(-50%)}.ascent-trail-guide.is-hidden{opacity:0;animation:none}.ascent-trail-guide strong{font:500 22px/1.2 Fraunces,Georgia,serif;display:block}.ascent-trail-guide small{margin-top:5px;font:500 14px/1.4 DM Sans,sans-serif;display:block}.ascent-trail-arrows{transform:rotate(var(--trail-angle));color:#ffe39a;filter:drop-shadow(1px 0 #102b44)drop-shadow(-1px 0 #102b44)drop-shadow(0 1px #102b44)drop-shadow(0 -1px #102b44)drop-shadow(0 2px 4px #102b44);flex:none;align-items:center;width:58px;height:58px;display:flex}.ascent-trail-arrows svg{stroke-width:2.5px;flex:none;width:30px;height:42px;margin-left:-12px;animation:1.8s ease-out infinite trail-arrow-dissolve}.ascent-trail-arrows svg:nth-child(2){animation-delay:.16s}.ascent-trail-arrows svg:nth-child(3){animation-delay:.32s}@keyframes trail-arrow-dissolve{0%,to{opacity:.45;transform:translate(-5px)}35%{opacity:1}75%{opacity:.1;transform:translate(10px)}}@keyframes trail-guide-appear{0%{opacity:0}to{opacity:1}}.ascent-reduced-motion .ascent-trail-guide,.ascent-reduced-motion .ascent-trail-arrows svg{transition:none;animation:none}@media (prefers-reduced-motion:reduce){.ascent-trail-guide,.ascent-trail-arrows svg{transition:none;animation:none}}@media (max-width:680px){.ascent-trail-guide{gap:10px;top:13%}.ascent-trail-guide strong{font-size:20px}.ascent-trail-guide small{font-size:13px}}
