*{box-sizing:border-box}html{font-family:Arial,Helvetica,sans-serif;background:#f3f4f6;color:#222}body{margin:0}a{color:var(--accent,#7a1515);text-decoration:none}button,.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:var(--accent,#7a1515);color:#fff;padding:.72rem 1rem;font-weight:700;cursor:pointer}.button.secondary,button.secondary{background:#e5e7eb;color:#222}input,textarea,select{width:100%;padding:.72rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font:inherit}label{display:grid;gap:.35rem;font-weight:700}.wrap{width:min(1120px,calc(100% - 2rem));margin:auto}.site-header{background:#111827;color:#fff;border-bottom:4px solid var(--accent,#7a1515)}.site-header .wrap{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.2rem 0}.brand{display:grid;color:#fff}.brand strong{font-size:1.45rem}.brand span{font-size:.85rem;color:#cbd5e1}.site-header nav{display:flex;gap:1rem;flex-wrap:wrap}.site-header nav a{color:#fff}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.5rem;padding:2rem 0}.content-card,.sidebar-card,.panel{background:#fff;border-radius:14px;padding:1.4rem;box-shadow:0 8px 30px rgba(15,23,42,.08)}.content-card h1{margin-top:0}.prose{line-height:1.7}.prose img{max-width:100%;height:auto}.post-link{display:grid;gap:.25rem;padding:.75rem 0;border-bottom:1px solid #e5e7eb}.post-link span,.muted{color:#64748b}.admin-link{display:block;margin-top:1rem;text-align:center}footer{background:#111827;color:#cbd5e1;padding:1.5rem 0;margin-top:2rem}.auth-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#111827,#374151)}.auth-card{width:min(440px,calc(100% - 2rem));background:#fff;padding:2rem;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.auth-card form{display:grid;gap:1rem;margin:1.2rem 0}.alert{padding:.8rem 1rem;border-radius:8px;margin:1rem 0}.alert.success{background:#dcfce7;color:#166534}.alert.error{background:#fee2e2;color:#991b1b}.admin-body{background:#eef2f7}.admin-nav{position:fixed;inset:0 auto 0 0;width:240px;background:#111827;color:#fff;padding:1.2rem}.admin-brand{display:block;color:#fff;font-weight:800;font-size:1.2rem;margin-bottom:1.5rem}.admin-nav nav{display:grid;gap:.3rem}.admin-nav nav a{color:#e5e7eb;padding:.7rem;border-radius:8px}.admin-nav nav a:hover{background:#374151}.admin-main{margin-left:240px;padding:1.5rem;min-height:100vh}.admin-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem}.admin-top h1{margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stats section{background:#fff;border-radius:14px;padding:1.4rem;display:grid;box-shadow:0 8px 30px rgba(15,23,42,.07)}.stats strong{font-size:2rem;color:var(--accent,#7a1515)}.toolbar{display:flex;justify-content:flex-end;margin-bottom:1rem}.table-wrap{overflow:auto;background:#fff;border-radius:14px;box-shadow:0 8px 30px rgba(15,23,42,.07)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.9rem;border-bottom:1px solid #e5e7eb}th{background:#f8fafc}.row-actions{display:flex;gap:.75rem;align-items:center}.row-actions form{margin:0}.link-danger{background:none;color:#b91c1c;padding:0}.badge{background:#e5e7eb;border-radius:999px;padding:.25rem .55rem;font-size:.8rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.full{grid-column:1/-1}.check{display:flex;align-items:center;gap:.5rem}.check input{width:auto}.actions{display:flex;gap:.75rem}.inline-form{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem}.media-grid article{background:#fff;border-radius:12px;padding:1rem;display:grid;gap:.7rem}.media-grid img{width:100%;height:140px;object-fit:cover;border-radius:8px}.file-icon{height:140px;display:grid;place-items:center;background:#e5e7eb;border-radius:8px;font-weight:800;font-size:2rem}
@media(max-width:800px){.layout{grid-template-columns:1fr}.site-header .wrap{align-items:flex-start;flex-direction:column}.admin-nav{position:static;width:auto}.admin-main{margin:0}.stats{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}}

/* Portal-Startlayout 1.2 */
.portal-wrap{width:min(var(--portal-width,1280px),calc(100% - 2rem));margin-inline:auto}.portal-layout{display:grid;gap:1.35rem;padding:2rem 0;align-items:start}.portal-three{grid-template-columns:var(--left-width,260px) minmax(0,1fr) var(--right-width,300px)}.portal-left{grid-template-columns:var(--left-width,260px) minmax(0,1fr)}.portal-right{grid-template-columns:minmax(0,1fr) var(--right-width,300px)}.portal-center{grid-template-columns:minmax(0,1fr)}.portal-sidebar{display:grid;gap:1rem}.portal-widget{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 8px 30px rgba(15,23,42,.08)}.portal-widget h2{margin:0;padding:.85rem 1rem;background:var(--accent,#7a1515);color:#fff;font-size:1.02rem}.widget-body{padding:1rem}.widget-link{display:grid;gap:.2rem;padding:.65rem 0;border-bottom:1px solid #e5e7eb}.widget-link:last-child{border-bottom:0}.widget-link span{font-size:.88rem;color:#64748b}.widget-menu-link{display:block;padding:.6rem .7rem;border-radius:7px;color:#1f2937}.widget-menu-link:hover{background:#f1f5f9;color:var(--accent)}.widget-search{display:grid;gap:.55rem}.widget-search button{width:100%}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.search-results{display:grid;gap:.75rem}.search-results a{display:grid;gap:.25rem;padding:1rem;border:1px solid #e5e7eb;border-radius:10px}.search-results span{color:#64748b}.portal-admin-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);gap:1.2rem}.widget-admin-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.9rem 0;border-bottom:1px solid #e5e7eb}.widget-admin-row>div:first-child{display:grid;gap:.25rem}.widget-admin-row span{font-size:.85rem;color:#64748b}.widget-admin-row .row-actions{flex-wrap:wrap;justify-content:flex-end}.widget-admin-row button{padding:.45rem .65rem}
@media(max-width:1050px){.portal-three{grid-template-columns:var(--left-width,240px) minmax(0,1fr)}.portal-three .portal-right{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-admin-grid{grid-template-columns:1fr}}
@media(max-width:760px){.portal-layout,.portal-three,.portal-left,.portal-right,.portal-center{grid-template-columns:1fr}.portal-three .portal-right{grid-column:auto;grid-template-columns:1fr}.widget-admin-row{align-items:flex-start;flex-direction:column}.widget-admin-row .row-actions{justify-content:flex-start}}

/* Header- und Footer-Verwaltung 1.3 */
.cms-custom-header{position:relative;min-height:var(--header-height,260px);display:flex;align-items:stretch;background:#111827;color:#fff;border-bottom:4px solid var(--accent,#7a1515);background-image:var(--header-image,none);background-size:cover;background-position:center}.header-overlay,.footer-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,7,18,.86),rgba(3,7,18,.42),rgba(3,7,18,.72));pointer-events:none}.header-inner{position:relative;z-index:1;min-height:var(--header-height,260px);display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem 0}.header-brand{display:flex;align-items:center;gap:1rem;max-width:min(760px,70%)}.header-logo{display:block;max-width:190px;max-height:120px;width:auto;height:auto;object-fit:contain}.header-copy{display:grid;gap:.25rem}.header-copy strong{font-size:clamp(1.6rem,4vw,3.4rem);line-height:1.05;text-shadow:0 3px 18px rgba(0,0,0,.6)}.header-copy>span{font-size:clamp(.9rem,1.5vw,1.18rem);color:#e2e8f0;text-shadow:0 2px 10px rgba(0,0,0,.7)}.cms-custom-header nav{display:flex;gap:1rem;flex-wrap:wrap;justify-content:flex-end}.cms-custom-header nav a{color:#fff;padding:.55rem .75rem;border-radius:7px;background:rgba(15,23,42,.45);backdrop-filter:blur(5px)}.cms-custom-header nav a:hover{background:var(--accent)}
.site-footer{position:relative;min-height:var(--footer-height,220px);display:flex;align-items:center;background:#111827;color:#e2e8f0;background-image:var(--footer-image,none);background-size:cover;background-position:center;margin-top:2rem}.footer-overlay{background:linear-gradient(90deg,rgba(3,7,18,.92),rgba(3,7,18,.58),rgba(3,7,18,.9))}.footer-inner{position:relative;z-index:1;display:grid;gap:.55rem;padding:2.2rem 0}.footer-title{font-size:1.5rem;color:#fff}.footer-extra{max-width:760px;line-height:1.55;color:#cbd5e1}
.design-editor{display:grid;gap:1.2rem;padding-bottom:5rem}.design-section h2{margin:0}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.switch-check{display:flex;align-items:center;gap:.55rem;background:#f1f5f9;padding:.65rem .85rem;border-radius:9px}.switch-check input{width:auto}.design-section small{font-weight:400;color:#64748b}.design-previews{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1.2rem}.design-previews figure{margin:0;padding:1rem;border:1px solid #e2e8f0;border-radius:12px;display:grid;gap:.75rem}.design-previews figcaption{font-weight:700}.design-previews img{width:100%;height:180px;object-fit:cover;border-radius:8px;background:#e2e8f0}.design-previews .preview-logo{object-fit:contain}.design-previews .link-danger{justify-self:start}.sticky-actions{position:fixed;left:240px;right:0;bottom:0;z-index:20;display:flex;gap:.75rem;padding:1rem 1.5rem;background:rgba(255,255,255,.94);border-top:1px solid #e2e8f0;box-shadow:0 -8px 25px rgba(15,23,42,.08);backdrop-filter:blur(8px)}
@media(max-width:800px){.header-inner{align-items:flex-start;flex-direction:column;justify-content:center}.header-brand{max-width:100%}.cms-custom-header nav{justify-content:flex-start}.header-logo{max-width:140px;max-height:90px}.section-heading{flex-direction:column}.sticky-actions{left:0}.design-previews{grid-template-columns:1fr}}

/* Direkter Adminzugang */
.admin-entry-link{font-weight:700;border:1px solid currentColor;border-radius:.45rem;padding:.45rem .75rem;text-decoration:none}
.admin-entry-link:hover{transform:translateY(-1px)}


/* Design-Manager 1.4 */
html{background:var(--theme-page,#f3f4f6);color:var(--theme-text,#222)}body{background-color:var(--theme-page,#f3f4f6);color:var(--theme-text,#222);min-height:100vh}.content-card,.sidebar-card,.panel,.portal-widget{background:var(--theme-surface,#fff);border-radius:var(--theme-radius,14px);box-shadow:var(--theme-shadow,0 8px 30px rgba(15,23,42,.08))}.cms-custom-header{background-position:var(--header-position,center)}.site-footer{background-position:var(--footer-position,center)}
.cms-theme-dark .prose,.cms-theme-dark .content-card,.cms-theme-dark .portal-widget,.cms-theme-radio .prose,.cms-theme-radio .content-card,.cms-theme-radio .portal-widget{color:var(--theme-text)}.cms-theme-dark .muted,.cms-theme-radio .muted{color:#aab3c2}.cms-theme-dark input,.cms-theme-dark textarea,.cms-theme-dark select,.cms-theme-radio input,.cms-theme-radio textarea,.cms-theme-radio select{background:#262b36;color:#fff;border-color:#454b58}.cms-theme-magazine .portal-widget h2{text-transform:uppercase;letter-spacing:.08em}.cms-theme-minimal .content-card,.cms-theme-minimal .portal-widget{border:1px solid #ddd}.cms-theme-radio .portal-widget h2{background:linear-gradient(90deg,#b31217,#7a0d10)}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.theme-card{position:relative;display:grid;gap:.7rem;padding:.75rem;border:2px solid #e2e8f0;border-radius:13px;cursor:pointer;background:#fff;transition:.18s}.theme-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(15,23,42,.12)}.theme-card.selected{border-color:var(--accent,#7a1515);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.theme-card input{position:absolute;right:.8rem;top:.8rem;width:auto;accent-color:var(--accent)}.theme-card img{width:100%;height:135px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.theme-card span{display:grid;gap:.25rem}.theme-card strong{font-size:1.05rem}.theme-card small{font-weight:400;color:#64748b;line-height:1.4}.theme-options{margin-top:1.2rem}.theme-options input[type=color]{height:48px;padding:.25rem}

/* Echte Grundlayouts 1.4.1 */
body[class*="cms-theme-"]{position:relative;background-attachment:fixed;transition:background-color .25s,color .25s}
body[class*="cms-theme-"]::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.34;background-repeat:no-repeat;background-size:cover;background-position:center}
body[class*="cms-theme-"] .content-card{padding:clamp(1.2rem,2.5vw,2.2rem)}
body[class*="cms-theme-"] .portal-widget,body[class*="cms-theme-"] .content-card{transition:transform .2s,box-shadow .2s,border-color .2s}
body[class*="cms-theme-"] .portal-widget:hover{transform:translateY(-2px)}

.cms-theme-portal::before{background-image:linear-gradient(135deg,rgba(139,30,30,.09),transparent 45%),repeating-linear-gradient(0deg,transparent 0 36px,rgba(31,41,55,.035) 37px)}
.cms-theme-portal .cms-custom-header{background-image:var(--header-image,linear-gradient(115deg,#591010 0%,#8b1e1e 55%,#b24a32 100%));border-bottom:7px solid #d7b45a}
.cms-theme-portal .portal-widget{border:1px solid #cfd6df;border-top:4px solid var(--accent)}
.cms-theme-portal .portal-widget h2{border-radius:0;background:linear-gradient(90deg,var(--accent),#5d1212)}
.cms-theme-portal .content-card{border-top:6px solid var(--accent)}

.cms-theme-modern::before{background-image:radial-gradient(circle at 12% 10%,rgba(37,99,235,.17),transparent 29%),radial-gradient(circle at 88% 22%,rgba(14,165,233,.14),transparent 26%),linear-gradient(160deg,transparent 50%,rgba(255,255,255,.75))}
.cms-theme-modern .cms-custom-header{background-image:var(--header-image,linear-gradient(120deg,#0f4bb7,#2563eb 48%,#38bdf8));border:0;border-radius:0 0 42px 42px;overflow:hidden}
.cms-theme-modern .header-overlay{background:linear-gradient(90deg,rgba(5,25,70,.67),rgba(5,25,70,.12))}
.cms-theme-modern .content-card,.cms-theme-modern .portal-widget{border:1px solid rgba(37,99,235,.1);backdrop-filter:blur(8px)}
.cms-theme-modern .portal-widget h2{background:linear-gradient(100deg,#2563eb,#38bdf8)}
.cms-theme-modern .site-main-nav a{border-radius:999px}

.cms-theme-dark::before{background-image:radial-gradient(circle at 20% 15%,rgba(245,158,11,.14),transparent 25%),linear-gradient(135deg,rgba(255,255,255,.025) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.025) 50%,rgba(255,255,255,.025) 75%,transparent 75%);background-size:cover,48px 48px}
.cms-theme-dark .cms-custom-header{background-image:var(--header-image,linear-gradient(110deg,#05070b,#171b24 58%,#2d2414));border-bottom:2px solid #f59e0b}
.cms-theme-dark .content-card,.cms-theme-dark .portal-widget{border:1px solid #2e3542}
.cms-theme-dark .portal-widget h2{background:#0b0e14;border-left:5px solid #f59e0b}
.cms-theme-dark .widget-menu-link{color:#f3f4f6}.cms-theme-dark .widget-menu-link:hover{background:#242a35}

.cms-theme-business::before{background-image:linear-gradient(120deg,rgba(30,79,122,.08),transparent 43%),repeating-linear-gradient(90deg,transparent 0 119px,rgba(30,79,122,.035) 120px)}
.cms-theme-business .cms-custom-header{background-image:var(--header-image,linear-gradient(105deg,#142c42,#1e4f7a 62%,#507ca1));border-bottom:10px solid #d3dce5}
.cms-theme-business .content-card,.cms-theme-business .portal-widget{border-radius:4px;border:1px solid #cbd5df;box-shadow:0 4px 12px rgba(30,79,122,.09)}
.cms-theme-business .portal-widget h2{background:#1e4f7a;border-bottom:3px solid #9fb7ca;text-transform:uppercase;font-size:.92rem;letter-spacing:.05em}
.cms-theme-business .site-main-nav a{border-radius:2px}

.cms-theme-radio::before{background-image:radial-gradient(circle at 15% 20%,rgba(179,18,23,.28),transparent 24%),radial-gradient(circle at 85% 75%,rgba(217,165,20,.17),transparent 22%),repeating-linear-gradient(135deg,rgba(255,255,255,.02) 0 2px,transparent 2px 18px)}
.cms-theme-radio .cms-custom-header{background-image:var(--header-image,linear-gradient(100deg,#050505,#260708 48%,#b31217));border-bottom:7px solid #d9a514}
.cms-theme-radio .header-copy strong{color:#f4c542;text-transform:uppercase;letter-spacing:.04em}
.cms-theme-radio .content-card,.cms-theme-radio .portal-widget{border:1px solid #3a2525;box-shadow:0 12px 34px rgba(179,18,23,.18)}
.cms-theme-radio .content-card{border-top:5px solid #d9a514}
.cms-theme-radio .portal-widget h2{color:#ffe7a3;border-bottom:2px solid #d9a514}
.cms-theme-radio a{color:#e8bc39}

.cms-theme-magazine::before{background-image:linear-gradient(90deg,transparent 0 69%,rgba(192,38,45,.055) 69% 70%,transparent 70%),repeating-linear-gradient(0deg,transparent 0 29px,rgba(0,0,0,.025) 30px)}
.cms-theme-magazine .cms-custom-header{background-image:var(--header-image,linear-gradient(90deg,#111 0 67%,#c0262d 67%));min-height:min(var(--header-height),220px);border-bottom:0}
.cms-theme-magazine .content-card,.cms-theme-magazine .portal-widget{border-radius:0;box-shadow:none;border:1px solid #d7d1c8}
.cms-theme-magazine .content-card h1{font-family:Georgia,serif;font-size:clamp(2rem,5vw,4rem);line-height:1}
.cms-theme-magazine .portal-widget h2{background:#111;border-bottom:5px solid #c0262d}
.cms-theme-magazine .portal-layout{gap:1rem}

.cms-theme-elegant::before{background-image:radial-gradient(ellipse at top,rgba(124,92,62,.15),transparent 45%),repeating-linear-gradient(45deg,rgba(124,92,62,.025) 0 1px,transparent 1px 12px)}
.cms-theme-elegant .cms-custom-header{background-image:var(--header-image,linear-gradient(110deg,#372b22,#7c5c3e 60%,#b49372));border-bottom:1px solid #d8c4ab}
.cms-theme-elegant .header-copy strong,.cms-theme-elegant .content-card h1{font-family:Georgia,"Times New Roman",serif;font-weight:500}
.cms-theme-elegant .content-card,.cms-theme-elegant .portal-widget{border:1px solid #dfd1bf;box-shadow:0 12px 30px rgba(70,45,25,.08)}
.cms-theme-elegant .portal-widget h2{background:#fffdf8;color:#5c4029;border-bottom:2px solid #b49372;font-family:Georgia,serif}

.cms-theme-minimal::before{display:none}
.cms-theme-minimal .cms-custom-header{min-height:min(var(--header-height),180px);background-image:var(--header-image,linear-gradient(#fff,#fff));color:#111;border:0;border-bottom:1px solid #ddd}
.cms-theme-minimal .header-overlay{display:none}.cms-theme-minimal .header-copy strong{color:#111;text-shadow:none}.cms-theme-minimal .header-copy>span{color:#555;text-shadow:none}
.cms-theme-minimal .cms-custom-header nav a{color:#111;background:transparent;border-bottom:1px solid transparent;border-radius:0}.cms-theme-minimal .cms-custom-header nav a:hover{border-bottom-color:#111}
.cms-theme-minimal .content-card,.cms-theme-minimal .portal-widget{box-shadow:none;border:1px solid #ddd}
.cms-theme-minimal .portal-widget h2{background:transparent;color:#111;border-bottom:1px solid #ddd;font-weight:600}
.cms-theme-minimal .site-footer{background:#fff;color:#444;border-top:1px solid #ddd}.cms-theme-minimal .footer-title{color:#111}.cms-theme-minimal .footer-overlay{display:none}

/* Theme-Auswahl zeigt sofort eine visuelle Markierung */
.theme-card.is-preview{outline:4px solid rgba(37,99,235,.18);transform:translateY(-3px)}


/* Portal-Neudesign 1.5.0 */
:root{--content-max:1380px;--nav-height:64px}
body{background:var(--theme-page,#edf1f6);line-height:1.55}
.portal-wrap{width:min(var(--portal-width,1280px),calc(100% - clamp(1rem,4vw,3rem)))}
.cms-custom-header{min-height:var(--header-height,240px);display:grid;align-items:end;margin:0;border-radius:0;background-size:cover;background-position:var(--header-position,center);position:relative;overflow:hidden}
.cms-custom-header::after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(transparent,rgba(0,0,0,.32));pointer-events:none}
.header-overlay{background:linear-gradient(90deg,rgba(7,12,24,.78) 0%,rgba(7,12,24,.43) 48%,rgba(7,12,24,.18) 100%)}
.hero-inner{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;padding:clamp(2rem,5vw,4rem) 0 clamp(1.8rem,4vw,3rem)}
.header-brand{display:flex;align-items:center;gap:1.2rem;max-width:min(760px,70%)}
.header-logo{width:auto;max-width:180px;max-height:110px;filter:drop-shadow(0 8px 20px rgba(0,0,0,.35))}
.header-copy{display:grid;gap:.25rem;color:#fff;text-shadow:0 3px 16px rgba(0,0,0,.48)}
.header-copy .eyebrow{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.74)}
.header-copy strong{font-size:clamp(2.1rem,5vw,4.7rem);line-height:.95;letter-spacing:-.045em}
.header-copy>span:last-child{font-size:clamp(.95rem,1.6vw,1.2rem);color:rgba(255,255,255,.83);max-width:56ch}
.hero-actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}
.hero-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1rem;border-radius:999px;background:var(--accent);color:#fff;font-weight:800;border:1px solid transparent;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.hero-button-ghost{background:rgba(10,15,24,.42);border-color:rgba(255,255,255,.55);backdrop-filter:blur(8px)}
.main-nav-shell{position:sticky;top:0;z-index:50;background:rgba(15,20,30,.94);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 10px 25px rgba(15,23,42,.15);backdrop-filter:blur(14px)}
.nav-inner{min-height:var(--nav-height);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.site-main-nav{display:flex;gap:.25rem;align-items:center;flex-wrap:wrap}
.site-main-nav a,.nav-admin-link{color:#e8edf5;padding:.72rem .9rem;border-radius:8px;font-weight:700;font-size:.94rem}
.site-main-nav a:hover,.nav-admin-link:hover{background:rgba(255,255,255,.09);color:#fff}
.nav-admin-link{border:1px solid rgba(255,255,255,.24)}
.portal-layout{position:relative;padding:clamp(1.5rem,3vw,2.7rem) 0 clamp(3rem,6vw,5rem);gap:1.15rem}
.portal-intro{grid-column:1/-1;display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap;padding:.15rem .15rem .7rem;color:var(--theme-text)}
.portal-intro .portal-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:900;color:var(--accent)}
.portal-intro strong{font-size:clamp(1.5rem,3vw,2.25rem)}
.portal-intro>span:last-child{color:#687386}
.content-card,.portal-widget{border:1px solid rgba(100,116,139,.15);box-shadow:0 14px 40px rgba(15,23,42,.09)}
.content-card{padding:clamp(1.4rem,3vw,2.5rem);min-height:300px}
.content-card h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;letter-spacing:-.035em;margin-bottom:1.4rem}
.prose{font-size:1.02rem;line-height:1.8}.prose p:first-child{font-size:1.08rem;color:#4b5563}
.portal-sidebar{gap:1rem}.portal-widget{overflow:hidden}
.portal-widget h2{padding:.85rem 1rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.07em;background:transparent;color:var(--theme-text);border-bottom:1px solid rgba(100,116,139,.16);position:relative}
.portal-widget h2::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}
.widget-body{padding:1rem}.widget-link{padding:.72rem 0}.widget-link strong{line-height:1.3}
.widget-menu-link{font-weight:700}.widget-menu-link:hover{transform:translateX(3px)}
.cms-theme-radio .portal-widget h2,.cms-theme-dark .portal-widget h2{background:rgba(255,255,255,.025);color:var(--theme-text);border-bottom-color:rgba(255,255,255,.09)}
.cms-theme-radio .content-card,.cms-theme-radio .portal-widget,.cms-theme-dark .content-card,.cms-theme-dark .portal-widget{background:color-mix(in srgb,var(--theme-surface) 94%,transparent)}
.site-footer{position:relative;min-height:var(--footer-height,260px);margin:0;padding:0;background-size:cover;background-position:var(--footer-position,center);color:#dce2eb;overflow:hidden}
.site-footer:not(.has-footer-image){background:#0f141e}
.footer-overlay{background:linear-gradient(90deg,rgba(8,12,20,.94),rgba(8,12,20,.78))}
.footer-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:clamp(1.5rem,5vw,4rem);padding:clamp(2.4rem,5vw,4rem) 0 2rem}
.footer-grid section{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem}.footer-grid p{margin:0;color:#b8c0cd;max-width:52ch}
.footer-kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:#cdd4df;font-weight:800}.footer-title{font-size:clamp(1.5rem,3vw,2.35rem);color:#fff}.footer-heading{color:#fff;font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem}.footer-grid a{color:#cbd3df}.footer-grid a:hover{color:#fff}
.footer-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.12);font-size:.82rem;color:#9da8b7}
@media(max-width:900px){.hero-inner{align-items:flex-start;flex-direction:column}.header-brand{max-width:100%}.hero-actions{justify-content:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid section:first-child{grid-column:1/-1}}
@media(max-width:700px){.cms-custom-header{min-height:220px}.header-logo{max-width:130px;max-height:80px}.main-nav-shell{position:relative}.nav-inner{align-items:flex-start;flex-direction:column;padding:.65rem 0}.site-main-nav{width:100%}.site-main-nav a{flex:1 1 auto;text-align:center}.nav-admin-link{width:100%;text-align:center}.portal-layout{padding-top:1.2rem}.footer-grid{grid-template-columns:1fr}.footer-grid section:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.portal-intro{align-items:flex-start;flex-direction:column;gap:.2rem}}


/* Professionelles Radio Design 1.6.0 */
body.cms-theme-radio{--accent:#e00022;--radio-gold:#ffca28;--radio-ink:#07080c;--radio-panel:#12141b;background:#07080c;color:#f7f7f8;padding-bottom:92px}
.cms-theme-radio::before{position:fixed;inset:0;background:radial-gradient(circle at 10% 15%,rgba(224,0,34,.14),transparent 30%),radial-gradient(circle at 90% 30%,rgba(255,202,40,.08),transparent 25%),linear-gradient(180deg,#08090d,#0e1016);z-index:-2}
.radio-topbar{background:#050609;border-bottom:1px solid rgba(255,255,255,.08);color:#b8bec9;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}
.radio-topbar-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.radio-topbar-inner>span:first-child{color:#fff;font-weight:900}
.live-dot{display:inline-block;width:.58rem;height:.58rem;border-radius:50%;background:#ff1838;box-shadow:0 0 0 0 rgba(255,24,56,.65);animation:radioPulse 1.8s infinite;margin-right:.32rem}@keyframes radioPulse{70%{box-shadow:0 0 0 9px rgba(255,24,56,0)}100%{box-shadow:0 0 0 0 rgba(255,24,56,0)}}
.cms-theme-radio .radio-hero{min-height:var(--header-height,330px);background-image:var(--header-image,linear-gradient(115deg,#090a0f 0%,#1e0710 48%,#670719 100%));border:0}
.cms-theme-radio .radio-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,7,10,.95) 0%,rgba(6,7,10,.58) 54%,rgba(6,7,10,.35)),repeating-linear-gradient(90deg,transparent 0 55px,rgba(255,255,255,.018) 56px)}
.cms-theme-radio .header-overlay{background:linear-gradient(90deg,rgba(4,5,8,.56),rgba(38,0,10,.3))}.cms-theme-radio .hero-inner{align-items:center;padding-block:3.2rem}.cms-theme-radio .header-brand{max-width:62%}.cms-theme-radio .header-copy strong{color:#fff;font-size:clamp(2.9rem,6vw,6rem);letter-spacing:-.055em;text-transform:none}.cms-theme-radio .header-copy .eyebrow{color:var(--radio-gold)}
.hero-onair{width:min(350px,36%);background:rgba(12,13,18,.82);border:1px solid rgba(255,255,255,.12);border-top:4px solid var(--accent);border-radius:18px;padding:1.25rem;display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;align-items:center;box-shadow:0 24px 70px rgba(0,0,0,.42);backdrop-filter:blur(14px)}.hero-onair .onair-label{grid-column:1/-1;color:#ff8d9d;font-size:.72rem;font-weight:900;letter-spacing:.14em}.hero-onair strong{font-size:1.22rem;line-height:1.15}.hero-onair>span:not(.onair-label){color:#aeb4c0;font-size:.9rem}.hero-play{grid-column:2;grid-row:2/4;width:58px;height:58px;border-radius:50%;padding:0;background:var(--accent);font-size:1.15rem;box-shadow:0 0 0 7px rgba(224,0,34,.16)}
.pause-icon{display:none}.radio-is-playing .play-icon{display:none}.radio-is-playing .pause-icon{display:inline}.radio-is-playing .player-bars i{animation-play-state:running}
.cms-theme-radio .main-nav-shell{background:rgba(8,9,13,.96);border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.1)}.nav-station{color:#fff;font-weight:950;letter-spacing:-.03em;font-size:1.05rem;white-space:nowrap}.cms-theme-radio .site-main-nav a{color:#d3d6dc;border-radius:0;border-bottom:3px solid transparent}.cms-theme-radio .site-main-nav a:hover{background:transparent;color:#fff;border-bottom-color:var(--accent)}
.cms-theme-radio .portal-intro{display:none}.cms-theme-radio .portal-layout{padding-top:1.6rem}.cms-theme-radio .content-card,.cms-theme-radio .portal-widget{background:rgba(18,20,27,.95);border:1px solid rgba(255,255,255,.08);border-radius:14px;box-shadow:0 18px 55px rgba(0,0,0,.25)}.cms-theme-radio .content-card{border-top:0}.cms-theme-radio .content-card h1{color:#fff}.cms-theme-radio .prose,.cms-theme-radio .prose p:first-child{color:#c8ccd4}.cms-theme-radio .portal-widget h2{color:#fff;background:#0d0f14;border-bottom:1px solid rgba(255,255,255,.08)}.cms-theme-radio .portal-widget h2::before{background:var(--accent)}
.radio-dashboard{display:grid;gap:1rem;margin-bottom:1rem}.radio-feature{position:relative;overflow:hidden;min-height:270px;padding:clamp(1.5rem,4vw,3rem);border-radius:18px;background:radial-gradient(circle at 82% 45%,rgba(224,0,34,.36),transparent 23%),linear-gradient(120deg,#161821,#2a0710);border:1px solid rgba(255,255,255,.09);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.radio-feature::after{content:"";position:absolute;right:-30px;bottom:-65px;width:290px;height:290px;border:38px solid rgba(255,255,255,.045);border-radius:50%;box-shadow:0 0 0 32px rgba(255,255,255,.025)}.feature-kicker{color:#ff8d9d;font-size:.76rem;font-weight:900;letter-spacing:.16em}.radio-feature h2{font-size:clamp(2rem,5vw,4.2rem);line-height:.96;max-width:720px;margin:.65rem 0 .3rem;letter-spacing:-.04em;z-index:1}.radio-feature p{color:#b8bec9;font-size:1.05rem;z-index:1}.feature-play{z-index:1;margin-top:1rem;border-radius:999px;padding:.9rem 1.2rem;background:var(--accent)}
.radio-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.radio-quick-grid a{display:grid;grid-template-columns:auto 1fr;gap:.15rem .8rem;align-items:center;padding:1rem;border-radius:14px;background:#12141b;border:1px solid rgba(255,255,255,.08);color:#fff;transition:.2s}.radio-quick-grid a:hover{transform:translateY(-3px);border-color:rgba(224,0,34,.6);background:#171922}.radio-quick-grid span{grid-row:1/3;font-size:1.6rem}.radio-quick-grid small{color:#969eab}
.radio-player{position:fixed;left:0;right:0;bottom:0;z-index:100;background:rgba(8,9,13,.97);border-top:1px solid rgba(255,255,255,.12);box-shadow:0 -16px 45px rgba(0,0,0,.4);backdrop-filter:blur(16px)}.radio-player-inner{height:78px;display:flex;align-items:center;gap:1rem}.player-toggle{width:48px;height:48px;border-radius:50%;padding:0;flex:none}.player-meta{min-width:0;display:grid;line-height:1.15}.player-meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.player-meta>span:last-child{font-size:.83rem;color:#9da5b2}.player-kicker{font-size:.62rem!important;color:#ff8092!important;font-weight:900;letter-spacing:.12em}.player-bars{margin-left:auto;display:flex;align-items:center;gap:3px;height:28px}.player-bars i{display:block;width:3px;height:8px;background:var(--accent);border-radius:3px;animation:bar 700ms ease-in-out infinite alternate;animation-play-state:paused}.player-bars i:nth-child(2){animation-delay:120ms;height:18px}.player-bars i:nth-child(3){animation-delay:240ms;height:25px}.player-bars i:nth-child(4){animation-delay:360ms;height:14px}.player-bars i:nth-child(5){animation-delay:480ms;height:21px}@keyframes bar{to{transform:scaleY(.35)}}.volume-control{display:flex;align-items:center;gap:.55rem;width:150px}.volume-control input{padding:0;accent-color:var(--accent)}
.cms-theme-radio .site-footer{background:#08090d;border-top:1px solid rgba(255,255,255,.08)}.cms-theme-radio .footer-overlay{background:linear-gradient(90deg,rgba(5,6,9,.96),rgba(15,4,8,.88))}.cms-theme-radio .footer-title{color:#fff}.cms-theme-radio .footer-kicker{color:var(--radio-gold)}
@media(max-width:980px){.cms-theme-radio .header-brand{max-width:100%}.hero-onair{width:100%;max-width:430px}.cms-theme-radio .hero-inner{align-items:flex-start}.nav-station{display:none}.radio-quick-grid{grid-template-columns:1fr}}
@media(max-width:700px){body.cms-theme-radio{padding-bottom:82px}.radio-topbar-inner>span:last-child{display:none}.hero-onair{display:none}.cms-theme-radio .header-copy strong{font-size:clamp(2.6rem,14vw,4.3rem)}.radio-player-inner{height:70px}.player-bars,.volume-control{display:none}.radio-quick-grid{grid-template-columns:1fr}.radio-feature{min-height:230px}.cms-theme-radio .site-main-nav{overflow-x:auto;flex-wrap:nowrap}.cms-theme-radio .site-main-nav a{white-space:nowrap;flex:none}.cms-theme-radio .nav-inner{flex-direction:row;align-items:center}.cms-theme-radio .nav-admin-link{width:auto}}

/* Radio functions 1.6.1 */
.radio-page{padding-top:34px;padding-bottom:70px}.radio-page>.content-card{max-width:1180px;margin:0 auto}.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}.schedule-day{background:var(--theme-surface,#fff);border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:20px}.schedule-day h2{margin:0 0 14px}.schedule-show{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:15px 0;border-top:1px solid rgba(148,163,184,.2)}.schedule-show:first-of-type{border-top:0}.schedule-show time{font-weight:800;color:var(--accent)}.schedule-show strong,.schedule-show span{display:block}.schedule-show p{margin:8px 0 0}.wish-card{max-width:760px!important}.wish-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.wish-form label{display:grid;gap:8px;font-weight:700}.wish-form label:nth-of-type(4),.wish-form label:nth-of-type(5){grid-column:1/-1}.wish-form input,.wish-form textarea{width:100%;padding:12px 14px;border:1px solid rgba(148,163,184,.4);border-radius:10px;background:#fff;color:#111827}.hp-field{position:absolute!important;left:-9999px!important}.table-wrap{overflow:auto;margin-top:20px}.table-wrap table{width:100%;border-collapse:collapse}.table-wrap th,.table-wrap td{padding:12px;border-bottom:1px solid rgba(148,163,184,.24);text-align:left;vertical-align:top}.inline{display:inline}.inline select{min-width:110px}@media(max-width:760px){.schedule-grid{grid-template-columns:1fr}.wish-form{grid-template-columns:1fr}.wish-form label{grid-column:1!important}.schedule-show{grid-template-columns:1fr;gap:4px}}

/* Professional Radio Portal 1.6.4 */
body.cms-theme-radio{--radio-panel:#11141c;--radio-panel-2:#171b25;--radio-line:rgba(255,255,255,.09);--radio-muted:#a8afbc;background:#080a0f;color:#f6f7fa}
.cms-theme-radio .radio-hero{min-height:190px!important;max-height:none}
.cms-theme-radio .hero-inner{min-height:190px;padding-block:1.45rem;gap:1.4rem}
.cms-theme-radio .header-logo{max-height:82px;max-width:150px}
.cms-theme-radio .header-copy strong{font-size:clamp(2rem,4vw,3.8rem)}
.cms-theme-radio .header-copy span{font-size:.95rem}
.cms-theme-radio .hero-onair{padding:1rem 1.1rem;border-radius:14px;width:min(360px,38%)}
.cms-theme-radio .hero-play{width:50px;height:50px}
.cms-theme-radio .portal-layout{background:rgba(8,10,15,.78);padding:1.25rem 0 3rem;align-items:start}
.cms-theme-radio .portal-center{min-width:0}
.cms-theme-radio .content-card,.cms-theme-radio .portal-widget,.cms-theme-radio .schedule-day{background:linear-gradient(180deg,rgba(23,27,37,.98),rgba(15,18,25,.98));border:1px solid var(--radio-line);color:#eef1f6}
.cms-theme-radio .content-card{padding:clamp(1.2rem,2.4vw,2rem)}
.cms-theme-radio .prose,.cms-theme-radio .prose p,.cms-theme-radio .muted{color:var(--radio-muted)}
.cms-theme-radio .portal-widget{overflow:hidden;margin-bottom:1rem;box-shadow:0 14px 40px rgba(0,0,0,.28)}
.cms-theme-radio .portal-widget h2{font-size:.92rem;letter-spacing:.035em;text-transform:uppercase;padding:.9rem 1rem;background:#0d1016}
.cms-theme-radio .portal-widget .widget-body{padding:1rem;color:#cdd2dc}
.cms-theme-radio .portal-widget p{margin:.1rem 0 .85rem;line-height:1.58}
.cms-theme-radio .widget-welcome{border-top:3px solid var(--accent)}
.welcome-mark{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#ff526a);color:#fff;font-size:1.3rem;margin-bottom:.75rem;box-shadow:0 8px 24px rgba(224,0,34,.28)}
.widget-text-link{display:inline-flex;color:#ff7186;font-size:.84rem;font-weight:800;margin-top:.3rem}
.widget-text-link:hover{color:#fff}
.cms-theme-radio .widget-login{border-top:3px solid var(--radio-gold)}
.portal-login-form{margin:0}.full-button{width:100%;display:flex;justify-content:center;align-items:center;text-align:center;border-radius:9px;padding:.78rem 1rem}
.login-copy{color:var(--radio-muted)}
.login-status{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.login-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:900}.login-status div{display:grid}.login-status small{color:var(--radio-muted)}
.mini-show{display:grid;grid-template-columns:52px 1fr;gap:.7rem;padding:.68rem 0;border-bottom:1px solid var(--radio-line);color:#eef1f6}.mini-show time{color:#ff7186;font-weight:900}.mini-show span{display:grid;min-width:0}.mini-show strong{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-show small{color:var(--radio-muted)}
.widget-now-meta{display:grid;gap:.25rem;margin-bottom:1rem}.widget-now-meta strong{font-size:1.05rem;color:#fff}.widget-now-meta>span:last-child{font-size:.85rem;color:var(--radio-muted)}.onair-chip{font-size:.66rem;font-weight:900;letter-spacing:.13em;color:#ff7186}
.cms-theme-radio .radio-feature{min-height:220px;background:radial-gradient(circle at 80% 40%,rgba(224,0,34,.31),transparent 25%),linear-gradient(125deg,#171b25,#270810);padding:1.6rem 1.8rem;display:grid;grid-template-columns:1fr auto;align-items:center}
.radio-wave{height:110px;display:flex;align-items:center;gap:7px;padding-right:1rem}.radio-wave i{display:block;width:6px;height:35%;border-radius:99px;background:linear-gradient(180deg,#ff6a7f,var(--accent));animation:waveBar 1s ease-in-out infinite alternate}.radio-wave i:nth-child(2){height:70%;animation-delay:.12s}.radio-wave i:nth-child(3){height:45%;animation-delay:.24s}.radio-wave i:nth-child(4){height:90%;animation-delay:.36s}.radio-wave i:nth-child(5){height:58%;animation-delay:.48s}.radio-wave i:nth-child(6){height:78%;animation-delay:.6s}.radio-wave i:nth-child(7){height:38%;animation-delay:.72s}@keyframes waveBar{to{transform:scaleY(.42);opacity:.65}}
.cms-theme-radio .radio-feature h2{font-size:clamp(1.8rem,4vw,3.5rem)}
.cms-theme-radio .radio-quick-grid a{background:linear-gradient(180deg,#181c26,#11141b);border-color:var(--radio-line)}
.cms-theme-radio .radio-quick-grid a:hover{background:#1b202b}
.cms-theme-radio .site-footer{margin-top:0}
@media(max-width:1100px){.cms-theme-radio .radio-hero{min-height:210px!important}.cms-theme-radio .hero-inner{min-height:210px}.cms-theme-radio .portal-layout{padding-inline:1rem}.radio-wave{display:none}}
@media(max-width:760px){.cms-theme-radio .radio-hero{min-height:170px!important}.cms-theme-radio .hero-inner{min-height:170px}.cms-theme-radio .radio-feature{grid-template-columns:1fr;min-height:210px}.cms-theme-radio .portal-layout{padding-inline:.75rem}.cms-theme-radio .portal-widget{margin-bottom:.8rem}}


/* Automatic responsive header 1.6.5 */
.cms-theme-radio .radio-hero{
  min-height:clamp(128px,16vw,var(--header-height-preferred,190px))!important;
  height:auto;
  max-height:none;
}
.cms-theme-radio .hero-inner{
  min-height:clamp(128px,16vw,var(--header-height-preferred,190px));
  height:auto;
  padding-block:clamp(.8rem,2vw,1.35rem);
  gap:clamp(.8rem,2vw,1.4rem);
}
.cms-theme-radio .header-brand{min-width:0;flex:1 1 auto}
.cms-theme-radio .header-logo{
  max-height:clamp(54px,7vw,82px);
  max-width:clamp(96px,13vw,150px);
}
.cms-theme-radio .header-copy strong{font-size:clamp(1.65rem,4vw,3.8rem)}
.cms-theme-radio .hero-onair{flex:0 1 360px;min-width:250px}
@media(max-width:1100px){
  .cms-theme-radio .radio-hero{min-height:clamp(140px,22vw,190px)!important}
  .cms-theme-radio .hero-inner{min-height:clamp(140px,22vw,190px)}
}
@media(max-width:760px){
  .cms-theme-radio .radio-hero{min-height:auto!important}
  .cms-theme-radio .hero-inner{min-height:clamp(112px,30vw,155px);padding-block:.85rem}
  .cms-theme-radio .header-brand{width:100%;gap:.75rem}
  .cms-theme-radio .header-logo{max-height:clamp(46px,15vw,68px);max-width:clamp(82px,27vw,120px)}
  .cms-theme-radio .header-copy strong{font-size:clamp(1.45rem,8.5vw,2.55rem)}
  .cms-theme-radio .header-copy .eyebrow{font-size:.62rem;letter-spacing:.12em}
  .cms-theme-radio .header-copy>span:last-child{font-size:.82rem;line-height:1.35}
}
@media(max-width:430px){
  .cms-theme-radio .header-logo{max-width:92px;max-height:52px}
  .cms-theme-radio .header-copy strong{font-size:clamp(1.35rem,8vw,2rem)}
}

/* Moderators and legal pages 1.6.6 */
.moderator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-top:1.5rem}.moderator-card{display:block;overflow:hidden;border:1px solid var(--radio-line,rgba(255,255,255,.1));border-radius:16px;background:#11141c;color:#eef1f6;text-decoration:none;transition:.2s}.moderator-card:hover{transform:translateY(-3px);border-color:var(--accent)}.moderator-card img,.moderator-placeholder{width:100%;aspect-ratio:4/3;object-fit:cover;display:grid;place-items:center;background:#222733;font-size:4rem}.moderator-card>div{padding:1rem}.moderator-card h2{margin:0 0 .25rem}.moderator-card strong,.moderator-card small{display:block}.moderator-card small,.moderator-card p{color:#a8afbc}.moderator-profile{display:grid;grid-template-columns:minmax(240px,360px) 1fr;gap:2rem;margin-top:1.25rem}.moderator-profile>img{width:100%;border-radius:18px;object-fit:cover}.moderator-time{color:var(--accent);font-weight:800}.moderator-links{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.moderator-links a,.back-link{display:inline-flex;padding:.55rem .8rem;border-radius:8px;background:#252b38;color:#fff}.legal-card{max-width:980px!important}.legal-card .prose h2{margin-top:1.8rem}.admin-avatar{width:54px;height:54px;border-radius:50%;object-fit:cover}.link-button{border:0;background:none;color:var(--accent);padding:0;cursor:pointer}.form-grid .full{grid-column:1/-1}@media(max-width:900px){.moderator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.moderator-profile{grid-template-columns:1fr}}@media(max-width:560px){.moderator-grid{grid-template-columns:1fr}}

/* Grunddesign 1.6.8: durchgaengig dunkler Radio-Hintergrund */
html{min-height:100%;background:#080a0f;color:#eef1f6}
body{min-height:100vh;position:relative;background-color:#080a0f!important;background-size:cover!important;background-position:center top!important;color:#eef1f6}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(5,7,11,calc(var(--background-overlay-strength,72)/100)),rgba(5,7,11,calc(var(--background-overlay-strength,72)/100))),radial-gradient(circle at 15% 10%,rgba(224,0,34,.17),transparent 33%),radial-gradient(circle at 85% 20%,rgba(255,191,0,.08),transparent 28%)}
body::after{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(180deg,rgba(7,8,12,.16),#080a0f 95%)}
.portal-layout,.radio-page{position:relative;background:rgba(8,10,15,.70)!important;border-left:1px solid rgba(255,255,255,.035);border-right:1px solid rgba(255,255,255,.035);box-shadow:0 0 70px rgba(0,0,0,.42)}
.portal-center,.portal-sidebar{position:relative;z-index:1}
.content-card,.portal-widget,.schedule-day,.moderator-card,.legal-card{background:linear-gradient(180deg,rgba(24,28,38,.94),rgba(12,15,21,.96))!important;color:#eef1f6!important;border:1px solid rgba(255,255,255,.09)!important;box-shadow:0 16px 44px rgba(0,0,0,.32)!important;backdrop-filter:blur(12px)}
.content-card h1,.content-card h2,.content-card h3,.portal-widget strong,.schedule-day h2{color:#fff}
.content-card p,.content-card li,.prose,.prose p,.muted,.widget-body{color:#b9c0cc}
.content-card input,.content-card textarea,.content-card select,.portal-widget input,.portal-widget textarea,.portal-widget select{background:rgba(5,7,11,.78);color:#f7f8fa;border-color:rgba(255,255,255,.15)}
.content-card input::placeholder,.portal-widget input::placeholder{color:#7f8795}
.site-footer{margin-top:0!important;background:rgba(5,7,11,.96)!important}
@media(max-width:760px){.portal-layout,.radio-page{border:0;box-shadow:none;background:rgba(8,10,15,.78)!important}}


/* Einheitliche Portalbreite 1.6.8.3: Header, Navigation und Footer buendig zu den Boxen */
.radio-topbar,.radio-hero,.main-nav-shell,.site-footer{background:transparent!important;border:0!important;box-shadow:none!important}
.radio-topbar{padding-top:.55rem}
.radio-topbar-inner{background:rgba(8,10,15,.92);border:1px solid rgba(255,255,255,.08);border-bottom:0;border-radius:14px 14px 0 0;padding-inline:1rem}
.header-shell{position:relative;overflow:hidden;min-height:clamp(128px,16vw,var(--header-height-preferred,190px));background-color:#11141c;background-image:var(--header-image);background-size:cover;background-position:var(--header-position,center);border:1px solid rgba(255,255,255,.09);border-radius:0;box-shadow:0 18px 55px rgba(0,0,0,.34)}
.header-shell .header-overlay{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(5,7,11,.93),rgba(5,7,11,.58))}
.header-shell .hero-inner{position:relative;z-index:1;width:100%;margin:0;padding-inline:clamp(1rem,2.5vw,2rem)}
.nav-inner{background:rgba(10,12,18,.96);border:1px solid rgba(255,255,255,.09);border-top:0;border-radius:0 0 14px 14px;padding-inline:1rem;box-shadow:0 12px 34px rgba(0,0,0,.28)}
.main-nav-shell{position:relative;padding-bottom:.8rem}
.site-footer{min-height:0!important;padding:0 0 1rem!important}
.footer-shell{position:relative;overflow:hidden;min-height:var(--footer-height,260px);background-color:#08090d;background-image:var(--footer-image);background-size:cover;background-position:var(--footer-position,center);border:1px solid rgba(255,255,255,.09);border-radius:14px;box-shadow:0 18px 55px rgba(0,0,0,.34)}
.footer-shell .footer-overlay{position:absolute;inset:0;z-index:0}
.footer-shell .footer-grid,.footer-shell .footer-bottom{position:relative;z-index:1}
.footer-grid,.footer-bottom{width:100%;margin:0;padding-left:clamp(1rem,2.5vw,2rem);padding-right:clamp(1rem,2.5vw,2rem)}
.radio-player{display:none!important}
@media(max-width:760px){
  .radio-topbar{padding-top:0}
  .portal-wrap{width:min(var(--portal-width,1280px),calc(100% - 1rem))}
  .radio-topbar-inner{border-radius:0}
  .header-shell,.nav-inner,.footer-shell{border-radius:0}
  .main-nav-shell{padding-bottom:.5rem}
}

/* Dynamische Header- und Footerhoehe 1.6.8.5 */
.cms-theme-radio .radio-hero,
.header-shell{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
.header-shell .hero-inner,
.cms-theme-radio .hero-inner{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  padding-top:clamp(.8rem,2vw,1.35rem)!important;
  padding-bottom:clamp(.8rem,2vw,1.35rem)!important;
}
.cms-theme-radio .header-brand{
  flex:1 1 420px;
  min-width:0;
}
.cms-theme-radio .hero-onair{
  flex:0 1 360px;
  min-width:min(100%,250px);
  width:auto;
}
.site-footer,
.footer-shell{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
.footer-shell{
  display:block;
}
.footer-shell .footer-grid{
  height:auto!important;
  min-height:0!important;
  padding-top:clamp(1.35rem,3vw,2.4rem)!important;
  padding-bottom:clamp(1rem,2vw,1.65rem)!important;
}
.footer-shell .footer-bottom{
  height:auto!important;
  min-height:0!important;
  padding-top:.85rem!important;
  padding-bottom:.85rem!important;
  flex-wrap:wrap;
}
@media(max-width:900px){
  .header-shell .hero-inner,
  .cms-theme-radio .hero-inner{
    align-items:flex-start;
  }
  .cms-theme-radio .header-brand,
  .cms-theme-radio .hero-onair{
    flex-basis:100%;
    max-width:100%;
  }
}
@media(max-width:760px){
  .header-shell .hero-inner,
  .cms-theme-radio .hero-inner{
    padding-top:.75rem!important;
    padding-bottom:.75rem!important;
  }
  .footer-shell .footer-grid{
    padding-top:1.15rem!important;
    padding-bottom:.85rem!important;
  }
}

/* Version 1.6.8.6: Header 350px, Navigation direkt darunter, Footer sichtbar */
.cms-theme-radio .radio-hero,
.radio-hero,
.header-shell{
  height:350px!important;
  min-height:350px!important;
  max-height:350px!important;
}
.header-shell .hero-inner,
.cms-theme-radio .hero-inner{
  height:100%!important;
  min-height:350px!important;
  max-height:350px!important;
  box-sizing:border-box;
  align-items:center!important;
  padding-top:clamp(1rem,2.5vw,2rem)!important;
  padding-bottom:clamp(1rem,2.5vw,2rem)!important;
}
.main-nav-shell{
  display:block!important;
  position:relative!important;
  z-index:10;
  clear:both;
  margin-top:0!important;
}
.nav-inner{
  display:flex!important;
  visibility:visible!important;
}
.site-footer{
  display:block!important;
  visibility:visible!important;
  position:relative!important;
  z-index:2;
  clear:both;
  margin-top:0!important;
}
.footer-shell{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
@media(max-width:900px){
  .cms-theme-radio .radio-hero,
  .radio-hero,
  .header-shell{
    height:350px!important;
    min-height:350px!important;
    max-height:350px!important;
  }
  .header-shell .hero-inner,
  .cms-theme-radio .hero-inner{
    height:100%!important;
    min-height:350px!important;
    max-height:350px!important;
    overflow:auto;
    align-content:center;
  }
}
@media(max-width:560px){
  .cms-theme-radio .radio-hero,
  .radio-hero,
  .header-shell{
    height:350px!important;
    min-height:350px!important;
    max-height:350px!important;
  }
  .header-shell .hero-inner,
  .cms-theme-radio .hero-inner{
    min-height:350px!important;
    max-height:350px!important;
    padding:.8rem!important;
  }
}


/* Version 1.6.8.7: Header ohne Player, kompakter Player im Mittelbereich */
.cms-theme-radio .hero-inner,
.header-shell .hero-inner{
  justify-content:flex-start!important;
}
.cms-theme-radio .header-brand{
  max-width:min(900px,100%)!important;
  flex:1 1 auto!important;
}
.cms-theme-radio .hero-onair,
.hero-onair{
  display:none!important;
}
.cms-theme-radio .radio-feature{
  min-height:118px!important;
  padding:1rem 1.25rem!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:1rem!important;
  border-radius:14px!important;
}
.cms-theme-radio .radio-feature h2{
  font-size:clamp(1.25rem,2.5vw,2.1rem)!important;
  line-height:1.05!important;
  margin:.3rem 0 .15rem!important;
}
.cms-theme-radio .radio-feature p{
  margin:.1rem 0!important;
  font-size:.9rem!important;
}
.cms-theme-radio .feature-play{
  margin-top:.55rem!important;
  padding:.62rem .95rem!important;
  font-size:.9rem!important;
}
.cms-theme-radio .radio-wave{
  height:72px!important;
  gap:5px!important;
  padding-right:.25rem!important;
}
.cms-theme-radio .radio-wave i{
  width:4px!important;
}
@media(max-width:760px){
  .cms-theme-radio .radio-feature{
    min-height:108px!important;
    padding:.85rem 1rem!important;
    grid-template-columns:1fr!important;
  }
  .cms-theme-radio .radio-wave{
    display:none!important;
  }
  .cms-theme-radio .radio-feature h2{
    font-size:clamp(1.2rem,6vw,1.7rem)!important;
  }
}

/* Version 1.6.8.8: scharfe Header-Umrandung ohne ausgefranste Kanten */
.header-shell{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background-clip:padding-box!important;
  box-shadow:0 18px 55px rgba(0,0,0,.34)!important;
  transform:translateZ(0);
  backface-visibility:hidden;
}
.header-shell::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  border:1px solid #343944;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}
.header-shell .header-overlay{
  inset:1px!important;
}
.header-shell .hero-inner{
  position:relative;
  z-index:2!important;
}
@media(max-width:760px){
  .header-shell{
    border-radius:0!important;
  }
}

/* 1.6.9.3: vollstaendige Loginbox in der rechten Sidebar */
.portal-login-form{display:grid;gap:.75rem}
.portal-login-form label{display:grid;gap:.35rem;font-size:.82rem;color:#cdd2dc}
.portal-login-form input{width:100%;box-sizing:border-box;padding:.72rem .78rem;border:1px solid rgba(255,255,255,.15);border-radius:8px}
.login-links{display:grid;gap:.65rem;margin-top:.8rem}
.login-links .button{margin:0}
.login-status{display:flex;align-items:center;gap:.75rem;margin-bottom:.9rem}
.login-status>div{display:grid;gap:.15rem}
.login-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:800}
.login-logout{display:block;text-align:center;margin-top:.7rem}
.widget-login .widget-body{min-height:0!important}

/* 1.6.9.4 Teamliste */
.team-page{min-height:320px}.team-intro{margin-top:-.25rem;color:#b9c0cc}.team-role{display:inline-flex;margin-bottom:.45rem;padding:.28rem .55rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.06);color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.team-card h2{margin-top:.1rem}.team-card strong{color:#f5f7fb}.team-card small{margin-top:.25rem}.team-profile .team-role{margin-top:.15rem}

/* 1.6.9.5: Header ohne transparente Seitenbereiche */
.cms-theme-radio .radio-hero > .header-shell,
.radio-hero > .header-shell{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  border-left:0!important;
  border-right:0!important;
}
.cms-theme-radio .radio-hero > .header-shell::after,
.radio-hero > .header-shell::after{
  border-left:0!important;
  border-right:0!important;
}
.cms-theme-radio .radio-hero > .header-shell .hero-inner,
.radio-hero > .header-shell .hero-inner{
  width:min(var(--portal-width,1280px),calc(100% - 2rem));
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:760px){
  .cms-theme-radio .radio-hero > .header-shell .hero-inner,
  .radio-hero > .header-shell .hero-inner{
    width:calc(100% - 1rem);
  }
}

/* 1.6.9.6: Header wieder exakt auf Boxenbreite begrenzen */
.cms-theme-radio .radio-hero,
.radio-hero{
  width:100%;
  margin:0;
  padding:0;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.cms-theme-radio .radio-hero > .header-shell,
.radio-hero > .header-shell{
  width:min(var(--portal-width,1280px),calc(100% - clamp(1rem,4vw,3rem)))!important;
  max-width:var(--portal-width,1280px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  border-left:1px solid rgba(255,255,255,.09)!important;
  border-right:1px solid rgba(255,255,255,.09)!important;
  box-sizing:border-box;
}
.cms-theme-radio .radio-hero > .header-shell .hero-inner,
.radio-hero > .header-shell .hero-inner{
  width:100%!important;
  margin:0!important;
  box-sizing:border-box;
}
@media(max-width:760px){
  .cms-theme-radio .radio-hero > .header-shell,
  .radio-hero > .header-shell{
    width:calc(100% - 1rem)!important;
  }
}

/* Kompakter Player im Mittelbereich 1.6.9.7 */
.cms-theme-radio .portal-center .widget-type-now_playing,
.cms-theme-radio .portal-center .widget-now-playing{
  height:100px!important;
  min-height:100px!important;
  max-height:100px!important;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.cms-theme-radio .portal-center .widget-type-now_playing h2,
.cms-theme-radio .portal-center .widget-now-playing h2{
  flex:0 0 32px;
  min-height:32px;
  margin:0;
  padding:.42rem .8rem;
  font-size:.78rem;
  line-height:1.1;
}
.cms-theme-radio .portal-center .widget-type-now_playing .widget-body,
.cms-theme-radio .portal-center .widget-now-playing .widget-body{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.45rem .75rem;
}
.cms-theme-radio .portal-center .widget-type-now_playing .widget-now-meta,
.cms-theme-radio .portal-center .widget-now-playing .widget-now-meta{
  flex:1 1 auto;
  min-width:0;
  margin:0;
  gap:.05rem;
}
.cms-theme-radio .portal-center .widget-type-now_playing .widget-now-meta strong,
.cms-theme-radio .portal-center .widget-now-playing .widget-now-meta strong{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:.92rem;
}
.cms-theme-radio .portal-center .widget-type-now_playing .widget-now-meta>span:last-child,
.cms-theme-radio .portal-center .widget-now-playing .widget-now-meta>span:last-child{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:.75rem;
}
.cms-theme-radio .portal-center .widget-type-now_playing .onair-chip,
.cms-theme-radio .portal-center .widget-now-playing .onair-chip{
  font-size:.58rem;
}
.cms-theme-radio .portal-center .widget-type-now_playing .full-button,
.cms-theme-radio .portal-center .widget-now-playing .full-button{
  flex:0 0 auto;
  width:auto;
  min-width:145px;
  margin:0;
  padding:.5rem .75rem;
  font-size:.78rem;
}
@media(max-width:600px){
  .cms-theme-radio .portal-center .widget-type-now_playing .full-button,
  .cms-theme-radio .portal-center .widget-now-playing .full-button{
    min-width:0;
    padding:.48rem .6rem;
  }
}

/* 1.6.9.8: Header und Portal ohne breite Seitenflaechen */
.cms-theme-radio .radio-topbar-inner,
.cms-theme-radio .radio-hero > .header-shell,
.cms-theme-radio .main-nav-shell > .nav-inner,
.cms-theme-radio .portal-wrap,
.cms-theme-radio .footer-shell,
.radio-topbar-inner,
.radio-hero > .header-shell,
.main-nav-shell > .nav-inner,
.portal-wrap,
.footer-shell{
  width:calc(100% - 8px)!important;
  max-width:none!important;
  margin-left:4px!important;
  margin-right:4px!important;
  box-sizing:border-box!important;
}

.cms-theme-radio .radio-hero,
.cms-theme-radio .main-nav-shell,
.radio-hero,
.main-nav-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}

@media(max-width:760px){
  .cms-theme-radio .radio-topbar-inner,
  .cms-theme-radio .radio-hero > .header-shell,
  .cms-theme-radio .main-nav-shell > .nav-inner,
  .cms-theme-radio .portal-wrap,
  .cms-theme-radio .footer-shell,
  .radio-topbar-inner,
  .radio-hero > .header-shell,
  .main-nav-shell > .nav-inner,
  .portal-wrap,
  .footer-shell{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* 1.6.9.9: Einheitliche, kompakte Portalbreite */
:root{
  --portal-width:1300px;
}
.cms-theme-radio .radio-topbar-inner,
.cms-theme-radio .radio-hero > .header-shell,
.cms-theme-radio .main-nav-shell > .nav-inner,
.cms-theme-radio .portal-wrap,
.cms-theme-radio .footer-shell,
.radio-topbar-inner,
.radio-hero > .header-shell,
.main-nav-shell > .nav-inner,
.portal-wrap,
.footer-shell{
  width:min(1300px,calc(100% - 40px))!important;
  max-width:1300px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.cms-theme-radio .radio-hero,
.cms-theme-radio .main-nav-shell,
.radio-hero,
.main-nav-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.cms-theme-radio .radio-hero > .header-shell .hero-inner,
.radio-hero > .header-shell .hero-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:clamp(1rem,2.5vw,2rem)!important;
  padding-right:clamp(1rem,2.5vw,2rem)!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  .cms-theme-radio .radio-topbar-inner,
  .cms-theme-radio .radio-hero > .header-shell,
  .cms-theme-radio .main-nav-shell > .nav-inner,
  .cms-theme-radio .portal-wrap,
  .cms-theme-radio .footer-shell,
  .radio-topbar-inner,
  .radio-hero > .header-shell,
  .main-nav-shell > .nav-inner,
  .portal-wrap,
  .footer-shell{
    width:calc(100% - 16px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* Version 1.6.10.1: Informationsblock aus dem Footer geloest */
.footer-shell .footer-grid{
  grid-template-columns:minmax(0,1.5fr) minmax(180px,.5fr)!important;
}
.footer-shell .footer-bottom a{color:inherit!important;}
.footer-shell .footer-bottom a:hover{color:#fff!important;}
.site-footer,.footer-shell{position:relative!important;clear:both!important;inset:auto!important;transform:none!important;}
@media(max-width:700px){
  .footer-shell .footer-grid{grid-template-columns:1fr!important;}
}

/* Version 1.6.10.2: Footer aus allen ueberlagernden Bereichen loesen */
html,body{min-height:100%;}
body.cms-theme-radio{
  display:flex!important;
  flex-direction:column!important;
  min-height:100vh!important;
  padding-bottom:0!important;
}
body.cms-theme-radio > .radio-topbar,
body.cms-theme-radio > .radio-hero,
body.cms-theme-radio > .main-nav-shell{
  flex:0 0 auto!important;
}
body.cms-theme-radio > main{
  flex:1 0 auto!important;
  width:min(1300px,calc(100% - 40px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-bottom:0!important;
}
body.cms-theme-radio > .site-footer{
  display:block!important;
  flex:0 0 auto!important;
  width:100%!important;
  margin:28px 0 0!important;
  padding:0 0 18px!important;
  position:relative!important;
  z-index:20!important;
  clear:both!important;
  overflow:visible!important;
  background:#08090d!important;
  isolation:isolate!important;
}
body.cms-theme-radio > .site-footer .footer-shell{
  display:block!important;
  position:relative!important;
  width:min(1300px,calc(100% - 40px))!important;
  max-width:1300px!important;
  min-height:0!important;
  height:auto!important;
  margin:0 auto!important;
  overflow:hidden!important;
  background:#0b0e14!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:14px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.38)!important;
}
body.cms-theme-radio > .site-footer .footer-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.5fr) minmax(190px,.5fr)!important;
  min-height:0!important;
  height:auto!important;
  padding:1.4rem clamp(1rem,2.5vw,2rem)!important;
}
body.cms-theme-radio > .site-footer .footer-bottom{
  display:flex!important;
  min-height:0!important;
  height:auto!important;
  padding:1rem clamp(1rem,2.5vw,2rem)!important;
}
.radio-player-engine[hidden]{display:none!important;}
@media(max-width:760px){
  body.cms-theme-radio > main,
  body.cms-theme-radio > .site-footer .footer-shell{
    width:calc(100% - 16px)!important;
  }
  body.cms-theme-radio > .site-footer .footer-grid{grid-template-columns:1fr!important;}
}


/* Version 1.6.10.3: Footer vollstaendig vom Seitenhintergrund getrennt */
body.cms-theme-radio > main.portal-layout{
  position:relative!important;
  z-index:1!important;
  margin-bottom:32px!important;
  overflow:visible!important;
}
body.cms-theme-radio > footer.site-footer-detached{
  display:block!important;
  position:relative!important;
  inset:auto!important;
  float:none!important;
  clear:both!important;
  z-index:100!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0 0 24px!important;
  overflow:visible!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  transform:none!important;
  isolation:isolate!important;
}
body.cms-theme-radio > footer.site-footer-detached > .footer-shell-detached{
  display:block!important;
  position:relative!important;
  inset:auto!important;
  z-index:101!important;
  width:min(1300px,calc(100% - 40px))!important;
  max-width:1300px!important;
  height:auto!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:hidden!important;
  background:#0b0e14!important;
  background-image:none!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:14px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.55)!important;
  opacity:1!important;
}
body.cms-theme-radio > footer.site-footer-detached .footer-overlay{display:none!important;}
body.cms-theme-radio > footer.site-footer-detached .footer-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.5fr) minmax(190px,.5fr)!important;
  gap:2rem!important;
  height:auto!important;
  min-height:0!important;
  padding:1.35rem clamp(1rem,2.5vw,2rem)!important;
  background:#0b0e14!important;
  opacity:1!important;
}
body.cms-theme-radio > footer.site-footer-detached .footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1rem!important;
  height:auto!important;
  min-height:0!important;
  padding:.9rem clamp(1rem,2.5vw,2rem)!important;
  background:#07090d!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  opacity:1!important;
}
@media(max-width:760px){
  body.cms-theme-radio > footer.site-footer-detached > .footer-shell-detached{width:calc(100% - 16px)!important;}
  body.cms-theme-radio > footer.site-footer-detached .footer-grid{grid-template-columns:1fr!important;}
  body.cms-theme-radio > footer.site-footer-detached .footer-bottom{align-items:flex-start!important;flex-direction:column!important;}
}


/* Version 1.6.10.4: echten konfigurierten Footer wiederherstellen */
body.cms-theme-radio > footer.site-footer-detached{
  display:block!important;
  position:relative!important;
  clear:both!important;
  width:100%!important;
  height:auto!important;
  margin:28px 0 0!important;
  padding:0 0 24px!important;
  background:transparent!important;
  overflow:visible!important;
}
body.cms-theme-radio > footer.site-footer-detached > .footer-shell-detached{
  position:relative!important;
  display:block!important;
  width:min(1300px,calc(100% - 40px))!important;
  max-width:1300px!important;
  min-height:210px!important;
  height:auto!important;
  margin:0 auto!important;
  overflow:hidden!important;
  background-color:#08090d!important;
  background-image:var(--footer-image,none)!important;
  background-size:cover!important;
  background-position:var(--footer-position,center)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:14px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.45)!important;
}
body.cms-theme-radio > footer.site-footer-detached .footer-overlay{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:linear-gradient(90deg,rgba(5,6,9,.94),rgba(10,8,12,.72),rgba(5,6,9,.9))!important;
  pointer-events:none!important;
}
body.cms-theme-radio > footer.site-footer-detached .footer-grid,
body.cms-theme-radio > footer.site-footer-detached .footer-bottom{
  position:relative!important;
  z-index:1!important;
}
body.cms-theme-radio > footer.site-footer-detached .footer-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.5fr) minmax(190px,.5fr)!important;
  gap:2rem!important;
  padding:1.5rem clamp(1rem,2.5vw,2rem)!important;
  background:transparent!important;
}
body.cms-theme-radio > footer.site-footer-detached .footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1rem!important;
  padding:.95rem clamp(1rem,2.5vw,2rem)!important;
  background:rgba(4,5,8,.82)!important;
  border-top:1px solid rgba(255,255,255,.1)!important;
}
body.cms-theme-radio > main.portal-layout{margin-bottom:0!important;}
@media(max-width:760px){
  body.cms-theme-radio > footer.site-footer-detached > .footer-shell-detached{width:calc(100% - 16px)!important;min-height:0!important;}
  body.cms-theme-radio > footer.site-footer-detached .footer-grid{grid-template-columns:1fr!important;}
  body.cms-theme-radio > footer.site-footer-detached .footer-bottom{align-items:flex-start!important;flex-direction:column!important;}
}

/* Version 1.6.10.5: Footer nur als Bild, ohne Informationsbereiche */
body.cms-theme-radio > footer.site-footer-image-only{
  display:block!important;
  position:relative!important;
  clear:both!important;
  width:100%!important;
  height:auto!important;
  margin:28px 0 0!important;
  padding:0 0 24px!important;
  background:transparent!important;
  overflow:visible!important;
}
body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell{
  position:relative!important;
  display:block!important;
  width:min(1300px,calc(100% - 40px))!important;
  max-width:1300px!important;
  min-height:var(--footer-height,220px)!important;
  margin:0 auto!important;
  overflow:hidden!important;
  background-color:#08090d!important;
  background-image:var(--footer-image,none)!important;
  background-size:cover!important;
  background-position:var(--footer-position,center)!important;
  background-repeat:no-repeat!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:14px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.45)!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-overlay{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.18) 65%,rgba(0,0,0,.58))!important;
  pointer-events:none!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-copyright{
  position:absolute!important;
  left:1rem!important;
  right:1rem!important;
  bottom:.85rem!important;
  z-index:1!important;
  color:#fff!important;
  font-size:.82rem!important;
  text-shadow:0 2px 8px rgba(0,0,0,.9)!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-grid,
body.cms-theme-radio > footer.site-footer-image-only .footer-bottom,
body.cms-theme-radio > footer.site-footer-image-only .footer-heading,
body.cms-theme-radio > footer.site-footer-image-only .footer-title,
body.cms-theme-radio > footer.site-footer-image-only .footer-kicker{
  display:none!important;
}
@media(max-width:760px){
  body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell{
    width:calc(100% - 16px)!important;
    min-height:var(--footer-height,180px)!important;
    border-radius:10px!important;
  }
}

/* Version 1.6.10.6: neutrales Portal + stabile rechte Boxen
   Player bleibt technisch und optisch als eigener Bereich erhalten. */
body.cms-theme-radio{
  --neutral-bg:#15171b;
  --neutral-bg-soft:#1b1e23;
  --neutral-surface:#20242a;
  --neutral-surface-2:#262b32;
  --neutral-line:rgba(255,255,255,.11);
  --neutral-text:#f0f2f4;
  --neutral-muted:#aeb4bd;
  --accent:#747b84;
  background:#121418!important;
  color:var(--neutral-text)!important;
}
body.cms-theme-radio::before{
  background:linear-gradient(180deg,#121418,#191c21)!important;
}
.cms-theme-radio .radio-topbar,
.cms-theme-radio .main-nav-shell{
  background:rgba(20,22,26,.97)!important;
  border-color:var(--neutral-line)!important;
}
.cms-theme-radio .radio-hero::before{
  background:linear-gradient(90deg,rgba(18,20,24,.92),rgba(28,31,36,.58),rgba(18,20,24,.38))!important;
}
.cms-theme-radio .header-overlay{
  background:linear-gradient(90deg,rgba(18,20,24,.58),rgba(30,33,38,.30))!important;
}
.cms-theme-radio .header-copy .eyebrow,
.cms-theme-radio .portal-kicker,
.cms-theme-radio .feature-kicker{
  color:#c4c8ce!important;
}
.cms-theme-radio .content-card,
.cms-theme-radio .portal-widget,
.cms-theme-radio .radio-quick-grid a,
.cms-theme-radio .schedule-day,
.cms-theme-radio .moderator-card{
  background:var(--neutral-surface)!important;
  border-color:var(--neutral-line)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.20)!important;
}
.cms-theme-radio .portal-widget h2{
  background:var(--neutral-bg-soft)!important;
  border-bottom-color:var(--neutral-line)!important;
}
.cms-theme-radio .portal-widget h2::before{
  background:#818791!important;
}
.cms-theme-radio .prose,
.cms-theme-radio .prose p:first-child,
.cms-theme-radio .muted,
.cms-theme-radio .radio-quick-grid small,
.cms-theme-radio .moderator-card small,
.cms-theme-radio .moderator-card p{
  color:var(--neutral-muted)!important;
}
.cms-theme-radio .site-main-nav a:hover{
  border-bottom-color:#8c939c!important;
}
.cms-theme-radio .widget-menu-link:hover{
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
}

/* Player/Now-Playing behält seine bisherige rote Radio-Akzentfarbe. */
.cms-theme-radio .radio-player,
.cms-theme-radio .radio-player-engine,
.cms-theme-radio .widget-now-playing,
.cms-theme-radio .widget-type-now_playing,
.cms-theme-radio .hero-onair{
  --accent:#e00022;
}
.cms-theme-radio .widget-now-playing h2::before,
.cms-theme-radio .widget-type-now_playing h2::before{
  background:#e00022!important;
}

/* Rechte Spalte darf das Grid niemals verbreitern. */
.portal-layout,
.portal-layout > *,
.portal-sidebar,
.portal-sidebar > *,
.portal-right,
.portal-right > *,
.portal-widget,
.widget-body{
  min-width:0!important;
  max-width:100%;
}
.portal-three{
  grid-template-columns:minmax(0,var(--left-width,260px)) minmax(0,1fr) minmax(0,var(--right-width,300px))!important;
}
.portal-right{
  grid-template-columns:minmax(0,1fr) minmax(0,var(--right-width,300px))!important;
}
aside.portal-right{
  width:100%;
  overflow:hidden;
}
aside.portal-right .portal-widget,
aside.portal-right .widget-body{
  width:100%;
  overflow:hidden;
}
aside.portal-right img,
aside.portal-right video,
aside.portal-right iframe,
aside.portal-right table,
aside.portal-right input,
aside.portal-right select,
aside.portal-right textarea,
aside.portal-right button,
aside.portal-right .button{
  max-width:100%!important;
}
aside.portal-right img,
aside.portal-right video{
  height:auto;
}
aside.portal-right iframe{
  width:100%!important;
}
aside.portal-right .widget-body,
aside.portal-right .widget-body *,
aside.portal-right a,
aside.portal-right p,
aside.portal-right span,
aside.portal-right strong{
  overflow-wrap:anywhere;
  word-break:break-word;
}
@media(max-width:1050px){
  .portal-three{
    grid-template-columns:minmax(0,var(--left-width,240px)) minmax(0,1fr)!important;
  }
  .portal-three aside.portal-right{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    overflow:visible;
  }
}
@media(max-width:760px){
  .portal-layout,.portal-three,.portal-left,.portal-right,.portal-center{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .portal-three aside.portal-right{
    grid-column:auto!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
}


/* Version 1.6.10.7: lesbare Auth-Seiten + sichtbarer Testzugang */
.auth-body .auth-card{
  color:#1f2937!important;
  background:#ffffff!important;
}
.auth-body .auth-card h1,
.auth-body .auth-card h2,
.auth-body .auth-card h3,
.auth-body .auth-card label,
.auth-body .auth-card p,
.auth-body .auth-card strong{
  color:#1f2937!important;
}
.auth-body .auth-card a{color:#991b1b!important;}
.auth-body .auth-card input,
.auth-body .auth-card textarea,
.auth-body .auth-card select{
  color:#111827!important;
  background:#ffffff!important;
  border-color:#b8c2cf!important;
}
.auth-body .auth-card input::placeholder{color:#6b7280!important;}
.auth-body .auth-card .muted{color:#4b5563!important;}
.auth-body .auth-card button,
.auth-body .auth-card .button:not(.secondary){
  color:#ffffff!important;
  background:#8f1717!important;
}
.auth-body .auth-card .button.secondary{
  color:#1f2937!important;
  background:#e5e7eb!important;
}
.auth-test-login{
  margin:1rem 0 1.15rem;
  padding:.9rem 1rem;
  border:1px solid #cbd5e1;
  border-left:4px solid #8f1717;
  border-radius:10px;
  background:#f8fafc;
  color:#1f2937!important;
  line-height:1.55;
}
.auth-test-login strong{color:#111827!important;}
.auth-test-login code{
  padding:.08rem .3rem;
  border-radius:4px;
  background:#e5e7eb;
  color:#111827;
  font-weight:700;
}

/* === 1.6.10.11: Dunkler, kontrastreicher Admin-/Moderatorbereich === */
.admin-body{
  --admin-bg:#0b0f16;
  --admin-surface:#141a24;
  --admin-surface-2:#1a2230;
  --admin-border:#303a4a;
  --admin-text:#f4f7fb;
  --admin-muted:#b9c2d0;
  --admin-accent:#b91c1c;
  background:var(--admin-bg)!important;
  color:var(--admin-text)!important;
}
.admin-body .admin-nav{background:#0f141d!important;color:var(--admin-text)!important;border-right:1px solid var(--admin-border)!important;}
.admin-body .admin-brand{color:#fff!important;}
.admin-body .admin-nav nav a{color:#e7ecf4!important;}
.admin-body .admin-nav nav a:hover,.admin-body .admin-nav nav a:focus{background:#252e3d!important;color:#fff!important;outline:2px solid rgba(255,255,255,.12);}
.admin-body .admin-main,.admin-body .admin-top,.admin-body .admin-top h1,.admin-body h1,.admin-body h2,.admin-body h3,.admin-body h4,.admin-body p,.admin-body label,.admin-body legend,.admin-body strong,.admin-body span,.admin-body small{color:var(--admin-text);}
.admin-body .muted,.admin-body small,.admin-body .help,.admin-body .hint{color:var(--admin-muted)!important;}
.admin-body a{color:#ffb4b4;}
.admin-body a:hover{color:#ffd1d1;}
.admin-body .panel,.admin-body .content-card,.admin-body .sidebar-card,.admin-body .stats section,.admin-body .media-grid article,.admin-body .table-wrap,.admin-body .design-section,.admin-body fieldset,.admin-body .theme-card,.admin-body .design-previews figure{
  background:var(--admin-surface)!important;
  color:var(--admin-text)!important;
  border-color:var(--admin-border)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.25)!important;
}
.admin-body .stats strong{color:#ffb4b4!important;}
.admin-body table{background:var(--admin-surface)!important;color:var(--admin-text)!important;}
.admin-body th{background:#202938!important;color:#fff!important;}
.admin-body td,.admin-body th{border-bottom-color:var(--admin-border)!important;color:var(--admin-text)!important;}
.admin-body tr:hover td{background:#18202c!important;}
.admin-body input,.admin-body textarea,.admin-body select{
  background:#0f151f!important;
  color:#fff!important;
  border:1px solid #465368!important;
  caret-color:#fff;
}
.admin-body input::placeholder,.admin-body textarea::placeholder{color:#8f9bad!important;opacity:1;}
.admin-body input:focus,.admin-body textarea:focus,.admin-body select:focus{border-color:#d35b5b!important;outline:2px solid rgba(211,91,91,.28)!important;outline-offset:1px;}
.admin-body option{background:#111827;color:#fff;}
.admin-body button,.admin-body .button{background:#991b1b!important;color:#fff!important;border:1px solid #c24141!important;}
.admin-body button:hover,.admin-body .button:hover{background:#b91c1c!important;}
.admin-body .button.secondary,.admin-body button.secondary{background:#2a3444!important;color:#f8fafc!important;border-color:#465368!important;}
.admin-body .link-danger{color:#ff8d8d!important;background:transparent!important;border:0!important;}
.admin-body .badge{background:#293446!important;color:#f8fafc!important;border:1px solid #465368!important;}
.admin-body .switch-check,.admin-body .file-icon{background:#202938!important;color:#fff!important;}
.admin-body .sticky-actions{background:rgba(15,20,29,.96)!important;border-top-color:var(--admin-border)!important;box-shadow:0 -8px 25px rgba(0,0,0,.3)!important;}
.admin-body .alert.success{background:#123823!important;color:#d5ffe4!important;border:1px solid #2f7650;}
.admin-body .alert.error{background:#451a1a!important;color:#ffd4d4!important;border:1px solid #8f3030;}
.admin-body .alert{color:#fff!important;}
.admin-body code{background:#232c3a;color:#fff;padding:.1rem .3rem;border-radius:4px;}
.admin-body hr{border-color:var(--admin-border)!important;}

/* Login/Registrierung ebenfalls dunkel und gut lesbar */
.auth-body{background:linear-gradient(135deg,#080b10,#182131)!important;color:#f4f7fb!important;}
.auth-body .auth-card{background:#141a24!important;color:#f4f7fb!important;border:1px solid #303a4a!important;}
.auth-body .auth-card h1,.auth-body .auth-card h2,.auth-body .auth-card h3,.auth-body .auth-card p,.auth-body .auth-card label,.auth-body .auth-card strong,.auth-body .auth-card span{color:#f4f7fb!important;}
.auth-body .auth-card a{color:#ffaaaa!important;}
.auth-body .auth-card input,.auth-body .auth-card textarea,.auth-body .auth-card select{background:#0f151f!important;color:#fff!important;border-color:#465368!important;}
.auth-body .auth-card input::placeholder,.auth-body .auth-card textarea::placeholder{color:#8f9bad!important;}
.auth-body .auth-card .button.secondary{background:#2a3444!important;color:#fff!important;border:1px solid #465368!important;}
.auth-body .auth-card .alert.error{background:#451a1a!important;color:#ffd4d4!important;border:1px solid #8f3030!important;}
.auth-body .auth-card .alert.success{background:#123823!important;color:#d5ffe4!important;border:1px solid #2f7650!important;}

/* === 1.6.10.14: Footer sichtbar + Mittelbereich nicht mehr nach unten gestreckt === */
html,body{min-height:100%;}
body.cms-theme-radio{
  display:block!important;
  min-height:100vh!important;
  height:auto!important;
}
body.cms-theme-radio > main,
body.cms-theme-radio > main.portal-layout,
body.cms-theme-radio > main.radio-page{
  display:grid;
  flex:none!important;
  min-height:0!important;
  height:auto!important;
  margin-top:0!important;
  margin-bottom:0!important;
  align-self:auto!important;
}
body.cms-theme-radio > footer.site-footer,
body.cms-theme-radio > footer.site-footer-image-only{
  display:block!important;
  position:relative!important;
  inset:auto!important;
  clear:both!important;
  float:none!important;
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  margin:24px 0 0!important;
  padding:0 0 18px!important;
  overflow:visible!important;
  z-index:2!important;
  background:transparent!important;
  opacity:1!important;
  visibility:visible!important;
}
body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell,
body.cms-theme-radio > footer.site-footer > .footer-image-shell{
  display:block!important;
  position:relative!important;
  width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
  max-width:none!important;
  min-height:var(--footer-height,220px)!important;
  height:var(--footer-height,220px)!important;
  margin:0 auto!important;
  overflow:hidden!important;
  opacity:1!important;
  visibility:visible!important;
  background-color:#171a20!important;
  background-image:var(--footer-image,none)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:var(--footer-position,center)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:14px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.28)!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-overlay,
body.cms-theme-radio > footer.site-footer .footer-overlay{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-copyright,
body.cms-theme-radio > footer.site-footer .footer-copyright{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:1!important;
}
@media(max-width:760px){
  body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell,
  body.cms-theme-radio > footer.site-footer > .footer-image-shell{
    width:calc(100% - 16px)!important;
    min-height:var(--footer-height,180px)!important;
    height:var(--footer-height,180px)!important;
    border-radius:10px!important;
  }
}


/* === 1.6.10.14: kein Leerraum unter dem Portal + Footerbild garantiert sichtbar === */
body.cms-theme-radio > main.portal-layout,
body.cms-theme-radio > main.radio-page{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  grid-auto-rows:max-content!important;
  align-content:start!important;
  align-items:start!important;
  padding-bottom:1.35rem!important;
  margin-bottom:0!important;
}
body.cms-theme-radio > main.portal-layout > .portal-center,
body.cms-theme-radio > main.portal-layout > .portal-sidebar,
body.cms-theme-radio > main.portal-layout > aside,
body.cms-theme-radio > main.portal-layout > section{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  align-self:start!important;
}
body.cms-theme-radio > main.portal-layout .portal-center,
body.cms-theme-radio > main.portal-layout .portal-sidebar,
body.cms-theme-radio > main.portal-layout .portal-widget,
body.cms-theme-radio > main.portal-layout .content-card{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
}
body.cms-theme-radio > footer.site-footer-image-only{
  margin:0!important;
  padding:0 0 18px!important;
  min-height:0!important;
  height:auto!important;
}
body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  line-height:0!important;
  background-color:#11141a!important;
  background-image:var(--footer-image,none)!important;
  background-size:cover!important;
  background-position:var(--footer-position,center)!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-picture{
  display:block!important;
  position:relative!important;
  z-index:0!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:var(--footer-position,center)!important;
  opacity:1!important;
  visibility:visible!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-overlay{
  z-index:1!important;
  background:linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.08) 70%,rgba(0,0,0,.42))!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-copyright{
  z-index:2!important;
  line-height:1.3!important;
}
@media(max-width:760px){
  body.cms-theme-radio > main.portal-layout,
  body.cms-theme-radio > main.radio-page{padding-bottom:.8rem!important;}
  body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell{
    min-height:0!important;
    height:auto!important;
  }
}

/* === 1.6.10.15: Footer ohne Verdunkelung + kein kuenstlicher Leerraum === */
html,body{height:auto!important;min-height:0!important;}
body.cms-theme-radio{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  padding-bottom:0!important;
}
body.cms-theme-radio > main.portal-layout,
body.cms-theme-radio > main.radio-page{
  display:grid!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding-top:1rem!important;
  padding-bottom:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
  align-content:start!important;
  align-items:start!important;
  grid-auto-rows:auto!important;
}
body.cms-theme-radio > main.portal-layout > *,
body.cms-theme-radio > main.radio-page > *{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin-bottom:0!important;
  align-self:start!important;
}
body.cms-theme-radio > main.portal-layout .portal-sidebar,
body.cms-theme-radio > main.portal-layout .portal-center,
body.cms-theme-radio > main.portal-layout .portal-widget,
body.cms-theme-radio > main.portal-layout .widget-body,
body.cms-theme-radio > main.portal-layout .content-card{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
}
body.cms-theme-radio > footer.site-footer-image-only{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0 0 8px!important;
  background:transparent!important;
  clear:both!important;
}
body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell{
  width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:0!important;
  line-height:0!important;
  overflow:hidden!important;
  background:none!important;
  border-radius:14px!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-picture{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  visibility:visible!important;
}
/* Das Footerbild selbst soll unverfaelscht sichtbar sein. */
body.cms-theme-radio > footer.site-footer-image-only .footer-overlay{
  display:none!important;
  background:none!important;
  opacity:0!important;
}
body.cms-theme-radio > footer.site-footer-image-only .footer-copyright{
  position:absolute!important;
  left:0!important;
  bottom:0!important;
  z-index:3!important;
  line-height:1.2!important;
  padding:.35rem .65rem!important;
  margin:0!important;
  background:rgba(0,0,0,.35)!important;
  color:#f3f4f6!important;
}
@media(max-width:760px){
  body.cms-theme-radio > main.portal-layout,
  body.cms-theme-radio > main.radio-page{padding-top:.65rem!important;padding-bottom:0!important;}
  body.cms-theme-radio > footer.site-footer-image-only > .footer-image-shell{width:calc(100% - 16px)!important;}
}


/* === 1.6.10.16: Portalhoehe sauber + Footer exakt einmal === */
/* Desktop: explizites Flex-Layout statt der historisch mehrfach ueberschriebenen Grid-Hoehen. */
body.cms-theme-radio > main.portal-layout{
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:flex-start!important;
  align-content:flex-start!important;
  justify-content:flex-start!important;
  gap:1.35rem!important;
  width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:1rem 0 0!important;
  margin:0 auto!important;
  background:rgba(8,10,15,.70)!important;
}
body.cms-theme-radio > main.portal-layout > .portal-intro{display:none!important;}
body.cms-theme-radio > main.portal-layout > .portal-center{
  display:block!important;
  flex:1 1 0!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  align-self:flex-start!important;
}
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
  flex:0 0 auto!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  align-self:flex-start!important;
}
body.cms-theme-radio > main.portal-layout > aside.portal-left{
  width:min(var(--left-width,260px),32vw)!important;
}
body.cms-theme-radio > main.portal-layout > aside.portal-right{
  width:min(var(--right-width,300px),34vw)!important;
  overflow:visible!important;
}
/* Kein Kind darf den Hauptbereich kuenstlich verlaengern. */
body.cms-theme-radio > main.portal-layout > *,
body.cms-theme-radio > main.portal-layout .portal-widget,
body.cms-theme-radio > main.portal-layout .widget-body,
body.cms-theme-radio > main.portal-layout .content-card,
body.cms-theme-radio > main.portal-layout .radio-dashboard{
  min-height:0!important;
  max-height:none!important;
}

/* Footer: nur das echte Bild; alle alten Background-/Overlay-Varianten neutralisieren. */
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:1rem 0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
  overflow:visible!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
  display:block!important;
  position:relative!important;
  width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:0!important;
  line-height:0!important;
  overflow:hidden!important;
  background:transparent!important;
  background-image:none!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:14px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.28)!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  display:block!important;
  position:static!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  visibility:visible!important;
}
body.cms-theme-radio > footer.footer-single .footer-overlay,
body.cms-theme-radio > footer.footer-single .footer-copyright,
body.cms-theme-radio > footer.footer-single::before,
body.cms-theme-radio > footer.footer-single::after,
body.cms-theme-radio > footer.footer-single .footer-image-shell::before,
body.cms-theme-radio > footer.footer-single .footer-image-shell::after{
  display:none!important;
  content:none!important;
  background:none!important;
}

@media(max-width:1050px){
  body.cms-theme-radio > main.portal-layout.portal-three{
    flex-wrap:wrap!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-left{
    width:min(var(--left-width,240px),34vw)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-right{
    width:100%!important;
    flex-basis:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  body.cms-theme-radio > main.portal-layout,
  body.cms-theme-radio > main.portal-layout.portal-three{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    gap:.8rem!important;
    width:calc(100% - 16px)!important;
    padding-top:.65rem!important;
  }
  body.cms-theme-radio > main.portal-layout > .portal-center,
  body.cms-theme-radio > main.portal-layout > aside.portal-sidebar,
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-left,
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-right{
    width:100%!important;
    flex:0 0 auto!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-right{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
    width:calc(100% - 16px)!important;
    border-radius:10px!important;
  }
}

/* === 1.6.10.17: automatische Footerhoehe + Hauptbereich endet am Inhalt === */
/* Alle historischen Footer-Mindesthoehen werden fuer den aktiven Single-Footer neutralisiert. */
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  background:none!important;
  overflow:visible!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
  display:block!important;
  position:relative!important;
  width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0 auto!important;
  padding:0!important;
  line-height:0!important;
  overflow:hidden!important;
  background:none!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:14px!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
}

/* Hauptbereich nicht auf Viewport-/Spaltenhoehe strecken. */
body.cms-theme-radio > main.portal-layout{
  box-sizing:border-box!important;
  height:max-content!important;
  min-height:0!important;
  max-height:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
  align-self:flex-start!important;
  overflow:visible!important;
}
body.cms-theme-radio > main.portal-layout > .portal-center,
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
  height:max-content!important;
  min-height:0!important;
  max-height:none!important;
  align-self:flex-start!important;
}
body.cms-theme-radio > main.portal-layout .portal-widget,
body.cms-theme-radio > main.portal-layout .widget-body,
body.cms-theme-radio > main.portal-layout .content-card,
body.cms-theme-radio > main.portal-layout .radio-dashboard{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
/* Leere Sidebars duerfen keine unsichtbare Hoehe erzeugen. */
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar:empty{display:none!important;}

/* Auf drei Spalten bleibt die Struktur stabil; der Footer folgt sofort nach der hoechsten echten Spalte. */
body.cms-theme-radio > main.portal-layout.portal-three{
  align-items:flex-start!important;
  align-content:flex-start!important;
}
@media(max-width:760px){
  body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
    width:calc(100% - 16px)!important;
    border-radius:10px!important;
  }
}

/* === 1.6.10.18: Sidebars bestimmen nicht mehr die Seitenhoehe === */
/* Auf Desktop wird die Seitenhoehe ausschliesslich vom Mittelbereich bestimmt.
   Linke/rechte Boxen bleiben in ihren Spalten, koennen aber bei Ueberlaenge intern scrollen. */
@media (min-width:1051px){
  body.cms-theme-radio > main.portal-layout{
    display:block!important;
    position:relative!important;
    width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:1rem 0 0!important;
    margin:0 auto!important;
    overflow:visible!important;
  }
  body.cms-theme-radio > main.portal-layout > .portal-center{
    display:block!important;
    position:relative!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > .portal-center{
    margin-left:calc(var(--left-width,260px) + 1.35rem)!important;
    margin-right:calc(var(--right-width,300px) + 1.35rem)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-left > .portal-center{
    margin-left:calc(var(--left-width,260px) + 1.35rem)!important;
    margin-right:0!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-right > .portal-center{
    margin-left:0!important;
    margin-right:calc(var(--right-width,300px) + 1.35rem)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-center > .portal-center{
    margin-left:0!important;
    margin-right:0!important;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
    display:grid!important;
    position:absolute!important;
    top:1rem!important;
    bottom:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:var(--portal-center-height,none)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    align-content:start!important;
    scrollbar-width:thin;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-left{
    left:0!important;
    right:auto!important;
    width:var(--left-width,260px)!important;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-right{
    right:0!important;
    left:auto!important;
    width:var(--right-width,300px)!important;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-sidebar .portal-widget{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
}

/* Footer bleibt exakt so hoch wie das Bild selbst. */
body.cms-theme-radio > footer.footer-single.site-footer-image-only,
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell,
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  aspect-ratio:auto!important;
}

/* === 1.6.10.19: echten leeren Mittelbereich entfernen === */
/* Ein inhaltsloser Startseiten-Artikel darf keinen sichtbaren/leeren Block vor dem Footer erzeugen. */
body.cms-theme-radio main.portal-layout .content-card.home-empty-card{
  display:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

/* Der Hauptbereich folgt nur noch seinen normalen, nicht absolut positionierten Inhalten. */
@media (min-width:1051px){
  body.cms-theme-radio > main.portal-layout{
    display:block!important;
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:1rem 0 0!important;
    margin:0 auto!important;
  }
  body.cms-theme-radio > main.portal-layout > .portal-center{
    position:relative!important;
    display:block!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
    position:absolute!important;
    top:1rem!important;
    bottom:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
}

/* Footerbild: Breite automatisch innerhalb des Portals, Hoehe immer aus Bildproportion. */
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  margin:0!important;
  padding:.5rem 0 0!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
  width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
}

/* === 1.6.10.20: definitive Leerraum-Korrektur ===
   Der Mittelbereich bestimmt die Seitenhoehe. Linke/rechte Boxen werden auf
   genau diese Hoehe begrenzt und scrollen intern, statt den Footer nach unten
   zu druecken. Diese Regeln stehen bewusst am Dateiende. */
@media (min-width:1051px){
  body.cms-theme-radio > main.portal-layout{
    display:block!important;
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:1rem 0 0!important;
    margin:0 auto!important;
    overflow:visible!important;
  }
  body.cms-theme-radio > main.portal-layout > .portal-center{
    position:relative!important;
    display:block!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > .portal-center{
    margin-left:calc(var(--left-width,260px) + 1.35rem)!important;
    margin-right:calc(var(--right-width,300px) + 1.35rem)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-left > .portal-center{
    margin-left:calc(var(--left-width,260px) + 1.35rem)!important;
    margin-right:0!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-right > .portal-center{
    margin-left:0!important;
    margin-right:calc(var(--right-width,300px) + 1.35rem)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-center > .portal-center{
    margin-left:0!important;
    margin-right:0!important;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
    position:absolute!important;
    top:1rem!important;
    bottom:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:var(--portal-center-height,360px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    align-content:start!important;
    scrollbar-width:thin;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-left{
    left:0!important;
    right:auto!important;
    width:var(--left-width,260px)!important;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-right{
    right:0!important;
    left:auto!important;
    width:var(--right-width,300px)!important;
  }
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  margin:0!important;
  padding:.5rem 0 0!important;
  height:auto!important;
  min-height:0!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  line-height:0!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:contain!important;
}

/* === 1.6.10.21: sauberes Portal-Grid + heller Original-Header === */
/* Ein vorhandenes Headerbild/GIF wird unverfaelscht gezeigt. */
body.cms-theme-radio .radio-hero.has-header-image::before{
  display:none!important;
  content:none!important;
  background:none!important;
}
body.cms-theme-radio .radio-hero.has-header-image .header-overlay{
  display:none!important;
  opacity:0!important;
  background:none!important;
}
body.cms-theme-radio .radio-hero.has-header-image,
body.cms-theme-radio .radio-hero.has-header-image > .header-shell{
  filter:none!important;
  opacity:1!important;
}
body.cms-theme-radio .radio-hero.has-header-image{
  background-color:transparent!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-position:var(--header-position,center)!important;
}

/* Desktop wieder als echtes Grid: keine absoluten Sidebars, keine gemessenen Hoehen. */
@media (min-width:1051px){
  body.cms-theme-radio > main.portal-layout{
    display:grid!important;
    position:relative!important;
    width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:1rem 0!important;
    gap:1rem!important;
    align-items:start!important;
    align-content:start!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three{
    grid-template-columns:minmax(170px,var(--left-width,260px)) minmax(0,1fr) minmax(190px,var(--right-width,300px))!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-left{
    grid-template-columns:minmax(170px,var(--left-width,260px)) minmax(0,1fr)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-right{
    grid-template-columns:minmax(0,1fr) minmax(190px,var(--right-width,300px))!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-center{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.cms-theme-radio > main.portal-layout > .portal-intro{
    display:none!important;
  }
  body.cms-theme-radio > main.portal-layout > .portal-center,
  body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:visible!important;
    align-self:start!important;
  }
  body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
    display:grid!important;
    gap:1rem!important;
    align-content:start!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-left{grid-column:1!important;grid-row:1!important;}
  body.cms-theme-radio > main.portal-layout.portal-three > .portal-center{grid-column:2!important;grid-row:1!important;}
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-right{grid-column:3!important;grid-row:1!important;}
  body.cms-theme-radio > main.portal-layout.portal-left > aside.portal-left{grid-column:1!important;grid-row:1!important;}
  body.cms-theme-radio > main.portal-layout.portal-left > .portal-center{grid-column:2!important;grid-row:1!important;}
  body.cms-theme-radio > main.portal-layout.portal-right > .portal-center{grid-column:1!important;grid-row:1!important;}
  body.cms-theme-radio > main.portal-layout.portal-right > aside.portal-right{grid-column:2!important;grid-row:1!important;}
}

/* Hauptflaeche besteht nur aus Karten; kein dunkler Leerblock bis zum Footer. */
body.cms-theme-radio > main.portal-layout .portal-center{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  margin-top:0!important;
  padding-top:0!important;
  background:transparent!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
  width:min(var(--portal-width,1280px),calc(100% - 2rem))!important;
  margin:0 auto!important;
  border:0!important;
  box-shadow:none!important;
  background:none!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  display:block!important;
  width:100%!important;
  height:auto!important;
  filter:none!important;
  opacity:1!important;
}

/* === 1.6.10.22: tatsaechlich wirksamer Layout- und Header-Fix ===
   Alte Flex-Regel aus 1.6.10.2 darf den Hauptbereich nicht mehr auf Viewporthoehe strecken. */
body.cms-theme-radio{
  display:block!important;
  min-height:0!important;
}
body.cms-theme-radio > main.portal-layout{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
}

/* Das GIF liegt als background-image direkt auf .header-shell.
   Overlay weg und nur die Hintergrundgrafik leicht aufhellen. */
body.cms-theme-radio .radio-hero.has-header-image > .header-shell{
  background-color:rgba(255,255,255,.20)!important;
  background-blend-mode:screen!important;
  filter:none!important;
  opacity:1!important;
}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell .header-overlay,
body.cms-theme-radio .radio-hero.has-header-image::before{
  display:none!important;
  content:none!important;
  background:none!important;
  opacity:0!important;
}


/* === 1.6.10.23: Struktur-Fix statt weiterer Alt-CSS-Ueberschreibungen === */
body.cms-theme-radio{display:block!important;min-height:0!important;height:auto!important;padding-bottom:0!important;}
body.cms-theme-radio > main.portal-layout{flex:none!important;min-height:0!important;max-height:none!important;height:auto!important;margin-bottom:0!important;padding-bottom:1rem!important;}
body.cms-theme-radio > main.portal-layout > .portal-center,
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{align-self:start!important;min-height:0!important;height:auto!important;}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell{position:relative!important;background-image:none!important;background-color:#0b0d12!important;background-blend-mode:normal!important;filter:none!important;opacity:1!important;overflow:hidden!important;}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell > .header-background-media{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:var(--header-position,center)!important;z-index:0!important;opacity:1!important;filter:brightness(1.35) saturate(1.08)!important;}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell > .hero-inner{position:relative!important;z-index:2!important;}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell > .header-overlay,
body.cms-theme-radio .radio-hero.has-header-image::before{display:none!important;content:none!important;opacity:0!important;background:none!important;}
body.cms-theme-radio > footer.footer-single.site-footer-image-only{margin:0!important;padding:0!important;min-height:0!important;height:auto!important;background:transparent!important;}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{height:auto!important;min-height:0!important;margin-top:0!important;}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{display:block!important;width:100%!important;height:auto!important;filter:none!important;opacity:1!important;}

/* === 1.6.10.24: responsive Header/Footer + kompakter Inhaltsbereich ===
   Ziel: keine erzwungene Hoehe mehr. Header und Footer skalieren nach Bildformat. */
body.cms-theme-radio{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  padding-bottom:0!important;
}

/* Eine gemeinsame responsive Breite fuer Header, Navigation, Inhalt und Footer. */
body.cms-theme-radio .radio-topbar-inner,
body.cms-theme-radio .radio-hero > .header-shell,
body.cms-theme-radio .main-nav-shell > .nav-inner,
body.cms-theme-radio > main.portal-wrap,
body.cms-theme-radio > footer.footer-single .footer-image-shell{
  width:min(var(--portal-width,1280px),calc(100% - clamp(16px,3vw,40px)))!important;
  max-width:var(--portal-width,1280px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Header-GIF bestimmt seine eigene Hoehe. Nichts wird abgeschnitten oder gestreckt. */
body.cms-theme-radio .radio-hero,
body.cms-theme-radio .radio-hero.has-header-image{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  display:block!important;
  overflow:visible!important;
  background:transparent!important;
}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  padding:0!important;
  overflow:hidden!important;
  background:#0b0d12!important;
  border-radius:0!important;
}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell > .header-background-media{
  position:relative!important;
  inset:auto!important;
  grid-area:1/1!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  filter:none!important;
  z-index:0!important;
}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell > .hero-inner{
  grid-area:1/1!important;
  align-self:end!important;
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:clamp(.55rem,1.6vw,1.1rem) clamp(.8rem,2vw,1.4rem)!important;
  background:linear-gradient(180deg,transparent,rgba(3,5,8,.58))!important;
  box-sizing:border-box!important;
}
body.cms-theme-radio .radio-hero.has-header-image > .header-shell .header-overlay,
body.cms-theme-radio .radio-hero.has-header-image::before,
body.cms-theme-radio .radio-hero.has-header-image > .header-shell::after{
  display:none!important;
  content:none!important;
  background:none!important;
  opacity:0!important;
}
body.cms-theme-radio .radio-hero.has-header-image .header-copy strong{
  font-size:clamp(1.35rem,3vw,2.6rem)!important;
}
body.cms-theme-radio .radio-hero.has-header-image .header-copy > span:last-child{
  font-size:clamp(.72rem,1.2vw,.95rem)!important;
}

/* Der Seitenbereich wird nur so hoch wie sein echter Inhalt. */
body.cms-theme-radio > main.portal-layout{
  display:grid!important;
  align-items:start!important;
  align-content:start!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
  padding:clamp(.9rem,2vw,1.4rem) 0 clamp(1rem,2.5vw,1.7rem)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.cms-theme-radio > main.portal-layout.portal-three{
  grid-template-columns:minmax(180px,var(--left-width,230px)) minmax(0,1fr) minmax(200px,var(--right-width,260px))!important;
  gap:clamp(.75rem,1.5vw,1.15rem)!important;
}
body.cms-theme-radio > main.portal-layout > .portal-intro{
  grid-column:1/-1!important;
  margin:0!important;
  padding:0 .15rem .25rem!important;
}
body.cms-theme-radio > main.portal-layout > .portal-center,
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
  position:relative!important;
  inset:auto!important;
  align-self:start!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
body.cms-theme-radio .portal-center{
  display:grid!important;
  gap:.9rem!important;
}
body.cms-theme-radio .radio-dashboard{
  margin:0!important;
}
body.cms-theme-radio .content-card{
  min-height:0!important;
  margin:0!important;
  padding:clamp(1rem,2vw,1.45rem)!important;
  border-radius:12px!important;
}
body.cms-theme-radio .content-card h1{
  margin:0 0 .8rem!important;
  font-size:clamp(1.65rem,3vw,2.4rem)!important;
}
body.cms-theme-radio .portal-sidebar{
  display:grid!important;
  gap:.8rem!important;
}
body.cms-theme-radio .portal-widget{
  margin:0!important;
}

/* Footerbild: gleiche Breite wie die Seite, natuerliches Seitenverhaeltnis. */
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0 0 clamp(.5rem,1.5vw,1rem)!important;
  background:transparent!important;
  overflow:visible!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  overflow:hidden!important;
  background:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
}

@media(max-width:1050px){
  body.cms-theme-radio > main.portal-layout.portal-three{
    grid-template-columns:minmax(190px,230px) minmax(0,1fr)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-right{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  body.cms-theme-radio .radio-topbar-inner,
  body.cms-theme-radio .radio-hero > .header-shell,
  body.cms-theme-radio .main-nav-shell > .nav-inner,
  body.cms-theme-radio > main.portal-wrap,
  body.cms-theme-radio > footer.footer-single .footer-image-shell{
    width:calc(100% - 12px)!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three,
  body.cms-theme-radio > main.portal-layout.portal-left,
  body.cms-theme-radio > main.portal-layout.portal-right{
    grid-template-columns:1fr!important;
  }
  body.cms-theme-radio > main.portal-layout.portal-three > aside.portal-right{
    grid-column:auto!important;
    grid-template-columns:1fr!important;
  }
  body.cms-theme-radio .radio-hero.has-header-image > .header-shell > .hero-inner{
    padding:.55rem .7rem!important;
  }
  body.cms-theme-radio .radio-hero.has-header-image .header-copy .eyebrow,
  body.cms-theme-radio .radio-hero.has-header-image .header-copy > span:last-child{
    display:none!important;
  }
}
\n\n/* === 1.6.10.29: stabile dynamische Inhalts-Hoehe + VU-Zeiger === */
html{min-height:0!important;height:auto!important;}
body.cms-theme-radio{
  display:block!important;
  min-height:0!important;
  height:auto!important;
}
body.cms-theme-radio > main.portal-layout{
  display:grid!important;
  grid-auto-rows:max-content!important;
  align-items:start!important;
  align-content:start!important;
  min-height:0!important;
  height:max-content!important;
  max-height:none!important;
  overflow:visible!important;
  margin-top:0!important;
  margin-bottom:0!important;
  padding-bottom:1rem!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.cms-theme-radio > main.portal-layout > .portal-intro{align-self:start!important;}
body.cms-theme-radio > main.portal-layout > .portal-center,
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar{
  align-self:start!important;
  min-height:0!important;
  height:max-content!important;
  max-height:none!important;
  overflow:visible!important;
  border-bottom:0!important;
}
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar::before,
body.cms-theme-radio > main.portal-layout > aside.portal-sidebar::after,
body.cms-theme-radio > main.portal-layout > .portal-center::before,
body.cms-theme-radio > main.portal-layout > .portal-center::after{
  min-height:0!important;
  height:auto!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  margin-top:0!important;
  padding-top:0!important;
  min-height:0!important;
  height:auto!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only > .footer-image-shell{
  min-height:0!important;
  height:auto!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only .footer-picture{
  display:block!important;
  width:100%!important;
  height:auto!important;
}
/* Header bleibt das Originalbild; nur die beiden Instrumentzeiger bewegen sich. */
body.cms-theme-radio .radio-hero.has-header-image > .header-shell{position:relative!important;}
.header-vu-overlay{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:2!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.header-vu-needle{
  stroke:#ff3b30;
  stroke-width:2.7;
  stroke-linecap:round;
  filter:drop-shadow(0 0 1px rgba(255,235,180,.9));
  transform-box:view-box;
}
.header-vu-left{
  transform-origin:443px 110px;
  animation:cmsVuLeft 1.15s ease-in-out infinite alternate;
}
.header-vu-right{
  transform-origin:517px 110px;
  animation:cmsVuRight .93s ease-in-out infinite alternate;
}
@keyframes cmsVuLeft{0%{transform:rotate(-20deg)}36%{transform:rotate(12deg)}67%{transform:rotate(-7deg)}100%{transform:rotate(20deg)}}
@keyframes cmsVuRight{0%{transform:rotate(16deg)}31%{transform:rotate(-14deg)}72%{transform:rotate(8deg)}100%{transform:rotate(-21deg)}}
@media (prefers-reduced-motion:reduce){.header-vu-needle{animation:none!important;}}

/* === 1.6.10.30: Hauptbereich exakt bis zur hoechsten sichtbaren Spalte === */
body.cms-theme-radio > main.portal-layout{
  flex:none!important;
  min-height:0!important;
  max-height:none!important;
  align-content:start!important;
  overflow:visible!important;
  margin-bottom:0!important;
}
body.cms-theme-radio > footer.footer-single.site-footer-image-only{
  margin-top:0!important;
}
\n\n/* === 1.6.10.31: Original-Header + echte Kartenhoehe + keine graue Linie === */\nbody.cms-theme-radio > main.portal-layout{\n  border:0!important;\n  border-left:0!important;\n  border-right:0!important;\n  box-shadow:none!important;\n  min-height:0!important;\n  max-height:none!important;\n  align-content:start!important;\n  overflow:visible!important;\n}\nbody.cms-theme-radio > main.portal-layout::before,\nbody.cms-theme-radio > main.portal-layout::after,\nbody.cms-theme-radio > main.portal-layout > .portal-center::before,\nbody.cms-theme-radio > main.portal-layout > .portal-center::after,\nbody.cms-theme-radio > main.portal-layout > aside.portal-sidebar::before,\nbody.cms-theme-radio > main.portal-layout > aside.portal-sidebar::after{\n  content:none!important;\n  display:none!important;\n  border:0!important;\n}\nbody.cms-theme-radio > main.portal-layout > .portal-center,\nbody.cms-theme-radio > main.portal-layout > aside.portal-sidebar{\n  border-left:0!important;\n  border-right:0!important;\n  box-shadow:none!important;\n}\n/* Das mitgelieferte GIF wird 1:1 gezeigt; keine synthetischen Pegel darueber. */\nbody.cms-theme-radio .header-vu-overlay{display:none!important;}\nbody.cms-theme-radio .radio-hero.has-header-image > .header-shell > .header-background-media{\n  display:block!important;\n  width:100%!important;\n  height:auto!important;\n  max-width:100%!important;\n  object-fit:contain!important;\n  opacity:1!important;\n  filter:none!important;\n}\nbody.cms-theme-radio > footer.footer-single.site-footer-image-only{margin-top:0!important;}\n
/* 1.6.10.77: Grunddesign-Hintergrund nur einmal ueber den gesamten Viewport.
   Inhalts-Wrapper duerfen keine zweite Kopie des Seitenhintergrunds zeichnen. */
html, body { min-height:100%; }
body { background-repeat:no-repeat !important; background-position:center top !important; background-size:cover !important; background-attachment:fixed !important; }
.site-shell, .page-shell, .portal-shell, .site-wrap, .page-wrap, main, .portal-layout, .portal-layout-clean, .rd-fixed-layout { background-image:none !important; }

/* 1.6.10.77: Seitliche Streifen an der Navigation entfernen.
   Nur der mittlere Navigationskasten bleibt dunkel; der volle Aussen-Wrapper ist transparent. */
body.cms-theme-radio > .main-nav-shell,
body.cms-theme-radio .main-nav-shell {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
body.cms-theme-radio .main-nav-shell > .nav-inner {
  background: rgba(8,9,13,.96) !important;
  background-image: none !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: none !important;
  border-radius: 0 0 14px 14px !important;
}
body.cms-theme-radio .main-nav-shell::before,
body.cms-theme-radio .main-nav-shell::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* === 1.6.10.77: Navigationsband ueber volle Breite ===
   Das Seiten-Hintergrundbild darf links/rechts neben der Navigation nicht durchscheinen. */
body.cms-theme-radio > .main-nav-shell,
body.cms-theme-radio .main-nav-shell {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:#08090d !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
body.cms-theme-radio .main-nav-shell > .nav-inner {
  background:#08090d !important;
  background-image:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
}


/* 1.6.10.77: Navigations-Aussenbereich fuer ALLE Designs transparent.
   Wichtig: importierte Designs heissen cms-theme-custom_* und wurden von den
   alten cms-theme-radio-Regeln nicht erfasst. */
body .main-nav-shell {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
body .main-nav-shell::before,
body .main-nav-shell::after {
  content:none !important;
  display:none !important;
}
body .main-nav-shell > .nav-inner {
  background:#08090d !important;
  background-image:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* 1.6.10.77: Header ohne kleines Logo; Seitentitel in einer Zeile */
.header-logo,.site-header-logo,.hero-logo,.header-brand img,.header-content>img:not(.header-bg),.cms-header-logo{display:none!important;}
.header-title,.site-header-title,.hero-title,.cms-header-title{white-space:nowrap!important;max-width:none!important;width:auto!important;line-height:1!important;}

/* 1.6.10.77: Kontaktformular */
.contact-card{max-width:760px!important}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.contact-form label{display:grid;gap:8px;font-weight:700}.contact-form .full{grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;padding:12px 14px;border:1px solid rgba(148,163,184,.4);border-radius:10px;background:#fff;color:#111827}.contact-form textarea{resize:vertical}.contact-form button{justify-self:start}@media(max-width:760px){.contact-form{grid-template-columns:1fr}.contact-form label,.contact-form .full{grid-column:1!important}}

/* 1.6.10.77 Begruessung und Uhrzeit in linker Infobox */
.welcome-greeting-box{padding:4px 0 10px}.welcome-greeting{font-size:1.35rem;font-weight:800;line-height:1.15;margin-bottom:8px}.welcome-clock{font-size:1.7rem;font-weight:800;letter-spacing:.04em;font-variant-numeric:tabular-nums}.welcome-date{margin-top:5px;font-size:.85rem;opacity:.78}

/* 1.6.10.77: leeren Balken oberhalb Hoerer- & Team-Login entfernen */
.right-column > :empty:first-child,.sidebar-right > :empty:first-child,.right-rail > :empty:first-child,.portal-right > :empty:first-child{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;}

/* 1.6.10.77: obere Zierlinie der Hoerer- & Team-Login-Box entfernen */
.portal-widget.widget-login,.portal-widget.widget-type-login{border-top:0!important;}

/* 1.6.10.77: Login-Zierbalken vollstaendig entfernen */
.portal-widget.widget-login h2::before,.portal-widget.widget-login h2::after,.portal-widget.widget-type-login h2::before,.portal-widget.widget-type-login h2::after{content:none!important;display:none!important}.portal-widget.widget-login h2,.portal-widget.widget-type-login h2{border-top:0!important;border-bottom:0!important;box-shadow:none!important}.portal-widget.widget-login,.portal-widget.widget-type-login{border-top:0!important}

/* 1.6.10.77 Navigation exakt an Layoutbreite koppeln */
.site-nav,.main-nav,.top-nav,.portal-nav,.nav-shell,.navigation-wrap{width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;}
.site-nav-inner,.main-nav-inner,.top-nav-inner,.portal-nav-inner,.nav-inner{width:100%!important;max-width:100%!important;box-sizing:border-box!important;}

/* 1.6.10.77: Navigation exakt auf Headerbreite + seitliche Header-Schatten entfernen */
.site-header,.header-shell,.main-header,.portal-header,.hero-header,.main-nav,.site-nav,.top-nav,.portal-nav,.main-nav-shell{
  width:100%!important;max-width:1400px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;
}
.main-nav-shell,.site-nav,.main-nav,.top-nav,.portal-nav{padding-left:0!important;padding-right:0!important;}
.header-shell::before,.header-shell::after,.site-header::before,.site-header::after,.main-header::before,.main-header::after,.portal-header::before,.portal-header::after,.hero-header::before,.hero-header::after{content:none!important;display:none!important;box-shadow:none!important;background:none!important;}
.site-header,.header-shell,.main-header,.portal-header,.hero-header{box-shadow:none!important;filter:none!important;}


/* === 1.6.10.78 MOBILE FIX: nur Darstellung auf kleinen Displays === */
@media (max-width:760px){
  html,body{max-width:100%;overflow-x:hidden!important;}
  *,*::before,*::after{box-sizing:border-box;}

  /* Die fest vorgegebenen Desktop-Spalten werden mobil sauber gestapelt. */
  #portal-fixed-grid{
    --portal-mobile-columns:minmax(0,1fr);
    width:calc(100% - 16px)!important;
    max-width:100%!important;
    column-gap:0!important;
    row-gap:.75rem!important;
    padding:.65rem 0 .35rem!important;
  }
  #portal-fixed-grid>.portal-left{
    --portal-left-column:1;
    --portal-left-row:auto;
  }
  #portal-fixed-grid>.portal-center{
    --portal-center-column:1;
    --portal-center-row:auto;
  }
  #portal-fixed-grid>.portal-right{
    --portal-right-column:1;
    --portal-right-row:auto;
  }
  #portal-fixed-grid>.portal-left,
  #portal-fixed-grid>.portal-center,
  #portal-fixed-grid>.portal-right{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  /* Inhalte duerfen die Bildschirmbreite nicht sprengen. */
  #portal-fixed-grid .portal-widget,
  #portal-fixed-grid .content-card,
  #portal-fixed-grid .radio-dashboard,
  #portal-fixed-grid .radio-feature,
  #portal-fixed-grid img,
  #portal-fixed-grid video,
  #portal-fixed-grid iframe,
  #portal-fixed-grid table{
    max-width:100%!important;
  }
  #portal-fixed-grid img,#portal-fixed-grid video{height:auto!important;}
  #portal-fixed-grid iframe{width:100%!important;}
  #portal-fixed-grid .content-card,
  #portal-fixed-grid .portal-widget{overflow-wrap:anywhere;word-break:normal;}

  /* Player und Schnellwahl werden fingerfreundlich und ohne Abschneiden. */
  #portal-fixed-grid .radio-feature{
    grid-template-columns:1fr!important;
    min-height:0!important;
    padding:.8rem!important;
  }
  #portal-fixed-grid .radio-wave{display:none!important;}
  #portal-fixed-grid .radio-quick-grid{grid-template-columns:1fr!important;gap:.55rem!important;}
  #portal-fixed-grid .radio-quick-grid a{min-height:52px!important;}

  /* Header bleibt derselbe, passt sich aber an die Displaybreite an. */
  body .radio-topbar-inner,
  body .radio-hero>.header-shell,
  body .main-nav-shell>.nav-inner,
  body>footer.footer-single .footer-image-shell{
    width:calc(100% - 12px)!important;
    max-width:100%!important;
  }
  .header-title,.site-header-title,.hero-title,.cms-header-title{
    max-width:100%!important;
    font-size:clamp(1rem,7vw,2rem)!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* Navigation sichtbar halten, ohne Elemente aus dem Bildschirm zu schieben. */
  body .main-nav-shell>.nav-inner,
  body .main-nav-shell nav,
  body .site-nav,
  body .main-nav,
  body .top-nav,
  body .portal-nav{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:.35rem!important;
  }
  body .main-nav-shell a,
  body .site-nav a,
  body .main-nav a,
  body .top-nav a,
  body .portal-nav a{
    min-width:0!important;
    white-space:normal!important;
    text-align:center!important;
  }

  /* Formulare mobil einspaltig. */
  form input,form select,form textarea,form button{max-width:100%;}
  .contact-form{grid-template-columns:1fr!important;}
  .contact-form label,.contact-form .full{grid-column:1!important;}
}

@media (max-width:420px){
  #portal-fixed-grid{width:calc(100% - 10px)!important;}
  #portal-fixed-grid .content-card,#portal-fixed-grid .portal-widget{padding-left:.7rem!important;padding-right:.7rem!important;}
  .welcome-greeting{font-size:1.1rem!important;}
  .welcome-clock{font-size:1.4rem!important;}
}

/* === 1.6.10.79 MOBILE STACK FIX: Boxen untereinander, keine Funktionsaenderung === */
@media (max-width:760px){
  body{min-width:0!important;}
  .portal-wrap{width:calc(100% - 16px)!important;margin-left:auto!important;margin-right:auto!important;}
  #portal-fixed-grid{
    display:flex!important;
    flex-direction:column!important;
    width:calc(100% - 16px)!important;
    max-width:none!important;
    gap:.75rem!important;
    padding:.65rem 0!important;
  }
  #portal-fixed-grid>.portal-left,
  #portal-fixed-grid>.portal-center,
  #portal-fixed-grid>.portal-right{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  #portal-fixed-grid>.portal-left{order:1!important;}
  #portal-fixed-grid>.portal-center{order:2!important;}
  #portal-fixed-grid>.portal-right{order:3!important;}
  #portal-fixed-grid .portal-widget,
  #portal-fixed-grid .content-card,
  #portal-fixed-grid .radio-dashboard,
  #portal-fixed-grid .radio-feature{width:100%!important;min-width:0!important;max-width:100%!important;}
  #portal-fixed-grid .widget-body{min-width:0!important;overflow:hidden;}
  #portal-fixed-grid table{display:block!important;width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;}
  #portal-fixed-grid iframe{display:block!important;width:100%!important;min-width:0!important;}
  #portal-fixed-grid input,#portal-fixed-grid select,#portal-fixed-grid textarea,#portal-fixed-grid button{min-width:0!important;max-width:100%!important;}

  .radio-topbar-inner,.radio-hero>.header-shell,.main-nav-shell>.nav-inner,
  body>footer.footer-single .footer-image-shell{width:calc(100% - 16px)!important;max-width:none!important;}
  .header-brand,.header-copy,.hero-inner{min-width:0!important;max-width:100%!important;width:100%!important;}
  .header-title,.site-header-title,.hero-title,.cms-header-title,.header-copy strong{
    white-space:normal!important;overflow-wrap:anywhere!important;text-overflow:clip!important;max-width:100%!important;
  }
  .main-nav-shell>.nav-inner{min-height:0!important;padding:.45rem 0!important;}
  .site-main-nav{width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.35rem!important;}
  .site-main-nav a,.nav-admin-link{width:100%!important;min-width:0!important;padding:.65rem .45rem!important;white-space:normal!important;text-align:center!important;}

  .admin-top,.toolbar,.actions,.inline-form,.row-actions{flex-wrap:wrap!important;}
  .admin-main{width:100%!important;max-width:100%!important;padding:1rem!important;overflow-x:hidden!important;}
  .panel,.table-wrap{max-width:100%!important;min-width:0!important;}
}
@media (max-width:420px){
  #portal-fixed-grid,.portal-wrap{width:calc(100% - 10px)!important;}
  .site-main-nav{grid-template-columns:1fr!important;}
  #portal-fixed-grid .widget-body,#portal-fixed-grid .content-card{padding:.75rem!important;}
}

/* === 1.6.10.80 MOBILE PLAYER CLICK FIX: nur Touch/Anklickbarkeit === */
@media (max-width:760px){
  #portal-fixed-grid .radio-feature::after{
    pointer-events:none!important;
  }
  #portal-fixed-grid [data-radio-toggle],
  #portal-fixed-grid .feature-play{
    position:relative!important;
    z-index:5!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
}

/* 1.6.10.81 MOBILE PLAYER CLICK FIX
   Die dekorative ::after-Flaeche der Live-Box darf auf schmalen Displays
   keine Touch-Ereignisse des vorhandenen Radio-einschalten-Buttons abfangen. */
@media (max-width: 900px) {
  body.cms-theme-radio .radio-feature::after {
    pointer-events: none !important;
  }
}

/* 1.6.10.83: Bild des aktuell sendenden Moderators aus dem Sendeplan im Player */
.radio-live-visual{display:flex;align-items:center;justify-content:flex-end;gap:.8rem;position:relative;z-index:2}
.radio-live-moderator-image{width:92px;height:92px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.9);box-shadow:0 8px 28px rgba(0,0,0,.38);background:#171b25;pointer-events:none}
.radio-live-moderator-image[hidden]{display:none!important}
.radio-live-visual.has-moderator-image .radio-wave{display:none!important}
@media(max-width:900px){
  .cms-theme-radio .radio-feature{grid-template-columns:minmax(0,1fr) 72px!important}
  .cms-theme-radio .radio-live-visual{display:flex!important;align-self:center!important}
  .cms-theme-radio .radio-live-moderator-image{width:66px;height:66px;border-width:2px}
  .cms-theme-radio .radio-live-visual:not(.has-moderator-image){display:none!important}
}

/* Mittelbereich-Bilder 1.6.10.86 */
.prose .content-upload-image{display:block;margin:1rem auto;max-width:100%;}
.prose .content-upload-image img{display:block;width:100%;max-width:100%;height:auto;border-radius:10px;}
.prose .content-upload-image.size-25{width:25%;}
.prose .content-upload-image.size-50{width:50%;}
.prose .content-upload-image.size-75{width:75%;}
.prose .content-upload-image.size-100{width:100%;}
.prose .content-upload-image.align-left{margin-left:0;margin-right:auto;}
.prose .content-upload-image.align-center{margin-left:auto;margin-right:auto;}
.prose .content-upload-image.align-right{margin-left:auto;margin-right:0;}
.content-image-uploader{border:1px solid #cbd5e1;border-radius:12px;padding:1rem;display:grid;gap:.9rem;background:#f8fafc;}
.content-image-uploader-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.content-image-uploader-head>div{display:grid;gap:.25rem;}
.content-image-uploader-head small,.content-image-uploader>small{font-weight:400;color:#64748b;}
.content-image-row{display:grid;grid-template-columns:minmax(220px,2fr) minmax(150px,1fr) minmax(150px,1fr) auto;gap:.75rem;align-items:end;padding:.8rem 0;border-top:1px solid #e2e8f0;}
.content-image-row:first-child{border-top:0;padding-top:0;}
.content-image-remove{align-self:end;margin-bottom:.35rem;}
@media (max-width:900px){
  .prose .content-upload-image.size-25,.prose .content-upload-image.size-50,.prose .content-upload-image.size-75,.prose .content-upload-image.size-100{max-width:100%;}
  .content-image-uploader-head{align-items:stretch;flex-direction:column;}
  .content-image-row{grid-template-columns:1fr;}
}

/* === Mittelbereich-Bilder: niemals Spaltenbreite sprengen === */
.portal-center,
.portal-layout > .portal-center,
.portal-layout .portal-center,
.content-card,
.content-card .prose,
.prose {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.portal-center,
.portal-layout > .portal-center {
  overflow-x: hidden !important;
}

.prose .content-upload-image {
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.prose .content-upload-image img,
.portal-center .prose img,
.content-card .prose img {
  display: block;
  max-width: 100% !important;
  width: 100%;
  height: auto !important;
  box-sizing: border-box !important;
  object-fit: contain;
}

.prose .content-upload-image.size-25 { width: 25% !important; }
.prose .content-upload-image.size-50 { width: 50% !important; }
.prose .content-upload-image.size-75 { width: 75% !important; }
.prose .content-upload-image.size-100 { width: 100% !important; }

/* Admin navigation visibility fix */
.admin-body .admin-nav{overflow-y:auto;overflow-x:hidden;}

/* Benutzerprofil mit Profilfoto */
.profile-panel{max-width:900px}
.profile-heading{display:flex;align-items:center;gap:1.2rem;margin-bottom:1.4rem}
.profile-heading h2{margin:0 0 .3rem}
.profile-heading p{margin:0;opacity:.8}
.profile-photo-large,.profile-photo-placeholder{width:112px;height:112px;border-radius:50%;flex:0 0 112px}
.profile-photo-large{object-fit:cover;border:3px solid rgba(255,255,255,.18);box-shadow:0 8px 24px rgba(0,0,0,.28)}
.profile-photo-placeholder{display:grid;place-items:center;font-size:2.4rem;font-weight:700;background:rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.16)}
.profile-form small{display:block;margin-top:.35rem;opacity:.72;font-weight:400}
.profile-remove{display:flex!important;align-items:center;gap:.6rem}
.profile-remove input{width:auto!important;margin:0}
.login-avatar-photo{overflow:hidden;padding:0!important}
.login-avatar-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
@media(max-width:600px){.profile-heading{align-items:flex-start}.profile-photo-large,.profile-photo-placeholder{width:82px;height:82px;flex-basis:82px}.profile-photo-placeholder{font-size:1.8rem}}

/* Teamkarten kompakter: Profilbilder kleiner anzeigen */
.team-page .moderator-grid{grid-template-columns:repeat(auto-fit,minmax(220px,280px));justify-content:start;gap:1rem}
.team-page .team-card{max-width:280px}
.team-page .team-card img,.team-page .team-card .moderator-placeholder{width:100%;height:190px;aspect-ratio:auto;object-fit:cover}
@media(max-width:560px){.team-page .moderator-grid{grid-template-columns:minmax(0,280px);justify-content:center}.team-page .team-card{width:100%}}
