/* Только раскладка корзины. Цвета, шрифты, интервалы и компоненты — действующая дизайн-система. */
.cart-page [hidden]{display:none!important}
.cart-page .section{padding-top:var(--sp-40)}
.cart-page .cart-wrap{max-width:var(--maxw)}
.cart-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-16);margin-bottom:var(--sp-28)}
.cart-heading .section__title{margin:0 0 var(--sp-8)}
.cart-heading .section__sub{margin:0;font-size:var(--fs-sm);color:var(--muted)}
.cart-count{color:var(--text-2);white-space:nowrap;font-size:var(--fs-ui)}
.cart-page .cart-grid{grid-template-columns:minmax(0,1fr) var(--win-sm);gap:var(--sp-28)}
.cart-page .cart-main,.cart-page .cart-side{min-width:0}
.cart-page .cart-side{position:static;display:grid;gap:var(--sp-16)}
#cartList{display:grid;gap:var(--sp-14)}
.cart-page .cart-row{display:grid;grid-template-columns:calc(var(--tap) + var(--tap)) minmax(0,1fr) auto;gap:var(--sp-16);padding:var(--sp-18);border:var(--bw) solid var(--border);border-radius:var(--r-lg);background:var(--card);align-items:start;position:relative}
.cart-row__photo{grid-row:span 2;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--bg-alt);border:var(--bw) solid var(--border);border-radius:var(--r-md);overflow:hidden;color:var(--muted);font-size:var(--fs-panel)}
.cart-row__photo img{width:100%;height:100%;object-fit:contain}
.cart-row__category{font-size:var(--fs-xs);color:var(--muted);margin-bottom:var(--sp-4)}
.cart-page .cart-row__title{font-size:var(--fs-body);font-weight:var(--fw-semibold);line-height:var(--lh-body);overflow-wrap:anywhere}
.cart-row__title a{color:var(--text)}
.cart-row__title a:hover{color:var(--accent)}
.cart-page .cart-row__kind,.cart-row__details{font-size:var(--fs-ui);line-height:var(--lh-ui);color:var(--muted);margin:var(--sp-6) 0 0;overflow-wrap:anywhere}
.cart-row__kind del{margin-right:var(--sp-6)}
.cart-row__discount{margin:var(--sp-6) 0 0;font-size:var(--fs-xs);color:var(--ok)}
.cart-row__controls{grid-column:2 / -1;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-12);flex-wrap:wrap}
.cart-page .cart-qty{gap:var(--sp-8)}
.cart-page .cart-qty button{width:var(--btn-sm-h);height:var(--btn-sm-h);padding:0;border-radius:var(--r-md);background:transparent;font-size:var(--fs-body)}
.cart-qty span{min-width:var(--sp-24);text-align:center;font-size:var(--fs-body);font-weight:var(--fw-semibold)}
.cart-page .cart-row__sum{font-size:var(--fs-h4);min-width:0;text-align:right;font-weight:var(--fw-bold)}
.cart-page .cart-remove{grid-column:3;grid-row:1;width:var(--btn-sm-h);height:var(--btn-sm-h);padding:0;font-size:var(--fs-win);line-height:var(--lh-btn);border-radius:var(--r-md)}
.cart-summary,.cart-preview,.cart-empty{padding:var(--form-pad);background:var(--card);border:var(--bw) solid var(--border);border-radius:var(--r-lg)}
.cart-summary h2,.cart-page .lead-form h2,.cart-preview h2{margin:0 0 var(--sp-20);font-size:var(--fs-h3);line-height:var(--lh-h3)}
.cart-summary__total{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-12);font-size:var(--fs-body)}
.cart-summary__total strong{font-size:var(--fs-panel);line-height:var(--lh-panel)}
.cart-summary p,.cart-note{font-size:var(--fs-ui);line-height:var(--lh-ui);color:var(--muted);margin:var(--sp-14) 0 0;overflow-wrap:anywhere}
.cart-page .lead-form{margin:0;padding:var(--form-pad);width:100%;max-width:100%;min-width:0}
.cart-fields{margin:0 0 var(--sp-20);padding:0;border:0;min-width:0}
.cart-fields legend{font-size:var(--fs-sub);font-weight:var(--fw-semibold);padding:0;margin-bottom:var(--sp-14)}
.cart-fields>.cart-note:first-of-type{margin:0 0 var(--sp-16)}
.cart-page .field label{font-size:var(--fs-ui);line-height:var(--lh-ui)}
.cart-page .field input,.cart-page .field select,.cart-page .field textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:var(--field-h);padding:var(--sp-12) var(--sp-14);border:var(--bw) solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--text);font:inherit;font-size:var(--fs-body)}
.cart-page .field select{white-space:normal}
.cart-page .field input:focus,.cart-page .field textarea:focus,.cart-page .field select:focus{border-color:var(--accent)}
.cart-page .btn--block,#ckPreview .btn{white-space:normal;line-height:var(--lh-ui);height:auto;min-height:var(--btn-h)}
.cart-page .form-fineprint{margin-top:var(--sp-14)}
#ckStatus:not(:empty){padding:var(--sp-12) var(--sp-14);border:var(--bw) solid var(--info);border-radius:var(--r-md);font-size:var(--fs-ui);color:var(--text);background:var(--card)}
#ckStatus.is-error:not(:empty){color:var(--err);border-color:var(--err)}
.cart-preview{overflow-wrap:anywhere;border-color:var(--accent-line)}
.cart-preview h3{font-size:var(--fs-h3);margin:0 0 var(--sp-16)}
.cart-preview p{font-size:var(--fs-ui);line-height:var(--lh-ui);color:var(--text-2)}
.cart-preview strong{display:block;margin:var(--sp-16) 0;font-size:var(--fs-h3)}
#ckPreview{padding:var(--form-pad)}
#ckPreview button,#ckPreview a{margin:var(--sp-16) 0 0}
.cart-empty{text-align:center;padding:var(--sp-40) var(--sp-24)}
.cart-empty__icon{display:inline-flex;background:var(--icon-bg);padding:var(--sp-16);border-radius:var(--r-lg);margin-bottom:var(--sp-16);font-size:var(--fs-panel)}
.cart-empty h2{font-size:var(--fs-h3);margin:0 0 var(--sp-12)}
.cart-empty p{font-size:var(--fs-ui);color:var(--muted);margin:var(--sp-16) 0}
.cart-page :is(button,a,input,select,textarea,[tabindex]):focus-visible{outline:var(--focus-width) solid var(--focus-color);outline-offset:var(--focus-offset)}
@media(max-width:1024px){.cart-page .cart-grid{grid-template-columns:minmax(0,1fr)}.cart-heading{align-items:flex-start}}
@media(max-width:640px){
 .cart-page .section{padding-top:var(--sp-28)}
 .cart-heading{gap:var(--sp-12);margin-bottom:var(--sp-24)}
 .cart-page .cart-row{grid-template-columns:calc(var(--tap) + var(--sp-20)) minmax(0,1fr) auto;gap:var(--sp-12);padding:var(--sp-14)}
 .cart-row__photo{grid-row:1}
 .cart-row__controls{grid-column:1 / -1}
 .cart-page .cart-row__title{font-size:var(--fs-sm);line-height:var(--lh-sm)}
 .cart-summary,.cart-page .lead-form,#ckPreview{padding:var(--sp-20)}
 .cart-note,.cart-summary p,.cart-preview p{font-size:var(--fs-xs);line-height:var(--lh-xs)}
}

.cart-fields #ckOnlineFields>.cart-note{margin:var(--sp-14) 0 var(--sp-16)}

.cart-page .field input,.cart-page .field select{height:var(--field-h);line-height:var(--lh-btn)}
