/* ===== Cookie lišta a nastavenia súhlasu (GDPR / ePrivacy) =====
   Samostatné štýly – používajú sa na landing page aj na stránkach s base.html,
   preto tu farby neberieme z CSS premenných landing page. */
.svo-cc{
  --cc-teal-900:#006157;
  --cc-teal-700:#00a896;
  --cc-gold-500:#cdae6f;
  --cc-gold-700:#936124;
  --cc-cream:#faf8f2;
  --cc-ink:#16221f;
  --cc-muted:#5c6d69;
  --cc-line:#e7e2d4;
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  color:var(--cc-ink);
  line-height:1.6;
}
/* Atribut hidden musi prebit aj display z tried nizsie (napr. .svo-cc-overlay{display:flex}),
   inak by prekryv ostal na obrazovke a blokoval kliknutia na listu. */
.svo-cc[hidden],
.svo-cc [hidden]{display:none !important;}

/* ---- lišta ---- */
.svo-cc-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:2000;
  background:var(--cc-cream);
  border-top:3px solid var(--cc-gold-500);
  box-shadow:0 -10px 40px rgba(14,79,73,0.18);
  padding:22px 24px;
  animation:svo-cc-up .35s ease;
}
@keyframes svo-cc-up{from{transform:translateY(100%);}to{transform:translateY(0);}}
.svo-cc-bar-inner{
  max-width:1180px;margin:0 auto;
  display:flex;align-items:center;gap:28px;flex-wrap:wrap;
}
.svo-cc-text{flex:1 1 460px;min-width:280px;}
.svo-cc-text h2{
  font-family:'Poppins','Inter',sans-serif;font-weight:700;font-size:17px;
  color:var(--cc-teal-900);margin:0 0 6px;line-height:1.3;
}
.svo-cc-text p{font-size:14px;color:var(--cc-muted);margin:0;}
.svo-cc-text a{color:var(--cc-teal-700);text-decoration:underline;}
.svo-cc-text a:hover{color:var(--cc-gold-700);}
.svo-cc-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}

