/* Nuku'alofa Hotel booking storefront */
.ogsh-book { font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color:#1f2937; }
.ogsh-hero { background: linear-gradient(120deg,#0f3d6e,#1aa3a3); color:#fff; padding:28px 22px; border-radius:12px; margin-bottom:20px; }
.ogsh-hero h2 { margin:0 0 6px; }
.ogsh-hero p { margin:0; opacity:.92; }
.ogsh-h { color:#0f3d6e; border-bottom:2px solid #e3eaf2; padding-bottom:6px; margin:18px 0 12px; }
.ogsh-card { border:1px solid #e3eaf2; border-radius:10px; box-shadow:0 1px 4px rgba(0,0,0,.05); transition:transform .1s; }
.ogsh-card:hover { transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,.1); }
.ogsh-rate { font-size:1.4rem; font-weight:700; color:#0f7a6e; }
.ogsh-rate span { font-size:.8rem; font-weight:400; color:#6b7280; }
.ogsh-cap { color:#6b7280; font-size:.85rem; }
.ogsh-form { border:1px solid #cfe0f3; border-radius:12px; background:#f7fbff; }
.ogsh-quote { background:#fff; border:1px dashed #1763a6; border-radius:8px; padding:12px; display:none; }
.ogsh-quote.show { display:block; }
.ogsh-quote .big { font-size:1.3rem; font-weight:700; color:#0f3d6e; }
.ogsh-ok { color:#166534; font-weight:600; }
.ogsh-no { color:#991b1b; font-weight:600; }
#ogshResult .alert { margin-bottom:0; }
.ogsh-cal { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
.ogsh-cal-day { border-radius:6px; padding:6px 4px; text-align:center; font-size:.75rem; }
.ogsh-cal-day span { display:block; color:#6b7280; }
.ogsh-cal-day b { font-size:1rem; }
.ogsh-cal-day.free { background:#dcfce7; }
.ogsh-cal-day.some { background:#fef9c3; }
.ogsh-cal-day.busy { background:#fee2e2; }
#ogshDeskTbl .btn { margin:1px; }
.ogsh-img { width:100%; height:160px; object-fit:cover; border-radius:8px; margin-bottom:10px; }
