/* General Styling */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: Arial, sans-serif;
    max-width: 1000px;
    margin: 0 auto;
}

button:disabled {
    cursor: not-allowed; /* Indicate that the button is not clickable */
    box-shadow: none; /* Remove shadow for a flat, inactive appearance */
    opacity: 0.6; /* Add transparency to indicate a disabled state */
    pointer-events: none; /* Prevent all mouse events */
    transition: background-color 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */
}

/* -------------------------------------------
// HEADER STYLING
 ------------------------------------------- */

.navbar {
    position: relative;
    overflow: visible; /* 🔑 allow logo to go outside */
}

/* Remove underline from the logo link */
.navbar a {
    text-decoration: none;
}

/* Ensure the logo behaves like a button/link */
.navbar a:hover {
    text-decoration: none;
}

/* Prevent any color changes on hover for the logo */
.navbar a {
    color: inherit;
}

.logo-container {
    position: absolute;

    top: 70%;
    left: 1em;                /* adjust for spacing */

    width: 5em;
    height: 5em;

    transform: translateY(-50%);
    border-radius: 50%;
    overflow: hidden;

    background: #fff;
    z-index: 1000;             /* stays above navbar */
}

.logo-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


/* Basic Hamburger Icon Styling */
.hamburger {
    display: none; /* Hidden by default */
    cursor: pointer;
    flex-direction: column;
    justify-content: space-between;
    height: 24px;
    width: 30px;
}

.hamburger span {
    display: block;
    height: 4px;
    background-color: white;
    border-radius: 2px;
    transition: 0.3s ease;
}



/* Main Navigation Bar */
.navbar {
    font-size: 1.25em;
    display: flex;
    justify-content: flex-start;
    align-items: center;

    /* 🔥 Gradient background */
    background: linear-gradient(
        90deg,
        #4b5cff 0%,
        #7a5fe6 45%,
        #d76ad9 100%
    );

    padding: 0.4em 1em 0.4em 150px; /* 👈 space for logo */
    flex-wrap: nowrap;

    position: relative;
    overflow: visible;
}

  /* Phone pill (shown on mobile) */
  .navbar .nav-phone,
  .navbar .nav-phone:link,
  .navbar .nav-phone:visited {
    display: inline-flex;
    align-items: center;
    gap: 6px;

    padding: 6px 10px;
    border-radius: 6px;

    background: #fff;
    color: #1877f2 !important;
    border: 1px solid #1877f2;

    font-weight: 700;
    line-height: 1;
    text-decoration: none;

    box-shadow: 0 1px 2px rgba(0,0,0,.08);
    cursor: pointer;

    transition: transform .06s ease, box-shadow .15s ease, background-color .15s ease, border-color .15s ease;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
  }

  .navbar .nav-phone i { color: inherit; }

.nav-links {
    list-style: none;
    display: flex;
    gap: 1em;
    align-items: center;
    padding-left: 1em;
    padding-top: 1.4em;
}

.nav-links li {
    display: inline;
}

.nav-links a {
    color: white;
    text-decoration: none;
    font-weight: bold;
}

.nav-links a:hover {
    color: #e7f3ff; /* Light Facebook blue */
}




@media (max-width: 845px) {

  /* Navbar becomes wrapping + keeps space for the absolute logo */
  .navbar {
    flex-wrap: nowrap;
    padding: 0.7em 0.9em 0.7em 5.2em; /* left padding leaves space for logo */
    position: relative;
    overflow: visible;
  }

  /* New circle logo stays absolute and can "break out" */
  .logo-container {
    position: absolute;
    left: 0.7em;
    top: 70%;

    width: 3.5em;
    height: 3.5em;

    transform: translateY(-50%);
    border-radius: 50%;
    overflow: hidden;

    background: #fff;
    z-index: 1000;
    margin: 0; /* important: kill old margin rules */
  }

  .logo-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  /* Right-side controls (hamburger) */
  .nav-controls {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.8em;

    position: absolute;
    right: 0.6em;
    top: 50%;
    transform: translateY(-50%);
  }

  /* Show hamburger on mobile */
  .hamburger {
    display: flex;
  }

  /* Dropdown menu: sits under the bar instead of pushing layout */
  .nav-links {
    display: none;
    position: absolute;         /* key change */
    left: 0;
    top: 100%;                  /* directly under navbar */
    width: 100%;

    flex-direction: column;
    gap: 0;
    margin: 0;
    padding: 0.7em 0.9em;

    background: inherit;        /* keep gradient */
    z-index: 900;
  }

  .nav-links li {
    display: block;
    padding: 0.55em 0;
  }

  .nav-links a {
    display: block;
    width: 100%;
  }

  /* JS toggles this */
  .nav-links.active {
    display: flex;
  }
}



/* =========================
   CASES SECTION (wireframe final, fixed colors)
   ========================= */

.cases-section {
  max-width: 1000px;
  margin: 14px auto 18px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(11,116,255,0.22);
  background: linear-gradient(135deg, #7c3aed 0%, #3b82f6 55%, #22c55e 140%);
}

.cases-head {
  text-align: center;
  padding: 6px 12px 12px;
}

.cases-title {
  margin: 0;
  font-size: 18px;
  line-height: 1.15;
  font-weight: 900;
  color: #fff;
}

.cases-sub {
  margin: 6px 0 0;
  font-size: 13px;
  line-height: 1.35;
  color: rgba(255, 255, 255, 0.92);
}

/* =========================
   CARD (wire)
   ========================= */

.cases-section .case-card-wire {
  border-radius: 4px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(15, 23, 42, 0.10);
  box-shadow:
    0 12px 28px rgba(15, 23, 42, 0.18),
    0 2px 8px rgba(15, 23, 42, 0.10);
}

/* Header */
.cases-section .case-card-wire .case-header {
  padding: 12px 14px 10px;
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.cases-section .case-card-wire .case-title {
  margin: 0;
  text-align: center;
  font-size: 15px;
  line-height: 1.25;
  font-weight: 950;
  color: #0f172a;
}

.cases-section .case-card-wire .case-title span {
  font-weight: 750;
  color: rgba(15, 23, 42, 0.70);
}

/* Context */
.cases-section .case-card-wire .case-context {
  padding: 10px 14px;
  display: grid;
  gap: 4px;
  font-size: 13px;
  line-height: 1.35;
  color: rgba(15, 23, 42, 0.80);
  background: rgba(255, 255, 255, 0.96);
}

.cases-section .case-card-wire .case-context strong {
  font-weight: 900;
  color: rgba(15, 23, 42, 0.88);
}

/* =========================
   MEDIA (the focus)
   ========================= */

.cases-section .case-card-wire .case-media-wire {
  padding: 12px 12px 12px;
  display: grid;
  grid-template-columns: 1fr 44px 1fr;
  gap: 10px;
  align-items: center;
  background: rgba(255, 255, 255, 0.96);
  border-top: 1px solid rgba(15, 23, 42, 0.08);
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.cases-section .case-card-wire .media-arrow {
  text-align: center;
  font-size: 22px;
  font-weight: 950;
  color: rgba(15, 23, 42, 0.55);
}

.cases-section .case-card-wire .shot {
  margin: 0;
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: rgba(15, 23, 42, 0.04);
  border: 1px solid rgba(15, 23, 42, 0.10);
}

.cases-section .case-card-wire .shot img {
  width: 100%;
  height: 275px;
  object-fit: cover;
  display: block;
}

/* Subtle bottom gradient for readability */
.cases-section .case-card-wire .shot::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,0.00) 55%,
    rgba(0,0,0,0.26) 100%
  );
}

/* Discreet top tag */
.cases-section .case-card-wire .shot-tag {
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 2;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.62);
  color: rgba(255, 255, 255, 0.96);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.1px;
  backdrop-filter: blur(6px);
  opacity: 0.92;
}

/* IMPORTANT: your HTML uses plain <figcaption> (no .shot-cap) */
.cases-section .case-card-wire .shot figcaption {
  position: absolute;
  left: 10px;
  top: 10px;
  z-index: 2;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.74);
  color: rgba(255, 255, 255, 0.96);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.2px;
  backdrop-filter: blur(6px);
}



/* Responsive */
@media (max-width: 520px) {
  .cases-section .case-card-wire .case-media-wire {
    grid-template-columns: 1fr;
  }

  .cases-section .case-card-wire .media-arrow {
    display: none;
  }
}



/* =========================
   CAROUSEL BEHAVIOR (show 1 card)
   ========================= */

.cases-stage {
  position: relative;
}

.cases-carousel .case-card-wire {
  display: none;
}

.cases-carousel .case-card-wire.is-active {
  display: block;
}

/* If you want the card to keep its internal grid behavior, force it here */
.cases-carousel .case-card-wire.is-active {
  display: block;
}

/* Optional spacing between carousel and counter */
.cases-counter {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 10px 0 2px;
}

/* Counter text */
.cases-count {
  min-width: 96px;
  text-align: center;
  font-size: 13px;
  font-weight: 800;
  color: rgba(255, 255, 255, 0.95);
  letter-spacing: 0.2px;
}

/* Counter arrows */
.cases-counter .cases-nav {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.45);
  background: rgba(15, 23, 42, 0.22);
  color: rgba(255, 255, 255, 0.95);
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
  display: grid;
  place-items: center;
  cursor: pointer;
  padding-bottom: 5px;
  backdrop-filter: blur(6px);
}

.cases-counter .cases-nav:hover {
  background: rgba(15, 23, 42, 0.32);
  border-color: rgba(255, 255, 255, 0.70);
}

.cases-counter .cases-nav:disabled {
  opacity: 0.35;
  cursor: default;
}



/* =========================
   MOBILE tweaks
   ========================= */

@media (max-width: 520px) {
  .cases-counter .cases-nav {
    width: 32px;
    height: 32px;
    font-size: 16px;
    padding-bottom: 10px;
  }

  .cases-count {
    font-size: 12.5px;
  }
}




/* =========================
   FINAL CTA SECTION
   ========================= */

.cta-section {
  margin: 30px auto;
  padding: 36px 16px 40px;
  background:
    linear-gradient(
      rgba(0, 0, 0, 0.65),
      rgba(0, 0, 0, 0.65)
    ),
    url("/images/hero_bg2.jpg") center / cover no-repeat;
  border-radius: 18px;
}

.cta-inner {
  max-width: 520px;
  margin: 0 auto;
  text-align: center;
}

/* Title */
.cta-title {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 900;
  color: #ffffff;
}

/* Sub */
.cta-sub {
  margin: 10px 0 20px;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.78);
}

/* Form */
.cta-form {
  display: grid;
  gap: 10px;
}

.cta-input,
.cta-select {
  width: 100%;
  height: 44px;
  padding: 0 14px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  outline: none;
}

.cta-input::placeholder {
  color: rgba(255, 255, 255, 0.55);
}

.cta-input:focus,
.cta-select:focus {
  border-color: rgba(59, 130, 246, 0.85);
  background: rgba(255, 255, 255, 0.12);
}

/* Button */
.cta-button {
  margin-top: 6px;
  height: 46px;
  border-radius: 12px;
  border: none;
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  color: #ffffff;
  font-size: 15px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(37, 99, 235, 0.35);
}

.cta-button:hover {
  filter: brightness(1.05);
}


/* =========================
   CTA SELECT (better)
   ========================= */

.cta-select {
  width: 100%;
  height: 44px;
  padding: 0 44px 0 14px; /* място за стрелката */
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.10);
  color: rgba(255, 255, 255, 0.95);
  font-size: 14px;
  font-weight: 700;
  outline: none;

  /* remove native look */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  /* custom arrow */
  background-image:
    linear-gradient(135deg, transparent 50%, rgba(255,255,255,0.85) 50%),
    linear-gradient(225deg, transparent 50%, rgba(255,255,255,0.85) 50%);
  background-position:
    calc(100% - 18px) 18px,
    calc(100% - 12px) 18px;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

.cta-select:focus {
  border-color: rgba(59, 130, 246, 0.85);
  background-color: rgba(255, 255, 255, 0.14);
}

/* Placeholder option (disabled selected) да е по-светъл */
.cta-select option[disabled] {
  color: #94a3b8;
}

/* Option list styling - ограничено (някои браузъри игнорират) */
.cta-select option {
  background: #0b1220; /* ще хване в част от браузърите */
  color: #ffffff;
}

/* Fix за iOS/Chrome: понякога select текста изглежда сив */
.cta-select:required:invalid {
  color: rgba(255, 255, 255, 0.65);
}

/* когато вече има избрана стойност */
.cta-select:required:valid {
  color: rgba(255, 255, 255, 0.95);
}


/* Note */
.cta-note {
  margin-top: 12px;
  font-size: 12px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.65);
}

/* Mobile */
@media (max-width: 520px) {
  .cta-title {
    font-size: 15px;
  }
}


.controls-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    border-radius: 5px;
}




/* -------------------------------------------
// SIGN UP/ IN STYLING
 ------------------------------------------- */

/* Sign-Up Form Styling */
.form-container {
    max-width: 600px;
    margin: 30px auto; /* Center the form vertically and horizontally */
    padding: 20px;
    background-color: #f9f9f9; /* Light grey background */
    border-radius: 10px; /* Rounded corners */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow */
}

.form-title {
    font-size: 2em;
    color: #1877f2; /* Facebook blue */
    text-align: center;
    margin-bottom: 30px;
}

.styled-form {
    display: flex;
    flex-direction: column;
}

.form-input {
    width: 80%;
    margin: 0 auto;
    margin-bottom: 10px;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #fff;
    font-size: 1em;
    box-sizing: border-box; /* Ensures padding doesn't break the width */
}

