@font-face{font-family:Graphik;src:url(/fonts/graphik/Graphik-Regular-Web.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/graphik/Graphik-RegularItalic-Web.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/graphik/Graphik-Medium-Web.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/graphik/Graphik-Semibold-Web.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}html{font-synthesis:none}:root{--pbl-ink: #2a1f14;--pbl-cream: #fff6e0;--pbl-sun: #ffd95e;--pbl-leaf: #5fb44a;--pbl-sky: #a8d8f0;--pbl-panel: rgba(32, 26, 16, .82);--pbl-edge: rgba(255, 217, 94, .4)}*{box-sizing:border-box}html,body,#app,canvas{width:100%;height:100%;margin:0;padding:0;overflow:hidden}html,body{background:#1e4d78;font-family:Graphik,system-ui,sans-serif;color:var(--pbl-cream)}#app,.game-shell{position:fixed;inset:0;width:100vw;height:100vh}#app canvas{display:block;width:100vw!important;height:100vh!important}.render-error{position:fixed;inset:40% 20% auto;z-index:40;padding:18px 22px;border-radius:14px;background:var(--pbl-panel);border:1px solid var(--pbl-edge);text-align:center;font-size:15px}.aura3d-top-bar{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;gap:6px;padding:7px 12px;background:linear-gradient(180deg,rgba(26,20,10,.88),rgba(26,20,10,.55) 78%,transparent);pointer-events:auto}.aura3d-top-bar .aura-badge{font-size:12px;letter-spacing:0;color:var(--pbl-sun);border:1px solid var(--pbl-edge);border-radius:6px;padding:4px 7px;margin-right:6px;white-space:nowrap}.aura3d-top-bar .aura-sep{width:1px;height:18px;background:var(--pbl-edge);margin:0 6px}.aura3d-top-bar button{appearance:none;border:1px solid rgba(255,246,224,.25);background:#fff6e014;color:var(--pbl-cream);font:500 12px/1 Graphik,sans-serif;letter-spacing:0;padding:6px 12px;border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s,transform .1s}.aura3d-top-bar button:hover{background:#ffd95e33;transform:translateY(-1px)}.aura3d-top-bar button.active{background:var(--pbl-sun);color:var(--pbl-ink);border-color:var(--pbl-sun)}.aura3d-top-bar button.venue{font-size:12px;padding:5px 8px;opacity:.9}.aura3d-top-bar button.venue.active{opacity:1}.aura3d-controls-hint{position:fixed;bottom:12px;left:50%;transform:translate(-50%);z-index:15;font:500 12px/1.3 Graphik,sans-serif;letter-spacing:0;color:#fff6e0bf;background:#1a140a8c;border-radius:8px;padding:6px 12px;pointer-events:none;white-space:nowrap}.pbl-hud{position:fixed;inset:0;pointer-events:none;z-index:10}.pbl-tl{position:absolute;top:46px;left:14px;display:flex;flex-direction:column;gap:6px}.pbl-mode-tag{display:inline-block;align-self:flex-start;font:500 12px/1 Graphik,sans-serif;letter-spacing:0;color:var(--pbl-ink);background:var(--pbl-sun);border-radius:6px;padding:5px 12px;box-shadow:0 2px 8px #00000059}.pbl-row{display:flex;gap:6px}.pbl-chip{display:inline-flex;align-items:center;gap:7px;background:var(--pbl-panel);border:1px solid rgba(255,246,224,.18);border-radius:12px;padding:6px 12px;font:500 12px/1 Graphik,sans-serif}.pbl-chip .k{font-size:12px;letter-spacing:0;color:#fff6e099}.pbl-chip .v{color:var(--pbl-sun);letter-spacing:0}.pbl-hearts{font-size:15px;letter-spacing:0}.pbl-hearts .on{color:#ff6a8a;text-shadow:0 0 8px rgba(255,106,138,.7)}.pbl-hearts .off{color:#fff6e040}.pbl-seed-chip .v{color:#ffcf3d}.pbl-objective{max-width:300px;font:500 12px/1.45 Graphik,sans-serif;color:#fff6e0d9;background:#1a140a80;border-left:3px solid var(--pbl-sun);border-radius:0 8px 8px 0;padding:7px 12px}.pbl-boss-wrap{position:absolute;top:46px;left:50%;transform:translate(-50%);width:min(420px,60vw);text-align:center}.pbl-boss-name{font:500 12px/1 Graphik,sans-serif;letter-spacing:0;color:#ff8a5a;text-shadow:0 2px 12px rgba(0,0,0,.6);margin-bottom:6px}.pbl-boss-bar{height:12px;border-radius:8px;border:1px solid rgba(255,138,90,.6);background:#1a140ab3;overflow:hidden}.pbl-boss-fill{height:100%;width:100%;background:linear-gradient(90deg,#ff5a26,#ffb03a);border-radius:8px;transition:width .35s ease}.pbl-banner{position:absolute;top:26%;left:50%;transform:translate(-50%,-50%) scale(.92);text-align:center;opacity:0;transition:opacity .3s,transform .3s;pointer-events:none}.pbl-banner.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.pbl-banner .big{font:500 clamp(28px,5vw,52px)/1.1 Graphik,sans-serif;letter-spacing:0;color:var(--pbl-sun);text-shadow:0 3px 0 #7a5a1e,0 8px 30px rgba(0,0,0,.55)}.pbl-banner .small{margin-top:8px;font:500 clamp(12px,1.6vw,16px)/1.4 Graphik,sans-serif;color:var(--pbl-cream);text-shadow:0 2px 12px rgba(0,0,0,.6)}.pbl-toast{position:absolute;bottom:15%;left:50%;transform:translate(-50%) translateY(8px);font:500 13px/1.3 Graphik,sans-serif;color:var(--pbl-cream);background:var(--pbl-panel);border:1px solid var(--pbl-edge);border-radius:12px;padding:12px 16px;opacity:0;transition:opacity .25s,transform .25s}.pbl-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.pbl-overlay{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:#0e0b069e;backdrop-filter:blur(6px)}.pbl-overlay[hidden]{display:none}.pbl-panel{width:min(430px,92vw);max-height:84vh;overflow:auto;background:linear-gradient(170deg,#2e2414f7,#1c160cf7);border:1px solid var(--pbl-edge);border-radius:18px;padding:26px 28px;text-align:center;box-shadow:0 24px 80px #0000008c}.pbl-panel.pbl-wide{width:min(680px,94vw)}.pbl-panel h2{margin:0 0 6px;font:500 26px/1.15 Graphik,sans-serif;letter-spacing:0;color:var(--pbl-sun)}.pbl-sub{margin:0 0 18px;font-size:13px;color:#fff6e0bf}.pbl-help{margin:16px 0 0;font-size:12px;color:#fff6e080;letter-spacing:0}.pbl-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.pbl-btns button{appearance:none;border:1px solid var(--pbl-edge);background:#ffd95e1f;color:var(--pbl-cream);font:500 12.5px/1 Graphik,sans-serif;letter-spacing:0;padding:12px 18px;border-radius:12px;cursor:pointer;transition:background .15s,transform .1s}.pbl-btns button:hover:not(:disabled){background:#ffd95e47;transform:translateY(-1px)}.pbl-btns button:disabled{opacity:.4;cursor:default}.pbl-btns button:first-child{background:var(--pbl-sun);color:var(--pbl-ink)}.pbl-stats{display:flex;flex-direction:column;gap:5px;margin:0 0 18px}.pbl-stat{font:500 13px/1.4 Graphik,sans-serif;color:#fff6e0e6}.pbl-atlas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:0 0 18px;text-align:left}.pbl-atlas-card{appearance:none;border:1px solid rgba(255,246,224,.2);background:#fff6e00f;border-radius:13px;padding:13px 14px;color:var(--pbl-cream);font-family:inherit;cursor:pointer;text-align:left;transition:background .15s,border-color .15s,transform .1s}.pbl-atlas-card:hover{background:#ffd95e24;border-color:var(--pbl-edge);transform:translateY(-2px)}.pbl-atlas-card.done{border-color:#5fd38a8c}.pbl-atlas-card .n{font:500 20px/1 Graphik;color:var(--pbl-sun)}.pbl-atlas-card .t{font:500 12px/1.2 Graphik;letter-spacing:0;margin-top:4px}.pbl-atlas-card .s{font:500 12px/1.4 Graphik;color:#fff6e0a6;margin-top:4px}.pbl-atlas-card .p{font:500 12px/1 Graphik;color:#5fd38a;margin-top:8px;letter-spacing:0}.pbl-atlas-card .sd{font:500 12px/1 Graphik;color:#ffcf3d;margin-top:4px}.pbl-atlas-total{grid-column:1 / -1;text-align:center;font:500 12px/1 Graphik;letter-spacing:0;color:var(--pbl-sun);padding-top:4px}.pbl-studio-row{display:flex;align-items:center;gap:12px;margin-bottom:14px;text-align:left}.pbl-studio-row .k{font:500 12px/1 Graphik;letter-spacing:0;color:#fff6e099;width:44px}.pbl-swatches{display:flex;flex-wrap:wrap;gap:8px}.pbl-swatch{width:34px;height:34px;border-radius:12px;border:2px solid rgba(255,246,224,.25);cursor:pointer;transition:transform .1s,border-color .15s}.pbl-swatch:hover{transform:scale(1.1)}.pbl-swatch.active{border-color:var(--pbl-sun);box-shadow:0 0 0 2px #ffd95e66}@media(max-width:720px){.aura3d-top-bar{flex-wrap:wrap;gap:4px;padding:6px 8px}.aura3d-controls-hint{display:none}.pbl-tl{top:82px}}
