/* KS-VSEL — the styled picker's rules, shared by the app and the guest details form. Tokens fall
   back to the guest page's own (--paper, --ink, --acc, --rowalt) and then to fixed colours. */
.vsel{position:relative;display:inline-block;vertical-align:middle}
.vsel-native{position:absolute;opacity:0;pointer-events:none;width:0;height:0;overflow:hidden}
.vsel-btn{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:9px;justify-content:space-between;background:var(--panel2,var(--rowalt,#f7fafc));border:1px solid var(--line,#e3e9ef);border-radius:9px;padding:7px 11px;font-size:12px;color:var(--text,var(--ink,#1a2430));font-weight:600;line-height:1.25;min-height:32px;max-width:100%}
.vsel-btn:hover,.vsel-btn.vopen{border-color:var(--accent,var(--acc,#ff3d63))}
.vsel-btn .vchev{opacity:.55;flex-shrink:0;font-size:10px;transition:transform .12s}
.vsel-btn.vopen .vchev{transform:rotate(180deg)}
.vsel-btn .vlb{display:inline-grid;min-width:0;flex:1 1 auto}
.vsel-btn .vlb > span{grid-area:1/1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vsel-btn .vlbl-w{visibility:hidden}
/* borderless variant for selects that were styled as inline .csin fields (call-sheet tiles etc.) */
.vsel-btn.csin{background:transparent;border:1px solid transparent;border-radius:4px;padding:1px 4px;font-weight:inherit;color:var(--ink,var(--text,#1a2430));min-height:0;gap:5px}
.vsel-btn.csin:hover,.vsel-btn.csin.vopen{border-color:var(--pline,var(--line,#e3e9ef))}
.vsel-menu{position:fixed;z-index:80;background:var(--panel,var(--paper,#fff));border:1px solid var(--line,#e3e9ef);border-radius:11px;box-shadow:0 18px 46px rgba(0,0,0,.5);padding:6px;max-height:min(360px,70vh);overflow-y:auto}
.vsel-search{width:100%;box-sizing:border-box;margin-bottom:6px;padding:8px 10px;font-size:12.5px}
.vsel-opt{display:flex;align-items:center;gap:9px;padding:8px 11px;border-radius:7px;font-size:12.5px;color:var(--text,var(--ink,#1a2430));cursor:pointer}
.vsel-opt:hover,.vsel-opt.active{background:var(--panel2,var(--rowalt,#f7fafc))}
.vsel-opt .vck{width:13px;flex-shrink:0;color:var(--accent,var(--acc,#ff3d63));font-size:11px}
.vsel-opt.sel{color:var(--accent,var(--acc,#ff3d63));font-weight:700}
@media print{ .vsel-btn{border:none;background:transparent;padding:0} .vsel-btn .vchev{display:none} }
