.bpt-sim{--bptvar-accent:#ed176d}
.bpt-shotview-cover{position:absolute;z-index:2147483600;inset:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 42%,#24292e 0,#101416 36%,#080b0d 72%);color:#f6f5f1;opacity:1;transition:opacity .24s ease,transform .24s ease}
.bpt-shotview-cover::before,.bpt-shotview-cover::after{content:"";position:absolute;pointer-events:none}
.bpt-shotview-cover::before{inset:-35%;background:linear-gradient(112deg,transparent 40%,#ed176d0c 50%,transparent 60%);transform:rotate(-8deg)}
.bpt-shotview-cover::after{left:50%;bottom:0;width:min(420px,72vw);height:2px;background:linear-gradient(90deg,transparent,var(--bptvar-accent),transparent);transform:translateX(-50%);box-shadow:0 0 22px #ed176d88}
.bpt-shotview-cover.is-leaving{opacity:0;transform:scale(1.015);pointer-events:none}
.bpt-shotview-cover__content{position:relative;z-index:1;width:min(620px,88vw);display:flex;flex-direction:column;align-items:center;text-align:center}
.bpt-shotview-cover__logo{display:block;width:min(360px,74vw);height:auto;margin:0 0 clamp(34px,7vh,64px)}
.bpt-shotview-cover__title{margin:0;color:#f6f5f1;font:900 clamp(32px,7vw,62px)/.95 Inter,Arial,sans-serif;letter-spacing:.045em;text-transform:uppercase;text-shadow:0 3px 20px #000}
.bpt-shotview-cover__title span{color:var(--bptvar-accent)}
.bpt-shotview-cover__enter{display:flex;align-items:center;gap:12px;margin-top:clamp(42px,8vh,78px);padding:10px 1px 12px;border:0;border-bottom:1px solid #ffffff5c;border-radius:0;background:transparent;color:#f6f5f1;font:800 clamp(13px,2.8vw,17px)/1 Inter,Arial,sans-serif;letter-spacing:.16em;cursor:pointer;transition:color .16s ease,border-color .16s ease,transform .16s ease;-webkit-tap-highlight-color:transparent}
.bpt-shotview-cover__enter svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s ease}
.bpt-shotview-cover__enter:hover,.bpt-shotview-cover__enter:focus-visible{color:var(--bptvar-accent);border-color:var(--bptvar-accent);outline:none}
.bpt-shotview-cover__enter:hover svg,.bpt-shotview-cover__enter:focus-visible svg{transform:translateX(4px)}
.bpt-shotview-cover__enter:active{transform:scale(.98)}
@media(orientation:landscape) and (max-height:520px){.bpt-shotview-cover__content{width:min(740px,92vw)}.bpt-shotview-cover__logo{width:min(270px,38vw);margin-bottom:18px}.bpt-shotview-cover__title{font-size:clamp(28px,7vh,46px)}.bpt-shotview-cover__enter{margin-top:24px}}
.bpt-shotview-help{position:absolute;z-index:2147483590;inset:0;display:grid;place-items:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));color:#f4f4f1}
.bpt-shotview-help[hidden]{display:none!important}
.bpt-shotview-help__backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#020304d9;backdrop-filter:blur(7px);cursor:pointer}
.bpt-shotview-help__dialog{position:relative;width:min(620px,100%);max-height:100%;overflow:auto;padding:20px;border:1px solid #ffffff1f;border-radius:16px;background:#101416;box-shadow:0 22px 60px #000d}
.bpt-shotview-help__header{display:flex;align-items:center;justify-content:space-between;gap:16px}.bpt-shotview-help__header strong{color:#fff;font:900 18px/1 Inter,Arial,sans-serif;letter-spacing:.08em}
.bpt-shotview-help__close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #ffffff20;border-radius:50%;background:#1c2225;color:#fff;font:300 27px/1 Arial,sans-serif;cursor:pointer}
.bpt-shotview-help__languages{display:flex;gap:4px;margin:18px 0 16px;padding:3px;border-radius:9px;background:#080b0d}
.bpt-shotview-help__languages button{flex:1;min-height:32px;padding:5px;border:0;border-radius:7px;background:transparent;color:#8f979b;font:800 11px/1 Inter,Arial,sans-serif;letter-spacing:.12em;cursor:pointer}.bpt-shotview-help__languages button.is-active{background:#242b2f;color:#fff;box-shadow:inset 0 -2px 0 var(--bptvar-accent)}
.bpt-shotview-help__steps{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr;gap:8px}.bpt-shotview-help__steps li{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;min-height:64px;padding:10px;border:1px solid #ffffff10;border-radius:10px;background:#171c1f}
.bpt-shotview-help__icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#242b2f;color:#f6f5f1}.bpt-shotview-help__icon svg{width:22px;height:22px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.bpt-shotview-help__icon text{fill:currentColor;stroke:none;font:900 7px/1 Arial,sans-serif;text-anchor:middle}.bpt-shotview-help__copy{min-width:0}
.bpt-shotview-help__icon .bpt-shotview-help__ball-icon circle{fill:#f4f1df;stroke:#c7c5ba}.bpt-shotview-help__icon .bpt-shotview-help__ball-icon path{stroke:var(--bptvar-accent);stroke-width:2}
.bpt-shotview-help__steps strong,.bpt-shotview-help__steps small{display:block}.bpt-shotview-help__steps strong{color:#f6f5f1;font:800 11px/1.2 Inter,Arial,sans-serif;letter-spacing:.055em}.bpt-shotview-help__steps small{margin-top:4px;color:#aeb4b7;font:500 11px/1.35 Inter,Arial,sans-serif}
@media(min-width:700px){.bpt-shotview-help__steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bpt-sim__help-button svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bpt-sim__logo{width:47.84%!important}
.bpt-sim__tray--picker{position:absolute!important;z-index:80;left:50%;bottom:8px;width:min(520px,calc(100% - 20px));height:1px!important;min-height:1px!important;padding:0!important;overflow:hidden!important;visibility:hidden;opacity:0;transform:translate(-50%,10px);pointer-events:none;transition:opacity .16s ease,transform .16s ease;background:#090b0df2!important;border:1px solid #ffffff18;box-shadow:0 12px 34px #000b;backdrop-filter:blur(10px)}
.bpt-sim__tray--picker.is-open{height:auto!important;min-height:0!important;padding:10px!important;overflow:visible!important;visibility:visible;opacity:1;transform:translate(-50%,0);pointer-events:auto;grid-template-columns:repeat(8,minmax(32px,44px))!important}
.bpt-sim__rack-menu{position:absolute;z-index:82;right:10px;bottom:10px;width:min(430px,calc(100% - 20px));padding:7px;border:1px solid #ffffff18;border-radius:12px;background:#090b0df2;box-shadow:0 12px 34px #000b;backdrop-filter:blur(10px);display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
.bpt-sim__rack-menu[hidden]{display:none!important}.bpt-sim__rack-menu button{min-height:48px;padding:8px;border:1px solid #ffffff18;border-radius:9px;background:#171c1f;color:#f4f4f1;font:800 11px/1.15 Inter,sans-serif;letter-spacing:.04em;cursor:pointer}.bpt-sim__rack-menu button:hover{background:#22292d}.bpt-sim__rack-menu small{display:block;margin-top:4px;color:#9da4a8;font-size:8px;font-weight:600;letter-spacing:0}
.bpt-sim__layout-marks{position:absolute;z-index:2;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.bpt-sim__layout-marks path,.bpt-sim__layout-marks circle{fill:none;stroke:#1d2428;stroke-width:1.5;vector-effect:non-scaling-stroke;opacity:.14}.bpt-sim__layout-marks circle{fill:#1d2428;stroke:none}
.bpt-sim__picker-toggle.is-active,.bpt-sim__rack-toggle.is-active{background:#f4f4f1!important;color:#101315!important}
.bpt-sim__precision-cross{position:absolute;z-index:45;width:0;height:0;pointer-events:none;display:none;color:#fff;filter:drop-shadow(0 1px 2px #000)}
.bpt-sim__precision-cross.is-visible{display:block}
.bpt-sim__precision-cross::before,.bpt-sim__precision-cross::after{content:"";position:absolute;background:currentColor;opacity:.9}
.bpt-sim__precision-cross::before{width:44px;height:1px;left:-22px;top:0}.bpt-sim__precision-cross::after{width:1px;height:44px;top:-22px;left:0}
.bpt-sim__precision-cross i{position:absolute;width:8px;height:8px;left:-4px;top:-4px;border:2px solid var(--bptvar-accent);border-radius:50%;background:#fff}
.bpt-sim__precision-preview{position:absolute;z-index:34;inset:0;width:100%;height:100%;pointer-events:none}
.bpt-sim__precision-preview line{stroke:#f7f2e8;stroke-width:3;stroke-dasharray:12 9;stroke-linecap:round;filter:drop-shadow(0 1px 1px #000)}
.bpt-sim__precision-preview circle{fill:#fff;stroke:var(--bptvar-accent);stroke-width:3}
.bpt-sim__precision-preview .bpt-sim__arrow-edit{fill:#0d1112;stroke:#f4f4f1;stroke-width:4;pointer-events:all;cursor:grab}
.bpt-sim__arrow-line{stroke:var(--arrow-color,#f7f2e8)!important}.bpt-sim__arrow-head{fill:var(--arrow-color,#f7f2e8)!important}
.bpt-sim__trajectory-ghosts{position:absolute;z-index:35;inset:0;pointer-events:none}.bpt-sim__trajectory-ghost{position:absolute;width:var(--table-ball-size);height:var(--table-ball-size);border:1px solid #ffffff85;border-radius:50%;background:radial-gradient(circle at 34% 28%,#ffffff75 0,transparent 30%),var(--ghost-color,#f7f2e8);box-shadow:inset -3px -4px 5px #0003,inset 2px 2px 3px #fff5,0 1px 3px #0008;opacity:.46;overflow:hidden;transform:translate(-50%,-50%)}.bpt-sim__trajectory-ghost.is-stripe{background:linear-gradient(to bottom,#f4f1df 0 25%,var(--ghost-color) 25% 75%,#f4f1df 75% 100%)}.bpt-sim__trajectory-ghost i{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:46%;height:46%;border-radius:50%;background:#fff;color:#111;font:800 clamp(6px,45%,9px)/1 Arial,sans-serif;font-style:normal;transform:translate(-50%,-50%)}
.bpt-sim__arrow-origin{position:absolute;z-index:36;width:8px;height:8px;border:1px solid #f4f4f1aa;border-radius:50%;background:#090b0d;box-shadow:0 1px 3px #000b;transform:translate(-50%,-50%);pointer-events:none;opacity:0}.bpt-sim__arrow-origin.is-visible{opacity:1}
.bpt-sim__path-guides{position:absolute;z-index:36;inset:0;pointer-events:none;display:none}.bpt-sim__path-guides.is-visible{display:block}.bpt-sim__path-guides::before,.bpt-sim__path-guides::after{content:"";position:absolute;background:#090b0dcc;box-shadow:0 0 0 1px #ffffff24}.bpt-sim__path-guides::before{left:0;right:0;top:var(--guide-y,50%);height:1px;transform:translateY(-50%)}.bpt-sim__path-guides::after{top:0;bottom:0;left:var(--guide-x,50%);width:1px;transform:translateX(-50%)}
.bpt-sim__path-handles{position:absolute;z-index:37;inset:0;pointer-events:none}.bpt-sim__path-handle{position:absolute;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;transform:translate(-50%,-50%);pointer-events:auto;touch-action:none}.bpt-sim__path-handle::after{content:"";position:absolute;left:50%;top:50%;width:5px;height:5px;border:1px solid #f4f4f1cc;border-radius:50%;background:#090b0d;box-shadow:0 1px 2px #000b;transform:translate(-50%,-50%)}.bpt-sim__path-handle.is-active::after{width:6px;height:6px;box-shadow:0 0 0 1px #ffffff35,0 1px 2px #000b}
.bpt-sim__spin{position:static;display:none;justify-content:center;align-items:center;margin-top:5px;padding:0;background:transparent;color:#fff}.bpt-sim.show-spin .bpt-sim__spin{display:flex}
.bpt-sim__spin-copy{font:800 8px/1.2 Inter,sans-serif;letter-spacing:.1em;text-align:right}.bpt-sim__spin-copy small{display:block;margin-top:3px;color:#abb2b6;font-size:8px;letter-spacing:0}
.bpt-sim__spin-ball{position:relative;width:48px;height:48px;border:0;border-radius:50%;padding:0;background:radial-gradient(circle at 34% 28%,#fff 0,#f4f1df 48%,#b8b6aa 82%,#777 100%);box-shadow:inset -5px -6px 8px #0004,inset 4px 4px 6px #fff8,0 2px 7px #0007;touch-action:none}
.bpt-sim__spin-ball::before,.bpt-sim__spin-ball::after{content:"";position:absolute;background:#5556;pointer-events:none}.bpt-sim__spin-ball::before{left:50%;top:10%;bottom:10%;width:1px}.bpt-sim__spin-ball::after{top:50%;left:10%;right:10%;height:1px}
.bpt-sim__spin-dot{position:absolute;width:10px;height:10px;left:50%;top:50%;border:2px solid #fff;border-radius:50%;background:var(--bptvar-accent);box-shadow:0 1px 3px #000;transform:translate(-50%,-50%);pointer-events:none}
.bpt-sim__tools [data-action="redo"]:disabled{opacity:.34}
.bpt-sim.is-precision-moving .bpt-sim__cloth{cursor:crosshair}
.bpt-sim__spin-copy{display:none}
.bpt-sim__tools>button{min-width:40px;min-height:40px}.bpt-sim__tools svg{width:20px;height:20px}
.bpt-sim__picker-toggle svg{display:none}.bpt-sim__picker-toggle::before{content:"+";width:24px;height:24px;border:1px solid #c7c5ba;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 34% 28%,#fff 0,#f4f1df 54%,#b8b6aa 84%,#777 100%);color:var(--bptvar-accent);box-shadow:inset -3px -4px 5px #0003,inset 3px 3px 4px #fff8,0 1px 3px #0008;font:900 13px/1 Inter,sans-serif}.bpt-sim__picker-toggle::after{display:none}.bpt-sim__picker-toggle{position:relative}
html.bptvar-fullscreen,body.bptvar-fullscreen{overflow:hidden!important;overscroll-behavior:none!important}
.bpt-sim{position:fixed!important;z-index:2147483000!important;inset:auto!important;left:calc(var(--bpt-vv-left,0px) + (var(--bpt-vv-width,100vw) * .025))!important;top:calc(var(--bpt-vv-top,0px) + (var(--bpt-vv-height,100dvh) * .025))!important;width:calc(var(--bpt-vv-width,100vw) * .95)!important;height:calc(var(--bpt-vv-height,100dvh) * .95)!important;max-width:none!important;margin:0!important;padding:max(6px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(10px,calc(env(safe-area-inset-bottom) + 6px)) max(6px,env(safe-area-inset-left))!important;overflow:hidden!important;background:#080b0d!important;border-radius:10px!important}
.bpt-sim__workspace{width:100%;height:100%;border:0!important;border-radius:0!important;box-shadow:none!important;background:#080b0d!important;overflow:hidden!important}.bpt-sim__status{display:none!important}

@media(orientation:portrait) and (max-width:767px) and (pointer:coarse){
  .bpt-sim__logo{width:55.02%!important}
  .bpt-sim{min-height:0!important;display:grid!important;place-items:stretch!important}
  .bpt-sim__rotate-gate,.bpt-sim__landscape-close{display:none!important}
  .bpt-sim__workspace{display:grid!important;grid-template-rows:minmax(0,1fr) auto!important;gap:7px!important;padding:4px!important}
  .bpt-sim__table-zone{display:grid!important;padding:0 0 52px!important;min-height:0;place-items:center}
  .bpt-sim__table{width:min(calc(var(--bpt-vv-width-95,95vw) - 16px - env(safe-area-inset-left) - env(safe-area-inset-right)),calc((var(--bpt-vv-height-95,95dvh) - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))/2))!important;max-width:none!important;--rail-size:22px}
  .bpt-sim__cloth{aspect-ratio:1/2}
  .bpt-sim__top{position:absolute!important;top:auto!important;right:50%!important;bottom:-50px!important;max-width:calc(100vw - 20px)!important;transform:translateX(50%)!important}
  .bpt-sim__tools{justify-content:center;flex-wrap:nowrap;gap:1px;padding:2px;overflow-x:auto}
  .bpt-sim__tools>button{width:38px;height:38px;min-width:38px;min-height:38px;padding:9px}
  .bpt-sim__tray--picker{bottom:58px}
  .bpt-sim__rack-menu{right:50%;bottom:58px;transform:translateX(50%)}
  .bpt-sim__pocket.p2{left:var(--rail-size);top:50%;transform:translate(-70%,-50%)}
  .bpt-sim__pocket.p5{right:var(--rail-size);left:auto;top:50%;bottom:auto;transform:translate(70%,-50%)}
  .bpt-sim__cushion.top-left,.bpt-sim__cushion.bottom-left{left:var(--rail-size);right:auto;width:calc(var(--rail-size)*.23);height:auto}
  .bpt-sim__cushion.top-right,.bpt-sim__cushion.bottom-right{right:var(--rail-size);left:auto;width:calc(var(--rail-size)*.23);height:auto}
  .bpt-sim__cushion.top-left,.bpt-sim__cushion.top-right{top:calc(var(--rail-size) + var(--corner-gap));bottom:calc(50% + var(--side-gap))}
  .bpt-sim__cushion.bottom-left,.bpt-sim__cushion.bottom-right{top:calc(50% + var(--side-gap));bottom:calc(var(--rail-size) + var(--corner-gap))}
  .bpt-sim__cushion.left,.bpt-sim__cushion.right{left:calc(var(--rail-size) + var(--corner-gap));right:calc(var(--rail-size) + var(--corner-gap));width:auto;height:calc(var(--rail-size)*.23)}
  .bpt-sim__cushion.left{top:var(--rail-size);bottom:auto}.bpt-sim__cushion.right{bottom:var(--rail-size);top:auto}
  .bpt-sim__diamond.top,.bpt-sim__diamond.bottom{top:var(--diamond-y,50%);bottom:auto}.bpt-sim__diamond.top{left:calc(var(--rail-size)/2);transform:translate(-50%,-50%) rotate(45deg)}.bpt-sim__diamond.bottom{right:calc(var(--rail-size)/2);left:auto;transform:translate(50%,-50%) rotate(45deg)}
  .bpt-sim__diamond.left,.bpt-sim__diamond.right{left:var(--diamond-x,50%);right:auto}.bpt-sim__diamond.left{top:calc(var(--rail-size)/2);transform:translate(-50%,-50%) rotate(45deg)}.bpt-sim__diamond.right{bottom:calc(var(--rail-size)/2);top:auto;transform:translate(-50%,50%) rotate(45deg)}
}
@media(orientation:landscape) and (max-width:767px) and (pointer:coarse){
  .bpt-sim__rotate-gate,.bpt-sim__landscape-close{display:none!important}
  .bpt-sim__workspace{display:grid!important;grid-template-rows:minmax(0,1fr)!important;gap:0!important}
  .bpt-sim__table-zone{padding:0 52px 0 0!important}.bpt-sim__table{width:min(calc(100vw - 60px),calc((100dvh - 8px)*2))!important}.bpt-sim__top{position:absolute!important;top:50%!important;right:-50px!important;transform:translateY(-50%)!important}
  .bpt-sim__tools{flex-direction:column;gap:1px;padding:1px}.bpt-sim__tools>button{width:39px;height:39px;min-width:39px;min-height:39px;padding:9px}
  .bpt-sim__spin-ball{width:38px;height:38px}.bpt-sim__status{display:none!important}
  .bpt-sim__tray--picker{left:auto;right:56px;bottom:8px;transform:translateY(10px)}.bpt-sim__tray--picker.is-open{transform:none}
  .bpt-sim__rack-menu{right:56px;bottom:8px}
}
@media(min-width:768px){
  .bpt-sim__table-zone{padding:0 56px 0 0}.bpt-sim__table{width:min(calc(100vw - 68px),calc((100dvh - 16px)*2))!important}.bpt-sim__top{position:absolute;top:50%;right:-52px;transform:translateY(-50%)}.bpt-sim__tools{flex-direction:column;gap:4px}.bpt-sim__tools>button{width:44px;height:44px;padding:11px}.bpt-sim__spin-ball{width:42px;height:42px}
}
@media(max-width:700px){.bpt-sim__spin-ball{width:40px;height:40px}}
