.tl-page{background:var(--color-bg);color:var(--color-ink);min-height:100vh;padding-bottom:96px}.tl-inner{flex-direction:column;gap:28px;max-width:860px;margin:0 auto;padding:0 16px;display:flex}.tl-seal{aspect-ratio:1;text-align:center;border:1px solid #f3d99a80;border-radius:50%;flex-direction:column;justify-content:center;justify-self:end;align-items:center;width:min(200px,100%);display:flex;box-shadow:inset 0 0 0 9px #3b2410,inset 0 0 0 10px #f3d99a2e}.tl-seal strong{font:800 clamp(44px, 6vw, 60px)/1 var(--font-display);color:#f3d99a;font-variant-numeric:tabular-nums}.tl-seal small{letter-spacing:.14em;color:#cbd2e0;font-size:10px}.tl-notice{border-left:3px solid var(--color-accent);background:var(--color-surface-alt);margin:0;padding:12px 14px;font-size:14px;line-height:1.5}.tl-notice strong{display:block}.tl-wrap{flex-direction:column;gap:16px;display:flex}.tl-past>summary{cursor:pointer;color:var(--color-link);padding:12px 0;font-weight:700;list-style-position:inside}.tl-past>summary:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:2px}.tl-ribbon{margin:0;padding:0;list-style:none}.tl-chapter{grid-template-columns:64px minmax(0,1fr);gap:16px;padding-bottom:28px;display:grid;position:relative}.tl-chapter:not(:last-child):before{content:"";background:var(--color-border-strong);width:2px;position:absolute;top:68px;bottom:0;left:31px}.tl-marker{z-index:1;background:var(--color-bg);border:2px solid var(--color-border-strong);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:64px;height:64px;line-height:1;display:flex;position:relative}.tl-marker b{font:800 22px/1 var(--font-display);font-variant-numeric:tabular-nums}.tl-marker span{letter-spacing:.08em;margin-top:2px;font-size:10px;font-weight:800}.tl-marker i{color:var(--color-ink-muted);font-size:9px;font-style:normal}.tl-done .tl-marker{opacity:.8}.tl-current .tl-marker{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);width:72px;height:72px;margin:-4px 0 0 -4px}.tl-current .tl-marker i{color:inherit}.tl-current{grid-template-columns:72px minmax(0,1fr)}.tl-upcoming .tl-marker{border-style:dashed}.tl-body{min-width:0;padding-top:4px}.tl-meta{color:var(--color-ink-muted);flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0 0 8px;font-size:13px;display:flex}.tl-status{text-transform:uppercase;letter-spacing:.06em;border:1px solid;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:800}.tl-status-done{color:var(--color-success)}.tl-status-current{color:var(--color-accent-text);background:var(--color-surface-alt)}.tl-status-upcoming{color:var(--color-ink-muted)}.tl-time{font-variant-numeric:tabular-nums}.tl-in{font-weight:700}.tl-items{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.tl-items li{min-width:0}.tl-items h3{text-transform:none;font:600 clamp(19px, 2.6vw, 25px)/1.2 var(--font-display);letter-spacing:-.01em;text-wrap:balance;overflow-wrap:anywhere;margin:0}.tl-current .tl-items h3{font-size:clamp(22px,3.2vw,30px)}.tl-cat{text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-muted);margin-top:4px;font-size:11px;font-weight:700;display:inline-block}.tl-items p{color:var(--color-ink-muted);max-width:62ch;margin:4px 0 0;font-size:14px;line-height:1.55}.tl-progress{max-width:520px;margin-top:16px}.tl-progress p{margin:8px 0 0;font-size:14px;line-height:1.45}.tl-bar{background:var(--color-surface-alt);border:1px solid var(--color-border-strong);border-radius:6px;height:12px;overflow:hidden}.tl-bar span{background:var(--color-accent);height:100%;transition:width .26s;display:block}.tl-note{color:var(--color-ink-muted);font-size:14px}.tl-source{border-top:1px solid var(--color-border);color:var(--color-ink-muted);flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin:0;padding:20px 0;font-size:13px;display:flex}.tl-source a{color:var(--color-link);font-weight:700}:root[data-easy=true] .tl-meta,:root[data-easy=true] .tl-items p,:root[data-easy=true] .tl-progress p,:root[data-easy=true] .tl-source,:root[data-easy=true] .tl-notice{font-size:16px}:root[data-easy=true] .tl-cat,:root[data-easy=true] .tl-status{font-size:13px}@media (max-width:680px){.tl-seal{display:none}.tl-chapter{grid-template-columns:52px minmax(0,1fr);gap:12px}.tl-current{grid-template-columns:56px minmax(0,1fr)}.tl-marker{width:52px;height:52px}.tl-marker b{font-size:18px}.tl-current .tl-marker{width:56px;height:56px;margin:-2px 0 0 -2px}.tl-chapter:not(:last-child):before{top:56px;left:25px}}@media (prefers-reduced-motion:reduce){.tl-bar span{transition:none}}.tl-fallback{flex-direction:column;gap:10px;margin:0;padding-left:20px;display:flex}.tl-fallback p{color:var(--color-ink-muted);margin:2px 0 0;font-size:14px}
