.bh{--bh-ink: #ffffff;--bh-glass: rgba(9, 28, 66, .62);--bh-glass2: rgba(255, 255, 255, .16);--bh-line: rgba(255, 255, 255, .34);--bh-accent: #ffd45e;--bh-accent2: #5ee0ff;--bh-pri: #ff7a59;--bh-pri2: #ff4f78;position:relative;height:100%;display:flex;flex-direction:column;overflow:hidden;color:var(--bh-ink);background:#0b2a4a;font-family:var(--font-body, Inter, system-ui, sans-serif);user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;padding-bottom:env(safe-area-inset-bottom)}.bh[data-world="2"]{--bh-accent: #ffc36b;--bh-pri: #ff8a3d;--bh-pri2: #ff5b3d}.bh[data-world="3"]{--bh-accent: #8ff5ff;--bh-pri: #1fc9b0;--bh-pri2: #0fa0d8}.bh[data-world="4"]{--bh-accent: #c6a6ff;--bh-pri: #8d5cf0;--bh-pri2: #5e8bff}.bh[data-world="5"]{--bh-accent: #b9c4ff;--bh-pri: #7d63e8;--bh-pri2: #d04ea0}.bh *{box-sizing:border-box}.bh-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.bh-top,.bh-view,.bh-play,.bh-banner{position:relative;z-index:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bh-top{flex:none;display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;padding-top:max(.5rem,env(safe-area-inset-top))}.bh-brand{font-family:var(--font-display, Fraunces, serif);font-weight:800;font-size:1.15rem;letter-spacing:.01em;text-shadow:0 2px 8px rgba(0,20,60,.6)}.bh-save{margin-left:auto;font-size:.8rem;color:#ffd0c8;text-shadow:0 1px 4px rgba(0,0,0,.6)}.bh-top .bh-icon:first-child{margin-right:auto}.bh[data-screen=menu] .bh-top{justify-content:space-between}.bh-banner{margin:.25rem .75rem;padding:.55rem .8rem;border-radius:12px;background:#ffd45ef2;color:#3b2a00;font-size:.9rem;font-weight:650}.bh-banner[data-kind=error]{background:#ffb8c0;color:#4b0612}.bh-icon{flex:none;display:inline-grid;place-items:center;width:2.9rem;height:2.9rem;border-radius:50%;border:2px solid var(--bh-line);background:var(--bh-glass);color:#fff;cursor:pointer;touch-action:manipulation;transition:transform .12s,background-color .15s;backdrop-filter:blur(2px)}.bh-icon:hover{background:#ffffff40}.bh-icon:active{transform:scale(.92)}.bh-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;padding:.65rem 1.25rem;border-radius:999px;border:0;font:inherit;font-weight:750;font-size:1rem;color:#fff;cursor:pointer;background:linear-gradient(180deg,var(--bh-pri),var(--bh-pri2));box-shadow:0 4px #00000047,0 8px 20px #00000040;touch-action:manipulation;transition:transform .1s,box-shadow .1s,filter .15s}.bh-btn:hover{filter:brightness(1.08)}.bh-btn:active{transform:translateY(2px);box-shadow:0 2px #00000047}.bh-btn.ghost{background:#ffffff24;border:2px solid var(--bh-line);box-shadow:none}.bh-btn.danger{background:linear-gradient(180deg,#ef5d6d,#c43149)}.bh-btn.big{min-height:3.4rem;font-size:1.1rem}.bh :is(button,input,[tabindex],a):focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #00000073}.bh-view{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.5rem 1rem 1.25rem;width:100%;max-width:34rem;margin:0 auto}.bh-menu{display:flex;flex-direction:column;justify-content:center;gap:1.1rem}.bh-hero{text-align:center;padding:.25rem 0}.bh-hero h1{display:grid;gap:.1rem;text-shadow:0 3px 0 rgba(0,30,80,.55),0 8px 28px rgba(0,20,60,.6)}.bh-h1a{font-family:var(--font-display, Fraunces, serif);font-weight:900;font-size:clamp(2.4rem,9vw,3.6rem);letter-spacing:-.01em;line-height:1}.bh-h1b{font-weight:800;letter-spacing:.22em;text-transform:uppercase;font-size:clamp(.8rem,3vw,1rem);color:var(--bh-accent)}.bh-stat{display:inline-flex;align-items:center;gap:.35rem;margin-top:.6rem;padding:.3rem .8rem;border-radius:999px;background:var(--bh-glass);font-weight:750}.bh-stat svg{fill:var(--bh-accent);stroke:#8a5a00}.bh-cards{display:grid;gap:.7rem}.bh-card{display:flex;align-items:center;gap:.9rem;width:100%;min-height:4.2rem;padding:.8rem 1.1rem;text-align:left;border-radius:20px;border:2px solid var(--bh-line);background:var(--bh-glass);color:#fff;font:inherit;cursor:pointer;touch-action:manipulation;transition:transform .12s,border-color .15s,background-color .15s;backdrop-filter:blur(3px)}.bh-card:hover{border-color:#fff;transform:translateY(-2px)}.bh-card:active{transform:scale(.985)}.bh-card.primary{background:linear-gradient(135deg,var(--bh-pri),var(--bh-pri2));border-color:#ffffffb3;box-shadow:0 6px 22px #0000004d}.bh-card>svg{flex:none}.bh-card span{display:grid;gap:.1rem}.bh-card b{font-size:1.15rem}.bh-card small{font-size:.88rem;opacity:.92;font-weight:550}.bh-card.small{min-height:3.4rem;padding:.6rem .9rem}.bh-card.small b{font-size:1rem}.bh-row2{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.bh-offline{justify-self:center;display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;font-weight:650;padding:.25rem .7rem;border-radius:999px;background:var(--bh-glass);text-align:center;margin:0 auto}.bh-offline[data-state=ready] svg{color:#6bffb0}.bh-msg{padding:2rem 1rem;text-align:center;background:var(--bh-glass);border-radius:16px}.bh-map{display:grid;gap:.9rem;align-content:start}.bh-map-head{display:flex;align-items:center;gap:.75rem}.bh-map-head h2{font-family:var(--font-display, Fraunces, serif);font-size:1.5rem;text-shadow:0 2px 8px rgba(0,20,60,.6)}.bh-world{padding:.85rem;border-radius:22px;background:var(--bh-glass);border:2px solid var(--bh-line);backdrop-filter:blur(3px)}.bh-world header{display:flex;align-items:center;gap:.7rem;margin-bottom:.7rem}.bh-world h2{font-size:1.05rem;font-family:var(--font-display, Fraunces, serif)}.bh-world p{font-size:.82rem;opacity:.85}.bh-w-badge{flex:none;display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:linear-gradient(180deg,var(--bh-accent),#e08a00);color:#3a2400;font-weight:900}.bh-w-stars{margin-left:auto;display:inline-flex;align-items:center;gap:.25rem;font-weight:800;font-size:.9rem;white-space:nowrap}.bh-w-stars svg{fill:var(--bh-accent);stroke:#8a5a00}.bh-nodes{display:grid;grid-template-columns:repeat(5,1fr);gap:.55rem}.bh-node{position:relative;display:grid;place-items:center;align-content:center;gap:.15rem;aspect-ratio:1;min-height:3.4rem;border-radius:50%;border:2px solid rgba(255,255,255,.55);background:radial-gradient(circle at 32% 28%,#ffffff80,#ffffff1f 55%,#ffffff0f);color:#fff;font:inherit;font-weight:850;font-size:1.1rem;cursor:pointer;touch-action:manipulation;transition:transform .12s}.bh-node:hover:not(:disabled){transform:scale(1.06)}.bh-node.done{background:radial-gradient(circle at 32% 28%,#fff7c4,#ffc83d 60%,#e59a00);color:#4a2e00;border-color:#fff3b8}.bh-node.next{border-color:#fff;box-shadow:0 0 0 4px var(--bh-accent),0 0 18px var(--bh-accent);animation:bh-pulse 1.6s ease-in-out infinite}.bh-node.locked{opacity:.55;cursor:not-allowed}.bh-node b{line-height:1}.bh-node-stars{display:flex;gap:1px;min-height:11px}.bh-ns svg{fill:transparent;stroke:#fff9}.bh-ns.on svg{fill:#ffd45e;stroke:#9a6400}.bh-node.done .bh-ns svg{stroke:#9a6400}@keyframes bh-pulse{50%{box-shadow:0 0 0 7px #ffffff59,0 0 24px var(--bh-accent)}}.bh-play{flex:1;min-height:0;display:flex;flex-direction:column}.bh-hud{flex:none;display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;padding-top:max(.4rem,env(safe-area-inset-top));min-height:3.6rem}.bh-lvl{display:grid;line-height:1.15;min-width:0}.bh-lvl b{font-size:1rem;text-shadow:0 1px 6px rgba(0,20,60,.7)}.bh-lvl small{font-size:.74rem;opacity:.95;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 4px rgba(0,20,60,.7)}.bh-score{margin-left:auto;display:grid;justify-items:end;line-height:1.05}.bh-score-n{font-family:var(--font-display, Fraunces, serif);font-weight:900;font-size:1.55rem;text-shadow:0 2px 8px rgba(0,20,60,.7);font-variant-numeric:tabular-nums}.bh-stars{display:inline-flex;gap:1px}.bh-star svg{fill:transparent;stroke:#ffffffb3}.bh-star.on svg{fill:#ffd45e;stroke:#8a5a00}.bh-chip{display:grid;justify-items:center;min-width:3.2rem;padding:.15rem .55rem;border-radius:14px;background:var(--bh-glass);border:2px solid var(--bh-line);line-height:1.05}.bh-chip small{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;opacity:.9}.bh-chip b{font-size:1.3rem;font-variant-numeric:tabular-nums}.bh-chip[data-low=true]{background:#d9344f;border-color:#fff;animation:bh-pulse 1s infinite}.bh-goal{flex:none;display:flex;align-items:center;gap:.6rem;margin:0 .6rem .3rem;padding:.3rem .8rem;border-radius:999px;background:var(--bh-glass);font-size:.82rem;font-weight:700}.bh-goal>span{flex:none;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bh-bar{flex:1;height:8px;border-radius:99px;background:#ffffff40;overflow:hidden;min-width:2rem}.bh-bar i{display:block;height:100%;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--bh-accent),#fff);transition:transform .3s}.bh-stage{position:relative;flex:1;min-height:0;outline:none;touch-action:none;cursor:crosshair}.bh-stage:focus-visible{outline:3px solid #fff;outline-offset:-3px}.bh-next{position:absolute;border-radius:50%;border:0;background:transparent;padding:0;cursor:pointer;touch-action:manipulation;z-index:2}.bh-next[disabled]{cursor:default}.bh-next[data-ready=true]:hover{background:#ffffff1f}.bh-next-label{position:absolute;width:80px;text-align:center;font-size:.72rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 1px 4px rgba(0,20,60,.9);pointer-events:none;z-index:1}.bh-intro{position:absolute;left:50%;top:14%;transform:translate(-50%);z-index:3;display:grid;justify-items:center;gap:.15rem;padding:.55rem 1.1rem;border-radius:18px;background:var(--bh-glass);border:2px solid var(--bh-line);text-align:center;pointer-events:none;animation:bh-in .35s ease-out;max-width:90%}.bh-intro b{font-family:var(--font-display, Fraunces, serif);font-size:1.1rem}.bh-intro span{font-size:.8rem;opacity:.9}.bh-intro.out{opacity:0;transition:opacity .5s}@keyframes bh-in{0%{opacity:0;transform:translate(-50%,-10px)}}.bh-overlay,.bh-sheet-wrap{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:1rem;background:#040e2894;overflow-y:auto}.bh-sheet-wrap{position:absolute;z-index:20}.bh-overlay[hidden],.bh-sheet-wrap[hidden]{display:none}.bh-card-modal{width:min(100%,24rem);max-height:100%;overflow-y:auto;padding:1.4rem 1.3rem;border-radius:26px;background:linear-gradient(180deg,#fff,#eaf6ff);color:var(--ink, #1d2340);text-align:center;box-shadow:0 18px 50px #00000073;animation:bh-pop .3s cubic-bezier(.2,1.2,.4,1);display:grid;gap:.7rem}.bh-card-modal h2{font-family:var(--font-display, Fraunces, serif);font-size:1.6rem;color:#17306b}.bh-card-modal p{color:#3b4672;font-size:.98rem}.bh-card-modal .bh-btn.ghost{background:#eef2ff;color:#2b3a82;border-color:#cdd6ff}.bh-card-modal .bh-btn.ghost:hover{background:#e2e8ff}.bh-card-modal.lose h2{color:#a3243c}.bh-hint-ico{justify-self:center;display:grid;place-items:center;width:3.4rem;height:3.4rem;border-radius:50%;background:linear-gradient(180deg,var(--bh-pri),var(--bh-pri2));color:#fff}.bh-col{display:grid;gap:.55rem;margin-top:.3rem}.bh-keys{font-size:.78rem!important;color:#6a73a0!important}.bh-tip{font-size:.88rem!important;background:#fff4d6;border-radius:12px;padding:.5rem .7rem;color:#6a4a00!important}.bh-bigstars{display:flex;justify-content:center;gap:.3rem}.bh-bs svg{fill:#dfe5f7;stroke:#b9c3e6;transform:scale(.9)}.bh-bs.on svg{animation:bh-star .55s var(--d, .3s) both cubic-bezier(.2,1.4,.4,1)}@keyframes bh-star{0%{fill:#dfe5f7;stroke:#b9c3e6;transform:scale(.6) rotate(-30deg)}60%{transform:scale(1.35) rotate(8deg)}to{fill:#ffc83d;stroke:#b87b00;transform:scale(1) rotate(0)}}.bh-res-score{font-size:1.1rem!important}.bh-res-score b{font-family:var(--font-display, Fraunces, serif);font-size:2.3rem;color:#17306b;font-variant-numeric:tabular-nums}.bh-record{display:inline-flex;justify-content:center;align-items:center;gap:.35rem;font-weight:850;color:#b35a00!important}.bh-res-best{font-size:.85rem!important}.bh-worlddone{background:#dff8e8;color:#0f5a33!important;border-radius:12px;padding:.5rem .7rem;font-weight:650;display:flex;align-items:center;justify-content:center;gap:.4rem;flex-wrap:wrap}@keyframes bh-pop{0%{opacity:0;transform:scale(.92) translateY(10px)}}.bh-sheet{width:min(100%,28rem);max-height:100%;display:flex;flex-direction:column;border-radius:26px;background:linear-gradient(180deg,#fff,#eaf6ff);color:#1d2340;box-shadow:0 18px 50px #00000073;overflow:hidden}.bh-sheet>header{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem .4rem 1.3rem}.bh-sheet h2{font-family:var(--font-display, Fraunces, serif);font-size:1.4rem;color:#17306b}.bh-sheet .bh-icon{background:#eef2ff;border-color:#cdd6ff;color:#2b3a82}.bh-sheet-body{padding:.4rem 1.3rem 1.3rem;overflow-y:auto;display:grid;gap:.85rem}.bh-switch{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.8rem;cursor:pointer}.bh-switch span{display:grid;gap:.1rem}.bh-switch small{color:#5b6694;font-size:.8rem}.bh-switch input{position:absolute;opacity:0;width:1px;height:1px}.bh-switch i{flex:none;position:relative;width:3.2rem;height:1.9rem;border-radius:99px;background:#c4cbe6;transition:background-color .15s}.bh-switch i:after{content:"";position:absolute;left:3px;top:3px;width:calc(1.9rem - 6px);height:calc(1.9rem - 6px);border-radius:50%;background:#fff;box-shadow:0 1px 4px #0000004d;transition:transform .15s}.bh-switch input:checked+i{background:#2f9e6b}.bh-switch input:checked+i:after{transform:translate(1.3rem)}.bh-switch input:focus-visible+i{outline:3px solid #17306b;outline-offset:2px}.bh-range{display:grid;gap:.3rem}.bh-range input{width:100%;accent-color:#2f6fe0;height:2rem}.bh-field{display:grid;gap:.4rem}.bh-segs{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem}.bh-seg{min-height:2.8rem;border-radius:12px;border:2px solid #cdd6ff;background:#fff;color:#2b3a82;font:inherit;font-weight:700;font-size:.85rem;cursor:pointer;padding:.3rem}.bh-seg.on{background:#2b3a82;color:#fff;border-color:#2b3a82}.bh-skins{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.bh-skin{display:grid;justify-items:center;gap:.2rem;padding:.5rem .2rem;min-height:3.4rem;border-radius:14px;border:2px solid #cdd6ff;background:#fff;color:#2b3a82;font:inherit;cursor:pointer}.bh-skin i{width:1.7rem;height:1.7rem;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,var(--c) 45%,var(--c2))}.bh-skin small{font-size:.72rem;font-weight:700}.bh-skin.on{border-color:#2f6fe0;box-shadow:0 0 0 3px #2f6fe04d}.bh-skin[disabled]{opacity:.4;cursor:not-allowed}.bh-stat-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #dde3fa}.bh-stat-row b{font-variant-numeric:tabular-nums;color:#17306b}.bh-buckets{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:.4rem .5rem;align-items:center;padding-top:.4rem}.bh-dot{width:1.1rem;height:1.1rem;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,var(--c) 55%)}.bh-buckets em{font-style:normal;font-weight:750;font-variant-numeric:tabular-nums}.bh-row{display:flex;gap:.6rem;justify-content:flex-end;margin-top:.8rem}.bh-dialog{border:0;border-radius:20px;padding:1.2rem;max-width:min(92vw,24rem);color:#1d2340;background:#fff;box-shadow:0 20px 60px #00000080}.bh-dialog::backdrop{background:#040e2899}.bh-dialog .bh-btn.ghost{color:#2b3a82;background:#eef2ff;border-color:#cdd6ff}@media(max-width:380px){.bh-score-n{font-size:1.3rem}.bh-lvl small{display:none}.bh-hud{gap:.35rem;padding-inline:.4rem}.bh-icon{width:2.6rem;height:2.6rem}.bh-chip{min-width:2.8rem;padding-inline:.35rem}}@media(max-height:480px)and (orientation:landscape){.bh-hud{min-height:2.9rem;padding-block:.2rem}.bh-goal{display:none}.bh-score-n{font-size:1.2rem}.bh-icon{width:2.5rem;height:2.5rem}.bh-card-modal{padding:.9rem 1rem;gap:.45rem}.bh-card-modal h2{font-size:1.25rem}.bh-bigstars svg{width:36px;height:36px}.bh-btn.big{min-height:2.8rem}}.bh[data-reduced=true] *,.bh[data-reduced=true] *:before,.bh[data-reduced=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}@media(prefers-reduced-motion:reduce){.bh[data-reduced=auto] *,.bh *.bh-node.next{animation:none!important}}
