/* Shared sponsor-card presentation comes from frontend.css. */
.expo-prize-categories { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.expo-prize-categories a.expo-prize-category { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 16px; border: 1px solid #cbd9ce; border-radius: 8px; background: #fff; color: #242424; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.expo-prize-category .dashicons { flex: 0 0 26px; width: 26px; height: 26px; font-size: 26px; color: #287b24; }
.expo-prize-category-arrow { margin-left: auto; flex-shrink: 0; font-size: 24px; }
.expo-prize-categories a.expo-prize-category:hover { border-color: #287b24; background: #f2f8f3; }
.expo-prize-categories a.expo-prize-category:active { background: #dceede; }
.expo-prize-category:focus-visible, .expo-prize-pagination a:focus-visible { outline: 3px solid #089dd9; outline-offset: 3px; }
.expo-prize-filter .expo-exhibitors-filter-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.expo-prize-filter input, .expo-prize-filter select, .expo-prize-filter button { min-height: 48px; }
.expo-prize-results { margin: 20px 0; }
.expo-prize-pagination { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px; padding: 24px 0; }
.expo-prize-pagination a { display: inline-flex; align-items: center; min-height: 48px; padding: 8px 16px; color: #242424; border: 1px solid #cbd9ce; border-radius: 4px; background: #fff; }
@media (max-width: 980px) { .expo-prize-categories { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .expo-prize-categories, .expo-prize-filter .expo-exhibitors-filter-fields { grid-template-columns: 1fr; } }
.expo-tombola-dynamic { color: #242424; }
.expo-tombola-dynamic .expo-sponsors-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.expo-tombola-sponsor-group--main_sponsor .expo-sponsors-grid { grid-template-columns: 1fr; }
.expo-tombola-sponsor-group--sponsor .expo-sponsors-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.expo-tombola-sponsor-group + .expo-tombola-sponsor-group { margin-top: 24px; }
.expo-tombola-dynamic .expo-sponsor-name { font-size: 18px; }
.expo-tombola-dynamic .expo-sponsor-logo { min-height: 120px; }
.expo-tombola-dynamic .expo-sponsor-logo img { max-height: 120px; object-fit: contain; }
.expo-tombola-sponsor-group--sponsor .expo-sponsor-logo { min-height: 84px; }
.expo-tombola-sponsor-group--sponsor .expo-sponsor-logo img { max-height: 84px; }
.expo-tombola-prizes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.expo-tombola-prizes--featured { grid-template-columns: 1fr; }
.expo-tombola-prizes .expo-tombola-prize { display: flex; flex-direction: column; padding: 0; overflow: hidden; min-width: 0; }
.expo-tombola-prize img.expo-tombola-prize-image { display: block; width: 100%; max-width: 100%; height: auto; max-height: none; aspect-ratio: 4 / 3; object-fit: contain; background: #fff; }
.expo-tombola-prize-body { width: 100%; padding: 24px; text-align: left; overflow-wrap: anywhere; }
.expo-tombola-prize-body h3 { font-size: 22px; margin: 0 0 12px; }
.expo-tombola-prize-body p { margin: 0 0 12px; padding: 0; }
.expo-tombola-rank { color: #287b24; font-weight: 800; }
.expo-tombola-provided-label { font-weight: 700; }
.expo-tombola-prize-body ul.expo-tombola-prize-sponsors { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.expo-tombola-prize-sponsors a { display: flex; align-items: center; gap: 12px; color: #242424; text-decoration: underline; }
.expo-tombola-prize-sponsors img { width: 64px; height: 48px; object-fit: contain; }
.expo-tombola-empty { padding: 20px 0; }
@media (max-width: 980px) {
  .expo-tombola-dynamic .expo-sponsors-grid,
  .expo-tombola-prizes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .expo-tombola-sponsor-group--main_sponsor .expo-sponsors-grid,
  .expo-tombola-prizes--featured { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .expo-tombola-dynamic .expo-sponsors-grid,
  .expo-tombola-prizes { grid-template-columns: 1fr; }
}
