.jmc-editor .jav-picker { position: absolute; z-index: 350; display: flex; flex-direction: column; width: 701px; max-width: calc(100vw - 24px); height: 346px; max-height: calc(100dvh - 24px); min-width: 0; min-height: 0; padding-bottom: 16px; overflow: hidden; border: 1px solid #ffffff0d; border-radius: 12px; outline: none; background: #262628; box-shadow: 0 8px 28px #0006; color: #c4c4cd; font: 12px/20px "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif; }
.jmc-editor .jav-picker *, .jmc-editor .jav-picker *::before, .jmc-editor .jav-picker *::after { box-sizing: border-box; }
.jmc-editor .jav-picker [hidden] { display: none !important; }
.jmc-editor .jav-picker button { min-width: 0; min-height: 0; margin: 0; border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.jmc-editor .jav-picker button:disabled { cursor: not-allowed; }
.jmc-editor .jav-picker button:focus-visible { outline: 1px solid #c1c1d0; outline-offset: 2px; }
.jmc-editor .jav-picker svg { display: block; flex: 0 0 16px; width: 16px; height: 16px; pointer-events: none; }
.jmc-editor .jav-picker .jav-header { display: flex; flex: 0 0 52px; align-items: center; min-width: 0; height: 52px; padding: 12px 16px 4px; }
.jmc-editor .jav-picker .jav-tabs { display: flex; align-items: center; gap: 24px; height: 36px; }
.jmc-editor .jav-picker .jav-tab { position: relative; height: 36px; padding: 6px 0 10px; color: #888891; white-space: nowrap; }
.jmc-editor .jav-picker .jav-tab.is-active { color: #f0f0f3; }
.jmc-editor .jav-picker .jav-filters { display: grid; flex: 0 0 48px; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: center; gap: 8px; min-width: 0; height: 48px; padding: 4px 16px 8px; overflow-x: auto; scrollbar-width: none; }
.jmc-editor .jav-picker .jav-filters::-webkit-scrollbar { display: none; }
.jmc-editor .jav-picker .jav-filter { display: inline-flex; align-items: center; justify-content: space-between; gap: 5px; height: 36px; padding: 8px; border: 1px solid #ffffff05; border-radius: 6px; background: transparent; color: #a7a7b1; white-space: nowrap; }
.jmc-editor .jav-picker .jav-filter:hover { background: #ffffff0b; }
.jmc-editor .jav-picker .jav-filter.is-active { background: #ffffff0b; color: #eeeef2; }
.jmc-editor .jav-picker .jav-filter-label { color: #a9a9b2; }
.jmc-editor .jav-picker .jav-filter-value { display: none; }
.jmc-editor .jav-picker .jav-filter svg { flex-basis: 12px; width: 12px; height: 12px; color: #85858f; }
.jmc-editor .jav-picker .jav-filter-menu { position: absolute; z-index: 2; display: flex; flex-direction: column; gap: 2px; padding: 4px; overflow-y: auto; border: 1px solid #ffffff10; border-radius: 8px; background: #303033; box-shadow: 0 6px 20px #0006; scrollbar-width: thin; }
.jmc-editor .jav-picker .jav-filter-choice { display: block; flex: 0 0 28px; width: 100%; height: 28px; padding: 4px 8px; border-radius: 4px; color: #c4c4ce; text-align: left; }
.jmc-editor .jav-picker .jav-filter-choice:hover { background: #ffffff0b; }
.jmc-editor .jav-picker .jav-filter-group { position: relative; min-width: 0; height: 36px; }
.jmc-editor .jav-picker .jav-filter-group > .jav-filter { width: 100%; padding-right: 8px; }
.jmc-editor .jav-picker .jav-filter-group.has-clear > .jav-filter { padding-right: 32px; }
.jmc-editor .jav-picker .jav-filter.is-active .jav-filter-label { color: inherit; }
.jmc-editor .jav-picker .jav-filter-clear-control { position: absolute; top: 8px; right: 7px; display: grid; place-items: center; width: 20px; height: 20px; padding: 4px; border-radius: 4px; background: #ffffff0a; color: #acacb6; }
.jmc-editor .jav-picker .jav-filter-clear-control:hover { background: #ffffff18; color: #f1f1f4; }
.jmc-editor .jav-picker .jav-filter-clear-control svg { width: 12px; height: 12px; flex-basis: 12px; }
.jmc-editor .jav-picker .jav-gender-menu { gap: 4px; height: 84px; padding: 4px; border: 0; background: #333; }
.jmc-editor .jav-picker .jav-age-menu { gap: 4px; height: 204px; padding: 4px; border: 0; background: #333; }
.jmc-editor .jav-picker .jav-language-menu { gap: 4px; height: 124px; padding: 4px; border: 0; background: #333; }
.jmc-editor .jav-picker .jav-feature-menu { gap: 4px; height: 204px; padding: 4px; border: 0; background: #333; }
.jmc-editor .jav-picker :is(.jav-gender-menu,.jav-age-menu,.jav-language-menu,.jav-feature-menu) .jav-filter-choice { display: flex; align-items: center; flex-basis: 36px; height: 36px; padding: 9px 12px; font-size: 13px; line-height: 20px; font-weight: 500; }
.jmc-editor .jav-picker :is(.jav-gender-menu,.jav-age-menu,.jav-language-menu,.jav-feature-menu) .jav-filter-choice[aria-selected="true"] { background: #ffffff10; color: #fafafd; }
.jmc-editor .jav-picker .jav-body { flex: 1 1 auto; min-width: 0; min-height: 0; padding: 10px 16px 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #4b4b53 transparent; }
.jmc-editor .jav-picker .jav-list { --jav-columns: 4; display: grid; grid-template-columns: repeat(var(--jav-columns), minmax(0, 1fr)); align-content: start; gap: 4px; min-width: 0; }
.jmc-editor .jav-picker .jav-list.is-empty { display: block; }
.jmc-editor .jav-picker .jav-voice-row { position: relative; display: flex; align-items: center; gap: 8px; min-width: 0; height: 40px; padding: 6px 8px; border: 0; border-radius: 8px; background: transparent; }
.jmc-editor .jav-picker .jav-voice-row:hover { background: #ffffff08; }
.jmc-editor .jav-picker .jav-voice-row.is-selected { background: #ffffff0d; }
.jmc-editor .jav-picker .jav-play { display: grid; flex: 0 0 24px; place-items: center; width: 24px; height: 24px; padding: 6px; border-radius: 50%; background: #ffffff09; color: #c5c5ce; opacity: .55; }
.jmc-editor .jav-picker .jav-play svg { width: 12px; height: 12px; flex-basis: 12px; fill: currentColor; }
.jmc-editor .jav-picker .jav-select { display: flex; flex: 1 1 auto; align-items: center; justify-content: flex-start; gap: 4px; min-width: 0; height: 28px; padding: 3px 0; overflow: hidden; color: #d0d0d8; font-size: 14px; line-height: 22px; text-align: left; }
.jmc-editor .jav-picker .jav-voice-name { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.jmc-editor .jav-picker .jav-selected-icon { display: grid; flex: 0 0 16px; place-items: center; width: 16px; height: 16px; opacity: 0; }
.jmc-editor .jav-picker .jav-voice-row.is-selected .jav-selected-icon { opacity: 1; }
.jmc-editor .jav-picker .jav-select[aria-pressed="true"] { color: #fafafd; }
.jmc-editor .jav-picker .jav-favorite { position: absolute; top: 6px; right: 6px; display: grid; place-items: center; width: 24px; height: 28px; padding: 4px; border-radius: 5px; color: #72727e; opacity: 0; }
.jmc-editor .jav-picker .jav-voice-row:is(:hover, :focus-within) .jav-favorite, .jmc-editor .jav-picker .jav-favorite.is-favorite { opacity: 1; }
.jmc-editor .jav-picker .jav-voice-row:is(:hover, :focus-within) .jav-selected-icon { opacity: 0; }
.jmc-editor .jav-picker .jav-favorite:hover { background: #ffffff0a; color: #d1d1da; }
.jmc-editor .jav-picker .jav-favorite.is-favorite { color: #dddde5; }
.jmc-editor .jav-picker .jav-favorite.is-favorite svg { fill: currentColor; }
.jmc-editor .jav-picker .jav-create-row { min-width: 0; height: 40px; }
.jmc-editor .jav-picker .jav-create { display: flex; align-items: center; justify-content: flex-start; gap: 8px; width: 100%; height: 40px; padding: 6px 8px; border: 0; border-radius: 8px; background: transparent; color: #d0d0d8; font-size: 14px; line-height: 22px; }
.jmc-editor .jav-picker .jav-create svg { flex: 0 0 24px; width: 24px; height: 24px; padding: 6px; border-radius: 50%; background: #ffffff09; }
.jmc-editor .jav-picker .jav-create:hover { background: #ffffff07; }
.jmc-editor .jav-picker .jav-empty { padding: 28px 16px; margin: 0; color: #8f8f9a; font-size: 12px; line-height: 21px; text-align: center; }
.jmc-editor .jav-picker .jav-status { min-width: 0; padding: 10px 0 0; margin: 0; color: #7f7f8b; font-size: 10px; line-height: 16px; }
@media (hover: none) { .jmc-editor .jav-picker .jav-favorite { opacity: 1; } .jmc-editor .jav-picker .jav-selected-icon { display: none; } }
@media (max-width: 620px) { .jmc-editor .jav-picker .jav-list { --jav-columns: 3; } .jmc-editor .jav-picker .jav-header, .jmc-editor .jav-picker .jav-filters { padding-right: 12px; padding-left: 12px; } .jmc-editor .jav-picker .jav-body { padding-right: 12px; padding-left: 12px; } }
@media (max-width: 480px) { .jmc-editor .jav-picker .jav-list { --jav-columns: 2; } .jmc-editor .jav-picker .jav-filters { display: flex; } .jmc-editor .jav-picker .jav-filter, .jmc-editor .jav-picker .jav-filter-group { flex: 0 0 108px; } }
@media (max-width: 340px) { .jmc-editor .jav-picker .jav-list { --jav-columns: 1; } .jmc-editor .jav-picker .jav-tabs { gap: 18px; } }
@media (prefers-reduced-motion: reduce) { .jmc-editor .jav-picker, .jmc-editor .jav-picker * { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
