/**
 * Pro-Nails 2.8.3 — shared controls; compact catalogue layout.
 * Only explicit storefront selects are enhanced; checkout SelectWoo is retained.
 * Native selects remain usable if JavaScript is unavailable.
 */
body.prn-store-ui {
  --prn-controls-ready: 1;
  --prn-control-ink: #302a25;
  --prn-control-muted: #756c62;
  --prn-control-line: #e6dfd5;
  --prn-control-accent: #906631;
  --prn-control-tint: #f5efe6;
  --prn-control-radius: 6px;
}
.prn-catalog-view .prn-catalog-header { margin: 18px 0 16px; }
.prn-catalog-view .prn-catalog-header h1 { margin: 0 0 8px; font-size: clamp(24px, 2.7vw, 32px); line-height: 1.25; }
.prn-catalog-view .prn-filters {
  position: relative; margin: 0 0 12px; padding: 0;
  border: 1px solid var(--prn-control-line); border-radius: var(--prn-control-radius);
  background: #fcfbf9; overflow: visible;
}
.prn-catalog-view .prn-filters > summary {
  padding: 9px 14px; min-height: 38px; gap: 8px;
  font-size: 13px; line-height: 20px; font-weight: 500;
  color: var(--prn-control-ink); border-radius: var(--prn-control-radius);
  -webkit-tap-highlight-color: transparent;
}
.prn-catalog-view .prn-filters > summary:hover { color: var(--prn-control-accent); }
.prn-catalog-view .prn-filters > summary > svg { width: 14px; height: 14px; flex: 0 0 14px; }
.prn-catalog-view .prn-filters__heading-icon { display: inline-flex; align-items: center; color: var(--prn-control-muted); }
.prn-catalog-view .prn-filters__heading-icon svg { width: 15px; height: 15px; }
.prn-catalog-view .prn-filters__count {
  display: inline-flex; min-width: 20px; height: 20px; align-items: center; justify-content: center;
  padding: 0 5px; background: var(--prn-control-tint); border-radius: 10px;
  color: #725024; font-size: 11px; line-height: 1; font-weight: 500;
}
.prn-catalog-view .prn-filters__form {
  display: flex; flex-wrap: wrap; align-items: flex-end;
  gap: 10px 12px; padding: 0 14px 12px; margin: 0;
}
.prn-catalog-view .prn-filter { flex: 0 1 188px; width: 188px; min-width: 0; max-width: 100%; margin: 0; }
.prn-catalog-view .prn-filter > label {
  display: block; width: auto; margin: 0 0 5px; padding: 0;
  font-size: 11px; line-height: 15px; font-weight: 500;
  color: var(--prn-control-muted); text-transform: none; letter-spacing: .01em;
}
/* Same arrow position/padding before the custom component is enhanced. */
.prn-catalog-view .prn-filter select,
.prn-catalog-view .woocommerce-ordering select.orderby {
  display: block; box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0;
  height: 40px; min-height: 40px; margin: 0; padding: 8px 40px 8px 12px;
  border: 1px solid var(--prn-control-line); border-radius: var(--prn-control-radius);
  background-color: #fff; color: var(--prn-control-ink); box-shadow: none;
  font: inherit; font-size: 13px; line-height: 22px; font-weight: 400;
  -webkit-appearance: none; appearance: none; text-transform: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23756c62' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center; background-size: 14px 14px;
  cursor: pointer;
}
.prn-catalog-view .prn-filters__actions {
  display: flex; flex: 0 1 auto; align-items: center; align-self: flex-end;
  flex-wrap: wrap; gap: 8px 12px; padding: 0; margin: 0; min-height: 40px;
  grid-column: auto; justify-content: flex-start;
}
.prn-catalog-view .prn-filter-check {
  display: inline-flex; flex: 0 0 auto; width: auto; align-items: center;
  gap: 7px; min-height: 40px; margin: 0; padding: 0 2px;
  font-size: 12px; font-weight: 400; line-height: 18px; color: var(--prn-control-ink);
}
.prn-catalog-view .prn-filter-check input {
  position: static; flex: 0 0 16px; width: 16px; height: 16px; margin: 0;
  opacity: 1; -webkit-appearance: auto; appearance: auto;
  accent-color: var(--prn-control-accent); cursor: pointer;
}
.prn-catalog-view .prn-filters .prn-filter-submit {
  box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center;
  flex: 0 0 auto; min-height: 40px; height: 40px; padding: 8px 15px; margin: 0;
  background: var(--prn-control-accent); border: 1px solid var(--prn-control-accent);
  border-radius: var(--prn-control-radius); color: #fff; box-shadow: none;
  font: inherit; font-size: 12px; font-weight: 500; line-height: 20px;
  letter-spacing: 0; text-transform: none; white-space: nowrap; cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease;
}
.prn-catalog-view .prn-filters .prn-filter-submit:hover { background: #755024; border-color: #755024; }
.prn-catalog-view .prn-filters__reset {
  display: inline-flex; align-items: center; width: auto; min-height: 40px;
  padding: 0 2px; margin: 0; font-size: 12px; line-height: 18px;
  color: var(--prn-control-muted); text-decoration: underline; text-underline-offset: 3px;
}
.prn-catalog-view .prn-filters__reset:hover { color: var(--prn-control-accent); }
.prn-catalog-view .prn-filter-chips { gap: 6px; margin: 0 0 12px; }
.prn-catalog-view .prn-filter-chips a {
  padding: 5px 9px; gap: 8px; min-height: 30px; background: #fff;
  border-color: var(--prn-control-line); border-radius: 5px; font-size: 11px;
}
/* Ordering belongs to the same visual system. Remove the theme's second border. */
.prn-catalog-view .vedrana-sorting {
  display: flex; flex-direction: row; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 10px 16px; margin: 0 0 16px; padding: 0;
}
.prn-catalog-view .vedrana-sorting .vedrana-toolbar-left { margin: 0; min-width: 0; }
.prn-catalog-view .vedrana-sorting .woocommerce-notices-wrapper { margin: 0; flex-basis: 100%; }
.prn-catalog-view .vedrana-sorting .woocommerce-result-count {
  display: block; margin: 0; color: var(--prn-control-muted); font-size: 12px; line-height: 18px;
}
.prn-catalog-view .woocommerce-ordering {
  display: block; width: 250px; max-width: 100%; min-width: 0; flex: 0 1 250px;
  padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
.prn-catalog-view .woocommerce-ordering::after { display: none; content: none; }
.prn-catalog-view .woocommerce-ordering .prn-select { width: 100%; }
/* Shared accessible, select-only combobox. Popups are portalled to body so
   a details panel, theme transform or overflow wrapper cannot clip them. */
.prn-store-ui .prn-select { position: relative; display: block; min-width: 0; max-width: 100%; font-family: inherit; }
.prn-store-ui select.prn-select__native { display: none !important; }
.prn-store-ui .prn-select__trigger {
  position: relative; display: block; box-sizing: border-box; width: 100%; max-width: 100%;
  min-width: 0; min-height: 40px; height: 40px; margin: 0; padding: 8px 40px 8px 12px;
  border: 1px solid var(--prn-control-line); border-radius: var(--prn-control-radius);
  background: #fff; color: var(--prn-control-ink); box-shadow: 0 1px 2px rgba(40,30,18,.025);
  font: inherit; font-size: 13px; font-weight: 400; line-height: 22px; letter-spacing: 0;
  text-align: left; text-transform: none; cursor: pointer; -webkit-appearance: none; appearance: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.prn-store-ui .prn-select__trigger:hover:not(:disabled) { border-color: #b6a591; }
.prn-store-ui .prn-select__trigger[aria-expanded="true"] { border-color: var(--prn-control-accent); box-shadow: 0 0 0 2px rgba(144,102,49,.09); }
.prn-store-ui .prn-select__trigger:disabled { opacity: .55; cursor: not-allowed; background: #f7f5f2; }
.prn-store-ui .prn-select__value { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.prn-store-ui .prn-select__arrow {
  position: absolute; right: 12px; top: calc(50% - 7px); width: 14px; height: 14px;
  margin: 0; padding: 0; color: var(--prn-control-muted); pointer-events: none; transition: transform .15s ease;
}
.prn-store-ui .prn-select__trigger[aria-expanded="true"] .prn-select__arrow { transform: rotate(180deg); }
.prn-store-ui .prn-select__list {
  box-sizing: border-box; position: fixed; z-index: 180; display: block;
  width: 224px; max-height: 280px; overflow-y: auto; overscroll-behavior: contain;
  padding: 5px; margin: 0; list-style: none; background: #fff;
  border: 1px solid var(--prn-control-line); border-radius: var(--prn-control-radius);
  box-shadow: 0 10px 32px rgba(42,31,17,.13), 0 2px 6px rgba(42,31,17,.04);
  color: var(--prn-control-ink); font-family: inherit; text-align: left;
  scrollbar-width: thin; scrollbar-color: #cfc4b5 transparent;
  touch-action: pan-y; -webkit-overflow-scrolling: touch;
}
.prn-store-ui .prn-select__list[hidden] { display: none !important; }
.prn-store-ui .prn-select__list::-webkit-scrollbar { width: 6px; }
.prn-store-ui .prn-select__list::-webkit-scrollbar-thumb { background: #cfc4b5; border: 1px solid #fff; border-radius: 5px; }
.prn-store-ui .prn-select__option {
  position: relative; display: flex; align-items: center; box-sizing: border-box;
  min-height: 36px; padding: 8px 32px 8px 10px; margin: 0; border: 0; border-radius: 4px;
  font-size: 13px; line-height: 20px; font-weight: 400; letter-spacing: 0;
  color: var(--prn-control-ink); white-space: normal; overflow-wrap: anywhere;
  cursor: pointer; user-select: none;
}
.prn-store-ui .prn-select__option.is-active { background: #f5f3ef; }
.prn-store-ui .prn-select__option[aria-selected="true"] { background: var(--prn-control-tint); color: #745021; font-weight: 500; }
.prn-store-ui .prn-select__option.is-active[aria-selected="true"] { background: #eee4d5; }
.prn-store-ui .prn-select__option[aria-selected="true"]::after {
  content: ''; position: absolute; right: 13px; top: calc(50% - 5px);
  width: 5px; height: 9px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg);
}
.prn-store-ui .prn-select__option[aria-disabled="true"] { opacity: .4; cursor: not-allowed; }
.prn-store-ui .prn-select__group { padding: 8px 10px 4px; font-size: 10px; line-height: 16px; font-weight: 600; color: var(--prn-control-muted); }
.prn-store-ui .prn-select__trigger:focus-visible,
.prn-catalog-view .prn-filters :focus-visible,
.prn-catalog-view .woocommerce-ordering select:focus-visible {
  outline: 2px solid var(--prn-control-accent); outline-offset: 3px;
}
@media (max-width: 767px) {
  .prn-catalog-view .prn-catalog-header { margin: 14px 0; }
  .prn-catalog-view .prn-filters { border-radius: var(--prn-control-radius); }
  .prn-catalog-view .prn-filters > summary { padding: 10px 12px; min-height: 44px; }
  .prn-catalog-view .prn-filters__form { gap: 10px; padding: 0 12px 12px; }
  .prn-catalog-view .prn-filter { flex: 1 1 calc(50% - 5px); width: calc(50% - 5px); max-width: calc(50% - 5px); }
  .prn-catalog-view .prn-filter > label { font-size: 11px; line-height: 16px; }
  .prn-catalog-view .prn-filters__actions { flex: 1 0 100%; gap: 6px 12px; }
  .prn-catalog-view .prn-filter-check { min-height: 44px; }
  .prn-catalog-view .prn-filters .prn-filter-submit { min-height: 44px; height: 44px; }
  .prn-catalog-view .prn-filters__reset { min-height: 44px; }
  .prn-store-ui .prn-select__trigger,
  .prn-catalog-view .prn-filter select,
  .prn-catalog-view .woocommerce-ordering select.orderby { min-height: 44px; height: 44px; font-size: 14px; line-height: 26px; }
  .prn-store-ui .prn-select__option { min-height: 44px; font-size: 14px; }
  .prn-catalog-view .vedrana-sorting { flex-direction: row; justify-content: space-between; gap: 8px; margin-bottom: 14px; }
  .prn-catalog-view .vedrana-sorting .woocommerce-result-count { font-size: 11px; }
  .prn-catalog-view .woocommerce-ordering { width: 232px; flex-basis: 232px; }
  .prn-catalog-view .prn-filter-chips a { min-height: 36px; }
}
@media (max-width: 540px) {
  .prn-catalog-view .vedrana-sorting .vedrana-toolbar-left { flex: 1 0 100%; }
  .prn-catalog-view .woocommerce-ordering { width: 100%; flex-basis: 100%; }
}
@media (max-width: 359px) {
  .prn-catalog-view .prn-filter { flex-basis: 100%; max-width: 100%; width: 100%; }
  .prn-catalog-view .prn-filter-check { flex-basis: 100%; }
}
@media (pointer: coarse) and (min-width: 768px) {
  .prn-store-ui .prn-select__trigger,
  .prn-catalog-view .prn-filter select,
  .prn-catalog-view .woocommerce-ordering select.orderby,
  .prn-catalog-view .prn-filters .prn-filter-submit,
  .prn-catalog-view .prn-filter-check,
  .prn-catalog-view .prn-filters__reset { min-height: 44px; height: 44px; }
  .prn-store-ui .prn-select__option { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  .prn-store-ui .prn-select__trigger, .prn-store-ui .prn-select__arrow,
  .prn-catalog-view .prn-filter-submit { transition: none; }
}
@media (forced-colors: active) {
  .prn-store-ui .prn-select__trigger,
  .prn-store-ui .prn-select__list { border-color: ButtonText; }
  .prn-store-ui .prn-select__option.is-active { outline: 1px solid Highlight; outline-offset: -2px; }
  .prn-store-ui .prn-select__option[aria-selected="true"] { border: 1px solid Highlight; }
}
