/* Styles fiche adoption - moderne, simple et responsive */
.adoption-single { padding: 40px 0; }
.adoption-single .back-link { margin-bottom: 16px; }

.adoption-single__header { margin-bottom: 24px; }
.adoption-single__title { font-size: 32px; line-height: 1.2; margin: 0 0 8px; }
.adoption-single__meta { display: flex; flex-wrap: wrap; gap: 8px; }
.meta-chip { display: inline-block; padding: 6px 10px; border-radius: 999px; background: #F3F4F6; font-size: 14px; }
.meta-reserve { background: #fee2e2; color: #991b1b; }

.adoption-single__content { display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; align-items: start; }

.adoption-single__gallery .main-photo { width: 100%; aspect-ratio: 16/9; background: #f8fafc; border-radius: 12px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.adoption-single__gallery .main-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.adoption-single__gallery .main-photo.placeholder { font-size: 48px; color: #cbd5e1; }

.adoption-single__gallery .thumbs { display: grid; grid-template-columns: repeat(auto-fill, minmax(88px, 1fr)); gap: 10px; margin-top: 12px; }
.adoption-single__gallery .thumb { border: 1px solid #e5e7eb; border-radius: 8px; overflow: hidden; padding: 0; background: #fff; cursor: pointer; }
.adoption-single__gallery .thumb img { width: 100%; height: 72px; object-fit: cover; display: block; }

.adoption-single__details h2 { margin: 0 0 12px; font-size: 20px; }
.details-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.details-list li { padding: 10px 12px; background: #fff; border: 1px solid #e5e7eb; border-radius: 10px; }

.adoption-single__footer { margin-top: 24px; }

/* Formulaire d'adoption */
.adoption-form { margin-top: 20px; padding: 16px; background: #ffffff; border: 1px solid #e5e7eb; border-radius: 12px; }
.adoption-form h2 { margin: 0 0 12px; font-size: 20px; }
.adoption-form__form { display: grid; gap: 14px; }
.adoption-form__form .form-row { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; }
.adoption-form__form .form-row:nth-child(2) { grid-template-columns: 1fr; }
.adoption-form__form label { display: grid; gap: 6px; color: #111827; font-weight: 600; font-size: 14px; }
.adoption-form__form input:not([type="checkbox"]):not([type="radio"]),
.adoption-form__form textarea,
.adoption-form__form select { width: 100%; border: 1px solid #e5e7eb; background: #f9fafb; border-radius: 8px; padding: 10px 12px; font-size: 15px; color: #111827; outline: none; transition: border-color .2s ease, box-shadow .2s ease; }
.adoption-form__form input:focus,
.adoption-form__form textarea:focus,
.adoption-form__form select:focus { border-color: #521B92; box-shadow: 0 0 0 3px rgba(82,27,146,.12); background: #fff; }
.adoption-form__form .form-actions { display: flex; gap: 10px; justify-content: flex-start; }
.adoption-form__feedback { margin-top: 6px; padding: 10px 12px; border-radius: 8px; border: 1px solid transparent; font-size: 14px; }
.adoption-form__feedback.is-success { background: #ecfdf5; border-color: #10b981; color: #065f46; }
.adoption-form__feedback.is-error { background: #fef2f2; border-color: #ef4444; color: #991b1b; }

/* Boutons génériques si le thème n’en a pas */
.btn { display: inline-block; background: #521B92; color: #fff; padding: 10px 16px; border-radius: 8px; text-decoration: none; transition: background .2s ease; }
.btn:hover { background: #3f1472; }
.btn.btn-secondary { background: #111827; }
.btn.btn-secondary:hover { background: #0b0f1a; }

/* Responsive */
@media (max-width: 960px) {
  .adoption-single__content { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .adoption-form__form .form-row { grid-template-columns: 1fr; }
}

.adoption-filters { margin-bottom: 24px; }
