
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',sans-serif;background:#0b111b;color:#eef3f5;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:#d4f56b}
.shell{display:flex;min-height:100vh}.sidebar{width:244px;flex-shrink:0;background:#101a28;border-right:1px solid #304052;padding:24px 14px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:0 7px 36px}.mark{font:800 31px 'Barlow Condensed';background:#d4f56b;color:#182419;border-radius:11px;padding:7px 14px}.brand strong{display:block;font:800 26px 'Barlow Condensed';letter-spacing:1px}.brand small,.eyebrow,.tiny{font-size:10px;letter-spacing:1.6px;font-weight:800;color:#d4f56b}.brand small{color:#9aaebc}.nav{display:grid;gap:4px}.nav button{display:flex;gap:12px;align-items:center;text-align:left;border:0;background:none;color:#acbdc9;border-radius:9px;padding:12px 13px;font-size:13px;font-weight:700}.nav button.active,.nav button:hover{background:#263647;color:#d4f56b}.nav button span{font-size:18px}.sidefoot{margin-top:auto;border-top:1px solid #334254;padding:20px 9px 0;color:#aab9c4;font-size:12px}.main{flex:1;min-width:0}.top{height:70px;border-bottom:1px solid #2f3c4d;display:flex;align-items:center;justify-content:flex-end;padding:0 30px;gap:20px;font-size:12px;font-weight:800}.top b{color:#d4f56b}.content{max-width:1260px;margin:auto;padding:35px 36px 80px}.heading{margin-bottom:25px}.heading h1{font:800 clamp(37px,4vw,62px)/1 'Barlow Condensed';letter-spacing:.5px;margin:8px 0}.heading p,p.muted{color:#a4b3c0;line-height:1.6;font-size:13px}.hero{background:linear-gradient(110deg,#263e3c,#172a31);border:1px solid #496356;border-radius:16px;padding:36px;display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;overflow:hidden}.hero h2{font:800 clamp(37px,4vw,58px)/.98 'Barlow Condensed';margin:10px 0}.hero p{color:#bfd0ca;max-width:440px;font-size:13px}.glyph{font-size:150px;color:#d4f56b44}.btn,.secondary,.done{border:0;border-radius:8px;padding:11px 15px;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn{background:#d4f56b;color:#182319}.secondary{background:#293847;color:#e9eff3;border:1px solid #3c4c5d}.done{background:#274235;color:#a4eab6}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.stat,.card,.reward,.skill{background:#162130;border:1px solid #334255;border-radius:13px;padding:21px}.stat{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.stat .symbol{font-size:24px;color:#d4f56b}.stat small{font-size:10px;letter-spacing:1px;color:#a5b6c3}.stat strong{font:800 31px 'Barlow Condensed'}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.card{margin-bottom:16px;min-width:0}.card h2,.section-title h2{font:800 25px 'Barlow Condensed';margin:0 0 15px}.card h3{font:800 21px 'Barlow Condensed';margin:10px 0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title button{background:none;border:0;color:#d4f56b}.quest{display:flex;gap:13px;align-items:center;border-top:1px solid #354454;padding:16px 0}.quest-icon{background:#2b403e;border-radius:9px;width:40px;height:40px;display:grid;place-items:center;color:#d4f56b;flex-shrink:0}.grow{flex:1;min-width:0}.quest h3{font:700 20px 'Barlow Condensed';margin:4px 0}.quest p{font-size:12px;color:#a8b8c3;margin:0;line-height:1.5}.quest .tiny{color:#a5b5c0}.track{height:8px;background:#2c3948;border-radius:20px;overflow:hidden;margin:13px 0 20px}.track>div{height:100%;background:#d4f56b;border-radius:20px}.skills,.rewards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px}.skill .orb{height:62px;width:62px;border:2px solid #d4f56b;color:#d4f56b;border-radius:50%;display:grid;place-items:center;font-size:28px;margin-bottom:18px}.skill h2{font:800 28px 'Barlow Condensed';margin:8px 0}.skill p,.reward p{font-size:12px;color:#aabac5}.world{min-height:315px;background:radial-gradient(ellipse at center,#304c4a,#172531 68%);border:1px solid #435b59;border-radius:15px;padding:30px;display:grid;align-items:center}.realms{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.realm{border:1px solid #6b8671;background:#152922cc;border-radius:13px;color:#f3f5f6;min-height:155px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}.realm .symbol{font-size:35px;color:#d4f56b}.realm strong{font:800 19px 'Barlow Condensed'}.realm small{color:#a9b7bf}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.placeholder{height:175px;border:1px dashed #4a6071;background:#0d1824;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;border-radius:12px;color:#a9bac5;margin:18px 0;font-size:12px}.option{display:block;width:100%;text-align:left;background:#263746;border:1px solid #455364;color:#f1f5f7;border-radius:8px;padding:13px;margin:8px 0}.option:hover{border-color:#d4f56b}.timer{font:800 76px 'Barlow Condensed';color:#d4f56b}.reward{text-align:center}.reward .symbol{font-size:35px;color:#d4f56b}.reward h3{font:800 22px 'Barlow Condensed'}.reward small{color:#d4f56b;font-weight:800;font-size:10px;letter-spacing:1px}.avatar{font-size:70px;color:#d4f56b;background:#253c3d;border-radius:12px;text-align:center;padding:20px}.field{display:block;width:100%;background:#0c1723;border:1px solid #3d4d5e;color:#f2f6f7;border-radius:8px;padding:12px;margin:9px 0 15px;font-size:13px}.field:focus{outline:2px solid #d4f56b}.label{display:block;font-size:12px;font-weight:700}.journal{max-height:280px;overflow:auto}.journal p,.assessment{border-bottom:1px solid #364556;padding:10px 0}.pill{background:#2b4037;color:#d4f56b;padding:8px 11px;border-radius:7px;font-size:11px;font-weight:800}.notice{position:fixed;right:22px;bottom:24px;z-index:10;background:#d4f56b;color:#152319;padding:16px 21px;border-radius:10px;font-weight:800;box-shadow:0 10px 35px #0008}.footer{text-align:center;font-size:10px;letter-spacing:1px;color:#8096a5;padding:15px}.mobile-nav{display:none}
@media(max-width:1050px){.sidebar{width:200px}.content{padding:24px}.two{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:730px){.sidebar{display:none}.top{height:58px;padding:0 15px;gap:12px}.content{padding:18px 13px 100px}.hero{padding:23px}.hero h2{font-size:38px}.glyph{font-size:70px}.stat{padding:13px}.stat strong{font-size:24px}.quest{flex-wrap:wrap}.quest .btn,.quest .done{margin-left:52px}.realms{grid-template-columns:repeat(2,1fr)}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:8;display:flex;background:#111d2b;border-top:1px solid #354659;overflow-x:auto;padding:7px 3px max(7px,env(safe-area-inset-bottom))}.mobile-nav button{flex:1;min-width:54px;border:0;background:none;color:#aabac7;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;padding:5px 0}.mobile-nav button.active{color:#d4f56b}.mobile-nav .symbol{font-size:17px}.notice{bottom:88px;left:12px;right:12px}.rewards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Live real-world map */
.map-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.map-toolbar .muted{flex:1;min-width:180px}
.live-map{height:min(60vh,570px);min-height:350px;width:100%;border:1px solid #48605a;border-radius:14px;overflow:hidden;background:#152631;z-index:0}
.map-caption{font-size:11px!important;margin:10px 0 25px}
.map-unavailable{display:grid;place-items:center;height:100%;padding:24px;color:#b9c7d0;text-align:center}
.live-map .leaflet-container,.live-map .leaflet-popup-content{font-family:'DM Sans',sans-serif}
@media(max-width:730px){.live-map{height:440px;min-height:330px}.map-toolbar .btn,.map-toolbar .secondary{font-size:11px}}
