/* BarBooths Branding for form controls */
.form-control {
  background-color: #0a1830 !important; /* deep blue */
  color: #fff !important;
  border: 2px solid #ffd600 !important;
  border-radius: 0.5rem !important;
  /* font-family: 'Double Porter P6', Arial, sans-serif !important; */
  font-size: 1rem !important;
  /* font-weight: 500 !important; */
  padding: 0.5rem 1rem !important;
  box-shadow: 0 2px 8px 0 rgba(20,41,74,0.08);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.form-control:focus {
  outline: none !important;
  border-color: #ffd600 !important;
  box-shadow: 0 0 0 2px #ffd60044;
}
.form-control::placeholder {
  color: #ffd600cc !important;
  opacity: 1;
}
/* Transparent table headers and white borders/row lines for Booths table */
.booth-table th {
  background: transparent !important;
  color: #fff !important;
  border-bottom: 2px solid #fff !important;
}
.booth-table td {
  border-bottom: 1px solid #fff !important;
}
.booth-table tr {
  border-bottom: 1px solid #fff !important;
}
h1 { font-size: 4rem !important; letter-spacing: 0.08em !important; }
h2 { font-size: 3.5rem !important; letter-spacing: 0.08em !important; }
h3 { font-size: 3rem !important; letter-spacing: 0.08em !important; }
h4 { font-size: 2.5rem !important; letter-spacing: 0.08em !important; }
h5 { font-size: 2rem !important; letter-spacing: 0.08em !important; }
h6 { font-size: 1.5rem !important; letter-spacing: 0.08em !important; }
@font-face {
  font-family: 'Double Porter P6';
  src: url("../fonts/Double Porter P6.1da218b35a50.otf") format('opentype');
  font-weight: normal;
  font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Double Porter P6', Arial, sans-serif !important;
}
/* BarBooths Branding DaisyUI/Tailwind utility class overrides */
.btn-primary {
  background-color: #ffd600 !important;
  color: #0a1830 !important;
  border-color: #ffd600 !important;
  transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease !important;
}
.btn-primary:hover, .btn-primary:focus {
  background-color: #ffe84d !important;
  border-color: #ffe84d !important;
  box-shadow: 0 0 12px rgba(255, 214, 0, 0.55) !important;
  transform: translateY(-2px);
}
.btn-primary:active {
  transform: translateY(0);
  box-shadow: 0 0 6px rgba(255, 214, 0, 0.35) !important;
}
.btn-outline {
  border-color: #ffd600 !important;
  color: #ffd600 !important;
  transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease !important;
}
.btn-outline:hover, .btn-outline:focus {
  background-color: rgba(255, 214, 0, 0.12) !important;
  box-shadow: 0 0 12px rgba(255, 214, 0, 0.4) !important;
  transform: translateY(-2px);
}
.btn-outline:active {
  transform: translateY(0);
}
.bg-base-200 {
  background-color: #14294a !important;
  color: #fff !important;
}
.bg-base-300 {
  background-color: #1e3a5c !important;
  color: #fff !important;
}
.text-primary {
  color: #ffd600 !important;
}
.border-primary {
  border-color: #ffd600 !important;
}
.badge-primary {
  background-color: #ffd600 !important;
  color: #0a1830 !important;
}
.card, .card-body {
  background-color: #14294a !important;
  color: #fff !important;
}
/* Override DaisyUI .bg-base-100 for BarBooths branding */
.bg-base-100 {
  background-color: #0a1830 !important; /* deep blue */
  color: #fff !important; /* white text */
}

.btn-outline.btn-primary {
  background-color: #ffd600 !important; /* yellow */
  color: #0a1830 !important; /* dark text */
  border-color: #ffd600 !important; /* yellow border */
}

:root {
  /* Brand Color Variables */
  --primary: #0a1830;
  --secondary: #14294a;
  --accent: #ffd600;

  /* Base Colors */
  --primary-fg: #ffffff;
  --body-fg: #ffffff;
  --body-bg: #0a1830;
  --body-quiet-color: #bbbbbb;
  --body-loud-color: #ffffff;

  /* Header + Breadcrumbs */
  --header-color: #ffffff;
  --header-branding-color: #ffd600;
  --header-bg: #14294a;
  --header-link-color: #ffffff;
  --breadcrumbs-fg: #ffd600;
  --breadcrumbs-link-fg: #ffffff;
  --breadcrumbs-bg: #1c1a2e;

  /* Links */
  --link-fg: #ffd600;
  --link-hover-color: #fff176;
  --link-selected-fg: #ffe066;

  /* Borders + Hairlines */
  --hairline-color: #22335a;
  --border-color: #22335a;

  /* Feedback Colors */
  --error-fg: #ff3e6c;
  --message-success-bg: #112b20;
  --message-warning-bg: #2f2205;
  --message-error-bg: #2b1020;

  /* Background Variants */
  --darkened-bg: #1a2950;
  --selected-bg: #22335a;
  --selected-row: #22335a;

  /* Buttons */
  --button-fg: #ffffff;
  --button-bg: linear-gradient(90deg, #ffd600, #fff176);
  --button-hover-bg: linear-gradient(90deg, #fff176, #ffd600);
  --default-button-bg: #22335a;
  --default-button-hover-bg: #1a2950;

  /* Danger Buttons */
  --delete-button-bg: #ff3e6c;
  --delete-button-hover-bg: #b81b43;

  /* Close Buttons / Object Tools */
  --close-button-bg: #1a2950;
  --close-button-hover-bg: #22335a;
  --object-tools-fg: #ffffff;
  --object-tools-bg: #1a2950;
  --object-tools-hover-bg: #22335a;

  /* Typography */
  --font-family-primary: 'Comfortaa', Arial, sans-serif;
  --font-family-monospace: 'Fira Mono', monospace;
}

.sticky.toggle-nav-sidebar{
    display: none !important;
}

#nav-filter{
    display: none !important;
}

.breadcrumbs {
    display: none !important;
}

.theme-toggle{
    display: none !important;
}


/* === Root Reset === */
body, html {
  background: linear-gradient(135deg, #0a1830 0%, #14294a 40%, #22335a 100%) !important;
  color: #ffffff !important;
  font-family: 'Comfortaa', Arial, sans-serif;
}

#container > .main {
  padding:10px;
  /* min-height: 100vh; */
  background: linear-gradient(135deg, #0a1830 0%, #14294a 40%, #22335a 100%) !important;
}

.card, .card-body, .sidebar, .module {
  background: #1a2950 !important;
  border-radius: 16px;
  box-shadow: 0 2px 16px rgba(26, 41, 80, 0.15);
}
.navbar{
  background: #1a2950 !important;
  box-shadow: 0 2px 16px rgba(26, 41, 80, 0.15);
}

input, select, textarea {
  background-color: #22335a !important;
  color: #ffffff !important;
  border: 1px solid #182a47 !important;
  border-radius: 6px;
  padding: 8px;
}

input:focus, select:focus, textarea:focus {
  border-color: #ffd600 !important;
  box-shadow: 0 0 5px #ffd600;
}

/* === Header === */
#header {
  background: #22335a !important;
  border-bottom: 2px solid #14294a !important;
  box-shadow: 0 4px 10px rgba(26, 41, 80, 0.3);
}

#branding h1, #user-tools {
  color: #fff !important;
}

/* === Sidebar Navigation === */
#nav-sidebar {
  background-color: transparent !important;
  border-right: none !important;
}