.form-input:focus {
    outline: none;
    border-color: #1877f2; /* Highlighted blue border */
    box-shadow: 0 0 5px rgba(24, 119, 242, 0.5); /* Subtle glow effect */
}

.btn-primary {
    width: 100%;
    padding: 12px;
    background-color: #1877f2; /* Facebook blue */
    color: white;
    border: none;
    border-radius: 5px;
    font-size: 1.5em;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.btn-primary:hover {
    background-color: #145dbf; /* Darker blue */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Slight shadow on hover */
}

.button-container {
    text-align: center; /* Centers the button */
}

.message {
    padding: 10px;
    margin: 10px 0;
    border-radius: 5px;
    font-size: 1em;
}

.message.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.message.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}


.signup-option {
    display: flex; /* Enable flexbox */
    justify-content: center; /* Center the content horizontally */
    margin-top: 10px; /* Add some spacing above */
    font-size: 16px; /* Adjust font size */
    color: #333; /* Dark gray text */
    text-align: center; /* Center the text inside */
    gap: 5px; /* Add spacing between text and link */
}

.signup-option p {
    margin: 0; /* Reset any default margins */
    text-align: center; /* Ensure centering */
    margin-top: 10px; /* Add some space above the text */
}

.signup-option p span {
    margin-right: 5px; /* Add spacing after "Нямаш акаунт?" */
}

.signup-link {
    color: #007bff; /* Default blue link color */
    text-decoration: none; /* Remove underline by default */
    font-weight: bold; /* Make the link bold */
}

.signup-link:hover {
    text-decoration: underline; /* Add underline on hover */
    color: #0056b3; /* Darker blue on hover */
}


/* Social Login Section */
.social-login {
    margin-top: 30px;
    text-align: center;
}

.social-login h2 {
    font-size: 18px;
    margin-bottom: 10px;
    color: #333;
}


        .login-message {
            background: #fffae6;
            color: #d9534f;
            padding: 0.5em;
            border: 1px solid #d9534f;
            margin: 1em;
            font-weight: bold;
            text-align: center;
        }

/* Facebook, TikTok, Instagram Buttons - Vertical Alignment */
.social-buttons-vertical {
    display: flex;
    flex-direction: column; /* Align buttons vertically */
    align-items: center; /* Center the buttons horizontally */
    gap: 15px; /* Add spacing between buttons */
    margin-bottom: 20px; /* Add space below these buttons */
}

/* General Button Styling */
.btn-social {
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    color: white;
    cursor: pointer;
    width: 300px; /* Ensure consistent width for these buttons */
}

/* Individual Button Colors */
.btn-facebook {
    background-color: #4267B2;
}

.btn-facebook:hover {
    background-color: #365899;
}

.btn-tiktok {
    background-color: #000000;
}

.btn-tiktok:hover {
    background-color: #333333;
}

.btn-instagram {
    background-color: #E1306C;
}

.btn-instagram:hover {
    background-color: #C13584;
}

.google-button-wrapper {
    text-align: center; /* Center the Google button */
    margin-top: 10px; /* Add spacing above the button */
    width: 300px; /* Set the same width as other social buttons */
    margin: 0 auto; /* Center horizontally */
}

.g_id_onload, .g_id_signin {
    width: 100%; /* Ensure the Google button matches the wrapper */
}









/* -------------------------------------------
// PROFILE PAGE & DELETE PAGE STYLING
 ------------------------------------------- */

/* Container for the Delete Account Button */
.account-container {
    display: flex;
    justify-content: flex-end; /* Align to the right within the body */
    margin-top: 1em; /* Space below the header */
    margin-right: 1em;
    margin-left: 1em;
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}


.logout-button {
    margin-right: 1em;
    background-color: #1877f2;
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    font-size: 14px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

/* Delete Account Button */
.delete-account-button {
    background-color: #e74c3c;
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    font-size: 14px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.delete-account-button:hover {
    background-color: #c0392b;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.4);
}

.profile-header-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}

#profile-greeting p {
    margin: 0;
}

.sales-dashboard-actions {
    display: flex;
    gap: 10px;
}

@media (max-width: 500px) {
    .profile-header-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .sales-dashboard-actions {
        width: 100%;
        justify-content: flex-start;
    }
}


/* Center the entire content */
.center-container {
    display: flex;
    flex-direction: column; /* Stack items vertically */
    align-items: center; /* Center horizontally */
    justify-content: center; /* Center vertically */
    text-align: center; /* Align text within elements */
    margin: 2em 0;
}

        .warning {
            color: #e74c3c;
            font-size: 20px;
            font-weight: bold;
            margin-bottom: 20px;
        }
        .delete-button {
            background-color: #e74c3c;
            color: white;
            border: none;
            padding: 6px 12px;
            font-size: 12px;
            border-radius: 5px;
            cursor: pointer;
            box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
        }
        .delete-button:hover {
            background-color: #c0392b;
        }
        .cancel-button {
            background-color: #1877f2;
            color: white;
            border: none;
            padding: 10px 20px;
            font-size: 16px;
            border-radius: 5px;
            cursor: pointer;
            text-decoration: none;
            display: inline-block;
            box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
        }
        .cancel-button:hover {
            background-color: #2980b9;
        } 
 
 
         .message {
            font-size: 18px;
            color: #2c3e50;
        }
        .home-button {
            background-color: #1877f2;
            color: white;
            padding: 10px 20px;
            text-decoration: none;
            border-radius: 5px;
            box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
        }
        .home-button:hover {
            background-color: #2980b9;
        }
 
 
 
 
 
 
 
 
 
 
 
 /* -------------------------------------------
// REFERRAL PAGE STYLING
 ------------------------------------------- */
 
 
 /* Tabs Styling */
.tabs {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}

.tab {
    padding: 10px 20px;
    margin: 0 5px;
    background-color: #ecf0f1;
    color: #000;
    border-radius: 5px;
    cursor: pointer;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    transition: background-color 0.3s, color 0.3s;
}

.tab.active {
    background-color: #1877f2;
    color: #fff;
}

/* Tab Content */
.tab-content {
    display: none;
    max-width: 900px;
    margin: 0 auto;
    padding: 10px;
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.tab-content.active {
    display: block;
}

/* Referral Item Card */
.referral-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    margin: 5px 0;
    background-color: #ecf0f1;
    border-radius: 8px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
}

.referral-item img {
    border-radius: 5px;
    object-fit: cover;
}

.referral-item div {
    margin: 0 10px;
}

.referral-item p {
    margin: 5px 0;
    font-size: 14px;
}

.share-buttons button {
    padding: 8px 12px;
    margin: 5px;
    background-color: #1877f2;
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 12px;
    transition: background-color 0.3s;
}

.share-buttons button:hover {
    background-color: #2980b9;
}
 
.share-buttons {
    display: flex;
    flex-wrap: wrap;
}

/* Screen Width Less Than 470px: Share Buttons Below Thumbnail */
@media (max-width: 470px) {
    .referral-item {
        flex-direction: column;
        align-items: center;
    }

    .share-buttons {
        margin-top: 10px;
        justify-content: center;
        width: 100%;
    }

    .share-buttons button {
        margin: 5px;
    }
}

 
 
 
 
 
/* -------------------------------------------
// SHARE PAGE STYLING
 ------------------------------------------- */
 
/* Centering the container */
.share-container {
    background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    max-width: 500px;
    width: 100%;
    text-align: center;
    margin: 30px auto; /* Add spacing from header and footer, center horizontally */
    position: relative; /* Required if positioning content inside */
}

/* Align "Назад" and "Сподели" buttons on the same line */
.share-container button {
    padding: 10px 20px;
    font-size: 16px;
    background-color: #4267B2;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    margin: 10px; /* Add space between buttons */
    display: inline-block; /* Ensure buttons are inline */
}

.share-container button:hover {
    background-color: #365899;
}

/* Spacing for inputs and textarea */
.share-container input, .share-container textarea {
    width: 100%;
    margin: 10px 0;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
}

/* Styling specific for the button container */
.button-container {
    display: flex;
    justify-content: space-between; /* Space between buttons */
    align-items: center; /* Align buttons vertically */
    margin-top: 20px; /* Add space above buttons */
}
 
 
 
/* Parent Container (Red Border) */
#mainView div,
#imagePreviewList div {
    position: relative;
    width: 215px;
    height: 165px;
    margin: 10px;
    overflow: hidden;
    background-color: #f9f9f9;
    display: flex;
    align-items: center; /* Vertically center content */
    justify-content: center; /* Horizontally center content */
    padding: 0;
    box-sizing: border-box; /* Include border and padding in dimensions */
}

#mainView img,
#imagePreviewList img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    display: block;
    max-width: none !important;
    max-height: none;
}



/* Number Label Styling */
#mainView div div,
#imagePreviewList div div {
    position: absolute;
    top: 10px;
    left: 10px;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

/* Delete Button Styling */
#mainView button,
#imagePreviewList button {
    position: absolute;
    bottom: 10px;
    left: 10px;
    background-color: #ff4d4d;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    border-radius: 3px;
}
 
 
 
 
 
 
 
 
 
/* -------------------------------------------
// MAIN PAGE STYLING
 ------------------------------------------- */


/* ============================================
   HERO GRID LAYOUT (text left, form right)
   ============================================ */
.hero-grid{
  display: grid;
  grid-template-columns: 0.9fr 1.2fr;
  gap: 16px;
  align-items: center;
  max-width: 1000px;
  margin: 0 auto;
  text-align: left; /* overrides your hero center */
}

.hero-left{
  padding: 10px 6px;
}

.hero-right{
  display: flex;
  justify-content: flex-end;
}

/* Mobile: text on top, form below */
@media (max-width: 700px){
  .hero-grid{
    grid-template-columns: 1fr;
    text-align: center;
  }
  .hero-right{
    justify-content: center;
  }
}


/* Hero Container Styling */
.hero-container {
    background: url('images/hero_image_new.webp') no-repeat center center/cover;
    position: relative;
    text-align: center;
    color: white;
    padding: 30px 20px;
    margin-bottom: 30px;
    overflow: visible;
}


.hero-container::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
}



/* Hero Heading Styling */
.hero-heading, .hero-subheading {
    position: relative; /* Make sure these are above the overlay */
    z-index: 1; /* Place them above the overlay */
}


/* Hero Heading Styling */
.hero-heading {
    font-size: 1.7em;
    font-weight: bold;
    margin-bottom: 0.4em;
}

/* Hero Subheading Styling */
.hero-subheading {
    font-size: 1em;
    font-weight: 300;
}

.hero-subheading p {
  margin: 6px 0;
  font-size: 1.05rem;
}


.heading-container {
    display: flex;
    justify-content:center;
    align-items: center;
    padding-bottom: 1em;
}

.heading-container h1 {
    font-size: 2em;
    color: #1877f2; /* Facebook blue */
}


.swiper-container {
    overflow: hidden; /* Prevents overflow */
    position: relative;
    width: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    /* Adjust slide styling */
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.swiper-slide img {
    width: 100%;
    object-fit: cover;
    height: auto;
    border-radius: 8px;
}

.swiper-slide a {
    text-decoration: none;
    color: inherit; /* Inherit text color */
    display: block; /* Ensure the entire slide is clickable */
}

.swiper-slide a:hover {
    text-decoration: none;
    color: #1877f2; /* Optional: Change color on hover */
}

.swiper-pagination {
    position: relative; /* Ensure it's positioned below the slides */
    bottom: 0;
    text-align: center;
    margin-top: 20px; /* Add spacing above the pagination if needed */
}

.swiper-pagination-bullet {
    background: #1e90ff; /* Customize pagination bullet color */
}


/* Price and Odometer Row Specific to This Page */
.price-odometer-row {
    display: flex;
    justify-content: space-between; /* Space them apart */
    margin: 0.6em 0;
}

.price-text {
    color: #1877f2; /* Blue color for price */
    font-weight: bold;
    margin-left: 1em;
}

.odometer-text {
    color: #333; /* You can adjust the color for odometer */
    font-weight: normal;
    margin-right: 1em;    
}


section {
    border-top: 2px solid #1877f2; /* Facebook blue */
    padding: 20px auto;
    background-color: white; /* Keep a consistent background */
}

.grid-section {
    background-color: #f9f9f9;
    padding: 50px 20px;
    text-align: center;
}

.grid-section h2 {
    font-size: 2.5em;
    color: #1e90ff;
    margin-bottom: 20px;
}

.grid-section p {
    font-size: 1.2em;
    color: #333;
    margin-bottom: 20px;
}


/* Step-by-step Process Styling */
.steps {
    margin: 0 auto; /* Center the steps */
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 5 equal columns */
    gap: 20px;
}

.steps a {
    display: block;              /* Ensure anchor tag behaves like a block element */
    text-decoration: none;       /* Remove underline from links */
    color: inherit;              /* Inherit text color */
}

/* Individual Step Styling */
.main-step {
    cursor: pointer;
    background-color: white;
    border-radius: 8px;
    padding: 0.5em;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Light shadow for depth */
    transition: transform 0.3s ease;
}

.main-step:hover {
    transform: scale(1.05); /* Scale up slightly on hover */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); /* Enhance shadow on hover for more depth */
}

/* Icon Styling */
.main-step i {
    font-size: 2.5em; /* Increase the size of the icon */
    color: #1877f2; /* Use your primary brand color (Facebook blue) */
    margin-bottom: 15px; /* Space between icon and heading */
    display: inline-block;
    transition: color 0.3s ease, transform 0.3s ease; /* Smooth hover transitions */
}

/* Add some hover effects for the icons */
.main-step:hover i {
    color: #145dbf; /* Darker blue for icon on hover */
    transform: scale(1.2); /* Slightly enlarge icon on hover */
}

