/* Shared header additions, without changing the approved desktop proportions. */
#app>.prototyp{overflow:visible}
@supports(overflow:clip){html{overflow-x:clip}}
.shell-header{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(221,237,235,.15);background:rgba(9,13,22,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.shell-header .nav{border-bottom:0}
.navlinks a[aria-current="page"]{color:#f1f2ef}
.navlinks a[aria-current="page"]:after{right:0}
.head-live,.player-link{appearance:none;background:none;font-family:inherit}
.head-live{padding:0}
.head-live.is-playing,.player-link.is-playing{border-color:var(--accent);background:rgba(var(--accent-rgb),.09)}
.head-live.is-playing svg{margin-left:0}
.head-live:disabled,.player-link:disabled,.player-live-switch:disabled{opacity:.45;cursor:default}
.cover-surface--actual .cover-image{position:absolute;z-index:4;inset:0;width:100%;height:100%;display:block;object-fit:cover}
.player-text .player-error{color:#d9a3ac}
.player-live-switch{appearance:none;border:0;background:none;padding:8px 0;color:#9ca9b4;font:inherit;font-size:10px;white-space:nowrap}
.player-live-switch:hover{color:var(--accent)}
.popup-link{display:inline-flex;flex-direction:column;align-items:flex-start;flex:none;gap:8px}
.popup-launch{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:color .2s,border-color .2s,background .2s}
.popup-launch svg{width:13px;height:13px;flex:none}
.popup-launch:hover{color:#e8e9ef;border-color:rgba(var(--accent-rgb),.7);background:rgba(var(--accent-rgb),.08)}
.popup-link-note{max-width:210px;font-size:10px;line-height:1.5;color:#c0a5b8;letter-spacing:0}
.shell-mobile-menu{display:none;position:relative}
.shell-mobile-menu summary{cursor:pointer;font-size:10px;letter-spacing:.07em;list-style:none;padding:13px 0;color:#b6c1c1}
.shell-mobile-menu summary::-webkit-details-marker{display:none}
.shell-mobile-menu nav{position:absolute;z-index:30;top:42px;right:0;min-width:190px;padding:10px 18px;background:#111724;border:1px solid #ffffff26;box-shadow:0 16px 28px #0005}
.shell-mobile-menu nav a{display:block;padding:14px 0;font-size:11px;letter-spacing:.1em;color:#b6c1c1}
.shell-mobile-menu nav a[aria-current="page"]{color:var(--accent)}
@media(max-width:560px){.shell-mobile-menu{display:block}.shell-header .nav{gap:10px}.shell-header .navright{gap:10px}}
@media(max-width:360px){.shell-header .logo{width:90px;min-width:90px}.shell-header .navright{gap:8px}.shell-header .language-switch{padding-right:8px;gap:3px}.shell-header .language-switch>span{gap:3px}.shell-mobile-menu summary{font-size:9px}}


/* Shared fixed footer/player dock. Its measured height reserves the complete content area. */
#app>.prototyp{min-height:100vh;min-height:100dvh;padding-bottom:var(--bottom-dock-height,calc(152px + env(safe-area-inset-bottom,0px)))}
.prototyp .shell-bottom{position:fixed;top:auto;right:0;bottom:0;left:0;z-index:40;width:100%;padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid #ffffff22;background:#090d16}
.prototyp .shell-bottom .footer{margin-top:0;border-top:0;flex-wrap:wrap}
.footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px}
.footer-legal a{color:inherit;text-decoration:none;white-space:nowrap;transition:color .2s}
.footer-legal a:hover,.footer-legal a:focus-visible{color:#dde3e3}
.footer-legal a:focus-visible{outline:1px solid currentColor;outline-offset:4px}
.prototyp .shell-bottom .preview-player{position:static;bottom:auto;margin-top:0;border-top:0}
.shell-bottom .shell-footer{border-top:1px solid #ffffff22}
.shell-bottom .player-inner{min-width:0}
.shell-bottom .player-left{flex:1;min-width:0}
.shell-bottom .player-text{flex:1;min-width:0}
@media(max-width:800px){#app>.prototyp{padding-bottom:var(--bottom-dock-height,calc(180px + env(safe-area-inset-bottom,0px)))}}
@media(max-width:560px){.prototyp .shell-bottom .footer{gap:12px 22px}.footer-legal{gap:8px 14px}}
@media(max-height:450px){.prototyp .shell-bottom .footer{padding-top:10px;padding-bottom:10px;gap:6px 22px}.shell-bottom .player-inner{height:60px}}

/* Station information and legal navigation share the same compact dock. */
.prototyp .shell-bottom .footer{display:grid;grid-template-columns:auto 1fr auto;gap:16px 28px;padding-top:22px;padding-bottom:22px;letter-spacing:.07em}
.shell-bottom .footer strong{font-size:9px;letter-spacing:.11em;white-space:nowrap}
.shell-bottom .footer-legal{justify-content:center;gap:8px 16px;font-size:9px;line-height:1.6}
.footer-legal button{appearance:none;border:0;background:none;padding:0;font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;white-space:nowrap}
.footer-legal button:hover,.footer-legal button:focus-visible{color:#dde3e3}
.footer-legal button:focus-visible{outline:1px solid currentColor;outline-offset:4px}
.footer-tagline{font-size:9px;white-space:nowrap;text-align:right}
@media(max-width:1280px){.prototyp .shell-bottom .footer{grid-template-columns:1fr 1fr;gap:13px 24px;padding-top:17px;padding-bottom:17px}.shell-bottom .footer-legal{grid-column:1/-1;grid-row:2;justify-content:flex-start}.footer-tagline{grid-column:2;grid-row:1}}
@media(max-width:560px){.prototyp .shell-bottom .footer{gap:10px 16px;padding-top:14px;padding-bottom:14px}.shell-bottom .footer strong,.footer-tagline{font-size:8px;letter-spacing:.04em}.shell-bottom .footer-legal{gap:8px 16px;font-size:9px}.footer-tagline{white-space:normal;max-width:140px;justify-self:end;line-height:1.5}}
