/* 页面在保留音频的外层文档内切换；迷你播放器不占课堂内容布局。 */
body.podcast-shell-active { overflow:hidden!important; }
body.podcast-shell-active > :not(#podcast-page-frame):not(#podcast-mini):not(script):not(style) { display:none!important; }
#podcast-page-frame { position:fixed; inset:0; width:100%; height:100%; border:0; z-index:2147483000; background:#f6f8fa; }
#podcast-mini { position:fixed; right:8px; bottom:8px; z-index:2147483100; width:280px; max-width:calc(100vw - 28px); box-sizing:border-box; padding:12px; border:1px solid #c6dcd9; border-radius:17px; background:#fffffff5; color:#173e4b; box-shadow:0 8px 32px #173e4b30; font:14px/1.4 system-ui,sans-serif; transition:opacity .65s; }
#podcast-mini[hidden] { display:none; }
#podcast-mini.is-idle { opacity:.32; }
#podcast-mini:hover,#podcast-mini:focus-within { opacity:1; }
#podcast-mini .mini-heading { display:flex; align-items:center; gap:9px; }
#podcast-mini img { width:42px; height:42px; border-radius:9px; object-fit:cover; }
#podcast-mini a { flex:1; min-width:0; font-weight:700; color:inherit; text-decoration:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#podcast-mini button { display:inline-grid; place-items:center; padding:0; min-width:36px; height:36px; border:0; border-radius:50%; background:#edf5f3; color:#126b61; cursor:pointer; font:20px system-ui; }
#podcast-mini button:focus-visible,#podcast-mini a:focus-visible { outline:3px solid #e7b74c; outline-offset:2px; }
#podcast-mini .mini-controls { display:grid; grid-template-columns:36px 36px 36px 1fr; align-items:center; gap:7px; margin-top:8px; }
#podcast-mini .mini-toggle { background:#137a6c; color:white; }
#podcast-mini input { flex:1; min-width:40px; width:100%; accent-color:#137a6c; cursor:pointer; }
#podcast-mini .mini-time { font-size:11px; font-variant-numeric:tabular-nums; }
#podcast-mini .mini-status { display:block; margin-top:4px; font-size:11px; color:#526d75; }
@media(max-width:600px) { #podcast-mini { right:8px; bottom:calc(82px + env(safe-area-inset-bottom)); width:280px; } }
@media(prefers-reduced-motion:reduce) { #podcast-mini { transition:none; } }

#podcast-mini .mini-controls input { grid-column:1 / -1; grid-row:2; margin:0; }
#podcast-mini .mini-time { text-align:right; white-space:nowrap; }
#podcast-mini button:disabled { opacity:.3; cursor:default; }
