/* Shared customer controls. Loaded last by both public shells; never by the admin workspace.
   Labels remain real HTML labels; icons, choices and multi-line fields retain
   their own geometry. 16px input text also prevents iOS focus zoom. */
.storefront-v2.marketplace-shell label:has(> .sf-field-label){display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;margin:0;color:var(--sf-text-muted);font-size:.875rem;font-weight:600;line-height:1.5;letter-spacing:0;text-transform:none}
.storefront-v2.marketplace-shell .sf-field-label{display:block;min-height:21px;overflow-wrap:anywhere}
.storefront-v2.marketplace-shell :is(input,select,textarea):not(:where([type=hidden],[type=checkbox],[type=radio],[type=range],[type=color],[type=submit],[type=button])){box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;margin:0;padding:11px 12px;border:1px solid var(--sf-border-strong);border-radius:8px;color:var(--sf-text);background:var(--sf-surface-raised);font-family:inherit;font-size:16px;font-weight:400;line-height:24px;letter-spacing:normal;text-transform:none}
.storefront-v2.marketplace-shell select{padding-inline-end:32px;cursor:pointer}
.storefront-v2.marketplace-shell textarea{height:auto;min-height:112px;resize:vertical}
.storefront-v2.marketplace-shell :is(input,textarea)::placeholder{color:var(--sf-text-faint);opacity:1}
.storefront-v2.marketplace-shell :is(input,select,textarea):disabled{color:var(--sf-text-muted);background:var(--sf-surface);cursor:not-allowed;opacity:1}
.storefront-v2.marketplace-shell :is(input,select,textarea):focus-visible{border-color:var(--sf-accent);outline:2px solid var(--sf-accent);outline-offset:2px}
.storefront-v2.marketplace-shell :is(input,select,textarea):is(.invalid,[aria-invalid=true]){border-color:var(--k-crit)}
.storefront-v2.marketplace-shell label>small{display:block;color:var(--sf-text-muted);font-size:.78rem;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none}
.storefront-v2.marketplace-shell :is(.validation-message,.validation-errors,.upload-error,.checkout-error){overflow-wrap:anywhere}
.storefront-v2.marketplace-shell input[type=file]{height:auto;min-height:48px;padding:6px;font-size:.875rem}
.storefront-v2.marketplace-shell input[type=file]::file-selector-button{min-height:34px;margin-inline-end:8px;padding:6px 10px;border:1px solid var(--sf-border-strong);border-radius:5px;color:var(--sf-text);background:var(--sf-surface);font:inherit;cursor:pointer}

/* Single column first; two equal columns only when the content has room. */
.storefront-v2.marketplace-shell :is(.editor-fields,.account-form-grid,.account-address-grid){display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;min-width:0}
.storefront-v2.marketplace-shell :is(.full-field,.account-address-line,.account-default-check){grid-column:1/-1}
.storefront-v2.marketplace-shell :is(.account-panel,.seller-dashboard-grid>*,.checkout-layout>*,.seller-status-card,.editor-card){min-width:0}
.storefront-v2.marketplace-shell .account-address-line textarea{min-height:112px}
.storefront-v2.marketplace-shell .account-panel-heading{flex-wrap:wrap;row-gap:12px}
.storefront-v2.marketplace-shell .account-panel-heading>div{min-width:0}
.storefront-v2.marketplace-shell .account-secondary-action{min-height:44px}
.storefront-v2.marketplace-shell .account-save-bar .button{min-height:48px}
.storefront-v2.marketplace-shell :is(.account-card,.checkout-form,.review-form)>label:has(> .sf-field-label),.storefront-v2.marketplace-shell .account-card form>label:has(> .sf-field-label){margin-block:20px}
.storefront-v2.marketplace-shell .filter-panel>label:has(> .sf-field-label){margin-bottom:20px}
.storefront-v2.marketplace-shell .sell-form-section form{display:flex;flex-direction:column;gap:20px;min-width:0;padding:0;border:0;background:transparent}
.storefront-v2.marketplace-shell .sell-form-section form :is(h2,h3,p){margin-block:0}
.storefront-v2.marketplace-shell .seller-dashboard-grid form>.editor-fields{margin-bottom:20px}
.storefront-v2.marketplace-shell .seller-dashboard-grid .editor-card-heading{margin-bottom:20px}
.storefront-v2.marketplace-shell :is(.seller-dashboard-grid,.seller-review-form) .table-edit{min-height:48px;padding:10px 16px;border:1px solid var(--sf-border-strong);border-radius:8px;color:var(--sf-text);background:var(--sf-surface-raised);font:inherit;cursor:pointer}
.storefront-v2.marketplace-shell .checkout-layout>.validation-errors{grid-column:1/-1}
.storefront-v2.marketplace-shell .seller-review-form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;min-width:0}
.storefront-v2.marketplace-shell .seller-review-form :is(input,select,button){min-width:0;min-height:48px}

