.catalogue .section-heading,
.catalogue .catalogue-tools,
.catalogue .voice-result-count{grid-column:1/-1}
.catalogue .catalogue-tools{width:100%;align-items:center;flex-wrap:wrap}
.catalogue .filter-tabs{flex:1 1 650px;flex-wrap:wrap;gap:5px}
.catalogue .filter-tabs button{white-space:nowrap}
.catalogue .search-field{flex:0 1 225px;min-width:180px}
.voice-result-count{font-size:12px;color:var(--muted);margin:0 0 18px}
.character-card{display:flex;flex-direction:column;min-width:0;border:2px solid var(--peach);border-radius:16px;background:var(--paper);overflow:hidden}
.character-card .character-art{border:0;border-radius:0}
.character-card .character-art>a{border-radius:0}
.character-card .character-info{flex:1;padding:12px}
.character-card .character-name{font-size:16px;line-height:1.25;overflow-wrap:anywhere}
.character-card .character-info p{min-height:0;margin-top:6px;font-size:12px;line-height:1.5}
.character-card-actions{margin-top:auto;background:var(--cream)}
.character-card .sample-button.catalogue-sample{display:flex;position:static;align-items:center;justify-content:flex-start;gap:8px;width:100%;min-height:52px;margin:0;padding:10px 12px;border:0;border-radius:0;background:transparent;color:var(--blue);font-size:12px;line-height:1.3;text-align:left}
.character-card .sample-play-icon{width:30px;height:30px;flex-shrink:0}
.character-card .catalogue-sample:hover,.character-card .catalogue-sample.playing{background:var(--sage)}
.character-card .voice-create-link{justify-content:center;min-height:44px;padding:8px 12px;border-top:1px solid #15203312;font-size:12px;line-height:1.35;color:var(--blue)}
.character-card .voice-create-link:hover{background:var(--sage)}
.character-card .catalogue-sample:focus-visible,.character-card .voice-create-link:focus-visible{outline:3px solid var(--blue);outline-offset:-4px}
.studio-voice-tools{display:flex;align-items:center;gap:12px}
.studio-voice-tools .search-field{flex:1;min-width:0;width:auto;margin:0}
.studio-voice-tools .search-field input{font-size:14px}
.studio-category-label{min-width:0;flex:0 1 165px}
.studio-category-label select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:10px 30px 10px 12px;font:inherit;font-size:13px}
.studio-voice-tools+.voice-result-count{margin:14px 0}
.studio-voice-options{max-height:510px;overflow-y:auto;overscroll-behavior-y:contain;padding:3px 5px 5px 3px;scrollbar-gutter:stable}
.studio-voice-option{position:relative;min-width:0;display:flex;flex-direction:column;border:2px solid transparent;border-radius:14px;background:var(--paper);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.studio-voice-option:hover{border-color:#214cf459}
.studio-voice-option.selected{border-color:var(--blue);box-shadow:0 0 0 2px #214cf41f}
.studio-voice-option.selected:after{content:'✓';position:absolute;top:9px;right:9px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid var(--paper);border-radius:50%;background:var(--blue);color:var(--paper);font-size:13px;pointer-events:none}
.studio-voice-option .studio-character,.studio-voice-option .studio-character.selected{display:flex;flex-direction:column;width:100%;flex:1;border:0;border-radius:0;box-shadow:none;background:transparent;transform:none;transition:none}
.studio-voice-option .studio-character.selected:after{display:none}
.studio-voice-option .studio-character img{display:block}
.studio-voice-option .studio-character strong{display:flex;align-items:center;flex:1;min-height:46px;padding:10px 12px;font-size:14px;line-height:1.3}
.studio-voice-sample{display:flex;align-items:center;gap:9px;width:100%;min-height:52px;padding:8px 12px;border:0;border-radius:0;background:var(--cream);color:var(--blue);font:inherit;font-size:12px;line-height:1.3;text-align:left;transition:background .15s}
.studio-sample-play{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--blue);color:var(--paper)}
.studio-voice-sample:hover,.studio-voice-sample.playing{background:var(--sage)}
.studio-sample-waveform{display:none;align-items:center;gap:2px;height:20px;margin-left:auto}
.studio-sample-waveform i{display:block;width:2px;height:var(--h);border-radius:3px;background:currentColor}
.studio-voice-sample.playing .studio-sample-waveform i{animation:pulse .7s ease-in-out infinite alternate}
.studio-voice-empty{padding:24px 0;font-size:13px;line-height:1.7}
.studio-voice-options [hidden]{display:none}
.studio-voice-options .studio-character:focus-visible,.studio-voice-sample:focus-visible{outline:3px solid var(--blue);outline-offset:-4px}
.studio-voice-tools input:focus-visible,.studio-category-label select:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.site-header .brand-characters{max-width:290px}
.site-header .brand-character{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
@media(min-width:1100px){.studio-sample-waveform{display:flex}}
@media(max-width:760px){
  .catalogue .filter-tabs{flex-basis:100%}
  .catalogue .search-field{flex:1 1 100%;width:100%}
  .site-header .brand-characters{max-width:245px}
}
@media(max-width:600px){
  .catalogue .filter-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}
  .voice-result-count{font-size:11px;margin-bottom:15px}
  .character-card .character-name{font-size:15px}
  .character-card .character-info{padding:10px}
  .character-card .sample-button.catalogue-sample{padding-inline:10px}
  .studio-voice-tools{flex-wrap:wrap;gap:10px}
  .studio-voice-tools .search-field{flex:1 1 100%;width:100%}
  .studio-category-label{flex:1 1 100%;width:100%}
  .studio-category-label select{font-size:16px}
  .studio-voice-options{max-height:435px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .site-header .brand-characters{max-width:175px}
}
@media(max-width:380px){.site-header .brand-characters{max-width:150px}.character-card .sample-button.catalogue-sample{gap:6px;padding-inline:8px;font-size:11px}.character-card .voice-create-link{padding-inline:8px;font-size:11px}.character-card .sample-play-icon{width:28px;height:28px}}
@media(max-width:380px){.studio-voice-sample{gap:6px;padding-inline:8px;font-size:11px}.studio-sample-play{width:28px;height:28px}.studio-voice-option .studio-character strong{padding-inline:8px;font-size:13px}}