#nav-sidebar .module {
  background: transparent !important;
  border: 1px solid #22335a !important;
  border-radius: 12px;
  margin: 10px 12px;
  padding: 12px;
  box-shadow: none;
}

#nav-sidebar .module h2 {
  color: #ffd600 !important;
  font-size: 12px;
  text-transform: uppercase;
  margin-bottom: 8px;
}

#nav-sidebar .module th  a {
  color: #fff176 !important;
  display: block;
  padding: 6px 10px;
  border-radius: 8px;
  background: transparent !important;
}

 #nav-sidebar .module th a:hover,
#nav-sidebar .module th a:focus {
  background: rgba(26, 41, 80, 0.2) !important;
  color: #ffd600 !important;
}

#nav-sidebar .current-model {
  background: rgba(26, 41, 80, 0.35) !important;
  border-left: 3px solid #ffd600;
}

#changelist .actions{
    width:auto !important;
}

#changelist-filter{
      background: var(--body-bg) !important;
}

/* === Main Content === */
#content {
  /* background-color: #0d0b1a !important; */
  padding: 20px;
  color: #fff !important;
}

tr:nth-child(even), tr:nth-child(even) .errorlist, tr:nth-child(odd) + .row-form-errors, tr:nth-child(odd) + .row-form-errors .errorlist {
  background: transparent !important;
}

