/* ============================================================
   cookies.css — Barra de consentimento RGPD
   ============================================================ */

.cookie-bar{
  position:fixed; left:0; right:0; bottom:0; z-index:200;
  background:#fff; border-top:3px solid var(--green);
  box-shadow:0 -8px 30px rgba(0,0,0,.16);
  padding:18px var(--gutter) calc(18px + env(safe-area-inset-bottom));
  transform:translateY(110%); transition:transform .35s ease;
}
.cookie-bar.show{ transform:translateY(0); }
.cookie-bar__inner{
  max-width:var(--maxw); margin:0 auto;
  display:flex; flex-direction:column; gap:14px;
}
.cookie-bar__text{ font-size:.9rem; color:var(--ink); line-height:1.55; margin:0; }
.cookie-bar__text strong{ color:var(--green-deep); }
.cookie-bar__text a{ color:var(--green); }
.cookie-bar__actions{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; }

.ck-btn{
  font-family:var(--sans); font-weight:700; font-size:.9rem;
  padding:11px 18px; border-radius:100px; cursor:pointer; border:2px solid transparent;
  min-height:44px;
}
.ck-btn--accept{ background:var(--green); color:#fff; }
.ck-btn--accept:hover{ background:var(--green-deep); }
.ck-btn--need{ background:#F0EFE8; color:var(--green-deep); border-color:#DDDBD0; }
.ck-btn--need:hover{ background:#E6E5DC; }
.ck-btn--link{ background:none; border:none; color:var(--green); text-decoration:underline; font-weight:600; min-height:auto; padding:10px 4px; }

/* Modal de preferências */
.ck-modal{
  position:fixed; inset:0; z-index:210; display:none;
  align-items:center; justify-content:center; padding:20px;
  background:rgba(12,24,14,.55); backdrop-filter:blur(2px);
}
.ck-modal.open{ display:flex; }
.ck-modal__card{
  background:#fff; border-radius:8px; max-width:520px; width:100%;
  max-height:88vh; overflow:auto; padding:26px;
  box-shadow:0 24px 60px rgba(0,0,0,.3);
}
.ck-modal__card h3{ font-family:var(--serif); color:var(--green-deep); margin:0 0 6px; font-size:1.4rem; }
.ck-modal__card > p{ font-size:.9rem; color:var(--ink-soft); margin:0 0 18px; }
.ck-cat{
  display:flex; gap:14px; justify-content:space-between; align-items:flex-start;
  padding:16px 0; border-top:1px solid #ECEAE0;
}
.ck-cat__info h4{ margin:0 0 4px; font-size:.98rem; color:var(--green-deep); font-family:var(--sans); }
.ck-cat__info p{ margin:0; font-size:.84rem; color:var(--ink-soft); line-height:1.5; }
.ck-cat__fixed{ font-size:.78rem; color:var(--gold); font-weight:700; white-space:nowrap; padding-top:2px; }

/* Toggle switch */
.ck-switch{ position:relative; width:46px; height:26px; flex:none; }
.ck-switch input{ opacity:0; width:0; height:0; }
.ck-switch .track{
  position:absolute; inset:0; background:#CFCEC4; border-radius:100px; transition:.2s; cursor:pointer;
}
.ck-switch .track::before{
  content:""; position:absolute; width:20px; height:20px; left:3px; top:3px;
  background:#fff; border-radius:50%; transition:.2s;
}
.ck-switch input:checked + .track{ background:var(--green); }
.ck-switch input:checked + .track::before{ transform:translateX(20px); }

.ck-modal__actions{ display:flex; gap:10px; margin-top:22px; flex-wrap:wrap; }

@media (min-width:760px){
  .cookie-bar__inner{ flex-direction:row; align-items:center; justify-content:space-between; }
  .cookie-bar__text{ flex:1; }
  .cookie-bar__actions{ flex:none; }
}
