/*
Theme Name: Universal Radio Theme
Description: Clean, modern and general WordPress radio theme.
Version: 9.0.0
*/
:root{
 --site-width:1280px;
 --accent:#1769aa;
 --accent-dark:#0f4f83;
 --page:#f3f5f7;
 --surface:#ffffff;
 --line:#dfe4e8;
 --text:#20262d;
 --muted:#6b747d;
 --left-width:22%;
 --middle-width:56%;
 --right-width:22%;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
 background:#f3f5f7;
 color:var(--text);
 font-family:Arial,Helvetica,sans-serif;
 font-size:16px;
 line-height:1.5;
}
a{color:var(--accent)}
.site{
 width:100%;
 max-width:var(--site-width);
 margin:0 auto;
 padding:0 16px;
}
.site-header{width:100%}
.banner{
 min-height:180px;
 width:100%;
 background:#fff;
 border-bottom:1px solid var(--line);
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
}
.banner-title{
 color:var(--text);
 font-size:clamp(30px,5vw,58px);
 font-weight:800;
 text-align:center;
 padding:30px 20px;
}
.site-logo{
 max-width:100%;
 max-height:125px;
 width:auto;
 height:auto;
 object-fit:contain;
}
.nav{
 width:100%;
 margin:0 0 22px;
 background:#fff;
 border-bottom:1px solid var(--line);
}
.nav ul{
 list-style:none;
 margin:0;
 padding:0;
 display:flex;
 flex-wrap:wrap;
 justify-content:center;
}
.nav li{margin:0}
.nav a{
 display:block;
 padding:13px 18px;
 color:#27313a;
 text-decoration:none;
 font-size:13px;
 font-weight:700;
 text-transform:uppercase;
 border-bottom:3px solid transparent;
}
.nav a:hover,
.nav .current-menu-item>a{
 color:var(--accent);
 border-bottom-color:var(--accent);
}
.layout{
 display:grid;
 grid-template-columns:minmax(0,22%) minmax(0,56%) minmax(0,22%);
 gap:22px;
 width:100%;
 align-items:start;
}
.column{min-width:0}
.widget,
.content-card,
.irm-custom-block,
.irm-free-html{
 background:var(--surface);
 border:1px solid var(--line);
 border-radius:4px;
 overflow:hidden;
}
.widget{margin-bottom:18px}
.widget-title,
.irm-3d-title{
 margin:0;
 padding:11px 14px;
 background:#fff;
 color:#20262d;
 border-bottom:3px solid var(--accent);
 font-size:15px;
 font-weight:800;
 text-transform:uppercase;
 letter-spacing:.2px;
}
.widget>*:not(.widget-title){margin-left:14px;margin-right:14px}
.content-card{
 margin-bottom:18px;
}
.content-card>h1,
.content-card>h2{
 margin:0;
 padding:12px 14px;
 background:#fff;
 color:#20262d;
 border-bottom:3px solid var(--accent);
 font-size:22px;
}
.content-card>p,
.content-card>div,
.content-card>img{
 margin-left:14px;
 margin-right:14px;
}
.page-content,.home-content{
 padding:14px;
 overflow:hidden;
 overflow-wrap:anywhere;
}
.page-content img,.home-content img{
 max-width:100%;
 height:auto;
}
.irm-custom-block{
 margin-bottom:18px!important;
}
.irm-title-bar{
 width:100%;
 min-height:48px;
 display:flex;
 align-items:center;
 gap:10px;
 padding:8px 13px;
 color:var(--irm-title-text);
 background:var(--irm-title-bg);
 border-bottom:3px solid rgba(0,0,0,.12);
 border-radius:0;
 box-shadow:none;
 font-weight:800;
 text-transform:uppercase;
 overflow:hidden;
 overflow-wrap:anywhere;
}
.irm-align-left{justify-content:flex-start;text-align:left}
.irm-align-center{justify-content:center;text-align:center}
.irm-align-right{justify-content:flex-end;text-align:right}
.irm-title-label{
 min-width:0;
 max-width:100%;
 overflow-wrap:anywhere;
}
.irm-title-image{
 object-fit:cover;
 border-radius:3px;
 flex:0 0 auto;
}
.irm-block-content{
 padding:14px;
 background:#fff;
 overflow:hidden;
 overflow-wrap:anywhere;
}
.irm-block-content img,
.irm-block-content video,
.irm-block-content iframe,
.irm-block-content embed,
.irm-block-content object{
 max-width:100%;
 height:auto;
}
.irm-block-content iframe,
.irm-block-content video{width:100%}
.irm-block-content audio{max-width:100%}
.irm-free-html{
 padding:14px;
 margin-bottom:18px;
 overflow:hidden;
 overflow-wrap:anywhere;
}
.irm-free-html img,
.irm-free-html video,
.irm-free-html iframe,
.irm-free-html embed,
.irm-free-html object{
 display:block;
 max-width:100%;
 width:100%;
 height:auto;
}
.irm-free-html audio{max-width:100%}
.site-footer{
 margin-top:24px;
 padding:18px 0;
 background:#fff;
 color:var(--muted);
 border-top:1px solid var(--line);
 text-align:center;
}
.site-footer a{color:var(--accent)}
button,
.button,
input[type="submit"]{
 background:var(--accent);
 color:#fff;
 border:0;
 border-radius:3px;
 padding:9px 14px;
 font-weight:700;
}
@media(max-width:950px){
 .layout{grid-template-columns:1fr}
}
@media(max-width:600px){
 .site{padding:0 10px}
 .banner{min-height:125px}
 .nav a{padding:10px 11px;font-size:11px}
 .layout{gap:14px}
}


