@use "sass:map";
@use "src/css/quasar.variables.scss";

:root {
  --system-bar-bg: #757575;
}

body::before,
body::after {
  content: "";
  position: fixed;
  left: 0;
  right: 0;
  background: var(--system-bar-bg);
  pointer-events: none;
  z-index: 10000;
}

body::before {
  top: 0;
  height: env(safe-area-inset-top, 0px);
}

body::after {
  bottom: 0;
  height: env(safe-area-inset-bottom, 0px);
}

.system-bar-spacer {
  background: var(--system-bar-bg) !important;
}

.q-page {
  font-family: "Inter", sans-serif;
}

.flex-grow {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0;
}

.round {
  border-radius: 50%;
}

.self-center {
  align-self: center;
}

.input-disable {
  .q-field--outlined .q-field__control::before {
    border: 1px solid #b9b9b9 !important;
    transition: border-color 0.36s cubic-bezier(0.4, 0, 0.2, 1);
  }
}

.q-toolbar {
  position: relative;
  padding: 0 12px;
  min-height: 50px;
  width: auto;
}

.q-drawer:has(.detached-container) {
  margin: 16px !important;
  margin-bottom: 16px !important;
  margin-left: 10px !important;
  margin-top: calc(env(safe-area-inset-top) + 16px) !important;
  border-radius: 6px !important;
  transition: all;
}

.q-drawer__content {
  padding-top: 0 !important;
}

body.body--light {
  .q-drawer:has(.detached-container) {
    background: #{map.get($colors, "surface")} !important;
  }

  .q-menu {
    background: #{map.get($colors, "surface")};
  }

  background: #{map.get($colors, "page")} !important;
}

// body.body--dark {
//   .q-drawer:has(.detached-container) {
//     background: #{map.get($colors-dark, "surface")} !important;
//   }

//   .q-menu {
//     background: #{map.get($colors-dark, "surface")};
//   }

//   background: #{map.get($colors-dark, "page")};
// }

.q-card__actions .q-btn {
  padding: 10px 16px;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
}

.q-separator {
  padding-top: 0px;
  padding-left: 0;
}

.q-scrollarea__content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto !important;
}

.q-notifications__list--top {
  margin-top: env(safe-area-inset-top) !important;
}

.q-dialog__inner--maximized > div > .row:first-child {
  padding-top: calc(env(safe-area-inset-top) + 12px) !important;
}

.remove-header-expansion-item {
  .q-list--dense > .q-item,
  .q-item--dense {
    display: none;
  }
}

// Keep the back-arrow glyph aligned with the horizontal content gutter while
// preserving the full round touch target and the centered header title.
.header-back-btn {
  transform: translateX(-16px);
}

.q-field .q-field__control {
  border: 1.5px solid #e4e4e4 !important;
  border-radius: 4px !important;
  height: 44px !important;
  transition: border-color 0.36s cubic-bezier(0.4, 0, 0.2, 1);
}

.q-btn {
  font-weight: 700;
  font-size: 15px;
  color: #ffffff;
  text-transform: lowercase;
}

.gradient-diarista {
  background: linear-gradient(
    -90deg,
    #ec48d1 5%,
    #6b11cb 65%,
    #2574fc 100%
  );

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  background-clip: text;
  color: transparent;
}

.gradient-diarista-bg {
  background: linear-gradient(
    -90deg,
    #ec48d1 1%,
    #6b11cbcb 65%,
    #2574fcbd 100%
  );
}

.text-greeting {
  font-weight: 400;
  font-size: 12px;
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-name {
  line-height: 100%;
  letter-spacing: 0;
}

.text-label-bold {
  line-height: 100%;
  letter-spacing: 0;
}

.text-provider-name {
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-price-main {
  line-height: 100%;
  letter-spacing: -0.04em;
  text-align: right;
}

.text-price-label {
  line-height: 100%;
  letter-spacing: -0.04em;
  text-align: right;
}

.text-schedule-date-bold {
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-schedule-date-regular {
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-pill {
  line-height: 100%;
  letter-spacing: 0;
}

.text-pill-place {
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-done-name {
  line-height: 100%;
  letter-spacing: -0.04em;
  text-align: center;
}

.text-fav-name {
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-fav-region {
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-provider-close-name {
  line-height: 100%;
  letter-spacing: -0.04em;
}

.text-provider-close-region {
  line-height: 100%;
  letter-spacing: 0;
}

.text-provider-close-price {
  line-height: 100%;
  letter-spacing: 0;
  text-align: right;
}

.text-provider-close-rating {
  line-height: 100%;
  letter-spacing: 0;
}

.text-provider-close-jobs {
  line-height: 100%;
  letter-spacing: 0;
  text-align: center;
}

.text-provider-close-distance {
  line-height: 100%;
  letter-spacing: 0;
  text-align: right;
}

.shadow-card {
box-shadow: 1px 4px 4px 0px rgba(0,0,0,0.2);
-webkit-box-shadow: 1px 4px 4px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 1px 4px 4px 0px rgba(0,0,0,0.2);
}

.card-border {
  border-radius: 18px;
}

.dashboard-section-title {
  line-height: 1.05;
}

.font8 {
  font-size: 8px;
}

.font9 {
  font-size: 9px;
}

.font10 {
  font-size: 10px;
}

.font12 {
  font-size: 12px;
}

.font14 {
  font-size: 14px;
}

.font16 {
  font-size: 16px;
}

.fontbold {
  font-weight: 700;
}

.fontmedium {
  font-weight: 500;
}

.fontregular {
  font-weight: 400;
}

.fontlight {
  font-weight: 300;
}


// customizando calendario das agendas para padrao do figma
.calendar-custom {
  border-radius: 20px;
  background-color: white !important;

  :deep(.q-date__main) {
    background-color: white !important;
  }

  :deep(.q-date__content) {
    background-color: white !important;
  }

  :deep(.q-date__calendar) {
    background-color: white !important;
  }

  :deep(.q-date__calendar-item--out) {
    .q-btn__content {
      color: #CBD5E1 !important;
    }
  }

  :deep(.q-date__calendar-days .q-btn__content) {
    font-weight: 500;
    color: #1E293B;
  }

  :deep(.q-date__calendar-weekdays > div) {
    color: #6366F1;
    font-weight: 700;
    opacity: 0.8;
  }

  :deep(.q-date__navigation) {
    .q-btn {
      color: #1E293B !important;
    }
    .q-btn__content {
      color: #1E293B !important;
    }
  }

  :deep(.q-date__nav-btn-month),
  :deep(.q-date__nav-btn-year) {
    color: #6366F1 !important;
    font-weight: 700;
  }

  :deep(.q-date__event) {
    bottom: 4px;
    height: 6px;
    width: 6px;
    border-radius: 50%;
  }

  :deep(.q-date__today) {
    .q-btn__content {
      color: #7c4dff !important;
      background: #7c4dff15;
      border-radius: 50%;
    }
  }

  :deep(.q-date__selected) {
    .q-btn__content {
      background: #6366F1 !important;
      color: white !important;
      border-radius: 50%;
      box-shadow: 0 4px 10px rgba(99, 102, 241, 0.4);
    }
  }

  :deep(.q-date__view--months),
  :deep(.q-date__view--years) {
    .q-btn {
      color: #1E293B !important;
    }
  }
}
