/* ============================================================
   byekey-gop · Cookie 提示（1.3.15）
   结构/尺寸 1:1 参照 gateopenerfactory.com 的 cookie consent：
   右下角浮动白卡（max-width 620）+ 三键（Accept All / Reject Optional / Cookie Settings）
   + Cookie Preferences 弹窗（三档分类：Necessary 常开 / Analytics / Marketing 开关）。
   差异只有两处：① 强调色用本站主题蓝，不用它的红；
   ② 主按钮底色用 #0062cc 而不是 #007bff —— 白字压 #007bff 实测只有 3.98:1，
      13px/700 按 WCAG AA（4.5:1）不过；#0062cc 是 5.80，悬停 #0056b3 是 7.04。
   其余读数：标题 #111827/白 17.74、正文 #4b5563/白 7.56、副标题 #6b7280/白 4.83、
   Always Active 徽标 #15803D/#DCFCE7 4.57、幽灵按钮 #374151/白 10.31。
   z-index：主栏 200、移动抽屉 1000 → 面板 1200、弹窗 1300。
   ============================================================ */

.bk-ck-hidden{display:none!important}

/* ---------- 底部横幅 ---------- */
.bk-ck-banner{position:fixed;bottom:24px;right:24px;left:24px;max-width:620px;margin-left:auto;
  z-index:1200;background:#fff;color:#111827;border:1px solid #E5E7EB;border-top:3px solid var(--brand,#007bff);
  border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.12);padding:20px 24px;
  animation:bkCkUp .4s cubic-bezier(.16,1,.3,1) both}
.bk-ck-banner.bk-ck-left{margin-left:0;margin-right:auto}
.bk-ck-banner.bk-ck-full{max-width:none;left:12px;right:12px;bottom:12px;border-radius:12px}
@keyframes bkCkUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

