/* CEAS Audio — covers are editorial artwork. Display the complete authored image,
   never a zoomed crop. Keep the original aspect ratio at every breakpoint. */
:root { --ceas-studio-red: #e00000; --ceas-studio-border: rgba(234,234,234,.14); }
.audio-shell { max-width: 1510px; }
.audio-player { grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); overflow: visible; background: radial-gradient(ellipse at 78% 0,rgba(200,0,0,.115),transparent 58%), #0b0b0b; border-color: var(--ceas-studio-border); }
.audio-artwork-pane { align-self:start; min-width:0; }
.audio-player .audio-cover { display: block!important; position:relative; width:100%;height:auto!important;min-height:0!important; aspect-ratio:auto!important; max-height:none!important; overflow:visible!important; padding:0!important;background:#060606; }
.audio-player .audio-cover img { width:100%;height:auto!important;max-height:none!important;display:block;aspect-ratio:auto!important; object-fit:contain!important; object-position:center center!important; transform:none!important;filter:none!important;opacity:1!important;box-shadow:none;cursor:zoom-in; }
.audio-player .audio-cover img:focus-visible {outline:3px solid #e00000;outline-offset:-3px}
.audio-artwork-toolbar { gap:15px; background:#131313; }
.audio-artwork-toolbar button { font-size:11px;min-height:44px; padding:12px 16px; }
.audio-artwork-toolbar>span {font-size:10px;letter-spacing:.08em}
.audio-main { align-self:stretch; }
.audio-main h2 {font-size:clamp(27px,3vw,46px);font-weight:630;line-height:1.12;letter-spacing:-.032em;}
.audio-scope { height:104px; margin-top:21px;border-radius:3px; }
.audio-time { font-size:11px; grid-template-columns:55px minmax(0,1fr) 55px;gap:14px; }
.audio-time input[type=range] { height:30px; touch-action:pan-x; }
.audio-time input[type=range]::-webkit-slider-runnable-track { height:6px; border-radius:10px;background:rgba(235,235,235,.26); }
.audio-time input[type=range]::-webkit-slider-thumb { width:20px;height:20px; border:3px solid #e00000;background:#ffffff;margin-top:-7px; box-shadow:0 0 0 4px rgba(224,0,0,.17); }
.audio-controls-primary {gap:11px; flex-wrap:nowrap;}
.audio-controls-primary button { transition:transform .18s ease,background .18s ease,border-color .18s ease; }
.audio-controls-primary button:active { transform:scale(.93); }
.audio-controls-primary .play {width:80px;height:80px;min-width:80px; background:radial-gradient(circle at 33% 28%,#e00000 0,#c80000 66%,#6e0000 100%);border:1px solid rgba(255,255,255,.44);box-shadow:0 0 0 8px rgba(224,0,0,.1),0 18px 45px rgba(200,0,0,.3);}
.audio-controls-primary .step,.audio-controls-primary .skip {min-height:48px;min-width:44px;}
.audio-controls-secondary { gap:9px;}
.audio-controls-secondary button {border:1px solid rgba(255,255,255,.2);border-radius:6px;min-height:44px; font-size:11px;letter-spacing:.045em;}
.audio-controls-secondary button:focus-visible,.audio-artwork-toolbar button:focus-visible,.audio-card:focus-visible {outline:2px solid #e00000;outline-offset:3px}
.audio-controls-secondary button:hover {background:rgba(224,0,0,.15)}
.audio-live-notification {font-size:11px;}
/* Large editorial thumbnails, with enough screen real estate to read cover artwork. */
.audio-list {gap:13px;padding-top:20px}
.audio-card {display:grid; grid-template-columns:minmax(260px,400px) minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:clamp(18px,3vw,40px);row-gap:8px;min-height:0;padding:20px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:linear-gradient(130deg,#0f0f0f,#090909); transition:background .2s ease,transform .2s ease,border-color .2s ease;}
.audio-card:hover,.audio-card:focus-visible {border-color:rgba(224,0,0,.45);background:linear-gradient(130deg,#161616,#0d0d0d);transform:translateY(-1px)}
.audio-card.active {border-color:#c80000;box-shadow:inset 4px 0 #e00000}
.audio-card-cover {grid-column:1;grid-row:1 / 4;display:block!important;width:100%;height:auto!important;aspect-ratio:auto!important;overflow:hidden!important;max-height:none!important;border-radius:5px;border:1px solid rgba(255,255,255,.12);background:#060606;}
.audio-card-cover img {display:block;width:100%;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;filter:none!important;opacity:1!important;transform:none!important;}
.audio-card-meta {grid-column:2;grid-row:1;align-self:end;display:flex;flex-wrap:wrap;gap:10px;color:#c0c0c0;font-size:9px;line-height:1.6;}
.audio-card h3 {grid-column:2;grid-row:2;align-self:center;margin:0;font-size:clamp(19px,2vw,29px);font-weight:650;line-height:1.18;letter-spacing:-.015em;}
.audio-card p {grid-column:2;grid-row:3;align-self:start;display:block!important;color:#b1b1b1;font-size:13px;line-height:1.65;max-width:62ch;}
.audio-card-cover img[data-cover-status="unavailable"],.audio-cover img[data-cover-status="unavailable"] {max-height:220px!important;padding:20px;box-sizing:border-box;background:#131313;object-fit:contain}
.audio-cover-viewer[open] {padding:clamp(12px,2vw,25px)}
.audio-cover-viewer img { height:100%!important; object-fit:contain!important; filter:none; background:#070707;}
/* The publishing preview must match the public result — no hidden title in a crop. */
.quick-preview-image {background-size:contain!important;background-repeat:no-repeat!important;background-position:center center!important;background-color:#090909!important}
@media (max-width:1100px) {
 .audio-player {grid-template-columns:minmax(0,1fr)}
 .audio-main {padding:clamp(21px,4vw,36px)}
 .audio-card {grid-template-columns:minmax(220px,38%) minmax(0,1fr)}
}
@media (max-width:760px) {
 .audio-shell {width:calc(100% - 24px)}
 .audio-player {grid-template-columns:minmax(0,1fr);margin-top:22px}
 .audio-player .audio-cover {height:auto!important;aspect-ratio:auto!important;}
 .audio-player .audio-cover img {width:100%;height:auto!important;object-fit:contain!important;}
 .audio-artwork-toolbar {padding:12px;flex-wrap:wrap}
 .audio-artwork-toolbar>span {font-size:9px}
 .audio-artwork-toolbar button {min-height:44px;font-size:11px}
 .audio-main {padding:25px 16px}
 .audio-main h2 {font-size:clamp(26px,7vw,36px)}
 .audio-control-deck {gap:17px}
 .audio-controls-primary {justify-content:space-between;gap:4px}
 .audio-controls-primary .play {width:70px;height:70px;min-width:70px}
 .audio-controls-primary .skip {width:45px}
 .audio-controls-secondary {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .audio-controls-secondary button {padding:9px 5px;font-size:10px;min-height:44px;white-space:normal}
 .audio-controls-secondary input {grid-column:2/4}
 .audio-time {gap:10px}
 .audio-list {gap:16px}
 .audio-card {display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto auto;gap:10px;padding:13px;}
 .audio-card-cover {grid-column:1;grid-row:1;width:100%;height:auto!important;aspect-ratio:auto!important;}
 .audio-card-cover img {width:100%;height:auto!important;object-fit:contain!important;}
 .audio-card-meta {grid-column:1;grid-row:2;font-size:9px;line-height:1.6;gap:10px;margin-top:3px}
 .audio-card h3 {grid-column:1;grid-row:3;margin:0;font-size:19px}
 .audio-card p {grid-column:1;grid-row:4;font-size:12px;line-height:1.58;margin:0;display:block!important;}
 .audio-cover-viewer {width:100vw;height:100dvh;max-height:none;border-radius:0;padding:12px}
}
@media (prefers-reduced-motion:reduce) { .audio-card,.audio-controls-primary button {transition:none!important;transform:none!important} }
