.bs-app{--bs-ink:#22283a;--bs-paper:#fffaf1;--bs-navy:#2d3a63;--bs-orange:#ff7a1f;--bs-teal:#1fb5a8;--bs-gold:#f2b631;--bs-red:#e2485a;--bs-green:#2fae6f;--play-accent:#ff7a1f;overflow:hidden;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;height:100dvh;background:#f6c49a;color:#fff}.bs-scene{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;touch-action:none}.bs-app:not([data-phase=play]) :is(.bs-head,.bs-card-hud,.bs-actions,.bs-keys,.bs-quit,.bs-toast,.bs-banner,.bs-pops){display:none}.bs-head{position:absolute;z-index:4;left:0;right:0;top:calc(env(safe-area-inset-top, 0px) + 10px);pointer-events:none;display:flex;gap:8px;padding:0 100px 0 12px}.bs-head,.bs-pill{align-items:center}.bs-pill{display:inline-flex;gap:6px;height:40px;padding:0 12px;border-radius:20px;flex-shrink:0;background:rgba(34,40,58,.84);border:2px solid rgba(255,250,241,.92);box-shadow:0 3px 0 rgba(34,40,58,.3);color:#fff}.bs-pill b{font:800 19px/1 Playful,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bs-pill small{font:800 10px/1 Playful,sans-serif;letter-spacing:1px;opacity:.75}.bs-scorepill{background:var(--bs-orange);min-width:100px}.bs-clockpill{flex-direction:column;justify-content:center;align-items:stretch;gap:3px;min-width:72px}.bs-clockpill b{font-size:16px;text-align:center}.bs-fuse{display:block;height:5px;border-radius:3px;background:rgba(255,255,255,.22);overflow:hidden}.bs-fuse i{display:block;height:100%;background:#7fe0b8;transform-origin:left;transition:background .3s}.bs-fuse i[data-level=mid]{background:var(--bs-gold)}.bs-fuse i[data-level=low]{background:#ff6670}.bs-hurry .bs-clockpill{animation:bs-pulse .5s ease-in-out infinite alternate;border-color:#ff9aa2}@keyframes bs-pulse{to{transform:scale(1.07)}}.bs-card-hud{position:absolute;z-index:4;left:50%;top:calc(env(safe-area-inset-top, 0px) + 58px);transform:translateX(-50%);width:min(420px,calc(100vw - 20px));padding:7px 12px 8px;border-radius:16px;pointer-events:none;background:var(--bs-paper);color:var(--bs-ink);border:2px solid #fff;box-shadow:0 4px 0 rgba(34,40,58,.25);display:grid;grid-gap:5px;gap:5px}.bs-card-hud.fresh{animation:bs-slip .5s cubic-bezier(.3,1.5,.5,1)}@keyframes bs-slip{0%{transform:translate(-50%,-26px) scale(.9);opacity:0}}.bs-card-top{display:flex;align-items:center;justify-content:space-between}.bs-card-top small{font:800 11px/1 Playful,sans-serif;letter-spacing:1.2px;color:#b4561a}.bs-marks{display:flex;gap:4px}.bs-mark{display:block;width:18px;height:8px;border-radius:4px;background:#e8dfd0}.bs-mark.now{background:#fff;box-shadow:inset 0 0 0 2px var(--bs-orange);animation:bs-blink .9s ease-in-out infinite alternate}.bs-mark[data-ok="1"]{background:var(--bs-green)}.bs-mark[data-ok="0"]{background:var(--bs-red)}@keyframes bs-blink{to{box-shadow:inset 0 0 0 2px #ffc79c}}.bs-card-mid{display:flex;align-items:center;gap:9px}.bs-code{flex-shrink:0;padding:5px 8px;border-radius:9px;color:#fff;font:800 17px/1 Playful,sans-serif;letter-spacing:1px;box-shadow:inset 0 -3px 0 rgba(0,0,0,.18);text-shadow:0 1px 0 rgba(0,0,0,.25)}.bs-card-words{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1}.bs-card-words b{font:800 15px/1.05 Playful,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bs-card-words span{font:700 12px/1.15 Playful,sans-serif;color:#6c6a78}.bs-count{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end}.bs-count b{font:800 20px/1 Playful,sans-serif;color:var(--bs-navy);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bs-count small{font:800 9px/1 Playful,sans-serif;letter-spacing:1px;color:#8a8698}.bs-gauge{display:flex;align-items:center;gap:7px}.bs-kg{display:flex;align-items:baseline;gap:2px;min-width:40px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bs-kg:last-child{justify-content:flex-end}.bs-kg b{font:800 15px/1 Playful,sans-serif}.bs-kg small{font:800 10px/1 Playful,sans-serif;color:#8a8698}.bs-kg b:after{content:"kg";font-size:9px;margin-left:1px;color:#8a8698}.bs-track{position:relative;flex:1 1;height:22px;border-radius:11px;background:#f3d7d2;overflow:hidden;box-shadow:inset 0 0 0 2px rgba(34,40,58,.1)}.bs-zone{left:25%;right:25%;background:#ffe2a3}.bs-zone,.bs-zone-perfect{position:absolute;top:0;bottom:0}.bs-zone-perfect{left:41.66%;right:41.66%;background:#b9efcf}.bs-needle{position:absolute;top:2px;bottom:2px;width:6px;margin-left:-3px;border-radius:3px;background:var(--bs-ink);transition:left .25s cubic-bezier(.3,1.4,.5,1);box-shadow:0 0 0 2px #fff}.bs-ghost-needle{background:rgba(34,40,58,.35);box-shadow:0 0 0 2px rgba(255,255,255,.6);transition:left .12s}.bs-ghost-needle[hidden]{display:none}.bs-track em{position:absolute;inset:0;display:grid;align-items:center;justify-items:center;font:800 11px/1 Playful,sans-serif;letter-spacing:1px;font-style:normal;color:rgba(34,40,58,.75);pointer-events:none}.bs-track em[data-side=left]{justify-items:end;padding-right:12%}.bs-track em[data-side=right]{justify-items:start;padding-left:12%}.bs-track em[data-side=mid]{justify-items:start;padding-left:60%}.bs-gauge[data-level=bad] .bs-track{animation:bs-shake .4s ease-in-out infinite}.bs-gauge[data-level=bad] .bs-needle{background:var(--bs-red)}.bs-gauge[data-level=perfect] .bs-needle{background:var(--bs-green)}@keyframes bs-shake{25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}.bs-actions{position:absolute;z-index:5;left:50%;bottom:calc(env(safe-area-inset-bottom, 0px) + 12px);transform:translateX(-50%);width:min(420px,calc(100vw - 20px));display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:10px;gap:10px}.bs-act{display:flex;align-items:center;justify-content:center;gap:8px;height:58px;border-radius:18px;cursor:pointer;border:3px solid #fff;color:#fff;font:800 17px/1 Playful,sans-serif;letter-spacing:.5px;box-shadow:inset 0 3px 0 rgba(255,255,255,.3),0 5px 0 rgba(0,0,0,.28);transition:transform .1s,filter .2s,background .25s}.bs-act span{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.bs-act small{font:800 10px/1 Playful,sans-serif;letter-spacing:1px;opacity:.85}.bs-act:active{transform:translateY(3px);box-shadow:0 2px 0 rgba(0,0,0,.28)}.bs-act:disabled{filter:grayscale(.7) brightness(.9);opacity:.6;cursor:default}.bs-unload{background:linear-gradient(#56628f,#3b4670)}.bs-close{background:linear-gradient(#ff9a3c,#f06a16)}.bs-close[data-level=perfect]{background:linear-gradient(#45cf8a,#23a462)}.bs-close[data-level=bad]{background:linear-gradient(#ff6a78,#d63a4c)}.bs-keys{position:absolute;z-index:5;left:0;right:0;bottom:84px;text-align:center;font:600 12px/1 Playful,sans-serif;color:rgba(255,255,255,.9);text-shadow:0 1px 3px rgba(0,0,0,.5);pointer-events:none}@media (max-width:700px),(pointer:coarse){.bs-keys{display:none}}.bs-pops{inset:0;z-index:6;pointer-events:none;overflow:hidden}.bs-pop,.bs-pops{position:absolute}.bs-pop{transform:translate(-50%,-50%);white-space:nowrap;opacity:0;font:800 20px/1 Playful,sans-serif;color:#fff;-webkit-text-stroke:1.5px var(--bs-ink);paint-order:stroke fill;text-shadow:0 3px 0 rgba(34,40,58,.45);animation:bs-pop 1.2s cubic-bezier(.2,1.2,.4,1) forwards}.bs-pop.left:before{content:"◀ ";color:#ffe27a}.bs-pop.right:after{content:" ▶";color:#ffe27a}@keyframes bs-pop{0%{opacity:0;transform:translate(-50%,-30%) scale(.5)}15%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}25%,70%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-150%) scale(.95)}}.bs-toast{position:absolute;z-index:7;left:50%;top:calc(env(safe-area-inset-top, 0px) + 172px);transform:translate(-50%);opacity:0;pointer-events:none;max-width:calc(100vw - 24px);padding:8px 16px;border-radius:16px;font:800 15px/1.15 Playful,sans-serif;text-align:center;background:rgba(34,40,58,.93);color:#fff;border:2px solid rgba(255,250,241,.92)}.bs-toast[data-kind=good]{background:#23946a}.bs-toast[data-kind=bad]{background:#cf3c4d}.bs-toast[data-kind=warn]{background:#d4741a}.bs-toast.show{animation:bs-toast 1.7s ease forwards}@keyframes bs-toast{0%{opacity:0;transform:translate(-50%,12px) scale(.85)}10%,80%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-14px)}}.bs-banner{position:absolute;z-index:7;left:50%;top:40%;transform:translate(-50%,-50%) rotate(-3deg) scale(.5);opacity:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 22px 16px;border-radius:22px;width:max-content;max-width:calc(100vw - 28px);background:var(--bs-teal);color:#fff;border:4px solid #fff;box-shadow:0 7px 0 #137a71,0 16px 40px rgba(0,0,0,.3)}.bs-banner[data-kind=bad]{background:var(--bs-red);box-shadow:0 7px 0 #8e2a35,0 16px 40px rgba(0,0,0,.3)}.bs-banner b{font:800 32px/1 Playful,sans-serif;letter-spacing:.5px;text-shadow:0 3px 0 rgba(0,0,0,.2);text-align:center}.bs-banner-stars{font:800 28px/1 Playful,sans-serif;color:#ffe27a;letter-spacing:4px;text-shadow:0 2px 0 rgba(0,0,0,.25)}.bs-banner-stars:empty{display:none}.bs-banner>span:last-child{font:800 14px/1.25 Playful,sans-serif;text-align:center}.bs-banner.show{animation:bs-banner 2.4s cubic-bezier(.3,1.4,.5,1) forwards}@keyframes bs-banner{0%{opacity:0;transform:translate(-50%,-50%) rotate(-10deg) scale(.4)}12%{opacity:1;transform:translate(-50%,-50%) rotate(-2deg) scale(1.08)}20%,85%{opacity:1;transform:translate(-50%,-50%) rotate(-3deg) scale(1)}to{opacity:0;transform:translate(-50%,-70%) rotate(-3deg) scale(.9)}}.bs-corner{position:absolute;z-index:8;top:calc(env(safe-area-inset-top, 0px) + 10px);right:12px;display:flex;gap:6px}.bs-app[data-phase=loading] .bs-corner{display:none}.bs-icon-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#fff;background:rgba(34,40,58,.84);border:2px solid rgba(255,250,241,.92);box-shadow:0 3px 0 rgba(0,0,0,.25)}.bs-icon-btn .off{display:none}.bs-icon-btn[aria-pressed=true] .off{display:block}.bs-icon-btn[aria-pressed=true] .on{display:none}.bs-app:not([data-phase=play]) .bs-corner{top:calc(env(safe-area-inset-top, 0px) + 14px)}.bs-app .overlay{background:linear-gradient(180deg,rgba(45,58,99,.12),rgba(34,40,58,.55));backdrop-filter:none;-webkit-backdrop-filter:none}.bs-app .bs-loading{background:linear-gradient(#7d82c4,#e7a3a8 55%,#ffc38a)}.bs-card{position:relative;width:min(400px,100%);margin:auto;padding:22px 22px 20px;border-radius:28px;text-align:center;color:var(--bs-ink);background:var(--bs-paper);border:4px solid #fff;box-shadow:0 8px 0 rgba(34,40,58,.4),0 20px 50px rgba(0,0,0,.3)}.bs-card:before{content:"";position:absolute;left:7px;right:7px;top:7px;height:10px;border-radius:20px 20px 0 0;pointer-events:none;background:repeating-linear-gradient(-45deg,var(--bs-gold) 0 10px,var(--bs-ink) 10px 20px);opacity:.85}.bs-kicker{font:800 12px/1 Playful,sans-serif;letter-spacing:2px;color:#b4561a}.bs-title{margin:8px 0 6px;font:800 56px/.88 Playful,sans-serif;color:var(--bs-orange);letter-spacing:-1px;-webkit-text-stroke:2px var(--bs-ink);paint-order:stroke fill;text-shadow:0 5px 0 var(--bs-navy);transform:rotate(-3deg)}.bs-blurb{margin:10px 0 12px;font:700 15px/1.35 Playful,sans-serif;color:#5f5d6c}.bs-rules{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-gap:8px;gap:8px;text-align:left}.bs-rules li{display:grid;grid-template-columns:28px 1fr;grid-column-gap:10px;column-gap:10px;font:600 13px/1.3 Playful,sans-serif;color:#5f5d6c}.bs-rules li span{grid-row:span 2;width:28px;height:28px;border-radius:9px;background:var(--bs-teal);color:#fff;display:grid;place-items:center;font:800 16px/1 Playful,sans-serif}.bs-rules li:nth-child(2) span{background:var(--bs-orange)}.bs-rules li:nth-child(3) span{background:var(--bs-red)}.bs-rules li:nth-child(4) span{background:var(--bs-navy)}.bs-rules li b{font:800 15px/1.1 Playful,sans-serif;color:var(--bs-ink)}.bs-app button.big{position:relative;width:100%;background:linear-gradient(#ff9a3c,#f06a16);color:#fff;border-color:#ffe0c4;box-shadow:inset 0 3px 0 rgba(255,255,255,.35),0 5px 0 #a8460c}.bs-app button.big:active{box-shadow:0 1px 0 #a8460c}.bs-best{margin:10px 0 0;font:700 13px/1.3 Playful,sans-serif;color:#7a7788}.bs-link-btn{position:relative;margin-top:10px;background:none;border:0;color:#b4561a;font:800 15px/1 Playful,sans-serif;text-decoration:underline;cursor:pointer;padding:6px 8px}.bs-result-title{position:relative;margin:6px 0 0;font:800 32px/1 Playful,sans-serif;color:var(--bs-orange)}.bs-result-line{margin:6px 0 8px;font:700 14px/1.35 Playful,sans-serif;color:#5f5d6c}.bs-result-big{display:flex;align-items:baseline;justify-content:center;gap:8px}.bs-result-big b{font:800 54px/1 Playful,sans-serif;color:var(--bs-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bs-result-big span{font:800 18px/1 Playful,sans-serif;color:#b4561a}.bs-r-flights{list-style:none;margin:12px 0 4px;padding:0;display:grid;grid-gap:6px;gap:6px;text-align:left}.bs-r-flights li{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:12px;background:#f6ecdf;animation:bs-row .45s cubic-bezier(.3,1.5,.5,1) both}.bs-r-flights li[data-ok="0"]{background:#fbe1e1}@keyframes bs-row{0%{opacity:0;transform:translateX(-24px) scale(.9)}}.bs-r-code{flex-shrink:0;padding:5px 7px;border-radius:8px;color:#fff;font:800 14px/1 Playful,sans-serif}.bs-r-mid{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.bs-r-mid strong{font:800 13px/1.1 Playful,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bs-r-mid small{font:700 11px/1.15 Playful,sans-serif;color:#77748a}.bs-r-right{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.bs-r-right em{font:800 15px/1 Playful,sans-serif;font-style:normal;color:#f0a419;letter-spacing:1px}.bs-r-right small{font:800 12px/1 Playful,sans-serif;color:var(--bs-ink)}.bs-result-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px 10px;gap:6px 10px;margin:10px 0 14px}.bs-result-list div{display:flex;justify-content:space-between;padding:6px 10px;border-radius:10px;background:#f6ecdf;font:700 14px/1.2 Playful,sans-serif}.bs-result-list dt{color:#7a7788}.bs-result-list dd{margin:0;color:var(--bs-ink);font-weight:800}.bs-app .share-btn{position:relative;width:100%;color:#b4561a}@media (min-width:900px){.bs-head{padding-left:24px;top:18px}.bs-card-hud{top:18px}.bs-toast{top:150px}}@media (max-height:700px) and (max-width:700px){.bs-rules li{font-size:12px}.bs-title{font-size:44px}}