/* ------------------------------------------------------------
   Big Easy Lite — Bootstrap polish (New Orleans style)
   Safe to inject over Bootstrap/Barrio without recompiling.
   ------------------------------------------------------------ */

/* Optional: classier headings + readable body (Google Fonts) */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;700&family=Inter:wght@400;500;600&display=swap');

/* Palette (beignet cream, brass, river blue, live-oak green) */
:root{
  --beignet:#fff9f3;
  --brass:#c6a351;
  --river:#0f4c81;
  --river-2:#1c6ba6;
  --oak:#2f6f4f;
  --ink:#1d232a;
  --ink-70:rgba(29,35,42,.7);
  --mist:#eef3f7;
  --line:#e8e2d6;
  --shadow:0 6px 16px rgba(16,24,40,.08),0 1px 2px rgba(16,24,40,.05);
  --shadow-sm:0 2px 8px rgba(16,24,40,.06);
  --radius:16px;
}

/* Base */
html,body{background:var(--beignet);}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  color:var(--ink);
  line-height:1.55;
  text-rendering:optimizeLegibility;
}

/* Headings = a little “French Quarter” flair */
h1,h2,h3{
  font-family:"Playfair Display", Georgia, Cambria, "Times New Roman", serif;
  letter-spacing:.2px;
  color:var(--ink);
}
h1{
  font-weight:700;
  border-bottom:3px solid var(--brass);
  padding-bottom:.35rem;
  margin-bottom:1rem;
}
h2{color:var(--river);}

/* Links */
a{
  color:var(--river);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color .15s ease, color .15s ease;
}
a:hover{color:var(--river-2);border-bottom-color:var(--river-2);}

/* Navbar (works with Barrio’s Bootstrap 5 navbar) */
.navbar{
  background:linear-gradient(180deg, #ffffff 0%, #fdfaf6 100%);
  box-shadow:var(--shadow-sm);
  border-bottom:1px solid var(--line);
  z-index:1055;
}
.navbar .navbar-brand{
  font-family:"Playfair Display", Georgia, serif;
  font-weight:600;
  color:var(--river);
}
.navbar .navbar-brand img{max-height:42px;height:auto;}
.navbar .nav-link{
  color:var(--ink-70);
  padding:.6rem .85rem;
  border-radius:10px;
}
.navbar .nav-link:hover,
.navbar .nav-link:focus{color:var(--river);background:#fff;}

/* If admin toolbar is fixed, keep navbar below it */
body.toolbar-fixed .navbar.sticky-top{top:79px;} /* adjust if needed */

/* Buttons */
.btn{
  border-radius:999px; /* pill */
  box-shadow:var(--shadow-sm);
}
.btn-primary{
  background:var(--river);
  border-color:var(--river);
}
.btn-primary:hover{background:var(--river-2);border-color:var(--river-2);}
.btn-outline-primary{
  color:var(--river);
  border-color:var(--river);
}
.btn-outline-primary:hover{color:#fff;background:var(--river);}

/* Cards */
.card{
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.card-header{
  background:#fff;
  border-bottom:1px solid var(--line);
  font-weight:600;
}
.card:hover{box-shadow:var(--shadow);}

/* Lists with a tiny fleur-de-lis accent (unicode) */
ul.fleur li{
  list-style:none;
  position:relative;
  padding-left:1.25rem;
  margin:.25rem 0;
}
ul.fleur li::before{
  content:"\269C"; /* fleur-de-lis */
  position:absolute;left:0;top:.1rem;
  font-size:.9rem;color:var(--brass);
}

/* Badges/labels */
.badge{
  border-radius:999px;
  padding:.4em .65em;
}
.bg-primary{background:var(--river)!important;}
.text-primary{color:var(--river)!important;}

/* Tables */
.table{
  background:#fff;border-color:var(--line);
}
.table thead th{
  border-bottom:2px solid var(--line);
  color:var(--river);
}

/* Forms */
.form-control:focus{
  border-color:var(--river);
  box-shadow:0 0 0 .2rem rgba(15,76,129,.15);
}
.form-label{font-weight:600;color:var(--ink-70);}

/* Section helper */
.section{
  background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
  padding:1.25rem;
  margin:1rem 0;
}

/* Footer */
.site-footer, footer{
  background:#fff;border-top:1px solid var(--line);
  color:var(--ink-70);
}
.site-footer a{color:var(--river);}

/* Utilities */
.rounded-2xl{border-radius:var(--radius)!important;}
.shadow-be{box-shadow:var(--shadow)!important;}
.hr-brass{
  border:0;height:2px;background:linear-gradient(90deg, transparent, var(--brass), transparent);
  margin:1.25rem 0;
}

/* Map-friendly defaults (Leaflet/OpenLayers) */
.map, .leaflet-container{
  background:#fff;border:1px solid var(--line);
  border-radius:12px;
  box-shadow:var(--shadow-sm);
}
.navbar, .navbar .dropdown-menu{z-index:2147483000;} /* keep menus over canvases */

/* Breadcrumbs tidy */
.breadcrumb{
  background:transparent;margin-bottom:.5rem;
}
.breadcrumb .breadcrumb-item + .breadcrumb-item::before{color:var(--brass);}
