/* Buinma Cookie Consent – responsive + palette */
#bcc-bar, #bcc-panel, #bcc-overlay {
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.45;
  color: var(--bcc-text, #111);
  z-index: 999999;
}
#bcc-overlay[hidden] { display:none; }
#bcc-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.45); }

#bcc-bar {
  position: fixed; left:0; right:0; bottom:0;
  background: var(--bcc-bg, #fff);
  border-top: 1px solid var(--bcc-border, #e5e7eb);
  box-shadow: 0 -10px 30px rgba(0,0,0,0.08);
  padding: 16px;
}
#bcc-bar.as-popup {
  bottom:auto; left:50%; top:50%; right:auto;
  transform: translate(-50%, -50%);
  max-width: 680px; width: calc(100% - 32px);
  border: 1px solid var(--bcc-border, #e5e7eb);
  border-radius: 14px;
  box-shadow: 0 25px 60px rgba(0,0,0,0.25);
}
#bcc-bar .bcc-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center;
}
#bcc-bar h3 { margin: 0 0 6px; font-size: 18px; }
#bcc-bar p { margin: 0; font-size: 14px; color: var(--bcc-muted, #444); }
.bcc-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }

.bcc-btn { appearance:none; border:0; padding:10px 14px; border-radius:999px; cursor:pointer; font-weight:600; }
.bcc-btn.primary { background: var(--bcc-btn-primary-bg, #111); color: var(--bcc-btn-primary-text, #fff); }
.bcc-btn.secondary { background: var(--bcc-btn-secondary-bg, #f3f4f6); color: var(--bcc-btn-secondary-text, #111); }
.bcc-btn.ghost { background: transparent; color: var(--bcc-text, #111); text-decoration: underline; }

#bcc-panel[hidden] { display:none; }
#bcc-panel { position: fixed; inset:0; background: rgba(0,0,0,0.45); display:grid; place-items:center; padding:20px; }
.bcc-modal { background: var(--bcc-bg, #fff); border-radius:14px; max-width:720px; width:100%; padding:20px 20px 16px; box-shadow:0 25px 60px rgba(0,0,0,0.25); color: var(--bcc-text, #111); }
.bcc-modal header { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.bcc-modal header h3 { margin:0; font-size:20px; }
.bcc-modal .bcc-body { max-height:60vh; overflow:auto; padding-right:6px; }
.bcc-cat { padding:12px; border:1px solid var(--bcc-border, #e5e7eb); border-radius:12px; margin-bottom:10px; }
.bcc-cat h4 { margin:0 0 6px; font-size:16px; }
.bcc-footer { display:flex; gap:8px; justify-content:flex-end; padding-top:8px; border-top:1px solid #f3f4f6; }

.bcc-switch { position:relative; display:inline-block; width:48px; height:28px; vertical-align:middle; }
.bcc-switch input { display:none; }
.bcc-slider { position:absolute; cursor:pointer; top:0; left:0; right:0; bottom:0; background:#e5e7eb; transition:.2s; border-radius:999px; }
.bcc-slider:before { position:absolute; content:""; height:22px; width:22px; left:3px; top:3px; background:#fff; transition:.2s; border-radius:50%; box-shadow:0 1px 3px rgba(0,0,0,0.2); }
.bcc-switch input:checked + .bcc-slider { background: var(--bcc-primary, #111); }
.bcc-switch input:checked + .bcc-slider:before { transform: translateX(20px); }

.bcc-manage-btn { border:0; background:transparent; color:var(--bcc-text,#111); text-decoration: underline; cursor:pointer; }

@media (max-width: 720px) {
  #bcc-bar { padding:12px; }
  #bcc-bar .bcc-inner { grid-template-columns:1fr; gap:12px; }
  #bcc-bar h3 { font-size:16px; }
  #bcc-bar p { font-size:13px; }
  .bcc-actions { justify-content: stretch; }
  .bcc-btn { width:100%; padding:12px 14px; }
  .bcc-btn.ghost { text-align:center; text-decoration:none; border:1px solid var(--bcc-border,#e5e7eb); }
  .bcc-modal { max-width:96vw; padding:16px; }
  .bcc-cat { padding:10px; }
  .bcc-footer { flex-direction:column; }
  .bcc-footer .bcc-btn { width:100%; }
}