.main-step h3 {
    font-size: 1.5em;
    color: #1877f2; /* Facebook blue for headings */
    margin-bottom: 10px;
}

.main-step p {
    font-size: 1.1em;
    color: #555; /* Softer text color for readability */
    line-height: 1.6;
}






/* -------------------------------------------
   FOOTER (clean, compact, fits mobile)
------------------------------------------- */

footer {
  background: linear-gradient(135deg, #6d28d9 0%, #4f46e5 55%, #2563eb 120%);
  color: rgba(255,255,255,0.92);
  border-top: 1px solid rgba(255,255,255,0.14);
}

/* Main row: compact */
.footer-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 10px 12px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px 14px;
  flex-wrap: wrap;
}

/* Don’t treat cols like big blocks */
.footer-col {
  flex: 0 0 auto;
  max-width: none;
  text-align: left;
}

/* Make lists behave like a single line */
.footer-col ul {
  list-style: none;
  margin: 0;
  padding: 0;

  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
}

/* Remove “big pill” look */
.footer-col ul li {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;

  margin: 0;
  padding: 0;            /* important: no blocks */
  background: transparent;
  border: none;
  border-radius: 0;

  font-size: 12.5px;
  font-weight: 700;
  color: rgba(255,255,255,0.92);
}

/* Icons: subtle */
.footer-col ul li i {
  margin: 0;
  min-width: 16px;
  opacity: 0.9;
  color: rgba(255,255,255,0.95);
}

/* Links: consistent */
.footer-col a {
  color: rgba(255,255,255,0.95);
  text-decoration: none;
  font-weight: 800;
}

.footer-col a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Bottom: thin, calmer */
.footer-bottom {
  text-align: center;
  padding: 10px 10px 12px;
  font-size: 12px;
  color: rgba(255,255,255,0.75);
  border-top: 1px solid rgba(255,255,255,0.14);
  background: rgba(0,0,0,0.10);
}

.footer-bottom a {
  margin: 0 8px;
  color: rgba(255,255,255,0.88);
  text-decoration: none;
  font-weight: 750;
}

.footer-bottom a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Social: small inline icons (no big buttons) */
.footer-bottom .social a {
  margin: 0 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.14);
}

.footer-bottom .social a:hover {
  background: rgba(255,255,255,0.16);
}

/* =========================
   FOOTER – STACK ON MOBILE
   ========================= */

@media (max-width: 520px) {
  .footer-container {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }

  .footer-col {
    width: 100%;
    text-align: center;
  }

  .footer-col ul {
    justify-content: center;
  }

  .footer-bottom {
    text-align: center;
  }
}










/* -------------------------------------------
// HOW TO PURCHASE STYLING
 ------------------------------------------- */


/* Steps Wrapper with Arrows */
.steps-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    max-width: 100%;
    overflow: hidden;
    padding: 10px 0;
}

/* Left and Right Arrows (Visible on Large Screens) */
.left-arrow, .right-arrow {
    display: block;
    background: none;
    border: none;
    font-size: 2em;
    color: #1877f2;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}

/* Disabled Arrow Styles */
.carousel-arrow.disabled {
    color: #ccc; /* Gray out the arrow */
    cursor: not-allowed; /* Change the cursor to indicate it's disabled */
    pointer-events: none; /* Prevent clicking */
}

.left-arrow {
    left: 10px;
}

.right-arrow {
    right: 10px;
}

/* Hide Up and Down Arrows on Large Screens */
.up-arrow, .down-arrow {
    display: none;
}

/* Steps Carousel - Only 1 step should be visible at a time */
.purchase-steps-carousel {
    display: flex;
    justify-content: center;
    width: 100%;
    position: relative;
    overflow: hidden;
}

/* Purchase Step */
.purchase-step {
    display: none; /* Hide all steps initially */
    background-color: white;
    border-radius: 8px;
    padding: 1em;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    text-align: center;
    width: 60%; /* Step width */
    transition: transform 0.5s ease;
}

/* Active step should be visible and centered */
.purchase-step.active {
    display: block;
    transform: scale(1.1); /* Slightly enlarge the active step */
}

.purchase-step i {
    font-size: 2.5em;
    color: #1877f2;
    margin-bottom: 15px;
}

.purchase-step h3 {
    font-size: 1.5em;
    color: #1877f2;
}

.purchase-step p {
    font-size: 1.1em;
    color: #555;
    line-height: 1.6;
}







/* -------------------------------------------
   SEARCH OPTIONS STYLING (REWORKED + FIXED)
------------------------------------------- */

/* FORM CARD */
#car-search-form{
  width: 100%;
  margin: 0;
  padding: 22px 18px;
  border-radius: 20px;
  position: relative;
  background: rgba(20, 25, 35, 0.88);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 22px 55px rgba(0,0,0,0.45);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);

  /* ✅ IMPORTANT: gaps only work if we are actually a grid */
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 14px;
}



/* -------------------------------------------
   MAKE / MODEL (two columns with real gap)
------------------------------------------- */
.search-type-group{
  display: grid;                 /* ✅ required for gap to work */
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* On small screens stack */
@media (max-width: 580px){
  .search-type-group{
    grid-template-columns: 1fr;
  }
}

/* -------------------------------------------
   BUY OPTIONS (pill row)
------------------------------------------- */
.search-buy-condition{
  display: grid;                 /* ✅ required if you want grid behaviour */
  grid-template-columns: 1fr;
  row-gap: 10px;
}

.search-buy-condition > div{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;                     /* ✅ spacing between checkboxes */
  padding: 12px 14px;

  border-radius: 14px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.09);
}

/* Make checkbox labels sit inline (override your global display:block) */
.search-buy-condition label{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-weight: 500;
  color: rgba(255,255,255,0.88);
}

/* Better checkbox look on modern browsers */
#car-search-form input[type="checkbox"],
#car-search-form input[type="radio"]{
  width: 20px;
  height: 20px;
  accent-color: #2563eb;
}

/* -------------------------------------------
   CUSTOM DROPDOWN (select)
------------------------------------------- */
.custom-dropdown{
  position: relative;
  width: 100%;
  font-size: 1em;
  font-weight: 600;
  color: #0f172a;
}

.custom-dropdown-select{
  width: 100%;
  height: 46px;
  padding: 0 14px;
  border-radius: 12px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  color: #0f172a;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.14);
  cursor: pointer;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  transition: border-color .2s ease, box-shadow .2s ease;
}

.custom-dropdown-select:hover{
  border-color: rgba(37,99,235,0.75);
  box-shadow: 0 0 0 3px rgba(37,99,235,0.12);
}

/* Dropdown list */
.custom-dropdown-options{
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: 100%;
  max-height: 360px;
  overflow-y: auto;

  display: none;
  z-index: 50;

  background: #ffffff;
  padding: 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,0.14);
  box-shadow: 0 18px 45px rgba(0,0,0,0.25);
}



.custom-dropdown.open .custom-dropdown-options{
  display: block;
}

.custom-dropdown-options label{
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 8px;
  font-size: 15px;
  color: #0f172a;
  text-align: left;
}

.custom-dropdown-options-sale-date label{
  gap: 8px;
}


/* -------------------------------------------
   EXTENDED SEARCH (optional section)
------------------------------------------- */
/* ===== Actions row (button + toggle) ===== */
.search-actions{
  position: relative;    
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-top: 4px;
}

.btn-primary{
  width: 100%;
  height: 52px;
  border-radius: 14px;
  border: none;
  background: #2563eb;
  color: #fff;
  font-weight: 700;
  font-size: 18px;
  box-shadow: 0 14px 35px rgba(37,99,235,0.35);
  cursor: pointer;
  transition: transform .15s ease, background .2s ease, box-shadow .2s ease;
}

.btn-primary:hover{
  background: #1d4ed8;
  transform: translateY(-1px);
  box-shadow: 0 18px 45px rgba(37,99,235,0.45);
}

/* “Още филтри” as a real button (better UX than link) */
.filters-toggle{
  width: 100%;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.85);
  font-weight: 600;
  cursor: pointer;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  transition: background .2s ease, border-color .2s ease, transform .15s ease;
}

.filters-toggle:hover{
  background: rgba(255,255,255,0.10);
  border-color: rgba(255,255,255,0.22);
  transform: translateY(-1px);
}

.filters-toggle .chev{
  transition: transform .2s ease;
}

.filters-toggle[aria-expanded="true"] .chev{
  transform: rotate(180deg);
}

/* ===== Advanced panel container ===== */
.filters-panel{
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 10px);   /* appears under the buttons */
  z-index: 3000;

  /* give it a “floating panel” look */
  margin-top: 0;            /* override your current margin */
  border-top: 0;            /* optional, since it’s floating */
  border-radius: 16px;
  padding: 12px;

  background: rgba(15, 23, 42, 0.98);  /* dark panel */
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 24px 70px rgba(0,0,0,0.45);

  max-height: 60vh;
  overflow: auto;
}

/* Grid of filter groups */
.filters-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

/* Each group looks like a mini-card */
.filter-group{
  padding: 12px 12px;
  border-radius: 14px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
}

.filter-title{
  font-weight: 800;
  font-size: 14px;
  letter-spacing: 0.02em;
  color: rgba(255,255,255,0.9);
  margin-bottom: 10px;
}

/* Two columns inside a group */
.two-col{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}


/* Field styles */
.field label{
  display: block;
  font-size: 13px;
  color: rgba(255,255,255,0.78);
  margin-bottom: 6px;
}

/* unified control styles (select/input) */
.field-control{
  width: 100%;
  height: 46px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,0.14);
  background: #fff;
  color: #0f172a;
  font-size: 16px;
  outline: none;
  transition: box-shadow .2s ease, border-color .2s ease;
}

.field-control:focus{
  border-color: rgba(37,99,235,0.9);
  box-shadow: 0 0 0 3px rgba(37,99,235,0.22);
}

/* Ensure custom dropdown select stays readable */
.custom-dropdown-select{
  color: #0f172a;
}


/* ===== Checkboxes as clickable pills ===== */
.checks{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

@media (max-width: 520px){
  .checks{
    grid-template-columns: 1fr;
  }
}

.check-pill{
  display: flex;
  align-items: center;
  gap: 10px;

  padding: 10px 12px;
  border-radius: 12px;
  cursor: pointer;

  background: rgba(0,0,0,0.18);
  border: 1px solid rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.88);
  user-select: none;
}

.check-pill:hover{
  background: rgba(0,0,0,0.24);
  border-color: rgba(255,255,255,0.16);
}

.check-pill input{
  width: 16px;
  height: 16px;
  accent-color: #2563eb;
}

/* ===== Panel footer buttons ===== */
.filters-footer{
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 12px;
}

.btn-secondary,
.btn-ghost{
  height: 44px;
  border-radius: 12px;
  font-weight: 700;
  cursor: pointer;
  width: 100%;
}

.btn-secondary{
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.16);
  color: rgba(255,255,255,0.9);
}

.btn-secondary:hover{
  background: rgba(255,255,255,0.12);
}

.btn-ghost{
  background: transparent;
  border: 1px solid rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.75);
}

.btn-ghost:hover{
  color: #fff;
  border-color: rgba(255,255,255,0.18);
}



 
/* -------------------------------------------
// SEARCH RESULTS STYLING
------------------------------------------- */

/* Modal root: NO center vertically */
.xr-modal{
  position: fixed;
  inset: 0;
  z-index: 9999;

  display: none;
  justify-content: center;
  align-items: flex-start;      /* ✅ top align */
  padding: 48px 14px;          /* ✅ small padding */
  margin-top: 0;
}

/* show modal (if you're using class) */
.xr-modal.is-open{
  display: flex;
}

/* Backdrop */
.xr-modal__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(2,6,23,.60);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  z-index: 0;
}

/* Panel: pinned near top */
.xr-modal__panel{
  position: relative;
  z-index: 1;

  width: min(86vw, 640px);

  /* ✅ cap it so it never goes beyond screen */
  max-height: calc(100vh - 24px);

  border-radius: 18px;
  background: transparent;
  padding: 0;

  /* ✅ if you truly want NO scroll anywhere */
  overflow: visible;
}

.xr-modal__close{
  position:absolute;
  top: 10px;
  right: -10px;
  z-index: 10000;

  width: 36px;
  height: 36px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.12);
  background: rgba(255,255,255,.95);
  cursor: pointer;
}


.hero-container--srp{
  margin-bottom: -50px; 

}

.srp-hero-actions{
  display:flex;
  flex-direction:column;
  gap:14px;
  max-width:360px;
  width:100%;
}

.btn-srp-primary{
  height:56px;
  border-radius:16px;
  font-size:16px;
  font-weight:700;

  box-shadow:
    0 12px 28px rgba(37,99,235,.40),
    inset 0 1px 0 rgba(255,255,255,.25);

  transition:transform .2s ease, box-shadow .2s ease;
}

.btn-srp-primary:hover{
  transform:translateY(-1px);
  box-shadow:
    0 16px 36px rgba(37,99,235,.50),
    inset 0 1px 0 rgba(255,255,255,.35);
}

.btn-srp-secondary{
  height:52px;
  border-radius:16px;

  background:rgba(255,255,255,.95);
  border:1px solid rgba(0,0,0,.15);

  font-size:15px;
  font-weight:600;

  transition:background .2s ease, border-color .2s ease;
}

.btn-srp-secondary:hover{
  background:#fff;
  border-color:rgba(0,0,0,.25);
}

@media (max-width:700px){
  .srp-hero-actions{
    flex-direction:row;
    gap:12px;
  }

  .srp-hero-actions button{
    width:50%;
    height:46px;
    border-radius:12px;
  }
}


