/* Shared single-select surfaces. Native selects remain the no-script fallback. */
[data-site-selects] select:not(.site-select-source), .site-select-trigger {
  -webkit-appearance: none; appearance: none;
  width: 100%; min-width: 0; min-height: var(--site-target);
  padding: 10px 40px 10px 12px; border: 1px solid var(--site-line);
  border-radius: var(--site-radius-control); background-color: var(--site-control);
  color: var(--site-paper); font: inherit; font-size: 14px; line-height: 1.4; cursor: pointer;
}
[data-site-selects] select:not(.site-select-source) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='m2.5 4.5 3.5 3.5 3.5-3.5' fill='none' stroke='%23aaa8a3' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 16px center; background-size: 12px;
}
.site-select { position: relative; width: 100%; min-width: 0; }
.site-select[hidden], .site-select-source, .site-select-panel[hidden] { display: none !important; }
.site-select-trigger {
  display: flex; align-items: center; justify-content: space-between; gap: var(--site-space-3);
  padding: 10px 16px 10px 12px; text-align: left; background-image: none;
}
.site-select-value { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.site-select-chevron {
  flex: none; width: 12px; height: 12px; background: currentColor; color: var(--site-muted);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m2.5 4.5 3.5 3.5 3.5-3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m2.5 4.5 3.5 3.5 3.5-3.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.site-select-trigger[aria-expanded=true] .site-select-chevron { transform: rotate(180deg); }
.site-select-trigger:not(:disabled):hover, [data-site-selects] select:not(:disabled):hover { border-color: #68665c; background-color: var(--site-control-hover); }
.site-select-trigger:focus-visible, [data-site-selects] select:focus-visible {
  border-color: var(--site-paper); outline: var(--site-focus-width) solid var(--site-paper); outline-offset: var(--site-focus-offset);
}
.site-select-trigger:disabled, [data-site-selects] select:disabled { opacity: .45; cursor: not-allowed; }
.site-select-panel {
  position: fixed; z-index: 100; box-sizing: border-box; max-width: calc(100vw - 24px);
  overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; touch-action: pan-y;
  padding: var(--site-space-1); border: 1px solid var(--site-line); border-radius: var(--site-radius-control);
  background: var(--site-surface); color: var(--site-paper); font: 14px/1.4 Geist, Arial, sans-serif;
  box-shadow: 0 12px 32px #00000038; scrollbar-width: thin;
}
.site-select-group + .site-select-group { margin-top: var(--site-space-1); }
.site-select-group-label { padding: 12px 12px 6px; color: var(--site-muted); font-size: 10px; font-weight: 500; letter-spacing: 1px; text-transform: uppercase; }
.site-select-option {
  display: flex; align-items: center; gap: var(--site-space-3); min-height: var(--site-target);
  padding: 10px 12px; border-radius: var(--site-space-2); cursor: pointer; user-select: none;
}
.site-select-option-label { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.site-select-option[aria-selected=true] { font-weight: 500; }
.site-select-option[data-active=true], .site-select-option:not([aria-disabled=true]):hover { background: var(--site-control-hover); }
.site-select-option[data-active=true] { outline: 1px solid var(--site-line); outline-offset: -1px; }
.site-select-option[aria-disabled=true] { color: var(--site-muted); cursor: default; }
.site-select-check {
  flex: none; width: 16px; height: 16px; visibility: hidden; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.site-select-option[aria-selected=true] .site-select-check { visibility: visible; }

/* Opt-in actions are real buttons beside a separate listbox, never options. */
.site-select-actions { padding-bottom: var(--site-space-1); margin-bottom: var(--site-space-1); border-bottom: 1px solid var(--site-line); }
.site-select-actions:empty, .site-select-actions[hidden] { display: none; }
.site-select-actions button {
  width: 100%; min-height: var(--site-target); padding: 10px 12px; border: 0;
  border-radius: var(--site-space-2); background: transparent; color: inherit;
  font: inherit; text-align: left; cursor: pointer;
}
.site-select-actions button:hover:not(:disabled) { background: var(--site-control-hover); }
.site-select-actions button:disabled { opacity: .45; cursor: not-allowed; }
.site-select-actions button:focus-visible, .site-select-listbox:focus-visible {
  outline: var(--site-focus-width) solid var(--site-paper); outline-offset: calc(-1 * var(--site-focus-width));
}
