/* MINUIT — la carte de soirée (js/carte.js) : boutons posés dans l'en-tête du récap (.fds-recap, 1170) et aperçu de l'image.
   Couche : .ct-apercu 1175 (au-dessus du récap, sous l'annonce de mes succès 1180). */
.ct-btns { display: flex; gap: 8px; align-items: center; margin-left: auto; margin-right: 10px; flex-wrap: wrap; }
.fds-recap-head { flex-wrap: wrap; }
.ct-btns .btn { white-space: nowrap; }
.ct-dl { position: fixed; left: -9999px; top: 0; }

.ct-apercu { position: fixed; inset: 0; z-index: 1175; display: grid; place-items: center; padding: 20px;
  background: radial-gradient(90% 80% at 50% 45%, rgba(20,16,36,.82), rgba(3,3,8,.94)); animation: ct-in .25s ease both; }
@keyframes ct-in { from { opacity: 0; } to { opacity: 1; } }
.ct-box { display: flex; flex-direction: column; gap: 12px; align-items: center; width: min(960px, 100%); }
.ct-head { text-align: center; }
.ct-t { font: 400 26px/1.1 var(--font-display); color: var(--gold-hi); }
.ct-s { font-size: 13px; color: var(--text-dim); margin-top: 4px; }
.ct-img { display: block; width: 100%; height: auto; max-height: calc(100vh - 170px); object-fit: contain; border-radius: 10px;
  box-shadow: 0 0 0 1px rgba(247,221,143,.45), 0 24px 70px rgba(0,0,0,.65); animation: ct-pose .5s cubic-bezier(.2,.9,.25,1.2) both; }
@keyframes ct-pose { from { transform: translateY(14px) scale(.96) rotate(-1deg); opacity: 0; } to { transform: none; opacity: 1; } }
.ct-row { display: flex; gap: 10px; }
.ct-row a { text-decoration: none; }
.reduce-motion .ct-apercu, .reduce-motion .ct-img { animation: none; }
