/* BPF Perpetual support visual scenes — CLEAN4.5.14.1.2.3.3.2 breath phase-locked cue staging */
.bpf-visual-scene-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.bpf-visual-scene-card{position:relative;min-height:126px;border:1px solid rgba(255,255,255,.14);border-radius:17px;overflow:hidden;padding:0;cursor:pointer;background:#06080b;color:#fff;text-align:left;isolation:isolate}
.bpf-visual-scene-card:before{content:"";position:absolute;inset:0;background-image:var(--bpf-scene-image);background-size:cover;background-position:center;filter:brightness(.58) saturate(.82);transform:scale(1.01);z-index:-2;transition:filter .25s ease,transform .25s ease}
.bpf-visual-scene-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.82));z-index:-1}
.bpf-visual-scene-card:hover:before,.bpf-visual-scene-card:focus-visible:before{filter:brightness(.72) saturate(.95);transform:scale(1.035)}
.bpf-visual-scene-card.active{border-color:color-mix(in srgb,var(--lime,#c9ff00) 62%,white 4%);box-shadow:0 0 0 1px color-mix(in srgb,var(--lime,#c9ff00) 28%,transparent),0 12px 28px rgba(0,0,0,.28)}
.bpf-visual-scene-card strong{position:absolute;left:11px;right:11px;bottom:28px;font:900 18px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;text-shadow:0 1px 8px #000}
.bpf-visual-scene-card span{position:absolute;left:11px;right:11px;bottom:10px;font:700 10px/1.2 Inter,sans-serif;color:rgba(255,255,255,.75);text-shadow:0 1px 8px #000}
.bpf-visual-scene-card.bpf-scene-off:before{background-image:linear-gradient(135deg,#08090a,#000);filter:none}
.bpf-visual-scene-card.bpf-scene-off:after{background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.06),transparent 45%),linear-gradient(180deg,transparent,#000)}
.bpf-visual-scene-card.bpf-scene-off strong{bottom:30px}
.bpf-visual-scene-card.bpf-scene-off span{bottom:11px}
.bpf-auto-dim-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:9px}
.bpf-auto-dim-grid button{background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.11);border-radius:14px;padding:11px;color:#fff;font:900 15px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;cursor:pointer}
.bpf-auto-dim-grid button.active{border-color:color-mix(in srgb,var(--lime,#c9ff00) 48%,transparent);background:color-mix(in srgb,var(--lime,#c9ff00) 8%,transparent)}
.bpf-visual-overlay{--scene-brightness:.72;position:fixed;inset:0;z-index:2147483000;background:#000;display:none;overflow:hidden;touch-action:manipulation}
.bpf-visual-overlay.active{display:block}
.bpf-visual-media,.bpf-visual-poster{position:absolute;inset:-1%;width:102%;height:102%;object-fit:cover;object-position:center;filter:brightness(var(--scene-brightness)) saturate(.83);transition:filter 2s linear,opacity .5s ease;transform:translateZ(0)}
.bpf-visual-poster{background-size:cover;background-position:center;opacity:1}
.bpf-visual-overlay.video-ready .bpf-visual-poster{opacity:0}
.bpf-visual-overlay:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 20%,rgba(0,0,0,.14) 62%,rgba(0,0,0,.58) 100%);pointer-events:none}
.bpf-visual-overlay.dim-now{--scene-brightness:.08}
.bpf-visual-caption{position:absolute;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));z-index:4;max-width:min(560px,74vw);padding:11px 14px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(0,0,0,.36);backdrop-filter:blur(10px);transition:opacity .4s ease,transform .4s ease}
.bpf-visual-caption strong{display:block;color:#fff;font:900 19px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.04em}
.bpf-visual-caption span{display:block;color:rgba(255,255,255,.66);font:600 11px/1.35 Inter,sans-serif;margin-top:4px}
.bpf-visual-controls{position:absolute;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:5;display:flex;gap:8px;transition:opacity .4s ease,transform .4s ease}
.bpf-visual-controls button{border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.48);backdrop-filter:blur(10px);color:#fff;border-radius:999px;padding:11px 14px;font:900 13px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;cursor:pointer}
.bpf-visual-overlay.controls-hidden .bpf-visual-caption,.bpf-visual-overlay.controls-hidden .bpf-visual-controls{opacity:0;transform:translateY(12px);pointer-events:none}
.bpf-visual-breath{position:absolute;inset:0;display:none;place-items:center;z-index:3;background:radial-gradient(circle at 50% 50%,rgba(17,89,120,.14),rgba(0,0,0,.86) 66%,#000 100%)}
.bpf-visual-overlay.mode-breath .bpf-visual-media,.bpf-visual-overlay.mode-breath .bpf-visual-poster{display:none}
.bpf-visual-overlay.mode-breath .bpf-visual-breath{display:grid}
.bpf-breath-halo{--scale:.72;--halo-opacity:.68;width:min(58vw,58vh,520px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;transform:scale(var(--scale));opacity:var(--halo-opacity);background:radial-gradient(circle at 50% 48%,rgba(91,202,255,.22) 0 34%,rgba(76,184,236,.12) 45%,rgba(20,95,130,.06) 58%,transparent 72%);border:2px solid rgba(119,217,255,.48);box-shadow:0 0 38px rgba(78,190,239,.18),0 0 110px rgba(34,139,180,.13),inset 0 0 55px rgba(102,219,255,.08);transition:transform 1s linear,opacity 1s linear,box-shadow 1s linear}
.bpf-breath-halo[data-phase="inhale"],.bpf-breath-halo[data-phase="hold-high"]{--scale:1;--halo-opacity:.86;box-shadow:0 0 54px rgba(91,202,255,.25),0 0 150px rgba(34,139,180,.18),inset 0 0 70px rgba(102,219,255,.12)}
.bpf-breath-halo[data-phase="hold-high"]{--halo-opacity:.8}
.bpf-breath-halo[data-phase="exhale"],.bpf-breath-halo[data-phase="hold-low"]{--scale:.62;--halo-opacity:.56}
.bpf-breath-halo[data-phase="hold-low"]{--halo-opacity:.62}
.bpf-breath-halo[data-phase="ready"]{--scale:.72;--halo-opacity:.55}
.bpf-breath-phase{color:#fff;text-align:center;text-shadow:0 2px 18px #000}
.bpf-breath-phase strong{display:block;font:900 clamp(36px,8vw,72px)/.9 "Barlow Condensed",sans-serif;text-transform:uppercase}
.bpf-breath-phase span{display:block;margin-top:10px;font:800 clamp(18px,4vw,34px)/1 Inter,sans-serif;font-variant-numeric:tabular-nums}
@media(max-width:760px){.bpf-visual-scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bpf-visual-scene-card{min-height:112px}.bpf-auto-dim-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bpf-visual-caption{left:12px;right:12px;bottom:76px;max-width:none}.bpf-visual-controls{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));justify-content:center}.bpf-visual-controls button{flex:1}.bpf-breath-halo{width:min(74vw,54vh)}}
@media(prefers-reduced-motion:reduce){.bpf-visual-media{display:none!important}.bpf-visual-poster{opacity:1!important}.bpf-breath-halo{transition:none!important}}
