/* ELENCO ISCRIZIONI U14/U13 */
.enrollment-directory {
  position: relative;
  overflow: hidden;
  padding: 30px;
  border: 1px solid #cfe0ec;
  border-radius: 24px;
  background: linear-gradient(145deg, #ffffff 0%, #f2f8fd 100%);
  box-shadow: 0 14px 40px rgba(20, 52, 82, .08);
}
.enrollment-directory::after {
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  right: -125px;
  top: -125px;
  border-radius: 50%;
  border: 1px solid rgba(11, 122, 203, .14);
  box-shadow: 0 0 0 34px rgba(11, 122, 203, .04);
  pointer-events: none;
}
.enrollment-directory > * { position: relative; z-index: 1; }
.enrollment-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; }
.enrollment-heading h2 { margin: 7px 0 8px; color: var(--blue-950); font-size: clamp(1.45rem, 3vw, 2.05rem); }
.enrollment-heading p { margin: 0; color: var(--muted); max-width: 760px; line-height: 1.6; }
.enrollment-eyebrow { color: var(--blue-700); opacity: 1; }
.enrollment-live-badge { display: inline-flex; flex: 0 0 auto; padding: 8px 11px; border-radius: 999px; background: #e7f7f0; color: #11724e; font-size: .76rem; font-weight: 800; }
.enrollment-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 24px; }
.enrollment-kpi { padding: 17px; border: 1px solid #d4e2ed; border-radius: 16px; background: rgba(255,255,255,.88); }
.enrollment-kpi span { display: block; color: var(--muted); font-size: .78rem; font-weight: 750; }
.enrollment-kpi strong { display: block; margin-top: 5px; color: var(--blue-950); font-size: 1.8rem; }
.enrollment-toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-top: 22px; }
.enrollment-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.enrollment-filter { min-height: 38px; padding: 7px 13px; border: 1px solid #c8d9e6; border-radius: 999px; background: #fff; color: var(--blue-950); font-weight: 750; cursor: pointer; }
.enrollment-filter.active { border-color: var(--blue-700); background: var(--blue-700); color: #fff; }
.enrollment-search { width: min(340px, 100%); margin: 0; }
.enrollment-search span { display: block; margin-bottom: 6px; color: var(--muted); font-size: .78rem; font-weight: 750; }
.enrollment-search input { min-height: 42px; }
.enrollment-season { margin-top: 16px; color: var(--muted); font-size: .82rem; font-weight: 700; }
.enrollment-list { display: grid; gap: 9px; margin-top: 12px; }
.enrollment-row { display: grid; grid-template-columns: minmax(0, 1fr) auto 130px; gap: 18px; align-items: center; padding: 15px 17px; border: 1px solid #d8e4ed; border-radius: 14px; background: #fff; }
.enrollment-company strong { display: block; color: var(--blue-950); font-size: .98rem; }
.enrollment-company span { display: block; margin-top: 4px; color: var(--muted); font-size: .8rem; }
.enrollment-categories { display: flex; flex-wrap: wrap; gap: 6px; }
.enrollment-category { display: inline-flex; align-items: center; justify-content: center; min-width: 48px; padding: 6px 9px; border-radius: 999px; font-size: .74rem; font-weight: 900; }
.enrollment-category-u14 { background: #e7efff; color: #214ea1; }
.enrollment-category-u13 { background: #e5f7f0; color: #12704e; }
.enrollment-date { text-align: right; }
.enrollment-date span { display: block; color: var(--muted); font-size: .72rem; }
.enrollment-date strong { display: block; margin-top: 3px; color: var(--blue-950); font-size: .84rem; }
.enrollment-loading, .enrollment-empty { padding: 22px; border: 1px dashed #c8d8e5; border-radius: 14px; background: rgba(255,255,255,.72); color: var(--muted); text-align: center; }
.enrollment-error { color: var(--danger); border-color: #efc4c9; background: #fff7f8; }
.enrollment-directory-admin { background: #fff; box-shadow: none; }
.enrollment-admin-table { margin-top: 13px; }
@media (max-width: 850px) {
  .enrollment-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .enrollment-toolbar, .enrollment-heading { align-items: stretch; flex-direction: column; }
  .enrollment-search { width: 100%; }
  .enrollment-row { grid-template-columns: minmax(0, 1fr) auto; }
  .enrollment-date { grid-column: 1 / -1; text-align: left; border-top: 1px solid #e4edf3; padding-top: 9px; }
}
@media (max-width: 560px) {
  .enrollment-directory { padding: 20px; border-radius: 19px; }
  .enrollment-kpis { grid-template-columns: 1fr 1fr; gap: 9px; }
  .enrollment-kpi { padding: 13px; }
  .enrollment-kpi strong { font-size: 1.45rem; }
  .enrollment-row { grid-template-columns: 1fr; gap: 10px; }
  .enrollment-date { grid-column: auto; }
}