/* Checkbox/radio labels have a small control beside wrapping copy. */
.storefront-v2.marketplace-shell :is(.check-label,.remember-choice){display:flex;flex-direction:row;align-items:flex-start;gap:10px;min-height:44px;min-width:0;line-height:1.5;font-size:.875rem;letter-spacing:0;text-transform:none}
.storefront-v2.marketplace-shell :is(.check-label,.remember-choice)>input[type=checkbox]{flex:0 0 20px;width:20px;min-width:20px;height:20px;min-height:20px;margin:1px 0 0;padding:0;accent-color:var(--sf-accent)}
.storefront-v2.marketplace-shell .payment-choice{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:6px 10px;font-size:.875rem;line-height:1.5;letter-spacing:0;text-transform:none}
.storefront-v2.marketplace-shell .payment-choice input[type=radio]{width:20px;height:20px;min-height:20px;margin:1px 0 0;padding:0;accent-color:var(--sf-accent)}
.storefront-v2.marketplace-shell .payment-choice small{grid-column:2;font-size:.78rem;line-height:1.5}

/* Framed icon/currency controls share the 48px outside edge without nesting borders. */
.storefront-v2.marketplace-shell .auth-input{box-sizing:border-box;grid-template-columns:36px minmax(0,1fr);height:48px;min-width:0;margin:0}
.storefront-v2.marketplace-shell .auth-input input{height:46px;min-height:46px;padding:10px 12px 10px 0;border:0;border-radius:0;background:transparent}
.storefront-v2.marketplace-shell .auth-input input:is([type=password],[autocomplete=new-password],[autocomplete=current-password]){padding-inline-end:48px}
.storefront-v2.marketplace-shell .auth-input .password-toggle{inset-inline-end:1px;width:44px;height:44px}
.storefront-v2.marketplace-shell .account-card label>input.verification-code{height:48px;min-height:48px;margin:0;padding:11px 12px;font-size:16px;letter-spacing:.3em}
.storefront-v2.marketplace-shell :is(.auth-options,.auth-form-options){flex-wrap:wrap;gap:12px}
.storefront-v2.marketplace-shell .global-search{min-height:48px}
.storefront-v2.marketplace-shell .global-search input{height:46px;min-height:46px;padding:0;border:0;border-radius:0;background:transparent}
.storefront-v2.marketplace-shell .filter-search>div{display:flex;align-items:center;gap:8px;min-width:0;margin:0}
.storefront-v2.marketplace-shell .filter-search>div>i{flex:none}
.storefront-v2.marketplace-shell .catalog-mobile-bar select{max-width:100%;margin:0}
.storefront-v2.marketplace-shell .catalog-controls label{min-width:0}
.storefront-v2.marketplace-shell .checkout-coupon button{min-height:48px}
.storefront-v2.marketplace-shell .custom-bid-field>div{display:flex;align-items:center;min-width:0;min-height:48px}
.storefront-v2.marketplace-shell .custom-bid-field input{min-width:0;height:46px;min-height:46px;border:0;background:transparent}
.storefront-v2.marketplace-shell .deck-lab-search{height:48px;min-width:0}
.storefront-v2.marketplace-shell .deck-lab-search input{height:46px;min-height:46px;padding:0;border:0;background:transparent}
.storefront-v2.marketplace-shell .deck-lab-search>button{flex:none}

@media(min-width:700px){
  .storefront-v2.marketplace-shell .editor-fields:is(.two-columns,.account-form-grid,.account-address-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
  .storefront-v2.marketplace-shell .seller-review-form{grid-template-columns:120px minmax(0,1fr) auto}
}
@media(max-width:699px){
  .storefront-v2.marketplace-shell .account-save-bar .button{width:100%}
  .storefront-v2.marketplace-shell .account-panel-heading .account-secondary-action{margin-inline-start:0}
  .storefront-v2.marketplace-shell .catalog-controls{flex-wrap:wrap;align-items:flex-end;gap:12px}
  .storefront-v2.marketplace-shell .catalog-controls label{flex:1 1 120px}
  .storefront-v2.marketplace-shell .seller-status-card{padding:16px}
}
@media(max-width:400px){
  .storefront-v2.marketplace-shell .deck-lab-topbar{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-inline:12px}
  .storefront-v2.marketplace-shell .deck-lab-brand{min-width:0;width:auto;gap:6px}
  .storefront-v2.marketplace-shell .deck-lab-brand small{display:none}
  .storefront-v2.marketplace-shell .deck-lab-brand strong em{font-size:inherit}
}
