/*
 PANORAMA / SESSIONS — SONIC RAIL V2 · 2026-10-20
 Premium editorial layer over the EXISTING four-channel HLS radio.
 No global resets. Original sound runtime remains unmodified.
*/
#panorama-sessions-dock.psd2-integrated {
 --psd2-bg:#080c0d;--psd2-ink:#f3f3ee;--psd2-soft:#90a6aa;
 --psd2-rule:rgba(173,208,211,.19);--psd2-cyan:#8ecae6;--psd2-orange:#fb8500;
 position:fixed;left:0;right:auto;top:auto;
 bottom:calc(16px + env(safe-area-inset-bottom,0px));
 width:min(260px,calc(100vw - 14px));max-width:calc(100vw - 14px);
 z-index:135;padding:0;margin:0;
 background:transparent;border:0;border-radius:0;box-shadow:none;isolation:isolate;
 -webkit-backdrop-filter:none;backdrop-filter:none;font-family:Arial,Helvetica,sans-serif
}
#panorama-sessions-dock.psd2-integrated *{box-sizing:border-box}
#panorama-sessions-dock.psd2-integrated button{
 appearance:none;border:0;border-radius:0;background:transparent;color:inherit;cursor:pointer;
 -webkit-tap-highlight-color:transparent
}
#panorama-sessions-dock.psd2-integrated button:focus-visible,
#panorama-sessions-dock.psd2-integrated a:focus-visible,
#panorama-sessions-dock.psd2-integrated input:focus-visible{
 outline:2px solid var(--psd2-orange);outline-offset:3px
}
/* Viewport-edge control rail, not a floating product sticker */
#panorama-sessions-dock .psd2-rail{
 width:100%;height:53px;display:flex;align-items:stretch;
 background:rgba(5,9,10,.975);
 border:1px solid var(--psd2-rule);border-left:0;border-radius:0 5px 5px 0;
 box-shadow:0 6px 20px rgba(0,0,0,.20);
 -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
 transition:background .2s,border-color .2s
}
#panorama-sessions-dock .psd2-rail:hover,
#panorama-sessions-dock.psd2-expanded .psd2-rail{
 border-color:rgba(142,202,230,.5);background:rgba(9,15,17,.98)
}
#panorama-sessions-dock .psd2-rail-marker{
 display:grid;place-items:center;flex:0 0 18px;
 writing-mode:vertical-rl;transform:rotate(180deg);
 font:700 7px/1 ui-monospace,Menlo,Consolas,monospace;
 letter-spacing:.13em;color:var(--psd2-cyan);
 background:rgba(142,202,230,.09);
 border-right:1px solid rgba(142,202,230,.14)
}
#panorama-sessions-dock .psd2-quickplay{
 display:grid;place-items:center;flex:0 0 46px;min-height:50px;
 border-right:1px solid rgba(173,208,211,.12)!important;
 color:var(--psd2-cyan)!important;
 transition:background .2s,color .2s
}
#panorama-sessions-dock .psd2-quickplay:hover{
 color:#e7f7ff!important;background:rgba(142,202,230,.1)
}
#panorama-sessions-dock .psd2-quickplay svg{
 display:block;width:19px;height:19px
}
#panorama-sessions-dock .psd2-open{
 flex:1;min-width:0;display:grid;
 grid-template-columns:5px minmax(0,1fr) 23px 14px;
 align-items:center;text-align:left;gap:8px;padding:5px 10px
}
#panorama-sessions-dock .psd2-rail-led{
 width:5px;height:5px;border:1px solid rgba(142,202,230,.72);
 border-radius:50%;background:transparent
}
#panorama-sessions-dock[data-psd2-mode="playing"] .psd2-rail-led{
 background:#9de4b4;border-color:#9de4b4;box-shadow:0 0 0 3px rgba(157,228,180,.10)
}
#panorama-sessions-dock[data-psd2-mode="connecting"] .psd2-rail-led{
 background:var(--psd2-orange)
}
#panorama-sessions-dock .psd2-track{
 display:flex;flex-direction:column;justify-content:center;min-width:0;gap:5px
}
#panorama-sessions-dock .psd2-track strong{
 color:#d5e1e1;white-space:nowrap;letter-spacing:.07em;text-transform:uppercase;
 font:700 8px/1.1 ui-monospace,Menlo,Consolas,monospace
}
#panorama-sessions-dock .psd2-track-title{
 color:var(--psd2-soft);font-size:11px;line-height:1.1;white-space:nowrap;
 text-overflow:ellipsis;overflow:hidden
}
#panorama-sessions-dock[data-psd2-mode="playing"] .psd2-track-title{color:#f1f6f3}
#panorama-sessions-dock .psd2-wave{
 display:flex;align-items:center;justify-content:center;gap:2px;height:22px;opacity:.52
}
#panorama-sessions-dock .psd2-wave i{
 display:block;width:2px;height:4px;border-radius:1px;background:var(--psd2-cyan)
}
#panorama-sessions-dock[data-psd2-mode="playing"] .psd2-wave i{
 animation:psd2-bars .95s ease-in-out infinite alternate
}
#panorama-sessions-dock[data-psd2-mode="playing"] .psd2-wave i:nth-child(2){animation-delay:-.4s}
#panorama-sessions-dock[data-psd2-mode="playing"] .psd2-wave i:nth-child(3){animation-delay:-.66s}
#panorama-sessions-dock[data-psd2-mode="playing"] .psd2-wave i:nth-child(4){animation-delay:-.22s}
@keyframes psd2-bars{from{height:3px}to{height:17px}}
#panorama-sessions-dock .psd2-open-arrow{
 color:#879ca0;transition:transform .2s
}
#panorama-sessions-dock.psd2-expanded .psd2-open-arrow{transform:rotate(-90deg)}
/* Only show the workstation panel when the visitor requests it */
#panorama-sessions-dock .psd2-sheet[hidden]{display:none!important}
#panorama-sessions-dock .psd2-sheet{
 position:absolute;bottom:calc(100% + 9px);left:0;
 width:min(367px,calc(100vw - 14px));
 max-height:min(570px,calc(100dvh - 100px));overflow:auto;scrollbar-width:thin;
 padding:22px 23px 16px;
 background:linear-gradient(150deg,#0c1517 0%,#090e10 56%,#05090a 100%);
 border:1px solid rgba(142,202,230,.25);border-left:2px solid rgba(142,202,230,.8);
 border-radius:0 6px 6px 0;box-shadow:0 20px 62px rgba(0,0,0,.57);
 color:var(--psd2-ink);animation:psd2-rise .18s cubic-bezier(.2,.6,.3,1) both
}
@keyframes psd2-rise{
 from{opacity:.3;transform:translateY(8px)}
 to{opacity:1;transform:translateY(0)}
}
#panorama-sessions-dock .psd2-panel-top{
 display:flex;align-items:center;justify-content:space-between;gap:10px
}
#panorama-sessions-dock .psd2-panel-edition{
 color:#98b7be;font:700 8px/1.35 ui-monospace,Menlo,Consolas,monospace;
 letter-spacing:.06em;white-space:normal
}
#panorama-sessions-dock .psd2-close{
 display:grid;place-items:center;width:29px;min-width:29px;height:29px;
 border:1px solid rgba(142,202,230,.22)!important
}
#panorama-sessions-dock .psd2-close:hover{color:var(--psd2-cyan)}
#panorama-sessions-dock .psd2-close svg{width:13px;height:13px}
#panorama-sessions-dock .psd2-panel-title{
 padding:24px 0 25px;border-bottom:1px solid rgba(173,208,211,.18)
}
#panorama-sessions-dock .psd2-panel-kicker{
 color:var(--psd2-orange);letter-spacing:.17em;margin:0 0 13px;
 font:700 8px/1.3 ui-monospace,Menlo,Consolas,monospace
}
#panorama-sessions-dock .psd2-title{
 max-width:302px;margin:0;color:#f4f6f2;
 font:550 clamp(27px,3vw,35px)/1.035 Arial,Helvetica,sans-serif;
 letter-spacing:-.062em
}
#panorama-sessions-dock .psd2-title em{
 color:var(--psd2-cyan);font-style:normal
}
#panorama-sessions-dock .psd2-subtitle{
 margin:12px 0 0;color:#9ba7a8;font-size:11px;line-height:1.5
}