.bk-ck-inner{display:flex;flex-direction:column;gap:16px}
.bk-ck-title{font-size:16px;font-weight:700;color:#111827;margin:0 0 6px;display:flex;align-items:center;gap:8px;line-height:1.35}
.bk-ck-title svg{flex:none}
.bk-ck-desc{font-size:13.5px;line-height:1.55;color:#4b5563;margin:0}
.bk-ck-link{color:#0062cc;font-weight:600;text-decoration:underline;text-underline-offset:3px;transition:color .2s}
.bk-ck-link:hover{color:#0056b3}
.bk-ck-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

.bk-ck-btn{font-family:inherit;font-size:13px;font-weight:700;line-height:1.2;padding:9px 18px;border-radius:8px;
  cursor:pointer;border:1px solid transparent;transition:background-color .2s,color .2s,border-color .2s}
.bk-ck-btn:focus-visible{outline:2px solid #0062cc;outline-offset:2px}
/* 三种角色：实心蓝 / 描边 / 文字链。横幅和弹窗都用这三个，只是组合不同
   （横幅：Accept=实心、Reject=描边、Settings=文字；弹窗：Save=实心、Accept All=描边） */
.bk-ck-accept,.bk-ck-solid{background:#0062cc;color:#fff}
.bk-ck-accept:hover,.bk-ck-solid:hover{background:#0056b3;color:#fff}
.bk-ck-reject,.bk-ck-ghost{background:#fff;color:#374151;border-color:#D1D5DB}
.bk-ck-reject:hover,.bk-ck-ghost:hover{background:#F3F4F6;border-color:#9CA3AF;color:#111827}
.bk-ck-settings,.bk-ck-plain{background:transparent;color:#4b5563;padding-inline:8px;text-decoration:underline;text-underline-offset:3px}
.bk-ck-settings:hover,.bk-ck-plain:hover{color:#111827}
.bk-ck-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}

/* ---------- 偏好弹窗 ---------- */
.bk-ck-overlay{position:fixed;inset:0;z-index:1300;background:rgba(0,0,0,.45);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;padding:20px;animation:bkCkFade .25s ease both}
@keyframes bkCkFade{from{opacity:0}to{opacity:1}}
.bk-ck-modal{background:#fff;color:#111827;border:1px solid #E5E7EB;border-top:4px solid var(--brand,#007bff);
  border-radius:16px;width:100%;max-width:580px;max-height:90vh;display:flex;flex-direction:column;
  box-shadow:0 24px 48px rgba(0,0,0,.18);overflow:hidden}
.bk-ck-mhead{padding:20px 24px;border-bottom:1px solid #E5E7EB;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.bk-ck-mtitle{font-size:20px;font-weight:800;color:#111827;margin:0 0 4px;line-height:1.25}
.bk-ck-msub{font-size:13px;line-height:1.5;color:#6b7280;margin:0}
.bk-ck-x{background:transparent;border:0;color:#6b7280;cursor:pointer;padding:6px;border-radius:6px;line-height:0;
  transition:color .2s,background-color .2s;flex:none}
.bk-ck-x:hover{color:#111827;background:#F3F4F6}
.bk-ck-x:focus-visible{outline:2px solid #0062cc;outline-offset:2px}
.bk-ck-mbody{padding:20px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}

.bk-ck-cat{background:#F9FAFB;border:1px solid #E5E7EB;border-radius:12px;padding:16px}
.bk-ck-cat-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.bk-ck-cat-name{font-size:15px;font-weight:700;color:#111827;margin:0 0 4px}
.bk-ck-cat-desc{font-size:12.5px;line-height:1.45;color:#4b5563;margin:0}
.bk-ck-always{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;
  background:#DCFCE7;color:#15803D;border:1px solid #BBF7D0;padding:4px 10px;border-radius:99px;white-space:nowrap;flex:none}

/* 开关：44×24，滑块 18 —— 与参考站同尺寸 */
.bk-ck-switch{position:relative;display:inline-block;width:44px;height:24px;flex:none}
.bk-ck-switch input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.bk-ck-slider{position:absolute;inset:0;cursor:pointer;background:#D1D5DB;border-radius:24px;
  transition:background-color .3s cubic-bezier(.16,1,.3,1)}
.bk-ck-slider::before{position:absolute;content:"";height:18px;width:18px;left:3px;top:3px;background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.2);border-radius:50%;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.bk-ck-switch input:checked+.bk-ck-slider{background:#0062cc}
.bk-ck-switch input:checked+.bk-ck-slider::before{transform:translateX(20px)}
.bk-ck-switch input:focus-visible+.bk-ck-slider{box-shadow:0 0 0 2px #0062cc}

.bk-ck-mfoot{padding:16px 24px;border-top:1px solid #E5E7EB;background:#FAFAFA;
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.bk-ck-mfoot-btns{display:flex;align-items:center;gap:10px}

/* ---------- 页脚入口（参考站 footer 里的 Cookie Settings） ----------
   注意：本站 .bk-footer-bottom 是白底（main.css #fff，版权字 #666），
   这里必须用深灰 —— 1.3.15 曾写成白色 70%（照参考站深色页脚想当然），
   白字压白底整颗按钮隐形，1.3.16 修正（#4B5563 对 #fff 对比 7.5:1）。 */
.bk-footer-cookie{background:transparent;border:0;color:#4B5563;padding:0;font:inherit;font-size:14px;
  cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .2s}
.bk-footer-cookie:hover{color:#0062cc}
.bk-footer-bottom .bk-container{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* ---------- 窄屏（参考站 ≤640 那组） ---------- */
@media (max-width:640px){
  .bk-ck-banner{bottom:12px;right:12px;left:12px;padding:16px}
  .bk-ck-actions{flex-direction:column;width:100%}
  .bk-ck-btn{width:100%;text-align:center}
  .bk-ck-modal{max-height:95vh}
  .bk-ck-mfoot{flex-direction:column;align-items:stretch}
  .bk-ck-mfoot-btns{flex-direction:column;width:100%}
}

@media (prefers-reduced-motion:reduce){
  .bk-ck-banner,.bk-ck-overlay{animation:none}
  .bk-ck-slider,.bk-ck-slider::before{transition:none}
}
