.public-discovery { padding-top: 2rem; padding-bottom: 3rem; color: var(--ui-text); }
.public-discovery [hidden] { display: none !important; }
.public-discovery .discovery-heading { display: flex; gap: 1.5rem; justify-content: space-between; align-items: center; margin-bottom: 1.5rem; }
.public-discovery h1 { font-size: var(--ui-type-page); color: var(--ui-heading); }
.public-discovery p { color: var(--ui-text-muted); margin: .35rem 0; overflow-wrap: anywhere; }
.public-discovery .discovery-filters { display: grid; grid-template-columns: 2fr 1fr 1fr auto; gap: 1rem; padding: 1.25rem; background: var(--ui-surface); border: 1px solid var(--ui-border); border-radius: var(--ui-radius-lg); align-items: end; }
.public-discovery label { display: grid; gap: .5rem; font-size: var(--ui-type-label); font-weight: 600; min-width: 0; margin: 0; }
.public-discovery input, .public-discovery select { width: 100%; min-height: 44px; background: var(--ui-surface); color: var(--ui-text); border-color: var(--ui-border-strong); }
.public-discovery .discovery-summary { margin: 1rem 0; }
.public-discovery .discovery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.public-discovery .discovery-card { display: flex; gap: 1rem; padding: 1.25rem; background: var(--ui-surface); color: var(--ui-text); border: 1px solid var(--ui-border); border-radius: var(--ui-radius-lg); text-decoration: none; box-shadow: var(--ui-shadow-sm); }
.public-discovery .discovery-card:hover { border-color: var(--ui-primary); }
.public-discovery :is(a, button, input, select):focus-visible { outline: 3px solid var(--ui-primary); outline-offset: 3px; }
.public-discovery .discovery-details { min-width: 0; }
.public-discovery .discovery-card h2 { color: var(--ui-heading); font-size: var(--ui-type-card); line-height: 1.35; overflow-wrap: anywhere; margin: 0 0 .5rem; }
.public-discovery .discovery-date { display: flex; flex-direction: column; align-items: center; min-width: 2.5rem; color: var(--ui-primary); text-transform: uppercase; }
.public-discovery .discovery-date strong { font-size: 1.75rem; }
.public-discovery .discovery-tags { display: flex; flex-wrap: wrap; gap: .4rem; }
.public-discovery .discovery-tags span:not(:empty) { background: var(--ui-surface-2); color: var(--ui-text); border-radius: var(--ui-radius-sm); padding: .2rem .5rem; font-size: .875rem; }
.public-discovery .discovery-cue { display: block; margin-top: 1rem; color: var(--ui-primary); font-weight: 600; }
.public-discovery .discovery-notice { padding: 2rem; background: var(--ui-surface); border: 1px solid var(--ui-border); border-radius: var(--ui-radius-lg); }
@media (max-width: 1000px) { .public-discovery .discovery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .public-discovery .discovery-filters { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .public-discovery .discovery-grid, .public-discovery .discovery-filters { grid-template-columns: 1fr; } .public-discovery .discovery-heading { align-items: flex-start; flex-direction: column; } }

/* Keep accessible native selects when the legacy layout enhances all selects. */
.public-discovery .discovery-filters select { display: block !important; }
.public-discovery .discovery-filters .nice-select { display: none !important; }

.public-discovery .discovery-filters :is(input, select, button) { margin-bottom: 0; }

.public-discovery .discovery-notice h2 { font-size: var(--ui-type-section); color: var(--ui-heading); }
