.clc[hidden], .clc [hidden] { display: none !important; }
.clc { position: fixed; inset: 0; z-index: 999999; color: #172019; font: 16px/1.5 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.clc__backdrop { position: absolute; inset: 0; background: rgb(0 0 0 / 55%); }
.clc__dialog { position: absolute; right: 24px; bottom: 24px; width: min(620px, calc(100% - 32px)); max-height: calc(100vh - 48px); overflow: auto; padding: 28px; border-radius: 16px; background: #fff; box-shadow: 0 20px 70px rgb(0 0 0 / 30%); }
.clc__dialog h2 { margin: 0 0 12px; font-size: 1.5rem; }
.clc__preferences { margin: 20px 0; border-block: 1px solid #dce2dd; }
.clc__preferences label { display: flex; gap: 12px; padding: 14px 0; cursor: pointer; }
.clc__preferences label + label { border-top: 1px solid #dce2dd; }
.clc__preferences input { width: 20px; height: 20px; margin-top: 2px; }
.clc__preferences span, .clc__preferences small { display: block; }
.clc__preferences small { margin-top: 3px; color: #4f5d53; }
.clc__links { margin: 18px 0; font-size: .9rem; }
.clc__links a { color: #245f3e; }
.clc__actions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.clc__actions button, .clc-open, .clc-inline-open { border: 2px solid #245f3e; border-radius: 8px; padding: 11px 14px; background: #fff; color: #17452c; font: inherit; font-weight: 650; cursor: pointer; }
.clc__actions button:focus-visible, .clc-open:focus-visible, .clc-inline-open:focus-visible { outline: 3px solid #f0aa2b; outline-offset: 2px; }
.clc__actions .clc__primary { background: #245f3e; color: #fff; }
.clc__actions [data-clc="reject"] { background: #245f3e; color: #fff; }
.clc-open { position: fixed; left: 14px; bottom: 14px; z-index: 99990; display: grid; place-items: center; width: 48px; height: 48px; min-width: 48px; min-height: 48px; padding: 0; border: 2px solid #fff; border-radius: 12px; background: #5f00df; color: #fff; box-shadow: 0 4px 18px rgb(0 0 0 / 25%); }
.clc-open svg { display: block; width: 36px; height: 40px; }
.clc-inline-open { padding: 0; border: 0; background: none; text-decoration: underline; font-weight: inherit; }
.craftio-legal { box-sizing: border-box; width: min(100%, 1000px); margin: 0 auto; padding: 32px 40px 64px; overflow-wrap: break-word; line-height: 1.7; text-align: left; }
.craftio-legal h1 { margin: 0 0 28px; line-height: 1.25; }
.craftio-legal h2 { margin: 36px 0 12px; line-height: 1.35; }
.craftio-legal h3 { margin: 24px 0 10px; line-height: 1.4; }
.craftio-legal p { margin: 0 0 18px; }
.craftio-legal a { text-decoration: underline; text-underline-offset: 2px; }
.clc-lock { overflow: hidden; }
@media (max-width: 640px) {
  .clc__dialog { right: 16px; bottom: 16px; padding: 22px; max-height: calc(100vh - 32px); }
  .clc__actions { grid-template-columns: 1fr; }
  .craftio-legal { padding: 24px 20px 48px; }
  .craftio-legal h2 { margin-top: 30px; }
}
@media (prefers-reduced-motion: reduce) { .clc * { scroll-behavior: auto !important; } }
