/* DirectPlayer 10.2 — langue + grille programmes */
.dp-locale-switch{display:inline-flex;align-items:center;margin:0}.dp-locale-switch label{display:block}.dp-locale-switch select{height:36px;min-width:58px;padding:0 24px 0 10px;border:1px solid #dce5eb;border-radius:10px;background:#fff;color:#254a64;font:800 11px/1 inherit;cursor:pointer;box-shadow:none}
.dp-locale-switch--header select{height:38px;background:#f7fafc}.dp-locale-switch select:focus{outline:0;border-color:#78b7e2;box-shadow:0 0 0 3px rgba(12,124,209,.08)}
.dp102-program-panel{min-width:0}.dp102-schedule-list{display:grid!important;gap:10px!important}
.dp102-schedule-list .dp102-schedule-card{display:grid!important;grid-template-columns:112px 74px minmax(0,1fr) 48px!important;align-items:center!important;gap:14px!important;min-height:96px!important;padding:10px!important;border:1px solid #e3ebf0!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important}
.dp102-schedule-media{width:112px;height:72px;border-radius:10px;overflow:hidden;background:#eef4f8;display:grid;place-items:center;color:#53728a;font-size:11px;font-weight:900}.dp102-schedule-media img{width:100%;height:100%;display:block;object-fit:cover}.dp102-schedule-card>time{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;width:auto!important;height:auto!important;padding:0!important;background:transparent!important;color:#1c557c!important}.dp102-schedule-card>time strong{font-size:18px;line-height:1}.dp102-schedule-card>time small{margin-top:5px;color:#8799a6;font-size:10px}.dp102-schedule-copy{min-width:0}.dp102-schedule-copy>strong{display:block;color:#173f5b;font-size:14px;line-height:1.2}.dp102-schedule-copy>span{display:block;margin-top:4px;color:#447592;font-size:10px;font-weight:700}.dp102-schedule-copy>p{display:-webkit-box!important;margin:6px 0 0!important;overflow:hidden!important;color:#738996!important;font-size:10px!important;line-height:1.45!important;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dp102-schedule-card>b{display:grid!important;place-items:center!important;width:44px!important;height:30px!important;border-radius:9px!important;background:#eef6fb!important;color:#126ea9!important;font-size:9px!important;letter-spacing:.08em!important}
@media(max-width:820px){.dp-locale-switch--header{order:0}.dp102-schedule-list .dp102-schedule-card{grid-template-columns:92px minmax(0,1fr) 44px!important;grid-template-areas:"media copy day" "time copy day"!important;align-items:start!important}.dp102-schedule-media{grid-area:media;width:92px;height:58px}.dp102-schedule-card>time{grid-area:time}.dp102-schedule-copy{grid-area:copy}.dp102-schedule-card>b{grid-area:day;align-self:center}}
@media(max-width:560px){.dp-locale-switch--header select{height:34px;min-width:54px}.dp102-schedule-list .dp102-schedule-card{grid-template-columns:74px minmax(0,1fr)!important;grid-template-areas:"media copy" "time copy" "day copy"!important;gap:9px!important}.dp102-schedule-media{width:74px;height:52px}.dp102-schedule-card>b{justify-self:start!important}.dp102-schedule-copy>p{-webkit-line-clamp:3}}

/* Fiche radio — grille des programmes V10.2 */
.dp102-radio-schedule-section{margin-top:34px}.dp102-schedule-heading{margin-bottom:16px}.dp102-schedule-heading p:not(.eyebrow){margin:6px 0 0;color:#718797;font-size:13px;line-height:1.55}
.dp102-radio-week{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dp102-radio-day{min-width:0;border:1px solid #e1e9ef;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 9px 24px rgba(21,61,89,.055)}.dp102-radio-day>header{min-height:58px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e9eff3;background:#f8fbfd}.dp102-radio-day>header>div{display:flex;align-items:center;gap:10px;min-width:0}.dp102-radio-day>header span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eaf4fb;color:#176fa7;font-size:9px;font-weight:900;letter-spacing:.08em}.dp102-radio-day>header strong{color:#173f5b;font-size:14px}.dp102-radio-day>header b{padding:6px 9px;border-radius:999px;background:#176fa7;color:#fff;font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.dp102-radio-day.is-today{border-color:#c8deec;box-shadow:0 12px 28px rgba(23,111,167,.10)}
.dp102-radio-program-list{display:grid}.dp102-radio-program{display:grid;grid-template-columns:116px 66px minmax(0,1fr);align-items:center;gap:13px;padding:11px 13px;border-top:1px solid #edf2f5}.dp102-radio-program:first-child{border-top:0}.dp102-radio-program-media{width:116px;height:66px;border-radius:11px;overflow:hidden;background:#edf4f8;display:grid;place-items:center;color:#4f7087;font-size:14px;font-weight:900}.dp102-radio-program-media img{display:block;width:100%;height:100%;object-fit:cover}.dp102-radio-program-media img.is-station-logo{object-fit:contain;padding:8px;background:#fff}.dp102-radio-program-time{min-width:0}.dp102-radio-program-time strong,.dp102-radio-program-time span{display:block}.dp102-radio-program-time strong{color:#176fa7;font-size:16px;line-height:1}.dp102-radio-program-time span{margin-top:5px;color:#8a9ba7;font-size:10px;font-weight:700}.dp102-radio-program-copy{min-width:0}.dp102-radio-program-copy h3{margin:0;color:#173f5b;font-size:14px;line-height:1.2}.dp102-radio-program-copy small{display:block;margin-top:4px;color:#447592;font-size:10px;font-weight:750}.dp102-radio-program-copy p{display:-webkit-box;margin:6px 0 0;overflow:hidden;color:#708594;font-size:10px;line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical}
@media(max-width:980px){.dp102-radio-week{grid-template-columns:1fr}.dp102-radio-program{grid-template-columns:104px 60px minmax(0,1fr)}.dp102-radio-program-media{width:104px;height:60px}}
@media(max-width:560px){.dp102-radio-day{border-radius:14px}.dp102-radio-day>header{min-height:52px;padding:9px 11px}.dp102-radio-program{grid-template-columns:82px minmax(0,1fr);grid-template-areas:"media copy" "time copy";align-items:start;gap:8px 10px;padding:10px}.dp102-radio-program-media{grid-area:media;width:82px;height:50px;border-radius:9px}.dp102-radio-program-time{grid-area:time;display:flex;align-items:baseline;gap:6px}.dp102-radio-program-time strong{font-size:13px}.dp102-radio-program-time span{margin:0;font-size:9px}.dp102-radio-program-copy{grid-area:copy}.dp102-radio-program-copy h3{font-size:13px}.dp102-radio-program-copy p{-webkit-line-clamp:3}}
