.slds-checkbox .slds-checkbox--faux,
.slds-checkbox .slds-checkbox_faux {
  width: 1rem !important;
  height: 1rem !important;
  display: inline-block !important;
  position: relative !important;
  -ms-flex-negative: 0 !important;
  flex-shrink: 0 !important;
  vertical-align: middle !important;
  border-radius: var(
    --slds-c-checkbox-radius-border,
    var(--sds-c-checkbox-radius-border, 0.125rem)
  ) !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var
    (
      --slds-c-checkbox-color-border,
      var(
        --sds-c-checkbox-color-border,
        var(--slds-g-color-border-base-4, #c9c9c9)
      )
    ) !important;
  background-color: var(
    --slds-c-checkbox-color-background,
    var(
      --sds-c-checkbox-color-background,
      var(--slds-g-color-neutral-base-100, #fff)
    )
  ) !important;
  -webkit-box-shadow: var(
    --slds-c-checkbox-color-background,
    var(
      --sds-c-checkbox-color-background,
      var(--slds-g-color-neutral-base-100, #fff)
    )
  ) !important;
  box-shadow: var(
    --slds-c-checkbox-color-background,
    var(
      --sds-c-checkbox-color-background,
      var(--slds-g-color-neutral-base-100, #fff)
    )
  ) !important;
  -webkit-transition:
    border 0.1s linear,
    background-color 0.1s linear !important;
  transition:
    border 0.1s linear,
    background-color 0.1s linear !important;
}

.slds-checkbox [type="checkbox"]:checked + .slds-checkbox--faux,
.slds-checkbox [type="checkbox"]:checked + .slds-checkbox_faux,
.slds-checkbox [type="checkbox"]:checked ~ .slds-checkbox--faux,
.slds-checkbox [type="checkbox"]:checked ~ .slds-checkbox_faux,
.slds-checkbox
  [type="checkbox"]:checked
  + .slds-checkbox__label
  .slds-checkbox--faux,
.slds-checkbox
  [type="checkbox"]:checked
  + .slds-checkbox__label
  .slds-checkbox_faux {
  box-shadow: var(--slds-c-input-shadow-focus, 0 0 3px #1589ee) !important;
  border-color: #1589ee !important;
}

.slds-checkbox [type="checkbox"]:focus + .slds-checkbox--faux,
.slds-checkbox
  [type="checkbox"]:focus
  + .slds-checkbox__label
  .slds-checkbox--faux,
.slds-checkbox
  [type="checkbox"]:focus
  + .slds-checkbox__label
  .slds-checkbox_faux,
.slds-checkbox [type="checkbox"]:focus + .slds-checkbox_faux,
.slds-checkbox [type="checkbox"]:focus ~ .slds-checkbox--faux,
.slds-checkbox [type="checkbox"]:focus ~ .slds-checkbox_faux {
  outline: 0 !important;
  outline-offset: 0 !important;
  /*! @css-var-fallback border-color */
  --slds-c-checkbox-color-border: var(
    --slds-c-checkbox-color-border-focus,
    var(--sds-c-checkbox-color-border-focus)
  ) !important;
  /*! @css-var-fallback box-shadow */
  --slds-c-checkbox-shadow: var(
    --slds-c-checkbox-shadow-focus,
    var(
      --sds-c-checkbox-shadow-focus,
      var(--slds-g-shadow-outset-focus-1, 0 0 3px #0176d3)
    )
  ) !important;
}

/*CLASSI CUSTOM PER STYLING */
.slds-combobox__input.slds-has-focus,
.slds-combobox__input:focus {
  background-color: var(--input-color-background-focus) !important;
  color: var(
    --slds-c-input-text-color-focus,
    var(
      --sds-c-input-text-color-focus,
      var(
        --dxp-s-form-element-text-color-focus,
        var(--dxp-s-form-element-text-color, var(--dxp-g-root-contrast))
      )
    )
  ) !important;
  border-color: var(
    --slds-c-input-color-border-focus,
    var(
      --sds-c-input-color-border-focus,
      var(--dxp-s-form-element-color-border-focus, var(--dxp-g-brand))
    )
  ) !important;
  --slds-c-input-shadow: var(
    --slds-c-input-shadow-focus,
    var(
      --sds-c-input-shadow-focus,
      var(--dxp-s-form-element-shadow-focus, 0 0 3px var(--dxp-g-brand-1))
    )
  ) !important;
  -webkit-box-shadow: none !important;
  box-shadow: var(--slds-c-input-shadow-focus, 0 0 3px #1589ee) !important;
}

lightning-base-combobox-item {
  outline: none !important;
  box-shadow: none !important;
}

.slds-form-element__label {
  line-height: 38px !important;
}

.roundedTiles {
  /*border-radius: 1rem!important;*/
  border-radius: 0 1rem 1rem 0 !important;
  border-width: 0.1rem !important;
  border-left: 0.4rem solid var(--aqp-mono-5) !important;
  box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.08) !important;
}

.section-header-container {
  display: flex !important;
  align-items: center !important;
  margin-bottom: 1.5rem !important;
  padding-left: 0.5rem !important;
}

.section-header-line {
  width: 0.25rem !important;
  height: 2.5rem !important;
  background-color: var(--aqp-mono-5) !important;
  border-radius: 1rem !important;
  margin-right: 1rem !important;
}

.section-header-content {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

.icon-style {
  --slds-c-icon-color-foreground-default: var(--aqp-mono-5) !important;
}

.slds-progress-bar {
  background-color: var(--aqp-mono-4) !important;
  border-radius: 1rem !important;
  border: 0.1rem solid var(--aqp-mono-2) !important;
  height: 0.75rem !important;
  overflow: hidden !important;
}

.slds-progress-bar__value {
  border-radius: 1rem 0 0 1rem !important;
}

.noBorder {
  border: 0rem;
}

.externalCard {
  border-radius: 1rem !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.roundedTilesTop {
  border-radius: 0.3rem 0.3rem 0px 0px !important;
  border-bottom: none !important;
  box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.08) !important;
}

.roundedTilesBottom {
  border-radius: 0px 0px 0.3rem 0.3rem !important;
  box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.08) !important;
}

.roundedCardTop {
  border-radius: 1rem 1rem 0px 0px !important;
  border-bottom: none !important;
  box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.08) !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.roundedCardBottom {
  border-radius: 0px 0px 1rem 1rem !important;
  box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.08) !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

lightning-icon.slds-icon_container {
  --slds-c-icon-color-foreground-default: var(--aqp-mono-5) !important;
}

lightning-icon.slds-icon-utility-success {
  /* --sds-c-icon-color-background:#1a73e8!important;*/
  --sds-c-icon-color-foreground: white !important;
}

.slds-theme_success.slds-notify .slds-icon {
  --sds-c-icon-color-background: #1a73e8 !important;
  --sds-c-icon-color-foreground: white !important;
}

/* VISUAL PICKER GLOW */

.slds-visual-picker input:checked ~ label .slds-visual-picker__text {
  box-shadow:
    0 0 0 0.125rem var(--aqp-mono-1),
    0 0.25rem 0.75rem rgba(0, 112, 210, 0.3);
}

.slds-visual-picker input:checked ~ label .slds-visual-picker__text:after {
  border-radius: 0 1rem 0 1rem;
  border-right-color: var(--aqp-complementare-3);
  border-top-color: var(--aqp-complementare-3);
  box-shadow:
    0 0 0 0.125rem var(--aqp-mono-1),
    0 0.25rem 0.75rem rgba(0, 112, 210, 0.3);
}

/* MODALI */

.slds-modal__header {
  border-radius: 1rem 1rem 0rem 0rem !important;
  border-bottom: none !important;
  box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.08) !important;
}

.slds-modal__footer {
  border-radius: 0rem 0rem 1rem 1rem !important;
  border-top: none !important;
  box-shadow: 0rem 0rem 1rem 0.1em rgba(0, 0, 0, 0.08) !important;
}

/* PALETTE COLORI DOC AQP DA USARE COME AD ESEMPIO  color: var(--aqp-mono-3);*/
:root {
  /* Monocromatici */
  --aqp-mono-1: #61a7e8;
  --aqp-mono-2: #7c95ac;
  --aqp-mono-3: #42709c;
  --aqp-mono-4: #a7c9e8;
  --aqp-mono-5: #2c4b69; /*MAIN*/

  /* Analoghi */
  --aqp-analogo-1: #3f3ea8;
  --aqp-analogo-2: #425fb3;
  --aqp-analogo-3: #42709c;
  --aqp-analogo-4: #429ab3;
  --aqp-analogo-5: #3ea869;

  /* Triade */
  --aqp-triade-1: #19354f;
  --aqp-triade-2: #e14840;
  --aqp-triade-3: #42709c;
  --aqp-triade-4: #636921;
  --aqp-triade-5: #dce856;

  /* Complementari */
  --aqp-complementare-1: #19354f;
  --aqp-complementare-2: #79b2e8;
  --aqp-complementare-3: #42709c;
  --aqp-complementare-4: #4f3811;
  --aqp-complementare-5: #9c7941;
  --dxp-g-success-contrast: #41734c;

  /*TYPOGRAPHY CUSTOM*/
  --aqp-font-weight-regular: 400;
  --aqp-font-weight-semibold: 600;
  --aqp-font-weight-bold: 700;

  --aqp-title-font-weight: var(--aqp-font-weight-bold);
  --aqp-title-font-size: 3rem;

  --aqp-subtitle-font-weight: var(--aqp-font-weight-semibold);
  --aqp-subtitle-font-size: 1.75rem;

  --aqp-paragraph-font-weight: var(--aqp-font-weight-regular);
  --aqp-paragraph-font-size: 1.125rem;

  --aqp-subparagraph-font-weight: var(--aqp-font-weight-regular);
  --aqp-subparagraph-font-size: 0.875rem;

  /*OVERRIDE SLDS HOOKS*/
  /*MODALI*/
  --slds-c-modal-heading-font-size: var(--aqp-subtitle-font-size);
  --slds-c-modal-heading-font-weight: var(--aqp-subtitle-font-weight);

  /*OVERRIDE SLDS HOOKS*/
}

/* STYLING ICONE*/
.aqp-small-icon {
  width: 22px !important;
  height: 22px !important;
}

.apq-medium-icon {
  width: 44px !important;
  height: 44px !important;
}

.apq-large-icon {
  width: 88px !important;
  height: 88px !important;
}

.slds-path__title {
  font-size: var(--aqp-subparagraph-font-size) !important;
  font-weight: var(--aqp-font-weight-regular) !important;
}

/*STYLING CARDS*/
.aqp-record-list-card {
  background-color: #fff;
  padding: 1.5rem;
  border-radius: 0.5rem;
  box-shadow: 0.25rem 0.3rem 0.375rem 0px rgba(0, 0, 0, 0.05);
}

.aqp-card-item {
  display: flex;
  gap: 0.75rem;
  padding: 1rem 0;
  border-bottom: 1px solid #eee;
}

.aqp-card-accent-line {
  width: 3px;
  background-color: var(--aqp-mono-5) !important;
  border-radius: 2px;
}

.aqp-record-content {
  flex: 1;
}

.aqp-footer-card-link {
  text-align: right;
  margin-top: 1rem;
}

.aqp-footer-card-view-all {
  font-size: 0.85rem;
  color: var(--aqp-mono-5) !important;
  text-decoration: none;
  font-weight: 600;
}

/* breadCrumb */
.aqp-breadcrumb {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 1rem;
  margin-left: 2rem;
  margin-bottom: 1rem;
}

.aqp-breadcrumb-prev {
  font-weight: bold;
  text-decoration: underline;
  color: var(--aqp-mono-5);
}

.aqp-breadcrumb-prev:hover {
  text-decoration: none;
}

.aqp-breadcrumb-sep {
  color: var(--aqp-analogo-3);
}

.aqp-breadcrumb-current {
  color: var(--aqp-complementare-3);
}

.slds-breadcrumb .slds-breadcrumb__item:before,
.slds-breadcrumb .slds-list__item:before {
  content: "/" !important;
}

.slds-breadcrumb .slds-breadcrumb__item:first-child:before,
.slds-breadcrumb .slds-list__item:first-child:before {
  content: "" !important;
  font-weight: bold;
  text-decoration: underline;
  color: var(--aqp-mono-5);
}

.event-list-card {
  background-color: #fff;
  padding: 0.5rem;
  border-radius: 0.5rem;
  box-shadow: 0.25rem 0.3rem 0.375rem 0px rgba(0, 0, 0, 0.05);
}

.event-item {
  display: flex;
  gap: 0.75rem;
  padding: 1rem 0;
  border-bottom: 1px solid #eee;
}

.accent-line {
  width: 3px;
  background-color: var(--aqp-mono-5) !important;
  border-radius: 2px;
}

.accent-line-green {
  width: 3px;
  background-color: var(--aqp-analogo-5) !important;
  border-radius: 2px;
}

.accent-line-yellow {
  width: 3px;
  background-color: var(--aqp-triade-5) !important;
  border-radius: 2px;
}

.accent-line-red {
  width: 3px;
  background-color: var(--aqp-triade-2) !important;
  border-radius: 2px;
}

.event-content {
  flex: 1;
}

.footer-link {
  text-align: right;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.view-all {
  font-size: 0.85rem;
  color: var(--aqp-mono-5) !important;
  text-decoration: none;
  font-weight: 600;
}

.event-content-verticalcenter {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* collassabile con transizione */
.collapsible {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition:
    max-height 0.5s ease,
    opacity 0.5s ease;
}

/* valore “capiente” per l’altezza massima */
.collapsible.open {
  max-height: 600px; /* alza se necessario */
  opacity: 1;
  transition:
    max-height 0.5s ease,
    opacity 0.5s ease;
  max-width: 100%;

  margin-top: 40px;
}

.card-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.event-card {
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.my-custom-input .slds-input__icon {
  top: 50%;
  transform: translateY(-50%);
}

/* sfondo/bordo della scatola */
.slds-checkbox input:disabled + .slds-checkbox__label .slds-checkbox_faux {
  background-color: #fff !important;
  border-color: #fff !important;
}

/* colore della spunta quando è checked */
.slds-checkbox
  input:disabled:checked
  + .slds-checkbox__label
  .slds-checkbox_faux::after {
  border-color: #fff !important;
}
@media (max-width: 1023px) {
  input[type="date"] {
    min-width: 95.6%;
    -webkit-appearance: none;
  }
}

@media (max-width: 768px) {
  .slds-modal {
    width: 100vw !important;
    height: 100vh !important;
    max-width: 100vw !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  .slds-modal__container {
    width: 100vw !important;
    height: 100vh !important;
    max-width: 100vw !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  .slds-modal__content {
    height: calc(100vh - 3rem); /* regola se serve spazio per header/footer */
    overflow-y: auto;
  }

  .slds-modal.slds-fade-in-open {
    animation: slideUp 0.3s ease-out;
  }
  @keyframes slideUp {
    from {
      transform: translateY(100%);
    }
    to {
      transform: translateY(0);
    }
  }
}

.slds-modal__close .slds-icon-utility-close,
.slds-modal__close.slds-icon-utility-close {
  --slds-c-icon-color-foreground: white !important;
}

/*.footer-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.footer-actions lightning-button {
  flex: 0 0 auto;
}
@media (max-width: 48rem) {
  /* ~ breakpoint "medium" SLDS */
/*.footer-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .footer-actions lightning-button {
    width: 100%;
    display: grid; 
  }
   .footer-actions { flex-direction: column; align-items: stretch; }
  .footer-actions .btn-wrap { width: 100%; } 
  
}*/
.footer-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  flex-wrap: wrap;
}

@media (max-width: 48rem) {
  /* ~ SLDS "medium" */
  .footer-actions {
    flex-direction: column;
    align-items: stretch;
  }

  /* Stretch affidabile sui device piccoli */
  .footer-actions .slds-button {
    width: 100%; /* (oppure .slds-button_stretch, se presente nella tua versione SLDS) */
    display: block;
  }
}

.slds-theme--success,
.slds-theme_success {
  color: #1a471d !important;
  background-color: #a2f7a2 !important;
  border-color: #227525 !important;
}

.slds-input.slds-is-disabled,
.slds-input[disabled] {
  background-color: var(--slds-g-color-neutral-base-95, #f3f3f3);
  border-color: var(--slds-g-color-border-base-1, #c9c9c9);
  color: #222 !important;
  cursor: not-allowed;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.slds-button_outline-brand:focus {
  background-color: var(
    --slds-c-button-outline-brand-color-background,
    var(
      --sds-c-button-outline-brand-color-background,
      var(
        --slds-c-button-outline-brand-color-background,
        var(--dxp-s-secondary-button-color, var(--dxp-g-root, #fff))
      )
    )
  ) !important;
  border-color: var(
    --slds-c-button-outline-brand-color-border,
    var(
      --sds-c-button-outline-brand-color-border,
      var(
        --slds-c-button-outline-brand-color-border,
        var(--dxp-s-secondary-button-border-color, var(--dxp-g-brand, #0176d3))
      )
    )
  ) !important;
  color: var(
    --slds-c-button-text-color,
    var(
      --slds-c-button-text-color,
      var(
        --sds-c-button-text-color,
        var(--dxp-s-secondary-button-text-color, var(--dxp-g-brand, #0176d3))
      )
    )
  ) !important;
}

/*FOCUS PER ACCESSIBILITA*/
*:focus {
  outline: 2px solid #ff8c00 !important;
  outline-offset: 1px;
  border-color: var(--lwc-colorBorderInput, rgb(221, 219, 218)) !important;
}
