.chip.svelte-17o94vt{border:1px solid var(--rule);transition:border-color .15s;display:flex;overflow:hidden}.chip[href].svelte-17o94vt:hover{border-color:var(--muted)}.spine.svelte-17o94vt{flex-shrink:0;width:4px}.body.svelte-17o94vt{flex-direction:column;gap:3px;min-width:0;padding:7px 10px;display:flex}.chip-title.svelte-17o94vt{font-family:var(--font-mono);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;font-weight:400;overflow:hidden}.chip-meta.svelte-17o94vt{font-family:var(--font-mono);color:var(--muted);align-items:center;gap:4px;font-size:.5625rem;display:flex}.chip-stars.svelte-17o94vt{letter-spacing:-.05em;color:var(--accent)}.timeline-page.svelte-1fjec68{padding-top:0}.year-tabs-wrap.svelte-1fjec68{background:var(--surface);margin-bottom:var(--s5)}.year-tabs.svelte-1fjec68{max-width:var(--col);padding:0 var(--s6);scrollbar-width:none;gap:0;margin:0 auto;display:flex;overflow-x:auto}.year-tab.svelte-1fjec68{align-items:center;gap:var(--s2);padding:var(--s3) var(--s3);cursor:pointer;color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;transition:color var(--dur-fast), border-color var(--dur-fast);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;display:flex}.year-tab.svelte-1fjec68:hover{color:var(--ink)}.year-tab.active.svelte-1fjec68{color:var(--ink);border-bottom-color:var(--accent)}.year-tab.active.svelte-1fjec68 .year-count:where(.svelte-1fjec68){color:var(--accent)}.timeline-body.svelte-1fjec68{gap:var(--s5);grid-template-columns:1fr 300px;align-items:start;display:grid}.year-header.svelte-1fjec68{gap:var(--s6);margin-bottom:var(--s5);padding-bottom:var(--s4);border-bottom:1px solid var(--rule);align-items:flex-start;display:flex}.year-number.svelte-1fjec68{font-family:var(--font-mono);font-size:var(--fs-lg);color:var(--muted);letter-spacing:.05em;white-space:nowrap;font-weight:600;line-height:1}.year-header.svelte-1fjec68 .summary-stats:where(.svelte-1fjec68){gap:var(--s6);flex:1;display:flex}.month-row.svelte-1fjec68{gap:0 var(--s3);margin-bottom:var(--s3);grid-template-columns:52px 6px 1fr;align-items:start;display:grid}.month-label.svelte-1fjec68{padding-top:var(--s2);text-align:right;color:var(--muted)}.velocity-bar.svelte-1fjec68{background:var(--ink);width:3px;min-height:12px;margin-top:var(--s2);align-self:stretch;max-height:72px}.month-chips.svelte-1fjec68{gap:var(--s2);padding-top:var(--s1);flex-direction:column;display:flex}.book-chip-wrapper.svelte-1fjec68{display:inline-flex;position:relative}.book-chip-wrapper.is-reread.svelte-1fjec68:after{content:"";top:var(--s1);right:var(--s1);background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute}.reread-badge.svelte-1fjec68{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-top:var(--s1);display:block}.summary-stats.svelte-1fjec68{gap:var(--s5) var(--s6);grid-template-columns:repeat(auto-fill,minmax(120px,160px));display:grid}.summary-stat.svelte-1fjec68{gap:var(--s1);flex-direction:column;display:flex}.stat-num.svelte-1fjec68{font-family:var(--font-mono);font-size:var(--fs-2xl);color:var(--ink);letter-spacing:-.02em;font-weight:400}.summary-favourite.svelte-1fjec68{gap:var(--s1);border-left:1px solid var(--rule);padding-left:var(--s3);flex-direction:column;display:flex}.fav-title.svelte-1fjec68{font-family:var(--font-body);font-style:italic;font-size:var(--fs-md);color:var(--ink)}.timeline-sidebar.svelte-1fjec68{flex-direction:column;display:flex}.sidebar-block.svelte-1fjec68{padding:var(--s4) 0}.sidebar-block.section-rule.svelte-1fjec68{padding-top:var(--s4);margin-top:0}.sidebar-label.svelte-1fjec68{margin-bottom:var(--s3);color:var(--muted)}.heatmap.svelte-1fjec68{gap:var(--s2);grid-template-columns:repeat(4,1fr);display:grid}.heat-cell.svelte-1fjec68{aspect-ratio:1;border-radius:0}.genre-row.svelte-1fjec68{margin-bottom:var(--s2)}.genre-bar-wrap.svelte-1fjec68{background:var(--rule-lt);height:2px;margin-bottom:var(--s2)}.genre-bar.svelte-1fjec68{background:var(--accent);height:2px}.genre-labels.svelte-1fjec68{justify-content:space-between;align-items:center;display:flex}.genre-name.svelte-1fjec68{font-family:var(--font-ui);font-size:var(--fs-sm);color:var(--ink)}.alltime-stats.svelte-1fjec68{flex-direction:column;display:flex}.alltime-row.svelte-1fjec68{padding:var(--s2) 0;border-bottom:1px solid var(--rule-lt);justify-content:space-between;align-items:baseline;display:flex}.alltime-row.svelte-1fjec68:last-child{border-bottom:none}.alltime-val.svelte-1fjec68{font-family:var(--font-mono);font-size:var(--fs-md);color:var(--ink);letter-spacing:-.02em;font-weight:400}@media (width<=1100px){.timeline-body.svelte-1fjec68{grid-template-columns:1fr}.timeline-sidebar.svelte-1fjec68{flex-flow:wrap;gap:0 48px}.sidebar-block.svelte-1fjec68{flex:1;min-width:200px}.year-tabs.svelte-1fjec68{padding-inline:36px}.summary-stats.svelte-1fjec68{flex-wrap:wrap}.summary-favourite.svelte-1fjec68{border-left:none;padding-left:0}}@media (width<=768px){.month-row.svelte-1fjec68{grid-template-columns:36px 4px 1fr}.year-number.svelte-1fjec68{font-size:3rem}.year-tabs.svelte-1fjec68{padding-inline:20px}}