/* ---- tlačidlá (rovnaká váha pre prijatie aj odmietnutie) ---- */
.svo-cc-btn{
  font-family:'Poppins','Inter',sans-serif;font-weight:600;font-size:14.5px;
  padding:12px 24px;border-radius:10px;cursor:pointer;border:1.5px solid transparent;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
  white-space:nowrap;line-height:1.2;
}
.svo-cc-btn:focus-visible{outline:3px solid var(--cc-gold-500);outline-offset:2px;}
.svo-cc-btn-accept{
  background:linear-gradient(135deg,var(--cc-gold-500),var(--cc-gold-700));
  color:#fff;box-shadow:0 8px 20px rgba(147,97,36,0.28);
}
.svo-cc-btn-accept:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(147,97,36,0.36);}
.svo-cc-btn-reject{background:#fff;border-color:var(--cc-teal-700);color:var(--cc-teal-900);}
.svo-cc-btn-reject:hover{background:var(--cc-teal-900);color:#fff;border-color:var(--cc-teal-900);}
.svo-cc-btn-settings{background:transparent;border-color:var(--cc-line);color:var(--cc-muted);}
.svo-cc-btn-settings:hover{border-color:var(--cc-gold-500);color:var(--cc-teal-900);}

/* ---- modálne okno s nastaveniami ---- */
.svo-cc-overlay{
  position:fixed;inset:0;z-index:2100;
  background:rgba(6,32,29,0.55);
  display:flex;align-items:center;justify-content:center;padding:20px;
  overflow-y:auto;
}
.svo-cc-modal{
  background:#fff;border-radius:16px;max-width:620px;width:100%;
  box-shadow:0 24px 60px rgba(14,79,73,0.3);
  max-height:calc(100vh - 40px);display:flex;flex-direction:column;
  animation:svo-cc-pop .25s ease;
}
@keyframes svo-cc-pop{from{opacity:0;transform:translateY(14px) scale(.98);}to{opacity:1;transform:none;}}
.svo-cc-modal-head{
  padding:24px 28px 18px;border-bottom:1px solid var(--cc-line);
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
}
.svo-cc-modal-head h2{
  font-family:'Poppins','Inter',sans-serif;font-weight:700;font-size:20px;
  color:var(--cc-teal-900);margin:0 0 6px;
}
.svo-cc-modal-head p{font-size:13.5px;color:var(--cc-muted);margin:0;}
.svo-cc-close{
  background:none;border:none;cursor:pointer;color:var(--cc-muted);
  font-size:26px;line-height:1;padding:0 4px;flex-shrink:0;
}
.svo-cc-close:hover{color:var(--cc-teal-900);}
.svo-cc-modal-body{padding:8px 28px 4px;overflow-y:auto;}
.svo-cc-cat{padding:18px 0;border-bottom:1px solid var(--cc-line);}
.svo-cc-cat:last-child{border-bottom:none;}
.svo-cc-cat-head{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.svo-cc-cat-head h3{
  font-family:'Poppins','Inter',sans-serif;font-weight:600;font-size:15.5px;
  color:var(--cc-teal-900);margin:0;
}
.svo-cc-cat p{font-size:13.5px;color:var(--cc-muted);margin:8px 0 0;}
.svo-cc-always{
  font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  color:var(--cc-teal-700);background:rgba(0,168,150,0.12);
  padding:5px 12px;border-radius:999px;white-space:nowrap;
}
/* prepínač */
.svo-cc-switch{position:relative;display:inline-block;width:50px;height:28px;flex-shrink:0;}
.svo-cc-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;}
.svo-cc-slider{
  position:absolute;inset:0;background:#c9d3d0;border-radius:999px;
  transition:background .2s ease;pointer-events:none;
}
.svo-cc-slider::before{
  content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;
  background:#fff;border-radius:50%;transition:transform .2s ease;
  box-shadow:0 1px 3px rgba(0,0,0,.25);
}
.svo-cc-switch input:checked + .svo-cc-slider{background:var(--cc-teal-700);}
.svo-cc-switch input:checked + .svo-cc-slider::before{transform:translateX(22px);}
.svo-cc-switch input:focus-visible + .svo-cc-slider{outline:3px solid var(--cc-gold-500);outline-offset:2px;}
.svo-cc-modal-foot{
  padding:18px 28px 24px;border-top:1px solid var(--cc-line);
  display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;
}
.svo-cc-modal-foot .svo-cc-btn{flex:1 1 auto;}

/* ---- plávajúce tlačidlo na opätovné otvorenie nastavení ---- */
.svo-cc-reopen{
  position:fixed;left:18px;bottom:18px;z-index:1900;
  width:44px;height:44px;border-radius:50%;
  background:var(--cc-teal-900);color:#fff;border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 22px rgba(0,97,87,0.35);
  transition:transform .18s ease, background .18s ease;
}
.svo-cc-reopen:hover{transform:translateY(-2px);background:var(--cc-teal-700);}
.svo-cc-reopen:focus-visible{outline:3px solid var(--cc-gold-500);outline-offset:2px;}

@media (max-width:820px){
  .svo-cc-bar{padding:18px 18px calc(18px + env(safe-area-inset-bottom));}
  .svo-cc-bar-inner{gap:18px;}
  .svo-cc-actions{width:100%;}
  .svo-cc-actions .svo-cc-btn{flex:1 1 140px;}
  .svo-cc-reopen{width:40px;height:40px;left:12px;bottom:12px;}
  .svo-cc-modal-foot{flex-direction:column-reverse;}
  .svo-cc-modal-foot .svo-cc-btn{width:100%;}
}
@media (prefers-reduced-motion:reduce){
  .svo-cc-bar,.svo-cc-modal{animation:none;}
  .svo-cc-btn:hover,.svo-cc-reopen:hover{transform:none;}
}
