/* ===================================================================
   FLOWTRIG — cookie.css   (GDPR consent — centered modal)
   Uses global tokens + tokens.css gradients.
   =================================================================== */
.ck-overlay{ position:fixed; left:0; right:0; bottom:0; z-index:1100; display:flex; justify-content:center; padding:16px calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left)); pointer-events:none; }
.ck-scrim{ display:none; }
.ck-card{ pointer-events:auto; position:relative; z-index:2; width:min(540px,100%); border:1px solid var(--line); border-radius:18px; background:color-mix(in oklab, var(--surface) 96%, transparent); backdrop-filter:blur(14px) saturate(150%); -webkit-backdrop-filter:blur(14px) saturate(150%);
  box-shadow:0 26px 60px -22px rgba(0,0,0,.55); padding:18px 20px; transform:translateY(150%); opacity:1; transition:transform .5s cubic-bezier(.2,.9,.3,1.1); }
.ck-overlay.show .ck-card{ transform:none; }
.ck-ico{ width:40px; height:40px; border-radius:11px; background:var(--green-soft); border:1px solid rgba(43,232,129,.2); color:var(--neon); display:flex; align-items:center; justify-content:center; margin-bottom:12px; }
.ck-ico svg{ width:20px; height:20px; }
.ck-card h3{ font-family:var(--font-d); font-weight:600; font-size:17px; letter-spacing:-.02em; }
.ck-card p{ font-size:13px; line-height:1.6; color:var(--tx-soft); margin-top:8px; }
.ck-card p a{ color:var(--neon); text-decoration:underline; }
.ck-actions{ display:flex; gap:9px; margin-top:18px; flex-wrap:wrap; }
.ck-actions .btn{ flex:1; min-width:120px; display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:11px 14px; border-radius:11px; font-size:13.5px; font-weight:600; cursor:pointer; border:1px solid transparent; }
.ck-accept{ background:var(--g-btn, linear-gradient(135deg,#3DF294,#1FA855)); color:#fff; box-shadow:0 8px 20px -10px rgba(43,232,129,.7); }
.ck-reject{ background:var(--surface-2); border-color:var(--line); color:var(--tx); }
.ck-reject:hover{ border-color:var(--line-glow); }
.ck-manage{ flex:0 0 100%; background:transparent; color:var(--tx-mute); font-size:12px; padding:4px; }
.ck-manage:hover{ color:var(--tx); }
/* preferences */
.ck-prefs{ display:none; margin-top:14px; border-top:1px solid var(--line-2); padding-top:14px; flex-direction:column; gap:11px; }
.ck-overlay.expanded .ck-prefs{ display:flex; }
.ck-pref{ display:flex; align-items:flex-start; gap:11px; }
.ck-pref .pt{ flex:1; }
.ck-pref .pt b{ font-size:13px; font-weight:600; }
.ck-pref .pt span{ display:block; font-size:11.5px; color:var(--tx-mute); margin-top:2px; line-height:1.4; }
.ck-tgl{ width:40px; height:23px; border-radius:999px; background:var(--surface-3); position:relative; flex:0 0 40px; cursor:pointer; transition:background .25s; margin-top:2px; }
.ck-tgl::after{ content:""; position:absolute; top:3px; left:3px; width:17px; height:17px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.3); transition:left .25s; }
.ck-tgl.on{ background:var(--g-btn, linear-gradient(135deg,#3DF294,#1FA855)); }
.ck-tgl.on::after{ left:20px; }
.ck-tgl.locked{ opacity:.55; cursor:not-allowed; }
@media(prefers-reduced-motion: reduce){ .ck-overlay, .ck-card{ transition:none; } }
