/* ============================================================
   Модуль «Корзина» — страницы /basket/ и /basket/order/.
   Переменные переопределяются в админке: Внешний вид → Корзина.
   ============================================================ */
:root{
  --basket-radius:18px;         /* скругление блоков корзины */
  --basket-bg:#FFFFFF;          /* фон строк корзины */
  --basket-line:#E2E8F0;        /* линии-разделители */
  --basket-accent:#0038B8;      /* акцентный цвет (итог, кнопки) */
}
.basket{display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start;margin-top:24px}
@media (max-width:900px){.basket{grid-template-columns:1fr}}
.basket__list{display:grid;gap:14px}
.basket__row{
  display:flex;align-items:center;gap:16px;
  background:var(--basket-bg);border:1px solid var(--basket-line);
  border-radius:var(--basket-radius);padding:14px 18px;
}
.basket__img{flex:0 0 84px;width:84px;height:64px;border-radius:10px;overflow:hidden;background:var(--color-alt,#F1F5FB)}
.basket__img img{width:100%;height:100%;object-fit:cover}
.basket__info{flex:1;min-width:0;display:grid;gap:4px}
.basket__name{font-weight:700;color:var(--color-text,#1E2438);text-decoration:none}
.basket__name:hover{color:var(--basket-accent)}
.basket__price{font-size:14px;color:var(--color-muted,#5B6785)}
.basket__qty{display:flex;align-items:center;gap:6px}
.basket__qty button{
  width:32px;height:32px;border-radius:8px;border:1px solid var(--basket-line);
  background:#fff;font-size:17px;cursor:pointer;line-height:1;
}
.basket__qty button:hover{border-color:var(--basket-accent);color:var(--basket-accent)}
.basket__qty input{width:56px;height:32px;text-align:center;border:1px solid var(--basket-line);border-radius:8px;font:inherit}
.basket__sum{font-weight:800;min-width:100px;text-align:right}
.basket__remove{
  width:30px;height:30px;border-radius:8px;border:none;background:transparent;
  color:var(--color-muted,#5B6785);font-size:20px;cursor:pointer;line-height:1;
}
.basket__remove:hover{color:#DC2626;background:#FEF2F2}
.basket__side{
  background:var(--basket-bg);border:1px solid var(--basket-line);
  border-radius:var(--basket-radius);padding:24px;display:grid;gap:18px;
  position:sticky;top:110px;
}
.basket__total{display:flex;justify-content:space-between;align-items:baseline;font-size:16px}
.basket__total b{font-size:24px;color:var(--basket-accent)}
.basket-empty{margin:30px 0;display:grid;gap:18px;justify-items:start}
/* Оформление заказа */
.order-grid{display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start;margin-top:24px}
@media (max-width:900px){.order-grid{grid-template-columns:1fr}}
.order-side{
  background:var(--basket-bg);border:1px solid var(--basket-line);
  border-radius:var(--basket-radius);padding:24px;display:grid;gap:14px;
}
.order-side ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:14px}
.order-side li{display:flex;justify-content:space-between;gap:12px}
.order-done{margin-top:20px}
.order-done__table{width:100%;border-collapse:collapse;margin:20px 0;font-size:15px}
.order-done__table th,.order-done__table td{padding:10px 14px;border:1px solid var(--basket-line);text-align:left}
.order-done__table th{background:var(--color-alt,#F1F5FB)}
.order-done__pay{margin:18px 0}
