.aiop-pubblicazioni-list {
  --aiop-pl-columns: 3;
  --aiop-pl-gap: 18px;

  /* Filtro categorie (personalizzabile da Elementor) */
  --aiop-pl-filter-bg: #f3f4f6;
  --aiop-pl-filter-text: #111827;
  --aiop-pl-filter-border: #d1d5db;
  --aiop-pl-filter-border-width: 1px;
  --aiop-pl-filter-radius: 999px;

  --aiop-pl-filter-bg-hover: #f3f4f6;
  --aiop-pl-filter-text-hover: #111827;
  --aiop-pl-filter-border-hover: #d1d5db;
  --aiop-pl-filter-border-width-hover: 1px;
  --aiop-pl-filter-radius-hover: 999px;

  --aiop-pl-filter-bg-active: #111827;
  --aiop-pl-filter-text-active: #ffffff;
  --aiop-pl-filter-border-active: #111827;
  --aiop-pl-filter-border-width-active: 1px;
  --aiop-pl-filter-radius-active: 999px;
}

.aiop-pubblicazioni-list__grid {
  display: grid;
  grid-template-columns: repeat(var(--aiop-pl-columns, 3), minmax(0, 1fr));
  gap: var(--aiop-pl-gap, 18px);
}

.aiop-pubblicazioni-list__item[hidden] {
  display: none !important;
}

.aiop-pubblicazioni-list__item .elementor-flip-box {
  width: 100%;
}

.aiop-pubblicazioni-list--empty {
  padding: 24px;
  text-align: center;
}

.aiop-pubblicazioni-list__editor-note,
.aiop-pubblicazioni-list__editor-hint {
  background: #f3f4f6;
  border: 1px dashed #9ca3af;
  border-radius: 8px;
  color: #374151;
  font-size: 13px;
  line-height: 1.45;
  margin: 0 0 16px;
  padding: 10px 14px;
  text-align: left;
}

.aiop-pubblicazioni-list__editor-hint {
  margin-top: 10px;
}

.aiop-pubblicazioni-list .aiop-event-list__filters {
  margin-bottom: var(--aiop-pl-gap, 18px);
}

.aiop-pubblicazioni-list .aiop-event-list__filters--bottom {
  margin-bottom: 0;
  margin-top: var(--aiop-pl-gap, 18px);
}

.aiop-pubblicazioni-list .aiop-event-list__filter-intro {
  flex: 1 0 100%;
  width: 100%;
  margin: 0 0 4px;
  line-height: 1.4;
  white-space: pre-line;
}

.aiop-pubblicazioni-list .aiop-event-list__filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 6px 18px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  cursor: pointer;
  border-style: solid;
  border-color: var(--aiop-pl-filter-border);
  border-width: var(--aiop-pl-filter-border-width);
  border-radius: var(--aiop-pl-filter-radius);
  background: var(--aiop-pl-filter-bg);
  color: var(--aiop-pl-filter-text);
  transition: all 0.2s ease;
}

.aiop-pubblicazioni-list .aiop-event-list__filter:hover {
  border-color: var(--aiop-pl-filter-border-hover);
  border-width: var(--aiop-pl-filter-border-width-hover);
  border-radius: var(--aiop-pl-filter-radius-hover);
  background: var(--aiop-pl-filter-bg-hover);
  color: var(--aiop-pl-filter-text-hover);
}

.aiop-pubblicazioni-list .aiop-event-list__filter.is-active {
  border-color: var(--aiop-pl-filter-border-active);
  border-width: var(--aiop-pl-filter-border-width-active);
  border-radius: var(--aiop-pl-filter-radius-active);
  background: var(--aiop-pl-filter-bg-active);
  color: var(--aiop-pl-filter-text-active);
}

.stl-flipbox__expand-description .stl-flipbox__pub-testata,
.stl-flipbox__expand-description .stl-flipbox__pub-autori,
.stl-flipbox__expand-description .stl-flipbox__pub-excerpt {
  margin: 0;
}

