/* ════════════════════════════════════════════
   Wishmash — Cookie Consent Banner
   Версия: 2026.09
════════════════════════════════════════════ */

.wm-cookie-banner {
  position: fixed; left: 50%; bottom: 90px; z-index: 10000;
  width: min(1180px, calc(100% - 40px));
  transform: translateX(-50%);
  background: rgba(255,253,249,.97);
  border: 1px solid #C4B8A8;
  border-radius: 10px;
  box-shadow: 0 14px 48px rgba(45,35,24,.20), 0 3px 10px rgba(45,35,24,.08);
  font-family: 'Inter', system-ui, sans-serif;
  display: none;
  transition: opacity .3s;
}
.wm-cookie-banner.show { display: block; }

.wm-cookie-inner {
  padding: 18px 22px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 28px;
  align-items: center;
}
.wm-cookie-title {
  margin: 0 0 6px;
  font-family: 'Lora', Georgia, serif;
  font-size: 1.1rem; line-height: 1.3; font-weight: 500;
  color: #2C2C2C;
}
.wm-cookie-copy {
  margin: 0;
  color: #7A6555; font-size: .78rem; line-height: 1.55;
}
.wm-cookie-copy a { color: #8C6420; text-decoration: none; border-bottom: 1px solid rgba(140,100,32,.35); }
.wm-cookie-actions { display: flex; gap: 8px; align-items: stretch; white-space: nowrap; }
.wm-cookie-btn:not(.settings) { flex: 1; text-align: center; }

.wm-cookie-btn {
  min-height: 42px; padding: 0 17px;
  border: 1.5px solid #C4B8A8; border-radius: 6px;
  background: #fff; color: #7A6555;
  font: 500 .72rem/1 'Inter', system-ui, sans-serif;
  letter-spacing: .02em; cursor: pointer;
  transition: background .2s, border-color .2s, color .2s;
}
.wm-cookie-btn:hover { background: #F1EAE0; border-color: #8C6420; color: #8C6420; }
.wm-cookie-btn.primary { background: #F0E4CC; border-color: #8C6420; color: #8C6420; }
.wm-cookie-btn.primary:hover { background: #F1EAE0; }
.wm-cookie-btn.settings { background: transparent; border-color: transparent; color: #8C6420; padding-inline: 10px; }
.wm-cookie-btn.settings:hover { background: transparent; border-color: transparent; text-decoration: underline; }

/* Settings overlay */
.wm-cookie-overlay {
  position: fixed; inset: 0; z-index: 510;
  display: none; place-items: center;
  padding: 22px;
  background: rgba(34,26,17,.42);
}
.wm-cookie-overlay.open { display: grid; }
.wm-cookie-settings {
  width: min(540px,100%);
  max-height: min(720px, calc(100vh - 44px));
  overflow: auto; padding: 28px;
  border-radius: 10px; border: 1px solid #DDD4C6;
  background: #fff;
  box-shadow: 0 18px 65px rgba(34,26,17,.18);
}
.wm-cookie-settings-head {
  display: flex; justify-content: space-between;
  gap: 20px; align-items: flex-start; margin-bottom: 20px;
}
.wm-cookie-settings h2 {
  margin: 0 0 7px;
  font-family: 'Lora', Georgia, serif;
  font-size: 1.3rem; font-weight: 400; color: #2C2C2C;
}
.wm-cookie-settings-intro { margin: 0; color: #7A6555; font-size: .78rem; line-height: 1.55; }
.wm-cookie-close { border: 0; background: none; color: #7A6555; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.wm-cookie-category { padding: 17px 0; border-top: 1px solid #DDD4C6; font-size: .78rem; color: #7A6555; line-height: 1.5; }
.wm-cookie-category-top { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin-bottom: 6px; }
.wm-cookie-category-title { font-size: .84rem; font-weight: 600; color: #2C2C2C; }
.wm-cookie-required { color: #8C6420; font-size: .69rem; font-weight: 600; }
.wm-cookie-text-link { display: inline-block; margin-top: 14px; color: #8C6420; font-size: .75rem; border-bottom: 1px solid rgba(140,100,32,.35); text-decoration: none; }
.wm-cookie-settings-actions { display: flex; gap: 10px; margin-top: 20px; flex-wrap: wrap; }

/* Toggle switch */
.wm-cookie-switch { position: relative; width: 42px; height: 23px; flex: 0 0 auto; }
.wm-cookie-switch input { opacity: 0; width: 0; height: 0; position: absolute; }
.wm-cookie-slider {
  position: absolute; inset: 0;
  background: #DDD4C6; border-radius: 23px;
  cursor: pointer; transition: background .2s;
}
.wm-cookie-slider:before {
  content: ''; position: absolute;
  width: 17px; height: 17px; border-radius: 50%;
  background: #fff; left: 3px; top: 3px;
  transition: transform .2s;
}
.wm-cookie-switch input:checked + .wm-cookie-slider { background: #8C6420; }
.wm-cookie-switch input:checked + .wm-cookie-slider:before { transform: translateX(19px); }

/* На мобилен и таблет sticky bar е пълна ширина — банерът трябва да е над него */
@media (max-width: 1023px) {
  .wm-cookie-inner { grid-template-columns: 1fr; gap: 14px; }
  .wm-cookie-actions { flex-wrap: wrap; }
  .wm-cookie-banner { bottom: 86px; }
}
/* На десктоп (≥1024px) sticky bar е вдясно, малък — банерът може по-ниско */
@media (min-width: 1024px) {
  .wm-cookie-banner { bottom: 32px; }
}
