/* Bibliothèque & Médiathèque — exploration et révision des originaux. */
.media-library{max-width:1280px;margin:0 auto;padding:0 28px 130px}.media-library-top{margin-bottom:18px}.media-library-selector{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0 16px;margin-bottom:22px}.media-family-row{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:8px}.media-family-row button{background:transparent;border:1px solid var(--line);color:var(--ink);min-height:42px;padding:8px 12px;text-align:left;font:11px 'Anonymous Pro',monospace;letter-spacing:.04em}.media-family-row button:hover,.media-family-row button.active{border-color:var(--ink);background:var(--pearl)}.media-family-row button.active{box-shadow:inset 3px 0 0 var(--vermillon,#d94841)}.media-selector-levels{display:grid;gap:8px;margin-top:12px}.media-selector-level{display:none;grid-template-columns:25px minmax(0,1fr);gap:10px;align-items:start}.media-selector-level.active{display:grid}.media-selector-level>span{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line);font:10px 'Anonymous Pro',monospace}.media-selector-level>div{display:flex;flex-wrap:wrap;gap:6px}.media-selector-level button{background:var(--paper);border:1px solid var(--line);padding:6px 9px;color:var(--ink);font-size:11px}.media-selector-level button.selected{border-color:var(--ink);background:var(--pearl)}.media-library-empty{border:1px solid var(--line);padding:24px;display:grid;gap:7px;color:#625b5a}.media-library-empty strong{color:var(--ink);font-size:16px}.media-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.media-library-card{appearance:none;border:1px solid var(--line);background:var(--paper);padding:0;text-align:left;color:var(--ink);overflow:hidden;transition:transform .16s ease,border-color .16s ease}.media-library-card:hover{transform:translateY(-2px);border-color:var(--ink)}.media-library-image{aspect-ratio:4/5;background:var(--pearl);display:grid;place-items:center;overflow:hidden}.media-library-image img{display:block;width:100%;height:100%;object-fit:contain;background:#f4f1ef}.media-library-image span{font:10px 'Anonymous Pro',monospace;letter-spacing:.08em;color:#766e6e}.media-library-card>div:last-child{padding:10px}.media-library-card strong,.media-library-card small{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.3}.media-library-card strong{font-size:13px}.media-library-card small{margin-top:5px;font:9px 'Anonymous Pro',monospace;color:#756d6c}.media-library-card p{display:flex;flex-wrap:wrap;gap:4px;margin:9px 0 0}.media-library-card p span{border:1px solid #ddd3d0;padding:3px 5px;font:8px 'Anonymous Pro',monospace;color:#775d59}.media-inspector{width:min(1180px,calc(100vw - 48px));max-width:none;max-height:min(860px,calc(100vh - 48px));padding:0;border:0;background:var(--paper);box-shadow:0 26px 70px rgba(21,19,19,.34)}.media-inspector::backdrop{background:rgba(21,19,19,.58);backdrop-filter:blur(3px)}.media-inspector-layout{display:grid;grid-template-columns:minmax(0,1fr) 355px;min-height:min(760px,calc(100vh - 48px))}.media-inspector-visual{background:#201d1d;display:grid;place-items:center;min-height:500px}.media-inspector-visual img{display:block;max-width:100%;max-height:min(760px,calc(100vh - 48px));object-fit:contain}.media-inspector-visual .asset-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#f7f4f3}.media-inspector aside{padding:22px;overflow:auto;max-height:min(860px,calc(100vh - 48px));border-left:1px solid var(--line)}.media-inspector aside header{display:flex;gap:14px;justify-content:space-between;align-items:start}.media-inspector h2{margin:3px 0 0;font-size:20px;line-height:1.1}.close-inspector{border:0;background:none;font-size:26px;line-height:1;padding:0;color:var(--ink)}.media-inspector-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:20px 0}.media-inspector-actions button,.media-inspector-ai button{border:1px solid var(--line);background:var(--paper);min-height:35px;padding:7px;color:var(--ink);font-size:11px}.media-inspector-actions button:hover,.media-inspector-ai button:hover{background:var(--pearl);border-color:var(--ink)}.media-inspector-details{display:grid;border-top:1px solid var(--line);border-left:1px solid var(--line)}.media-inspector-details>div{display:grid;gap:4px;padding:10px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.media-inspector-details small{font:9px 'Anonymous Pro',monospace;text-transform:uppercase;letter-spacing:.07em;color:#756d6c}.media-inspector-details strong{font-size:12px;line-height:1.35}.media-inspector-ai{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:18px 0}.media-inspector-ai strong{grid-column:1/-1;font-size:13px}.media-comment{display:grid;gap:6px;font:10px 'Anonymous Pro',monospace}.media-comment textarea{min-height:76px;resize:vertical;margin:0;padding:9px;font:12px inherit}.media-inspector .button{margin-top:10px;width:100%}
.media-inspector-reviews,.media-inspector-comments{border-top:1px solid var(--line);padding-top:14px;margin-top:14px;display:grid;gap:9px}
.media-inspector-reviews>strong,.media-inspector-comments>strong{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.media-reviewer-select{display:flex;align-items:center;gap:8px;font:10px 'Anonymous Pro',monospace;margin:0}
.media-reviewer-select select{width:auto;flex:1;margin:0;padding:6px 8px;font:12px 'League Spartan',sans-serif}
.media-rating-row{display:flex;flex-wrap:wrap;gap:6px}
.media-rating-row button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:7px 10px;font:11px 'Anonymous Pro',monospace;cursor:pointer}
.media-rating-row button.active{background:var(--red);border-color:var(--red);color:#fff}
.media-inspector-reviews select{margin:0;padding:8px;font:12px 'League Spartan',sans-serif}
.media-inspector-reviews>small,.media-inspector-comments>small{color:var(--muted);font:10px 'Anonymous Pro',monospace;line-height:1.5}
.media-comment-thread{display:grid;gap:8px;max-height:180px;overflow-y:auto}
.media-comment-entry{border:1px solid var(--line);padding:8px 10px;background:var(--soft)}
.media-comment-entry small{color:var(--muted);font:9px 'Anonymous Pro',monospace}
.media-comment-entry p{margin:4px 0 0;font-size:12px;line-height:1.4}
@media(max-width:980px){.media-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.media-family-row{grid-template-columns:repeat(2,minmax(0,1fr))}.media-inspector-layout{grid-template-columns:1fr}.media-inspector-visual{min-height:320px}.media-inspector aside{max-height:none}.media-inspector{overflow:auto}}@media(max-width:640px){.media-library{padding-inline:16px}.media-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-family-row{grid-template-columns:1fr}.media-inspector{width:100vw;max-height:100vh}.media-inspector-visual{min-height:260px}}

/* Atelier NLO — selector visuel : les sources réelles priment, les interprétations restent candidates. */
/* La médiathèque reprend le même langage que les sélecteurs Stock et Soul Core. */
.media-library-selector{border:0;padding:0;margin:0 0 20px}.media-family-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.media-family-row button{position:relative;min-height:38px;padding:0 34px 0 11px;text-align:left;background:#fff;border:1px solid #d8cfcb;box-shadow:none;font:9px 'Anonymous Pro',monospace;letter-spacing:.12em;text-transform:uppercase}.media-family-row button::after{content:'＋';position:absolute;right:11px;top:50%;transform:translateY(-51%);color:#b43e3e;font:14px/1 Arial}.media-family-row button:hover{border-color:#918480;background:#fff}.media-family-row button.active{border-color:#918480;background:#fff;box-shadow:0 9px 22px rgba(37,25,19,.10);color:#9b3030}.media-family-row button.active::after{content:'—'}.media-selector-levels{margin-top:7px;padding:10px;border:1px solid #b9aaa4;background:#fffdfa;box-shadow:0 16px 35px rgba(37,25,19,.12)}.media-selector-level{grid-template-columns:32px minmax(0,1fr);gap:8px}.media-selector-level>span{width:auto;height:27px;border-color:#e2dad6;background:#faf8f6;font:9px 'Anonymous Pro',monospace;color:#514846}.media-selector-level>div{gap:4px}.media-selector-level button{background:#fff;border:1px solid #eee8e5;padding:6px 8px;color:#514846;font:9px 'Anonymous Pro',monospace}.media-selector-level button:hover,.media-selector-level button.selected{border-color:#b43e3e;background:#fff3f1;color:#9b3030}@media(max-width:900px){.media-family-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.media-family-row{grid-template-columns:1fr}.media-selector-levels{box-shadow:none}}
.selector-filters{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,.42fr)) auto auto;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 0;margin-bottom:12px}.selector-filters input,.selector-filters select{margin:0;width:100%;padding:9px;font-size:12px}.checkbox-filter{display:flex;align-items:center;gap:5px;margin:0;white-space:nowrap;font-size:9px;letter-spacing:.04em}.checkbox-filter input{width:auto;margin:0}.selector-summary{font:10px 'Anonymous Pro',monospace;color:#766e6e;margin:0 0 14px}.selector-summary strong{color:var(--ink);font-size:13px}.media-tile{overflow:hidden}.media-image{width:100%;height:280px;object-fit:contain;display:block;background:#f0ecea}.size-0 .media-image,.size-0 .media-tile .asset-placeholder{height:110px;min-height:110px}.size-1 .media-image,.size-1 .media-tile .asset-placeholder{height:170px;min-height:170px}.size-3 .media-image,.size-3 .media-tile .asset-placeholder{height:420px;min-height:420px}.media-tile-info small{min-height:28px}.media-tile-info>div{flex-wrap:wrap}.media-markers{min-height:15px}.media-markers span{border:1px solid #d7cccc;color:#805b5b;padding:3px 5px;font:9px 'Anonymous Pro',monospace}@media(max-width:1050px){.selector-filters{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.selector-filters{grid-template-columns:1fr}.selector-grid.size-3{grid-template-columns:1fr}}
.quick-create-dialog{width:min(480px,calc(100vw - 48px));max-width:none;padding:0;border:0;background:var(--paper);box-shadow:0 26px 70px rgba(21,19,19,.34)}
.quick-create-form{padding:22px 24px;display:grid;gap:12px}
.quick-create-form header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.quick-create-form header h3{margin:0;font-size:15px}
.quick-create-form label{display:grid;gap:5px;font:10px 'Anonymous Pro',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.quick-create-form input,.quick-create-form select,.quick-create-form textarea{margin:0;padding:9px;font:13px 'League Spartan',sans-serif;text-transform:none;letter-spacing:0}
.quick-create-form textarea{min-height:70px;resize:vertical}
.quick-create-actions{display:flex;justify-content:flex-end;margin-top:6px}
.nlo-selector-v3__toolbar{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0;position:sticky;right:0;background:var(--nl-pearl);padding-left:14px;z-index:1}
.soul-toolbar-create{min-height:42px!important;padding:0 15px!important;margin:0!important;white-space:nowrap}
.nlo-selector-v3__toolbar .view-switch--icons{margin:0}
@media(max-width:760px){.nlo-selector-v3__families{position:relative}.nlo-selector-v3__toolbar{position:static;flex-shrink:0}}
.nlo-selector-v3__compat{margin-top:10px;padding:10px 12px;border-left:2px solid var(--nl-grey-mid);background:var(--nl-grey-light)}
.nlo-selector-v3__compat strong{display:block;font:10px 'Anonymous Pro',monospace;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}
.nlo-selector-v3__compat span{font-size:13px;line-height:1.45;color:var(--nl-charcoal)}
.nlo-selector-v3__compat.compat-ok{border-left-color:var(--nl-charcoal)}
.nlo-selector-v3__compat.compat-block{border-left-color:var(--nl-vermilion)}
.nlo-selector-v3__compat.compat-block strong{color:var(--nl-vermilion)}
.nlo-selector-v3__range{display:block!important;width:100%;min-width:0;padding:10px 8px 34px}
.nlo-selector-v3__range-track{position:relative;width:100%;height:16px}
.nlo-selector-v3__range-track input[type=range]{position:absolute;left:0;top:0;width:100%;height:16px;margin:0;padding:0;background:transparent;-webkit-appearance:none;pointer-events:none}
.nlo-selector-v3__range-track input[type=range]::-webkit-slider-runnable-track{height:2px;background:var(--nl-grey-mid)}
.nlo-selector-v3__range-track input[type=range]::-moz-range-track{height:2px;background:var(--nl-grey-mid);border:0}
.nlo-selector-v3__range-track input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:16px;height:16px;margin-top:-7px;border-radius:50%;background:var(--nl-charcoal);cursor:pointer}
.nlo-selector-v3__range-track input[type=range]::-moz-range-thumb{pointer-events:auto;width:16px;height:16px;border:0;border-radius:50%;background:var(--nl-charcoal);cursor:pointer}
.nlo-range-value{position:absolute;top:22px;transform:translateX(-50%);font:11px 'Anonymous Pro',monospace;color:var(--nl-grey-dark);white-space:nowrap;pointer-events:none}
