/* Cookie 提示保持单行低干扰；深色底与站点墨色统一，并为固定客服入口预留抬升空间。 */
.cookie-consent {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 80;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 52px;
  padding: 9px max(20px, var(--page, 4vw));
  border-top: 1px solid #fffefa2e;
  background: var(--ink, #302a23);
  color: #fffefa;
  box-shadow: 0 -8px 24px #302a2326;
  opacity: 0;
  transform: translateY(110%);
  transition: opacity 180ms ease-out, transform 220ms cubic-bezier(.16, 1, .3, 1);
}

.cookie-consent.is-visible { opacity: 1; transform: translateY(0); }
.cookie-consent p { min-width: 0; margin: 0; font-size: 12px; line-height: 1.5; }
.cookie-consent a { color: #fffefa; text-underline-offset: 3px; }
.cookie-consent button { flex: 0 0 auto; min-height: 34px; padding: 6px 14px; border: 1px solid #fffefa9c; background: transparent; color: #fffefa; font: 600 11px/1.4 Manrope, sans-serif; cursor: pointer; }
.cookie-consent button:hover { background: #fffefa18; }
.cookie-consent button:focus-visible { outline: 2px solid #fffefa; outline-offset: 3px; }

/* Cookie 条出现后客服入口上移，避免两个固定层争抢同一块屏幕空间。 */
body.cookie-consent-visible .contact-toggle { bottom: calc(24px + var(--contact-lift, 0px) + var(--cookie-consent-lift, 0px)); }
/* 普通页脚可滚动到提示条上方；结账固定页脚已有专门避让，不能重复增加高度。 */
body.cookie-consent-visible:not(.checkout-page) .site-footer { margin-bottom: var(--cookie-consent-lift, 0px); }

@media (max-width: 700px) {
  .cookie-consent { align-items: flex-start; justify-content: space-between; gap: 10px; padding: 10px 16px; }
  .cookie-consent p { font-size: 11px; }
  .cookie-consent button { min-height: 36px; padding-inline: 12px; }
  body.cookie-consent-visible .contact-toggle { bottom: calc(88px + var(--contact-lift, 0px) + var(--cookie-consent-lift, 0px)); }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-consent { transition: none; }
}

/* 隐私设置延用网站配色，原生对话框负责焦点约束；手机上只滚动对话框内容。 */
.cookie-settings{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:24px;border:1px solid #cbc6bc;border-radius:14px;background:#fff;color:#302a23;overflow:auto;font:14px/1.6 Manrope,sans-serif}
.cookie-settings::backdrop{background:#302a2366}
.cookie-settings h2{font:28px/1.2 Georgia,serif;margin:0 0 16px}
.cookie-settings p{margin:12px 0}
.cookie-settings fieldset{border:0;padding:0;margin:18px 0}
.cookie-settings legend{font-weight:600;margin-bottom:8px}
.cookie-settings label{display:block;padding:10px 0;cursor:pointer}
.cookie-settings input{margin-right:8px;accent-color:#302a23}
.cookie-settings label span{display:block;padding-left:25px;color:#655f56;font-size:12px}
.cookie-settings-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.cookie-settings-actions button{min-height:44px;padding:9px 16px;border:1px solid #cbc6bc;border-radius:8px;background:#fff;color:#302a23;font:inherit;cursor:pointer}
.cookie-settings-actions button[type="submit"]{background:#302a23;color:#fff}
.cookie-settings :is(button,input):focus-visible{outline:2px solid #276553;outline-offset:3px}
