/*
Theme Name: AzzurroRadio
Theme URI: https://azzurroradio.nl
Author: AzzurroRadio
Description: Compleet radiothema met programma's, dj-profielen, programmering, Mixcloud-uitzendingen en hitlijstarchieven.
Version: 1.3.2
Text Domain: azzurroradio
Requires at least: 6.4
Requires PHP: 8.0
*/

:root{--navy:#11192e;--ink:#14233b;--blue:#087cad;--gold:#efb02c;--pink:#ed275d;--paper:#f6f8fa;--muted:#657487;--line:#d9e3e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:50}.header-inner{display:flex;align-items:center;gap:34px}.brand img{width:100px}.main-nav{margin-left:auto;display:flex;gap:24px;align-items:center;flex-wrap:wrap}.main-nav a{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.listen-button,.button{border:0;border-radius:99px;background:var(--gold);color:var(--ink);font-weight:900;padding:14px 22px;cursor:pointer;text-transform:uppercase}.hero{min-height:620px;background:linear-gradient(90deg,rgba(8,18,35,.93),rgba(8,18,35,.5)),url('assets/images/hero.webp') center/cover;display:flex;align-items:center;color:#fff}.hero-copy{max-width:700px;padding:70px 0}.eyebrow{color:var(--gold);font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;font-weight:900}.hero h1{font-size:clamp(3.5rem,8vw,7.6rem);line-height:.86;margin:18px 0;text-transform:uppercase;font-family:Impact,'Arial Narrow',sans-serif;font-weight:400}.hero h1 em{color:var(--gold);font-style:normal}.hero p{font-size:1.18rem;line-height:1.6;max-width:620px}.now-strip{background:var(--navy);color:white;padding:18px 0}.now-strip .wrap{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:18px}.now-cover{width:70px;height:70px;border-radius:50%;object-fit:cover;border:4px solid white}.now-label{color:var(--pink);font-size:.72rem;font-weight:900}.now-title{font-size:1.15rem;font-weight:900;margin:4px 0}.section{padding:76px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.section-head h2,.page-title{font:400 clamp(2.6rem,5vw,5rem)/.95 Impact,'Arial Narrow',sans-serif;text-transform:uppercase;margin:8px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 12px 35px #0c314216}.card img{width:100%;aspect-ratio:4/3;object-fit:cover}.card-body{padding:22px}.card h3{font-size:1.45rem;margin:4px 0}.meta{color:var(--blue);font-size:.76rem;text-transform:uppercase;font-weight:900;letter-spacing:.07em}.card p{color:var(--muted);line-height:1.55}.schedule-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.schedule-tabs button{border:1px solid var(--line);background:#fff;padding:11px 16px;border-radius:99px;font-weight:800;cursor:pointer}.schedule-tabs button.active{background:var(--ink);color:#fff}.schedule-day{display:none}.schedule-day.active{display:block}.schedule-row{display:grid;grid-template-columns:150px 1fr 220px;gap:20px;background:white;padding:20px;border-bottom:1px solid var(--line)}.schedule-row:first-child{border-radius:15px 15px 0 0}.schedule-row:last-child{border:0;border-radius:0 0 15px 15px}.schedule-time{font-weight:900;color:var(--blue)}.schedule-title{font-size:1.15rem;font-weight:900}.schedule-host{color:var(--muted)}.dark{background:var(--navy);color:white}.dark .section-head p{color:#abb7c8}.archive-hero{padding:70px 0;background:linear-gradient(120deg,var(--navy),#153f64);color:#fff}.admin-hint{background:#fff6d8;border-left:5px solid var(--gold);padding:16px;border-radius:8px;margin:22px 0}.episode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.episode{background:#fff;border-radius:18px;padding:24px;box-shadow:0 12px 35px #0c314216}.episode h2{margin:8px 0}.mixcloud{width:100%;height:120px;border:0;margin-top:15px}.chart-search{background:#fff;padding:24px;border-radius:18px;margin:-35px auto 35px;position:relative;box-shadow:0 12px 35px #0c314216}.chart-search form{display:flex;gap:16px;align-items:end}.chart-search label{font-weight:900;text-transform:uppercase;font-size:.78rem;flex:1}.chart-search input{display:block;width:100%;padding:14px;border:1px solid var(--line);border-radius:10px;margin-top:7px}.chart-list{background:#fff;border-radius:18px;padding:0;overflow:hidden;box-shadow:0 12px 35px #0c314216}.chart-list li{list-style:none;display:grid;grid-template-columns:64px 1fr 40px;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}.chart-position{font-size:1.4rem;font-weight:900;color:var(--blue)}.chart-artist{display:block;color:var(--muted);margin-top:4px}.site-footer{background:#080f1e;color:#b8c2d0;padding:45px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-inner img{width:120px}.empty{padding:28px;background:#fff;border-radius:15px;color:var(--muted)}.entry-content{line-height:1.7}.wp-block-image img{border-radius:16px}@media(max-width:850px){.site-header{height:auto;padding:15px 0}.header-inner{flex-wrap:wrap}.main-nav{order:3;width:100%;gap:13px}.cards,.episode-grid{grid-template-columns:1fr 1fr}.schedule-row{grid-template-columns:110px 1fr}.schedule-host{grid-column:2}.now-strip .wrap{grid-template-columns:60px 1fr}.now-cover{width:55px;height:55px}.now-strip .listen-button{grid-column:1/-1}}@media(max-width:560px){.wrap{width:min(100% - 24px,1180px)}.hero{min-height:530px}.hero h1{font-size:3.5rem}.cards,.episode-grid{grid-template-columns:1fr}.section{padding:52px 0}.chart-search form{display:block}.chart-search button{margin-top:14px;width:100%}.footer-inner{display:block}.schedule-row{grid-template-columns:1fr;gap:7px}.schedule-host{grid-column:auto}}

/* Header-logo en rustige vervanging wanneer een eerdere plaat nog geen hoes heeft. */
.site-header{height:104px}.brand{flex:0 0 170px}.brand a,.brand .custom-logo-link{display:block;width:170px;height:84px;overflow:hidden;display:grid;place-items:center}.brand img{width:170px!important;height:84px!important;max-width:none!important;object-fit:contain;transform:scale(1.32);transform-origin:center}.history-art{width:100%;aspect-ratio:1;display:grid;place-items:center;background:radial-gradient(circle at center,#17243b 0 13%,#0b1120 14% 45%,#182941 46% 48%,#0b1120 49%);color:#efb02c;font-size:3.2rem}.history-art-missing{opacity:.95}@media(max-width:850px){.site-header{height:auto}.brand{flex-basis:145px}.brand a,.brand .custom-logo-link{width:145px;height:70px}.brand img{width:145px!important;height:70px!important;transform:scale(1.25)}}
.chart-badge.is-top40{border-left-color:var(--gold)}.chart-badge.is-tipparade{border-left-color:#ed275d;background:linear-gradient(110deg,#391126,#11192e 62%);box-shadow:0 10px 22px rgba(237,39,93,.18)}.chart-badge.is-tipparade strong{color:#ff9fba}.chart-badge.is-tipparade .js-chart-text{color:#fff5f8}

/* De drie chartmomenten moeten in één oogopslag leesbaar zijn. */
.chart-badge .chart-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:13px 0 9px}.chart-badge .chart-milestones span{display:block;border-radius:10px;padding:10px 12px;background:rgba(255,255,255,.09)}.chart-badge .chart-milestones small{display:block;font-size:.62rem;letter-spacing:.08em;font-weight:900;color:#cbd7e7}.chart-badge .chart-milestones b{display:block;font-size:1.05rem;line-height:1.15;color:#fff;margin-top:3px}.chart-badge .chart-milestones em{display:block;color:#d8e6f4;font-style:normal;font-size:.7rem;margin-top:3px}.chart-badge .chart-peak{background:var(--gold)!important}.chart-badge .chart-peak small,.chart-badge .chart-peak b,.chart-badge .chart-peak em{color:var(--ink)!important}.chart-badge .chart-peak b{font-size:1.75rem}.chart-badge .chart-total{font-size:.82rem;font-weight:800;color:#d7e1ef}.chart-badge.is-tipparade .chart-peak{background:#ed275d!important}.chart-badge.is-tipparade .chart-peak small,.chart-badge.is-tipparade .chart-peak b,.chart-badge.is-tipparade .chart-peak em{color:#fff!important}@media(max-width:650px){.chart-badge .chart-milestones{grid-template-columns:1fr}.chart-badge .chart-milestones span{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px}.chart-badge .chart-milestones small{grid-column:1}.chart-badge .chart-milestones b{grid-column:2;grid-row:1/3;text-align:right}.chart-badge .chart-milestones em{grid-column:1}}

/* Rustige, vaste verhoudingen voor header en DJ-profielen. */
.dark .card img{width:100%;height:270px;aspect-ratio:auto;object-fit:cover;object-position:center}.schedule-row{grid-template-columns:105px 125px minmax(0,1fr);align-items:center}.schedule-poster img{width:105px;height:105px;object-fit:cover;border-radius:10px}.schedule-copy{min-width:0}.schedule-description{margin:8px 0 0;color:var(--muted);line-height:1.45}.footer-copyright{border-top:1px solid #283448;margin-top:26px;padding-top:18px;font-size:.78rem;color:#8d9aae;text-align:center}@media(max-width:850px){.dark .card img{height:245px}.schedule-row{grid-template-columns:90px 1fr}.schedule-poster img{width:90px;height:90px}.schedule-time{grid-column:2}}@media(max-width:560px){.schedule-row{grid-template-columns:76px 1fr}.schedule-poster img{width:76px;height:76px}.schedule-time{grid-column:2}.schedule-copy{grid-column:1/-1}}

/* 1.3: focus on listening, accessible controls and separate chart panels. */
.player-status{position:sticky;top:104px;z-index:45;background:var(--navy);color:white;text-align:center;font-size:.9rem;padding:8px 16px}.player-status:empty{display:none}
.info-box summary{cursor:pointer;font-weight:800;color:var(--blue);padding:4px 0}.info-box p{line-height:1.65;max-height:22rem;overflow:auto}.chart-panels{display:grid;gap:12px}.chart-panels .chart-badge{margin-top:10px}.chart-badge a{display:inline-block;text-decoration:underline;font-size:.82rem;margin-top:6px}.chart-badge p{line-height:1.55}.chart-badge .chart-milestones b{font-size:1.15rem}.chart-badge .chart-peak b{font-size:2rem}
.track-detail .track-art{object-fit:contain}.history-card img{object-fit:contain;background:#fff}.schedule-state{display:inline-block;margin-left:10px;color:#087cad;font-size:.8rem;font-weight:900}.schedule-state:empty{display:none}.schedule-row.is-on-air{border-left:5px solid var(--gold)}.js-schedule-summary{line-height:1.6;color:var(--muted);max-width:800px}.schedule-poster img{object-fit:contain;background:#f4f6f8}.schedule-row:not(:has(.schedule-poster)) .schedule-time{grid-column:2}.main-nav ul{display:flex;list-style:none;padding:0;gap:16px}.button:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:4px}
@media(max-width:850px){.player-status{position:static}.track-detail{padding:20px}.main-nav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.main-nav a{white-space:nowrap}.chart-panels{min-width:0}.schedule-copy{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.vinyl.playing{animation:none}.tonearm{transition:none}}