/* Sticky container */
.srp-sticky{
  position: sticky;
  top: 0; /* change to header height if header is sticky */
  z-index: 90;

  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  padding: 10px 14px;
  border-bottom: 1px solid rgba(0,0,0,.08);

  /* hidden by default */
  transform: translateY(-120%);
  opacity: 0;
  pointer-events: none;

  transition: transform .22s ease, opacity .22s ease;
}

/* visible state */
.srp-sticky.is-visible{
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}

/* buttons layout */
.srp-sticky-actions{
  display:flex;
  gap:10px;
  max-width: 420px;
  margin: 0 auto;
}

/* smaller buttons in sticky */
.srp-sticky-actions .btn-srp-primary,
.srp-sticky-actions .btn-srp-secondary{
  height:42px;
  font-size:14px;
  border-radius:12px;
  padding: 0 14px;
  box-shadow:none;
}

/* mobile: full-width buttons */
@media (max-width:700px){
  .srp-sticky-actions{
    max-width:none;
  }
  .srp-sticky-actions > button{
    flex:1;
    min-width:0;
  }
}




.vehicle-details {
  max-width: 1000px;
  margin: 0 auto;
}

.controls-container, .results-container {
  max-width: 1000px;
  margin: 0 auto;
}

/* ===== Results Layout ===== */
#results-container{
  margin: 0 auto;
  padding: 14px 14px 20px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

/* ===== Card with gradient border ===== */
.vehicle-card{
  position: relative;
  padding: 2px; /* thickness of gradient border */
  border-radius: 8px;

  /* 🔥 same gradient as image */
  background: linear-gradient(
    90deg,
    #4b5cff 0%,
    #7a5fe6 45%,
    #d76ad9 100%
  );

  transition: transform .2s ease, box-shadow .2s ease;
}

.vehicle-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 22px 50px rgba(2,6,23,.14);
}

/* inner white card */
.vehicle-card-link{
  background:#fff;
  border-radius: 8px;
  display:grid;
  grid-template-columns: 240px 1fr;
  min-height:160px;
  color:inherit;
  text-decoration:none;
  overflow: hidden;
}


/* ===== LEFT IMAGE (full visible + gradient frame) ===== */
.vehicle-media{
  position: relative;
  height: 100%;
  padding: 8px;                /* creates the “frame thickness” */
  overflow: hidden;

  /* 🔥 Gradient background (frame) */
  background: linear-gradient(
    90deg,
    #4b5cff 0%,
    #7a5fe6 45%,
    #d76ad9 100%
  );
}

/* inner dark backing behind image for letterboxing */
.vehicle-media::after{
  content:"";
  position:absolute;
  inset:8px;                   /* same as padding */
  background: #0f172a;
  border-radius: 8px;
  z-index: 0;
}

.vehicle-media img{
  position: relative;
  z-index: 1;

  width:100%;
  height: 100%;
  display:block;

  object-fit: fill;         /* ✅ NO CROPPING */
  border-radius: 6px;
}

/* Badge */
.vehicle-badge{
  position:absolute;
  top: 14px;
  left: 14px;
  z-index:2;

  padding:6px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;

  background:rgba(255,255,255,.92);
  color:#0f172a;
  border:1px solid rgba(0,0,0,.12);
}

/* ===== RIGHT CONTENT ===== */
.vehicle-content{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:14px 16px;
  min-width: 0;
}

.vehicle-top{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.vehicle-title{
  margin:0;
  font-size:18px;
  font-weight:900;
  line-height:1.3;
  color:#0f172a;
}

.vehicle-title span{
  font-weight:700;
  opacity:.7;
}

.vehicle-date{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:12.5px;
  font-weight:700;
  color:rgba(15,23,42,.65);
}

/* ===== Price / Status ===== */
.vehicle-price{
  font-size: 18px;
  font-weight: 900;
  text-transform: uppercase;
  max-width: 30%;
  padding: 6px 12px;
  border-radius: 999px;

  background: rgba(37,99,235,.10);
  color: #1e3a8a;
}



/* Specs */
.vehicle-specs{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:8px;
  font-size:12.5px;
  font-weight:700;
  color:rgba(15,23,42,.72);
}

.vehicle-specs span{
  display:flex;
  align-items:center;
  gap:8px;
  min-width: 0;
}

.vehicle-specs i{
  opacity:.7;
}

/* ===== Mobile: less image space, still left/right ===== */
@media (max-width:720px){
  .vehicle-card-link{
    grid-template-columns: 170px 1fr; /* ✅ image takes less space */
    min-height: 170px;
  }

  .vehicle-media{
    padding: 4px;              /* thinner frame on mobile */
  }

  .vehicle-media::after{
    inset: 6px;
    border-radius: 14px;
  }

  .vehicle-media img{
    min-height: 170px;
    border-radius: 6px;
  }

  .vehicle-content{
    padding: 12px 12px;
  }

  .vehicle-price{
    max-width: 100%;
    font-size: 20px;
    margin: 8px 0;
  }
}








.back-button-container {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex: 1;
}

.action-button {
    background-color: #007bff;
    color: white;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.action-button i {
    margin-right: 0.5em; /* Add some space between icon and text */
}

.action-button:hover {
    background-color: #0056b3; /* Darker shade on hover */
}

#save-button {
    margin-left: 1em; /* Align save button to the left */
}

#back-button {
    margin-right: 1em; /* Align back button to the right */
}


.back-button {
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
    font-size: 1em;
    cursor: pointer;
}

.back-button:hover {
    background-color: #0056b3;
}

/* Load More Button */
.load-more-button {
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
    font-size: 1em;
    cursor: pointer;
    margin-top: 20px;
    transition: background-color 0.3s ease;
}

.load-more-button:hover {
    background-color: #0056b3;
}

/* Disabled State for Load More Button */
.load-more-button:disabled {
    background-color: #cccccc;
    color: #666666;
    cursor: not-allowed;
    border: none;
}

/* Centering the container and adding bottom padding */
#load-more-container {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    padding-bottom: 30px; /* Add some bottom padding */
}


.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}
.modal-content {
    background-color: white;
    margin: 10% auto;
    padding: 20px;
    border-radius: 10px;
    width: 300px;
    text-align: center;
}


/* Left-align checkbox labels */
.checkbox-group label {
    display: flex;
    align-items: center;
    padding-left: 10px;             /* Add padding for better spacing */
    font-size: 16px;                /* Match the font size */
    color: #333;                    /* Neutral color */
}

/* Style checkboxes */
input[type="checkbox"] {
    margin-right: 10px;             /* Add space between checkbox and label */
}

/* Adjust the save button */
.save-button {
    margin-top: 20px;
    padding: 10px 20px;
    background-color: #1877f2;      /* Use Facebook blue to match the theme */
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.save-button:hover {
    background-color: #145dbf;      /* Darker blue on hover */
}

.close-modal {
    color: red;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}







 

/* -------------------------------------------
// SEARCH DETAILS STYLING
------------------------------------------- */

#image-loading-placeholder {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 300px; /* Set appropriate height */
    flex-direction: column;
}

.spinner {
    border: 6px solid #f3f3f3;
    border-radius: 50%;
    border-top: 6px solid #1877f2;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Hide spinner once images are loaded */
.hide {
    display: none;
}


/* Swiper Container */
.main-slider {
    width: 100%;
    min-height: 30vh;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: height 0.5s ease;
    background:#f6f6f6;
}

/* Main Swiper Image Styling */
.main-slider .swiper-slide img {
    width: 100%;   
    height: auto;
    display:block;
    object-fit: cover; /* Ensure the image fits without stretching or overflowing */
}


/* Adjust the Image Controls Container */
.image-controls-container {
    position: absolute;
    top: 1px; /* Adjust distance from the top */    
    left: 0;
    width: 100%; /* Spread across the image */
    z-index: 10; /* Ensure controls are above the image */
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1em 1em;
}

/* Custom Pagination (Left-aligned) */
.custom-swiper-pagination {
    color: white;
    background-color: rgba(0, 0, 0, 0.2); /* Semi-transparent background */
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 14px;
    max-width: 4.5em;
    text-align: center;
    pointer-events: none; /* Ensure pagination doesn't block interaction */
}

/* Fullscreen Icon (Center-aligned) */
#fullscreen-icon {
    color: white;
    background-color: rgba(0, 0, 0, 0.2); /* Semi-transparent background */
    padding: 7px;
    border-radius: 50%;
    font-size: 20px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: auto; /* Allow clicks */
}


/* Thumbnail Slider Row */
#thumbnail-row {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 500px;
    margin: 10px auto;
    position: relative;
    padding: 0 50px;
}

/* Swiper Arrows */
.swiper-button-prev,
.swiper-button-next {
    color: #007bff; /* Customize arrow color */
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute; /* Position absolutely within the thumbnail row */
}

/* Thumbnail Slider Thumbnails */
.thumbnail-slider .swiper-slide {
    max-width: 40px;
    height: 40px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden; /* Ensure that images do not overflow */
}

.thumbnail-slider .swiper-slide img {
    width: 100%;  /* Make image fill the container's width */
    height: 100%; /* Make image fill the container's height */
    object-fit: cover; /* Ensures image fills the area while keeping aspect ratio */
    border-radius: 4px; /* Optional: Add some rounding for better aesthetics */
}



.vehicle-container {
    background: #fff;
    border-radius: 10px;
    padding: 15px 20px;
    box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.15);
    margin-bottom: 20px;
}

/* ─────────────────────────────
   Vehicle Header
───────────────────────────── */
.vehicle-make {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  padding-bottom: 14px;
  border-bottom: 1px solid #e2e2e2;
}

.vehicle-make-model {
  font-size: 22px;
  font-weight: 700;
}

.vehicle-make span {
  display: inline-block;
  background: #f3f4f6;
  color: #333;
  font-size: 16px;
  font-weight: 500;
  padding: 2px 8px;
  border-radius: 6px;
}



.vehicle-quick-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 18px;
  font-size: 14px;
  color: #333;
}

.vehicle-quick-info span {
  display: flex;
  align-items: center;
  gap: 5px;
}

.vehicle-quick-info i,
.vehicle-quick-info img {
  font-size: 14px;
  width: 14px;
  height: 14px;
  opacity: 0.6;
  filter: grayscale(1);
}

/* For mobile: keep it readable */
@media (max-width: 410px) {
  .vehicle-quick-info {
    gap: 6px 12px;
    font-size: 12px;
  }
}

.vehicle-info {
  display: grid;
  grid-template-columns: 1fr 1fr;   /* two columns */
  gap: 8px 18px;                    /* row-gap, col-gap */
  padding: 12px 0;
  font-size: 18px;
}

.vehicle-info-row {
  display: contents; /* allows label/value to align to grid cells */
}

/* Label = bold; Value = normal */
.vehicle-info-label {
  font-weight: 400;
  color: #222;
  display: flex;
  align-items: center;
  gap: 6px;
}

