/* Compact audio player; retain the existing playback and playlist controls. */
.paper-audio-player { padding:12px; margin:20px 0; border-radius:10px; }
.paper-audio-main { align-items:center; gap:12px; }
.paper-audio-cover { width:52px; height:52px; min-height:0; border:0; border-radius:8px; }
.paper-audio-cover-fallback { font-size:24px; }
.paper-audio-cover i svg { width:22px; height:22px; }
.paper-audio-copy { min-width:0; }
.paper-audio-info-row { gap:10px; }
.paper-audio-title-line { font-size:14px; line-height:1.5; }
.paper-audio-title-line strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.paper-audio-title-line>span { margin:0; font-size:11px; }
.paper-audio-title-line>span:empty,.paper-audio-credits:empty { display:none; }
.paper-audio-time { flex-shrink:0; font-size:10px; font-variant-numeric:tabular-nums; }
.paper-audio-control-row { gap:8px; margin-top:4px; }
.paper-audio-actions { gap:2px; }
.paper-audio-icon { display:grid; place-items:center; width:28px; height:28px; min-height:0; padding:5px; }
.paper-audio-icon svg { width:18px; height:18px; }
.paper-audio-playlist { display:grid; gap:2px; max-height:238px; margin-top:10px; padding-top:8px; border-top:1px solid var(--line); overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:var(--line) transparent; }
.paper-audio-track { align-items:center; gap:8px; min-height:32px; margin:0; padding:6px 8px; border-radius:5px; font-size:12px; line-height:1.5; }
.paper-audio-index { flex:0 0 18px; color:var(--muted); text-align:center; font-variant-numeric:tabular-nums; }
.paper-audio-track-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.paper-audio-track-artist { max-width:25%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; color:var(--muted); }
.paper-audio-track:hover { background:var(--tab); }
.paper-audio-lyric,.paper-audio-status { margin:6px 0 0; font-size:12px; line-height:1.5; }

/* ArtPlayer supplies its own layout; theme rules must not resize its icons. */
.paper-video-player { position:relative; isolation:isolate; width:100%; aspect-ratio:16/9; background:#101722; border-radius:10px; overflow:hidden; }
.paper-video-player .art-video { display:block; margin:0; max-width:none; object-fit:contain; }
.paper-video-player .art-icon svg { width:22px; height:22px; }
.paper-video-player .art-state .art-icon svg { width:40px; height:40px; }
.paper-video-shell:has(.video-trial-hint) .paper-video-player { border-radius:10px 10px 0 0; }
.paper-video-shell .video-trial-hint { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px 16px; padding:12px 14px; border:1px solid #e0e7ff; border-top:0; border-radius:0 0 10px 10px; background:#f5f7ff; font-size:13px; line-height:1.5; }
.video-trial-copy { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; min-width:0; }
.video-trial-badge { display:inline-flex; align-items:center; gap:5px; padding:4px 8px; border:1px solid #fde68a; border-radius:6px; background:#fffbeb; color:#92400e; font-size:12px; white-space:nowrap; }
.video-trial-badge svg { flex-shrink:0; }
.video-trial-description { color:#475569; }
.video-trial-description strong { color:#4338ca; }
.paper-video-shell .video-trial-upgrade { display:inline-flex; align-items:center; justify-content:center; gap:8px; flex-shrink:0; margin-left:auto; padding:7px 12px; border:1px solid #4f46e5; border-radius:7px; background:#4f46e5; color:#fff; font-size:12px; font-weight:600; text-decoration:none; transition:background .15s; }
.paper-video-shell .video-trial-upgrade:hover { background:#4338ca; }
.paper-video-shell .video-trial-upgrade:focus-visible { outline:2px solid #818cf8; outline-offset:3px; }
:root[data-mode=dark] .paper-video-shell .video-trial-hint { background:#282e45; border-color:#41496a; }
:root[data-mode=dark] .video-trial-badge { background:#40351f; border-color:#72592b; color:#fcd68a; }
:root[data-mode=dark] .video-trial-description { color:#cbd5e1; }
:root[data-mode=dark] .video-trial-description strong { color:#c4b5fd; }
.paper-video-player .video-trial-overlay { z-index:70; padding:18px; background:rgba(15,20,34,.94); color:#f8fafc; }
.paper-video-player .video-trial-overlay[hidden] { display:none; }
.paper-video-player.is-trial-ended .art-mask,.paper-video-player.is-trial-ended .art-bottom { visibility:hidden; pointer-events:none; }
.paper-video-player .video-trial-overlay>div { width:100%; max-width:520px; }
.paper-video-player .video-trial-lock { display:block; font-size:20px; line-height:1.3; }
.paper-video-player .video-trial-overlay strong { display:block; margin:8px 0; font-size:24px; line-height:1.4; color:#fff; }
.paper-video-player .video-trial-overlay p { margin:0 0 18px; color:#cbd5e1; font-size:14px; line-height:1.5; }
.paper-video-player .video-trial-actions { display:flex; align-items:stretch; justify-content:center; flex-wrap:wrap; gap:8px; }
.paper-video-player .video-trial-actions :is(a,button) { display:inline-flex; align-items:center; justify-content:center; min-height:36px; margin:0; padding:8px 12px; border:1px solid #ffffff40; border-radius:7px; background:#ffffff0f; color:#e2e8f0; font-size:12px; font-weight:500; line-height:1.4; text-decoration:none; cursor:pointer; transition:background .15s,border-color .15s; }
.paper-video-player .video-trial-actions a:first-child { background:#4f46e5; border-color:#6366f1; color:#fff; }
.paper-video-player .video-trial-actions button { background:#f1f5f9; border-color:#f1f5f9; color:#334155; }
.paper-video-player .video-trial-actions a:hover { background:#ffffff24; border-color:#ffffff70; }
.paper-video-player .video-trial-actions a:first-child:hover { background:#4338ca; border-color:#818cf8; }
.paper-video-player .video-trial-actions button:hover { background:#e2e8f0; color:#1e293b; }
.paper-video-player .video-trial-actions :is(a,button):focus-visible { outline:2px solid #a5b4fc; outline-offset:3px; }
@media(max-width:767.98px) {
 .paper-audio-player { padding:10px; }
 .paper-audio-main { gap:9px; }
 .paper-audio-cover { width:44px; height:44px; }
 .paper-audio-info-row { align-items:flex-start; flex-wrap:wrap; gap:2px 8px; }
 .paper-audio-copy { flex:1 1 100%; }
 .paper-audio-title-line { font-size:13px; }
 .paper-audio-control-row { gap:4px; }
 .paper-audio-playlist { max-height:210px; }
 .paper-audio-track { min-height:34px; }
 .paper-video-shell .video-trial-hint { gap:10px; padding:10px 12px; font-size:12px; }
 .video-trial-copy { gap:6px 10px; }
 .paper-video-player .video-trial-overlay { padding:10px; }
 .paper-video-player .video-trial-lock { font-size:16px; }
 .paper-video-player .video-trial-overlay strong { margin:5px 0; font-size:18px; }
 .paper-video-player .video-trial-overlay p { margin-bottom:10px; font-size:12px; }
 .paper-video-player .video-trial-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
 .paper-video-player .video-trial-actions :is(a,button) { min-height:32px; padding:6px 4px; font-size:11px; }
}
