.table td, .table th { vertical-align: middle; }
.badge-room { background:#f1f3f5; color:#343a40; }
.suggestion-menu { max-height: 220px; overflow: auto; }
.input-hint { font-size: .85rem; color:#6c757d; }
.room-card { border:1px dashed #dee2e6; border-radius:.75rem; padding:1rem; background:#fff; }
.sticky-actions { position: sticky; bottom: 0; background: #fff; z-index: 2; }
.toast-fixed { position: fixed; right: 16px; bottom: 16px; z-index: 1080; }
.vValid { width: 130px; }
.vEPcw { width: 120px; }
.btn-bottom-add { position: sticky; bottom: 64px; z-index: 2; }

/* --- Search results (card layout) --- */
.sr-wrap { display:flex; flex-direction:column; gap:.75rem; }
.sr-card { border:1px solid #dee2e6; border-radius:.75rem; background:#fff; }
.sr-meta b { display:inline-block; min-width: 150px; }
.sr-section { border:1px solid #e9ecef; border-radius:.5rem; padding:.5rem .75rem; margin-bottom:.5rem; }
.sr-head { font-weight:600; padding:.35rem .55rem; border-radius:.35rem; margin:-.25rem -.25rem .5rem; }
.sr-head.map { background:#dbeafe; }  /* MAP light blue */
.sr-head.cp  { background:#fff3cd; }  /* CP light amber */
.sr-head.ep  { background:#f8f9fa; }  /* EP light gray */
@media (max-width: 576px){
  .sr-meta b { min-width: 110px; }
}

/* ==== Wintsum footer + brand colors (safe to append) ==== */
:root{
  /* TODO: replace these with exact hex from wintsumholidays.com in next step */
  --ws-header-bg: #0f172a;       /* header bg (placeholder) */
  --ws-header-text: #ffffff;     /* header text */
  --ws-accent: #f59e0b;          /* accent (placeholder) */
  --ws-footer-bg: #0b132b;       /* footer bg (placeholder) */
  --ws-footer-text: #e5e7eb;     /* footer text */
  --ws-muted: #94a3b8;           /* muted text */
}

.ws-footer{
  background: var(--ws-footer-bg);
  color: var(--ws-footer-text);
  padding: 28px 0 18px;
  margin-top: 24px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.ws-footer .container{ max-width: 1000px; }
.ws-footer h5{
  margin: 0 0 10px; font-size: 1rem; color: #fff; font-weight: 600;
}
.ws-footer p{ margin: 0 0 10px; color: var(--ws-footer-text); line-height: 1.55; }
.ws-footer-grid{
  display: grid; gap: 18px;
  grid-template-columns: 1fr;
}
.ws-footer-bottom{
  border-top: 1px solid rgba(255,255,255,.08);
  margin-top: 14px; padding-top: 12px;
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  font-size: .9rem; color: var(--ws-muted);
}
.ws-brand{ font-weight: 600; color: #fff; }

/* responsive */
@media (min-width: 700px){
  .ws-footer-grid{ grid-template-columns: 2fr 1fr; }
}

/* === Wintsum brand colors + navbar theme (override) === */
:root{
  --ws-header-bg: #0b132b;     /* header/nav background */
  --ws-header-text: #ffffff;   /* header/nav text */
  --ws-accent: #f59e0b;        /* highlight/active */
  --ws-footer-bg: #0b132b;     /* footer background */
  --ws-footer-text: #e5e7eb;   /* footer text */
  --ws-muted: #9aa7b7;         /* subtle text */
}

/* Navbar uses brand colors (works with current nav.php) */
.navbar.bg-light { background-color: var(--ws-header-bg) !important; }
.navbar .navbar-brand,
.navbar .nav-link,
.navbar .text-muted { color: var(--ws-header-text) !important; opacity: .92; }
.navbar .nav-link.active,
.navbar .nav-link:hover { color: var(--ws-accent) !important; opacity: 1; }

/* Logout button look on dark header */
.navbar .btn.btn-outline-secondary.btn-sm{
  color: var(--ws-header-text); border-color: rgba(255,255,255,.35);
}
.navbar .btn.btn-outline-secondary.btn-sm:hover{
  background: var(--ws-accent); border-color: var(--ws-accent); color:#111827;
}

/* Mobile toggler visible on dark header */
.navbar-light .navbar-toggler { border-color: rgba(255,255,255,.35); }
.navbar-light .navbar-toggler-icon { filter: invert(1) brightness(2); }