.vehicle-info-value {
  font-weight: 600;
  color: #111;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Separator after “Цилиндри” (5th row) */
.vehicle-info-row:nth-of-type(5)::after {
  content: "";
  grid-column: 1 / -1;     /* span both columns */
  height: 1px;
  background: #ddd;
  margin: 18px 0;
}

/* Make icons tidy and fixed-width */
.vehicle-info-label i,
.vehicle-info-value i {
  width: 18px;
  height: 18px;
  margin-right: 0;
  opacity: 0.8;
  flex: 0 0 auto;
}



/* Fullscreen Image Styling */
img:fullscreen, /* Fullscreen in modern browsers */
img:-webkit-full-screen, /* Fullscreen in Safari */
img:-ms-fullscreen { /* Fullscreen in IE */
    width: 100%;
    height: 100%;
    object-fit: contain; /* Maintain aspect ratio while fitting the screen */
    background-color: black; /* Optional: black background to hide any extra space */
}


.price-bgn{color:#1a73e8;font-weight:700;font-size:26px;margin:0 0 6px;text-align:center}
.price-note{font-size:15px;color:#64748b;text-align:center;margin-bottom:12px}


.similar-label, .sold-label {
  font-weight: 600;
  font-size: 1em;
  margin: 1em auto;
  text-align: center;
}


.lead-calc{
  background:#f8fbff;
  border:1px solid #c8defe;
  border-radius:6px;
  padding:16px;
  margin:12px 0 18px;
  text-align:center;
}
.lead-calc.emph{background:#e0f2fe;border-color:#93c5fd}

.lead-calc i, .subscribe-block i {
  margin-right: 8px;
}


.lead-title, .sub-title {
    font-weight:700;
    margin-bottom: 14px;
}

.cta-btn.primary{
  display:inline-block;
  background:#0084ff;
  color:#fff !important;
  padding:15px 25px;
  font-weight:700;
  cursor:pointer;
  text-decoration:none;
  transition:transform .15s ease, background .15s ease;
}
.cta-btn.primary:hover{background:#006fd4;transform:translateY(-1px)}
.cta-btn.primary:active{transform:translateY(0)}

.cta-inline-wrap {
  text-align: center;
  margin-top: 16px;
}

.cta-inline-note {
  font-size: 14px;
  color: #374151;
  margin-bottom: 8px;
}


.cta-inline{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:12px 0 6px}
.cta-inline .cta-btn{border-radius:10px;padding:10px 16px;font-weight:700}
.cta-inline .cta-btn.messenger{background:#0084ff}
.cta-inline .cta-btn.messenger:hover{background:#006fd4}
.cta-inline .cta-btn.phone{background:#16a34a}
.cta-inline .cta-btn.phone:hover{background:#15803d}

.auction-line{font-size:18px;color:#0f172a;margin-bottom:0.5em;text-align:center}


/* контейнер с отделена цена и два блока */
.price-estimate-box.split-layout { padding-top: 0; }

.price-head {
  text-align: center;
  padding: 14px 12px 10px;
  margin-bottom: 16px;
  position: relative;
}
.price-head::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: #1a73e8;
  border-radius: 3px;
}
.price-head .price-bgn {
  font-size: 24px;
  font-weight: 700;
  color: #1a73e8;
  margin: 0;
}
.price-head .price-note {
  margin-top: 6px;
  color: #555;
  font-size: 14px;
}


/* вече имаш тези, но оставям за контекст: */
.subscribe-block{
  margin: 16px auto;
  padding:12px;
  background:#f8fbff;
  border:1px solid #c8defe;
  border-radius:10px;
  text-align:center;
}

.subscribe-block .cta-btn.secondary{ width:100%; max-width:380px; margin:0 auto; }

/* уеднаквяване на височини за primary/secondary – от предишния ни стил */
.cta-btn.secondary {
  display:inline-block; background:#fff; color:#0084ff !important;
  border:1px solid #0084ff; padding:10px 18px; font-weight:700;
  cursor:pointer; text-decoration:none; border-radius:10px;
  transition:transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
}
.cta-btn.secondary:hover { background:#e8f0fe; transform:translateY(-1px); }
.cta-btn.secondary:active { transform:translateY(0); }



.mini-trust-strip{
    max-width: 700px;
    margin: 0px auto;
    padding: 0;

    overflow: hidden;
}

.mini-trust-item{
    display: flex;
    align-items: center;
    gap: 10px;

    padding: 10px 12px;

    font-size: 14px;
    font-weight: 600;
    color: #111827;
    line-height: 1;
}

.mini-trust-item i{
    font-size: 16px;
    color: #0b74ff;
    min-width: 18px;
}

@media (min-width: 520px){
    .mini-trust-strip{
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 519px){
    .mini-trust-strip{
        margin-left: 12px;
        margin-right: 12px;
    }

    .mini-trust-item{
        justify-content: center;
        text-align: center;
    }

    .mini-trust-item span{
        display: inline-block;
    }
}



.offer-benefits-card{
    max-width: 700px;
    margin: 14px auto 18px;
    padding: 0 12px;
}

.offer-benefits-card-inner{
    background: #f7fbff;                 /* като CTA контейнера */
    border: 1px solid rgba(11,116,255,0.22);
    border-radius: 14px;
    padding: 16px 14px 12px;
}

.offer-benefits-title{
    font-size: 15px;
    font-weight: 800;
    color: #111827;
    text-align: center;
    margin-bottom: 12px;
}

.offer-benefits-grid{
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.offer-benefit{
    display: flex;
    gap: 10px;
    align-items: flex-start;

    background: #ffffff;
    border: 1px solid rgba(17,24,39,0.08);
    border-radius: 12px;
    padding: 12px 12px;
}

.offer-benefit i{
    color: #0b74ff;
    font-size: 18px;
    min-width: 20px;
    margin-top: 1px;
}

.offer-benefit-strong{
    font-size: 13.5px;
    font-weight: 700;
    color: #111827;
    line-height: 1.2;
}

.offer-benefit-sub{
    font-size: 12.5px;
    color: #6b7280;
    margin-top: 2px;
    line-height: 1.35;
}

.offer-benefits-footnote{
    text-align: center;
    font-size: 12px;
    color: #6b7280;
    margin-top: 10px;
}

/* Desktop: 2x2, но с комфорт */
@media (min-width: 665px){
    .offer-benefits-grid{
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
}


.purchase-steps-card{
    max-width: 1000px;
    margin: 18px auto 22px;
    padding: 0 12px;
}

.purchase-steps-inner{
    width: 100%;
    background: #f5f9ff;
    border: 1px solid rgba(17,24,39,0.08);
    border-radius: 16px;
    padding: 16px 14px 14px;
}

.purchase-steps-title{
    text-align: center;
    font-size: 16px;
    font-weight: 800;
    color: #111827;
    margin-bottom: 14px;
}

.purchase-steps-list{
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;   /* mobile: 100% */
    gap: 12px;
    justify-items: stretch;
}

.purchase-step{
    width: 100%;
    box-sizing: border-box;

    display: flex;
    gap: 12px;
    align-items: flex-start;

    background: #ffffff; 
    border: 1px solid rgba(17,24,39,0.08);
    border-radius: 14px;
    padding: 14px 14px;

    box-shadow: 0 10px 22px rgba(17,24,39,0.06);
}

.purchase-step-num{
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: #0b74ff;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;

    box-shadow: 0 8px 18px rgba(11,116,255,0.18);
}

.purchase-step-text{
    flex: 1;
    min-width: 0;  
}

.purchase-step-text strong{
    display: block;
    font-size: 14px;
    font-weight: 800;
    color: #111827;
    margin-bottom: 3px;
    line-height: 1.2;
}

.purchase-step-text span{
    display: block;
    font-size: 12.8px;
    color: #6b7280;
    line-height: 1.35;
}

.purchase-steps-footnote{
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(17,24,39,0.06);
    text-align: center;
    font-size: 12.5px;
    color: #6b7280;
}

/* FORCE MOBILE: always stacked */
@media (max-width: 739px){
  .purchase-steps-card .purchase-steps-inner .purchase-steps-list{
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 12px !important;
  }

  .purchase-steps-card .purchase-steps-inner .purchase-steps-list .purchase-step{
    width: 100% !important;
  }
}

/* DESKTOP: 2 columns grid */
@media (min-width: 740px){
  .purchase-steps-card .purchase-steps-inner .purchase-steps-list{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    gap: 14px !important;
  }
}



.case-carousel{
  max-width: 900px;
  margin: 22px auto 28px;
  padding: 0 12px;
}

.case-carousel-head{
  text-align: center;
  margin-bottom: 14px;
}

.case-carousel-title{
  font-size: 16px;
  font-weight: 800;
  color: #111827;
  margin: 0 0 4px;
}

.case-carousel-sub{
  font-size: 12.8px;
  color: #6b7280;
  margin: 0;
}

/* Shell with arrows */
.case-carousel-shell{
  position: relative;
}

.case-nav{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;

  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 1px solid rgba(17,24,39,0.10);
  background: rgba(255,255,255,0.92);
  box-shadow: 0 10px 22px rgba(17,24,39,0.10);

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 22px;
  line-height: 1;
  color: #111827;
  cursor: pointer;
}

.case-nav-prev{ left: -6px; }
.case-nav-next{ right: -6px; }

.case-carousel-viewport{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  padding: 6px 0;
}

.case-carousel-track{
  display: grid;
  grid-auto-flow: column;
  gap: 14px;

  /* Mobile: 1 card per view */
  grid-auto-columns: 80%;
}

/* Card */
.case-card{
  scroll-snap-align: center;
  background: #ffffff;
  border: 1px solid rgba(17,24,39,0.08);
  border-radius: 16px;
  overflow: hidden;
}

.case-card-top{
  padding: 10px 12px;
  font-size: 12.5px;
  font-weight: 600;
  color: #4b5563;
  background: #f9fafb;
  border-bottom: 1px solid rgba(17,24,39,0.06);
}

/* Един и същ markup, различен layout по breakpoint */
.case-media{
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr; /* mobile: stacked */
}

.case-shot{
  margin: 0;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(17,24,39,0.06);
  aspect-ratio: 1 / 1;  /* mobile: квадрат */
}

.case-shot img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.case-label{
  position: absolute;
  left: 8px;
  bottom: 8px;
  background: rgba(17,24,39,0.72);
  color: #ffffff;
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 999px;
}

/* Desktop: 2 колони + по-широк кадър */
@media (min-width: 500px){
  .case-carousel-track{
    grid-auto-columns: minmax(300px, 1fr);
  }    
    
  .case-media{
    grid-template-columns: 1fr 1fr; /* desktop: side-by-side */
  }

  .case-shot{
    aspect-ratio: 12 / 10; /* desktop: по-естетично */
  }
}


.case-card-media{
  padding: 10px;
}

.case-card-line{
  padding: 8px 12px 0;
  font-size: 12.8px;
  font-weight: 700;
  color: #111827;
}

.case-card-micro{
  padding: 6px 12px 12px;
  font-size: 12px;
  color: #6b7280;
}


.final-cta{
  padding: 34px 12px 44px;
  text-align: center;
}

.final-cta-inner{
  max-width: 720px;
  margin: 0 auto;
}

.final-cta-title{
  font-size: 18px;
  font-weight: 900;
  color: #111827;
  line-height: 1.2;
  margin: 0 0 10px;
}

.final-cta-sub{
  font-size: 13.5px;
  color: #6b7280;
  line-height: 1.45;
  margin: 0 0 16px;
}

.final-cta-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 18px;
  border-radius: 10px;
  border: 0;
  cursor: pointer;
  font-weight: 800;
  font-size: 14px;

  /* важно: направи го същия като sticky CTA */
  background: #0b74ff;
  color: #ffffff;
}

.final-cta-btn:active{
  transform: translateY(1px);
}

.final-cta-micro{
  margin-top: 10px;
  font-size: 12.5px;
  color: #6b7280;
}

/* малко повече въздух на desktop */
@media (min-width: 768px){
  .final-cta{ padding: 46px 12px 58px; }
  .final-cta-title{ font-size: 20px; }
}




.sold-card {
  background-color: #f9f9f9;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
  text-align: center;
  padding-bottom: 10px;
}

.sold-card img {
  width: 100%;
  height: auto;
  border-bottom: 1px solid #eee;
}

.sold-card .sold-info {
  padding: 10px;
}

.sold-card .sold-info p {
  margin: 0;
  font-size: 14px;
  color: #333;
  font-weight: 500;
}

.sold-card .sold-info strong {
  display: block;
  margin-top: 0.3em;
  font-size: 1.2em;
  color: #1a73e8;
}

.sold-info .info-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 5px;
}

.sold-info .info-row span {
  display: flex;
  align-items: center;
  font-size: 14px;
}


.sold-info .info-row i,
.sold-info .info-row img {
  margin-right: 5px;
  width: 16px;
  height: 16px;
}




.cta-section h2 {
    font-size: 24px;
    margin-bottom: 15px;
    color: #222;
}

.cta-subtext {
    font-size: 16px;
    color: #555;
    margin-bottom: 10px;
}

.cta-highlight {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
    color: #000;
}

.cta-buttons {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
}

.cta-btn {
    padding: 12px 24px;
    border-radius: 6px;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    font-size: 16px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background 0.3s ease;
}

.cta-btn.messenger {
    background: #0084FF;
}

.cta-btn.messenger:hover {
    background: #006fd4;
}

.cta-btn.phone {
    background: #1e293b;
}

.cta-btn.phone:hover {
    background: #111827;
}



/* блокиране на скрол при отворен модал */
.no-scroll {
  overflow: hidden;
}

/* контейнер */
.modal.offer-modal {
  position: fixed;
  z-index: 1000;
  display: flex; /* центрира диалога */
  align-items: flex-start;
  justify-content: center;
  padding: 32px 16px; 
  overflow: auto; /* скрол на overlay при дълго съдържание */
}

/* скрито състояние (контролира се с hidden атрибут в HTML) */
.modal[hidden] {
  display: none;
}

/* backdrop */
.modal-backdrop {
  position: absolute;
  background: rgba(0, 0, 0, 0.6);
}

/* диалог */
.modal-dialog {
  position: relative;
  box-sizing: border-box;
  max-width: 520px;
  max-height: calc(100vh - 32px);
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  transform: translateY(10px);
  opacity: 0;
  transition: transform 160ms ease, opacity 160ms ease;
}

/* малки екрани – по-близо до ръбовете */
@media (max-width: 480px) {
  .modal-dialog {
    margin: 24px 12px;
    border-radius: 8px;
  }
}

/* показване (когато модалът е видим) */
.modal.offer-modal:not([hidden]) .modal-dialog {
  transform: translateY(0);
  opacity: 1;
}

/* header */
.modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-bottom: 1px solid #eee;
}

.modal-title {
  margin: 0;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 600;
}

/* бутон за затваряне */
.modal-close {
  appearance: none;
  border: 0;
  background: transparent;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  padding: 6px;
  margin: -6px;
  opacity: 0.7;
}
.modal-close:hover { opacity: 1; }

/* body */
.modal-body {
  padding: 16px 18px 8px;
}

.offer-body .offer-sub {
  margin: 0 0 12px;
  color: #444;
  font-size: 14px;
}

/* форма */
#leadForm {
  display: grid;
  gap: 10px;
}

/* въпрос + pills */
.offer-question {
  margin: 8px 0 4px;
  font-weight: 500;
}


.pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #ddd;
  border-radius: 999px;
  padding: 6px 10px;
  cursor: pointer;
  user-select: none;
  font-size: 14px;
  background: #fff;
}

/* ===== Center both the intent and channel pills ===== */
.intent-pills,
.channel-pills {
  display: flex;
  justify-content: center;   /* horizontally center pills */
  flex-wrap: wrap;
  gap: 8px;
  margin: 6px 0 10px;
}


/* контактни полета според канал */
.contact-field[hidden] {
  display: none;
}

/* текстови полета */
.offer-body input[type="text"],
.offer-body input[type="tel"],
.offer-body input[type="email"] {
  width: 100%;
  box-sizing: border-box;
  height: 42px;
  padding: 10px 12px;
  border: 1px solid #ddd;
  border-radius: 8px;
  font-size: 14px;
  outline: none;
  transition: border-color 120ms ease, box-shadow 120ms ease;
}
.offer-body input[type="text"]:focus,
.offer-body input[type="tel"]:focus,
.offer-body input[type="email"]:focus {
  border-color: #bbb;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
}

/* ===== Fix spacing for the checkbox label ===== */
.offer-optin {
  display: inline-flex;
  align-items: center;
  gap: 4px;             /* tighter spacing between box + text */
  font-size: 14px;
  user-select: none;
  margin: 6px 0 4px;    /* smaller vertical spacing */
  line-height: 1.3;
}
.offer-optin input[type="checkbox"] {
  flex-shrink: 0;       /* prevent it from stretching */
  width: 15px;
  height: 15px;
  margin: 0;            /* remove any default margin */
}


/* give the budget field spacing above/below */
#leadBudget { margin: 6px 0 12px; }

.pre-form-block { margin-bottom: 12px; }

/* footer */
.modal-footer {
  display: flex;
  justify-content: flex-end;
  padding-top: 6px;
}

.offer-btn {
  width: 100%;
  height: 42px;
}

/* мини текст и тост */
.offer-mini, .sub-desc {
  margin: 10px 0 0;
  font-size: 12px;
  color: #666;
}


/* дребни уточнения за съвместимост с глобалните бутон класове */
.btn.offer-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  text-align: center;
  white-space: nowrap;
}


/* 📱 Mobile Adjustments */
@media (max-width: 500px) {
    
    .vehicle-damage-section {
        flex-direction: column; 
    }
    
    .damage-left, .damage-right {
        text-align: center;
        width: 100%; 
    }
    
    .vehicle-icons-row {
        grid-template-columns: repeat(2, 1fr);
    }       

    #bid-now-button, #buy-now-button {
        width: 80%;
    }
    
    .sold-card .sold-info strong {
        display: block;
        margin-top: 6px;
        font-size: 1em;
        color: #1a73e8;
    }
    
  .sticky-offer{
    position:sticky; bottom:12px; z-index:30;
  }
}




.vehicle-icons-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px 18px;
  align-items:center;

  font-size:14px;
  font-weight:600;
  color:#0f172a;
}


.vehicle-icons-row p{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  line-height:1;
  white-space:nowrap;
}

.vehicle-icons-row .engine-icon{
  width:18px !important;
  height:18px !important;
  max-width:18px !important;
  max-height:18px !important;
  flex: 0 0 16px;
  display:inline-block !important;
  object-fit:contain;
  vertical-align:middle;
  opacity:.75;
}


/* -------------------------------------------
// HOW TO BID PAGE STYLING
------------------------------------------- */


/* Scope everything to this page */
.how-to-bid {
    max-width: 900px;
    margin: 0 auto;
    padding: 20px;
}


.how-to-bid a {
    text-decoration: none; /* Remove default underline */
    font-weight: bold;
    color: #1877f2; /* Facebook blue */
    transition: color 0.3s ease-in-out;
}

.how-to-bid a:hover {
    color: #145dbf; /* Slightly darker blue on hover */
    text-decoration: underline;
}

/* Add icon spacing */
.how-to-bid a i {
    margin-right: 5px;
}


/* Page Header */
.htb-header {
    text-align: center;
    margin-bottom: 30px;
}

/* Remove the blue line above sections */
.how-to-bid .htb-step {
    border-top: none !important;
}

/* Section Styling */
.htb-step {
    margin-bottom: 30px;
    padding: 20px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Lists */
.htb-step ul,
.htb-step ol {
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 25px;
    line-height: 1.6;
}

.htb-step li {
    margin-bottom: 8px;
}

/* Buttons */
.htb-btn {
    display: block;
    max-width: 280px;
    margin: 15px auto;
    padding: 12px 20px;
    font-size: 1.1em;
    text-align: center;
    border-radius: 5px;
    background-color: #1877f2;
    color: white;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.htb-btn:hover {
    background-color: #145dbf;
}

/* Headings & Paragraph Spacing */
.htb-step h2 {
    margin-bottom: 12px;
}

.htb-step p {
    margin-bottom: 10px;
}

/* Icons & Headings */
.htb-step h2 i {
    margin-right: 8px;
}






/* -------------------------------------------
// DEPOSIT FORM PAGE STYLING
------------------------------------------- */


/* ✅ Scope styles to deposit page only */
.deposit-page {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
}

/* Remove the blue line above sections */
.deposit-page .deposit-form {
    border-top: none !important;
}

/* Header */
.deposit-header {
    text-align: center;
    margin-bottom: 30px;
}

/* Form Section */
.deposit-form {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Labels & Inputs */
.deposit-form label {
    font-weight: bold;
    margin-top: 10px;
    display: block;
}

.deposit-form input {
    width: 100%;
    padding: 10px;
    margin-top: 5px;
    border: 1px solid #ccc;
    border-radius: 5px;
}




/* Success & Error Messages */
.success {
    color: green;
    font-weight: bold;
}

.error {
    color: red;
    font-weight: bold;
}

/* Info Text */
.info-text {
    background: #f8f9fa;
    padding: 10px;
    border-left: 4px solid #007bff;
    font-size: 0.9em;
    margin-top: 10px;
}

/* Hidden Elements */
.hidden {
    display: none;
}


/* Toggle Switch Container */
.toggle-container {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0;
    font-weight: bold;
}

/* Toggle Switch */
.toggle-switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 24px;
}

.toggle-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.3s;
    border-radius: 24px;
}

.slider::before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 4px;
    bottom: 3px;
    background-color: white;
    transition: 0.3s;
    border-radius: 50%;
}

input:checked + .slider {
    background-color: #1877f2;
}

input:checked + .slider::before {
    transform: translateX(26px);
}

/* Round Style */
.slider.round {
    border-radius: 34px;
}


/* Input Group Wrapper */
.input-group {
    position: relative;
    width: 100%;
    margin-bottom: 15px;
}

/* Input Field */
.input-group input {
    width: 100%;
    padding: 10px 40px; /* More padding for icon */
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 16px;
}

/* Icon inside Input */
.input-group i {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
    font-size: 16px;
}


/* Align checkbox and text perfectly */
.checkbox-container {
    display: flex;
    align-items: center;
    gap: 12px; /* Adjust spacing between text and checkbox */
    font-weight: bold;
    font-size: 16px;
}

/* Fix checkbox alignment */
.checkbox-container input[type="checkbox"] {
    width: 18px;
    height: 18px;
    transform: translateY(3px);
    cursor: pointer;
}

/* Adjust text to match checkbox position */
.checkbox-label {
    line-height: 18px; /* Match checkbox height */
}







/* -------------------------------------------
// BUYER DASHBOARD PAGE STYLING
------------------------------------------- */

/* Dashboard Header */
.dashboard-header {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
}


.account-container a {
    text-decoration: none;
    padding: 10px 15px;
    border-radius: 5px;
    font-weight: bold;
}


/* Tab Navigation */
.button-container {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 10px;
}

/* Center the section titles */
.tab-content {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    display: none;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 5px;
    max-width: 90%;
}


.tab-button {
    padding: 10px 15px;
    border: none;
    border-radius: 5px;
    font-weight: bold;
    cursor: pointer;
}

.tab-button.active {
    background-color: #1877f2;
    color: white;
}


.tab-content.active {
    display: block;
}


/* Success Message */
.success-message {
    color: green;
    font-weight: bold;
    margin-top: 10px;
}

.hidden {
    display: none;
}

/* Deposit Buttons: Keep aligned and responsive */
.deposit-buttons {
    display: flex;
    gap: 10px; /* Space between buttons */
    justify-content: center; /* Center buttons */
    align-items: center; /* Align vertically */
    flex-wrap: wrap; /* Stack on small screens */
    margin-top: 10px;
}

/* Ensure buttons are properly sized */
.deposit-buttons button {
    padding: 10px 20px;
    font-size: 16px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    border-radius: 5px;
    text-align: center;
    flex-grow: 1; /* Make them take equal space */
    max-width: 200px; /* Prevent overly stretched buttons */
    min-width: 150px; /* Ensure buttons remain readable */
}

.btn-secondary {
    background-color: #ffc107;
    color: black;
}

/* Stack buttons on smaller screens */
@media (max-width: 500px) {
    .deposit-buttons {
        flex-direction: column; /* Stack buttons */
    }

    .deposit-buttons button {
        width: 100%; /* Full width on small screens */
    }
}


/* 📜 Contract Box */
.contract-box {
    background: #f8f9fa;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    text-align: center;
    margin-bottom: 15px;
}

.contract-box h4 {
    margin-bottom: 10px;
}

.contract-link {
    font-size: 16px;
    font-weight: bold;
    color: #1877f2;
    text-decoration: none;
}

.contract-link:hover {
    text-decoration: underline;
}

.contract-actions-row {
    display: none;
    align-items: center;
    gap: 10px;
    margin-top: 12px;
    width: 100%;
    flex-wrap: nowrap;
}

/* override global styles that force full-width/block */
.contract-actions-row .btn {
    width: auto !important;
    display: inline-flex !important;
    white-space: nowrap;
}

.contract-actions-row #contract-email-inline {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 220px;
    display: inline-block !important;
    margin: 0 !important;
}

.contract-actions-row .contract-inline-status {
    white-space: nowrap;
}

.contract-actions-row .contract-inline-status {
    flex: 0 0 100%;
    margin-left: 0;
    margin-top: 6px;
}




.modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.modal-box {
    background: #fff;
    width: 100%;
    max-width: 480px;
    border-radius: 8px;
    padding: 20px;
}

.modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-header h2 {
    margin: 0;
    color: #1877f2;
}

.modal-close {
    background: none;
    border: none;
    font-size: 22px;
    cursor: pointer;
}

.modal-box label {
    display: block;
    margin-top: 15px;
    font-weight: bold;
}

.modal-box input {
    width: 100%;
    padding: 10px;
    margin-top: 6px;
}

.modal-actions {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}



/* 📄 Invoice List */
.invoice-list {
    list-style: none;
    padding: 0;
}

.invoice-list li {
    background: #fff;
    padding: 10px;
    border: 1px solid #ddd;
    margin-bottom: 5px;
    border-radius: 5px;
}

.invoice-list li a {
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    color: #1877f2;
}

.invoice-list li span {
    float: right;
    font-weight: bold;
}

/* 🚗 Car Tables */
.car-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.car-table th, .car-table td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: center;
}

.car-table th {
    background: #f8f9fa;
    font-weight: bold;
}

/* ℹ️ No Data Message */
.no-data {
    text-align: center;
    font-style: italic;
    color: #888;
    margin-top: 10px;
}


/* 📄 Invoice List Styling */
.invoice-list {
    list-style: none;
    padding: 0;
}

.invoice-list li {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 10px;
    border: 1px solid #ddd;
    margin-bottom: 5px;
    border-radius: 5px;
}

/* 📅 Invoice Date (Left Side) */
.invoice-date {
    color: #555;
    margin-right: 15px; /* Space between date and invoice */
}

/* Invoice Links */
.invoice-list li a {
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    color: #1877f2;
    flex-grow: 1; /* Allow text to take remaining space */
}

/* Invoice Amount (Right Side) */
.invoice-list li span {
    color: #333;
}


/* Car Table Styling */
.car-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.car-table th, .car-table td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: center;
}

.car-table th {
    background: #f8f9fa;
    font-weight: bold;
}

/* Action Buttons */
button {
    padding: 5px 10px;
    font-size: 14px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

/* Specific Button Styles */
.btn-link {
    background-color: #007bff;
    color: white;
}

.btn-remove {
    background-color: #dc3545;
    color: white;
}

.btn-update {
    background-color: #ffc107;
    color: black;
}

.btn-cancel {
    background-color: #6c757d;
    color: white;
}

/* Button Hover Effects */
button:hover {
    opacity: 0.8;
}


/* 🚗 Default Table Style */
.car-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.car-table th, .car-table td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: center;
}

.car-table th {
    background: #f8f9fa;
    font-weight: bold;
}

/* 📱 Mobile View: Convert Table to Vertical Layout */
@media (max-width: 500px) {
    .car-table-wrapper {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .car-table thead {
        display: none; /* Hide table headers */
    }

    .car-table tbody {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .car-table tr {
        display: flex;
        flex-direction: column;
        padding: 15px;
        border: 1px solid #ddd;
        background: #fff;
        border-radius: 5px;
        box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
        position: relative;
    }

    .car-table td {
        display: flex;
        justify-content: space-between;
        padding: 0.5em 3em;
        font-size: 14px;
    }

    .car-table td:before {
        content: attr(data-label);
        font-weight: bold;
        color: #555;
    }


    .car-table td button {
        padding: 0.5em 1.5em;
        font-size: 14px;
    }

}
















/* -------------------------------------------
// AVAILABLE CAR LANDING PAGE STYLING
------------------------------------------- */


/* Title Section */
#vehicle-details-container .title-section {
    text-align: center;
    padding: 20px 0;
    background-color: #f4f4f4;
    margin-bottom: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

#vehicle-details-container .vehicle-title {
    font-size: 2.5rem;
    font-weight: bold;
    margin: 0;
    color: #333;
}



/* Toggle Sections */
#vehicle-details-container .toggle-sections {
    margin-top: 20px;
}

/* Toggle Sections */
#vehicle-details-container .toggle-section {
    margin-bottom: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    overflow: hidden;
    background: #fff;
    transition: all 0.3s ease;
}

#vehicle-details-container .toggle-title {
    font-size: 1.2rem;
    background-color: #f9f9f9;
    color: #333;
    padding: 10px 15px;
    margin: 0;
    cursor: pointer;
    user-select: none;
    border-bottom: 1px solid #ddd;
    position: relative; /* For positioning the arrow icon */
}

