/* Fresh theme by Gravity Host. Copyright (c) 2026 GK Tools Ltd. All rights reserved. Licensed for one live shop per licence, see LICENSE.txt; sharing or reselling is not allowed. Download ID: marketplace */
/* Fresh: drop-down lists (select.js). The closed box on every device, and the open list in the
   look of the top-bar menus. Only colour variables, so every colour scheme and dark mode follow. */

/* The closed box: the browser's own select (phones, and before select.js runs) and the button.
   Borders and colours at low weight, so the theme's form and error styles still win. */
:where(select:not([multiple]):not([size]):not(#gk-look *, .gk-no-enhance *)), .gk-sel {
  border: 1px solid var(--gk-field-line, #CBD3E1);
  border-radius: var(--gk-r-btn, 10px);
  background-color: var(--gk-field, #fff);
  color: var(--gk-ink, #0B1F4D);
}
select:not([multiple]):not([size]):where(:not(#gk-look *, .gk-no-enhance *)),
.gk-sel {
  -webkit-appearance: none;
  appearance: none;
  padding-right: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234A5B7D' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9.25 12 15.25 18 9.25'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 18px 18px;
  cursor: pointer;
  transition: border-color .14s var(--gk-ease, ease), box-shadow .14s var(--gk-ease, ease);
}
:root[data-theme="dark"] select:not([multiple]):not([size]):where(:not(#gk-look *, .gk-no-enhance *)),
:root[data-theme="dark"] .gk-sel {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C3CEE2' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9.25 12 15.25 18 9.25'/%3E%3C/svg%3E");
}
:where(select:not([multiple]):not([size]):not(#gk-look *, .gk-no-enhance *)):hover, :where(.gk-sel):hover { border-color: var(--gk-tint-line, #C3D3FA); }
select:not([multiple]):not([size]):where(:not(#gk-look *, .gk-no-enhance *)):focus,
.gk-sel:focus,
.gk-sel[aria-expanded="true"] {
  border-color: var(--gk-deep, #1D4ED8);
  box-shadow: 0 0 0 3px rgba(var(--gk-brand-rgb, 37, 99, 235), .22);
  outline: 0;
}
select:not([multiple]):not([size]):where(:not(#gk-look *, .gk-no-enhance *)):disabled,
.gk-sel:disabled { cursor: not-allowed; border-color: var(--gk-line, #E2E7F0); background-color: var(--gk-page, #F5F7FB); color: var(--gk-mute, #4A5B7D); }

/* The button that stands in for the select on desktops */
.gk-sel, .input-group > .gk-sel { height: 44px; padding: 9px 40px 9px 13px; font: inherit; font-size: 16px; line-height: 24px; text-align: left; }
.gk-sel { display: inline-block; min-width: 8em; max-width: 100%; }
.gk-sel.form-control { display: block; width: 100%; }
.input-group .gk-sel.form-control { display: table-cell; }
.gk-sel-text { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* The real select, out of sight but still in the form */
select.gk-sel-src {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip-path: inset(50%);
  opacity: 0;
  pointer-events: none;
}

/* The open list: the top-bar menu panel */
.gk-sel-list {
  position: fixed;
  z-index: 1070;
  box-sizing: border-box;
  padding: 6px;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: var(--gk-surface, #fff);
  border: 1px solid var(--gk-line, #E2E7F0);
  border-radius: var(--gk-r-card, 14px);
  box-shadow: var(--gk-shadow-hover, 0 12px 32px rgba(11, 31, 77, .11));
  font-family: var(--gk-text, inherit);
  outline: 0;
  animation: gk-sel-in .14s var(--gk-ease, ease) both;
}
.gk-sel-list[hidden] { display: none; }
:root[data-theme="dark"] .gk-sel-list { background: var(--gk-raised, #16243D); border-color: var(--gk-line-strong, #2A3B5A); }
@keyframes gk-sel-in { from { opacity: 0; transform: translateY(-4px); } }
.gk-sel-list--up { animation-name: gk-sel-up; }
@keyframes gk-sel-up { from { opacity: 0; transform: translateY(4px); } }
@media (prefers-reduced-motion: reduce) {
  .gk-sel-list { animation: none; }
  select, .gk-sel { transition: none; }
}
.gk-sel-list [role="option"] {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 8px;
  color: var(--gk-ink, #0B1F4D);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  cursor: pointer;
  transition: background-color .14s var(--gk-ease, ease), color .14s var(--gk-ease, ease);
}
.gk-sel-list [role="option"] + [role="option"], .gk-sel-list [role="group"] + * { margin-top: 2px; }
.gk-sel-list [aria-selected="true"] { color: var(--gk-deep, #1D4ED8); font-weight: 600; }
.gk-sel-list [aria-selected="true"]::after {
  content: "";
  flex: 0 0 18px;
  height: 18px;
  margin-left: auto;
  background: currentColor;
  -webkit-mask: url("icons/check.svg") center / contain no-repeat;
  mask: url("icons/check.svg") center / contain no-repeat;
}
.gk-sel-list .is-active { background: var(--gk-tint, #EEF3FF); color: var(--gk-deep, #1D4ED8); }
:root[data-theme="dark"] .gk-sel-list .is-active { background: var(--gk-tint-deep, #18305A); color: var(--gk-ink, #EAF0FA); }
:root[data-theme="dark"] .gk-sel-list .is-active[aria-selected="true"] { color: var(--gk-deeper, #9CC3FF); }
.gk-sel-list [aria-disabled="true"] { color: var(--gk-mute, #4A5B7D); font-weight: 400; cursor: not-allowed; }
.gk-sel-list [aria-disabled="true"].is-active { background: transparent; }
.gk-sel-list-head { padding: 10px 12px 4px; color: var(--gk-mute, #4A5B7D); font-size: 13px; font-weight: 600; }
.gk-sel-list [role="group"] [role="option"] { padding-left: 20px; }
