/* Booking Djerba V2.4.4 */

/* Admin villa photo gallery: compact thumbnails, never giant images */
.admin-photo-thumbs{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(130px,1fr))!important;gap:12px!important;margin-top:16px!important;align-items:start!important}
.admin-photo-thumbs figure{margin:0!important;position:relative!important;border:1px solid #d9e5f3!important;border-radius:10px!important;background:#fff!important;overflow:hidden!important;aspect-ratio:4/3!important;min-width:0!important;max-width:none!important}
.admin-photo-thumbs figure img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:120px!important;object-fit:cover!important;margin:0!important;border-radius:0!important}
.admin-photo-thumbs figcaption{position:absolute!important;left:6px!important;bottom:6px!important;padding:4px 7px!important;border-radius:999px!important;background:#08275c!important;color:#fff!important;font-size:10px!important;font-weight:800!important}

/* Proper delete area */
.villa-delete-zone{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:20px!important;margin:20px 0 40px!important;padding:18px!important;border:1px solid #ffd2d2!important;background:#fff8f8!important;border-radius:12px!important}
.villa-delete-zone p{margin:4px 0 0!important;color:#7e5960!important;font-size:12px!important}.villa-delete-zone form{margin:0!important}.adminbody .btn.danger{background:#c93636!important;color:#fff!important;border-color:#c93636!important}.adminbody .btn.danger:hover{background:#a92626!important;border-color:#a92626!important}

/* Reservation stays read-only until Modify is clicked */
.reservation-page-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.reservation-edit-card.is-readonly{min-height:220px}.reservation-edit-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;margin-top:4px}

/* Search by name */
.villa-search-filters{display:grid!important;grid-template-columns:minmax(230px,1.5fr) repeat(3,minmax(150px,1fr)) auto auto!important;gap:10px!important;align-items:end!important}.villa-search-filters label{display:grid!important;gap:5px!important;font-size:11px!important;font-weight:800!important;color:#526781!important}.villa-search-filters input{width:100%!important;min-height:44px!important}.villa-search-filters .btn{min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.reset-search{text-decoration:none!important}

/* Public villa: information grouped by category */
.villa-content-categorized{align-items:start!important}.villa-info-section{padding:0 0 24px!important;margin:0 0 24px!important;border-bottom:1px solid #e5edf6!important}.villa-info-section:last-child{border-bottom:0!important}.villa-info-section h2{margin:0 0 14px!important;color:#08275c!important}.villa-info-section>p{line-height:1.75!important;color:#3f5067!important}
.villa-location-card{display:grid;gap:10px;padding:16px;border:1px solid #dfe9f4;border-radius:12px;background:#f8fbff}.villa-location-card>div{display:grid;gap:3px}.villa-location-card span,.stay-rule-grid span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#70839b}.villa-location-card b{color:#11294d}.map-link{width:max-content!important;margin-top:4px!important;text-decoration:none!important}
.villa-spec-grid{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:10px}.villa-spec-grid>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;padding:13px;border:1px solid #e0e9f3;border-radius:11px;background:#fff}.villa-spec-grid>div>span{grid-row:1/3;font-size:24px}.villa-spec-grid b{font-size:16px;color:#0b2855}.villa-spec-grid small{color:#72839a}
.equipment-public-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px}.equipment-public-grid>span{display:flex;gap:9px;align-items:center;padding:11px 12px;border:1px solid #e0e9f3;background:#fff;border-radius:10px;font-weight:700;color:#243b5d}.equipment-public-grid i{font-style:normal;font-size:20px;min-width:24px;text-align:center}
.stay-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px}.stay-rule-grid>div{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;background:#f8fbff;border:1px solid #e0e9f3;border-radius:10px}.stay-rule-grid b{color:#142e55}.house-rules-public{margin-top:14px;padding:14px;border-radius:10px;background:#fff9ed;border:1px solid #f2dfae}.house-rules-public p{margin:7px 0 0;line-height:1.65;color:#5f553e}

@media(max-width:1150px){.villa-search-filters{grid-template-columns:repeat(2,minmax(180px,1fr))!important}.villa-spec-grid{grid-template-columns:repeat(3,minmax(110px,1fr))}.equipment-public-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}
@media(max-width:700px){.villa-delete-zone,.reservation-page-actions{align-items:stretch!important;flex-direction:column!important}.villa-search-filters{grid-template-columns:1fr!important}.villa-spec-grid,.equipment-public-grid,.stay-rule-grid{grid-template-columns:1fr!important}.admin-photo-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
