.cookie-manage-btn{
  position:fixed;right:20px;bottom:20px;z-index:9980;
  padding:12px 20px;
  background:#232220;color:#fff;
  font-family:'Open Sans',system-ui,sans-serif;
  font-size:13px;font-weight:600;
  border:none;border-radius:100px;
  box-shadow:0 6px 24px rgba(35,34,32,0.22);
  cursor:pointer;
  transition:background .2s ease,transform .2s ease;
}
.cookie-manage-btn:hover{background:#DB660D;transform:translateY(-1px)}
body.cookie-banner-visible .cookie-manage-btn{display:none}

.cookie-banner{
  position:fixed;left:0;right:0;bottom:0;z-index:9975;
  padding:20px;
  background:rgba(35,34,32,0.96);
  color:#fff;
  transform:translateY(100%);
  visibility:hidden;
  transition:transform .35s ease,visibility .35s ease;
}
.cookie-banner.is-visible{
  transform:translateY(0);
  visibility:visible;
}
.cookie-banner-inner{
  max-width:1200px;margin:0 auto;
  display:grid;grid-template-columns:1fr auto;gap:24px 32px;align-items:center;
}
.cookie-banner-text{
  margin:0;font-size:14px;line-height:1.65;color:rgba(255,255,255,0.9);
}
.cookie-banner-actions{
  display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;
}

.cookie-btn{
  font-family:'Open Sans',system-ui,sans-serif;
  font-size:13px;font-weight:600;
  padding:11px 20px;
  border-radius:100px;
  border:1px solid transparent;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.cookie-btn--primary{background:#DB660D;color:#fff;border-color:#DB660D}
.cookie-btn--primary:hover{background:#c45a0b;border-color:#c45a0b}
.cookie-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,0.35)}
.cookie-btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,0.08)}
.cookie-btn--dark{background:#fff;color:#232220;border-color:#fff}
.cookie-btn--dark:hover{background:#f5f3ef}

.cookie-modal{
  position:fixed;inset:0;z-index:10050;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
  opacity:0;visibility:hidden;
  transition:opacity .3s ease,visibility .3s ease;
}
.cookie-modal.is-open{opacity:1;visibility:visible}
.cookie-modal-backdrop{
  position:absolute;inset:0;
  background:rgba(35,34,32,0.55);
}
.cookie-modal-panel{
  position:relative;z-index:1;
  width:min(560px,100%);
  max-height:min(90vh,720px);
  overflow-y:auto;
  background:#fff;
  border-radius:20px;
  padding:32px 32px 28px;
  box-shadow:0 20px 60px rgba(35,34,32,0.2);
}
.cookie-modal-close{
  position:absolute;top:16px;right:16px;
  width:36px;height:36px;
  border:none;background:transparent;
  font-size:28px;line-height:1;color:#57534d;
  cursor:pointer;border-radius:50%;
  transition:background .2s ease,color .2s ease;
}
.cookie-modal-close:hover{background:#F5F3EF;color:#232220}
.cookie-modal-title{
  font-family:'Trirong',Georgia,serif;
  font-size:26px;font-weight:500;
  line-height:1.25;color:#232220;
  margin:0 32px 16px 0;
}
.cookie-modal-intro{
  margin:0 0 24px;
  font-size:14px;line-height:1.7;color:#57534d;
}
.cookie-category{
  padding:18px 0;
  border-top:1px solid rgba(35,34,32,0.1);
}
.cookie-category-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;margin-bottom:8px;
}
.cookie-category h3{
  margin:0;
  font-family:'Trirong',Georgia,serif;
  font-size:18px;font-weight:500;color:#232220;
}
.cookie-category p{
  margin:0;
  font-size:13px;line-height:1.6;color:#57534d;
}
.cookie-always{
  font-size:11px;font-weight:600;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:#DB660D;
  white-space:nowrap;
}
.cookie-toggle{
  position:relative;
  width:46px;height:26px;
  flex-shrink:0;
}
.cookie-toggle input{
  position:absolute;opacity:0;width:0;height:0;
}
.cookie-toggle span{
  position:absolute;inset:0;
  background:#d6d3cd;border-radius:100px;
  cursor:pointer;
  transition:background .2s ease;
}
.cookie-toggle span::before{
  content:"";
  position:absolute;left:3px;top:3px;
  width:20px;height:20px;
  background:#fff;border-radius:50%;
  box-shadow:0 1px 4px rgba(35,34,32,0.18);
  transition:transform .2s ease;
}
.cookie-toggle input:checked + span{background:#DB660D}
.cookie-toggle input:checked + span::before{transform:translateX(20px)}
.cookie-toggle input:disabled + span{
  opacity:.55;cursor:not-allowed;
}
.cookie-modal-actions{
  display:flex;flex-wrap:wrap;gap:10px;
  margin-top:24px;padding-top:8px;
}

@media(max-width:900px){
  .cookie-banner-inner{grid-template-columns:1fr}
  .cookie-banner-actions{justify-content:flex-start}
  .cookie-manage-btn{right:16px;bottom:16px;padding:11px 18px;font-size:12px}
  .cookie-modal-panel{padding:28px 22px 22px}
  .cookie-modal-actions .cookie-btn{flex:1 1 auto;justify-content:center}
}

@media(prefers-reduced-motion:reduce){
  .cookie-banner,.cookie-modal,.cookie-manage-btn{transition:none}
}
