/* One dropdown surface across the control plane and miniapp, using their existing tokens. */
.ks-select{position:relative;display:inline-flex;flex-direction:column;vertical-align:middle;width:100%;min-width:0;max-width:100%;text-align:start;font:inherit}
.ks-select[hidden]{display:none!important}
.ks-select.ks-field{margin-top:6px}
.row>.ks-select,.fbar>.ks-select{width:auto;flex:1 1 120px;margin-top:0}
select.ks-native{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0!important;clip-path:inset(50%)!important;overflow:hidden!important;pointer-events:none!important;inset:0!important;border:0!important}
.ks-select>.ks-trigger{display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:44px;margin:0;padding:10px 12px;text-align:start;font:inherit;font-weight:500;line-height:1.5;color:var(--fg,var(--foreground,#202220));background:var(--card,var(--card-bg,#fff));border:1px solid var(--input-c,var(--border,#ddd));border-radius:calc(var(--radius,12px) - 2px);box-shadow:var(--shadow-sm,0 1px 2px #00000008);cursor:pointer;transition:border-color .16s,box-shadow .16s,background .16s;filter:none;transform:none}
.ks-select>.ks-trigger:hover{background:var(--card,var(--card-bg,#fff));border-color:var(--ring,var(--primary,#426b55));filter:none;transform:none}
.ks-select>.ks-trigger:focus-visible,.ks-select.is-open>.ks-trigger{outline:2px solid var(--ring,var(--primary,#426b55));outline-offset:2px;border-color:var(--ring,var(--primary,#426b55));box-shadow:none}
.ks-select>.ks-trigger:disabled{cursor:not-allowed;opacity:.5}
.ks-select>.ks-trigger[aria-invalid=true]{border-color:var(--danger,#c44242)}
.ks-value{display:flex;align-items:center;gap:9px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.ks-chevron{display:inline-flex;flex:none;color:var(--muted-foreground,var(--muted,#727872));transition:transform .16s}
.ks-chevron svg,.ks-check svg,.ks-search-wrap>svg{display:block;width:19px;height:19px;flex:none}
.ks-select.is-open .ks-chevron{transform:rotate(180deg)}
.ks-error{color:var(--danger,#c44242);font-size:12px;line-height:1.6;margin-top:5px}
.ks-panel{position:fixed;z-index:10050;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden;max-width:calc(100vw - 20px);padding:5px;background:var(--popover,var(--card,#fff));color:var(--popover-foreground,var(--fg,#202220));border:1px solid var(--border-c,var(--border,#ddd));border-radius:calc(var(--radius,12px) + 4px);box-shadow:0 16px 46px -10px #00000035,0 2px 8px #0000000a;font-family:inherit;font-size:14px;text-align:start;animation:ks-arrive .14s ease-out}
.ks-search-wrap{display:flex;align-items:center;gap:8px;flex:none;min-height:44px;padding:0 9px;margin-bottom:4px;border-bottom:1px solid var(--border-c,var(--border,#ddd));color:var(--muted-foreground,var(--muted,#727872))}
.ks-panel .ks-search{box-sizing:border-box;display:block;flex:1;min-width:0;width:100%;min-height:44px;margin:0;padding:8px 0;background:transparent;color:inherit;border:0;border-radius:0;box-shadow:none;outline:0;font:inherit;font-size:16px;text-align:start}
.ks-search::placeholder{color:var(--muted-foreground,var(--muted,#727872));opacity:1;font-size:13px}
.ks-search::-webkit-search-cancel-button{-webkit-appearance:none}
.ks-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 1px;scroll-padding:5px}
.ks-option{display:flex;align-items:center;gap:10px;min-height:44px;box-sizing:border-box;padding:9px 10px;margin:2px 0;border-radius:calc(var(--radius,12px) - 3px);font-weight:500;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}
.ks-option-content{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.ks-option[aria-selected=true]{background:var(--accent,#eff4ef);color:var(--accent-foreground,var(--fg,#20462e))}
.ks-option.is-active{outline:1px solid color-mix(in srgb,var(--ring,var(--primary,#426b55)) 40%,transparent);outline-offset:-1px;background:color-mix(in srgb,var(--accent,#eff4ef) 80%,var(--popover,#fff))}
.ks-option[aria-disabled=true]{opacity:.4;cursor:not-allowed}
.ks-option[hidden],.ks-group[hidden],.ks-empty[hidden],.ks-error[hidden]{display:none!important}
.ks-check{display:flex;flex:none;margin-inline-start:auto;visibility:hidden;color:var(--primary,#426b55)}
.ks-option[aria-selected=true] .ks-check{visibility:visible}
.ks-group{padding:11px 10px 5px;color:var(--muted-foreground,var(--muted,#727872));font-size:11px;font-weight:700}
.ks-empty{padding:25px 12px;text-align:center;font-size:13px;color:var(--muted-foreground,var(--muted,#727872))}
.ks-panel>.ks-done{flex:none;margin:5px 0 0;padding:9px;border:0;border-top:1px solid var(--border-c,var(--border,#ddd));border-radius:0;background:transparent;color:var(--primary,#426b55);font:inherit;font-weight:600;cursor:pointer}
.ks-panel>.ks-done:focus-visible{outline:2px solid var(--ring,var(--primary,#426b55));outline-offset:-2px}
@keyframes ks-arrive{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.ks-panel{animation:none}.ks-select>.ks-trigger,.ks-chevron{transition:none}}

/* Person renderer is a skin of the shared list, including the authenticated avatar. */
.ks-value .avatar.pp-av,.ks-option .avatar.pp-av{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:50%;font-size:12px;color:#fff;background-size:cover;background-position:center}
.ks-panel .avatar.has-img,.ks-value .avatar.has-img{color:transparent}
.ks-value .pp-ico,.ks-option .pp-ico{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--muted-surface,#f4f4f5);color:var(--muted-foreground,#71717a)}
.ks-value .pp-txt,.ks-option .pp-txt{display:flex;flex-direction:column;min-width:0;line-height:1.4}
.ks-value .pp-name,.ks-option .pp-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600}
.ks-value .pp-sub,.ks-option .pp-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:400;color:var(--muted-foreground,#71717a)}

.ks-required-hint:not([hidden]){position:absolute;width:1px;height:1px;min-width:0;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