/* Unlimited Radio Blok widgets */
.irm-radio-widget{
    margin:0 0 var(--irm-widget-gap,18px);
    background:var(--irm-widget-body-bg,#fff);
    border:1px solid var(--line);
    border-radius:var(--irm-widget-radius,6px);
    overflow:hidden;
    box-shadow:0 2px 8px rgba(0,0,0,.06);
}
.irm-radio-widget:last-child{margin-bottom:0}
.irm-radio-widget-title{
    min-height:46px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:9px 13px;
    background:var(--irm-widget-title-bg,#222);
    color:var(--irm-widget-title-color,#fff);
    font-weight:800;
    text-transform:uppercase;
    border-bottom:3px solid rgba(0,0,0,.18);
}
.irm-widget-align-left{justify-content:flex-start;text-align:left}
.irm-widget-align-center{justify-content:center;text-align:center}
.irm-widget-align-right{justify-content:flex-end;text-align:right}
.irm-radio-widget-image{
    width:42px;height:42px;object-fit:cover;border-radius:4px;flex:0 0 auto;
}
.irm-radio-widget-photo{
    padding:12px 12px 0;
    text-align:center;
}
.irm-radio-widget-photo img{
    display:block;
    width:100%;
    height:auto;
    max-height:360px;
    object-fit:contain;
    margin:0 auto;
}
.irm-radio-widget-content{
    padding:14px;
    color:var(--text,#222);
    overflow-wrap:anywhere;
}
.irm-radio-widget-content img,
.irm-radio-widget-content video,
.irm-radio-widget-content iframe,
.irm-radio-widget-content embed,
.irm-radio-widget-content object{
    max-width:100%;
}
.irm-radio-widget-content iframe,
.irm-radio-widget-content video{
    width:100%;
}
.irm-radio-widget-content p:last-child{margin-bottom:0}
.column .widget{
    margin-bottom:18px;
}
.column .widget + .widget{
    margin-top:0;
}


/* Banner sizing and breathing room */
.site-banner{
    height:var(--banner-height,220px);
    margin-bottom:var(--banner-gap,20px);
}
.site-banner img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
@media (max-width:700px){
    .site-banner{
        height:auto;
        min-height:120px;
        margin-bottom:var(--banner-gap,20px);
    }
    .site-banner img{
        height:auto;
        max-height:none;
        object-fit:contain;
    }
}


/* Full-page background layer: the chosen image covers the entire viewport/page area. */
.irm-background-layer{
    position:fixed;
    inset:0;
    z-index:-1;
    pointer-events:none;
}
body{
    min-height:100vh;
    background-color:var(--bg,#101010);
}
.site{
    position:relative;
    z-index:1;
}
.banner{
    margin-bottom:20px;
}
.irm-player{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:99999;
    background:var(--player-bg,#171717);
    color:var(--player-text,#fff);
    border-top:2px solid var(--accent,#008a45);
    box-shadow:0 -6px 24px rgba(0,0,0,.28);
}
.irm-player-inner{
    width:min(1200px,calc(100% - 24px));
    margin:0 auto;
    min-height:66px;
    display:flex;
    align-items:center;
    gap:14px;
    padding:8px 0;
}
.irm-player-play{
    width:48px;
    height:48px;
    flex:0 0 48px;
    border-radius:50%;
    padding:0;
    font-size:19px;
    display:grid;
    place-items:center;
    background:var(--accent,#008a45);
    color:#fff;
}
.irm-player-meta{
    min-width:0;
    flex:1 1 auto;
    overflow:hidden;
}
.irm-player-label{
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
    opacity:.7;
    margin-bottom:2px;
}
.irm-player-marquee{
    white-space:nowrap;
    overflow:hidden;
    position:relative;
    font-size:16px;
    font-weight:700;
}
.irm-player-marquee span{
    display:inline-block;
    padding-right:100%;
    animation:irmMarquee 18s linear infinite;
}
@keyframes irmMarquee{
    0%{transform:translateX(0)}
    100%{transform:translateX(-100%)}
}
.irm-audio-meter{
    width:190px;
    flex:0 0 190px;
    color:var(--player-text,#fff);
}
.irm-meter-top{
    display:flex;
    justify-content:space-between;
    font-size:9px;
    font-weight:800;
    letter-spacing:.12em;
    opacity:.9;
    margin-bottom:4px;
}
.irm-meter-bars{
    display:flex;
    flex-direction:column;
    gap:3px;
}
.irm-meter-channel{
    display:block;
    height:6px;
    background:rgba(255,255,255,.2);
    border-radius:4px;
    overflow:hidden;
}
.irm-meter-channel i{
    display:block;
    width:0%;
    height:100%;
    background:linear-gradient(90deg,#35d66f 0 65%,#ffd84d 65% 85%,#ff4b4b 85%);
    border-radius:4px;
    transition:width .04s linear;
}
.irm-meter-scale{
    display:flex;
    justify-content:space-between;
    font-size:7px;
    opacity:.55;
    margin-top:2px;
}
.irm-player-volume{
    width:130px;
    flex:0 0 130px;
}
@media(max-width:600px){
    .irm-player-inner{width:calc(100% - 16px);gap:9px}
    .irm-audio-meter{width:105px;flex-basis:105px}
    .irm-player-volume{width:85px;flex-basis:85px}
    .irm-player-play{width:44px;height:44px;flex-basis:44px}
    .irm-player-marquee{font-size:14px}
}
body{padding-bottom:82px}
