.hbp-widget { max-width: 960px; margin: 0 auto; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; color: #222; }
.hbp-search-form { display: flex; flex-wrap: wrap; gap: 16px; align-items: flex-end; background: #f7f7f8; border: 1px solid #e2e2e5; border-radius: 10px; padding: 20px; }
.hbp-field { display: flex; flex-direction: column; gap: 6px; }
.hbp-field label { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: #555; }
.hbp-field input, .hbp-field select, .hbp-field textarea { padding: 10px 12px; border: 1px solid #d3d3d8; border-radius: 6px; font-size: 14px; }
.hbp-submit-field { margin-left: auto; }
.hbp-btn { cursor: pointer; border: none; border-radius: 6px; padding: 12px 22px; font-size: 14px; font-weight: 600; }
.hbp-btn-primary { background: #1a2b49; color: #fff; }
.hbp-btn-primary:hover { background: #10192c; }
.hbp-btn-secondary { background: #fff; color: #1a2b49; border: 1px solid #1a2b49; }

.hbp-message { margin-top: 14px; padding: 12px 16px; border-radius: 6px; font-size: 14px; }
.hbp-message.error { background: #fdeceb; color: #a4292a; border: 1px solid #f3c6c4; }
.hbp-message.success { background: #eaf7ef; color: #1c6b3d; border: 1px solid #c6e9d4; }

.hbp-results { margin-top: 24px; display: flex; flex-direction: column; gap: 16px; }
.hbp-room-result { display: flex; justify-content: space-between; align-items: center; gap: 20px; border: 1px solid #e2e2e5; border-radius: 10px; padding: 18px 20px; flex-wrap: wrap; }
.hbp-room-result-info h4 { margin: 0 0 6px; font-size: 18px; }
.hbp-room-result-meta { font-size: 13px; color: #666; }
.hbp-room-result-price { font-size: 22px; font-weight: 700; color: #1a2b49; text-align: right; }
.hbp-room-result-price small { display:block; font-size: 12px; font-weight: 400; color: #777; }
.hbp-room-result-actions select { margin-right: 10px; }

.hbp-room-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }
.hbp-room-card { border: 1px solid #e2e2e5; border-radius: 10px; padding: 18px; }
.hbp-room-card h3 { margin-top: 0; }
.hbp-room-meta { font-size: 13px; color: #666; }
.hbp-room-price { font-size: 20px; font-weight: 700; color: #1a2b49; }
.hbp-room-price span { font-size: 12px; font-weight: 400; color: #777; }

.hbp-checkout-panel { margin-top: 30px; border-top: 2px solid #1a2b49; padding-top: 20px; }
.hbp-checkout-panel form { display: flex; flex-direction: column; gap: 14px; max-width: 480px; }
#hbp-cart-summary { background: #f7f7f8; border-radius: 8px; padding: 14px 16px; margin-bottom: 16px; font-size: 14px; }
.hbp-confirmation { margin-top: 20px; padding: 20px; border-radius: 8px; background: #eaf7ef; border: 1px solid #c6e9d4; }
