:root{--stats-remaining:#eee9dd}
[data-theme="dark"]{--stats-remaining:var(--panel)}
.stats-page{max-width:950px}.stats-page h2{font-size:25px;font-weight:500;margin:0 0 12px}.stats-page h3{font-weight:500}.stats-page section:not(.control){margin:28px 0}.stats-page section>p{color:var(--muted);margin:0 0 18px}.stats-page .stats-method{font:13px/1.55 system-ui,sans-serif;color:var(--muted);margin:16px 0 28px}.stats-edition{margin-bottom:26px}.stats-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stat-metric,.stat-pie-card,.stats-streak{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px}.stat-metric-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.stat-metric-heading h3{font-size:17px;margin:0}.stat-metric-heading strong{font-size:24px;font-weight:500;color:#14453d}.stat-metric p,.stat-pie-card p{margin:10px 0 0;font:13px system-ui,sans-serif;color:var(--muted)}.stat-track{height:9px;background:var(--stats-remaining);border-radius:99px;margin-top:15px;overflow:hidden}.stat-track span{display:block;height:100%;background:#14453d;border-radius:99px}.stats-streak{padding:22px}.stats-streak .stats-method{margin:14px 0 0!important}.streak-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.streak-numbers>div{display:flex;flex-direction:column;align-items:center;text-align:center}.streak-numbers strong{font-size:38px;font-weight:500;line-height:1.1;color:#14453d}.streak-numbers span{color:var(--muted);font:12px/1.45 system-ui,sans-serif;margin-top:6px}.stats-pies{display:grid;gap:14px}.stats-pies.volumes{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-pies.books{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-pie-card{text-align:center;padding:20px 14px}.stat-pie-card h3{font-size:18px;min-height:55px;display:flex;align-items:center;justify-content:center;margin:0 0 8px}.stat-pie{width:116px;aspect-ratio:1;border-radius:50%;margin:0 auto;background:conic-gradient(#14453d calc(var(--pct)*1%),var(--stats-remaining) 0);border:1px solid var(--line)}.stat-pie-legend{display:flex;gap:13px;justify-content:center;margin:12px 0 7px;font:11px system-ui,sans-serif;color:var(--muted)}.stat-pie-legend span{display:flex;align-items:center;gap:5px}.stat-key{display:inline-block;width:9px;height:9px;border-radius:50%}.stat-key.covered{background:#14453d}.stat-key.remaining{background:var(--stats-remaining);border:1px solid var(--line)}.stat-pie-card strong{font-size:24px;font-weight:500;color:#14453d}.stats-page .site-footer{margin-top:30px}[data-theme="dark"] .stat-track,[data-theme="dark"] .stat-key.remaining{background:var(--stats-remaining)}[data-theme="dark"] .stat-track span,[data-theme="dark"] .stat-key.covered{background:#a7c0a8}[data-theme="dark"] .stat-pie{background:conic-gradient(#a7c0a8 calc(var(--pct)*1%),var(--stats-remaining) 0)}[data-theme="dark"] .stat-metric-heading strong,[data-theme="dark"] .stat-pie-card strong,[data-theme="dark"] .streak-numbers strong{color:#a7c0a8}@media(max-width:700px){.stats-metrics{grid-template-columns:1fr}.stats-pies.volumes,.stats-pies.books{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:430px){.stats-pies.volumes,.stats-pies.books{grid-template-columns:1fr}.streak-numbers strong{font-size:30px}.streak-numbers span{font-size:11px}}

.streak-history{border-top:1px solid var(--line);margin-top:22px;padding-top:19px}.streak-history h3{font-size:19px;margin:0 0 2px}.stats-page .streak-history>p{font:12px/1.5 system-ui,sans-serif;color:var(--muted);margin:0 0 16px}.streak-chart{display:grid;gap:11px}.streak-row{display:grid;grid-template-columns:minmax(115px,auto) minmax(0,1fr) 30px;gap:12px;align-items:center;font:12px/1.4 system-ui,sans-serif}.streak-range{color:var(--muted);white-space:nowrap}.streak-bar-track{height:11px;background:var(--stats-remaining);border-radius:99px;overflow:hidden}.streak-bar{display:block;height:100%;background:#14453d;border-radius:99px}.streak-row strong{font:600 13px system-ui,sans-serif;text-align:right}.stats-page .streak-empty{color:var(--muted);margin:18px 0 0}[data-theme="dark"] .streak-bar-track{background:var(--stats-remaining)}[data-theme="dark"] .streak-bar{background:#a7c0a8}@media(max-width:430px){.streak-row{grid-template-columns:100px minmax(0,1fr) 25px;gap:8px}.streak-range{font-size:11px}}

.stats-pages{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px}.stats-pages .stats-method{margin:16px 0 0}.pages-chart-summary{display:flex;flex-wrap:wrap;gap:8px 24px;font:13px/1.5 system-ui,sans-serif;color:var(--muted)}.pages-chart-summary strong{font-size:19px;font-weight:600;color:var(--ink)}.pages-chart-scroll{width:100%;overflow-x:hidden}.pages-chart-svg{display:block;width:100%;min-width:0;height:275px;margin-top:15px;overflow:visible}.page-chart-grid{stroke:var(--line);stroke-width:1}.page-chart-tick{fill:var(--muted);font:12px system-ui,sans-serif}.page-chart-scheduled,.page-chart-completed{fill:none;stroke-linejoin:round;stroke-linecap:round;stroke-width:3}.page-chart-scheduled{stroke:var(--party-hunters-light)}.page-chart-completed{stroke:#14453d}.page-chart-end-scheduled{fill:var(--party-hunters-light)}.page-chart-end-completed{fill:#14453d}.pages-chart-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}.pages-chart-legend{display:flex;gap:20px;font:12px system-ui,sans-serif;color:var(--muted)}.pages-chart-legend span{display:flex;align-items:center;gap:7px}.pages-chart-legend i{width:19px;height:3px;display:inline-block;border-radius:2px}.page-legend-scheduled{background:var(--party-hunters-light)}.page-legend-completed{background:#14453d}.pages-catchup{display:inline-block;text-decoration:none}.stats-chart-empty{color:var(--muted)}[data-theme="dark"] .page-chart-completed{stroke:#a7c0a8}[data-theme="dark"] .page-chart-end-completed,[data-theme="dark"] .page-legend-completed{fill:#a7c0a8;background:#a7c0a8}@media(max-width:700px){.stats-pages{padding:18px}}

.stats-pies.parties{grid-template-columns:repeat(3,minmax(0,1fr))}.party-pie .stat-pie{background:conic-gradient(var(--party-color) calc(var(--pct)*1%),var(--stats-remaining) 0)}.party-pie .stat-key.covered{background:var(--party-color)}[data-theme="dark"] .party-pie .stat-pie{background:conic-gradient(var(--party-color-dark) calc(var(--pct)*1%),var(--stats-remaining) 0)}[data-theme="dark"] .party-pie .stat-key.covered{background:var(--party-color-dark)}.party-pie h3{font-size:16px;min-height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.3}.party-stage{display:block}.party-transition-arrow{display:block;color:var(--muted);font:500 20px/1.1 system-ui,sans-serif;margin:4px 0}@media(max-width:700px){.stats-pies.parties{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:430px){.stats-pies.parties{grid-template-columns:1fr}}


.stats-page-word-metrics{display:flex;flex-direction:column;gap:14px}

.stats-word-calendar{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px}
.stats-word-calendar .stats-method{margin-bottom:0}
.word-calendar-status-key{display:flex;flex-wrap:wrap;gap:12px 22px;font:12px/1.5 system-ui,sans-serif;color:var(--muted);margin-bottom:22px}
.word-calendar-status-key span,.word-party-key{display:flex;align-items:center;gap:8px}
.word-calendar-status-key i{display:inline-block;width:15px;height:15px;border-radius:3px}
.word-status-read{background:var(--party-friends-light)}
.word-status-unread{background:color-mix(in srgb,var(--party-friends-light) 32%,#fff 68%)}
.word-calendar-status-key .word-status-empty{width:1px;height:7px;background:var(--stats-remaining);margin:0 7px}
.word-calendar-months{display:grid;gap:12px}
.word-calendar-month{min-width:0}
.word-month-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.stats-page .word-month-heading h3{margin:0;font-size:17px}
.word-month-heading span{font:11px/1.5 system-ui,sans-serif;color:var(--muted)}
.word-month-chart{display:block;width:100%;height:auto;overflow:visible}
.word-reading{fill:var(--word-party)}
.word-reading.is-unread{fill:color-mix(in srgb,var(--word-party) 32%,#fff 68%)}
.word-month-chart a{cursor:pointer;outline:none}
.word-day-selection{fill:transparent;stroke:none;pointer-events:all}
.word-month-chart a:focus-visible .word-day-selection{stroke:var(--ink);stroke-width:3;vector-effect:non-scaling-stroke}
.word-reading{transition:fill 120ms ease}
.word-month-chart a:hover .word-reading.is-unread,.word-month-chart a.is-selected .word-reading.is-unread,.word-month-chart a:focus-visible .word-reading.is-unread{fill:color-mix(in srgb,var(--word-party) 66%,#fff 34%)}
.word-day-label{fill:var(--muted);font:11px system-ui,sans-serif;pointer-events:none}
.word-empty-day{stroke:var(--line);stroke-width:.75;vector-effect:non-scaling-stroke}
.word-party-legend{display:flex;flex-wrap:wrap;gap:9px 20px;border-top:1px solid var(--line);padding-top:18px;margin-top:14px;font:11px/1.5 system-ui,sans-serif;color:var(--muted)}
.word-party-key i,.word-reading-swatch{display:inline-block;flex-shrink:0;width:11px;height:11px;border-radius:2px;background:var(--word-party)}
.word-calendar-inspector{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
.word-calendar-inspector>label{display:block;font:12px/1.5 system-ui,sans-serif;color:var(--muted);margin-bottom:7px}
.word-calendar-inspector>select{max-width:100%;width:240px;margin-bottom:18px}
.stats-page #wordCalendarDetailTitle{font-size:22px;margin:0 0 7px;scroll-margin:24px}
.word-day-total{font:13px/1.5 system-ui,sans-serif;color:var(--muted);margin:0 0 16px}
.word-reading-list{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.word-reading-list li{display:grid;grid-template-columns:14px minmax(0,1fr) auto 78px;align-items:baseline;gap:10px;font:13px/1.5 system-ui,sans-serif}
.word-reading-list .word-reading-swatch{width:11px;height:11px;align-self:center}
.word-reading-swatch.is-unread{background:color-mix(in srgb,var(--word-party) 32%,#fff 68%)}
.word-party-name{color:var(--ink)}
.word-party-words,.word-party-state{color:var(--muted);text-align:right;white-space:nowrap;font-size:12px}
.word-detail-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 20px}
.word-open-day{color:var(--muted);font:12px/1.5 system-ui,sans-serif;text-underline-offset:3px}
.word-open-day:hover{color:var(--ink)}
.word-day-total strong{font-weight:500;color:var(--ink)}
.word-day-composition{display:flex;gap:1px;height:12px;overflow:hidden;border-radius:3px;margin-bottom:18px}
.word-day-composition .word-reading-swatch{flex-basis:0;min-width:0;width:auto;height:100%;border-radius:0}
[data-theme="dark"] .word-reading{fill:var(--word-party-dark)}
[data-theme="dark"] .word-reading.is-unread{fill:color-mix(in srgb,var(--word-party-dark) 70%,#fff 30%)}
[data-theme="dark"] .word-party-key i,[data-theme="dark"] .word-reading-swatch.is-read{background:var(--word-party-dark)}
[data-theme="dark"] .word-reading-swatch.is-unread{background:color-mix(in srgb,var(--word-party-dark) 70%,#fff 30%)}
[data-theme="dark"] .word-status-read{background:var(--party-friends-dark)}
[data-theme="dark"] .word-status-unread{background:color-mix(in srgb,var(--party-friends-dark) 70%,#fff 30%)}
@media(max-width:700px){.stats-word-calendar{padding:18px}.word-calendar-months{gap:17px}.word-month-chart{min-height:32px}.word-party-legend{gap:10px}.word-month-heading span{font-size:10px}}
@media(max-width:480px){.word-reading-list li{grid-template-columns:11px minmax(0,1fr) auto;gap:4px 9px}.word-party-state{grid-column:2/4;text-align:left}.word-party-name{font-size:12px}.word-party-words{font-size:11px}}

[data-theme="dark"] .word-month-chart a:hover .word-reading.is-unread,[data-theme="dark"] .word-month-chart a.is-selected .word-reading.is-unread,[data-theme="dark"] .word-month-chart a:focus-visible .word-reading.is-unread{fill:color-mix(in srgb,var(--word-party-dark) 85%,#fff 15%)}
[data-reduce-motion="true"] .word-reading{transition:none}

.word-month-chart a:hover .word-reading.is-read,.word-month-chart a.is-selected .word-reading.is-read,.word-month-chart a:focus-visible .word-reading.is-read{fill:color-mix(in srgb,var(--word-party) 86%,#fff 14%)}
[data-theme="dark"] .word-month-chart a:hover .word-reading.is-read,[data-theme="dark"] .word-month-chart a.is-selected .word-reading.is-read,[data-theme="dark"] .word-month-chart a:focus-visible .word-reading.is-read{fill:color-mix(in srgb,var(--word-party-dark) 94%,#fff 6%)}

/* Hover stays visible even when a completed day is already selected. */
.word-month-chart a:hover .word-reading.is-read,.word-month-chart a:focus-visible .word-reading.is-read{fill:color-mix(in srgb,var(--word-party) 70%,#fff 30%)}
[data-theme="dark"] .word-month-chart a:hover .word-reading.is-read,[data-theme="dark"] .word-month-chart a:focus-visible .word-reading.is-read{fill:color-mix(in srgb,var(--word-party-dark) 78%,#fff 22%)}

.word-calendar-details .internal-date-heading,#wordCalendarDetails .internal-date-heading{margin:20px 0 12px;font-size:17px;font-weight:500}#wordCalendarDetails .internal-date-heading span{font:11px system-ui,sans-serif;color:var(--muted)}

.stats-metrics > .loading-error, .stats-metrics > .loading-message{grid-column:1 / -1}

/* Parallel party branches form one clearly grouped final stage. */
.party-pair{display:flex;flex-direction:column;align-items:center;line-height:1.3}
.party-pair-and{font-size:.8125rem;font-weight:400;color:var(--muted);line-height:1.2;margin:3px 0}


.page-chart-hit{fill:transparent;pointer-events:all}.page-chart-focus{fill:none;stroke:var(--ink);stroke-width:2;opacity:0;pointer-events:none}.pages-chart-svg [data-page-date]:focus-visible .page-chart-focus{opacity:1}.pages-chart-svg [data-page-date]{outline:none}

#catchUpDialog a.catchup-go{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;text-align:center}

.word-date-tooltip strong{font-weight:600}.tooltip-detail-line{display:block}
