@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}:root{--a3d-accent: var(--pbl-sun);--a3d-accent-ink: var(--pbl-ink);--a3d-accent-2: var(--pbl-leaf);--a3d-accent-2-ink: var(--pbl-ink);--a3d-gold: var(--pbl-sun);--a3d-edge: var(--pbl-edge);--a3d-bg: linear-gradient(180deg, rgba(26, 20, 10, .94), rgba(26, 20, 10, .8));--a3d-ink: var(--pbl-cream);--a3d-dim: rgba(255, 246, 224, .72)}.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}.aura3d-controls-hint kbd{display:inline-block;min-width:1.4em;padding:1px 5px;margin:0 1px;border-radius:4px;font:600 11px/1.3 Graphik,sans-serif;text-align:center;color:var(--pbl-ink, #2a1c0e);background:#fff6e0e0}.pbl-hud{position:fixed;inset:0;pointer-events:none;z-index:10}.pbl-tl{position:absolute;top:calc(var(--a3d-bar-space) + 4px);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:calc(var(--a3d-bar-space) + 4px);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,sans-serif;color:var(--pbl-sun)}.pbl-atlas-card .t{font:500 12px/1.2 Graphik,sans-serif;letter-spacing:0;margin-top:4px}.pbl-atlas-card .s{font:500 12px/1.4 Graphik,sans-serif;color:#fff6e0a6;margin-top:4px}.pbl-atlas-card .p{font:500 12px/1 Graphik,sans-serif;color:#5fd38a;margin-top:8px;letter-spacing:0}.pbl-atlas-card .sd{font:500 12px/1 Graphik,sans-serif;color:#ffcf3d;margin-top:4px}.pbl-atlas-total{grid-column:1 / -1;text-align:center;font:500 12px/1 Graphik,sans-serif;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,sans-serif;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}.pbl-pause-btn{position:absolute;top:calc(var(--a3d-bar-space) + 4px);right:14px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;appearance:none;pointer-events:auto;border:1px solid var(--pbl-edge);border-radius:12px;background:var(--pbl-panel);color:var(--pbl-sun);font:500 16px/1 Graphik,sans-serif;cursor:pointer;touch-action:manipulation}.pbl-pause-btn:hover{background:#ffd95e33}@media(max-width:720px){.aura3d-controls-hint{display:none}}:root[data-pbl-look=diorama]{--pbl-font: "A3G GT Walsheim", "Graphik", sans-serif;--pbl-display: "A3G Canela", "A3G GT Walsheim", "Graphik", serif;--pbl-parchment: rgba(239, 227, 200, .94);--pbl-parchment-edge: rgba(122, 90, 62, .55);--pbl-ink: #2a1f14;--pbl-moss: #4f7a3a;--pbl-toadstool: #c8432f;--pbl-panel: rgba(42, 31, 20, .9)}:root[data-pbl-look=diorama] .pbl-chip,:root[data-pbl-look=diorama] .pbl-mode-tag,:root[data-pbl-look=diorama] .pbl-objective,:root[data-pbl-look=diorama] .pbl-toast{background:var(--pbl-parchment);color:var(--pbl-ink);border:1px solid var(--pbl-parchment-edge);font-family:var(--pbl-font);box-shadow:0 2px #3e2c1e59,0 6px 14px #00000038}:root[data-pbl-look=diorama] .pbl-objective{border-left:3px solid var(--pbl-moss)}:root[data-pbl-look=diorama] .pbl-mode-tag{background:var(--pbl-moss);color:#efe3c8;border-color:#2a1f1466}:root[data-pbl-look=diorama] .pbl-chip .k{color:#2a1f149e}:root[data-pbl-look=diorama] .pbl-chip .v{color:var(--pbl-toadstool)}:root[data-pbl-look=diorama] .pbl-seed-chip .v{color:#8a5a00}:root[data-pbl-look=diorama] .pbl-hearts .on{color:var(--pbl-toadstool);text-shadow:none}:root[data-pbl-look=diorama] .pbl-hearts .off{color:#2a1f1440}:root[data-pbl-look=diorama] .pbl-banner .big{font-family:var(--pbl-display);font-weight:400;color:#efe3c8;text-shadow:0 2px 0 rgba(62,44,30,.85),0 8px 26px rgba(0,0,0,.5)}:root[data-pbl-look=diorama] .pbl-banner .small,:root[data-pbl-look=diorama] .pbl-stat,:root[data-pbl-look=diorama] .pbl-btns button,:root[data-pbl-look=diorama] .pbl-atlas-card{font-family:var(--pbl-font)}:root[data-pbl-look=diorama] .pbl-panel h2,:root[data-pbl-look=diorama] .pbl-atlas-card .n{font-family:var(--pbl-display);font-weight:400}:root[data-pbl-look=diorama] .pbl-pause-btn{background:var(--pbl-parchment);color:var(--pbl-ink);border-color:var(--pbl-parchment-edge);font-family:var(--pbl-font)}@media(prefers-reduced-motion:reduce){.pbl-banner,.pbl-banner.show{transform:translate(-50%,-50%);transition:opacity .2s}.pbl-toast,.pbl-toast.show{transform:translate(-50%);transition:opacity .2s}.pbl-boss-fill,.pbl-btns button,.pbl-atlas-card,.pbl-swatch{transition:none}.pbl-btns button:hover:not(:disabled),.pbl-atlas-card:hover,.pbl-swatch:hover{transform:none}}