/* === Tables === */
.change-list table {
  background: transparent !important;
  border-collapse: collapse;
  width: 100%;
}

 .change-list thead th {
  background: #14294a !important;
  color: #ffd600 !important;
  font-size: 11px;
  text-transform: uppercase;
  padding: 8px;
}

.change-list tbody td {
  background: #12101f !important;
  border-bottom: 1px solid #2e2a4f !important;
  padding: 10px;
  color: #ffffff !important;
}

.change-list tbody tr:hover td {
  background: rgba(181, 62, 244, 0.1) !important;
}

/* === Forms + Inputs === */
input, select, textarea {
  background-color: #22335a !important;
  color: #ffffff !important;
  border: 1px solid #182a47 !important;
  border-radius: 6px;
  padding: 8px;
}

input:focus, select:focus, textarea:focus {
  border-color: #ffd600 !important;
  box-shadow: 0 0 5px #ffd600;
}

/* === Buttons === */
input[type="submit"], button, .button {
  background: linear-gradient(90deg, #ffd600, #fff176) !important;
  color: #182a47 !important;
  border: none !important;
  border-radius: 8px;
  padding: 8px 14px;
  font-weight: 600;
}

input[type="submit"]:hover, button:hover, .button:hover {
  background: linear-gradient(90deg, #fff176, #ffd600) !important;
  color: #182a47 !important;
}

/* === Breadcrumbs / Navigation === */
#container .breadcrumbs {
  background: transparent !important;
  border: none !important;
  color: #ffd600 !important;
}

.breadcrumbs a {
  color: #ffd600 !important;
}

.breadcrumbs a:hover {
  text-decoration: underline;
  color: #fff176 !important;
}

/* === Links === */
a {
  color: #ffd600 !important;
}

a:hover {
  color: #fff176 !important;
}

.paginator a:link, .paginator a:visited{
    background: transparent !important;
    color: #ffd600 !important;
    /* text-decoration: none; */
}

/* === Top Navbar === */
#navbar {
  background: var(--header-bg) !important;
  color: var(--header-color) !important;
  display: flex;
  align-items: center;
  padding: 0 24px;
  height: 56px;
  box-shadow: 0 2px 8px rgba(181, 62, 244, 0.15);
  border-bottom: 2px solid var(--accent);
}

#navbar a {
  color: var(--header-link-color) !important;
  text-decoration: none;
  margin-right: 24px;
  font-weight: 500;
  font-size: 16px;
  transition: color 0.2s;
}

#navbar a:hover,
#navbar a:focus {
  color: var(--accent) !important;
  text-decoration: underline;
}

#navbar .navbar-brand {
  color: var(--header-branding-color) !important;
  font-weight: 700;
  font-size: 20px;
  margin-right: 32px;
}

body {
    background: linear-gradient(180deg, #1a2950 0%, #22335a 100%);
    color: #fff;
}

.brand-title {
    color: #fff;
    text-shadow: 0 0 8px #fff, 0 0 16px #fff;
}

.brand-accent {
    color: #ffd600;
    text-shadow: 0 0 8px #ffd600, 0 0 16px #ffd600;
}

.brand-guidelines {
    color: #fff;
    opacity: 0.85;
}

.lightning-bolt {
    color: #ffd600;
    filter: drop-shadow(0 0 6px #ffd600);
}

/* Comfortaa font import */
@font-face {
    font-family: 'Comfortaa';
    src: url("../fonts/Comfortaa-Regular.d350ce249a30.ttf") format('truetype');
    font-weight: normal;
    font-style: normal;
}

body, .brand-title, .brand-guidelines, .brand-accent, .lightning-bolt {
    font-family: 'Comfortaa', Arial, sans-serif;
}