p, span, table, li, a, .btn, div{
    font-family: "Rubik", sans-serif;
}

h1, h2, h3, h4{
    font-family: "Rubik", sans-serif;
}
.display-1, .display-2, .display-3, .display-4 {
    font-family: "Rubik", sans-serif;
}

h1 {
    font-weight: bold !important;
}
.obf-blur{
    filter: blur(12px); user-select: none; pointer-events: none;
}


a.black-link {
    text-decoration: none;
    color:#000;
}

.navbar-brand {
    text-transform: uppercase;
    font-weight: bold;
}

.deactivate-links a{
  pointer-events: none;
  cursor: default;
}

.table-clickable tbody tr {
  cursor: pointer;
}

textarea {
   max-width: 100%;
}

.video-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }

.video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.border.missed_deadline {
    outline: 2px solid red;
    outline-offset: 2px !important;
}

.no_deadline {
    outline: 2px solid #ffc107;
    outline-offset: 2px !important;
}

.has_deadline {
    outline: 2px solid #198754;
    outline-offset: 2px !important;
}

.btn {
    border-radius: 8px !important;
}

.btn.btn-primary:disabled, .btn.btn-primary.disabled{
    background-color: #86c990;
    border-color:#86c990;
}

.btn.btn-lg {
    padding:14px;
}

.btn.btn-primary {
background-color: #37b34a;
border-color: #309a41;
}

.btn.btn-primary:hover, .btn.btn-primary:focus {
color: #fff;
background-color: #309a41;
border-color: #309a41;

}


img.whatsapp-button {
    max-width: 220px;
}
.errorlist,                    /* whole <ul> */
.errorlist li {                /* each <li>  */
color: #dc3545;              /* Bootstrap’s “danger” red */
margin: 0;                   /* tidy spacing             */
padding: 0;
list-style: none;
}

a.btn.btn-dark.disabled {
    color: #000;
    opacity: 1;
    background-color: #fff;
}


a.btn.btn-dark:hover, button.btn.btn-dark:hover {
	color: #000;
	background-color: #fff;
}


#request_card b {
max-width: 500px;
display: block;
}

.primary-color {
color: #37b34a;
}


#period_filters a {
font-size: 15px;
}

.switch {
    -webkit-appearance: none;
    appearance: none;
    width: 40px;  /* Reduced width */
    height: 20px;  /* Reduced height */
    background-color: #ccc;
    border-radius: 20px;  /* Half of height to create rounded edges */
    position: relative;
    outline: none;
    cursor: pointer;
    transition: background-color 0.4s;
}

.switch::before {
    content: "";
    position: absolute;
    left: 2px;  /* Adjusted for smaller size */
    bottom: 2px;  /* Adjusted for smaller size */
    width: 16px;  /* Reduced width */
    height: 16px;  /* Reduced height */
    background-color: white;
    border-radius: 50%;
    transition: transform 0.4s;
}

.switch:checked {
    background-color: #2196F3;
}

.switch:checked::before {
    transform: translateX(20px);  /* Adjusted to match the new width */
}

#day-label-container input {
    top:4px;
}

#day-label-container label {
    margin-left: 7px;
}

.text-very-small {
    font-size:12px;
}

.no-wrap {
    white-space: nowrap;
}

/* form styling */

form input[type="text"],
form input[type="tel"],
form input[type="email"],
form select {
    padding: 8px;
    border: 1px solid #ddd;
    border-radius:4px;
    transition: border 0.3s ease;
}

input.currency-input {
    padding-left: 20px;
    max-width:100px;
    border-radius: 5px;
    border: 1px solid #ddd;
}
span.currency-symbol {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
    color: #6C757D;
}

div.currency-container {
    position: relative;
    display: inline-block;
}

.pretty-list {
        list-style: none; /* Remove default bullets */
        padding-left: 0; /* Remove default padding */
    }

.pretty-list li {
    display: flex;
    align-items: center; /* Vertically centers the checkmark and text */
    font-size: 18px;
    margin-bottom: 10px;
    position: relative; /* Allows positioning of the ::before element */
    padding-left: 40px; /* Space for the checkmark */
}

.pretty-list li::before {
    content: "\f00c"; /* Unicode for Font Awesome checkmark */
    font-family: 'Font Awesome 5 Free'; /* Ensure Font Awesome is used */
    font-weight: 900; /* Makes sure it's bold */
    font-size: 24px; /* Adjust the size of the checkmark */
    position: absolute;
    left: 0; /* Position the checkmark to the left of the list item */
}

.pretty-list-checkmarks li::before {
    content: "\f14a"; /* Unicode for Font Awesome checkmark */
    color: #00C20B;
}


  .whatsapp-float {
    position: fixed;
    right: 20px;
    bottom: 20px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    background: #25D366; /* Official WhatsApp green */
    color: #fff;
    font: 600 14px/1.2 system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
    text-decoration: none;
    border-radius: 9999px;
    box-shadow: 0 8px 24px rgba(37, 211, 102, 0.35), 0 4px 12px rgba(0,0,0,0.15);
    z-index: 9999;
    transition: transform 150ms ease, box-shadow 150ms ease, opacity 150ms ease;
  }
  .whatsapp-float:hover,
  .whatsapp-float:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(37, 211, 102, 0.45), 0 6px 14px rgba(0,0,0,0.2);
    outline: none;
  }
  .whatsapp-float:active {
    transform: translateY(0);
  }
  .wa-icon {
    display: block;
  }
  /* Compact on very small screens: show just the icon */
  @media (max-width: 480px) {
    .whatsapp-float span { display: none; }
    .whatsapp-float { padding: 14px; }
  }
  /* Respect reduced motion preferences */
  @media (prefers-reduced-motion: reduce) {
    .whatsapp-float { transition: none; }
  }
