/* ========== Navbar/Logo Styling ========== */

/* Logo spacing from top edge - High specificity to override inline styles */
#navbarLeftDiv #ahca-logo,
#ahca-logo[src],
img#ahca-logo,
a[href="/"] #ahca-logo,
a[href="/"] img#ahca-logo {
  padding-top: 15px !important;
  margin-top: 10px !important;
}

/* ========== Mobile Responsive Fixes (matching sign-in/home page solution) ========== */

/* Layout: Logo left, Burger top right, Search below burger on right */
@media (max-width: 767px) {
  /* Add spacing from top on mobile - High specificity */
  div.container[style*="width"],
  .container[style],
  div.container,
  .container-fluid[style*="margin-top"] {
    margin-top: 20px !important;
    padding-top: 15px !important;
  }
  
.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12 {
   padding-left: 0px;
   padding-right: 0px; 
  }
  /* Layout: Logo left, Burger top right, Search below burger on right */
  div#navbarLeftDiv,
  #navbarLeftDiv {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    position: relative !important;
  }
  
  /* Logo stays on left with spacing from top - High specificity */
  #navbarLeftDiv > a:first-child,
  #navbarLeftDiv > a[href="/"],
  #navbarLeftDiv > a:first-of-type {
    align-self: flex-start !important;
    margin-bottom: 10px !important;
  }
  
  #navbarLeftDiv #ahca-logo,
  #navbarLeftDiv img#ahca-logo,
  #navbarLeftDiv a[href="/"] #ahca-logo,
  #navbarLeftDiv a[href="/"] img#ahca-logo,
  #ahca-logo {
    padding-top: 15px !important;
    margin-top: 10px !important;
  }
  
  /* Burger menu - top right - High specificity to override inline styles */
  .navbar-header .navbar-toggle,
  .navbar-header button.navbar-toggle,
  button.navbar-toggle[data-toggle="collapse"],
  .navbar-header button[data-toggle="collapse"],
  .navbar .navbar-header .navbar-toggle,
  .navbar-toggle[data-toggle="collapse"],
  button.navbar-toggle,
  .navbar-header button,
  [data-toggle="collapse"][data-target="#navbar"],
  [data-toggle="collapse"][data-target*="navbar"],
  .menu-toggle,
  button[aria-expanded],
  .navbar .navbar-toggle {
    position: relative !important;
    top: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    float: none !important;
  }
  
  /* Search - below burger, aligned right - High specificity */
  #navbarLeftDiv #mainSearchSpan,
  #navbarLeftDiv #topSearchSpan,
  #mainSearchSpan,
  #topSearchSpan {
    float: none !important;
    align-self: flex-end !important;
    margin-top: 10px !important;
    margin-right: -20px !important;
    margin-left: auto !important;
  }
  
  /* Search input and button positioning on mobile - High specificity */
  #navbarLeftDiv #mainSearch,
  #navbarLeftDiv #topSearch,
  #mainSearchSpan #mainSearch,
  #topSearchSpan #topSearch,
  #mainSearch[type="text"],
  #topSearch[type="text"],
  #mainSearch,
  #topSearch {
    width: 200px !important;
    height: 35px !important;
    font-size: 15px !important;
    padding: 8px 12px !important;
    box-sizing: border-box !important;
    border: 2px solid #ddd !important;
    border-radius: 4px !important;
  }
  
  /* Search button - High specificity to override inline styles */
  #navbarLeftDiv #mainSearchButton,
  #navbarLeftDiv #topSearchButton,
  #mainSearchSpan #mainSearchButton,
  #topSearchSpan #topSearchButton,
  #mainSearchButton.glyphicon,
  #topSearchButton.glyphicon,
  #mainSearchButton,
  #topSearchButton {
    background-color: #004FA2 !important;
    color: white !important;
    height: 35px !important;
    width: 45px !important;
    cursor: pointer !important;
    vertical-align: top !important;
    padding: 10px !important;
    top: -0.5px !important;
    box-sizing: border-box !important;
    display: inline-block !important;
    line-height: 1 !important;
    min-height: 35px !important;
    max-height: 35px !important;
  }
  
  #navbarLeftDiv #mainSearchButton:hover,
  #navbarLeftDiv #topSearchButton:hover,
  #mainSearchSpan #mainSearchButton:hover,
  #topSearchSpan #topSearchButton:hover,
  #mainSearchButton:hover,
  #topSearchButton:hover {
    background-color: #1A69BC !important;
  }

  /* Hero Section - Mobile responsive */
  .container-fluid[style*="margin-top"] {
    padding: 20px 15px !important;
    margin-top: 15px !important;
  }

  .container-fluid[style*="margin-top"] h2 {
    font-size: 24px !important;
  }

  .container-fluid[style*="margin-top"] p {
    font-size: 14px !important;
  }

  /* Resource Container - Mobile responsive */
  .resourceContainer {
    padding-left: 15px !important;
    justify-content: center !important;
  }

  .resourceBox {
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 !important;
  }

  /* Section Header - Mobile responsive */
  .sectionHeader h2 {
    padding-left: 15px !important;
    font-size: 20px !important;
  }

  /* Buttons - Mobile responsive */
  .btn-signin,
  .btn-create {
    width: 100% !important;
    margin: 5px 0 !important;
    padding: 12px 20px !important;
    font-size: 16px !important;
  }
}

/* Hamburger menu positioning on small mobile (480px and below) - High specificity */
@media (max-width: 480px) {
  .navbar-header .navbar-toggle,
  .navbar-header button.navbar-toggle,
  button.navbar-toggle[data-toggle="collapse"],
  .navbar-header button[data-toggle="collapse"],
  .navbar .navbar-header .navbar-toggle,
  .navbar-toggle[data-toggle="collapse"],
  .navbar-toggle,
  .navbar-toggler,
  button[aria-label*="menu" i],
  button[aria-label*="navigation" i],
  [data-toggle="collapse"][data-target="#navbar"],
  [data-toggle="collapse"][data-target*="navbar"],
  [data-bs-toggle="collapse"][data-bs-target="#navbar"],
  [data-bs-toggle="collapse"][data-bs-target*="navbar"] {
    margin-right: -25px !important;
    margin-top: -140px !important;
  }

  /* Hero Section - Small mobile */
  .container-fluid[style*="margin-top"] {
    padding: 15px 10px !important;
  }

  .container-fluid[style*="margin-top"] h2 {
    font-size: 20px !important;
  }

  /* Resource Box - Small mobile */
  .resourceBox {
    height: auto !important;
    min-height: 200px !important;
    padding: 15px !important;
  }

  .resourceText {
    height: auto !important;
    min-height: 60px !important;
  }
}