/* Shared field geometry. Native controls retain their values, events and mobile pickers. */
body.dp-theme {
  --dp-field-inset: 14px;
  --dp-field-block: 10px;
  --dp-field-icon-space: 46px;
  --dp-field-arrow-space: 44px;
  --dp-field-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}
body.dp-theme.front-dark {
  --dp-field-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23CBD5E1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}
body.dp-theme :is(.dp-native,#order-standard_cart,.front-contact-pro-form,.front-contact-form,.invoice-container) :is(input:not([type]),input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=search],input[type=url],textarea,select:not(.select2-hidden-accessible):not(.selectized):not(.hp-native-select)) {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  min-height: 46px;
  padding: var(--dp-field-block) var(--dp-field-inset);
  line-height: 1.6;
}
body.dp-theme :is(.dp-native,#order-standard_cart,.front-contact-pro-form,.front-contact-form,.invoice-container) select:where(:not([multiple]):not([size]):not(.select2-hidden-accessible):not(.selectized):not(.hp-native-select)),
body.dp-theme :is(.dp-native,#order-standard_cart,.front-contact-pro-form,.front-contact-form,.invoice-container) select[size="1"] {
  appearance: none;
  -webkit-appearance: none;
  padding-inline-start: var(--dp-field-inset)!important;
  padding-inline-end: var(--dp-field-arrow-space)!important;
  background-image: var(--dp-field-arrow)!important;
  background-repeat: no-repeat!important;
  background-position: right 15px center!important;
  background-size: 14px 14px!important;
  text-align: start;
  text-overflow: ellipsis;
}
body.dp-theme :is(.dp-native,#order-standard_cart,.front-contact-pro-form,.front-contact-form,.invoice-container) select:dir(rtl) { background-position: left 15px center!important; }
body.dp-theme :is(.dp-native,#order-standard_cart,.front-contact-pro-form,.front-contact-form,.invoice-container) select[dir=ltr] { direction:ltr!important; background-position:right 15px center!important; }
body.dp-theme :is(.dp-native,#order-standard_cart,.front-contact-pro-form,.front-contact-form,.invoice-container) select:is([multiple],[size]):not([size="1"]) { background-image:none!important; padding:10px 14px!important; height:auto; }
body.dp-theme :is(.dp-native,#order-standard_cart) :is(select,input,textarea):focus-visible { outline:2px solid var(--action); outline-offset:2px; }
body.dp-theme :is(.dp-native,#order-standard_cart) .form-group > label:not(.field-icon):not(.checkbox):not(.radio):not(.checkbox-inline):not(.radio-inline) { margin-bottom:8px; line-height:1.8; }
body.dp-theme :is(.dp-native,#order-standard_cart) :is(.form-text,.help-block,.invalid-feedback,.valid-feedback) { margin-top:7px; line-height:1.7; }

/* An icon and its field share a grid row; captions grow independently above them. */
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon:has(> .field-icon) { display:grid; grid-template-columns:var(--dp-field-icon-space) minmax(0,1fr); position:relative; }
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon > .dp-field-caption { grid-column:1/-1; grid-row:1; margin:0 0 8px; }
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon > :is(input:not([type=hidden]),select,textarea,.intl-tel-input,.iti) { grid-column:1/-1; grid-row:2; }
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon > :is(input:not([type=hidden]),select,textarea) { padding-inline-start:var(--dp-field-icon-space)!important; }
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon:dir(rtl) > input[dir=ltr] { padding-left:var(--dp-field-inset)!important; padding-right:var(--dp-field-icon-space)!important; }
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon > .field-icon {
  grid-column:1; grid-row:2; align-self:center; justify-self:stretch;
  position:relative!important; inset:auto!important; z-index:1;
  display:grid; place-items:center; width:auto!important; height:auto!important;
  min-height:0; line-height:1.5!important; margin:0!important; padding:0 10px;
  color:var(--muted); pointer-events:none;
}
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon > :is(.help-block,.form-text,.invalid-feedback,.valid-feedback,.progress) { grid-column:1/-1; }
body.dp-theme :is(.dp-native,#order-standard_cart) .prepend-icon:has(> .intl-tel-input,> .iti) > .field-icon { display:none; }
body.dp-theme :is(.dp-native,#order-standard_cart) .dp-funds-select > i { display:none; }

/* Phone flags/calling codes remain a separate column, including newer intl-tel-input. */
body.dp-theme :is(.dp-native,#order-standard_cart) .intl-tel-input:not(.iti-container) > input:not([type=hidden]) { padding:12px 14px!important; }
body.dp-theme :is(.dp-native,#order-standard_cart) .iti:not(.iti--container) { display:flex; align-items:stretch; direction:ltr; width:100%; min-width:0; }
body.dp-theme :is(.dp-native,#order-standard_cart) .iti > :is(.iti__flag-container,.iti__country-container) { position:static; flex:0 0 auto; padding:0; }
body.dp-theme :is(.dp-native,#order-standard_cart) .iti :is(.iti__selected-flag,.iti__selected-country) { display:flex; align-items:center; gap:8px; padding:10px 12px; min-height:46px; height:100%; }
body.dp-theme :is(.dp-native,#order-standard_cart) .iti .iti__selected-dial-code { padding-inline:0; }
body.dp-theme :is(.dp-native,#order-standard_cart) .iti > input[type=tel] { flex:1 1 0; width:0; min-width:0; padding:10px 14px!important; direction:ltr; text-align:left; }

body.dp-theme :is(.dp-native,#order-standard_cart) .input-group { align-items:stretch; }
body.dp-theme :is(.dp-native,#order-standard_cart) .input-group > :is(.form-control,.custom-select) { min-width:0; }
body.dp-theme :is(.dp-native,#order-standard_cart) :is(.input-group-text,.input-group-addon) { display:flex; align-items:center; justify-content:center; gap:8px; padding:10px 14px; }
body.dp-theme :is(.dp-native,#order-standard_cart) .form-check { display:flex; align-items:flex-start; gap:9px; padding-inline-start:0; }
body.dp-theme :is(.dp-native,#order-standard_cart) .form-check > .form-check-input { position:static; flex:0 0 auto; margin:6px 0 0; }
body.dp-theme :is(.dp-native,#order-standard_cart) .form-check-label { min-width:0; line-height:1.8; }
body.dp-theme :is(.dp-native,#order-standard_cart) :is(label.checkbox-inline,label.radio-inline) > input { margin-inline:0 8px; }
body.dp-theme :is(.dp-native,#order-standard_cart) select:disabled { opacity:1; color:var(--muted); background-color:var(--cream); }
@media (forced-colors:active) {
  body.dp-theme :is(.dp-native,#order-standard_cart) select:not([multiple]):not([size]) { appearance:auto; background-image:none!important; }
}