/* Original transport remains fully functional inside the new sound console */
#panorama-sessions-dock .psd2-transport{
 border-bottom:1px solid rgba(173,208,211,.13);padding:10px 0
}
#panorama-sessions-dock .psd2-transport .psd-head{
 display:grid;grid-template-columns:45px minmax(0,1fr) 35px;
 align-items:center;gap:13px;min-height:66px;padding:8px 0
}
#panorama-sessions-dock .psd2-transport .psd-play{
 display:grid;place-items:center;width:45px;height:45px;min-height:45px;
 background:rgba(142,202,230,.12);color:var(--psd2-cyan);
 border:1px solid rgba(142,202,230,.6)!important;border-radius:2px
}
#panorama-sessions-dock .psd2-transport .psd-play:hover{
 background:rgba(142,202,230,.21);transform:none
}
#panorama-sessions-dock .psd2-transport .psd-play svg{width:18px;height:18px}
#panorama-sessions-dock .psd2-transport .psd-copy{
 min-width:0;display:flex;flex-direction:column;gap:6px
}
#panorama-sessions-dock .psd2-transport .psd-brand{display:none}
#panorama-sessions-dock .psd2-transport .psd-title{
 font-size:16px;letter-spacing:-.025em;color:#f1f4ee;font-weight:600
}
#panorama-sessions-dock .psd2-transport .psd-status{
 max-width:220px;font-size:11px;line-height:1.35
}
#panorama-sessions-dock .psd2-transport .psd-eq,
#panorama-sessions-dock .psd2-transport .psd-expand{display:none}
#panorama-sessions-dock .psd2-transport .psd-mute{
 width:35px;height:39px;min-height:39px;color:#b7cbd0
}
#panorama-sessions-dock .psd2-chooser{padding-top:20px}
#panorama-sessions-dock .psd2-chooser-heading{
 display:flex;justify-content:space-between;gap:10px;margin-bottom:11px;
 font:700 8px/1.4 ui-monospace,Menlo,Consolas,monospace;
 letter-spacing:.08em;color:#93a8ac
}
#panorama-sessions-dock .psd2-chooser .psd-options{
 padding:0;border:0
}
#panorama-sessions-dock .psd2-chooser .psd-options-label{display:none}
#panorama-sessions-dock .psd2-chooser .psd-stations{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px
}
#panorama-sessions-dock .psd2-chooser .psd-station{
 display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
 gap:6px;min-height:51px;padding:10px 11px;
 border:1px solid rgba(173,208,211,.15);border-radius:2px;
 background:rgba(255,255,255,.015);color:#c9d5d5;
 text-align:left;font-size:11px;line-height:1.2
}
#panorama-sessions-dock .psd2-chooser .psd-station::before{
 content:attr(data-psd2-number) " / CANAL";
 font:700 7px/1 ui-monospace,Menlo,Consolas,monospace;
 letter-spacing:.09em;color:#70959e
}
#panorama-sessions-dock .psd2-chooser .psd-station:hover{
 background:rgba(142,202,230,.055);border-color:rgba(142,202,230,.4);
 color:#f6f8f6
}
#panorama-sessions-dock .psd2-chooser .psd-station.psd-selected{
 background:rgba(142,202,230,.09);color:#f5f7f6;
 border-color:var(--psd2-cyan)
}
#panorama-sessions-dock .psd2-chooser .psd-station.psd-selected::before{
 color:var(--psd2-orange)
}
#panorama-sessions-dock .psd2-chooser .psd-station:disabled{
 opacity:.36;cursor:not-allowed
}
#panorama-sessions-dock .psd2-chooser .psd-bottom{
 display:grid;grid-template-columns:auto minmax(0,1fr) auto;
 align-items:center;gap:10px;margin:19px 0 0;padding:0
}
#panorama-sessions-dock .psd2-chooser .psd-bottom label{
 color:#99b5bd;font-size:8px;white-space:nowrap
}
#panorama-sessions-dock .psd2-chooser .psd-volume-number{display:none}
#panorama-sessions-dock .psd2-chooser .psd-bottom a{
 color:var(--psd2-cyan);margin:0;font-size:9px;letter-spacing:.06em;
 padding-bottom:5px;border-bottom:1px solid rgba(142,202,230,.3)
}
#panorama-sessions-dock .psd2-panel-footer{
 display:flex;justify-content:space-between;gap:15px;align-items:center;
 margin-top:22px;padding-top:12px;border-top:1px solid rgba(173,208,211,.12);
 color:#738a8e;
 font:600 7px/1.45 ui-monospace,Menlo,Consolas,monospace;
 letter-spacing:.03em
}
/* Respect the first-visit legal overlay and the mobile navigation. */
html:has(#panorama-consent-banner:not([hidden]))
#panorama-sessions-dock.psd2-integrated{
 top:calc(86px + env(safe-area-inset-top,0px));bottom:auto
}
html:has(#panorama-consent-banner:not([hidden]))
#panorama-sessions-dock.psd2-integrated .psd2-sheet{
 top:calc(100% + 9px);bottom:auto;
 max-height:min(570px,calc(100dvh - 375px))
}
html:has(#panorama-consent-modal:not([hidden]))
#panorama-sessions-dock.psd2-integrated{
 visibility:hidden;pointer-events:none
}
body.mobile-menu-open #panorama-sessions-dock.psd2-integrated,
body:has(.nav01-mobile-panel.is-open) #panorama-sessions-dock.psd2-integrated,
body:has(dialog[open]) #panorama-sessions-dock.psd2-integrated{
 opacity:0;visibility:hidden;pointer-events:none
}
@media(max-width:560px){
 #panorama-sessions-dock.psd2-integrated{
  width:min(236px,calc(100vw - 12px));max-width:calc(100vw - 12px);
  left:0;bottom:calc(11px + env(safe-area-inset-bottom,0px))
 }
 #panorama-sessions-dock .psd2-rail{height:49px}
 #panorama-sessions-dock .psd2-quickplay{flex-basis:43px;min-height:47px}
 #panorama-sessions-dock .psd2-track strong{
  font-size:7px;letter-spacing:.035em
 }
 #panorama-sessions-dock .psd2-open{gap:7px;padding:5px 8px}
 #panorama-sessions-dock .psd2-sheet{
  width:min(346px,calc(100vw - 12px));
  padding:17px 17px 15px;
  bottom:calc(100% + 8px);max-height:calc(100dvh - 100px)
 }
 #panorama-sessions-dock .psd2-panel-title{padding:16px 0 17px}
 #panorama-sessions-dock .psd2-title{font-size:clamp(27px,8.3vw,32px)}
 #panorama-sessions-dock .psd2-subtitle{font-size:10px}
 #panorama-sessions-dock .psd2-transport{padding:5px 0}
 #panorama-sessions-dock .psd2-transport .psd-head{
  min-height:59px;padding:5px 0
 }
 #panorama-sessions-dock .psd2-chooser{padding-top:14px}
 #panorama-sessions-dock .psd2-chooser .psd-station{
  min-height:45px;padding:8px 9px
 }
 #panorama-sessions-dock .psd2-panel-footer{margin-top:15px}
 html:has(#panorama-consent-banner:not([hidden]))
 #panorama-sessions-dock.psd2-integrated{
  top:calc(78px + env(safe-area-inset-top,0px));bottom:auto
 }
 html:has(#panorama-consent-banner:not([hidden]))
 #panorama-sessions-dock.psd2-integrated .psd2-sheet{
  top:calc(100% + 7px);bottom:auto;
  max-height:max(155px,calc(100dvh - 380px))
 }
}
@media(max-width:355px){
 #panorama-sessions-dock.psd2-integrated{
  width:min(220px,calc(100vw - 8px))
 }
 #panorama-sessions-dock .psd2-open{
  grid-template-columns:5px minmax(0,1fr) 16px 12px;gap:6px
 }
 #panorama-sessions-dock .psd2-rail-marker{flex-basis:15px}
 #panorama-sessions-dock .psd2-panel-edition{font-size:7px}
 #panorama-sessions-dock .psd2-panel-footer{font-size:6.5px}
}
@media(prefers-reduced-motion:reduce){
 #panorama-sessions-dock.psd2-integrated .psd2-sheet,
 #panorama-sessions-dock.psd2-integrated .psd2-rail,
 #panorama-sessions-dock.psd2-integrated .psd2-wave i,
 #panorama-sessions-dock.psd2-integrated .psd2-open-arrow{
  animation:none!important;transition:none!important
 }
}
