@font-face{font-family:Plumbum;src:url('assets/reference/Plumbum.ttf') format('truetype');font-display:swap}
@font-face{font-family:Tiny;src:url('assets/Tiny5-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:Karen;src:url('assets/reference/KarenFat.ttf') format('truetype');font-display:swap}
@font-face{font-family:PixelAE;src:url('assets/reference/PixelAE-Regular.ttf') format('truetype');font-display:swap}
:root{--edge:#0c1115;--blue:#267da2;--blue-top:#469bbb;--blue-shadow:#17465f;--panel:#7d8588;--text:#f1f1ee;--outline:2px 0 #101318,-2px 0 #101318,0 2px #101318,0 -2px #101318,2px 2px #101318,-2px 2px #101318,2px -2px #101318,-2px -2px #101318}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#080c0e;color:var(--text);font-family:PixelAE,Plumbum,Tiny,monospace;overflow:hidden}body{display:grid;place-items:center;overscroll-behavior:none}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;color:inherit;text-shadow:var(--outline);border:0}button:focus-visible{outline:3px solid #d6e5e7;outline-offset:4px}button:disabled{cursor:default}img,canvas{image-rendering:pixelated}img{user-select:none;-webkit-user-drag:none}h1,h2,h3,p{margin:0}i[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px}i[data-icon] img{width:100%;height:100%;object-fit:contain}strong,b{font-weight:normal}button:active:not(:disabled){translate:0 2px}[hidden]{display:none!important}
#app{width:min(100vw,calc(100dvh * 16 / 9));aspect-ratio:16/9;container-type:inline-size;border:6px solid #080c0e;box-shadow:inset 0 0 0 2px #1d2629;background:#294438}
#stage{width:100%;height:100%;position:relative;isolation:isolate;overflow:hidden;background:#294438}
#landscape,#effects{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#landscape{z-index:0}#effects{z-index:8}#field{position:absolute;inset:0;z-index:2}
.wallets{position:absolute;left:1.5cqw;top:1.5cqw;z-index:10;width:16cqw;min-width:120px;display:grid;gap:4px;background:#222c33;border:3px solid #0b1014;padding:5px;box-shadow:inset 2px 2px #777e82,inset -2px -2px #3b4449,2px 2px #10171a}
.wallet{height:3.1cqw;min-height:27px;display:flex;align-items:center;gap:.7cqw;padding:0 .55cqw;background:#277d9f;border:2px solid #0c293c;box-shadow:inset 0 2px #4298b6;overflow:hidden;text-shadow:var(--outline);font:clamp(17px,2.3cqw,37px)/1 Karen,Plumbum,Tiny,monospace}.wallet i{width:2.3cqw;height:2.3cqw;min-width:22px;min-height:22px}.wallet strong{white-space:nowrap}
.nav-btn,.primary-btn,.secondary-btn,.small-btn{background:var(--blue);border:3px solid var(--edge);box-shadow:inset 0 3px var(--blue-top),inset 0 -4px var(--blue-shadow),2px 2px #10171b;font-size:clamp(16px,2.1cqw,32px);padding:.65cqw 1.2cqw;line-height:1.2}.nav-btn:hover,.primary-btn:hover,.secondary-btn:hover,.small-btn:hover{background:#348dab}.nav-btn:active,.primary-btn:active,.secondary-btn:active,.small-btn:active{box-shadow:inset 0 2px #1e5f7c,inset 0 -2px #17465f}.nav-btn.active{background:#226f91}.skill-nav{position:absolute;right:1.6cqw;top:1.5cqw;z-index:10;min-width:16.6cqw;min-height:4.2cqw}
#buttonZone{position:absolute;left:50%;top:49%;width:21cqw;transform:translate(-50%,-50%);text-align:center;z-index:59;pointer-events:none}#mainButton{pointer-events:auto;display:block;padding:0;background:transparent;width:14.2cqw;height:14.2cqw;min-width:105px;min-height:92px;margin:auto;position:relative;transform-origin:50% 75%;filter:none}#mainButton img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}#buttonBase{display:none}#buttonSprite{z-index:1;transform-origin:50% 100%}#mainButton:active{translate:none}.click-counter{position:relative;font:clamp(24px,3cqw,48px)/1 Karen,Plumbum,Tiny,monospace;color:#fff;text-shadow:var(--outline);margin-top:-.2cqw;letter-spacing:.04em}#combo{position:absolute;left:-4cqw;right:-4cqw;top:-2cqw;font-size:clamp(12px,1.5cqw,23px);color:#f0d479;text-shadow:var(--outline);height:1.8cqw}#buttonHint{display:none}
.charge-meter{position:absolute;right:3.2cqw;top:49%;transform:translateY(-50%);width:2.8cqw;min-width:23px;height:62%;min-height:135px;z-index:7;pointer-events:none}#chargeText{position:absolute;bottom:calc(100% + .7cqw);left:50%;transform:translateX(-50%);white-space:nowrap;text-shadow:var(--outline);font:clamp(15px,1.8cqw,28px)/1 Karen,Plumbum,Tiny,monospace}.charge-track{position:absolute;inset:0;border:3px solid #f0f0eb;outline:3px solid #152128;background:#163541;box-shadow:inset 3px 0 #101f28,2px 3px #111b20}#chargeFill{position:absolute;bottom:0;left:0;right:0;width:100%;height:0;background:#70bfd8;box-shadow:inset 3px 0 #91d4e6,inset -3px 0 #428cad;transition:height .08s linear}
.chest-hit{position:absolute;width:8.8cqw;height:5.3cqw;min-width:72px;min-height:44px;padding:0;background:transparent;z-index:5;transform:translate(-50%,-50%);transform-origin:50% 90%}.chest-hit img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.chest-hit .chest-shadow{inset:auto;width:70%;height:35%;left:15%;top:66%;opacity:.25;z-index:0}.chest-sprite{z-index:1}.chest-hit:active{translate:none}.chest-hit:hover .chest-sprite{filter:brightness(1.1)}.special-chromatic .chest-sprite{animation:chestChromatic 3s linear infinite}.special-electric .chest-sprite{filter:drop-shadow(2px 0 #53a7b7) drop-shadow(-2px 0 #53a7b7);animation:chestElectric 1.2s steps(2) infinite}.special-ghost .chest-sprite{filter:grayscale(.5) sepia(.3) hue-rotate(58deg);opacity:.85}.opening{pointer-events:none}.chest-hit .chest-dot{position:absolute;top:0;left:48%;width:3px;height:3px;background:#f0e8c2;box-shadow:0 3px #ddd5b3,3px 0 #ddd5b3,-3px 0 #ddd5b3,0 -3px #ddd5b3;animation:twinkle 1.3s steps(2) infinite}.companion-on-field{position:absolute;bottom:10%;left:8%;display:none;pointer-events:none}.companion-on-field.active{display:block}.companion-on-field img{width:5cqw;height:5cqw;min-width:42px;min-height:42px}.companion-on-field span{display:none}
#collectAll{position:absolute;bottom:2.2cqw;left:50%;transform:translateX(-50%);z-index:6;font-size:clamp(13px,1.3cqw,20px);padding:.5cqw .8cqw;display:none}#collectAll.visible{display:block}kbd{font:inherit;font-size:.8em;padding:1px 4px;border:1px solid #6d98a8;background:#173d51;margin-left:4px}
.utility-buttons{position:absolute;left:1.8cqw;bottom:1.6cqw;display:flex;gap:.8cqw;z-index:10}.icon-btn{display:flex;align-items:center;justify-content:center;width:3.2cqw;height:3.2cqw;min-width:30px;min-height:30px;padding:4px;font-size:30px;background:#3a505b;border:2px solid #10181e;box-shadow:inset 0 2px #738691,inset 0 -2px #23313c}.icon-btn i{width:100%;height:100%}.icon-btn:hover{background:#506572}.game-dock{position:absolute;right:1.6cqw;bottom:1.5cqw;display:flex;align-items:center;gap:1.1cqw;z-index:10}.dock-icon{position:relative;background:none!important;border:0;box-shadow:none!important;width:4.2cqw;height:4.2cqw;min-width:34px;min-height:34px;padding:0}.dock-icon i{width:100%;height:100%}.dock-icon:hover{transform:translateY(-2px)}.dock-icon>span,.dock-icon>b{display:none}.upgrade-nav{min-width:14.2cqw;min-height:4.2cqw;margin-left:.5cqw}
.pixel-panel{background:var(--panel);border:4px solid #10171c;box-shadow:inset 0 3px #adb4b6,inset 0 -3px #4e575e,5px 5px #0c131d80;text-shadow:var(--outline)}#upgradePanel{position:absolute;right:2cqw;top:11%;bottom:12%;width:31cqw;min-width:280px;max-width:440px;z-index:15;display:flex;flex-direction:column;box-shadow:0 0 0 200vmax #060b1159,5px 5px #0c131d80}.hidden-mobile{display:none!important}.panel-title{display:flex;align-items:center;gap:10px;padding:12px 13px;background:#5e686f;border-bottom:3px solid #202a31}.panel-title h2{font-size:clamp(22px,2.5cqw,34px);font-weight:normal;flex:1}.text-icon{display:grid;place-items:center;width:30px;height:28px;background:#8d4441;box-shadow:inset 0 2px #b77367,inset 0 -3px #572e30;border:2px solid #17191b;font-size:30px;line-height:1}.text-icon:hover{background:#9a544e}#upgradeList{overflow-y:auto;padding:10px;flex:1;scrollbar-width:thin;scrollbar-color:#bcc3c5 #434f59}.upgrade{width:100%;display:grid;grid-template-columns:42px 1fr;gap:2px 9px;text-align:left;padding:10px 8px;margin-bottom:9px;border:3px solid #18262e;background:#307b99;box-shadow:inset 0 2px #65a0b4,inset 0 -3px #285069;position:relative}.upgrade:hover:not(:disabled){background:#388aa7}.upgrade:disabled{background:#535f66;box-shadow:inset 0 2px #7c868c,inset 0 -3px #354148;color:#bfc6c8}.upgrade .upgrade-icon{grid-row:1/4;align-self:center;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#203b49;border:2px solid #102530}.upgrade strong{font-size:18px;padding-right:38px}.upgrade .upgrade-level{font-size:13px;position:absolute;right:7px;top:10px;color:#d1d5d7}.upgrade p{font-size:13px;line-height:1.15;margin:3px 0 6px;color:#d3e1e3;text-shadow:1px 1px #142734,-1px -1px #142734}.upgrade .cost{font-size:18px;display:flex;align-items:center;gap:5px;color:#e5cb72}.upgrade .cost i{width:19px;height:19px}.upgrade .cost em{margin-left:auto;font-style:normal;font-size:12px;color:#e1e8e9}.panel-foot{padding:9px 12px;background:#505d65;border-top:3px solid #26343f;font-size:13px;line-height:1.2}
#modalBackdrop{position:fixed;inset:0;background:#080d16b8;display:flex;align-items:center;justify-content:center;padding:18px;z-index:30}#modal{width:min(1000px,90vw);max-height:91dvh;display:flex;flex-direction:column;background:#788186;border:5px solid #10171e;box-shadow:inset 0 3px #b0b7bb,7px 7px #03070c88;text-shadow:var(--outline)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:3px solid #293943;background:#596670;gap:20px}.modal-header h2{font-size:clamp(25px,3vw,36px);font-weight:normal}.modal-header small{display:none}.modal-header .icon-btn{width:36px;height:34px;flex-shrink:0;background:#954d45;box-shadow:inset 0 2px #bc7e69,inset 0 -3px #67362f;border:2px solid #161e24;font-size:30px}#modalBody{padding:22px;overflow:auto;scrollbar-width:thin;scrollbar-color:#a6b4bd #3a4652}.modal-intro{font-size:17px;line-height:1.3;margin-bottom:20px;color:#e3e8eb}.primary-btn,.secondary-btn{font-size:20px;padding:11px 21px}.primary-btn:disabled{background:#5b6973;color:#a7b2bb;box-shadow:inset 0 2px #808d96,inset 0 -3px #3c4751}.secondary-btn{background:#687b89;box-shadow:inset 0 2px #95a3ac,inset 0 -3px #3d5364}
#modal[data-type="collection"]{width:min(950px,94vw);background:transparent;border:0;box-shadow:none}#modal[data-type="collection"] .modal-header{background:transparent;border:0;padding:8px 18px}#modal[data-type="collection"] #modalBody{padding:0 8px 10px;background:transparent}#modal[data-type="collection"] .modal-intro{display:none}.book-layout{display:grid;grid-template-columns:1fr 1fr;gap:0;aspect-ratio:512/300;background:transparent url("assets/reference/book-background.png") center/100% 100% no-repeat;position:relative;padding:15px 10px 21px}.book-layout:after{display:none}.collection-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:7px;padding:20px 22px 22px 17px;min-width:0}.item-cell{aspect-ratio:1;min-width:0;padding:0;background:#747e83;border:2px solid #36434b;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:inset 2px 2px #a9b1b2,inset -2px -2px #58636a}.item-cell img{width:80%;height:80%;object-fit:contain}.item-cell.locked img{filter:brightness(0);opacity:.42}.item-cell.selected{outline:2px solid #e1d184;outline-offset:1px;background:#a1aaac}.item-cell small{position:absolute;bottom:2px;right:4px;font-size:13px;color:#e0e3e1}.item-detail{padding:20px 22px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;min-height:0;min-width:0;background:transparent}.item-detail img{width:144px;height:144px;object-fit:contain;margin:10px}.item-detail h3{font-size:30px;font-weight:normal;margin:10px 0 5px}.item-detail p{font-size:18px;line-height:1.3;color:#e2e5e5}.rarity-tag{font-size:16px;margin:12px 0;padding:5px 12px;background:#4f5f6b;border:2px solid #34424d}.modal-summary{display:flex;gap:14px;align-items:center;font-size:16px;margin:16px 0 0}.modal-summary b{color:#e9d88f}
#modal[data-type="skills"]{background:#172134;max-width:1090px;width:94vw}#modal[data-type="skills"] .modal-header{background:#1d2b41}#modal[data-type="skills"] #modalBody{background-color:#141d30;background-image:radial-gradient(#8190aa 1px,transparent 1px),radial-gradient(#3a4d73 1px,transparent 1px);background-position:7px 5px,33px 22px;background-size:67px 53px,89px 73px}.skill-tree{position:relative;height:440px;margin:0 0 12px;padding:0}.skill-wires{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none}.skill-node{position:absolute;z-index:1;width:60px;height:60px;padding:7px;border:3px solid #182432;background:#435970;box-shadow:inset 0 2px #71849a,inset 0 -3px #2c3a50,3px 3px #070d17;transform:translate(-50%,-50%);text-align:center}.skill-node:before{display:none}.skill-node i{width:38px;height:38px;margin:0}.skill-node strong{display:none}.skill-node p{display:none}.skill-node span{position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);display:block;white-space:nowrap;font:17px Karen,Plumbum,Tiny,monospace;color:#d5b9df;background:#151c2d;border:2px solid #293952;padding:1px 5px}.skill-node:disabled{background:#303d51;box-shadow:inset 0 2px #526078,inset 0 -3px #202b3e;color:#919dab}.skill-node:disabled i{filter:saturate(.45);opacity:.6}.skill-node:not(:disabled):hover{background:#566f89;border-color:#a1aab4}.rebirth-box{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;background:#3d3c58;border:3px solid #141b2e;margin-top:20px;box-shadow:inset 0 2px #65627b}.rebirth-box h3{font-size:24px;font-weight:normal}.rebirth-box p{font-size:15px;margin-top:6px;max-width:580px;line-height:1.25;color:#d5d4e0}.rebirth-box .primary-btn{flex-shrink:0;max-width:230px}
.companion-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:20px 0}.companion-card{text-align:center;padding:12px 6px;background:#5a6d76;border:3px solid #263642;box-shadow:inset 0 2px #94a1a6}.companion-card img{width:64px;height:64px;max-width:100%;object-fit:contain}.companion-card p{font-size:15px;margin-top:5px}.companion-card small{font-size:12px}.companion-card.locked{filter:grayscale(1);opacity:.65}.spin-area{text-align:center;background:#3f5162;padding:24px;border:3px solid #23323f;box-shadow:inset 0 3px #7c8b95}.spin-area>img{width:112px;height:98px;object-fit:contain;display:block;margin:0 auto 20px}.spin-area.spinning>img{animation:wiggle .2s steps(2) infinite}.spin-result{min-height:32px;font-size:22px;margin-top:20px}.achievement-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.achievement{padding:13px;background:#596b75;border:3px solid #293d49;display:flex;gap:13px;align-items:center;box-shadow:inset 0 2px #8e9aa0}.achievement.earned{background:#677166;border-color:#444b31}.achievement i{width:36px;height:36px}.achievement strong{font-size:21px}.achievement p{font-size:15px;color:#d0d9de;margin-top:4px;line-height:1.2}.setting-row{padding:15px 0;border-bottom:2px solid #495963;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:23px}.setting-row small{display:block;color:#d3d9db;font-size:15px;margin-top:5px;line-height:1.25}.setting-row input{width:26px;height:26px;accent-color:#357d9a}.settings-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.settings-help{font-size:16px;color:#d7dfe2;margin-top:22px;line-height:1.5}
.discovery{position:absolute;top:14%;left:50%;transform:translateX(-50%);min-width:230px;max-width:40%;z-index:10;pointer-events:none;text-align:center;background:#4c616ddd;border:3px solid #152432;box-shadow:inset 0 2px #8c9ca6,3px 3px #13212c88;padding:8px 15px;text-shadow:var(--outline);animation:discoveryIn .14s steps(3)}.discovery small{display:block;font-size:14px;color:#d6dee2}.discovery img{width:48px;height:48px;object-fit:contain;display:inline-block;vertical-align:middle;margin:4px 10px 0 0}.discovery strong{font-size:22px}.discovery span{display:block;font-size:14px;color:#ccd7db}#toasts{position:absolute;top:11cqw;left:1.8cqw;z-index:18;pointer-events:none;max-width:25cqw}.toast{background:#354d5bf2;border:2px solid #101c29;color:#e8edef;padding:8px 11px;font-size:16px;margin-bottom:7px;text-shadow:var(--outline);box-shadow:inset 0 2px #607482,2px 2px #0d182180;animation:discoveryIn .14s steps(3)}#pauseShade{position:absolute;inset:0;background:#0e1725c9;z-index:20;display:grid;place-items:center}#pauseShade .pixel-panel{padding:32px;text-align:center}#pauseShade h2{font-size:36px;font-weight:normal;margin:5px 0 14px}#pauseShade p{font-size:20px;margin-bottom:25px}.reduced-motion *{animation:none!important;transition:none!important}
.skill-info{padding:14px 18px;min-height:81px;background:#2a3b52;border:3px solid #0d182b;box-shadow:inset 0 2px #5c6d81;font-size:16px;line-height:1.3}.skill-info strong{font-size:23px;display:block;margin-bottom:6px}.skill-info p{color:#d7e0e9}.skill-info span{color:#d0b6e2}#rouletteBtn{position:absolute;left:50%;bottom:9cqw;transform:translateX(-50%);width:5cqw;height:5cqw;min-width:48px;min-height:48px;background:transparent;border:0;box-shadow:none;padding:0;z-index:7}#rouletteBtn i{width:100%;height:100%}.load-error{position:fixed;inset:40% 20%;background:#33495a;border:3px solid #0c1720;padding:30px;text-align:center;z-index:100;font-size:24px}@keyframes chestChromatic{0%{filter:hue-rotate(0deg) saturate(.8)}100%{filter:hue-rotate(360deg) saturate(.8)}}@keyframes chestElectric{50%{filter:brightness(1.2) drop-shadow(2px 0 #63b8c6) drop-shadow(-2px 0 #63b8c6)}}@keyframes discoveryIn{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}@keyframes twinkle{50%{opacity:0}}@keyframes wiggle{0%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@media(max-width:900px){#app{border-width:4px}.wallets{padding:3px;gap:3px;border-width:2px}.wallet{border-width:1px}.nav-btn{border-width:2px}.charge-track{border-width:2px;outline-width:2px}.charge-meter{right:4cqw}#upgradePanel{min-width:265px}.panel-title{padding:8px 10px}.upgrade{grid-template-columns:32px 1fr;padding:7px 6px}.upgrade .upgrade-icon{width:31px;height:34px}.upgrade strong{font-size:16px}.upgrade .cost{font-size:16px}.upgrade p{font-size:12px}.panel-foot{font-size:12px}.discovery{top:15%;padding:5px 10px;min-width:195px}.discovery small{font-size:11px}.discovery img{width:34px;height:34px}.discovery strong{font-size:17px}.discovery span{font-size:11px}.toast{font-size:13px}#toasts{max-width:30cqw}.collection-grid{padding:12px 15px 14px 10px;gap:5px}.item-detail{padding:15px;min-height:290px}.item-detail img{width:110px;height:110px}.item-detail h3{font-size:24px}.item-detail p{font-size:16px}.skill-tree{height:390px}.skill-node{width:55px;height:55px;padding:6px}.skill-node i{width:35px;height:35px}.skill-node span{font-size:15px}}
@media(max-height:550px) and (orientation:landscape){#modalBackdrop{padding:9px}#modal{max-height:96dvh}.modal-header{padding:8px 14px}.modal-header h2{font-size:25px}#modalBody{padding:14px}.book-layout{min-height:230px}.collection-grid{gap:4px;padding:10px 14px 10px 10px}.item-detail{min-height:0;padding:10px}.item-detail img{width:90px;height:90px;margin:2px}.item-detail h3{font-size:22px;margin:5px 0}.item-detail p{font-size:14px}.rarity-tag{margin:7px}.modal-summary{font-size:13px;margin-top:9px}#upgradePanel{top:8%;bottom:8%}.panel-foot{display:none}}
@media(max-aspect-ratio:3/4){#app{width:100vw;height:100dvh;max-height:none;aspect-ratio:auto;border:4px solid #080c0e}.wallets{left:12px;top:12px;width:147px;gap:4px;padding:4px}.wallet{height:30px;min-height:30px;font-size:24px;gap:8px;padding:0 7px}.wallet i{width:25px;height:25px}.skill-nav{top:14px;right:12px;min-width:0;min-height:37px;font-size:17px;padding:8px 9px}#buttonZone{width:210px;top:47%}#mainButton{width:158px;height:158px}.click-counter{font-size:32px}#combo{top:-25px;left:-40px;right:-40px;font-size:15px;height:20px}.charge-meter{right:20px;top:45%;width:23px;height:170px;min-height:0}#chargeText{font-size:17px;bottom:calc(100% + 12px)}.chest-hit{width:90px;height:55px}.game-dock{right:13px;bottom:16px;gap:9px}.dock-icon{width:39px;height:42px;min-width:0;min-height:0}.upgrade-nav{min-width:118px;min-height:43px;padding:10px;font-size:20px;margin-left:3px}.utility-buttons{left:13px;bottom:72px;gap:8px}.icon-btn{width:31px;height:31px}.companion-on-field{bottom:16%;left:8%}.companion-on-field img{width:45px;height:45px}#collectAll{bottom:78px;font-size:16px;padding:6px 10px}#upgradePanel{top:15%;bottom:13%;right:12px;left:12px;width:auto;max-width:none;min-width:0}.panel-title h2{font-size:28px}.upgrade{grid-template-columns:38px 1fr;padding:10px 8px}.upgrade .upgrade-icon{width:38px;height:38px}.upgrade strong{font-size:18px}.upgrade p{font-size:14px}.upgrade .cost{font-size:18px}.panel-foot{font-size:13px}.discovery{top:20%;max-width:68%;min-width:205px}.discovery small{font-size:12px}.discovery strong{font-size:18px}.discovery img{width:42px;height:42px}#toasts{top:106px;left:13px;max-width:215px}.toast{font-size:14px}#modalBackdrop{padding:8px}#modal,#modal[data-type="collection"],#modal[data-type="skills"]{width:100%;max-height:95dvh;border-width:3px}.modal-header{padding:12px}.modal-header h2{font-size:27px}#modalBody{padding:14px}.modal-intro{font-size:15px}.book-layout{grid-template-columns:1fr;aspect-ratio:auto;background-size:200% 100%;background-position:left top;padding:12px 10px 24px}#modal[data-type="collection"] #modalBody{padding:10px}.collection-grid{padding:12px;gap:6px}.item-cell img{max-height:50px}.item-detail{border-top:3px solid #737b7d;min-height:0;padding:12px;display:grid;grid-template-columns:85px 1fr;column-gap:10px;text-align:left}.item-detail img{grid-row:1/4;width:80px;height:80px;margin:0}.item-detail h3{font-size:24px;margin:0}.item-detail p{font-size:15px}.rarity-tag{font-size:13px;justify-self:start;margin:6px 0;padding:3px 7px}.modal-summary{font-size:14px;gap:7px;flex-wrap:wrap}.skill-tree{height:385px}.skill-node{width:48px;height:48px;padding:5px}.skill-node i{width:30px;height:30px}.skill-node span{font-size:13px}.rebirth-box{flex-direction:column;align-items:stretch;padding:14px}.rebirth-box .primary-btn{max-width:none}.companion-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.achievement-list{grid-template-columns:1fr}.setting-row{font-size:19px;gap:12px}.setting-row small{font-size:13px}.settings-help{font-size:14px}.primary-btn,.secondary-btn{font-size:18px;padding:10px 14px}}
@media(max-width:360px) and (orientation:portrait){.wallets{width:130px}.wallet{font-size:21px}.skill-nav{font-size:15px;padding:8px 7px}.game-dock{gap:6px;right:10px}.dock-icon{width:35px}.upgrade-nav{font-size:18px;min-width:110px}.charge-meter{right:15px;width:20px}.skill-node{padding:9px 6px}.skill-node strong{font-size:15px}.skill-node p{font-size:12px}}



.skill-node.locked{background:#283646;border-color:#15202d}.skill-node.locked i{opacity:.45;filter:grayscale(.7)}.skill-node.owned{border-color:#b3a35a;background:#706b44}.skill-node.available{border-color:#c2cbd0}.skill-balance{display:flex;align-items:center;gap:10px;font:28px Karen,Plumbum,Tiny,monospace}.skill-balance i{width:30px;height:30px}i:not([data-icon]){display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}i:not([data-icon]) img{width:100%;height:100%;object-fit:contain}.upgrade .upgrade-icon i{width:100%;height:100%}
.roulette-view{text-align:center;padding:20px}.roulette-wheel{position:relative;width:240px;height:240px;margin:0 auto 25px}.roulette-wheel img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.roulette-rim{pointer-events:none}.roulette-view p{font-size:25px;margin-bottom:24px}.utility-buttons i{filter:grayscale(1)}
@media(min-aspect-ratio:3/4){.wallets{width:13cqw}.skill-nav{font-size:1.9cqw;min-width:16cqw}.click-counter{font-size:2.5cqw}#modal[data-type="collection"]{width:min(900px,94vw)}}
@media(max-width:550px){.skill-tree{height:540px}.skill-node{width:48px;height:48px;padding:5px}.skill-node i{width:30px;height:30px}.skill-node span{font-size:13px}}

/* Settings use the same legible UI type as the rest of the game. */
#modal[data-type="settings"]{width:min(740px,94vw)}
#modal[data-type="settings"] .setting-row{font-size:22px;text-shadow:1px 1px #152027,-1px -1px #152027}
#modal[data-type="settings"] .setting-row>div{flex:1}
#modal[data-type="settings"] .setting-row small,#modal[data-type="settings"] .settings-help{font-size:18px;line-height:1.5;text-shadow:1px 1px #152027}
.setting-row input[type="range"]{width:160px;height:22px;accent-color:#289bcc}
.setting-row output{width:48px;font-size:18px;text-align:right}
html:not(.keyboard-navigation) body button:focus{outline:none!important;outline-offset:0!important}
.wallets{width:max-content;min-width:max(120px,13cqw)}
#fieldActions{position:absolute;bottom:2.2cqw;left:50%;transform:translateX(-50%);z-index:6;display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:94%;flex-wrap:wrap}
#fieldActions #collectAll{position:static;transform:none}
#fieldActions.has-reset{bottom:max(7cqw,52px)}
#resetProgressBtn{min-height:36px;padding:.5cqw .8cqw;font-size:clamp(13px,1.3cqw,20px);background:#78494e}
.tutorial-touch-controls #resetProgressBtn{min-height:44px;padding:6px 12px;font-size:16px}
@media(max-width:550px){#modal[data-type="settings"] .setting-row{font-size:18px}.setting-row input[type="range"]{width:92px}.setting-row output{width:37px;font-size:16px}#modal[data-type="settings"] .setting-row small,#modal[data-type="settings"] .settings-help{font-size:15px}}
