@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
.main-menu{position:fixed;inset:86px 0 0;z-index:10;background:radial-gradient(ellipse at 50% 30%,#34543b,#111c18 75%);overflow:auto;display:grid;place-items:center;padding:25px}.main-menu[hidden]{display:none}.menu-inner{text-align:center;width:min(660px,100%)}.menu-inner h1{font-size:76px;margin:5px 0 18px}.menu-inner h1 span{color:#c5ee89}.menu-inner p{color:#afc2aa;line-height:1.7}.menu-crystal{font-size:85px;color:#b8ffea;text-shadow:0 0 60px #83efb977}.menu-actions{display:flex;justify-content:center;gap:12px;margin:28px 0}.menu-actions button{padding:15px 28px}#collection{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:35px 0 18px}.collection-item{background:#203426;border:1px solid #536b48;border-radius:12px;padding:20px 6px}.collection-item>span{font-size:32px;display:block;margin-bottom:10px}.collection-item b,.collection-item small{display:block}.collection-item small{letter-spacing:0;margin-top:8px}.collection-item.locked{opacity:.5}.menu-hint,#progress{font-size:11px}.upgrade-note{color:#c5ee89;font-size:11px}.details{flex-wrap:wrap}.details:has(strong){border:1px solid #6f8b59;background:#253726;border-radius:12px;padding:18px;margin-top:18px}.details button#upgrade{background:#c5ee89;color:#172b1c;font-weight:700}@media(max-width:800px){.main-menu{inset:65px 0 0}.menu-inner h1{font-size:55px}#collection{gap:5px}.collection-item{padding:12px 3px}.menu-crystal{font-size:55px}}
:root{color-scheme:dark;--mint:#c5ee89;--line:#303b36;--muted:#94a49b}*{box-sizing:border-box}body{margin:0;background:#111c18;color:#edf2e8;font:14px 'DM Sans',sans-serif}button,a{font:inherit}button{cursor:pointer;background:#23332b;color:#e2ebdf;border:1px solid #405046;border-radius:8px;padding:11px 17px;transition:.2s}button:hover{border-color:var(--mint);transform:translateY(-1px)}button:disabled{opacity:.4;cursor:default}header{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5%}.brand{font:800 27px Outfit,sans-serif;text-decoration:none;color:#fff;letter-spacing:-1px}.brand span{display:inline-grid;place-items:center;background:var(--mint);color:#19251b;width:35px;height:38px;border-radius:10px;margin-right:10px}.brand b{color:var(--mint)}.chapter{letter-spacing:2px;font-size:11px;color:#b0bdae}.chapter i{color:var(--mint);padding:15px}header button{background:none;border:none;color:#b4bfb7}main{max-width:1240px;margin:auto;padding:35px 32px}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}small{font-size:10px;letter-spacing:2px;color:var(--mint)}h1{font:600 44px/1.08 Outfit,sans-serif;letter-spacing:-1.5px;margin:13px 0}.intro p{color:var(--muted);margin-bottom:0}.badge{display:flex;align-items:center;gap:15px;font-size:11px;letter-spacing:1.2px}.badge>span{font-size:40px;color:var(--mint)}.badge small{display:block;margin-top:9px;color:var(--muted);letter-spacing:0}.game{border:1px solid #435348;border-radius:15px;overflow:hidden;background:#1c2c23;box-shadow:0 16px 45px #0002}.boardhead{padding:18px 22px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.live{display:inline-block;width:7px;height:7px;background:var(--mint);border-radius:50%;margin-right:8px}.muted{color:var(--muted);margin-left:16px}.stats{display:flex;gap:25px;font-size:16px}.stats>span:first-child{color:#f09d9d}.stats>span:nth-child(2){color:var(--mint)}.stats b{color:#fff;margin-left:5px}.stats em{font-size:12px;font-style:normal;color:var(--muted)}.arena{position:relative;background:#486b4c}canvas{width:100%;display:block;aspect-ratio:1000/520;touch-action:manipulation}.maplabel{position:absolute;top:20px;left:23px;font-size:11px;color:#e1eac4;letter-spacing:2px}.maplabel span{margin-left:10px;opacity:.6}.legend{position:absolute;bottom:18px;left:24px;color:#e3f5cc;font-size:11px}.legend span{color:#b9ccab;margin-left:14px}.controls{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.controls>span{color:#b6c2b5;font-size:12px}.controls>div{display:flex;gap:8px}.primary{background:var(--mint);color:#1b2e1b;border-color:var(--mint);font-weight:700}.sectiontitle{display:flex;align-items:center;justify-content:space-between;margin:27px 0 16px}h2{font:500 21px Outfit,sans-serif;margin:0}h2 span{font:9px 'DM Sans',sans-serif;letter-spacing:1px;color:#98aa99;margin-left:14px}.sectiontitle p{font-size:12px;color:var(--muted)}#cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.card{text-align:left;position:relative;padding:17px;background:#1b2a22;border-color:#35453a;display:flex;gap:13px;align-items:center;min-height:112px}.card.selected{border-color:var(--mint);background:#2b3c2a;box-shadow:inset 0 0 0 1px var(--mint)}.portrait{height:59px;width:52px;flex-shrink:0;display:grid;place-items:center;border-radius:13px;font-size:32px;background:var(--tint);box-shadow:inset 0 -7px 0 #0002}.card h3{font:500 17px Outfit,sans-serif;margin:0 0 4px}.card p{font-size:10px;color:#a1b09f;margin:0 0 9px}.cost{font-size:12px;color:var(--mint)}.tag{position:absolute;top:9px;right:9px;font-size:8px;color:#b0bca7}.details{min-height:50px;padding:15px 0;color:#aebdaa;font-size:12px;display:flex;gap:12px;align-items:center}.details button{padding:7px 12px}.details strong{color:#e7efde;margin-right:10px}footer{border-top:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px;color:#7f9284}footer button{border:0;background:none;font-size:11px;padding:0}dialog{background:#1c3024;color:#e8f2e2;border:1px solid #718d64;border-radius:18px;max-width:440px;padding:30px;line-height:1.9}dialog::backdrop{background:#08150cbb}#end{position:absolute;inset:0;background:#102319dc;place-content:center;text-align:center;font:500 35px Outfit}#end:not([hidden]){display:grid}#end p{font:14px 'DM Sans';color:#b8cbb2}@media(max-width:800px){main{padding:24px 14px}.chapter,.badge,.muted{display:none}header{height:65px}.intro h1{font-size:36px}.stats{gap:12px}.boardhead{padding:14px}#cards{grid-template-columns:repeat(2,1fr)}.sectiontitle{display:block}.controls{flex-wrap:wrap}.controls>div{width:100%}.controls button{flex:1;padding:10px}.card{padding:12px}footer>span:nth-child(2){display:none}}
.main-menu{place-items:start center}.menu-inner{width:min(960px,100%)}.menu-inner h1{font-size:52px}.menu-crystal{font-size:40px}.menu-actions{position:sticky;top:0;z-index:2;background:#172b20ed;padding:12px;border-radius:12px;margin:18px 0}.menu-section-heading{display:flex;justify-content:space-between;align-items:center;margin:24px 0 12px;text-align:left}.menu-section-heading>b{color:#c5ee89}.menu-section-heading>span{font-size:10px;letter-spacing:2px;color:#9cb391}#map-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.map-option{text-align:left;padding:18px;background:linear-gradient(130deg,#304c36,#1d3024)}.map-option:nth-child(2){background:linear-gradient(130deg,#735334,#332b22)}.map-option:nth-child(3){background:linear-gradient(130deg,#405970,#242d38)}.map-option.selected{border-color:#c5ee89;box-shadow:inset 0 0 0 1px #c5ee89}.map-option span{font-size:24px;opacity:.5}.map-option b,.map-option small,.map-option em{display:block;margin-top:8px}.map-option small{letter-spacing:0;color:#ccd2c5}.map-option em{font-size:11px;color:#d2eeab;font-style:normal}#collection{margin:12px 0 18px;grid-template-columns:repeat(4,1fr)}.collection-item{background:#1c2e23;border-color:#3a503e}.collection-item.equipped{border-color:#c5ee89;background:#2b402a}.collection-item small{color:#a8bca0;font-size:10px}.collection-item button{font-size:11px;padding:9px;margin-top:13px;width:100%}#shop-message{font-size:12px;text-align:left}#cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}@media(max-width:600px){#map-options{grid-template-columns:1fr}.map-option{padding:12px}.map-option span{float:right}#collection{grid-template-columns:repeat(2,1fr)}.menu-section-heading h2{font-size:18px}.menu-actions button{padding:12px}}
.guardian-sprite{width:64px;height:68px;object-fit:contain;image-rendering:pixelated;vertical-align:middle}.portrait{overflow:visible;background:radial-gradient(ellipse,#718d4433,transparent)}.portrait .guardian-sprite{width:58px;height:64px}.collection-item>span{height:88px;display:grid;place-items:center;margin-bottom:5px}.collection-item .guardian-sprite{width:86px;height:88px;filter:drop-shadow(0 5px 0 #07170d55)}.collection-item .character-class{color:#daedc9;font-size:11px;margin-top:7px}
#boss-hud{position:absolute;top:12px;left:25%;width:50%;padding:10px 14px;border:1px solid #b38465;background:#15271bec;border-radius:9px;pointer-events:none}#boss-hud[hidden]{display:none}.boss-title{display:flex;justify-content:space-between;font-size:12px;color:#f3ceaf}.boss-title span{font-size:10px}.boss-track{height:7px;background:#3c3d32;margin:7px 0;border-radius:4px;overflow:hidden}#boss-fill{display:block;height:100%;background:linear-gradient(90deg,#b86678,#f3b782)}#boss-ability{font-size:9px;letter-spacing:0;color:#cbb5a1}@media(max-width:600px){#boss-hud{left:15%;width:70%;padding:5px 8px;top:5px}.boss-title{font-size:10px}#boss-ability{font-size:8px}.boss-track{margin:4px 0}.maplabel{display:none}}
#auto-start.enabled{color:#c5ee89;border-color:#90b966;background:#30452c}.controls>div{flex-wrap:wrap}@media(max-width:600px){.controls>div{display:grid;grid-template-columns:1fr 1fr}}
.camera-controls{position:absolute;bottom:12px;right:12px;display:flex;gap:4px}.camera-controls button{background:#152c23de;padding:6px 10px;font-size:11px}#field{cursor:crosshair}.legend{bottom:18px}.legend span{display:none}@media(max-width:600px){.camera-controls{bottom:5px;right:5px}.camera-controls button{padding:5px 8px}.legend{font-size:9px;left:8px;bottom:10px}}
