.photo-grid{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.photo-grid a{display:block}.photo-grid img{width:100px;height:100px;object-fit:cover;border:1px solid #e3ebe9;border-radius:9px}.public-review{padding:16px 0;border-bottom:1px solid #e3ebe9;text-align:left}.review-top{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.rating-stars{color:#a7772e;letter-spacing:2px}.review-body,.merchant-reply p{white-space:pre-wrap;overflow-wrap:anywhere}.merchant-reply{background:#f4f7f6;border-radius:8px;padding:12px;font-size:13px}.merchant-reply p{margin:6px 0 0}.checkin-map{background:#f6f7ef;border:1px solid #e4e9dd;border-radius:14px;overflow:hidden;margin:15px 0}.checkin-map svg{width:100%;height:auto;display:block}.checkin-map text{font:13px sans-serif;fill:#526d68}.checkin-label{font-size:11px;letter-spacing:.12em;color:#637d79}.checkin-feed{margin-top:14px}.checkin-entry{padding:14px 0;border-top:1px solid #e3ebe9}.checkin-entry h3{margin:0;font-size:14px}.checkin-entry p{white-space:pre-wrap}.checkin-entry small{color:#637d79}.review-form label{display:block;margin:12px 0 5px;font-size:13px}.review-form input:not([type=checkbox]),.review-form textarea,.review-form select{max-width:100%;width:100%;box-sizing:border-box;border:1px solid #d8e4df;border-radius:8px;padding:10px;font:inherit;color:inherit}.review-form .consent-label{display:flex;gap:8px;align-items:flex-start}.review-form button,.extras-button{border:0;border-radius:7px;background:#344f4c;color:white;padding:10px 16px;cursor:pointer;font:inherit}.review-form button:disabled{opacity:.5}.extras-status{font-size:13px;color:#8b493f;min-height:20px}.fx-box{background:#f4f0e4;padding:12px 14px;border-radius:9px;margin:12px 0}.fx-box strong{display:block;font-size:21px;color:#94703a}.fx-box small,.fx-box a{color:#637d79;font-size:12px}.fx-box p{margin:6px 0;font-size:13px}.fx-box.confirmed{background:#eaf3ed}.review-list{padding:12px 20px 24px;max-width:680px}.review-summary{padding:14px 0;color:#637d79}.public-review-hub{margin:28px 0 0;padding:20px;background:#fff;border:1px solid #e3ebe9;border-radius:12px}.public-review-hub h2{margin-top:0}.photo-panel input[type=file]{font-size:13px}.review-panel .public-review{margin-bottom:12px}#reviewDialog{width:min(700px,92vw)}.review-list .photo-grid img{width:90px;height:90px}@media(prefers-reduced-motion:reduce){.map-marker{transition:none!important}}@media(max-width:420px){.photo-grid img{width:80px;height:80px}.checkin-map text{font-size:14px}.fx-box strong{font-size:19px}}
.booking-fields{border:1px solid #dce6e0;border-radius:10px;padding:14px;margin:12px 0;background:#f7faf8}.booking-fields h3{font-size:15px;margin:0 0 10px}.booking-field{margin:10px 0}.booking-field label{display:block;font-size:13px;margin-bottom:4px;color:#637d79}.booking-field input,.booking-field select{display:block;width:100%;box-sizing:border-box;border:1px solid #cbdad4;border-radius:7px;padding:10px;font:inherit;color:#344f4c;background:white;min-width:0}.booking-field[hidden]{display:none}.inquiry-result{padding:0;margin-top:12px;font-size:14px;line-height:1.7;white-space:pre-wrap}.inquiry-result:not(:empty){padding:13px;border-radius:8px;border:1px solid #d7e4dc}.inquiry-result.success{background:#e7f3eb;color:#28603e}.inquiry-result.error{background:#fcefee;color:#8e423b}.inquiry-result.sending{background:#f6f1e5;color:#775b2a}
