/* Extend the existing forest-green and gold Music interface. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.discovery-search{padding:1.2rem;margin-bottom:1rem}
.discovery-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1.6rem}
.discovery-field{display:flex;flex-direction:column;gap:.5rem;min-width:0;font-size:1rem;color:var(--paper)}
.discovery-field>span,.discovery-fields legend{font-weight:700;font-size:1rem;color:var(--paper)}
.discovery-field input,.discovery-field select{box-sizing:border-box;min-width:0;width:100%;min-height:48px;padding:.75rem .85rem;border:1px solid var(--line-strong);border-radius:10px;background:#10211c;color:var(--paper);font:inherit}
.discovery-field input::placeholder{color:#9eafa6;opacity:1}
.discovery-fields fieldset{min-width:0;margin:0;padding:0;border:0}
.discovery-fields legend{padding:0;margin-bottom:.65rem}
.mood-options{display:flex;flex-wrap:wrap;gap:.5rem}
.mood-choice{position:relative;display:inline-flex;cursor:pointer}
.mood-choice input{position:absolute;opacity:0;width:1px;height:1px}
.mood-choice span{display:flex;align-items:center;min-height:44px;padding:.5rem .8rem;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:24px;font-size:.9rem;color:#d6e0d9;background:#10211c}
.mood-choice input:checked+span{border-color:var(--gold);background:#332c18;color:#ffe0a2}
.mood-choice input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}
.search-help{margin:.65rem 0 0;color:#adbbb3;font-size:.875rem;line-height:1.5}
.year-controls{margin-top:.65rem}
.year-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.discovery-search [hidden],.search-status[hidden],.search-status [hidden]{display:none!important}
.discovery-search .search-actions{gap:.65rem;margin-top:1rem}
.discovery-search .search-actions button{min-height:46px;font-size:.95rem}
.discovery-search #run-detailed-search{min-width:135px;justify-content:center}
.discovery-search .saved-search-link{margin-left:auto;padding:.6rem .5rem;color:var(--gold);background:none;border:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.active-search-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.active-search-filters button{max-width:100%;overflow-wrap:anywhere;min-height:40px;padding:.5rem .7rem;border:1px solid var(--line-strong);border-radius:8px;background:#172b22;color:#e1e8e2;text-align:left;font-size:.875rem;cursor:pointer}
.active-search-filters button span{padding-left:.55rem;color:var(--gold);font-size:1.1rem}
.search-validation,#saved-search-error{padding:.7rem .85rem;color:#ffd0af;border:1px solid #ae7950;border-radius:8px;font-size:1rem;line-height:1.5}
.search-status{margin:0 0 1.5rem;padding:1.15rem 1.25rem;border:1px solid #9a8049;border-left:4px solid var(--gold);border-radius:12px;background:linear-gradient(120deg,#1c3025,#112018);color:var(--paper)}
.search-status-heading{display:flex;gap:.75rem;align-items:center}
.search-status-heading strong{font-size:1.12rem;line-height:1.5}
.search-status p{margin:.5rem 0 0;font-size:1rem;line-height:1.6;color:#cad6cd}
.search-status .search-status-numbers{color:#f1d397;font-weight:600;font-variant-numeric:tabular-nums}
.search-status-symbol{flex:0 0 18px;width:18px;height:18px;border:2px solid var(--gold);border-radius:50%;box-sizing:border-box}
.search-status[data-state="running"] .search-status-symbol{border-right-color:transparent;animation:discovery-spin 1s linear infinite}
.search-status[data-state="complete"] .search-status-symbol::after{content:'✓';display:block;text-align:center;font-size:12px;line-height:14px;color:var(--gold)}
.search-status[data-state="draft"]{border-color:#687d70;background:#14241c}
.search-status[data-state="partial"],.search-status[data-state="error"]{border-color:#c68f57;background:#2c2419}
.search-status progress{display:block;width:100%;height:8px;margin-top:.95rem;overflow:hidden;border:0;border-radius:99px;background:#394737;accent-color:#e1b966}
.search-status progress::-webkit-progress-bar{background:#394737;border-radius:99px}
.search-status progress::-webkit-progress-value{background:#e1b966;border-radius:99px}
.search-status progress::-moz-progress-bar{background:#e1b966;border-radius:99px}
.search-status .button{margin-top:.9rem}
.saved-search-tile{padding:0!important;overflow:hidden}
.saved-search-tile .saved-search-open{display:block;width:100%;padding:1.25rem;text-align:left;border:0;background:none;color:var(--paper);cursor:pointer;font:inherit}
.saved-search-tile .saved-search-open p{max-width:100%;overflow-wrap:anywhere}
.saved-search-open-label{display:block;color:var(--gold);font-size:.9rem;margin-top:.75rem}
.saved-search-edit-actions{display:flex;flex-wrap:wrap;gap:.4rem;padding:.65rem 1rem;border-top:1px solid var(--line)}
.saved-search-edit-actions button{min-height:44px;padding:.45rem .55rem;border:0;border-radius:6px;background:none;color:#d9c598;cursor:pointer;font-size:.875rem}
.saved-search-edit-actions button:hover,.saved-search-open:hover{background:rgba(224,183,103,.06)}
.discovery-search button:focus-visible,.discovery-field input:focus-visible,.discovery-field select:focus-visible,.saved-search-tile button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@keyframes discovery-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.search-status[data-state="running"] .search-status-symbol{animation:none}}
@media(max-width:700px){.discovery-fields{grid-template-columns:1fr;gap:1.15rem}.discovery-search{padding:1rem}.discovery-search .search-actions .button{flex:1 1 44%;padding:.65rem .7rem}.discovery-search .saved-search-link{margin-left:0}.search-status{padding:1rem}.search-status-heading strong{font-size:1.05rem}}

.saved-search-tile::after{pointer-events:none}
.saved-search-tile .saved-search-open,.saved-search-edit-actions{position:relative;z-index:2}

.discovery-genre{grid-column:1/-1}
