/* ==========================================================================
   shop-summer.css — ЛЕТНИЙ сезонный оверлей поверх shop.css
   Подключается в index.html ПОСЛЕ shop.css (перебивает только цвета).
   Только стиль: акценты в палитре магазина + анимированное море + пальма.
   HTML-разметку и shop.js НЕ меняет.

   Палитра: #ffffff #bc2922 #797d86 #87634b #0c0606
   Фон (кремовый #f5f0e1) остаётся из базового shop.css — здесь не трогаем.
   ========================================================================== */

/* ------------------------------------------------------------------ */
/*  ДЕКОР: голубое море (2 волны + пена) + пальма — фиксировано за контентом */
/* ------------------------------------------------------------------ */
body::before, body::after{
  content:""; position:fixed; left:0; right:0; bottom:0;
  background-repeat:repeat-x; pointer-events:none;
}
body::before{            /* дальняя волна — светло-голубая, медленная */
  height:46vh; z-index:-3;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,50 C200,110 400,0 600,45 C800,90 1000,10 1200,50 L1200,120 L0,120 Z' fill='%238fd0e8' fill-opacity='0.35'/%3E%3C/svg%3E");
  background-size:1200px 100%;
  animation:sumWaveFar 24s linear infinite, sumBob 7s ease-in-out infinite;
}
body::after{             /* ближняя волна — морская синь + белая пена, быстрее */
  height:32vh; z-index:-2;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,60 C150,20 350,95 600,55 C850,15 1050,90 1200,55 L1200,120 L0,120 Z' fill='%232e93c4' fill-opacity='0.5'/%3E%3Cpath d='M0,60 C150,20 350,95 600,55 C850,15 1050,90 1200,55' fill='none' stroke='%23ffffff' stroke-opacity='0.6' stroke-width='3'/%3E%3C/svg%3E");
  background-size:1000px 100%;
  animation:sumWaveNear 14s linear infinite, sumBob 5.5s ease-in-out infinite;
}
html::before{            /* пальма — силуэт в правом нижнем углу, лёгкое покачивание */
  content:""; position:fixed; right:2px; bottom:0;
  width:min(42vh,250px); height:54vh; z-index:-1; pointer-events:none; opacity:.9;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 320' preserveAspectRatio='xMaxYMax meet'%3E%3Cpath d='M150,320 C138,250 130,192 133,152 C134,134 138,122 147,114 C151,122 149,134 148,152 C147,196 156,258 166,320 Z' fill='%2387634b'/%3E%3Cg fill='%232fa66d'%3E%3Cpath d='M146,114 C104,104 66,110 34,136 C70,120 108,121 145,121 Z'/%3E%3Cpath d='M146,114 C112,120 84,140 66,174 C96,144 122,128 146,122 Z'/%3E%3Cpath d='M146,112 C120,86 90,74 60,72 C92,80 122,94 146,116 Z'/%3E%3Cpath d='M146,110 C142,78 146,50 154,24 C160,52 160,86 152,114 Z'/%3E%3Cpath d='M148,112 C176,86 206,76 236,78 C204,84 174,96 150,116 Z'/%3E%3Cpath d='M148,116 C184,118 214,134 234,164 C206,138 176,126 150,122 Z'/%3E%3C/g%3E%3Cg fill='%2387634b'%3E%3Ccircle cx='140' cy='120' r='6'/%3E%3Ccircle cx='154' cy='122' r='5'/%3E%3Ccircle cx='146' cy='128' r='5'/%3E%3C/g%3E%3C/svg%3E") no-repeat right bottom;
  background-size:contain;
  transform-origin:bottom right;
  animation:sumSway 6s ease-in-out infinite;
}
@keyframes sumWaveFar{ from{background-position:0 100%} to{background-position:-1200px 100%} }
@keyframes sumWaveNear{ from{background-position:0 100%} to{background-position:-1000px 100%} }
@keyframes sumBob{ 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
@keyframes sumSway{ 0%,100%{transform:rotate(0deg)} 50%{transform:rotate(-2.5deg)} }
@media (prefers-reduced-motion: reduce){
  body::before, body::after, html::before{ animation:none }
}

/* ------------------------------------------------------------------ */
/*  ПАЛИТРА: перебиваем тёплые цвета shop.css на цвета магазина        */
/* ------------------------------------------------------------------ */
body{ color:#0c0606; }

.card{ color:#0c0606; box-shadow:0 0 20px rgba(188,41,34,.12); }
.card-title{ color:#bc2922; }
h2, h4{ color:#bc2922; }

.btn-primary{ background:linear-gradient(to right,#bc2922,#87634b); }
.btn-success{ background:linear-gradient(to right,#bc2922,#87634b); }
.btn-category{ background:linear-gradient(45deg,#87634b,#bc2922); }
.btn-category:hover{ box-shadow:0 0 20px rgba(188,41,34,.4); }
.back-btn{ background:linear-gradient(45deg,#87634b,#bc2922); }
.remove-btn{ background:linear-gradient(45deg,#bc2922,#87634b); }

.cart-counter{ background:#bc2922; }
.form-select{ color:#0c0606; border-color:#797d86; }
.shadow-hover:hover{ box-shadow:0 0 30px rgba(188,41,34,.3), 0 0 10px rgba(121,125,134,.4); }
.cart-item{ border-color:#797d86; }

.loading::after{ border-color:#bc2922; border-top-color:transparent; }
.logo-glow{ filter:drop-shadow(0 0 10px #bc2922); }
@keyframes glow{
  from{ filter:drop-shadow(0 0 10px #bc2922); }
  to{ filter:drop-shadow(0 0 20px #bc2922) drop-shadow(0 0 30px #bc2922); }
}

/* сетка товаров */
.product-image-container{ border-color:#797d86; }
.product-grid-card:hover .product-image-container{ border-color:#bc2922; box-shadow:0 8px 25px rgba(188,41,34,.4); }
#productModal .modal-title, #cartModal .modal-title, #confirmOrderModal .modal-title{ color:#0c0606; }
.product-grid-title{ color:#0c0606; }
.product-grid-price{ color:#87634b; }

/* модалки */
#cartModal .modal-content, #confirmOrderModal .modal-content{ color:#0c0606; }
#cartModal .modal-header, #confirmOrderModal .modal-header{ border-bottom-color:#797d86; }
#cartModal .modal-footer, #confirmOrderModal .modal-footer{ border-top-color:#797d86; }
#confirmOrderModal .modal-content{ border-color:#87634b; }
#productModal .modal-content{ border-color:#797d86; }
#productModalTitle, #productModalDescription{ color:#0c0606; }
#productModalPrice{ color:#bc2922; }

/* кэшбэк — угол + попап */
.cashback-corner{ background:linear-gradient(45deg,#87634b,#bc2922); box-shadow:0 4px 15px rgba(188,41,34,.4); }
.cashback-corner:hover{ box-shadow:0 6px 20px rgba(188,41,34,.6); }
.cashback-popup{ box-shadow:0 8px 25px rgba(121,125,134,.4); border-color:#797d86; }

/* кэшбэк — секция в корзине */
.cashback-section{ border-color:rgba(188,41,34,.3); }
.cashback-section::before{ background:linear-gradient(90deg,#bc2922,#87634b,#0c0606); }
.cashback-title{ color:#bc2922; }
.cashback-available{ color:#0c0606; }
.cashback-input-field{ color:#0c0606; border-color:rgba(188,41,34,.5); }
.cashback-input-field:focus{ border-color:#bc2922; box-shadow:0 0 15px rgba(188,41,34,.3); }
.cashback-input-field::placeholder{ color:rgba(12,6,6,.55); }
.cashback-apply-btn{ background:linear-gradient(45deg,#87634b,#bc2922); }
.cashback-apply-btn:hover{ box-shadow:0 8px 25px rgba(188,41,34,.4); background:linear-gradient(45deg,#6f4f3b,#d33427); }
.cashback-hint{ background:rgba(188,41,34,.1); border-color:rgba(188,41,34,.3); color:rgba(12,6,6,.8); }
.cashback-used-info{ background:linear-gradient(135deg,rgba(188,41,34,.1),rgba(121,125,134,.12)); border-color:rgba(188,41,34,.3); }
.cashback-used-amount{ color:#bc2922; }
.final-total-display{ background:linear-gradient(135deg,rgba(121,125,134,.12),rgba(135,99,75,.12)); border-color:rgba(121,125,134,.35); }
.final-total-text{ color:#0c0606; }

/* уведомление */
.custom-notification{ background:linear-gradient(45deg,#87634b,#bc2922); box-shadow:0 8px 25px rgba(188,41,34,.4); }
@keyframes cashbackGlow{
  from{ box-shadow:0 0 20px rgba(188,41,34,.2); }
  to{ box-shadow:0 0 30px rgba(188,41,34,.4), 0 0 40px rgba(121,125,134,.2); }
}

/* инлайн-цвета из index.html (попап кэшбэка) — перебиваем через !important */
.cashback-popup > div:first-child{ color:#bc2922 !important; }
#popupFullBalance{ color:#87634b !important; }
#popupAvailableBalance{ color:#0c0606 !important; }
