/* Portal and Platform Admin share one dropdown implementation and theme tokens. */
.theme-select{position:relative;display:block;width:100%;min-width:0;margin-top:7px}
select.theme-select-native{position:absolute!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none!important}
.theme-select .theme-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--control-border,var(--line,#dbdfe9));border-radius:6px;background:var(--surface,var(--card,#fff));color:var(--ink,#252f4a);font:inherit;font-weight:400;line-height:1.5;text-align:start;box-shadow:none;cursor:pointer}
.theme-select-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-select-arrow{flex:none;color:var(--muted,#78829d);font-size:16px;line-height:1}
.theme-select .theme-select-trigger:hover{background:var(--surface,var(--card,#fff));color:var(--ink,#252f4a);border-color:var(--control-focus,var(--blue,#1b84ff));filter:none}
.theme-select-trigger:focus-visible{outline:2px solid var(--control-focus,var(--blue,#1b84ff));outline-offset:2px}
.theme-select-trigger[aria-invalid=true]{border-color:var(--error,#b42318)}.theme-select .theme-select-trigger:disabled{opacity:.65;cursor:not-allowed;background:var(--soft,#f9f9f9)}
.theme-select-panel{position:fixed;inset:auto;margin:0;padding:8px;box-sizing:border-box;z-index:1500;display:flex;flex-direction:column;gap:7px;overflow:hidden;border:1px solid var(--control-border,var(--line,#dbdfe9));border-radius:8px;background:var(--surface,var(--card,#fff));color:var(--ink,#252f4a);box-shadow:0 8px 28px #07143726;font:13px/1.5 Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;text-align:start}
.theme-select-panel::backdrop{background:transparent;pointer-events:none}
.theme-select-panel .theme-select-search{flex:none;box-sizing:border-box;display:block;width:100%;min-width:0;min-height:40px;margin:0;padding:9px 11px;border:1px solid var(--control-border,var(--line,#dbdfe9));border-radius:6px;background:var(--canvas,var(--bg,#fff));color:var(--ink,#252f4a);font:inherit}
.theme-select-search:focus-visible{outline:2px solid var(--control-focus,var(--blue,#1b84ff));outline-offset:0}
.theme-select-options{overflow:auto;min-height:0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--control-border,var(--line,#dbdfe9)) transparent}
.theme-select-panel .theme-select-options button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:9px 11px;border:0;border-radius:5px;background:transparent;color:var(--ink,#252f4a);font:inherit;font-weight:400;text-align:start;white-space:normal;overflow-wrap:anywhere;box-shadow:none;cursor:pointer}
.theme-select-panel .theme-select-options button:is(:hover,:focus-visible,[aria-selected=true]){background:var(--accent-soft,var(--soft,#eff6ff));color:var(--purple,var(--blue,#1b84ff));filter:none;outline:none}
.theme-select-options button[aria-selected=true]::after{content:'✓';flex:none;margin-inline-start:12px;font-weight:600}
.theme-select-panel .theme-select-options button:disabled{opacity:.5;cursor:not-allowed;background:transparent}
.theme-select-group{padding:10px 11px 5px;color:var(--muted,#78829d);font-size:11px;font-weight:600}
.theme-select-empty,.theme-select-error{margin:0;padding:9px 11px;color:var(--muted,#78829d);font:inherit}.theme-select-error{color:var(--error,#b42318)}
.theme-select[hidden],.theme-select-panel[hidden],.theme-select-panel [hidden]{display:none!important}
@media(pointer:coarse){.theme-select-panel .theme-select-options button{min-height:44px}}
@media(max-width:550px){.theme-select .theme-select-trigger,.theme-select-panel,.theme-select-panel .theme-select-search{font-size:16px}}
.library-search>.theme-select{width:145px;min-width:120px;margin:0;flex:none}
.table-filter-panel>.theme-select{width:auto;min-width:145px;margin:0}
:is(.text-format-toolbar,.object-quick-toolbar) .theme-select{width:auto;min-width:58px;margin:0;flex:0 1 auto}
:is(.text-format-toolbar,.object-quick-toolbar) .theme-select>button.theme-select-trigger{min-height:32px;height:32px;padding:3px 7px;font-size:12px}
@media(max-width:700px){.library-search>.theme-select{flex:1;min-width:120px}}
.smart-group-connector>.theme-select{position:relative;width:100px;height:auto;flex:0 0 100px;margin:0;padding:0;overflow:visible;clip:auto;white-space:normal}
.smart-group-connector>.theme-select>.theme-select-trigger{min-height:38px;font-weight:600;color:var(--purple,#1b84ff)}
