/* Opt-in paper-and-ink controls. Native select IDs, options and change events stay intact. */
select.game-select-native{
 position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;max-width:1px!important;max-height:1px!important;
 padding:0!important;margin:0!important;border:0!important;opacity:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;
 white-space:nowrap!important;pointer-events:none!important;
}
.game-select-control{
 --control-accent:var(--folio-accent,var(--green));position:relative;display:inline-flex;align-items:stretch;vertical-align:middle;
 width:100%;max-width:100%;min-width:0;flex:1 1 auto;box-sizing:border-box;font-size:14px;line-height:1.45;color:var(--ink);
}
.game-select-control>.game-select-trigger{
 appearance:none;display:flex;align-items:center;justify-content:space-between;gap:10px;box-sizing:border-box;width:100%;max-width:100%;min-width:0;
 min-height:44px!important;height:auto;margin:0!important;padding:9px 11px!important;border:1px solid var(--folio-edge,var(--line));border-radius:8px!important;
 background:var(--folio-control,var(--panel));color:var(--ink);font:inherit!important;line-height:1.45!important;text-align:left;white-space:normal;cursor:pointer;
 box-shadow:none;touch-action:manipulation;
}
.game-select-trigger .game-select-value{display:block;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.game-select-trigger .game-select-mark{display:flex;align-items:center;justify-content:center;flex:0 0 18px;width:18px;height:18px;color:var(--muted)}
.game-select-mark svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.game-select-control>.game-select-trigger:hover:not(:disabled){border-color:var(--control-accent);background:var(--folio-soft,var(--paper))}
.game-select-control>.game-select-trigger[aria-expanded=true]{border-color:var(--control-accent);background:var(--folio-selected,var(--paper))}
.game-select-trigger[aria-expanded=true] .game-select-mark{transform:rotate(180deg)}
.game-select-control>.game-select-trigger:focus-visible,.game-select-segments>.game-select-segment:focus-visible{
 outline:2px solid var(--control-accent);outline-offset:-2px;
}
.game-select-control>.game-select-trigger:disabled,.game-select-native:disabled+.game-select-control .game-select-trigger{
 opacity:.65;cursor:not-allowed;
}
.game-select-segments{
 display:flex;align-items:stretch;gap:3px;box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:3px;border:1px solid var(--line);
 border-radius:8px;background:var(--folio-control,var(--paper));
}
.game-select-segments>.game-select-segment{
 appearance:none;display:flex;align-items:center;justify-content:center;flex:1 1 0;min-width:0;min-height:44px!important;height:auto;
 margin:0!important;padding:7px 8px!important;border:1px solid transparent;border-radius:5px!important;background:transparent;box-shadow:none;
 color:var(--muted);font:inherit!important;line-height:1.35!important;text-align:center;white-space:normal;overflow-wrap:anywhere;cursor:pointer;touch-action:manipulation;
}
.game-select-segments>.game-select-segment[aria-pressed=true]{
 color:var(--control-accent);background:var(--panel);border-color:var(--folio-edge,var(--line));box-shadow:inset 0 -2px var(--control-accent);font-weight:500!important;
}
.game-select-segments>.game-select-segment:hover:not(:disabled){color:var(--control-accent);background:var(--folio-selected,var(--paper))}
.game-select-segments>.game-select-segment:disabled{opacity:.55;cursor:not-allowed}
#game-select-sheet{
 --control-accent:var(--folio-accent,var(--green));position:fixed;inset:0;box-sizing:border-box;
 width:min(520px,calc(100vw - 32px));max-width:none;max-height:min(720px,calc(var(--game-height,100dvh) - 32px));
 margin:auto;padding:16px;border:1px solid var(--folio-edge,var(--line));border-radius:14px;
 background:var(--panel);color:var(--ink);box-shadow:0 16px 48px #1f3b302e;overflow:hidden;overscroll-behavior:contain;
}
#game-select-sheet[open]{display:flex;flex-direction:column;gap:10px}
#game-select-sheet::backdrop{background:#263c3659}
#game-select-sheet [hidden]{display:none!important}
#game-select-sheet .game-select-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-width:0;margin:0;padding:0;border:0;background:none}
#game-select-sheet .game-select-heading>div{min-width:0}
#game-select-sheet .game-select-kicker{display:block;margin:0 0 2px;color:var(--muted);font-size:11px;line-height:1.45;font-weight:400;letter-spacing:.03em}
#game-select-sheet h2,#game-select-title{min-width:0;margin:0;color:var(--ink);font-size:17px;line-height:1.45;font-weight:600;letter-spacing:.02em;overflow-wrap:anywhere}
#game-select-sheet [data-game-select-close]{
 appearance:none;display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;min-height:44px;margin:0;padding:0;
 border:1px solid var(--line);border-radius:8px;background:var(--folio-control,var(--paper));color:var(--muted);font-size:22px;line-height:1;box-shadow:none;cursor:pointer;
}
#game-select-sheet .game-select-search{display:block;flex:none;min-width:0;margin:0}
#game-select-sheet .game-select-search input{
 appearance:none;display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:44px;height:auto;margin:0;
 padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--folio-control,var(--paper));color:var(--ink);font:inherit;font-size:16px;line-height:1.4;
}
#game-select-sheet .game-select-search input::placeholder{color:var(--muted);opacity:1}
#game-select-sheet .game-select-search input:focus-visible{border-color:var(--control-accent);outline:2px solid var(--control-accent);outline-offset:-2px}
#game-select-sheet .game-select-status{flex:none;margin:0;color:var(--muted);font-size:12px;line-height:1.45;overflow-wrap:anywhere}
#game-select-sheet .game-select-options{
 display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-height:0;min-width:0;margin:0;padding:2px;
 overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;
}
#game-select-sheet .game-select-options>.game-select-group{
 position:sticky;top:-2px;z-index:1;margin:4px 0 0;padding:7px 9px 5px;background:var(--panel);color:var(--muted);font-size:12px;line-height:1.4;font-weight:500;
}
#game-select-sheet .game-select-option{
 appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;box-sizing:border-box;width:100%;max-width:100%;min-width:0;
 min-height:46px;height:auto;margin:0;padding:10px 11px;border:1px solid transparent;border-radius:8px;background:transparent;box-shadow:none;
 color:var(--ink);font:inherit;font-size:14px;line-height:1.5;text-align:left;white-space:normal;cursor:pointer;touch-action:manipulation;
}
#game-select-sheet .game-select-option-label{display:block;min-width:0;flex:1 1 auto;overflow-wrap:anywhere;white-space:normal}
#game-select-sheet .game-select-option-detail{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.45}
#game-select-sheet .game-select-option-mark{
 display:flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;color:transparent;background:transparent;
}
#game-select-sheet .game-select-option-mark svg{display:block;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#game-select-sheet .game-select-option[data-selected=true],#game-select-sheet .game-select-option[aria-selected=true]{
 color:var(--control-accent);border-color:var(--folio-edge,var(--line));background:var(--folio-selected,var(--paper));
}
#game-select-sheet .game-select-option[data-selected=true] .game-select-option-mark,#game-select-sheet .game-select-option[aria-selected=true] .game-select-option-mark{
 color:var(--panel);background:var(--control-accent);
}
#game-select-sheet .game-select-option:hover:not(:disabled){border-color:var(--line);background:var(--folio-soft,var(--paper))}
#game-select-sheet .game-select-option:disabled,#game-select-sheet .game-select-option[aria-disabled=true]{opacity:.62;cursor:not-allowed}
#game-select-sheet .game-select-option:focus-visible,#game-select-sheet [data-game-select-close]:focus-visible{outline:2px solid var(--control-accent);outline-offset:-2px}
#game-select-sheet .game-select-empty{margin:0;padding:24px 12px;color:var(--muted);font-size:14px;line-height:1.65;text-align:center}
:root[data-theme=night] #game-select-sheet{box-shadow:0 18px 54px #0007}
:root[data-theme=night] #game-select-sheet::backdrop{background:#09130fc2}
@media(max-width:599px){
 #game-select-sheet{inset:auto 0 0;width:100%;max-width:none;max-height:min(82dvh,calc(var(--game-height,100dvh) - 12px));margin:0;
  padding:15px max(14px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
  border-radius:17px 17px 0 0;border-bottom:0;
 }
 #game-select-sheet .game-select-options{padding-bottom:2px}
}
@media(min-width:600px) and (max-height:500px){
 #game-select-sheet{max-height:calc(var(--game-height,100dvh) - 16px);padding:12px}
 #game-select-sheet[open]{gap:7px}
}
@media(prefers-reduced-motion:no-preference){
 .game-select-trigger,.game-select-segment,#game-select-sheet .game-select-option{transition:background-color 120ms,border-color 120ms,color 120ms}
 .game-select-trigger .game-select-mark{transition:transform 140ms ease}
 #game-select-sheet[open]{animation:game-select-arrive 140ms ease-out}
 @keyframes game-select-arrive{from{transform:translateY(6px)}to{transform:translateY(0)}}
}
@media(prefers-reduced-motion:reduce){
 .game-select-trigger,.game-select-segment,.game-select-trigger .game-select-mark,#game-select-sheet,#game-select-sheet .game-select-option{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

.game-select-control[hidden]{display:none!important}

/* Source labels also contain descriptive spans; enhanced controls are not those labels. */
#app .source-select>.game-select-control{
 display:inline-flex;flex:1 1 0%;min-width:0;max-width:100%;width:100%;font-size:14px;line-height:1.45;white-space:normal;color:var(--ink);
}
#app .source-search .source-select>.game-select-control:not([hidden]){display:inline-flex!important}
/* Win only for the new trigger against legacy #main source-page !important sizing. */
#app .game-select-control>.game-select-trigger{
 min-height:44px!important;padding:9px 11px!important;font:inherit!important;line-height:1.45!important;
}

/* Keep short field names on one line beside flexible game controls. */
#app .section-hero-picker>.game-select-control,#app .screen-choice>.game-select-control,#app .camp-world-access label>.game-select-control{flex:1 1 0%;width:0;min-width:0}
#app .section-hero-picker,#app .screen-choice{white-space:nowrap}
