/* ===== APS Policy List ================================= */


/* Cards */
.aps-policy-card { background:rgba(255,255,255,0.85); border:1.2px solid #e5e7eb; border-radius:14px; overflow:hidden; font-size:1em;}
.aps-policy-list.scheme-dark .aps-policy-card { background:rgba(255,255,255,0.08); border-color:rgba(255,255,255,0.18); }
.aps-policy-list.scheme-light .aps-policy-card { background:#ffffff; }


.aps-policy-card__wrap { display:block; text-decoration:none; color:inherit; padding:16px 18px; height:100%; }
.aps-policy-card__meta { font-size:1.3rem; opacity:0.85; display:flex; align-items:center; gap:8px; margin-bottom:6px; }
.aps-policy-card__org { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:1.3rem; color: #ec8a20; }
.aps-policy-card__tag { background:var(--accent); color:#fff; font-size:1.3rem; padding:2px 8px; border-radius:9999px; }
.aps-policy-card__title { font-size:1.4rem; line-height:1.35; margin:6px 0 6px; color:#0E395D; }
.aps-policy-card__desc { margin:0; opacity:0.95; font-size: 1.3rem; }


.aps-policy-list__footer { margin-top:16px; text-align:right; }
.aps-policy-list__all { color:inherit; text-decoration:underline; }


/* Compact vs detailed */
.aps-policy-list.style-compact .aps-policy-card__desc { display:none; }

/* ===== Detailed layout: show cards side-by-side (3 / 2 / 1) ===== */
.aps-policy-list.style-detailed .aps-policy-list__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

/* keep each card horizontal inside */
.aps-policy-list.style-detailed .aps-policy-card__wrap {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 18px;
  height: 100%;
}

/* left meta column (date/org) — slightly narrower for tiles */
.aps-policy-list.style-detailed .aps-policy-card__meta {
  flex: 0 0 150px;  /* tweak as needed (140–180px) */
  line-height: 1.2;
  white-space: nowrap;
}

/* responsive breakpoints for the tile grid */
@media (max-width: 1024px) {
  .aps-policy-list.style-detailed .aps-policy-list__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .aps-policy-list.style-detailed .aps-policy-card__meta {
    flex-basis: 140px;
  }
}

@media (max-width: 640px) {
  .aps-policy-list.style-detailed .aps-policy-list__grid {
    grid-template-columns: 1fr;
  }
  .aps-policy-list.style-detailed .aps-policy-card__wrap {
    flex-direction: column;
    gap: 8px;
  }
  .aps-policy-list.style-detailed .aps-policy-card__meta {
    flex-basis: auto;
    white-space: normal;
  }
}

/* === Detailed view: vertical content inside each card === */
.aps-policy-list.style-detailed .aps-policy-card__wrap {
  display: block;                 /* stack internals vertically */
  padding: 16px 18px;
}

.aps-policy-list.style-detailed .aps-policy-card__meta {
  display: block;
  margin-bottom: 8px;
  white-space: normal;            /* allow wrapping */
  flex: unset;                    /* neutralize older flex basis */
}

.aps-policy-list.style-detailed .aps-policy-card__title {
  margin: 2px 0 6px;
}

.aps-policy-list.style-detailed .aps-policy-card__desc {
  margin: 0;
}

/* Keep the tile grid (3 / 2 / 1) from the last step */
.aps-policy-list.style-detailed .aps-policy-list__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
@media (max-width: 1024px) {
  .aps-policy-list.style-detailed .aps-policy-list__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .aps-policy-list.style-detailed .aps-policy-list__grid {
    grid-template-columns: 1fr;
  }
}

.aps-policy-list.style-detailed .aps-policy-card__wrap:hover {
  background: rgba(0,0,0,0.02);
}
.aps-policy-list.scheme-dark.style-detailed .aps-policy-card__wrap:hover {
  background: rgba(255,255,255,0.06);
}