/* v0.6.77 — Episode & season UX polish */

/* Season rows: balanced three-column layout with centered state controls. */
.episode-list{border-top:0;display:grid;gap:10px}
.episode-toggle-row{grid-template-columns:58px minmax(0,1fr) 54px!important;gap:14px!important;align-items:center!important;min-height:96px!important;padding:12px 10px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:var(--surface)!important}
.episode-toggle-row .episode-number-box{width:54px;height:54px;display:grid;place-items:center;border:1px solid var(--line2);border-radius:7px;background:var(--bg);font:750 17px/1 var(--mono);color:var(--ink)}
.episode-toggle-row .row-copy strong{font-size:16px;line-height:1.18;font-weight:760;letter-spacing:-.012em}
.episode-toggle-row .row-copy .meta{margin-top:7px;font-size:11px;line-height:1.45}
.episode-quick-mark{width:50px;min-width:50px;height:50px;display:grid!important;place-items:center!important;padding:0;border:1px solid var(--line2);border-radius:8px;background:var(--surface2);color:var(--ink);font:800 24px/1 Arial,sans-serif;text-align:center}
.episode-toggle-row.is-seen .episode-quick-mark{color:var(--lime2);border-color:color-mix(in srgb,var(--lime2) 46%,var(--line2));background:color-mix(in srgb,var(--lime) 7%,var(--surface))}
.episode-toggle-row[aria-disabled="true"]{opacity:.62;cursor:default}
.episode-toggle-row[aria-disabled="true"] .episode-quick-mark{font-size:17px;color:var(--muted)}

/* Whole-season action. */
.season-bulk-mark{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;gap:11px;align-items:center;margin:-2px 0 16px;padding:11px 12px;border:1px solid var(--line2);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left}
.season-bulk-mark:active{background:var(--surface2)}
.season-bulk-mark:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.season-bulk-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--lime2) 55%,var(--line));border-radius:50%;color:var(--lime2);font:800 18px/1 Arial,sans-serif;background:color-mix(in srgb,var(--lime) 7%,var(--surface))}
.season-bulk-mark strong{display:block;font-size:12px;line-height:1.2}
.season-bulk-mark small{display:block;margin-top:3px;color:var(--muted);font:650 9px/1.35 var(--mono)}
.season-bulk-mark>b{color:var(--muted);font-size:20px;font-weight:500}
.season-bulk-mark:disabled{opacity:.55;cursor:default}

/* Episode/season backfill is a bottom sheet, not a generic alert. */
.episode-bulk-dialog-bg{align-items:flex-end!important;padding:0!important}
.episode-bulk-dialog-bg .episode-bulk-dialog{width:min(100%,720px);max-height:min(72vh,520px);margin:0 auto;border:1px solid var(--line2);border-bottom:0;border-radius:22px 22px 0 0;background:var(--surface);padding:12px 18px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -18px 48px rgba(0,0,0,.22)}
.episode-bulk-handle{width:48px;height:5px;margin:0 auto 18px;border-radius:999px;background:var(--line2)}
.episode-bulk-kicker{display:block;margin-bottom:7px;color:var(--lime2);font:800 9px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.episode-bulk-dialog h2{margin:0 0 10px;font-size:23px;line-height:1.08;letter-spacing:-.025em}
.episode-bulk-dialog p{margin:0 0 18px;color:var(--muted);font-size:12px;line-height:1.55}
.episode-bulk-actions{grid-template-columns:1fr 1.18fr!important;gap:9px!important}
.episode-bulk-actions .button{min-width:0;min-height:52px;padding-inline:10px;white-space:nowrap;font-size:12px}

/* Dated episode registration: secondary, compact and intentional. */
.series-register-flow{padding-bottom:18px}
.series-register-identity{position:relative;margin:2px 0 18px;padding:16px;border:1px solid var(--line2);border-radius:12px;background:var(--surface)}
.series-register-kicker{color:var(--muted);font:800 9px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.series-register-identity h2{margin:9px 0 5px;font-size:24px;line-height:1.06;letter-spacing:-.025em}
.series-register-identity p{margin:0;color:var(--muted);font:650 12px/1.45 var(--mono)}
.series-register-change{margin-top:12px!important;font-size:11px}
.series-register-loading{margin-bottom:14px}
.series-register-date{margin:0 0 14px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.series-register-section-head span{display:block;color:var(--muted);font:800 9px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.series-register-section-head h2{margin:6px 0 14px;font-size:20px;line-height:1.1;letter-spacing:-.02em}
.series-date-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line2);border-radius:9px;overflow:hidden}
.series-date-choice-grid .choice{min-height:52px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;padding:7px 5px;font-size:11px}
.series-date-choice-grid .choice:last-child{border-right:0}
.series-date-choice-grid .choice.active{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}
.series-custom-date{margin-top:10px}
.series-register-helper{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:start;margin:0 0 14px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--surface2) 70%,transparent)}
.series-register-helper>span{width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--line2);border-radius:50%;color:var(--muted);font:800 12px/1 var(--mono)}
.series-register-helper p{margin:0;color:var(--muted);font:650 10px/1.5 var(--mono)}
#seriesRewatchToggle,#cancelSeriesViewing{margin-bottom:8px}
.series-register-save{min-height:54px;border-radius:9px;font-size:14px}

@media(max-width:380px){
 .episode-toggle-row{grid-template-columns:52px minmax(0,1fr) 48px!important;gap:10px!important;padding-inline:8px!important}
 .episode-toggle-row .episode-number-box{width:48px;height:48px;font-size:16px}
 .episode-quick-mark{width:46px;min-width:46px;height:46px}
 .episode-bulk-actions{grid-template-columns:1fr!important}
 .episode-bulk-actions .button{white-space:normal}
 .series-date-choice-grid .choice{font-size:10px}
}