.stl-flipbox__expand-description .stl-flipbox__pub-testata:not(:last-child),
.stl-flipbox__expand-description .stl-flipbox__pub-autori:not(:last-child),
.stl-flipbox__expand-description .stl-flipbox__pub-excerpt:not(:last-child) {
  margin-bottom: 0.5em;
}

@media (max-width: 1024px) {
  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list {
    --aiop-pl-gap: 12px;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list .aiop-event-list__filters {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    flex-wrap: wrap;
    overflow-x: visible;
    overscroll-behavior-x: auto;
    gap: 8px;
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    padding-bottom: 0;
  }

  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list .aiop-event-list__filter-intro {
    margin-bottom: 2px;
    font-size: clamp(0.8125rem, 3.4vw, 0.875rem);
    line-height: 1.45;
  }

  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list .aiop-event-list__filter {
    flex: none;
    width: 100%;
    max-width: 100%;
    min-height: 40px;
    padding: 10px 14px;
    font-size: clamp(0.6875rem, 2.9vw, 0.75rem);
    letter-spacing: 0.04em;
    line-height: 1.25;
    white-space: normal;
    text-align: center;
    overflow-wrap: anywhere;
  }

  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--aiop-pl-gap, 12px);
  }

  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list__item {
    min-width: 0;
  }

  /* Card: layout lista (copertina | titolo + autori + CTA) */
  .elementor-widget-aiop-pubblicazioni-list .aiop-pubblicazioni-list__item .elementor-flip-box {
    height: auto !important;
    min-height: 0 !important;
    max-height: none;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-expand {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media {
    position: relative !important;
    inset: auto !important;
    flex: 0 0 clamp(72px, 22vw, 96px) !important;
    width: clamp(72px, 22vw, 96px) !important;
    min-height: 108px !important;
    height: auto !important;
    align-self: stretch !important;
    background-position: center center !important;
    background-size: cover !important;
    border-radius: 0 !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-body.stl-flipbox__expand-body {
    position: relative !important;
    inset: auto !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    padding: 10px 12px !important;
    text-align: left !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background-color: rgba(255, 255, 255, 0.96) !important;
    background-image: none !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-viewport,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-track,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__text-group {
    justify-content: flex-start !important;
    align-items: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__layer__title {
    font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    color: #111827 !important;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__layer__description,
  .elementor-widget-aiop-pubblicazioni-list .stl-flipbox__expand-description,
  .elementor-widget-aiop-pubblicazioni-list .stl-flipbox__pub-autori {
    font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: left !important;
    color: #4b5563 !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .stl-flipbox__expand-reveal-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
    width: 100%;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box__button,
  .elementor-widget-aiop-pubblicazioni-list .stl-flipbox__expand-button {
    align-self: flex-start !important;
    margin: 0 !important;
    min-height: 36px !important;
    padding: 7px 14px !important;
    font-size: clamp(0.625rem, 2.6vw, 0.6875rem) !important;
    letter-spacing: 0.06em;
    border-radius: 0 0 10px 0 !important;
  }

  /* Nessun effetto hover/focus sulla card (layout lista fisso; solo il link LEGGI è interattivo) */
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box * {
    transition: none !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:active {
    transform: none !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-expand,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-expand {
    display: flex !important;
    flex-direction: row !important;
    height: auto !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:active .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    flex: 0 0 clamp(72px, 22vw, 96px) !important;
    width: clamp(72px, 22vw, 96px) !important;
    min-height: 108px !important;
    height: auto !important;
    transform: none !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:active .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    flex: 1 1 auto !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
    will-change: auto !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background-color: rgba(255, 255, 255, 0.96) !important;
    background-image: none !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover .elementor-flip-box__layer__title,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within .elementor-flip-box__layer__title {
    color: #111827 !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover .stl-flipbox__pub-autori,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within .stl-flipbox__pub-autori {
    color: #4b5563 !important;
  }

  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover .stl-flipbox__expand-reveal,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within .stl-flipbox__expand-reveal,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:hover .stl-flipbox__expand-reveal-inner,
  .elementor-widget-aiop-pubblicazioni-list .elementor-flip-box:focus-within .stl-flipbox__expand-reveal-inner {
    opacity: 1 !important;
    transform: none !important;
  }
}
