/* Native audio stays available until the custom controls initialize. */
.portal-route-musics .row>div:has(>.music-card){display:flex}
.music-card{width:100%;min-width:0;margin-bottom:24px;padding:25px;background:linear-gradient(125deg,#fff,#fffdf6);border:1px solid #e5d3ad;border-radius:18px;box-shadow:0 5px 20px #77541f0b;transition:border-color .2s,box-shadow .2s}
.music-card.is-playing{border-color:#c29a4c;box-shadow:0 7px 24px #a77b2520;background:linear-gradient(125deg,#fffdf8,#fff6df)}
.music-card-heading{display:flex;align-items:center;gap:15px;min-height:66px;margin-bottom:22px}
.music-art{display:grid;place-items:center;flex-shrink:0;width:64px;height:64px;border-radius:15px;background:linear-gradient(135deg,#f9e8b7,#f1d589);color:#98702b;border:1px solid #dec28a}
.music-art svg{width:50px;height:50px}
.music-info{flex:1;min-width:0}
.music-eyebrow{display:block;font:500 12px/1.5 HomeGilroy,Arial,sans-serif;letter-spacing:.9px;color:#987c50;margin-bottom:6px}
.portal-content .music-info h2{margin:0;font:600 20px/1.4 HomeGilroy,Arial,sans-serif;color:#49351f;overflow-wrap:anywhere}
.music-card audio{width:100%}
.music-card.is-enhanced audio{display:none}
.music-controls:not([hidden]){display:grid;grid-template-columns:54px minmax(0,1fr) 30px;align-items:center;gap:15px}
.music-card [hidden]{display:none!important}
.music-toggle{display:grid;place-items:center;width:54px;height:54px;padding:0;border:1px solid #c59a43;border-radius:50%;background:linear-gradient(135deg,#f7dea0,#e3b65b);color:#624317;box-shadow:0 4px 12px #a77b2529;cursor:pointer;transition:transform .15s,box-shadow .15s}
.music-toggle:hover{transform:scale(1.05);box-shadow:0 5px 15px #a77b253d}
.music-toggle svg{width:25px;height:25px}
.music-toggle .music-icon-play{margin-left:-3px}
.music-icon-pause,.music-card.is-playing .music-icon-play{display:none}
.music-card.is-playing .music-icon-pause{display:block}
.music-timeline{min-width:0}
.music-time{display:flex;align-items:center;justify-content:space-between;gap:9px;font:500 12px/1.5 HomeGilroy,Arial,sans-serif;color:#8b7657;font-variant-numeric:tabular-nums}
.music-time>span:last-child{white-space:nowrap}
.music-state{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9d772e}
.music-time-separator{color:#c0ad8c}
.music-seek,.music-volume-range{display:block;width:100%;height:24px;margin:3px 0 0;padding:0;appearance:none;-webkit-appearance:none;cursor:pointer;background:transparent;touch-action:pan-y}
.music-seek::-webkit-slider-runnable-track,.music-volume-range::-webkit-slider-runnable-track{height:5px;border-radius:4px;background:linear-gradient(to right,#be9441 0%,#be9441 var(--music-progress,0%),#ebdfc5 var(--music-progress,0%),#ebdfc5 100%)}
.music-seek::-moz-range-track,.music-volume-range::-moz-range-track{height:5px;border-radius:4px;background:#ebdfc5}
.music-seek::-moz-range-progress,.music-volume-range::-moz-range-progress{height:5px;border-radius:4px;background:#be9441}
.music-seek::-webkit-slider-thumb,.music-volume-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:13px;height:13px;margin-top:-4px;border:2px solid #fffaf0;border-radius:50%;background:#a77b2f;box-shadow:0 1px 4px #78521f40}
.music-seek::-moz-range-thumb,.music-volume-range::-moz-range-thumb{width:10px;height:10px;border:2px solid #fffaf0;border-radius:50%;background:#a77b2f}
.music-seek:disabled{cursor:default;opacity:.55}
.music-seek:focus-visible,.music-volume-range:focus-visible{outline:2px solid #bb882f;outline-offset:3px;border-radius:6px}
.music-volume{position:relative;display:flex;align-items:center;justify-content:center}
.music-mute{display:grid;place-items:center;flex-shrink:0;width:30px;height:38px;padding:0;border:0;background:none;color:#a0865e;cursor:pointer;border-radius:6px}
.music-mute svg{width:21px;height:21px}
.music-volume-range{position:absolute;bottom:34px;right:-6px;width:85px;height:32px;padding:0 8px;margin:0;border:1px solid #e6d3ae;border-radius:8px;background:#fffcf4;box-shadow:0 3px 10px #77541f15;visibility:hidden;opacity:0;transition:opacity .15s;--music-progress:100%}
.music-volume:hover .music-volume-range,.music-volume:focus-within .music-volume-range{visibility:visible;opacity:1}
.music-sound-muted,.music-card.is-muted .music-sound-waves{display:none}
.music-card.is-muted .music-sound-muted{display:block}
.music-equalizer{display:flex;align-items:center;justify-content:center;gap:3px;width:23px;height:26px;color:#c1a16a;flex-shrink:0}
.music-equalizer i{display:block;width:3px;height:6px;border-radius:2px;background:currentColor;transform-origin:center}
.music-equalizer i:nth-child(2){height:16px}.music-equalizer i:nth-child(3){height:23px}.music-equalizer i:nth-child(4){height:12px}
.is-playing .music-equalizer{color:#ab7a28}
.is-playing .music-equalizer i{animation:music-level .8s ease-in-out infinite alternate}
.is-playing .music-equalizer i:nth-child(2){animation-delay:-.5s}.is-playing .music-equalizer i:nth-child(3){animation-delay:-.2s}.is-playing .music-equalizer i:nth-child(4){animation-delay:-.65s}
.portal-content .music-message{margin:14px 0 0;font:400 14px/1.5 HomeGilroy,Arial,sans-serif;color:#9d4638}
@keyframes music-level{from{transform:scaleY(.3)}to{transform:scaleY(1)}}
@media(max-width:900px){.music-card{padding:20px}.music-art{width:54px;height:54px}.music-art svg{width:44px;height:44px}.music-card-heading{gap:12px}.portal-content .music-info h2{font-size:18px}.music-controls:not([hidden]){gap:11px;grid-template-columns:48px minmax(0,1fr) 26px}.music-toggle{width:48px;height:48px}}
@media(max-width:650px){.music-card{padding:20px 17px;margin-bottom:18px;border-radius:15px}.music-card-heading{margin-bottom:20px}.portal-content .music-info h2{font-size:19px}.music-eyebrow{font-size:11px}.music-time{font-size:12px}.music-equalizer{width:17px;gap:2px}}
@media(prefers-reduced-motion:reduce){.music-card,.music-toggle{transition:none}.is-playing .music-equalizer i{animation:none}}
