/* === Десктоп (ПК) — стили для ширины ≥601px === */

:root {
  --header-bg: #FDF4F6;
  --header-waves: #FEFBFB;
  --page-bg: #fdeded;
  --card-bg: #fcf6f5;
  --cart-bg: #fcefea;
  --peach-50: #fff5f0;
  --peach-100: #ffe7df;
  --peach-200: #ffd4c2;
  --peach-300: #ffbda4;
  --peach-400: #ffa98f;
  --rose-300: #ff9aa2;
  --coral-500: #ff6f61;
  --text-900: #332222;
  --text-700: #444444;
  --text-500: #696969;
  --white: #ffffff;
  --green-500: #22c55e;
  --red-500: #ef4444;
  --radius-lg: 16px;
  --shadow-1: 0 8px 24px rgba(0,0,0,0.08);
  --shadow-2: 0 10px 30px rgba(255,159,143,0.25);
}

*,*::before,*::after{ box-sizing:border-box; }
html,body{ margin:0; padding:0; color:var(--text-900); background:var(--page-bg); font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial,"Apple Color Emoji","Segoe UI Emoji"; }
.container{ max-width:1200px; margin:0 auto; padding:16px 24px; width:100%; box-sizing:border-box; }

.site-header-section{ box-sizing:border-box; }
.site-header-wrapper{ box-sizing:border-box; }
.header-bg-layer{ position:absolute; inset:0; z-index:0; pointer-events:none; display:none; }
.header-bg-layer img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }

@media (min-width: 601px) {
  .site-header-section{ position:sticky; top:0; z-index:50; width:100%; max-width:100%; overflow:hidden; }
  .site-header-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    background: var(--header-bg);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 20'%3E%3Cpath fill='none' stroke='%23FEFBFB' stroke-width='0.8' d='M0 10 Q50 5 100 10 T200 10 T300 10 T400 10'/%3E%3Cpath fill='none' stroke='%23FEFBFB' stroke-width='0.6' d='M0 14 Q50 9 100 14 T200 14 T300 14 T400 14'/%3E%3C/svg%3E");
    background-size: 200px 20px;
    background-repeat: repeat-x;
    margin: 0 auto;
    min-height: 100px;
    border-radius: 0 0 clamp(8px, 2vw, 12px) clamp(8px, 2vw, 12px);
  }
  .site-header-wrapper > header{ flex:1; min-width:0; max-width:100%; padding:0; margin:0; background:transparent; box-shadow:none; border-radius:0; min-height:0; }
  .site-header-wrapper:has(header.header-has-bg-image){ background-image:none; }
  header.header-has-bg-image{ background-color:#FDF4F6; }
  header.header-has-bg-image .header-inner{ min-height:180px; }
}
@media (min-width: 601px) and (max-width:900px){ header.header-has-bg-image .header-inner{ min-height:140px; } .header-inner{ padding:16px; gap:12px; } }

