/* Shared native dropdowns: Elementor catalog fields and WPForms contact fields.
   Field names, option values, conditional logic and keyboard behavior stay native. */
body.fz-wordpress .fz-native-form select:not([multiple]){
 appearance:none;cursor:pointer;padding-right:40px!important;
 background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f6b7d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center / 16px!important;
}
body.fz-wordpress .fz-native-form select:not([multiple]):hover{border-color:var(--color-accent)!important;}
body.fz-wordpress .fz-native-form select:not([multiple]):focus-visible{outline:3px solid var(--color-focus);outline-offset:2px;}
body.fz-wordpress .fz-native-form select:not([multiple]):disabled{
 background-color:var(--color-background-soft)!important;color:var(--color-text-muted)!important;cursor:not-allowed;opacity:1;
}
body.fz-wordpress .fz-catalog-selects .select-caret-down-wrapper{display:none;}
body.fz-wordpress .fz-catalog-selects select{
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f6b7d' stroke-width='1.8' 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 16px center;background-size:16px;
 appearance:none;transition:border-color var(--dur) var(--ease);text-overflow:ellipsis;
}
body.fz-wordpress .fz-catalog-selects select:has(option:checked:not([value=""])){
 border-color:var(--color-primary);background-color:var(--color-background-blue);color:var(--color-primary);font-weight:500;
}
body.fz-wordpress .fz-sort__select:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px;}

/* Progressive enhancement: supported browsers style the native picker in the top layer.
   Other browsers retain their native option picker and the same styled closed field. */
@supports (appearance:base-select) and selector(::picker(select)){
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])),
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple]))::picker(select){appearance:base-select;}
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])){
  display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);
  height:auto;min-height:52px;padding:12px 16px;background-image:none;white-space:normal;line-height:1.4;
 }
 body.fz-wordpress .fz-sort__select{min-height:44px;padding:10px 12px;white-space:nowrap;}
 body.fz-wordpress .fz-native-form select:not([multiple]){padding:12px 16px!important;background-image:none!important;line-height:1.4!important;}
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple]))::picker-icon{
  content:"";flex:none;width:7px;height:7px;margin-right:3px;
  border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);
  transform:translateY(-2px) rotate(45deg);transition:transform var(--dur) var(--ease);
 }
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])):open{
  border-color:var(--color-primary);
 }
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])):open::picker-icon{
  transform:translateY(2px) rotate(225deg);
 }
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple]))::picker(select){
  inset:auto;position-area:block-end span-inline-end;position-try-order:normal;
  position-try-fallbacks:flip-block,flip-inline,flip-block flip-inline;
  width:anchor-size(width);min-width:anchor-size(width);max-width:calc(100vw - 24px);
  max-height:min(380px,calc(100dvh - 24px));overflow-y:auto;overscroll-behavior:contain;
  margin-block:6px;padding:6px;border:1px solid var(--color-border-strong);
  border-radius:var(--radius-lg);background:var(--color-background);box-shadow:var(--shadow-float);
  color:var(--color-text);font:400 15px/1.4 var(--font-body);scrollbar-width:thin;
 }
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])) option{
  display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);
  min-height:44px;padding:10px 12px;border-radius:var(--radius-md);
  background:var(--color-background);color:var(--color-text);font:400 15px/1.4 var(--font-body);
  white-space:normal;overflow-wrap:anywhere;cursor:pointer;
 }
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])) option:checked{
  background:var(--color-background-blue);color:var(--color-primary);font-weight:600;
 }
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])) option:is(:hover,:focus-visible){
  background:var(--color-background-blue);color:var(--color-primary);
  outline:2px solid var(--color-focus);outline-offset:-2px;
 }
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])) option::checkmark{
  order:1;margin-left:auto;color:var(--color-primary);font-weight:700;
 }
}
@media(prefers-reduced-motion:reduce){
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple])),
 body.fz-wordpress :is(.fz-catalog-selects select,.fz-sort__select,.fz-native-form select:not([multiple]))::picker-icon{transition:none;}
}

/* Recruitment skills: real WPForms checkboxes and their associated labels.
   Each label fills the row, so both the text and surrounding space are tappable. */
body.fz-wordpress #wpforms-form-75 :is(.fz-field-competenze,.fz-field-modalita) ul{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-3);
 margin:var(--space-3) 0 0!important;padding:0!important;
}
body.fz-wordpress #wpforms-form-75 :is(.fz-field-competenze,.fz-field-modalita) li{
 position:relative;display:block;margin:0!important;padding:0!important;min-width:0;
}
body.fz-wordpress #wpforms-form-75 :is(.fz-field-competenze,.fz-field-modalita) .wpforms-field-label-inline{
 display:flex;align-items:center;width:100%;min-height:48px;height:100%;box-sizing:border-box;
 margin:0!important;padding:11px 12px 11px 44px!important;border:1px solid var(--color-border-strong);
 border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text);
 font:400 14px/1.45 var(--font-body)!important;cursor:pointer;
}
body.fz-wordpress #wpforms-form-75 input[type=checkbox]{
 appearance:auto!important;accent-color:var(--color-primary);width:20px!important;height:20px!important;
 min-width:20px;margin:0!important;box-shadow:none!important;cursor:pointer;
}
body.fz-wordpress #wpforms-form-75 input[type=checkbox]::before,
body.fz-wordpress #wpforms-form-75 input[type=checkbox]::after{display:none!important;}
body.fz-wordpress #wpforms-form-75 :is(.fz-field-competenze,.fz-field-modalita) input[type=checkbox]{
 position:absolute;left:12px;top:50%;transform:translateY(-50%);z-index:1;
}
body.fz-wordpress #wpforms-form-75 :is(.fz-field-competenze,.fz-field-modalita) li:has(input:checked) label{
 border-color:var(--color-primary);background:var(--color-background-blue);color:var(--color-primary);font-weight:600!important;
}
body.fz-wordpress #wpforms-form-75 :is(.fz-field-competenze,.fz-field-modalita) label:hover{border-color:var(--color-accent);}
body.fz-wordpress #wpforms-form-75 input[type=checkbox]:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;}
body.fz-wordpress #wpforms-form-75 :is(.fz-field-competenze,.fz-field-modalita) li:has(input:focus-visible) label{
 outline:3px solid var(--color-focus);outline-offset:2px;
}
body.fz-wordpress #wpforms-form-75 .wpforms-field-description{font:400 13px/1.5 var(--font-body);color:var(--color-text-muted);margin-top:var(--space-2);}
body.fz-wordpress #wpforms-form-75 .fz-field-privacy li{display:flex;align-items:flex-start;gap:var(--space-3);}
body.fz-wordpress #wpforms-form-75 .fz-field-privacy input[type=checkbox]{flex:none;margin-top:2px!important;}
@media(max-width:767px){
 body.fz-wordpress #wpforms-form-75 .fz-field-competenze ul{grid-template-columns:minmax(0,1fr);}
 body.fz-wordpress #wpforms-form-75 .fz-field-modalita ul{grid-template-columns:repeat(2,minmax(0,1fr));}
}
