/* ПитомЧик v79.5.10 — более компактные блоки формы доставки. */

body.request-page .delivery-fields{
  padding:10px!important;
  gap:10px!important;
  border-radius:16px!important;
}
body.request-page .delivery-order-grid{
  gap:10px!important;
}
body.request-page .quantity-field{
  display:grid!important;
  align-content:start!important;
  gap:7px!important;
  min-width:0!important;
  padding:10px!important;
  border:1px solid rgba(16,60,36,.08)!important;
  border-radius:14px!important;
  background:#fffdf9!important;
}
body.request-page .quantity-field>label{
  margin:0!important;
  font-size:.86rem!important;
}
body.request-page .quantity-field>small{
  margin:0!important;
  font-size:.76rem!important;
  line-height:1.35!important;
}
body.request-page .quantity-stepper{
  grid-template-columns:36px minmax(58px,86px) 36px!important;
  gap:5px!important;
  width:auto!important;
  max-width:168px!important;
}
body.request-page .quantity-stepper-button{
  min-width:36px!important;
  width:36px!important;
  min-height:36px!important;
  height:36px!important;
  border-radius:10px!important;
  font-size:1.08rem!important;
}
body.request-page .quantity-stepper input{
  height:36px!important;
  min-height:36px!important;
  padding:5px!important;
  border-radius:10px!important;
  font-size:.92rem!important;
}
body.request-page .delivery-total-card{
  min-height:0!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  justify-content:flex-start!important;
  gap:2px!important;
}
body.request-page .delivery-total-card span{
  font-size:.73rem!important;
  line-height:1.3!important;
}
body.request-page .delivery-total-card strong{
  margin:1px 0!important;
  font-size:1.24rem!important;
  line-height:1.12!important;
}
body.request-page .delivery-total-card small{
  font-size:.72rem!important;
  line-height:1.3!important;
}
body.request-page .delivery-benefit{
  min-height:0!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  gap:4px!important;
}
body.request-page .delivery-benefit strong{
  font-size:.84rem!important;
  line-height:1.3!important;
}
body.request-page .delivery-benefit span{
  font-size:.76rem!important;
  line-height:1.38!important;
}
body.request-page .payment-fields{
  padding:10px!important;
  border-radius:15px!important;
  gap:10px!important;
}
body.request-page .payment-method-fieldset{
  gap:8px!important;
}
body.request-page .payment-method-fieldset legend{
  margin-bottom:7px!important;
  font-size:.86rem!important;
}
body.request-page .payment-method-options{
  gap:8px!important;
}
body.request-page .payment-method-option span{
  min-height:54px!important;
  padding:9px 11px!important;
  border-width:1px!important;
  border-radius:13px!important;
  gap:3px!important;
}
body.request-page .payment-method-option strong{
  font-size:.86rem!important;
  line-height:1.3!important;
}
body.request-page .payment-method-option small{
  font-size:.72rem!important;
  line-height:1.35!important;
}
body.request-page .cash-change-panel{
  padding:9px!important;
  border-radius:13px!important;
}
body.request-page .cash-change-toggle{
  min-height:0!important;
  padding:9px 10px!important;
  border-radius:12px!important;
  gap:8px!important;
}
body.request-page .cash-change-toggle strong{
  font-size:.84rem!important;
}
body.request-page .cash-change-toggle small{
  font-size:.72rem!important;
  line-height:1.35!important;
}
body.request-page .change-from-field{
  margin-top:8px!important;
}
body.request-page .request-consent{
  padding:10px!important;
  border-radius:13px!important;
  gap:9px!important;
}
body.request-page .request-consent span{
  font-size:.78rem!important;
  line-height:1.42!important;
}
body.request-page .request-form-actions{
  gap:10px!important;
}
body.request-page .request-form-actions .button{
  min-height:42px!important;
  padding:8px 14px!important;
}

/* Переходный диапазон: меню должно оставаться мобильным, а не получать ПК-правила. */
@media (min-width:821px) and (max-width:1000px){
  body.request-page .site-header .header-inner{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    width:min(100% - 28px,1160px)!important;
    min-height:64px!important;
    gap:12px!important;
  }
  body.request-page .site-header .brand{
    flex:0 0 auto!important;
    margin:0!important;
  }
  body.request-page .site-header .brand-logo-full{
    width:170px!important;
    max-height:44px!important;
  }
  body.request-page .site-header .menu-toggle{
    display:inline-flex!important;
    margin-left:auto!important;
    flex:0 0 auto!important;
  }
  body.request-page .site-header .header-action,
  body.request-page .site-header .header-cart-link--desktop{
    display:none!important;
  }
  body.request-page .site-header .main-nav{
    position:absolute!important;
    top:100%!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 64px)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:stretch!important;
    justify-content:initial!important;
    gap:4px!important;
    margin:0!important;
    padding:14px 18px 20px!important;
    overflow:auto!important;
    border-radius:0!important;
    background:#fffaf3!important;
    box-shadow:0 18px 34px rgba(23,31,25,.16)!important;
    transform:translateY(-12px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  body.request-page .site-header .main-nav.open{
    transform:translateY(0)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  body.request-page .site-header .main-nav>a{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:42px!important;
    padding:9px 12px!important;
    border-radius:12px!important;
    font-size:.94rem!important;
    white-space:normal!important;
  }
  body.request-page .site-header .mobile-nav-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    margin:8px 0 0!important;
    padding-top:10px!important;
  }
  body.request-page .site-header .mobile-nav-actions a{
    min-height:40px!important;
    padding:8px 10px!important;
    font-size:.84rem!important;
  }
}

@media (max-width:720px){
  body.request-page .delivery-order-grid{
    gap:8px!important;
  }
  body.request-page .quantity-field,
  body.request-page .delivery-total-card,
  body.request-page .delivery-benefit,
  body.request-page .payment-fields,
  body.request-page .cash-change-panel{
    padding:9px!important;
    border-radius:12px!important;
  }
  body.request-page .quantity-stepper{
    grid-template-columns:34px minmax(54px,78px) 34px!important;
    max-width:156px!important;
  }
  body.request-page .quantity-stepper-button{
    min-width:34px!important;
    width:34px!important;
    min-height:34px!important;
    height:34px!important;
  }
  body.request-page .quantity-stepper input{
    height:34px!important;
    min-height:34px!important;
  }
  body.request-page .payment-method-option span{
    min-height:0!important;
    padding:8px 10px!important;
  }
}

@media (min-width:721px){
  body.request-page .delivery-order-grid{
    grid-template-columns:minmax(150px,.45fr) minmax(210px,.8fr)!important;
  }
  body.request-page .delivery-benefit{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:minmax(140px,.45fr) minmax(0,1fr)!important;
    align-items:start!important;
  }
}
