/* Marku Hotel PMS — public booking & accommodations */
.mhpms-booking { --sea:#0b5cab; --sand:#e9e0cf; max-width:860px; margin:0 auto; font-family:inherit; }
.mhpms-steps { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:18px; }
.mhpms-steps .step { padding:6px 12px; border-radius:999px; background:#eef1f4; color:#789; font-size:13px; }
.mhpms-steps .step.active { background:var(--sea); color:#fff; }
.mhpms-row { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:14px; }
.mhpms-row label, .mhpms-booking > .mhpms-panel label { display:flex; flex-direction:column; font-size:14px; gap:4px; flex:1; min-width:140px; }
.mhpms-booking input, .mhpms-booking select, .mhpms-booking textarea {
	padding:10px 12px; border:1px solid #cdd6df; border-radius:8px; font-size:15px;
}
.mhpms-btn { display:inline-block; background:var(--sea); color:#fff; border:0; border-radius:8px; padding:12px 20px; font-size:15px; cursor:pointer; text-decoration:none; }
.mhpms-btn:disabled { opacity:.5; cursor:not-allowed; }
.mhpms-btn-primary { background:#0a8f4f; }

.mhpms-result { display:flex; align-items:center; gap:12px; padding:12px; border:1px solid #e2e8ef; border-radius:8px; margin-bottom:8px; cursor:pointer; }
.mhpms-result .r-name { flex:1; }
.mhpms-result .r-price { font-weight:600; color:var(--sea); }

.mhpms-pay-methods { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:16px; }
.mhpms-paym { padding:10px 16px; border:1px solid #cdd6df; border-radius:8px; cursor:pointer; }

.mhpms-card-form { background:#f7faff; border:1px solid #d6e4f5; border-radius:10px; padding:16px; margin-bottom:14px; }
.mhpms-card-form label { display:flex; flex-direction:column; gap:4px; margin-bottom:12px; position:relative; }
.mhpms-secure { color:#0a8f4f; font-size:13px; margin:0 0 12px; }
.mhpms-hint { font-size:12px; color:#667; }
.c-brand { position:absolute; right:10px; top:32px; font-size:12px; font-weight:700; color:var(--sea); }
.c-cvv-wrap { position:relative; }
.c-eye { position:absolute; right:8px; top:28px; background:none; border:0; cursor:pointer; font-size:16px; }
.c-err { color:#c0392b; font-size:12px; min-height:14px; }
.mhpms-policy { display:block; margin:14px 0; font-size:14px; }
.mhpms-form-error { color:#c0392b; margin-top:10px; font-weight:600; }
.mhpms-thankyou { text-align:center; padding:30px; }

/* Akomodimet */
.mhpms-units-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:20px; }
.mhpms-unit-card { border:1px solid #e2e8ef; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 2px 8px rgba(0,0,0,.05); }
.mhpms-unit-photo { height:170px; background-size:cover; background-position:center; background-color:#dfe7ee; }
.mhpms-noimg { background:linear-gradient(135deg,#bcd3e8,#e9e0cf); }
.mhpms-unit-body { padding:14px 16px; }
.mhpms-unit-body h3 { margin:0 0 4px; }
.mhpms-building { color:#789; font-size:13px; margin:0 0 8px; }
.mhpms-amen { list-style:none; padding:0; margin:0 0 10px; display:flex; flex-wrap:wrap; gap:8px; font-size:13px; }
.mhpms-amen li { background:#eef3f8; padding:3px 8px; border-radius:6px; }
.mhpms-price { font-weight:700; color:var(--sea); }

/* WhatsApp floating */
.mhpms-wa { position:fixed; right:18px; bottom:18px; width:56px; height:56px; border-radius:50%; background:#25d366; color:#fff; display:flex; align-items:center; justify-content:center; font-size:26px; text-decoration:none; box-shadow:0 4px 14px rgba(0,0,0,.25); z-index:9999; }
