/* 스트링 악보 탭: 올리기 카드와 A4 출력 미리보기, 저장된 악보 팝업을 배치한다. */
#strings-panel{max-width:1400px;width:100%;margin:auto;padding:30px 32px 48px;min-width:0}#strings-panel[hidden]{display:none}#strings-panel *{box-sizing:border-box}
.strings-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;margin-bottom:18px}.strings-top h1{font-size:28px;margin:0 0 8px}.strings-top p{font-size:14px;color:var(--muted);margin:0}
#strings-status{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 14px}#strings-status:empty{display:none}#strings-status.error{color:var(--error)}
.strings-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:28px;align-items:start}
.strings-card,.strings-preview{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px;min-width:0}
.strings-card h2,.strings-preview h2{font-size:18px;margin:0}.strings-card h2{margin-bottom:6px}
#strings-panel label{display:block;font-size:13px;font-weight:600;margin:14px 0 6px}#strings-panel input:not([type=checkbox]){width:100%}
.strings-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}.strings-card .strings-row:first-of-type{margin-top:0}
.strings-hint{font-size:12px;color:var(--muted);line-height:1.6;margin:6px 0 0}.strings-row .strings-hint{margin:0}
#strings-panel .strings-check{display:flex;align-items:center;gap:8px;margin-top:16px}#strings-panel .strings-check input{width:auto;margin:0}
#strings-panel button{font-size:13px}#strings-panel button.secondary,#strings-saved-dialog button.secondary{background:var(--surface);color:var(--accent);border:1px solid var(--line)}#strings-panel button:disabled{opacity:.45}
#strings-file-list{list-style:none;margin:10px 0 0;padding:0;font-size:13px}#strings-file-list:empty{display:none}#strings-file-list li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid var(--line)}#strings-file-list span{min-width:0;overflow-wrap:anywhere}#strings-file-list small{color:var(--muted);white-space:nowrap}
.strings-preview-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.strings-preview-head p{margin:4px 0 0;font-size:13px;color:var(--muted)}.strings-preview-head .strings-row{margin:0}
#strings-pages{display:flex;flex-direction:column;align-items:center;gap:18px;background:#eceef1;border-radius:12px;padding:22px}
.strings-page{width:min(560px,100%);aspect-ratio:210/297;background:#fff;box-shadow:0 2px 10px #0002;padding:3% 3% 2%;display:flex;flex-direction:column;align-items:center;gap:6px}
.strings-page h3{margin:0;font-size:clamp(12px,2vw,18px);color:#111;text-align:center}.strings-page img{flex:1;min-height:0;width:100%;object-fit:contain}.strings-page span{font-size:11px;color:#999}
.strings-empty{padding:80px 20px;text-align:center;color:var(--muted);margin:0}
#strings-saved-dialog{width:calc(100% - 36px);max-width:640px;border:0;border-radius:18px;padding:20px 22px;background:var(--surface);color:var(--ink)}#strings-saved-dialog::backdrop{background:#0006}
.strings-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.strings-dialog-head h2{margin:0;font-size:18px}.strings-dialog-head small{color:var(--muted);font-weight:400;font-size:13px}
#strings-query{width:100%;margin:0 0 8px}#strings-saved-error{color:var(--error);font-size:13px}
#strings-saved-list{list-style:none;margin:0;padding:0;max-height:min(460px,60vh);overflow:auto}#strings-saved-list li{display:flex;align-items:center;gap:12px;padding:11px 4px;border-top:1px solid var(--line)}#strings-saved-list li:first-child{border-top:0}
#strings-saved-list li>div:first-child{flex:1;min-width:0}#strings-saved-list b{display:block;overflow-wrap:anywhere}#strings-saved-list small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.strings-saved-actions{display:flex;gap:6px;flex-shrink:0}#strings-saved-list button{font-size:13px;padding:8px 15px}#strings-saved-list .strings-delete{background:transparent;border:1px solid #e8a19b;color:#b42318}
.strings-saved-empty{justify-content:center;color:var(--muted);padding:30px 0!important}
[data-mode=dark] #strings-pages{background:#1c1c1e}[data-mode=dark] #strings-saved-list .strings-delete{border-color:#b6635a;color:#ff9c93}
@media(max-width:900px){.strings-layout{grid-template-columns:1fr}#strings-panel{padding:24px 16px 40px}}
@media(max-width:520px){#strings-saved-list li{flex-wrap:wrap}.strings-saved-actions{margin-left:auto}}
