/* S9 media library (BMS). Loaded after tokens and ds9a.css. Prefix md-. */
.md-drop{border:2px dashed var(--color-border);border-radius:var(--radius);padding:var(--s-5);text-align:center;background:var(--color-bg);margin-bottom:var(--s-4)}
.md-drop.is-over{border-color:var(--color-accent-text);background:#fff}
.md-drop strong{display:block;font-size:var(--t-lg,1.125rem);color:var(--color-ink)}
.md-drop p{margin:var(--s-1) 0 var(--s-3);color:var(--color-muted);font-size:var(--t-sm)}
.md-up{list-style:none;margin:0 0 var(--s-4);padding:0;display:grid;gap:var(--s-2)}
.md-up li{display:grid;grid-template-columns:2.4rem 1fr 6rem;gap:var(--s-3);align-items:center;border:1px solid var(--color-line);border-radius:var(--radius);padding:var(--s-2) var(--s-3);background:#fff;font-size:var(--t-sm)}
.md-up .md-ic{width:2.4rem;height:2.4rem;border-radius:var(--radius-sm);background:var(--color-line);object-fit:cover;display:grid;place-items:center;font-size:var(--t-xs);font-weight:800;color:var(--color-muted)}
.md-bar{height:.5rem;border-radius:1rem;background:var(--color-line);overflow:hidden;margin-top:.3rem}
.md-bar span{display:block;height:100%;width:0;background:var(--color-accent);transition:width .2s}
.md-up .is-done .md-bar span{background:var(--color-success)}
.md-up .md-st{text-align:right;color:var(--color-muted);font-weight:700}
.md-up .md-err{color:var(--color-danger)}
.md-tools{display:flex;gap:var(--s-3);flex-wrap:wrap;align-items:center;margin-bottom:var(--s-3)}
.md-tools input[type=search]{flex:1 1 14rem;min-width:0}
.md-tools select,.md-tools input{font:inherit;padding:.5rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-ink)}
.md-seg{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}
.md-seg button{font:inherit;font-size:var(--t-sm);font-weight:700;border:0;background:#fff;color:var(--color-body);padding:.5rem .8rem;cursor:pointer}
.md-seg button+button{border-left:1px solid var(--color-border)}
.md-seg button[aria-pressed=true]{background:var(--color-ink);color:var(--color-on-accent)}
.md-layout{display:grid;grid-template-columns:1fr;gap:var(--s-4);align-items:start}
.md-layout.has-detail{grid-template-columns:minmax(0,1fr) 24rem}
.md-h{font-size:var(--t-sm);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);margin:var(--s-4) 0 var(--s-2)}
.md-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:var(--s-3)}
.md-card{position:relative;border:2px solid var(--color-line);border-radius:var(--radius);background:#fff;overflow:hidden;cursor:pointer;padding:0;text-align:left;font:inherit;width:100%;display:block}
.md-card:hover{border-color:var(--color-border)}
.md-card[aria-pressed=true],.md-card.is-sel{border-color:var(--color-accent-text);box-shadow:0 0 0 2px var(--color-accent-text)}
.md-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--color-line)}
.md-card .md-cap{display:flex;gap:.4rem;align-items:center;justify-content:space-between;padding:.4rem .6rem;font-size:var(--t-xs);color:var(--color-muted)}
.md-card .md-cap b{color:var(--color-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.md-tag{font-size:var(--t-xs);font-weight:800;padding:.1rem .45rem;border-radius:1rem;white-space:nowrap}
.md-tag.used{background:#e3f1e6;color:#1d5a2d}
.md-tag.free{background:var(--color-line);color:var(--color-body)}
.md-tag.noalt{background:#fbeccb;color:#6b4a00}
.md-list{list-style:none;margin:0;padding:0;border:1px solid var(--color-line);border-radius:var(--radius);background:#fff}
.md-list li+li{border-top:1px solid var(--color-line)}
.md-row{display:grid;grid-template-columns:2.6rem 1fr auto auto;gap:var(--s-3);align-items:center;width:100%;border:0;background:transparent;font:inherit;text-align:left;padding:var(--s-2) var(--s-3);cursor:pointer}
.md-row:hover{background:var(--color-bg)}
.md-row[aria-pressed=true]{background:var(--color-bg);box-shadow:inset 3px 0 0 var(--color-accent-text)}
.md-pdf{width:2.6rem;height:2.6rem;border-radius:var(--radius-sm);background:#f3d6d3;color:#8a2a22;font-weight:800;font-size:var(--t-xs);display:grid;place-items:center}
.md-row b{color:var(--color-ink);display:block;overflow:hidden;text-overflow:ellipsis}
.md-row small{color:var(--color-muted);font-size:var(--t-xs)}
.md-empty{padding:var(--s-5);text-align:center;color:var(--color-muted);border:1px dashed var(--color-border);border-radius:var(--radius)}
.md-detail{border:1px solid var(--color-line);border-radius:var(--radius);background:#fff;padding:var(--s-4);position:sticky;top:var(--s-3)}
.md-detail[hidden]{display:none}
.md-detail h2{font-size:var(--t-md,1.05rem);margin:0 0 var(--s-3);display:flex;justify-content:space-between;gap:var(--s-2)}
.md-prev{background:var(--color-line);border-radius:var(--radius-sm);display:grid;place-items:center;min-height:9rem;margin-bottom:var(--s-3);overflow:hidden}
.md-prev img{max-width:100%;max-height:16rem;display:block}
.md-dl{display:grid;grid-template-columns:7.5rem 1fr;gap:.3rem var(--s-3);margin:0 0 var(--s-3);font-size:var(--t-sm)}
.md-dl dt{color:var(--color-muted)}.md-dl dd{margin:0;color:var(--color-ink);overflow-wrap:anywhere}
.md-field{display:block;margin-bottom:var(--s-3)}
.md-field label{display:block;font-weight:700;font-size:var(--t-sm);color:var(--color-ink);margin-bottom:.25rem}
.md-field input,.md-field textarea{font:inherit;width:100%;box-sizing:border-box;padding:.5rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius-sm)}
.md-hint{font-size:var(--t-xs);color:var(--color-muted)}
.md-used{margin:0 0 var(--s-3);padding-left:1.1rem;font-size:var(--t-sm)}
.md-used a{color:var(--color-accent-text);font-weight:700}
.md-acts{display:flex;gap:var(--s-2);flex-wrap:wrap;margin-top:var(--s-3)}
.md-refuse{background:#fbe9e7;border:1px solid #e6b3ad;color:#7a2018;border-radius:var(--radius-sm);padding:var(--s-3);font-size:var(--t-sm);margin-top:var(--s-3)}
.md-refuse ul{margin:.4rem 0 0;padding-left:1.1rem}
.md-refuse[hidden],.md-conf[hidden]{display:none}
.md-conf{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--s-3);font-size:var(--t-sm);margin-top:var(--s-3)}
.md-mockbar{display:flex;gap:var(--s-3);align-items:center;flex-wrap:wrap;background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);font-size:var(--t-sm)}
/* insert dialog */
.md-ov{position:fixed;inset:0;background:rgba(15,20,30,.55);z-index:1100;display:grid;place-items:center;padding:var(--s-3) var(--s-3) calc(var(--devbar-h,0px) + 7rem)}
.md-ov[hidden]{display:none}
.md-dlg{background:#fff;border-radius:var(--radius);width:min(62rem,100%);max-height:100%;min-height:0;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.md-dlg-h{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--color-line)}
.md-dlg-h h2{margin:0;font-size:var(--t-md,1.1rem);white-space:nowrap}.md-dlg-h input{flex:1;min-width:0}
.md-dlg-b{padding:var(--s-4);overflow:auto;display:grid;grid-template-columns:minmax(0,1fr) 15rem;gap:var(--s-4);flex:1}
.md-dlg-f{display:flex;gap:var(--s-2);justify-content:flex-end;align-items:center;padding:var(--s-3) var(--s-4);border-top:1px solid var(--color-line);flex-wrap:wrap}
.md-dlg-f .md-hint{margin-right:auto}
.md-tabs{display:flex;gap:var(--s-1);margin-bottom:var(--s-3)}
.md-tabs button{font:inherit;font-weight:700;border:0;background:transparent;padding:.45rem .8rem;border-bottom:3px solid transparent;cursor:pointer;color:var(--color-muted)}
.md-tabs button[aria-selected=true]{color:var(--color-ink);border-color:var(--color-accent-text)}
.md-ins-side{font-size:var(--t-sm)}
.md-placed{border:1px solid var(--color-line);border-radius:var(--radius);padding:var(--s-3);background:var(--color-bg);font-size:var(--t-sm);margin-bottom:var(--s-4)}
.md-placed img{max-width:100%;border-radius:var(--radius-sm);display:block;margin-top:var(--s-2)}
@media(max-width:1100px){.md-layout.has-detail{grid-template-columns:1fr}.md-detail{position:static}}
@media(max-width:700px){.md-dlg-b{grid-template-columns:1fr}.md-row{grid-template-columns:2.6rem 1fr}.md-row>.md-tag,.md-row>small.md-sz{display:none}.md-grid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr))}.md-up li{grid-template-columns:2.4rem 1fr}.md-up .md-st{display:none}}
