.overview { --brief-note: #576273; }
.overview-brief { border-top: 3px solid #54837c; }
.overview-brief .section-head { margin-bottom: 10px; }
.overview-copy, .overview-copy-more { margin: 4px 0; white-space: pre-line; overflow-wrap: anywhere; }
.overview-copy-more > summary { cursor: pointer; }
.overview-copy-more > summary > span { white-space: nowrap; color: var(--accent); font-size: .85em; }
.overview-copy-more[open] > summary { font-size: 0; }
.overview-copy-more > summary .overview-collapse, .overview-copy-more[open] > summary .overview-expand { display:none; }
.overview-copy-more[open] > summary .overview-collapse { display:inline; font-size:.83rem; }
.overview-caption { margin: 0 0 2px; color: var(--brief-note,var(--muted)); font-size: .79rem; font-weight: 600; }
.overview-when, .overview-progress, .overview-links, .overview-stamp { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 16px; }
.overview-when { margin-top: 10px; font-size: .84rem; color: var(--brief-note); }
.overview-when strong { color: var(--ink); }
.overview-current { margin-top: 14px; border-top: 1px solid var(--line); padding-top: 12px; }
.overview-current h3,.overview-panel h3 { margin: 0 0 6px; }
.overview-progress { margin-top: 8px; color: var(--brief-note); font-size: .82rem; }
.overview-stamp { justify-content: flex-end; margin-top: 8px; font-size: .76rem; color: var(--brief-note); }
.overview-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 12px; }
.overview-note, .overview-person { font-size:.82rem; color:var(--brief-note,var(--muted)); margin: 3px 0; }
.overview-person { display: inline-block; margin-left: 8px; }
.overview-links, .overview-panel > .overview-caption { margin-top: 8px; }
.overview-items, .overview-groups { list-style: none; margin: 4px 0; padding: 0; }
.overview-items li + li, .overview-groups li + li { border-top:1px solid var(--line); }
.overview-items li, .overview-groups li { padding: 5px 0; overflow-wrap:anywhere; }
.overview-items .text-button,.overview-link { font-weight: 560; text-align: left; white-space: normal; overflow-wrap: anywhere; }
.overview-link { color: var(--accent); text-decoration: none; }
.overview-link:hover, .overview-link:focus-visible { text-decoration: underline; }
.overview-groups li { display:flex; justify-content:space-between; gap:8px; flex-wrap:wrap; }
.overview-groups span { font-size:.8rem; color:var(--brief-note); }
.overview-tag { display:inline-block; border-radius:5px;padding:1px 6px;font-size:.73rem;white-space:nowrap; }
.overview-tag.good { background:#e3efe8;color:#315e49; }
.overview-more summary, .overview-menu summary { cursor:pointer; }
.overview-more p { margin-top:8px; }
.overview-episodes { margin-top:12px; border-top:1px solid var(--line); padding-top:10px; }
.overview-menu { position:relative; }
.overview-menu summary { padding:6px 10px; color:var(--muted); font-size:.86rem; }
.overview-menu > div { position:absolute; right:0; top:100%; z-index:3; display:grid; gap:5px; width:max-content; padding:7px; border-radius:9px; background:var(--surface); border:1px solid var(--line); box-shadow:0 3px 12px #16233114; }
.overview-snapshot { padding:12px 0; }
.overview-snapshot + .overview-snapshot { border-top:1px solid var(--line); }
.overview-snapshot .overview-caption { margin-top:6px; }
@media(max-width:680px) {
  .overview-pair { grid-template-columns:1fr; }
  .overview-menu > div { left:0; right:auto; }
  .overview-when,.overview-progress { gap:4px 10px; }
}
