:root{--gold:#e8dfcb;--cream:#f4ecd9;--ink:#f4ecda;color-scheme:dark;filter:grayscale(1)}
dialog.collection-dialog::backdrop,dialog.audio-dialog::backdrop,dialog.boot-credits-dialog::backdrop{background:#080808e8}
body{background:#161616;color:#f1e8d5}button:focus-visible{outline:2px solid #fff4d8;outline-offset:5px}
.boot-menu{background:#171717;color:#efe7d5}.boot-world:before{background-image:url('assets/alley/alley-v1.webp');background-position:center 24%;animation:none}
.boot-veil{background:linear-gradient(90deg,#090909f2,#101010b0 40%,#13131300 76%),linear-gradient(0deg,#090909c9,transparent 45%)}
.boot-content{left:8%;top:47%;width:48%;max-width:690px;align-items:flex-start;text-align:left}
.boot-label{font:10px/1.6 Arial;letter-spacing:4px;margin:0 0 34px;color:#c9c2b1}
.boot-title{font:clamp(42px,6.4vw,94px)/.88 Georgia,serif;letter-spacing:-4px;margin:0 0 29px;color:#f5edda;text-shadow:3px 4px #101010;position:relative}
.boot-title em{font-weight:normal}.boot-title:after{content:'✦';font-size:35px;position:absolute;top:-24px;right:-28px}
.boot-motto{font:italic 24px/1.35 Georgia;letter-spacing:0;margin-bottom:28px;text-transform:none;max-width:380px}
.boot-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;justify-content:flex-start;max-width:400px}
.baked-button{width:auto!important;height:auto!important;min-height:48px;background:transparent;border:1px solid #bfb59e66;color:#e9dfcb;font:bold 10px Arial;letter-spacing:1.6px;padding:14px 22px;cursor:pointer}
.baked-button:hover{background:#f4ead51a;transform:translateY(-2px)}#boot-play{background:#f0e7d3;color:#24211d;min-width:208px;min-height:61px;box-shadow:5px 5px #0008}
#boot-play:disabled{opacity:.4;cursor:wait}.boot-journey{margin-top:25px;font-size:10px;letter-spacing:1.2px}.boot-shortcuts{color:#c9c0ad}
#boot-cat{position:absolute;left:auto;top:auto;right:5%;bottom:9%;width:min(46vw,680px);height:auto;filter:drop-shadow(0 14px 20px #0005);pointer-events:none}
.boot-actions .baked-button{clip-path:none;border-radius:0;filter:none}.boot-actions .baked-button:not(#boot-play){border:1px solid #bfb59e66;background:#171717aa;opacity:1}
.boot-footer{color:#b9b2a4}.boot-footer button{color:#e9dfcb}.boot-loading{width:250px;max-width:80vw}.boot-loading>div{background:#ddd3b82a}.boot-loading i{background:#e9ddbe}
.boot-menu:after{content:'';position:absolute;inset:18px;pointer-events:none;border:1px solid #c3baa345}
.hud{background:linear-gradient(#101010dc,transparent);color:#efe5ce}.hud .brand{letter-spacing:1px}.brand strong{font-size:17px}
.primary{background:#eae1ca;color:#24221c;border-color:#f7eed7;box-shadow:4px 4px #0005}.secondary{border-color:#d8cbb270;color:#ece2cc;background:#19191991}
.center-screen h2,.home h1,.collection-dialog h2{color:#f2e9d4}.home .lede{color:#ccc3b0}.home-content{max-width:570px}
.screen .eyebrow{color:#d8cfbb}.glass{background:#131313e6}.realm-picker{background:#131313c9;border-color:#b2a79066}.home-bottom{background:#131313c9}
dialog.collection-dialog,dialog.audio-dialog,dialog.boot-credits-dialog,dialog.equipment-cinematic{background:#202020;color:#e9dfcb;border-color:#b3a991;filter:grayscale(1)}dialog::backdrop{background:#080808e8}.upgrade-card,.enemy-card,.boss-card{background:#171717;border-color:#8e847044}.upgrade-card h3,.enemy-card h3,.forged-equipment h3{color:#eee4ce}
.atlas-icon,.costume-icon,.talent-icon,.skill-icon,.skill-art,.node-art{background-image:none!important;background:#e9e0cc15;border:1px solid #c6bba244;display:grid;place-items:center}
.skill-art:after,.node-art:after{content:'✦';font:24px Georgia;color:#eee5d1}
.skill-slot:nth-child(2) .skill-art:after{content:'◇'}.skill-slot:nth-child(3) .skill-art:after{content:'↑'}
.atlas-icon:after{content:'✦';font:30px Georgia;color:#e8dfc9}.costume-icon:after{content:'♣';font:42px Georgia}.skill-icon:after{content:'✧';font:24px Georgia}
.outfit-heading,#costume-grid,#equip-forged{display:none!important}.equipment-slots{color:#e9dfcb}.forged-equipment{background:#1116}
.talent-node{background-color:#1d1d1d}.talent-node .atlas-icon:after{font-size:20px}.talent-detail{background:#151515}.refuge-panel{background:#1b1b1bf0}
.touch-controls button{background:#151515de;color:#efe5d0;border-color:#c6bba5}.touch-controls button:active{background:#8a816e}.play-tip{background:#121212c9;border:1px solid #a99f8944;padding:10px 14px}
@media(max-width:760px){.boot-content{left:8%;top:35%;width:84%;max-width:none}.boot-title{font-size:clamp(40px,10.4vw,70px);letter-spacing:-2px}.boot-label{font-size:8px;letter-spacing:2px;margin-bottom:25px}.boot-motto{font-size:19px;max-width:245px;margin-bottom:20px}.boot-actions{gap:8px;max-width:330px}.baked-button{padding:10px 13px;min-height:40px;font-size:8px}#boot-play{min-width:165px;min-height:53px}#boot-cat{right:-3%;bottom:5%;width:64vw;max-width:370px}.boot-journey{font-size:8px;max-width:240px}.boot-footer{font-size:7px}.boot-menu:after{inset:10px}.home-content{max-width:80%}.home .lede{max-width:270px}}
@media(max-height:620px) and (min-width:761px){.boot-title{font-size:54px}.boot-label{margin-bottom:18px}.boot-motto{font-size:19px;margin-bottom:16px}.boot-content{top:46%}.boot-journey{margin-top:15px}#boot-cat{width:37vw}}
@media(prefers-reduced-motion:reduce){.baked-button:hover{transform:none}.boot-world{transition:none}}

/* Final ink-and-paper interface pass. Icons are original SVGs from alley-icons.js. */
.atlas-icon:after,.skill-art:after,.node-art:after,.skill-slot:nth-child(2) .skill-art:after,.skill-slot:nth-child(3) .skill-art:after{content:none}
.atlas-icon,.node-art,.skill-art{border:0;background-color:transparent;filter:none}
.upgrade-card .atlas-icon{width:68px;height:68px;background-color:#ece4d00b;border:1px solid #e0d4b627;border-radius:50%;box-shadow:inset 0 0 20px #fff4d008}
.upgrade-card{padding:21px;gap:13px;border:1px solid #c0b49c38;background:linear-gradient(145deg,#292824,#191918);box-shadow:inset 0 1px #fff1d50d}
.upgrade-card h3{font-size:19px}.upgrade-card p{color:#cec8bc;font-size:11px}.upgrade-card .upgrade-effect{color:#f0e7d3;line-height:1.6}.upgrade-card button{padding:12px;margin-top:8px;letter-spacing:1.3px}
.upgrade-card button:not(:disabled){background:#e8dfc9;color:#24221d}.upgrade-card button:disabled{opacity:.7}
.collection-dialog{border:5px double #aca18a!important;box-shadow:0 20px 90px #000b!important}.modal-heading h2,.talent-heading h2{font-size:40px}.modal-heading .eyebrow,.talent-heading .eyebrow{color:#c6bda9;letter-spacing:2px}
.node-ring{background:radial-gradient(#4c4840,#20201e);border-color:#c9bfa366}.talent-node.available .node-ring{box-shadow:0 0 0 3px #e6d7b510,0 0 18px #e6d7b51a;border-color:#d9cdb2}.talent-node.selected .node-ring{box-shadow:0 0 0 3px #dfd1b166}.talent-node.learned .node-ring{background:#615948}.talent-node .node-art{opacity:1;filter:none}.talent-node.locked .node-art{opacity:.45}
.talent-detail{border-left:1px solid #e1d4b729;padding:22px}.talent-detail h3{font-size:29px}.detail-art{background-color:#e8ddc50a;border-radius:50%;border:1px solid #e8ddc529}.talent-path .path-heading span{font-size:9px;color:#c3baaa;letter-spacing:.7px}
.enemy-card,.boss-card{background:linear-gradient(145deg,#2b2b29,#171717);border:1px solid #beb39b33}.enemy-card p,.boss-card small{color:#cbc4b7}.enemy-card h3,.boss-card strong{color:#efe6d2}
.boot-actions{display:grid;grid-template-columns:1fr 1fr;width:300px;max-width:85vw;gap:12px}.boot-actions #boot-play{grid-column:1/3;width:100%!important}.boot-actions .baked-button{width:100%!important}
.boot-title{font-weight:normal}.boot-label:before{content:'';display:inline-block;width:30px;height:1px;background:#d3c8b0;margin-right:13px;vertical-align:middle}
.boot-footer{letter-spacing:1.4px}.boot-world:before{filter:brightness(.83)}
.brand-mark{font-size:0!important}.brand-mark:after{content:'✦';font-size:34px;color:#efe7d3}.brand{font-weight:normal!important}.brand small{opacity:.85}
.hud #run-hud{border-color:#c8bda54d;background:#121212dc}.hud .ascent-state{color:#ded7c6!important}.hud #hearts{color:#f1e8d2}
.route-marker{transform:none!important;top:0!important;height:4px!important;width:1px!important;background:#f1e5ca99!important;border:0!important}
.expedition-route{bottom:112px!important;background:#111c;border-color:#c6b79744;color:#eee3cd;font-size:8px;letter-spacing:1.2px}
.play-tip{bottom:153px!important;font-size:11px;max-width:520px;color:#dfd7c7;line-height:1.7;border-radius:2px}.play-tip b{color:#fff3d9}
.actionbar{bottom:22px}.skill-slot{background:linear-gradient(#3b3932,#181818);border:1px solid #c9bda280;border-radius:4px}.skill-slot.locked{opacity:.48}.skill-slot .skill-art{background-color:transparent}.actionbar>span{color:#d4cabb}
.ability-hud{background:#12121299;padding:12px 15px;border:1px solid #cbbda32e;border-radius:3px;bottom:25px}.streak strong{text-shadow:3px 3px #0008}
.realm-picker{border:1px solid #cfc1a63d;box-shadow:0 10px 40px #0003}.home .home-bottom{color:#ded5c1}.home .lede{line-height:1.9}
.paper-edge{pointer-events:none;position:fixed;inset:10px;border:1px solid #eadfc312;z-index:8}
@media(max-width:760px){
 .boot-actions{width:265px;gap:9px}.boot-content{top:34%}.boot-title{font-size:clamp(39px,10.4vw,70px)}.boot-label:before{width:15px;margin-right:8px}.boot-label{letter-spacing:1.6px}
 .upgrade-card{padding:15px;gap:10px}.upgrade-card .atlas-icon{width:54px;height:54px}.upgrade-card h3{font-size:17px}.modal-heading h2,.talent-heading h2{font-size:31px}
 .talent-detail{padding:16px}.talent-detail h3{font-size:24px}.collection-dialog{border-width:3px!important}
 .expedition-route{top:128px!important;bottom:auto!important;width:max-content;max-width:93vw;white-space:nowrap;text-align:center;font-size:6px;line-height:1.5;padding:5px 9px;letter-spacing:.65px}
 body:has(#boss-hud:not(.hidden)) .expedition-route{display:none}
 .play-tip{bottom:192px!important;max-width:84%;font-size:10px;padding:9px 12px}.play-tip b{font-size:10px}
 .actionbar{left:auto;right:17px;bottom:94px;transform:none}.actionbar>span{display:none}.actionbar #skill-slots{gap:6px}.skill-slot{width:44px;height:48px}.skill-slot .skill-art{width:36px;height:34px;left:3px;top:1px}.skill-slot .skill-name{font-size:6px}
 .ability-hud{left:14px;bottom:96px;padding:7px 9px;width:126px}.ability-hud .level-hud{font-size:7px}.ability-hud .rush-title{font-size:6px}
 .touch-controls{left:13px;right:13px;bottom:15px;gap:9px}.touch-controls button{height:51px;border-radius:8px}.touch-controls #touch-slash{width:105px}.touch-controls #touch-hover{width:81px}
 body[data-mode='playing'] .brand{max-width:130px;font-size:12px!important}body[data-mode='playing'] .brand small{letter-spacing:1px!important;font-size:5px!important}.streak{top:138px!important}
}
@media(max-height:680px) and (max-width:760px){.boot-content{top:38%}.boot-label{margin-bottom:15px}.boot-title{margin-bottom:18px}.boot-motto{font-size:16px;margin-bottom:15px}.boot-journey{margin-top:13px}#boot-cat{width:48vw;bottom:8%}.boot-footer{bottom:13px}}
@media(max-width:760px){.home-bottom>span:first-child:after{content:'TOUCH & HOLD ANYWHERE · DIVE   SLIDE · STEER   RELEASE ON HIT · BOUNCE';font-size:6px;letter-spacing:.6px}}
.play-tip b,.play-tip span{display:block}.play-tip b{letter-spacing:1px}.play-tip span{font-size:10px}
.play-tip[data-state='release']{background:#eee7d7;border:2px solid #fff4dc;box-shadow:0 4px 24px #0008}
.play-tip[data-state='release'] b,.play-tip[data-state='release'] span{color:#191919}
.touch-controls #touch-slash.bounce-ready{background:#eee7d7;color:#151515;border:2px solid #fff}
.chapter-progress #height-fill{transition:width .12s linear}.route-marker.cleared{background:#fff!important}
@media(prefers-reduced-motion:reduce){.chapter-progress #height-fill{transition:none}}
.outfit-heading{display:flex!important}#costume-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
#costume-grid .costume-card{min-height:110px;padding:14px 8px;background:#151515;border:1px solid #a69e8866;color:#e9e0cb}
#costume-grid .costume-card.selected{border-color:#eee4ce;background:#3a3831}#costume-grid .costume-card:disabled{opacity:.45}
#costume-grid .costume-icon{margin:0 auto 8px;width:44px;height:44px}#costume-grid small{display:block;font-size:8px;margin-top:8px}
@media(max-width:760px){#costume-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
