/* ===========================================================================
   Theme — Inn-Flow-inspired navy + teal.
   =========================================================================== */
:root {
  --brand:        #052f4a;
  --brand-dark:   #052f4a;
  --accent:       #14b8a6;
  --accent-hover: #0f9488;
  --result:       #d6336c;
  --page-bg:      #f4f6f9;
  --card-radius:  .6rem;
}

body { font-size: .95rem; background: var(--page-bg); color: #1f2937; }

/* Header / navbar */
.site-header { background: var(--brand); box-shadow: 0 2px 10px rgba(0,0,0,.12); }
.site-header .navbar-brand { font-weight: 700; letter-spacing: .3px; }
.site-header .nav-link { font-weight: 500; }
.site-header .nav-link:hover { color: var(--accent) !important; }

/* Footer */
.site-footer { background: var(--brand-dark); border-top: 3px solid var(--accent); }
.site-footer a.link-light:hover { color: var(--accent) !important; }

/* Buttons / links */
.btn-primary { background: var(--accent); border-color: var(--accent); }
.btn-primary:hover, .btn-primary:focus { background: var(--accent-hover); border-color: var(--accent-hover); }
a { color: var(--brand); }
a:hover { color: var(--accent); }

/* Cards */
.card { border: none; border-radius: var(--card-radius); box-shadow: 0 2px 12px rgba(16,42,74,.08); overflow: hidden; }
.card-header { background: var(--brand); color: #fff; border: none; }
.card-header.bg-primary { background: var(--brand) !important; }

/* Result tables */
.result-table th, .result-table td { padding: .45rem .5rem; }
.result-value { font-weight: 700; color: var(--result); }
.result-pending { color: #adb5bd; }
.table-hover tbody tr:hover { background: #eef7f6; }
.chart-table td, .chart-table th { min-width: 44px; font-size: .85rem; }
.chart-table thead th { position: sticky; top: 0; background: var(--brand); color: #fff; }

/* "Today's Live Result" banner */
.upcoming-banner { border: 2px solid var(--brand); border-radius: var(--card-radius); }
.upcoming-banner > .border-bottom { background: linear-gradient(90deg, var(--brand), #1c3a63); color: #fff !important; border-bottom: none !important; }
.upcoming-banner > .border-bottom .text-danger { color: #ffd43b !important; }
.upcoming-banner .h4 { line-height: 1.15; }

/* Ads */
.ad-slot { background: #eef1f5; border: 1px dashed #cfd6df; }
.ad-unit img { max-width: 100%; height: auto; }

/* Blog */
.post-body img { max-width: 100%; height: auto; }
.post-body h2 { margin-top: 1.25rem; }
#search-suggest { top: 100%; }

/* Admin */
.admin-sidebar { min-height: 100vh; background: var(--brand); }
.admin-sidebar .nav-link { color: #cbd5e1; }
.admin-sidebar .nav-link.active, .admin-sidebar .nav-link:hover { color: #fff; background: rgba(255,255,255,.1); }
.stat-card { border-left: 4px solid var(--accent) !important; }