#vehicle-details-container .toggle-title::after {
    content: "\25BC"; /* Downward arrow */
    font-size: 1rem;
    color: #333;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}

#vehicle-details-container .toggle-section.open .toggle-title::after {
    content: "\25B2"; /* Upward arrow */
    transform: translateY(-50%) rotate(180deg); /* Rotates the arrow */
}

#vehicle-details-container .toggle-content {
    padding: 15px;
    display: none; /* Initially hidden */
    font-size: 1rem;
    color: #333;
    background: #f9f9f9;
    line-height: 1.5;
    animation: fadeIn 0.3s ease-in-out;
    justify-content: center;
    align-items: center;
}


#vehicle-details-container .tech-parameters {
    display: flex;
    justify-content: center; /* Center the columns horizontally */
    align-items: center; /* Center the content vertically */
    gap: 3rem; /* Space between left and right columns */
}

#vehicle-details-container .tech-column {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Space between items in each column */
    align-items: flex-start; /* Align items inside each column */
}

#vehicle-details-container .tech-item {
    display: flex;
    align-items: center;
    gap: 8px; /* Space between icon and text */
    font-size: 1rem;
}


/* Extras Section Styling */
#vehicle-details-container .extras-list , .info-list , .pricing-list {
    list-style: none; /* Remove default bullet points */
    padding: 0;       /* Remove default padding */
    margin: 0;        /* Remove default margin */
    display: flex;
    flex-direction: column;
    gap: 10px;        /* Add space between list items */
}

