.channel-section{margin-bottom:40px;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}.channel-section>.section-heading{flex-wrap:wrap;gap:8px}#channel-status{font-size:11px;color:var(--muted)}#channel-active{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.channel-video{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.channel-video h3{font-size:14px;line-height:1.5;margin:0}.channel-video p,.channel-video a{font-size:12px}.channel-video a{color:var(--green)}.channel-video details{margin-top:12px}.channel-video summary,.saved-date>summary,.channel-archive>summary,#channel-all>details>summary{cursor:pointer;font-size:12px;font-weight:600;padding:10px 0}.channel-language{padding:10px 0;border-bottom:1px solid var(--line);font-size:11px;display:flex;flex-wrap:wrap;gap:8px}.channel-language .progress-block,.channel-language p{flex-basis:100%;margin:4px 0}.channel-archive{margin-top:12px}.saved-date{border:1px solid var(--line);border-radius:12px;padding:8px 16px;margin:10px 0}.saved-date .saved-batch{margin:12px 0}#chat-providers label{flex-direction:row}#chat-providers input{min-height:16px;height:16px;width:16px;padding:0;box-shadow:none}.channel-video .error{color:#9e403a}
.channel-tasks-link{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);text-align:center}
.channel-tasks-link button{border:1px solid var(--line);background:white;color:var(--ink);padding:10px 16px;border-radius:10px;font-size:13px;cursor:pointer;transition:background .12s,border-color .12s}
.channel-tasks-link button:hover{background:var(--soft);border-color:var(--green)}
@media(max-width:600px){.channel-section{padding:16px;margin-bottom:24px}#channel-active{grid-template-columns:1fr}.channel-section h2{font-size:16px}.channel-video{padding:12px}}
.dubbing-stats{margin-bottom:46px;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}
.dubbing-stats>.section-heading{flex-wrap:wrap;gap:8px}
.dubbing-stats .quota-note{font-size:13px;font-weight:600;margin:0 0 6px}
#dubbing-stats-status{margin:0 0 14px}
.dubbing-stats-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.dubbing-stat{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.dubbing-stat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.dubbing-stat h3{font-size:13px;line-height:1.45;margin:0;font-weight:600}
.dubbing-stat-badge{flex:none;min-width:52px;text-align:center;padding:3px 8px;border-radius:999px;background:var(--soft);border:1px solid var(--line);font-size:12px;font-weight:700}
.dubbing-stat--ready .dubbing-stat-badge{background:#e3f1e7;border-color:#bcdcc7;color:#1d6a3c}
.dubbing-stat--running .dubbing-stat-badge{background:#fdf3d8;border-color:#ecdba6;color:#8a6a12}
.dubbing-stat--blocked .dubbing-stat-badge,.dubbing-stat--failed .dubbing-stat-badge{background:#fbe6e4;border-color:#eec7c3;color:#9e403a}
.dubbing-stat-counts{margin:8px 0 6px;font-size:12px;color:var(--muted)}
.dubbing-stat progress{width:100%;height:8px}
.dubbing-stat-stage{margin:6px 0 0;font-size:11px;color:var(--muted)}
.dubbing-stat-blocker{margin:6px 0 0;font-size:11px;color:#9e403a}
.dubbing-stats-hint{margin:16px 0 0;font-size:11px;color:var(--muted);line-height:1.6}
.dubbing-stats-hint button{border:1px solid var(--line);background:var(--soft);color:var(--ink);padding:7px 12px;border-radius:9px;font-size:12px;cursor:pointer}
.dubbing-stats-hint button:hover{border-color:var(--green)}
@media(max-width:600px){.dubbing-stats{padding:16px;margin-bottom:28px}.dubbing-stats-list{grid-template-columns:1fr}}
