#main:focus,.prose h2:focus,.prose h3:focus{outline:none}
.article-sidebar{max-height:calc(100dvh - 110px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c4af90 transparent;padding:0 5px 6px 0}
.toc-panel{flex-shrink:0}
.toc-links a[aria-current=location]{color:var(--accent);border-color:var(--accent);font-weight:700}
.album-empty-placeholder{display:flex;position:absolute;inset:0;align-items:center;justify-content:center;flex-direction:column;gap:15px;border:6px solid #fffdf7;background:linear-gradient(135deg,#e9e3d5,#eee9de);color:#9d9281;box-shadow:0 15px 30px #6d59472b;border-radius:4px}
.album-empty-placeholder svg{width:40px;height:40px;stroke-width:1}
.album-empty-placeholder small{font-size:12px;letter-spacing:2px}
.album-photos>.empty-state{grid-column:1/-1;width:100%}
.dark .album-empty-placeholder{background:linear-gradient(135deg,#50463c,#3f3931);border-color:#e2d8c5;color:#d4c3a8}
.calendar-day,.calendar-title button{touch-action:manipulation}
.small-control{min-height:32px;min-width:28px;touch-action:manipulation}
.lightbox .icon-button:focus-visible,.mobile-drawer a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.photo-tile img{background:#e9e2d8;aspect-ratio:4/3}
@media(max-width:767px){.article-sidebar{max-height:none;overflow:visible;padding:0;overscroll-behavior:auto}.toc-panel{max-height:290px;overflow:auto;scrollbar-width:thin}.toc-links a{padding-top:5px;padding-bottom:5px}.music-tabs button,.about-tabs button{min-height:40px}.player-controls .small-control{min-height:38px;min-width:34px}.album-empty-placeholder{border-width:4px}.album-empty-placeholder small{font-size:10px}.album-empty-placeholder svg{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.hero-wave path,.vinyl,.petal,.danmaku-line{animation:none!important}}

/* Personal profile and official music source. */
.music-reflection{border-radius:32px}
.about-introduction{display:flex;align-items:center;gap:22px;margin:0 0 28px}.about-introduction h2{margin:5px 0 0;line-height:1.4}.about-avatar{width:82px;height:82px;object-fit:cover;object-position:center;border-radius:50%;border:4px solid var(--glass,#fffaf4);box-shadow:0 6px 22px #69593a18}.about-eyebrow,.music-eyebrow{font:9px/1.5 var(--sans,sans-serif);letter-spacing:2.5px;color:var(--muted)}.about-exploring li{padding:5px 0}.about-contact-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:24px}.about-email{font-size:12px;color:var(--blue);overflow-wrap:anywhere}.netease-player{border:0;display:block;width:100%;min-width:0;max-width:100%;background:transparent;margin:7px 0 3px}.platform-player .track-title{line-height:1.65}.platform-player .track-info{min-width:0}.music-source-link{display:block;text-align:center;font-size:10px;color:var(--muted);margin-top:6px}.music-source-link:hover{color:var(--blue)}.music-reflection{padding:40px 34px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;min-height:400px}.music-reflection h2{font-size:25px;margin:20px 0 12px}.music-reflection>p{color:var(--muted);font-size:13px;line-height:1.9}.selected-song{display:flex;align-items:center;gap:20px;width:100%;padding:22px 0;margin:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left}.selected-song>span{font-size:12px;color:var(--muted)}.selected-song div{flex:1}.selected-song strong{display:block;font-size:14px;font-weight:500}.selected-song small{display:block;font-size:11px;color:var(--muted);margin-top:7px}.music-reflection>p.music-availability{font-size:11px;max-width:340px}.music-reflection>.pill-button{margin-top:20px}.platform-music-layout .full-player{height:100%;display:flex;flex-direction:column;justify-content:center}.platform-music-layout .player-line{margin-top:28px}.platform-music-layout .music-source-link{margin-bottom:20px}@media(max-width:600px){.about-introduction{gap:15px}.about-avatar{width:66px;height:66px}.about-introduction h2{font-size:21px}.music-reflection{padding:30px 24px;min-height:340px}.music-reflection h2{font-size:23px}}