/* Center the Heading Text */
.contact-heading {
    text-align: center;
    font-weight: bold; /* Bold text */
    margin-bottom: 15px; /* Add space below the heading */
    font-size: 1.1rem;
}

/* Center the Contact Row */
.contact-row {
    display: flex;
    justify-content: center; /* Center the Messenger and Phone */
    align-items: center;     /* Align icons and text vertically */
    gap: 50px;               /* Add space between Messenger and Phone */
}

/* Individual Contact Item */
.contact-item {
    display: flex;
    align-items: center; /* Align icon and text vertically */
    gap: 8px;            /* Space between icon and text */
    font-size: 1rem;
}

/* Icon Styling */
.contact-item i {
    font-size: 1.5rem;   /* Larger icon size for emphasis */
    color: #007bff;      /* Blue color to match the links */
}

/* Link Styling */
.contact-item a {
    color: #007bff;       /* Match icon color */
    text-decoration: none; /* Remove underline */
    font-weight: bold;     /* Bold links for emphasis */
}

.contact-item a:hover {
    text-decoration: underline; /* Add underline on hover */
    color: #0056b3;             /* Slightly darker blue on hover */
}

/* Responsive Adjustment */
@media (max-width: 400px) {
    .contact-row {
        flex-direction: column; /* Stack items vertically on small screens */
        gap: 15px;              /* Reduce space between items */
    }

    .contact-heading {
        font-size: 1rem; /* Adjust heading size for smaller screens */
    }
}


#vehicle-details-container .toggle-section.open .toggle-content {
    display: block; /* Show when section is open */
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}



/* General Adjustments for Responsiveness */
#vehicle-details-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px;
}

@media (max-width: 768px) {
    #vehicle-details-container .vehicle-title {
        font-size: 2rem;
    }

    #vehicle-details-container .toggle-title {
        font-size: 1rem;
        padding: 8px 12px;
    }

    #vehicle-details-container .toggle-content {
        font-size: 0.9rem;
    }

    #vehicle-details-container .swiper-button-prev,
    #vehicle-details-container .swiper-button-next {
        width: 35px;
        height: 35px;
        font-size: 0.9rem;
    }
}










/* -------------------------------------------
// PARTNERS PROGRAM STYLING
------------------------------------------- */

h1.page-title {
    text-align: center;
    padding: 20px 0;
    color: #1877f2;
    font-size: 2em;
}

