
/* PianoMoDa · 작품과 연주자 정보 정비 · 2026.10.14 */
.work-facts{display:flex;flex-wrap:wrap;gap:4px 16px;line-height:1.75;margin:10px 0 14px;font-size:13px;overflow-wrap:anywhere}
.work-facts .duration{font-weight:700;white-space:nowrap}
.facts-guide{font-size:12px;line-height:1.8;opacity:.85;margin:12px 4px 18px;word-break:keep-all}
.context-paragraph+.context-paragraph{margin-top:10px}
.context-source{display:inline-block;margin-top:10px;font-size:11px;font-weight:650;color:inherit;text-underline-offset:3px}
.publication-tag{display:inline-block;margin:0 0 12px;padding:5px 9px;border:1px solid #9B8C68;border-radius:6px;color:#5E5235;font-size:11px;font-weight:700;letter-spacing:.025em;background:#F2EEE3}
.artist-record{margin:12px 0 6px;display:grid;gap:9px}
.artist-record .artist-row{font-size:13px;line-height:1.75}
.artist-row b{display:block;font-size:11px;letter-spacing:.04em;margin-bottom:2px}
.artist-date{font-size:10px;line-height:1.7;opacity:.8;margin:12px 0 0}
.piece-context{font-size:13px;line-height:1.8;margin:10px 0 0}
.piece-context b{display:block;margin-bottom:4px;font-size:10px;letter-spacing:.1em}
.score-preview.external-score{text-decoration:none}
.person .facts span,.duo-profiles .facts span{display:block}

.score-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#111820;color:#eef2f4;overflow:hidden}
.score-dialog[open]{display:flex;flex-direction:column}.score-dialog::backdrop{background:#111820ed}
.score-toolbar,.score-nav{display:flex;align-items:center;gap:8px;flex:none;padding:10px 14px;background:#192633;border-bottom:1px solid #354859}
.score-title{min-width:0;flex:1;font-size:14px;font-weight:700}
.score-action{flex:none;border:1px solid #506476;border-radius:9px;padding:9px 12px;background:#233746;color:#eef2f4;font:700 12px/1.2 Pretendard,sans-serif;text-decoration:none;cursor:pointer}
.score-nav{justify-content:center}.score-nav span{min-width:70px;text-align:center;font-size:13px}.score-nav button:disabled{opacity:.45}
.score-help{flex:none;margin:0;padding:8px 14px;font-size:12px;line-height:1.5;color:#d6dce2}
.score-pages{flex:1;min-height:0;overflow:auto;text-align:center;padding:16px;background:#24313b;overscroll-behavior:contain}
.score-pages canvas{display:block;margin:auto;max-width:none;background:#fff;box-shadow:0 5px 22px #0005}
.score-pages p{color:#eef2f4}.score-pages canvas[hidden],.score-pages p[hidden]{display:none}
@media(max-width:600px){.score-toolbar{flex-wrap:wrap;padding:10px}.score-title{flex-basis:100%;font-size:13px}.score-nav{gap:5px;padding:6px}.score-nav .score-action{padding:7px 8px;font-size:11px;min-height:38px}.score-nav span{min-width:66px;font-size:11px}.score-pages{padding:10px}}

body,button,input,select,textarea{font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Noto Sans KR",sans-serif}
h1,h2,.piece-info h3,.person h3{font-family:Georgia,"Noto Serif KR",serif}
.postlude-gallery figure>a,.postlude-photo>a,.postlude-grid figure>a{display:block;aspect-ratio:1/1;overflow:hidden}
.postlude-gallery figure>a img,.postlude-photo>a img,.postlude-grid figure>a img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:cover}
.postlude figure button[data-image]{display:block;width:100%;aspect-ratio:1/1;overflow:hidden}.postlude figure button[data-image] img{width:100%;height:100%;object-fit:cover}

.personal-score-panel{margin:16px 0;padding:15px 16px;border:1px solid #C8C5B8;border-radius:10px;font-size:13px;line-height:1.7}.personal-score-panel b{font-size:11px}.personal-score-panel button{margin-right:10px;padding:9px 12px;border-radius:7px;cursor:pointer}.personal-score-panel span{font-size:11px}
