/* RUFEIDA — Cookie 同意横幅 */
.cookie-banner {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 980;
  background: #fff;
  border-top: 1px solid var(--rule);
  box-shadow: 0 -8px 30px rgba(10, 37, 64, .12);
  transform: translateY(100%);
  transition: transform .3s ease;
  padding: 14px 0;
}
.cookie-banner.show { transform: translateY(0); }
.cb-inner {
  max-width: 1200px; margin: 0 auto; padding: 0 24px;
  display: flex; flex-wrap: wrap; gap: 10px 20px;
  align-items: center; justify-content: space-between;
}
.cb-inner p { font-size: .88rem; color: var(--ink); flex: 1 1 300px; margin: 0; line-height: 1.5; }
.cb-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.cb-btn {
  padding: 9px 20px; border-radius: 999px;
  font: inherit; font-weight: 600; cursor: pointer;
  border: 1.5px solid var(--rule); background: #fff; color: var(--navy);
  transition: background .15s, color .15s, border-color .15s;
}
.cb-accept { background: var(--accent); color: #fff; border-color: var(--accent); }
.cb-accept:hover { background: var(--accent-d); border-color: var(--accent-d); }
.cb-decline:hover { background: var(--rule); }
.cb-actions a { font-size: .84rem; color: var(--accent-d); text-decoration: none; }
.cb-actions a:hover { text-decoration: underline; }
@media (max-width: 480px) {
  .cb-inner { padding: 0 16px; }
  .cb-btn { padding: 8px 16px; font-size: .85rem; }
}