.section {
    background-color: #fff;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

.section-title {
    text-align: center;
    color: #333;
    margin-bottom: 20px;
    font-size: 1.5em;
}

.content h3 {
    color: #1877f2;
    margin-top: 20px;
    margin-bottom: 10px;
    font-size: 1.3em;
}

ul {
    padding-left: 20px;
    margin-bottom: 20px;
}

ul li {
    margin-bottom: 10px;
}

.highlight {
    text-decoration: underline;
    font-weight: bold;
}

.example::before {
    content: "💡 ";
    font-weight: bold;
    color: #1877f2;
}


/* Call to Action */
.join-button {
    text-align: center;
    margin-top: 20px;
}

.join-button a {
    display: inline-block;
    padding: 10px 20px;
    background-color: #1877f2; /* Facebook blue for primary actions */
    color: white;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.join-button a:hover {
    background-color: #145dbf; /* Slightly darker blue for hover */
}


/* Responsiveness */
@media (max-width: 768px) {
    .join-button a {
        padding: 8px 16px; /* Adjust padding for smaller screens */
    }
}


.car-gallery {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-top: 20px;
}
.car-item {
  flex: 1;
  text-align: center;
}

/* Responsive for screens smaller than 768px */
@media (max-width: 768px) {
  .car-gallery {
    flex-direction: column;
    align-items: center;
  }

  .car-item {
    width: 80%;
    margin: 0 auto;
  }
}










/* -------------------------------------------
// MY OFFERS STYLING
------------------------------------------- */


/* My Offers – section header */
.my-offers .offers-section {
    padding-top: 1rem;
}

#offers {margin-left: 2rem; margin-right: 2rem;}

.my-offers .section-header {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
}

.my-offers .section-title {
    font-size: 1.4rem;
    font-weight: 700;
    text-align: center;
    margin: 0.25rem 0 0;
}

.my-offers .section-meta {
    font-size: 0.9rem;
    color: #6b7280; /* soft gray */
}

.my-offers .section-hint {
    font-size: 0.9rem;
    color: #6b7280;
    text-align: center;
    margin: 0.25rem 0 0.75rem;
    padding: 0 1rem;
}


/* Page header */
.offers-header {
  margin: 12px 0 10px;
  text-align: center;
}

/* Top row: note + Смени, centered with a line under */
.top-note {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px 8px;
  font-size: 0.9rem;
  color: #555;
  margin: 0 auto;
}

.top-note-text {
  display: block;
}

/* "Смени" – small spacing from text, not at hard edge */
.link {
  margin-left: 4px;
  color: #1877f2;
  text-decoration: underline;
  cursor: pointer;
}

/* Guest intro title styling */
.guest-intro .guest-title {
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 14px;
  margin-top: 4px;
  display: block;
}



/* Guest (no-identity) intro + centering */
.guest-intro { text-align: center; margin-bottom: 12px; }
.guest-intro p { margin: 6px 0; }
.identity-switcher.show { display: block; } /* ensure visible when JS opens it */
.identity-switcher { display: none; }       /* keep hidden by default */


/* Identity switcher panel (match light cards) */
.panel {
  background:#fff;
  padding:14px;
  box-shadow: 0 2px 5px rgba(0,0,0,.08);
}
.identity-switcher { margin-bottom: 12px; }
.panel.empty { box-shadow:none; border-color:#eee; }
.row { display:flex; gap:8px; flex-wrap:wrap; }

/* Inputs – reuse site form feel */
.input {
  flex:1 1 240px;
  background:#fff;
  border:1px solid #ccc;
  color:#222;
  border-radius:6px;
  padding:10px 12px;
}
.input:focus {
  outline: none;
  border-color:#145dbf;
  box-shadow: 0 0 0 3px rgba(24,119,242,.15);
}

#saveId {
  flex: 1 1 100%;
}


/* Buttons – use your primary for main CTA */
.btn { /* keep as generic helper if you need it for Save */
  background:#1877f2; color:#fff; border:0;  text-decoration: none; border-radius:6px; padding:10px 14px; font-weight:700; cursor:pointer;
}
.btn-secondary { background:#f8f9fa; color:#111; border:1px solid #ddd; }

/* Alerts – align to your .message style */
.alert { 
  background:#f8f9fa; text-align: center; border:1px solid #ddd; color:#111; border-radius:6px; padding:10px; margin:12px 0;
}
.message.info { background:#f8f9fa; color:#0f172a; border:1px solid #ddd; }

/* Grid */
.offers-grid{ display:grid; grid-template-columns:repeat(1,minmax(0,1fr)); gap:14px;}

/* Offer card – mirror .vehicle-card/.vehicle-container */
.offer-card{
  background:#fff; border:1px solid #ddd; border-radius:10px; overflow:hidden;
  box-shadow:0 2px 5px rgba(0,0,0,.08);
}

.offer-thumb {
  max-height: 40vh;
  width: 90%;              /* smaller width */
  margin: 12px auto 12px;  /* centers the image + spacing top/bottom */
  display: block;          /* needed for margin auto */
  object-fit: cover;
  background: #f6f6f6;
  border-radius: 8px;      /* optional, looks better */
}

.offer-body{ padding:12px 14px;}
.offer-top{ display:flex; justify-content:space-between; gap:8px; align-items:flex-start; }
.offer-title{ font-weight:700; line-height:1.2; }
.cta{ display:flex; justify-content:space-between; align-items:center; margin-top:12px; }

/* Badges – softer, light-theme */
.badge{ font-size:.78rem; font-weight:700; border-radius:999px; padding:4px 10px; white-space:nowrap; border:1px solid transparent; }
.badge--pending{ background:#eef2f7; color:#374151; border-color:#e5e7eb; }
.badge--ready{ background:#e8f7ed; color:#166534; border-color:#cde9d6; }
.badge--ordered{ background:#eaf2ff; color:#1E40AF; border-color:#d6e4ff; }
.badge--progress{ background:#fdf4dc; color:#92400E; border-color:#f6e7bc; }

/* Loading shimmer – light */
.shimmer{ position:relative; overflow:hidden; background:#fff; border:1px solid #eee; border-radius:10px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.shimmer::after{ content:""; position:absolute; inset:0; transform:translateX(-100%); 
  background:linear-gradient(90deg, transparent, rgba(0,0,0,.04), transparent); animation:sh 1.2s infinite; }
@keyframes sh{ to{ transform: translateX(100%); } }
.s-thumb{ height:160px; background:#f3f4f6; }
.s-lines{ padding:12px; }
.s-line{ height:12px; background:#f3f4f6; border-radius:8px; margin:10px 0; }

/* Empty state */
.empty {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center; 
  justify-content: center;
  text-align: center;
  min-height: 40vh;
}


.empty .btn {
  margin-top: 5vh;
  background: #1877f2;
  min-width: 200px;
  
}


.carousel-track::-webkit-scrollbar {
    display: none;               /* Chrome, Safari */
}
.carousel-wrapper {
    overflow: hidden; /* hides the bar */
}



.lead-calc-title {
    text-align: center;
    margin-bottom: 10px;
}

.lead-calc-title-total {
    font-size: 2rem;
    font-weight: 800;
    color: #1a8cff;
    background: #fff;
    padding: 12px;
    border-radius: 12px;
    display: inline-block;
    margin-top: 16px;
    box-shadow: 0px 2px 8px rgba(0,0,0,0.08);
}



/* -------------------------------------------
   SALES DASHBOARD STYLING
------------------------------------------- */


/* -----------------------------
   Layout wrapper
----------------------------- */

.sales-dashboard {
    max-width: 1000px;
    margin: 0 auto;
    box-sizing: border-box;
    font-family: inherit;
}

/* -----------------------------
   Header / Metrics
----------------------------- */

.sales-dashboard-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin: 24px 0;
}

.sales-dashboard-title h1 {
    margin: 0 0 4px 0;
    font-size: 26px;
    line-height: 1.2;
}

.sales-dashboard-title .subtitle {
    margin: 0;
    font-size: 14px;
    color: #666;
}

.sales-dashboard-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(120px, 1fr));
    gap: 12px;
    min-width: 320px;
}

.metric-card {
    background-color: #ffffff;
    border-radius: 6px;
    padding: 10px 12px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    border: 1px solid #e4e7ec;
    box-sizing: border-box;
}

.metric-label {
    font-size: 12px;
    color: #777;
    margin-bottom: 4px;
}

.metric-value {
    font-size: 20px;
    font-weight: 600;
}

/* -----------------------------
   Filters
----------------------------- */

.sales-dashboard-filters {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.filters-left,
.filters-right {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sales-dashboard .input-text,
.sales-dashboard .input-select {
    padding: 8px 10px;
    border-radius: 4px;
    border: 1px solid #ccd1dd;
    font-size: 14px;
    box-sizing: border-box;
}

.sales-dashboard .input-text {
    min-width: 260px;
}

/* -----------------------------
   Leads list
----------------------------- */


.lead-group-body {
    display: none;
}

.lead-group.is-open .lead-group-body {
    display: block;
}


/* ===== Grouped header as grid ===== */

.lead-group {
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 6px;
}

/* zebra rows */
.lead-group:nth-child(even) {
    background: #f7f8fb;
}
.lead-group:nth-child(odd) {
    background: #ffffff;
}

.lead-group-header-grid {
    display: grid;
    grid-template-columns:
        2fr   /* име */
        1.2fr /* град */
        1.5fr /* контакт */
        1.2fr /* бюджет */
        1fr   /* статус */
        1fr;  /* брой */
    gap: 12px;
    padding: 10px 14px;
    align-items: center;
    cursor: pointer;
}

.lg-col {
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lg-name {
    font-weight: 600;
}

.lg-budget {
    font-weight: 600;
}

.lg-count {
    font-size: 13px;
    opacity: 0.8;
}

/* Status pills (clean, not noisy) */
.lg-status {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-align: center;
    width: fit-content;
}

.lg-status.status-open,
.lg-status.status-sold {
    background: #eaf3ff;
    color: #1b5fcc;
}

.lg-status.status-pending {
    background: #fff3d9;
    color: #9c6b00;
}

.lg-status.status-in_progress {
    background: #f1eaff;
    color: #6b3fb8;
}

.lg-status.status-closed {
    background: #eeeeee;
    color: #555;
}

/* body collapse */
.lead-group-body {
    display: none;
    background: #fff;
}

.lead-group.is-open .lead-group-body {
    display: block;
}


.lead-group-header {
    padding: 10px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    background: #f7f8fb;
}

.lead-group-name {
    font-weight: 700;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lead-group-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    justify-content: flex-end;
}

.lead-badge {
    display: inline-flex;
    align-items: center;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 12px;
    border: 1px solid #ccd1dd;
    background: #fff;
    line-height: 1;
}

/* Optional: small visual distinctions */
.lead-badge.badge-contact {
    font-weight: 600;
}

.lead-badge.badge-count {
    opacity: 0.85;
}

/* Status badges (light) */
.lead-badge.badge-status {
    font-weight: 600;
}

.lead-badge.badge-status-open,
.lead-badge.badge-status-sold {
    border-color: #b8d6ff;
    background: #eaf3ff;
}

.lead-badge.badge-status-pending {
    border-color: #ffe1a8;
    background: #fff6e6;
}

.lead-badge.badge-status-in_progress {
    border-color: #d9c2ff;
    background: #f4ecff;
}

.lead-badge.badge-status-closed {
    border-color: #d6d6d6;
    background: #f2f2f2;
}



.sales-dashboard-body {
    margin-top: 8px;
}

/* Header row (table head) */

.leads-list-header-grid {
    display: grid;
    grid-template-columns:
        0.6fr   /* Last Seen */
        2.0fr   /* Name */
        1.4fr   /* City */
        1.0fr   /* Contact */
        1.4fr   /* Budget */
        1.1fr   /* Status */
        0.6fr   /* Cars */
        1.0fr;  /* Interact */
    gap: 12px;
    padding: 10px 14px;
    font-weight: 700;
    font-size: 13px;
    color: #555;
    border-bottom: 1px solid #e0e3ee;
    background: #ffffff;
}

.leads-list-header-grid .lg-col {
    font-size: 14px;
    font-weight: 600;
    color: #555;
    background: none;
    padding: 0;
    border: none;
    border-radius: 0;
    text-align: left;
}

/* keep headers aligned with body */
.leads-list-header-grid .lg-count,
.leads-list-header-grid .lg-interact {
    text-align: center;
}

.lead-input-owner-inline { max-width: 160px; }

.lg-interact {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.leads-list-header-grid .lg-count {
    color: #555;
    font-weight: 600;
}

/* Header rows for groups (JS: .lead-group-header-grid) */

.lead-group-header-grid {
    display: grid;
    grid-template-columns:
        0.6fr   /* Last Seen */
        2.0fr   /* Name */
        1.4fr   /* City */
        1.0fr   /* Contact */
        1.4fr   /* Budget */
        1.1fr   /* Status */
        0.6fr   /* Cars */
        1.0fr;  /* Interact */
    gap: 12px;
    padding: 12px 14px;
    align-items: center;
    border-bottom: 1px solid #eef1f7;
    background-color: #ffffff;
    box-sizing: border-box;
}

.lead-group:nth-child(2n) .lead-group-header-grid {
    background-color: #fafbff;
}

/* Make group header cells look like normal text by default */
.lead-group-header-grid .lg-col {
    font-size: 14px;
    color: #111;
    padding: 0;
    border: none;
    background: none;
    text-align: left;
}

/* Status pill should NOT affect header alignment */
.lead-group-header-grid .lg-status {
    text-align: left;
}

/* Cars + Interact centered */
.lead-group-header-grid .lg-count,
.lead-group-header-grid .lg-interact {
    text-align: center;
}

/* Interact button */

.lg-interact {
    text-align: center;
}

.lead-interact-btn {
    padding: 6px 12px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    background: #1877f2;
}

.lead-interact-btn:hover {
    background-color: #145dbf; /* Darker blue */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Slight shadow on hover */
}


/* Existing list spacing */

.leads-list {
    margin-top: 4px;
}

/* Empty state */
.leads-empty-state {
    padding: 20px 0;
    text-align: center;
    font-size: 14px;
    color: #777;
}

/* Lead row (detail rows inside expanded group) */
.lead-row {
    display: grid;
    grid-template-columns: 2.5fr 2.0fr 3.0fr 1.0fr;
    column-gap: 16px;
    padding: 12px 0;
    border-bottom: 1px solid #eef1f7;
    background-color: #ffffff;
    box-sizing: border-box;
}

.lead-row:nth-child(2n) {
    background-color: #fafbff;
}

.lead-col {
    font-size: 14px;
    vertical-align: top;
}

/* DESKTOP behavior */
@media (min-width: 741px) {

    .lead-group-header-grid {
        cursor: default;
    }

    .lead-interact-btn {
        cursor: pointer;
    }
}

@media (max-width: 740px) {

    /* Скриваме бутона ВИЖ */
    .lead-interact-btn {
        display: none;
    }

    /* Целият header става кликабълен */
    .lead-group-header-grid {
        cursor: pointer;
    }    

    .leads-list-header-grid {
        display: none; /* махаме table header-а */
    }

    .lead-group-header-grid {
        grid-template-columns: 1.3fr 1.3fr 0.9fr;
        grid-template-areas:
            "name    contact status"
            "city    budget  last";
        gap: 8px 10px;
        padding: 12px;
        border: 1px solid #eef1f7;
        border-radius: 10px;
        background: #fff;
    }

    .lg-name      { grid-area: name; }
    .lg-contact   { grid-area: contact; }
    .lg-status    { grid-area: status; text-align: right; }

    .lg-city      { grid-area: city; }
    .lg-budget    { grid-area: budget; font-weight: 600; }
    .lg-last-seen { 
        grid-area: last; 
        text-align: right; 
        font-size: 12px; 
        color: #666; 
    }

    .lg-count {
        display: none; /* Cars не ти трябва на mobile */
    }

    /* inputs да не toggle-ват при tap */
    .lead-group-header-grid input,
    .lead-group-header-grid select,
    .lead-group-header-grid textarea {
        cursor: text;
    }
}


/* Status colors (apply via class on <select>) */
.lead-input-status.status-pending     { background:#e8f0ff; color:#1e40af; border:1px solid #c7d2fe; }
.lead-input-status.status-open        { background:#fff7cc; color:#92400e; border:1px solid #fde68a; }
.lead-input-status.status-in_progress { background:#dcfce7; color:#065f46; border:1px solid #86efac; }
.lead-input-status.status-closed      { background:#f3f4f6; color:#374151; border:1px solid #d1d5db; }




/* -----------------------------
   Inputs (same style)
----------------------------- */

.sales-dashboard .lead-input,
.sales-dashboard .lead-input-note {
    width: 100%;
    box-sizing: border-box;
    padding: 6px 8px;
    border-radius: 4px;
    border: 1px solid #ccd1dd;
    font-size: 13px;
    font-family: inherit;
}

.sales-dashboard .lead-input-note {
    resize: vertical;
    min-height: 100px;
}

/* Name bold */
.lead-input-name {
    font-weight: 600;
}

/* City below name */
.lead-input-city {
    margin-top: 8px;
}

/* Last seen */
.lead-last-seen {
    margin: 8px 8px 0;
    font-size: 12px;
    color: #777;
}

/* -----------------------------
   Interests column
----------------------------- */

.col-interests {
    margin: auto 10px;
}

.col-interests > .lead-car {
    font-size: 16px;
    font-weight: 600;
    color: #000;    
    margin-bottom: 20px;
}


.lead-car-link:hover {
    color: #0f6dd3; 
}

.lead-selected-pricing {
    margin: 12px auto;
}

.lead-vin {
    white-space: nowrap;
    margin: 12px auto;
}

.lead-vin-link {
    cursor: pointer;
    text-decoration: none;
    font-size: 12px;
}

.lead-vin-link:hover {
    color: #0f6dd3;
    text-decoration: underline;
}

.lead-vin-copy {
    font-weight: 600;
}

.lead-budget-wrapper {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
}

.lead-budget-label {
    font-size: 13px;
    color: #333;
    white-space: nowrap;
}

.lead-input-budget {
    max-width: 60px;
    padding-right: 6px;
}

.lead-budget-suffix {
    font-size: 13px;
    white-space: nowrap;
}


/* Status link line */
.lead-status-wrapper {
    font-size: 13px;
}

.lead-status-wrapper .lead-status-link {
    text-decoration: none;
    cursor: pointer;
}

/* -----------------------------
   Contact column
----------------------------- */

/* phone + email on SAME row */
.col-contact .contact-row {
    display: flex;
    gap: 4px;                          /* smaller gap */
    width: 100%;
}

.col-contact .contact-row .lead-input-phone {
    flex: 0 0 35%;                     /* phone narrower */
}

.col-contact .contact-row .lead-input-email {
    flex: 1 1 65%;                     /* email wider */
    min-width: 0;
}

/* comment full width under them */
.col-contact .lead-input-note {
    width: 100%;
    margin-top: 6px;
}

/* -----------------------------
   Actions column
----------------------------- */

.col-actions {
    /* make actions column narrower but tidy */
    display: grid;
    grid-template-columns: 1fr 1fr;   /* label + select on same row */
    grid-auto-rows: auto;
    row-gap: 4px;
    column-gap: 6px;
    font-size: 13px;
}

/* button full width on its own row */
.col-actions .btn {
    grid-column: 1 / -1;
    width: 100%;
}

/* dropdowns take remaining width */
.col-actions .lead-input-owner,
.col-actions .lead-input-status {
    width: 100%;
}

/* -----------------------------
   Buttons
----------------------------- */

.sales-dashboard .btn {
    display: inline-block;
    border-radius: 4px;
    border: 1px solid #1383ff;
    background-color: #1383ff;
    color: #ffffff;
    padding: 6px 10px;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
    white-space: nowrap;
    text-align: center;
}

.sales-dashboard .btn-small {
    font-size: 13px;
    padding: 6px 14px;
}

.sales-dashboard .btn:hover {
    box-shadow: 0 1px 3px rgba(0,0,0,0.16);
    background-color: #0f6dd3;
    border-color: #0f6dd3;
}

/* -----------------------------
   Responsive – tablets / mobile
----------------------------- */

@media (max-width: 760px) {
    .sales-dashboard-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .sales-dashboard-metrics {
        width: 100%;
    }

    .sales-dashboard .input-text {
        width: 100%;
        min-width: 0;
    }

    .sales-dashboard-filters {
        flex-direction: column;
        align-items: stretch;
    }

    .filters-left,
    .filters-right {
        width: 100%;
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .filters-right .input-select {
        flex: 1 1 45%;
    }
}

@media (max-width: 500px) {
    .sales-dashboard-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }


    .lead-row {
        display: block;
        border-radius: 6px;
        margin-bottom: 10px;
        padding: 10px 12px;
        box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    }

    .lead-col {
        margin-bottom: 8px;
    }

    .lead-col:last-child {
        margin-bottom: 0;
    }

    .col-actions {
        grid-template-columns: auto 1fr;
    }

    .sales-dashboard {
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media (max-width: 480px) {
    .sales-dashboard-title h1 {
        font-size: 22px;
    }

    .sales-dashboard-metrics {
        grid-template-columns: 1fr;
    }

    /* phone / email stacked on tiny screens */
    .col-contact .contact-row {
        flex-direction: column;
    }

    .col-contact .contact-row .lead-input-phone,
    .col-contact .contact-row .lead-input-email {
        flex: 1 1 auto;
        width: 100%;
    }
}








/* -------------------------------------------
// SMALL SCREEN STYLING
 ------------------------------------------- */
 
 
@media (max-width: 760px) {


    .steps {
        grid-template-columns: 1fr; /* Make steps full-width on smaller screens */
    }

    
        .car-grid {
        grid-template-columns: 1fr; /* Stack each item in one column */
    }

    .car-card img {
        max-width: 90%; /* Reduce the image size on small screens */
    }

    .cta-button {
        font-size: 1em; /* Adjust button size for smaller screens */
        padding: 12px 20px;
    }
    
    /* Ensure vertical stacking on small screens */
    .steps-wrapper {
        display: grid;
        grid-template-rows: auto 1fr auto; /* Up arrow, step, down arrow */
        grid-template-columns: 1fr; /* Single column */
        justify-items: center; /* Center everything horizontally */
        width: 100%;
    }

    /* Hide Left and Right Arrows on Small Screens */
    .left-arrow, .right-arrow {
        display: none;
    }

    /* Show Up and Down Arrows */
    .up-arrow, .down-arrow {
        display: block;
        background: none;
        border: none;
        font-size: 4em;
        color: #1877f2;
        cursor: pointer;
    }

    /* Up Arrow (Top of the Grid) */
    .up-arrow {
        margin-bottom: 15px;
    }

    /* Down Arrow (Bottom of the Grid) */
    .down-arrow {
        margin-top: 15px;
    }

    /* Adjust step layout for mobile */
    .purchase-step {
        width: 90%; /* Take up most of the screen */
        padding: 1.5em; /* Reduce padding */
        margin: 0 auto; /* Center the step */
        grid-row: 2 / 3; /* Place it between the arrows */
    }

    /* Icon size adjustment */
    .purchase-step i {
        font-size: 2em; /* Smaller icon for mobile */
    }

    /* Adjust heading size */
    .purchase-step h3 {
        font-size: 1.5em; /* Adjust heading size */
    }

    /* Adjust paragraph size */
    .purchase-step p {
        font-size: 1em; /* Adjust paragraph size */
    }
    
}