.cart-page{padding:15px 0 40px}
.cart-page__title{margin-bottom:24px}
.cart-page__layout{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start}
@media screen and (max-width:1180px ){.cart-page__layout{grid-template-columns:1fr 320px;gap:24px}}
@media screen and (max-width:750px ){.cart-page__layout{grid-template-columns:1fr}}
.cart-page__empty{padding:40px 0;color:#666}
.cart-page__loader{display:flex;justify-content:center;padding:60px 0}
.cart-page__loader img{animation:cart-loader-spin 1s linear infinite}
@keyframes cart-loader-spin{to{transform:rotate(360deg)}}
.cart-page__items{display:flex;flex-direction:column;gap:16px}
.cart-page__item{display:grid;grid-template-columns:250px 1fr auto;gap:16px;align-items:start;padding:16px;border:1px solid #eee;border-radius:8px}
@media screen and (max-width:750px ){.cart-page__item{grid-template-columns:90px 1fr auto;gap:12px;padding:12px}}
.cart-page__item-image{display:block;border-radius:6px;overflow:hidden;background:#f4f4f4}
.cart-page__item-image img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:1}
.cart-page__item-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.cart-page__item-name{color:#333;font-weight:500;text-decoration:none}
.cart-page__item-name:hover{color:#872837}
.cart-page__item-vendor{font-size:13px;color:#a0a0a0}
.cart-page__item-price{font-weight:500;color:#333;margin-top:4px;min-height:1.2em}
.cart-page__qty{display:inline-flex;align-items:center;gap:10px;margin-top:10px}
.cart-page__qty-btn{width:32px;height:32px;border:1px solid #d6d6d6;border-radius:6px;background:#fff;color:#666;font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-transition:border-color 0.3s ease;-o-transition:border-color 0.3s ease;transition:border-color 0.3s ease}
.cart-page__qty-btn:hover{border-color:#872837;color:#872837}
.cart-page__qty-value{min-width:28px;text-align:center;font-weight:500}
.cart-page__item-remove{border:none;background:none;padding:4px;cursor:pointer;opacity:0.7;-webkit-transition:opacity 0.3s ease;-o-transition:opacity 0.3s ease;transition:opacity 0.3s ease}
.cart-page__item-remove:hover{opacity:1}
.cart-page__total{align-self:flex-end;font-size:18px;font-weight:500;color:#333;padding:8px 0}
.cart-page__form{padding:20px;border:1px solid #eee;border-radius:8px}
.cart-page__form-title{margin-bottom:16px;font-size:18px}
.cart-page__field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.cart-page__field label{font-size:13px;color:#666}
.cart-page__field input{width:100%;padding:9px 12px;border:1px solid #d6d6d6;border-radius:6px;font-size:14px;color:#333;-webkit-transition:border-color 0.3s ease;-o-transition:border-color 0.3s ease;transition:border-color 0.3s ease}
.cart-page__field input:focus{outline:none;border-color:#872837}
.cart-page__agree{display:flex;align-items:center;gap:8px;margin:16px 0;font-size:13px;color:#666;cursor:pointer;line-height:1}
.cart-page__agree input{display:block;width:16px;height:16px;accent-color:#872837}
.cart-page__submit{width:100%;padding:13px 24px;border:none;border-radius:32px;background:#872837;color:#fff;font-size:15px;cursor:pointer;-webkit-transition:opacity 0.3s ease;-o-transition:opacity 0.3s ease;transition:opacity 0.3s ease}
.cart-page__submit:hover:not(:disabled){opacity:0.9}
.cart-page__submit:disabled{opacity:0.4;cursor:not-allowed}