.album-root{--serif:"Shippori Mincho",serif;--disp:"Zen Old Mincho","Shippori Mincho",serif;--mono:var(--font-space-mono),ui-monospace,monospace;background:var(--bg);color:var(--ink);font-family:var(--serif);line-height:1.95;letter-spacing:.02em;font-feature-settings:"palt" 1}.album-root ::selection{background:color-mix(in srgb,var(--cyan) 22%,transparent)}.album-root .wrap{max-width:980px;margin:0 auto;padding:0 28px}.album-root a{color:inherit}.album-root .album-hero{padding:12vh 28px 6vh;text-align:center;position:relative;overflow:hidden}.album-root .album-hero .kicker{font-family:var(--mono);font-size:.72rem;letter-spacing:.5em;color:var(--ink-faint);text-transform:uppercase;margin:0 0 26px;padding-left:.5em}.album-root .album-hero h1{font-family:var(--disp);font-weight:900;font-size:clamp(4rem,18vw,9.5rem);margin:0;letter-spacing:.16em;line-height:1;color:#e7ebf1;text-indent:.16em}.album-root .album-hero .sub{font-family:var(--mono);font-size:clamp(.8rem,2.4vw,1.05rem);letter-spacing:.42em;color:var(--cyan);margin:30px 0 0;opacity:.82;padding-left:.42em}.album-root .album-hero .tagline{font-family:var(--serif);color:var(--ink-dim);font-size:1rem;margin:34px auto 0;max-width:30em}.album-root .album-spine-sec{padding:2vh 0 4vh}.album-root .spine{display:block;width:100%;height:auto;max-width:680px;margin:0 auto}.album-root .spine .rail{fill:none;stroke:var(--cyan);stroke-width:1.1;opacity:.55;stroke-dasharray:1700;stroke-dashoffset:1700;animation:alb-draw 2.6s ease .2s forwards}.album-root .spine .node{opacity:0;animation:alb-fade .5s ease forwards;animation-delay:var(--d)}.album-root .spine .node circle:first-child{transition:r .2s}.album-root .spine .node:hover circle:first-child{r:9}.album-root .spine .nlab{font-family:var(--mono);font-size:9px;fill:var(--ink-dim)}.album-root .spine .node:hover .nlab{fill:var(--ink)}.album-root .spine .seam{stroke:var(--ink-faint);stroke-width:1;stroke-dasharray:2 3}.album-root .spine .seamlab{font-family:var(--mono);font-size:10px;fill:var(--ink-dim);letter-spacing:.08em}.album-root .spine .centerlab{font-family:var(--serif);font-size:15px;fill:var(--ink-faint);letter-spacing:.3em}.album-root .spine .dim{fill:var(--ink-faint);font-size:9px}.album-root .spine .hand{opacity:0;animation:alb-fade .8s ease 1.7s forwards}.album-root .spine .reach{stroke:var(--warm);stroke-width:1.2;opacity:.7;stroke-dasharray:2 2}.album-root .spine .handlab{font-family:var(--mono);font-size:10px;fill:var(--warm);opacity:.85}.album-root .spine-cap{font-family:var(--mono);font-size:.7rem;color:var(--ink-faint);text-align:center;letter-spacing:.18em;margin-top:8px}@keyframes alb-draw{to{stroke-dashoffset:0}}@keyframes alb-fade{to{opacity:1}}.album-root .toc{column-count:2;column-gap:46px;padding:5vh 0 3vh;border-top:1px solid var(--line)}.album-root .toc-part{break-inside:avoid;display:flex;align-items:baseline;gap:.7em;margin:1.6em 0 .5em;padding-bottom:.3em;border-bottom:1px solid var(--line)}.album-root .toc-pid{font-family:var(--mono);font-size:.7rem;color:var(--cyan);letter-spacing:.2em}.album-root .toc-plabel{font-family:var(--serif);font-size:1rem;color:var(--ink)}.album-root .toc ul{list-style:none;margin:0 0 1.2em;padding:0}.album-root .toc li{break-inside:avoid}.album-root .toc a{display:flex;align-items:baseline;gap:.8em;text-decoration:none;color:var(--ink-dim);padding:.22em 0;transition:color .15s}.album-root .toc a:hover{color:var(--ink)}.album-root .toc .tn{font-family:var(--mono);font-size:.72rem;color:var(--ink-faint);min-width:2.1em}.album-root .toc .tt{font-family:var(--serif);flex:1}.album-root .toc .tc{font-family:var(--mono);font-size:.62rem;color:var(--ink-faint);letter-spacing:.1em}.album-root .preface{padding:7vh 0;border-top:1px solid var(--line)}.album-root .preface .label{font-family:var(--mono);font-size:.7rem;letter-spacing:.4em;color:var(--ink-faint);text-transform:uppercase;margin-bottom:2em}.album-root .preface p{font-size:1.06rem;color:var(--ink);margin:0 0 1.6em;max-width:38em}.album-root .part{padding:8vh 0 2vh;border-top:1px solid var(--line)}.album-root .part-h{display:flex;align-items:baseline;gap:1em;flex-wrap:wrap;margin-bottom:1.4em}.album-root .part-id{font-family:var(--mono);font-weight:700;font-size:1rem;color:var(--pc);letter-spacing:.2em;padding:.15em .6em;border:1px solid var(--pc);border-radius:2px;opacity:.9}.album-root .part-label{font-family:var(--disp);font-weight:700;font-size:clamp(1.7rem,5vw,2.6rem);margin:0;color:#e7ebf1;letter-spacing:.1em}.album-root .part-sub{font-family:var(--mono);font-size:.78rem;color:var(--ink-dim);letter-spacing:.18em}.album-root .part-intro{max-width:38em;color:var(--ink-dim);margin:0 0 3em;font-size:1rem}.album-root .part-intro p{margin:0}.album-root .song{padding:3.4em 0;border-top:1px solid var(--line)}.album-root .song:first-of-type{border-top:none}.album-root .song-h{display:flex;align-items:baseline;gap:1em;margin-bottom:1.6em;flex-wrap:wrap}.album-root .song-n{font-family:var(--mono);font-size:.95rem;color:var(--pc);letter-spacing:.12em}.album-root .song-t{font-family:var(--disp);font-weight:700;font-size:clamp(1.5rem,4.4vw,2.1rem);margin:0;color:#eef1f5;letter-spacing:.12em}.album-root .song-c{font-family:var(--mono);font-size:.68rem;color:var(--ink-dim);letter-spacing:.16em;border:1px solid var(--line2);padding:.2em .6em;border-radius:2px}.album-root .blk{display:grid;grid-template-columns:7.5em 1fr;gap:0 1.6em;align-items:start;margin:0 0 1.1em}.album-root .blk .lab{font-family:var(--mono);font-size:.64rem;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;text-align:right;padding-top:.4em}.album-root .lyric{font-family:var(--serif);font-size:1.12rem;line-height:2.15;margin:0;color:var(--ink)}.album-root .trackaudio{display:flex;align-items:center;gap:.9em;margin:0 0 2.2em;padding:.6em 0 0;max-width:34em}.album-root .ta-play{flex:none;width:2.2em;height:2.2em;border:1px solid var(--line2);border-radius:9999px;background:transparent;color:var(--cyan);font-size:.7rem;line-height:1;cursor:pointer;transition:border-color .15s,color .15s}.album-root .ta-play:hover{border-color:var(--cyan)}.album-root .ta-seek{flex:1;appearance:none;-webkit-appearance:none;height:2px;background:var(--line2);border-radius:2px;cursor:pointer}.album-root .ta-seek::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;border-radius:9999px;background:var(--cyan)}.album-root .ta-seek::-moz-range-thumb{width:10px;height:10px;border:none;border-radius:9999px;background:var(--cyan)}.album-root .ta-time{font-size:.66rem;color:var(--ink-faint);letter-spacing:.06em;white-space:nowrap}.album-root .ta-dl{flex:none;color:var(--warm);text-decoration:none;font-size:.9rem}.album-root .ta-empty{display:inline-block;margin:0 0 2.2em;font-family:var(--mono);font-size:.62rem;letter-spacing:.2em;color:var(--ink-faint);text-transform:uppercase}.album-root .coda{padding:10vh 0 12vh;border-top:1px solid var(--line);text-align:center}.album-root .coda .mark{font-family:var(--disp);font-size:2.2rem;color:var(--ink-faint);letter-spacing:.3em;margin:0 0 1.2em;text-indent:.3em}.album-root .coda .ring{font-family:var(--serif);color:var(--ink-dim);font-size:1.04rem;max-width:32em;margin:0 auto 2.4em}.album-root .coda .meta{font-family:var(--mono);font-size:.66rem;color:var(--ink-faint);letter-spacing:.22em}@media (max-width:680px){.album-root .toc{column-count:1}.album-root .blk{grid-template-columns:1fr;gap:0}.album-root .blk .lab{text-align:left;padding-top:1.2em}.album-root .album-hero{padding:9vh 22px 5vh}}@media (prefers-reduced-motion:reduce){.album-root .spine .rail{stroke-dashoffset:0;animation:none}.album-root .spine .hand,.album-root .spine .node{opacity:1;animation:none}}