header{ overflow:visible; width:100%; max-width:100%; min-width:0; box-sizing:border-box; }
.admin-secret{ width:12px; height:12px; border-radius:999px; background:rgba(0,0,0,.15); cursor:pointer; border:1px solid rgba(0,0,0,.08); }
.schedule-display{ white-space:nowrap; font-size:13px; color:var(--text-700); background:#fff; border:1px solid var(--peach-200); padding:6px 10px; border-radius:999px; }

/* Нижняя навигация скрыта на ПК */
.mobile-bottom-nav{
  display:none;
}

/* Кнопка меню в шапке — скрыта на ПК, показывается на мобиле */
.header-menu-toggle{ display:none; }

/* Только ПК — шапка и кнопки */
@media (min-width: 601px) {
  .header-actions-mob{ display:none !important; }
  .header-inner{ position:relative; z-index:1; width:100%; max-width:100%; box-sizing:border-box; display:flex; justify-content:flex-end; align-items:center; gap:clamp(12px, 1.5vw, 24px); min-height:100px; flex-wrap:wrap; padding:clamp(16px, 2vw, 24px) clamp(16px, 3vw, 32px); max-width:1200px; margin:0 auto; }
  .header-actions-pc{ display:flex; flex-direction:column; gap:8px; align-items:stretch; flex-shrink:0; }
  .btn-header-login{ display:inline-flex; align-items:center; justify-content:center; gap:clamp(6px, 0.8vw, 12px); padding:clamp(12px, 1.2vw, 18px) clamp(14px, 1.5vw, 22px); min-height:48px; max-height:56px; border-radius:999px; border:none; background:linear-gradient(180deg,#FDF2EF 0%,#F9E6E0 50%,#F6DED6 100%); color:#333; font-weight:600; cursor:pointer; font-size:clamp(14px, 1vw, 16px); box-shadow:inset 0 1px 2px rgba(255,255,255,0.7),inset 0 -1px 1px rgba(0,0,0,0.03),0 2px 8px rgba(0,0,0,0.08); font-family:inherit; transition:all .15s; white-space:nowrap; flex-shrink:0; }
  .btn-header-login svg{ width:clamp(18px, 2vw, 22px); height:clamp(18px, 2vw, 22px); flex-shrink:0; stroke:#444; }
  .btn-header-login:hover{ background:linear-gradient(180deg,#FFF6F3 0%,#FAE8E2 50%,#F6DED6 100%); box-shadow:inset 0 1px 2px rgba(255,255,255,0.8),inset 0 -1px 1px rgba(0,0,0,0.04),0 3px 10px rgba(0,0,0,0.1); }
  /* Скрытие шапки при скролле вниз (только ПК) */
  .site-header-section.hide-on-scroll{
    transform:translateY(-110%);
    transition:transform 0.2s ease;
  }
  .site-header-section{
    transition:transform 0.2s ease;
  }
}
@media (min-width: 601px) and (max-width:900px){ .btn-header-login{ padding:11px 20px; min-height:48px; font-size:15px; } }
@media (min-width: 1200px){ .header-inner{ padding-left:24px; padding-right:24px; } }
@media (min-width: 1600px){ .header-inner{ max-width:1400px; } }
.btn{ border:none; padding:10px 14px; border-radius:12px; cursor:pointer; font-weight:600; white-space:nowrap; }
.btn-primary{ background:linear-gradient(135deg,var(--rose-300),var(--coral-500)); color:#fff; box-shadow:var(--shadow-2); }
.btn-telegram{ background:#0088cc !important; color:#fff !important; box-shadow:0 2px 8px rgba(0,136,204,0.4); }
.btn-telegram:hover{ background:#0077b5 !important; color:#fff !important; }
.btn-vk{ background:#2787F5 !important; color:#fff !important; box-shadow:0 2px 8px rgba(39,135,245,0.4); }
.btn-vk:hover{ background:#1a6cd6 !important; color:#fff !important; }
.btn-ghost{ background:rgba(255,255,255,.7); border:1px solid var(--peach-200); }
.btn-danger{ background:var(--red-500); color:#fff; }
.btn-success{ background:var(--green-500); color:#fff; }

.layout{ display:grid; grid-template-columns:1fr 360px; gap:20px; align-items:start; }
@media (max-width:1200px){ .layout{ grid-template-columns:220px 1fr; } .cart{ grid-column:span 2; } }
@media (max-width:900px){ .layout{ grid-template-columns:1fr; gap:16px; } .cart{ grid-column:span 1; } }
.sidebar{ position:static; top:auto; background:transparent; border:0; border-radius:0; padding:0; box-shadow:none; z-index:45; grid-column:1 / -1; }
@media (max-width:900px){
  .sidebar{
    position:sticky;
    top:calc(var(--header-offset, 76px) + 8px);
    z-index:45;
    transition:transform 0.2s ease;
  }
}
.categories{ display:flex; flex-direction:row; flex-wrap:wrap; gap:0; padding:0; border-radius:999px; border:1px solid #e6d6d0; background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,0.9); overflow:hidden; align-items:stretch; }
.category-btn{ position:relative; text-align:center; padding:6px 14px; border-radius:0; border:none; background:transparent; color:#000; cursor:pointer; font-weight:600; font-size:13px; box-shadow:none; display:flex; align-items:center; justify-content:center; min-height:32px; }
.category-btn::after{ content:""; position:absolute; right:0; top:0; bottom:0; width:1px; background:#e6d6d0; }
.category-btn:last-child::after{ display:none; }
.category-btn.active{ background:linear-gradient(135deg,var(--rose-300),var(--coral-500)); color:#fff; box-shadow:var(--shadow-2); }
.category-btn:hover:not(.active){ background:rgba(248,195,199,0.3); }
.category-btn.active{ background:linear-gradient(135deg,var(--rose-300),var(--coral-500)); color:#fff; box-shadow:var(--shadow-2); border-color:transparent; }

.content{ min-height:60vh; }
.grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
@media (max-width:1200px){ .grid{ grid-template-columns:repeat(4,1fr); gap:14px; } }
@media (max-width:1024px){ .grid{ grid-template-columns:repeat(3,1fr); gap:14px; } }
@media (max-width:768px){ .grid{ grid-template-columns:repeat(2,1fr); gap:12px; } .card{ border-radius:14px; } }
.card{ background:var(--card-bg); border:3px solid rgba(255,255,255,0.9); border-radius:18px; overflow:hidden; box-shadow:0 4px 16px rgba(255,120,120,0.2); display:flex; flex-direction:column; }
.card-img{ position:relative; padding-top:133.3333%; background:linear-gradient(135deg,var(--peach-200),var(--rose-300)); cursor:pointer; }
.card-img img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.card-body{ display:flex; flex-direction:column; gap:10px; padding:14px; flex:1; }
.title{ margin:0; font-size:15px; line-height:1.25; overflow-wrap:break-word; }
.price-per-100{ font-size:12px; color:var(--text-500); }
.control-row{ display:grid; grid-template-columns:1fr; gap:10px; margin-top:auto; }
.grams-input{ display:flex; align-items:center; width:100%; border:1px solid rgba(0,0,0,0.12); border-radius:10px; background:#fff; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,0.08); }
.grams-input input[type="number"]{ flex:1 1 auto; min-width:0; padding:10px 12px; font-size:16px; font-weight:700; border:0; outline:0; background:#fff; border-right:1px solid rgba(0,0,0,0.1); }
.grams-input span{ padding:10px 12px; font-size:16px; font-weight:600; color:#333; background:#fff; flex-shrink:0; }
.grams-input input[type="number"]::-webkit-inner-spin-button,
.grams-input input[type="number"]::-webkit-outer-spin-button,
.cart-qty-input::-webkit-inner-spin-button,
.cart-qty-input::-webkit-outer-spin-button{ -webkit-appearance:none; margin:0; }
.grams-input input[type="number"],
.cart-qty-input{ -moz-appearance:textfield; appearance:textfield; }
.btn-add{ box-sizing:border-box; width:100%; max-width:100%; justify-self:stretch; padding:12px 14px; border-radius:12px; border:none; background:linear-gradient(135deg,var(--rose-300),var(--coral-500)); color:#fff; font-weight:700; cursor:pointer; box-shadow:var(--shadow-2); }
@media (min-width:681px) and (max-width:1080px){ .btn-add{ width:100%; } }
@media (min-width:1081px){ .btn-add{ width:100%; } }
.btn-add:disabled{ background:#e3e3e3; color:#9b9b9b; cursor:not-allowed; box-shadow:none; }

.cart.cart-panel{ position:sticky; top:76px; background:var(--cart-bg,#fcefea); border:3px solid rgba(255,255,255,0.9); border-radius:16px; padding:0; box-shadow:0 4px 16px rgba(255,120,120,0.2); overflow:hidden; display:flex; flex-direction:column; max-height:calc(100vh - 100px); }
.cart-panel-header{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:14px 16px; border-bottom:1px solid rgba(0,0,0,0.08); background:var(--cart-bg,#fcefea); }
.cart-panel-title{ margin:0; font-size:18px; font-weight:700; }
.cart-date{ font-size:13px; color:var(--text-500); }
.cart-count-note{ font-size:12px; color:var(--text-500); margin-left:auto; }
.cart-empty{ padding:20px 16px; color:var(--text-500); font-size:14px; }
.cart-items-by-category{ flex:1; overflow-y:auto; padding:12px 16px; display:flex; flex-direction:column; gap:16px; background:#fdf9f8; border-radius:12px; }
.cart-items-by-category:empty{ display:none; padding:0; background:transparent; }
.cart-category-block{ display:flex; flex-direction:column; gap:8px; }
.cart-category-title{ font-size:11px; font-weight:700; letter-spacing:0.05em; color:var(--text-700); text-transform:uppercase; margin:0 0 4px 0; padding-bottom:4px; border-bottom:1px solid rgba(0,0,0,0.08); }
.cart-item-row{ display:grid; grid-template-columns:1fr auto; gap:10px; align-items:start; padding:10px 12px; border-bottom:1px solid rgba(0,0,0,0.08); background:transparent; border-radius:12px; }
.cart-item-row:last-child{ border-bottom:none; }
.cart-item-name{ font-weight:600; font-size:14px; overflow-wrap:break-word; }
.cart-item-meta{ font-size:12px; color:var(--text-500); margin-top:2px; }
.cart-item-right{ display:flex; flex-direction:column; align-items:flex-end; gap:6px; }
.cart-qty-row{ display:flex; align-items:stretch; gap:0; padding:0; border:1px solid #e6d6d0; background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%); border-radius:10px; box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),0 1px 2px rgba(0,0,0,0.06); overflow:hidden; }
.cart-qty-btn{ width:24px; height:30px; border:0; background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%); border-radius:0; cursor:pointer; font-size:18px; font-weight:700; line-height:1; display:flex; align-items:center; justify-content:center; color:#333; }
.cart-qty-btn:hover{ background:linear-gradient(180deg,#f9e9e3 0%,#f3d6cb 100%); }
.cart-qty-value{ min-width:46px; padding:0 10px; text-align:center; font-weight:700; font-size:16px; background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%); border-left:1px solid #e6d6d0; border-right:1px solid #e6d6d0; display:flex; align-items:center; justify-content:center; }
.cart-qty-input{ width:56px; padding:0 10px; text-align:center; font-weight:700; font-size:16px; border:0; border-left:1px solid #e6d6d0; border-right:1px solid #e6d6d0; background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%); }
.cart-qty-wrap{ display:flex; align-items:center; gap:6px; }
.cart-remove-btn{
  width:auto;
  min-width:32px;
  height:30px;
  padding:0 12px;
  border-radius:10px;
  background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%);
  border:1px solid #e6d6d0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),0 1px 2px rgba(0,0,0,0.06);
  font-size:16px;
  font-weight:700;
  color:var(--red-500);
}
.cart-remove-btn:hover{
  background:linear-gradient(180deg,#f9e9e3 0%,#f3d6cb 100%);
}
.cart-item-price{ font-size:13px; font-weight:600; color:var(--text-900); }
.cart-summary{ padding:16px; border-top:1px solid rgba(0,0,0,0.08); background:var(--cart-bg,#fcefea); }
.cart-total-row{ display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.cart-total-row span:first-child{ font-size:14px; color:var(--text-700); }
.cart-total-value{ font-size:22px; font-weight:800; }
.btn-cart-checkout{ width:100%; padding:14px; font-size:16px; font-weight:700; background:linear-gradient(135deg,var(--rose-300),var(--coral-500)); color:#fff; border:none; border-radius:14px; cursor:pointer; margin-bottom:8px; box-shadow:var(--shadow-2); }
.btn-cart-checkout:hover{ filter:brightness(1.05); }
.btn-cart-clear{ width:100%; padding:8px; font-size:13px; color:var(--text-500); background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%); border:1px solid #e6d6d0; border-radius:10px; box-shadow:inset 0 1px 0 rgba(255,255,255,0.9); }

.admin-panel{ display:none; margin-top:20px; background:#fff; border:1px solid var(--peach-200); border-radius:var(--radius-lg); padding:16px; box-shadow:var(--shadow-1); }
.admin-tabs-bar{ display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:8px; }
.admin-tabs{ display:flex; gap:8px; flex-wrap:wrap; }
.admin-tab-btn{ padding:8px 12px; border:1px solid var(--peach-200); background:#fff; border-radius:999px; cursor:pointer; font-weight:600; }
.admin-tab-btn.active{ background:linear-gradient(135deg,var(--peach-200),var(--rose-300)); color:#fff; border-color:transparent; }
.admin-close{ padding:8px 12px; }
.admin-section{ display:none; padding-top:12px; }
.admin-section.active{ display:block; }
.admin-note{ font-size:12px; color:var(--text-500); }
.admin-grid{ display:grid; gap:10px; grid-template-columns:repeat(12,1fr); }
.admin-card{ grid-column:span 6; border:1px solid var(--peach-200); border-radius:12px; padding:10px; background:var(--peach-50); }
.admin-row{ display:grid; grid-template-columns:1fr auto; gap:10px; align-items:center; }
.admin-form{ display:grid; gap:10px; margin-top:16px; grid-template-columns:repeat(12,1fr); }
.field{ grid-column:span 6; display:grid; gap:6px; }
.field-full{ grid-column:span 12; display:grid; gap:6px; }
.admin-form input,.admin-form select,.admin-form textarea{ padding:10px 12px; border-radius:10px; border:1px solid var(--peach-200); }
.admin-form textarea{ min-height:120px; resize:vertical; }
.order-card{ border:1px solid var(--peach-200); border-radius:12px; padding:10px; background:#fff; display:grid; gap:8px; }
.order-head{ display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; }
.order-items{ font-size:13px; color:var(--text-700); white-space:pre-wrap; background:var(--peach-50); padding:8px; border-radius:10px; }
.order-controls{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }

/* Подвал: контакты + соцсети + копирайт */
.site-footer{ margin-top:28px; padding:24px; background:var(--peach-50); border-top:1px solid var(--peach-200); color:var(--text-900); }
.footer-top{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; gap:24px; }
.footer-contact{ display:flex; flex-direction:column; gap:4px; }
.footer-phone{ font-size:1.1rem; font-weight:600; color:var(--text-900); text-decoration:none; }
.footer-phone:hover{ text-decoration:underline; }
.footer-schedule-label{ font-size:0.9rem; color:var(--text-700); }
.footer-schedule{ font-size:0.95rem; font-weight:500; }
.footer-socials{ display:flex; flex-direction:column; gap:8px; }
.footer-socials-title{ font-size:0.95rem; font-weight:600; }
.footer-socials-icons{ display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.footer-socials-icons a{ display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; text-decoration:none; transition:opacity 0.2s; }
.footer-socials-icons a:hover{ opacity:0.85; }
.footer-socials-icons .icon-vk{
  width:40px;
  height:40px;
  border-radius:50%;
  background:transparent;
  background-image:url('/assets/vk-custom.png');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  color:transparent;
  font-size:0;
}
.footer-socials-icons .icon-instagram{ background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); color:#fff; }
.footer-socials-icons .icon-whatsapp{ background:#25D366; color:#fff; }
.footer-socials-icons .icon-telegram{ background:#0088cc; color:#fff; }
.footer-divider{ height:1px; background:var(--peach-200); margin:14px 0; }
.footer-copyright{ font-size:0.85rem; color:var(--text-700); text-align:center; }
.footer-legal{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap; font-size:0.85rem; }
.footer-legal-link,
.footer-legal-link:visited{
  color:#000000;
  text-decoration:none;
}
.footer-legal-link:hover{
  text-decoration:underline;
}
/* legacy (если где-то остались) */
footer{ margin-top:28px; padding:24px; background:#fff; border-top:1px solid var(--peach-200); }
.footer-grid{ display:grid; gap:16px; grid-template-columns:repeat(12,1fr); }
.footer-col{ grid-column:span 6; }
@media (max-width:680px){ .footer-col{ grid-column:span 12; } }
.footer-box{ background:var(--peach-50); border:1px solid var(--peach-200); border-radius:12px; padding:12px; }
.footer-box h4{ margin:0 0 8px 0; }

.modal-backdrop{ position:fixed; inset:0; background:rgba(0,0,0,.35); display:none; align-items:center; justify-content:center; padding:16px; z-index:9999; }
.modal{ width:100%; max-width:680px; background:#fff; border-radius:16px; box-shadow:var(--shadow-2); overflow:hidden; }
.modal-header{ padding:14px 16px; border-bottom:1px solid var(--peach-200); display:flex; justify-content:space-between; align-items:center; }
.modal-body{ padding:16px; display:grid; gap:12px; }
.modal-footer{ padding:16px; border-top:1px solid var(--peach-200); display:flex; gap:8px; justify-content:space-between; flex-wrap:wrap; }
.img-modal .modal{ max-width:900px; }
#ordersModal .modal{ max-width:520px; }
#ordersModal .modal-body{ max-height:60vh; overflow:auto; }
.img-modal-body{ padding:0; background:#000; display:flex; align-items:center; justify-content:center; }
.img-modal-body img{ max-width:100%; max-height:80vh; display:block; }
.img-modal-caption{ padding:10px 14px; font-size:14px; color:#444; border-top:1px solid var(--peach-200); background:#fff; }

/* Оформление заказа — в стиле корзины */
.checkout-modal{
  background:var(--cart-bg,#fcefea);
  border:3px solid rgba(255,255,255,0.9);
  box-shadow:0 4px 16px rgba(255,120,120,0.2);
  max-width:360px;
}
.checkout-modal-header{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  padding:10px 12px;
  border-bottom:1px solid rgba(0,0,0,0.08);
  background:var(--cart-bg,#fcefea);
}
.checkout-modal-title{ margin:0; font-size:16px; font-weight:700; }
.checkout-date{ font-size:12px; color:var(--text-500); margin-left:auto; }
.checkout-close-btn{
  width:28px; height:28px; padding:0; border-radius:50%;
  background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%);
  border:1px solid #e6d6d0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),0 1px 2px rgba(0,0,0,0.06);
  font-size:16px; font-weight:600; color:#333; cursor:pointer; line-height:1;
}
.checkout-close-btn:hover{ background:linear-gradient(180deg,#f9e9e3 0%,#f3d6cb 100%); }
.checkout-modal-body{
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.checkout-fields{ display:flex; flex-direction:column; gap:8px; }
.checkout-field{ display:grid; gap:4px; }
.checkout-field label{ font-size:12px; font-weight:600; color:var(--text-700); }
.checkout-input{
  padding:8px 10px;
  font-size:14px;
  border:1px solid #e6d6d0;
  border-radius:8px;
  background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),0 1px 2px rgba(0,0,0,0.06);
}
.checkout-input:focus{ outline:none; border-color:var(--peach-300); }
.checkout-summary-wrap{
  background:#fdf9f8;
  border-radius:10px;
  padding:10px;
  border:1px solid rgba(0,0,0,0.06);
}
.checkout-summary-label{ font-size:10px; font-weight:700; letter-spacing:0.05em; color:var(--text-700); text-transform:uppercase; margin:0 0 6px 0; }
.checkout-order-summary{ font-size:13px; white-space:pre-wrap; line-height:1.45; max-height:100px; overflow-y:auto; }
.checkout-warning{ font-size:12px; color:var(--red-500); }
.checkout-modal-footer{
  padding:12px;
  border-top:1px solid rgba(0,0,0,0.08);
  background:var(--cart-bg,#fcefea);
  display:flex;
  flex-direction:column;
  gap:6px;
}
.checkout-total-row{ display:flex; justify-content:space-between; align-items:center; }
.checkout-total-row span:first-child{ font-size:13px; color:var(--text-700); }
.checkout-total-value{ font-size:18px; font-weight:800; }
.checkout-submit-btn{ width:100%; margin-bottom:0; padding:12px; font-size:15px; }
.checkout-copy-btn{ width:100%; padding:6px; font-size:12px; color:var(--text-500); }

/* Вход для заказа — в том же стиле, что и оформление */
.auth-modal{
  background:var(--cart-bg,#fcefea);
  border:3px solid rgba(255,255,255,0.9);
  box-shadow:0 4px 16px rgba(255,120,120,0.2);
  max-width:360px;
}
.auth-modal-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:10px 12px;
  border-bottom:1px solid rgba(0,0,0,0.08);
  background:var(--cart-bg,#fcefea);
}
.auth-modal-title{ margin:0; font-size:16px; font-weight:700; }
.auth-close-btn{
  width:28px; height:28px; padding:0; border-radius:50%;
  background:linear-gradient(180deg,#fff6f2 0%,#fbe6de 100%);
  border:1px solid #e6d6d0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),0 1px 2px rgba(0,0,0,0.06);
  font-size:16px; font-weight:600; color:#333; cursor:pointer; line-height:1;
}
.auth-close-btn:hover{ background:linear-gradient(180deg,#f9e9e3 0%,#f3d6cb 100%); }
.auth-modal-body{ padding:12px; display:flex; flex-direction:column; gap:12px; }
.auth-step-text{ margin:0 0 10px 0; font-size:14px; color:var(--text-700); }
.auth-tg-widget{ min-height:48px; display:flex; flex-direction:column; align-items:center; gap:12px; }
.auth-hint{ margin:10px 0 0 0; font-size:12px; color:var(--text-500); }
.auth-field{ display:grid; gap:4px; }
.auth-field label{ font-size:12px; font-weight:600; color:var(--text-700); }
.auth-warning{ font-size:12px; color:var(--red-500); }
.auth-modal-footer{
  padding:12px;
  border-top:1px solid rgba(0,0,0,0.08);
  background:var(--cart-bg,#fcefea);
}
.auth-submit-btn{ width:100%; padding:12px; font-size:15px; }
