.music-page{--record-accent:#a6c8e3;--accent:var(--record-accent)}
.music-page[data-record=blan]{--record-accent:#c0b9de}
html[data-theme=light] .music-page{--record-accent:#345e7e}
html[data-theme=light] .music-page[data-record=blan]{--record-accent:#695382}
.music-page .site-header{height:68px}.music-page .site-header nav a[aria-current=page]{color:var(--accent)}
.listening-book{max-width:1320px;margin:auto;padding:36px 5% 56px}
.book-topline{display:flex;justify-content:space-between;align-items:center;color:var(--muted)}.book-topline .mono{font-size:10px;letter-spacing:1.7px}.book-topline>span:last-child{font-family:serif;font-size:12px;letter-spacing:3px}
.book-title{display:flex;justify-content:space-between;align-items:end;gap:35px;padding:32px 0 35px}.book-title h1{font-family:"Yu Mincho","Noto Serif TC","PMingLiU",serif;font-size:clamp(31px,3.1vw,44px);font-weight:400;line-height:1.5;letter-spacing:3px;margin:0}.book-title h1 em{font-style:normal;color:var(--record-accent)}.book-title>p{font-size:12px;color:var(--muted);line-height:2;margin:0 0 5px}
.collection-bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:25px}.record-choices{display:flex;gap:42px}.record-choice{display:flex;align-items:center;gap:18px;text-align:left;position:relative;min-width:180px;padding:20px 0;color:var(--muted)}.record-choice::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:transparent}.record-choice[aria-pressed=true]{color:var(--record-accent)}.record-choice[aria-pressed=true]::after{background:var(--record-accent)}.record-choice strong{display:block;font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1.15}.record-choice small{display:block;font-size:10px;margin-top:7px;letter-spacing:.5px}.choice-number{font-size:10px}.choice-mark{margin-left:auto;font-size:15px;opacity:0}.record-choice[aria-pressed=true] .choice-mark,.record-choice:hover .choice-mark{opacity:1}
.rotation-control{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px;padding:14px 0;white-space:nowrap}.rotation-control[hidden]{display:none}.rotation-dot{width:10px;height:10px;border:1px solid currentColor;border-radius:50%;position:relative}.rotation-dot::after{content:"";position:absolute;width:2px;height:2px;background:currentColor;top:1px;left:3px}
.record-spread{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:8%;padding:48px 0 42px;align-items:center}.record-spread[hidden]{display:none}.record-object{min-width:0}.sleeve-scene{position:relative;width:100%;aspect-ratio:1.09}
.compact-disc{position:absolute;width:79%;aspect-ratio:1;right:0;top:0;border:1px solid #bdc7ce;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 3px,#fff1 3.5px 4px),conic-gradient(from 30deg,#8996a1,#e7eae3 12%,#a9b6c4 24%,#b8bdd3 31%,#f5f0db 40%,#a5b8b7 50%,#e1e5e5 61%,#939fad 72%,#ccd1d9 84%,#8996a1);box-shadow:0 10px 30px #0003;animation:disc-turn 24s linear infinite;animation-play-state:paused;color:#2e404e}.music-page.is-rotating .compact-disc{animation-play-state:running}.compact-disc::after{content:"";position:absolute;inset:43%;border-radius:50%;background:var(--bg);border:5px solid #bbc3cacc;box-shadow:0 0 0 1px #5e6a7580,0 0 0 14px #dce0e055}.disc-ink{position:absolute;inset:9%;border:1px solid #45576660;border-radius:50%;text-align:center}.disc-catalog{position:absolute;top:12%;left:12%;right:12%;font-size:clamp(6px,.65vw,9px);line-height:1.7;letter-spacing:1.2px}.disc-ink strong{position:absolute;top:27%;left:0;right:0;font:italic 400 clamp(23px,3.5vw,47px) Georgia,serif}.disc-artist{position:absolute;bottom:24%;left:0;right:0;font-size:11px;letter-spacing:2px}.disc-side{position:absolute;bottom:13%;left:0;right:0;font-size:8px;letter-spacing:2px}
.book-sleeve{position:absolute;width:73%;aspect-ratio:1;left:0;bottom:0;box-shadow:4px 10px 24px #0004;border:1px solid #63738244;overflow:hidden;display:block}.pieces-sleeve{background:#182b3d;color:#e8edf2;background-image:linear-gradient(130deg,#ffffff05,transparent 40%),linear-gradient(60deg,#111c28,transparent 80%)}.pieces-sleeve::before{content:"";position:absolute;inset:4%;border:1px solid #adc9df35}.pieces-sleeve::after{content:"";position:absolute;left:20%;top:-20%;width:1px;height:140%;background:#abc6dc22;transform:rotate(35deg)}.sleeve-edition{position:absolute;left:9%;top:10%;font-size:clamp(6px,.65vw,9px);letter-spacing:1.3px}.sleeve-star{position:absolute;right:18%;top:24%;font-size:clamp(44px,5vw,66px);font-weight:400;color:#b9d2e5}.pieces-sleeve strong{position:absolute;left:9%;bottom:20%;font:400 clamp(45px,5.1vw,70px) Georgia,serif;letter-spacing:-3px}.sleeve-byline{position:absolute;left:10%;bottom:11%;font-size:clamp(8px,.85vw,11px);letter-spacing:1px}.sleeve-arrow{position:absolute;right:9%;bottom:10%;font-size:18px}.book-sleeve:hover .sleeve-arrow{transform:translate(2px,-2px)}.blan-sleeve img{display:block;width:100%;height:100%;object-fit:cover}.blan-sleeve .sleeve-arrow{background:#15191dd9;color:#fff;bottom:5%;right:5%;padding:3px 8px}
.object-caption{display:flex;justify-content:space-between;gap:15px;margin-top:22px;color:var(--muted);font-size:10px}.object-caption .mono{font-size:9px;letter-spacing:1px}.listening-note{padding:3px 0 0;min-width:0}.note-kicker{font-size:11px;letter-spacing:2px;color:var(--record-accent)}.listening-note h2{font:400 clamp(44px,5vw,64px) Georgia,serif;letter-spacing:-2px;margin:16px 0 9px;line-height:1.1}.note-artist{font-size:12px;letter-spacing:.4px;color:var(--muted);margin:0}.story-copy{margin-top:31px}.story-copy p{font-size:14px;line-height:2.1;margin:0 0 20px;text-align:justify}.listen-link{display:flex;width:fit-content;align-items:center;gap:28px;border-bottom:1px solid var(--record-accent);padding:7px 0 10px;margin-top:25px;font-size:12px}.listen-link span{color:var(--record-accent);font-size:17px}.listen-link:hover{color:var(--record-accent)}.note-source{display:block;font-size:10px;color:var(--muted);line-height:1.85;margin:17px 0 0;max-width:390px}.source-link{text-decoration:underline;text-underline-offset:4px}.song-context{font-size:13px;color:var(--muted);line-height:1.9;margin:29px 0 0}.unwritten-space{height:150px;display:flex;align-items:end;padding-bottom:18px;margin-top:10px;border-bottom:1px solid var(--line)}.unwritten-space span{font-size:12px;color:var(--muted)}
.book-colophon{border-top:1px solid var(--line);padding-top:19px;display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:11px}.book-colophon .mono{font-size:9px;letter-spacing:1px}.selection-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.music-page .site-footer{border-top:1px solid var(--line)}
@keyframes disc-turn{to{transform:rotate(360deg)}}
@media(min-width:1500px){.listening-book{padding-left:66px;padding-right:66px}}
@media(max-width:900px){.record-spread{gap:5%;padding-top:38px}.story-copy p{font-size:13px;line-height:2}.record-choices{gap:26px}.record-choice{min-width:150px}.book-title>p{max-width:230px;font-size:11px}.disc-artist{font-size:9px}.listening-note h2{font-size:49px}}
@media(max-width:700px){.music-page .site-header{height:auto;min-height:64px;flex-wrap:wrap;padding-top:13px;padding-bottom:13px;gap:12px}.music-page .site-header nav{order:3;width:100%;justify-content:space-between;margin:0}.music-page .site-header nav a:last-child{display:block}.music-page .theme-button{margin-left:auto}.listening-book{padding:26px 6% 35px}.book-topline .mono{font-size:8px;letter-spacing:1px}.book-topline>span:last-child{font-size:10px;letter-spacing:1px}.book-title{display:block;padding:27px 0}.book-title h1{font-size:31px;letter-spacing:2px}.book-title>p{font-size:11px;max-width:none;margin:17px 0 0}.collection-bar{flex-wrap:wrap;gap:0}.record-choices{width:100%;gap:24px}.record-choice{min-width:0;flex:1;gap:12px;padding:17px 0}.record-choice strong{font-size:23px}.record-choice small{font-size:9px}.rotation-control{margin-left:auto;font-size:10px;padding:13px 0}.record-spread{grid-template-columns:minmax(0,1fr);gap:36px;padding:20px 0 35px}.record-object{width:100%;max-width:440px;margin:auto}.sleeve-scene{aspect-ratio:1.16}.compact-disc{width:74%}.book-sleeve{width:69%}.pieces-sleeve strong{font-size:clamp(45px,12vw,65px)}.sleeve-edition{font-size:7px}.sleeve-byline{font-size:8px}.sleeve-star{font-size:48px}.disc-ink strong{font-size:36px}.disc-catalog{font-size:6px}.disc-artist{font-size:9px}.object-caption{font-size:9px;margin-top:18px}.listening-note h2{font-size:52px}.note-kicker{font-size:10px}.note-artist{font-size:11px}.story-copy{margin-top:24px}.story-copy p{font-size:14px;line-height:2.05}.note-source{font-size:10px}.book-colophon{flex-wrap:wrap;font-size:10px}.book-colophon>span:last-child{display:none}.unwritten-space{height:155px}}
@media(prefers-reduced-motion:reduce){.music-page .compact-disc{animation:none}.rotation-control{display:none}}
.book-title>p,.record-choice small,.rotation-control,.note-kicker,.note-artist,.listen-link,.song-context,.unwritten-space span{font-size:14px}
.story-copy p{font-size:16px;line-height:2}
.note-source,.object-caption{font-size:12px}
.song-player{margin:26px 0 18px}.youtube-frame{position:relative;aspect-ratio:16/9;min-height:210px;background:var(--panel);border:1px solid var(--line)}.youtube-mount,.youtube-frame iframe{width:100%;height:100%;position:absolute;inset:0;border:0}.youtube-load{position:absolute;inset:0;width:100%;height:100%;background:var(--panel);color:var(--fg);font:inherit;font-size:16px;cursor:pointer;border:0}.youtube-load:hover{background:var(--panel2);color:var(--amber)}.youtube-load[hidden]{display:none}.youtube-load:disabled{cursor:wait}.player-message{font-size:12px;line-height:1.7;color:var(--muted);margin:10px 0}.playback-status{font-size:12px;color:var(--muted);white-space:nowrap;margin-left:auto}.music-page.is-rotating .playback-status{color:var(--accent)}
.song-player,.listening-note{min-width:0}.youtube-frame{width:100%;box-sizing:border-box}.youtube-mount{box-sizing:border-box}
.bgm-toggle{color:var(--amber);border:1px solid var(--line);background:var(--panel);padding:10px 14px;font:inherit;font-size:13px;cursor:pointer}.bgm-toggle:hover{border-color:var(--amber)}.collection-bar{flex-wrap:wrap;gap:16px}.playback-status{margin-left:0}
