.live-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.live-panel { margin:0 0 26px; }
.live-field { display:grid; gap:8px; margin-bottom:14px; }
.live-field select { background:#201a27; color:inherit; border:1px solid #ffffff30; border-radius:8px; padding:9px 12px; }
.live-panel a, .regie-link { color:#f5b3ca; }
#live-status { min-height:1.5em; color:#efabc0; }
@media(max-width:750px) { .live-grid { grid-template-columns:1fr; gap:0; } }
html.revelation, .revelation body { background:transparent; }
.revelation body > header, .revelation .intro, .revelation aside, .revelation .archive, .revelation footer,
.revelation .viewer-head, .revelation .viewer-foot { display:none; }
.revelation main { padding:0; max-width:none; }
.revelation .workspace { display:block; }
.revelation .viewer { border:0; background:none; overflow:visible; }
.revelation .canvas-wrap { height:82vh; max-height:none; width:min(100vw, 850px); margin:auto; }
.revelation .viewer { visibility:hidden; }
.revelation .viewer.is-revealed { visibility:visible; animation:reveal .65s ease-out both; }
.reveal-caption { position:absolute; bottom:3vh; left:0; right:0; text-align:center; font-size:clamp(16px,4vh,32px); text-shadow:0 2px 12px #000; overflow-wrap:anywhere; padding:0 12px; }
.reveal-caption small { display:block; color:#ffccdf; }
@keyframes reveal { from { opacity:0; transform:scale(.85); } to { opacity:1; transform:scale(1); } }
@media(prefers-reduced-motion:reduce) { .revelation .viewer.is-revealed { animation:none; } }

.lot-view, .lot-view body { background:#17101d; color:#f8eaf2; }
.lot-view .canvas-wrap { height: min(62vh, 540px); }
.lot-view .viewer:not(.is-revealed) { display:none; }
.lot-panel { width:min(92%, 520px); margin:20px auto 32px; text-align:center; }
.lot-panel h1 { font-size:clamp(25px,7vw,40px); margin:12px 0; }
.lot-panel button { margin:4px; }
.lot-panel ul { text-align:left; }
.lot-panel li button { width:100%; text-align:left; }
.revelation .lot-panel { display:block; }

.collection-panel { width:min(96%, 1040px); padding:clamp(14px, 3vw, 28px); }
.collection-panel .collection-grid {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:24px 0 0;
}
@media(min-width:620px) {
  .collection-panel .collection-grid { grid-template-columns:repeat(auto-fill,minmax(155px,1fr)); }
}
.collection-panel .collection-grid li { display:block; border:0; padding:0; min-width:0; }
.collection-grid .collection-card {
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:5px;
  width:100%; height:100%; margin:0; padding:9px 9px 12px; border-radius:12px;
  background:#22192b; transition:border-color .18s, background .18s;
}
.collection-grid .collection-card:hover { border-color:#ec9ab8; background:#2f2038; }
.collection-card canvas { width:100%; height:auto; border-radius:7px; background:#160f20; margin-bottom:4px; }
.collection-card strong { overflow-wrap:anywhere; line-height:1.2; }
.collection-card span { font-size:.78rem; color:#d9c4d7; font-variant-numeric:tabular-nums; }
.collection-rarity { color:#efca87; }
.collection-rarity.epic { color:#e0a9ff; }
.collection-rarity.legendary { color:#aff2ee; }
.collection-card.thumbnail-unavailable::before { content:'Aperçu indisponible'; aspect-ratio:240/367; width:100%; display:grid; place-items:center; }
.collection-preview {
  position:fixed; inset:0; margin:auto;
  width:min(94vw, 84dvh); height:min(94dvh, 900px);
  max-width:none; max-height:none; overflow:hidden;
  color:inherit; background:transparent; border:0; padding:0;
}
.collection-preview::backdrop { background:#09060bd9; }
.collection-preview .viewer { position:absolute; inset:0; }
.collection-preview .canvas-wrap { width:100%; height:100%; max-height:none; }
.collection-preview h2 {
  position:absolute; z-index:1; left:0; right:0; top:45%;
  margin:0; font-size:1rem; pointer-events:none;
}
.collection-preview:has(.is-revealed) h2 {
  width:1px; height:1px; overflow:hidden; clip-path:inset(50%);
}
.collection-preview .preview-close {
  position:absolute; z-index:2; top:0; right:0;
  border:0; background:#100b16a6; border-radius:50%; font-size:1.25rem;
  width:40px; height:40px; padding:0;
}

.regie-nav { display:flex; gap:10px; margin:0 0 20px; }
.regie-nav button, .collection-panel select { color:inherit; background:#22192b; border:1px solid #ffffff30; border-radius:8px; padding:9px 14px; }
.regie-nav button[aria-pressed="true"] { color:#231420; background:#f5b3ca; font-weight:700; }
.regie [hidden], .collection-grid [hidden] { display:none !important; }
