.bc-root{position:relative;width:100%;height:var(--bc-h,600px);max-height:100vh;background:#111;overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:none;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#fff;border-radius:10px;outline:none;-webkit-tap-highlight-color:transparent}
.bc-root *{box-sizing:border-box}
.bc-root:fullscreen,.bc-root.bc-fs{width:100vw;height:100vh;max-height:none;border-radius:0}
.bc-root.bc-fs{position:fixed;inset:0;z-index:999999;height:100dvh}
body.bc-noscroll{overflow:hidden}
.bc-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.bc-hud{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .2s}
.bc-root.bc-playing .bc-hud{opacity:1}
.bc-cross{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px}
.bc-cross:before,.bc-cross:after{content:"";position:absolute;background:rgba(255,255,255,.85);mix-blend-mode:difference}
.bc-cross:before{left:8px;top:0;width:2px;height:18px}.bc-cross:after{top:8px;left:0;height:2px;width:18px}
.bc-hurt{position:absolute;inset:0;background:radial-gradient(transparent 40%,rgba(200,0,0,.55));opacity:0}
.bc-hurt.bc-flash{animation:bcHurt .45s ease-out}
@keyframes bcHurt{from{opacity:1}to{opacity:0}}
.bc-water{position:absolute;inset:0;background:rgba(20,60,160,.35);opacity:0;transition:opacity .2s}.bc-water.bc-on{opacity:1}
.bc-quest{position:absolute;left:12px;top:12px;max-width:min(320px,55%);background:rgba(0,0,0,.45);padding:8px 12px;border-radius:8px;font-size:13px;line-height:1.35;border-left:3px solid #f5c542}
.bc-quest small{display:block;color:#f5c542;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.bc-info{position:absolute;right:92px;top:14px;font-size:12px;text-align:right;text-shadow:0 1px 2px #000;opacity:.9}
.bc-topbtns{position:absolute;right:10px;top:10px;display:flex;gap:6px;pointer-events:auto}
.bc-btn-sm{background:rgba(0,0,0,.5);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:6px 10px;font:600 13px system-ui,sans-serif;cursor:pointer;min-width:34px}
.bc-btn-sm:hover{background:rgba(255,255,255,.15)}.bc-btn-sm:disabled{opacity:.35;cursor:default}
.bc-toasts{position:absolute;top:64px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;width:90%}
.bc-toast{background:rgba(0,0,0,.65);padding:7px 14px;border-radius:20px;font-size:13px;animation:bcToast 3.5s forwards;text-align:center}
.bc-toast.gold{color:#ffd966;border:1px solid #b8912a}.bc-toast.green{color:#9eff9e;border:1px solid #3c8f3c}
@keyframes bcToast{0%{opacity:0;transform:translateY(-8px)}8%,80%{opacity:1;transform:none}100%{opacity:0}}
.bc-bottom{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px}
.bc-itemname{font-size:13px;text-shadow:0 1px 2px #000;min-height:16px;opacity:0}
.bc-itemname.bc-fade{animation:bcName 2s forwards}@keyframes bcName{0%,70%{opacity:1}100%{opacity:0}}
.bc-stats{display:flex;justify-content:space-between;width:100%;gap:16px;font-size:15px;line-height:1;text-shadow:0 1px 1px #000}
.bc-hearts i,.bc-food i{font-style:normal;margin-right:1px}
.bc-hearts .f{color:#ff3b3b}.bc-hearts .h{color:#ff9b9b}.bc-hearts .e{color:rgba(0,0,0,.5)}
.bc-food{direction:rtl}.bc-food .f{color:#c98a4b}.bc-food .h{color:#e6c29b}.bc-food .e{color:rgba(0,0,0,.5)}
.bc-xp{position:relative;width:100%;height:6px;background:rgba(0,0,0,.6);border-radius:3px}
.bc-xpfill{height:100%;background:linear-gradient(90deg,#7dff5a,#c4ff3a);border-radius:3px;width:0}
.bc-lvl{position:absolute;left:50%;top:-14px;transform:translateX(-50%);font:700 13px system-ui;color:#9dff6a;text-shadow:0 0 3px #000,0 0 3px #000}
.bc-hotbar{display:flex;gap:3px;background:rgba(0,0,0,.45);padding:3px;border-radius:6px;pointer-events:auto}
.bc-slot{position:relative;width:44px;height:44px;background:rgba(80,80,80,.55);border:2px solid rgba(255,255,255,.15);border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.bc-slot img{width:70%;height:70%;image-rendering:pixelated;pointer-events:none}
.bc-slot span{position:absolute;right:3px;bottom:1px;font:700 12px system-ui;text-shadow:1px 1px 0 #000;pointer-events:none}
.bc-slot.bc-sel{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.4);background:rgba(140,140,140,.6)}
/* overlays */
.bc-overlay{position:absolute;inset:0;display:none;align-items:center;justify-content:center;background:rgba(10,14,24,.62);backdrop-filter:blur(3px);padding:12px;z-index:5}
.bc-overlay.bc-show{display:flex}
.bc-overlay[data-o=menu]{background:linear-gradient(rgba(20,30,50,.55),rgba(10,15,25,.85))}
.bc-panel{background:rgba(24,28,38,.94);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:20px 22px;width:min(420px,100%);max-height:100%;overflow:auto;display:flex;flex-direction:column;gap:10px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.bc-panel.bc-wide{width:min(900px,100%)}
.bc-panel h1,.bc-panel h2,.bc-panel h3{margin:0;color:#fff;font-family:inherit;line-height:1.2}
.bc-panel h2{font-size:22px}.bc-panel h3{font-size:14px;margin-top:6px;color:#cfd6e4}.bc-panel h3 small{font-weight:400;color:#8a93a6;margin-left:6px}
.bc-panel p{margin:0;color:#c5cad6;font-size:14px;line-height:1.5}
.bc-title{font:900 clamp(30px,6vw,46px)/1 system-ui,sans-serif;text-align:center;letter-spacing:.02em;color:#fff;text-shadow:0 3px 0 #3d7a2a,0 6px 0 #2b561d,0 10px 20px rgba(0,0,0,.6)}
.bc-sub{text-align:center;color:#a8d98f!important;letter-spacing:.2em;text-transform:uppercase;font-size:12px!important;margin-bottom:6px!important}
.bc-btn{background:#3a4152;color:#fff;border:1px solid rgba(255,255,255,.15);border-bottom:3px solid rgba(0,0,0,.35);border-radius:8px;padding:11px 14px;font:600 15px system-ui,sans-serif;cursor:pointer;width:100%}
.bc-btn:hover{background:#4a5266}.bc-btn.bc-primary{background:#4c9a2a;border-color:#6cc045}.bc-btn.bc-primary:hover{background:#58ad32}
.bc-row{display:flex;gap:8px}
.bc-newworld{display:flex;flex-direction:column;gap:8px;background:rgba(255,255,255,.04);padding:10px;border-radius:8px}
.bc-panel label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#cfd6e4}
.bc-panel label.bc-check{flex-direction:row;align-items:center;gap:8px}
.bc-panel select,.bc-panel input:not([type]),.bc-panel input[type=text]{background:#12151d;color:#fff;border:1px solid #3a4152;border-radius:6px;padding:8px;font-size:14px}
.bc-panel input[type=range]{width:100%}
.bc-small{font-size:12px!important;color:#8a93a6!important;text-align:center}
.bc-red{color:#ff6b6b!important;text-align:center}
.bc-help h3{margin-top:10px}.bc-help p{font-size:13px}
.bc-bar{height:10px;background:#12151d;border-radius:5px;overflow:hidden}.bc-bar div{height:100%;width:0;background:#4c9a2a;transition:width .2s}
.bc-invhead{display:flex;justify-content:space-between;align-items:center}
.bc-invwrap{display:flex;gap:18px;flex-wrap:wrap}.bc-invleft{flex:1 1 380px}
.bc-grid{display:grid;grid-template-columns:repeat(9,minmax(0,44px));gap:3px}
.bc-grid .bc-slot{width:auto;aspect-ratio:1;height:auto}.bc-slot.bc-hb{background:rgba(90,110,90,.55)}
.bc-craft{flex:1 1 300px;display:flex;flex-direction:column;gap:5px;max-height:420px;overflow:auto}
.bc-recipe{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.04);padding:6px 8px;border-radius:6px;opacity:.6}
.bc-recipe.bc-can{opacity:1;background:rgba(76,154,42,.18)}
.bc-recipe img{width:30px;height:30px;image-rendering:pixelated}
.bc-recipe>div{flex:1;display:flex;flex-direction:column;font-size:13px}.bc-recipe small{color:#8a93a6;font-size:11px}
.bc-ok{color:#9eff9e!important}
/* touch */
.bc-touch{position:absolute;inset:0;pointer-events:none;display:none}
.bc-root.bc-is-touch.bc-playing .bc-touch{display:block}
.bc-root.bc-is-touch .bc-bottom{bottom:6px}
.bc-joy{position:absolute;left:24px;bottom:90px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.3);pointer-events:auto}
.bc-knob{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:rgba(255,255,255,.4)}
.bc-tbtns{position:absolute;right:18px;bottom:90px;width:190px;height:190px}
.bc-tb{position:absolute;pointer-events:auto;width:62px;height:62px;border-radius:50%;background:rgba(0,0,0,.4);border:2px solid rgba(255,255,255,.35);color:#fff;font:700 12px system-ui}
.bc-tb.bc-down{background:rgba(255,255,255,.35)}
.bc-tb-mine{right:0;bottom:64px;width:72px;height:72px;background:rgba(160,40,40,.45)}
.bc-tb-place{right:78px;bottom:96px;background:rgba(40,110,170,.45)}
.bc-tb-jump{right:74px;bottom:14px}
.bc-tb-down{right:140px;bottom:30px;width:52px;height:52px}
.bc-tb-fly{right:6px;bottom:146px;width:48px;height:48px}
.bc-tb-inv{right:148px;bottom:110px;width:50px;height:50px}
@media (max-width:600px){.bc-slot{width:36px;height:36px}.bc-quest{font-size:11px;max-width:48%}.bc-info{display:none}.bc-joy{bottom:84px;left:14px;width:110px;height:110px}.bc-tbtns{bottom:84px;right:6px}}
@media (max-height:480px){.bc-joy,.bc-tbtns{bottom:20px}.bc-slot{width:34px;height:34px}.bc-bottom{left:50%}}

.bc-root .bc-watermark{position:absolute;top:4px;left:50%;transform:translateX(-50%);width:40px;display:flex;flex-direction:column;align-items:center;gap:3px;opacity:.85;z-index:40;text-decoration:none;cursor:pointer;transition:opacity .2s,transform .2s;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5))}
.bc-root .bc-watermark img{width:100%;height:auto;display:block;pointer-events:none;user-select:none}
.bc-root .bc-watermark .bc-wm-link{font:600 10px/1.2 system-ui,sans-serif;color:#fff;background:rgba(10,30,80,.85);padding:3px 7px;border-radius:4px;white-space:nowrap;opacity:0;transform:translateY(-3px);transition:opacity .2s,transform .2s;pointer-events:none}
.bc-root .bc-watermark:hover,.bc-root .bc-watermark:focus-visible{opacity:1;transform:translateX(-50%) scale(1.05)}
.bc-root .bc-watermark .bc-wm-link{position:absolute;top:100%;left:50%;margin-top:3px;translate:-50% 0}
.bc-root .bc-watermark:hover .bc-wm-link,.bc-root .bc-watermark:focus-visible .bc-wm-link{opacity:1;transform:none}
@media (max-width:700px){.bc-root .bc-watermark{width:32px}}
.bc-root .bc-overlay{z-index:50}
