/* Cookie Policy page styles - minimal and consistent with base.css */

.main { padding-block: var(--space-32); }

.policy-hero {
  padding-block: clamp(32px, 6vw, 96px);
  background: radial-gradient(120% 120% at 50% 0%, rgba(0,229,255,0.08), transparent 60%),
              linear-gradient(180deg, rgba(25,35,48,0.8), rgba(11,15,20,0));
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.policy-hero .lead { color: var(--color-text-muted);  }

.toc {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: var(--space-12);
  margin-top: var(--space-24);
  padding: 0;
}
.toc a {
  display: block;
  padding: 10px 12px;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: var(--radius-md);
  background: rgba(18,25,35,0.6);
}

.policy-section { padding-block: clamp(24px, 4vw, 56px); }
.policy-section .card { margin-top: var(--space-16); }
.muted { color: var(--color-text-muted); }

/* Consent center */
.consent-card { margin-top: var(--space-16); }
.consent-form { display: grid; gap: var(--space-16); }
.pref-list { display: grid; gap: var(--space-12); margin-top: var(--space-8); }
.pref-item { display: grid; grid-template-columns: 1fr auto; gap: var(--space-12); align-items: center; padding: 12px; border: 1px solid rgba(255,255,255,0.08); border-radius: var(--radius-md); background: var(--color-elevated); }
.pref-main strong { font-weight: 700; }
.pref-note { color: var(--color-text-muted); margin: 2px 0 0 0; font-size: var(--text-sm); }

/* Toggle switch */
.switch { position: relative; display: inline-block; width: 48px; height: 28px; }
.switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; inset: 0; background: var(--gray-700); transition: background var(--duration-normal) var(--easing); border-radius: var(--radius-full); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08); }
.slider::before { content: ""; position: absolute; height: 22px; width: 22px; left: 3px; top: 3px; background: var(--gray-900); border-radius: 50%; transition: transform var(--duration-normal) var(--easing), background var(--duration-normal) var(--easing); box-shadow: var(--shadow-xs); }
.switch input:checked + .slider { background: linear-gradient(180deg, var(--color-primary), var(--color-primary-600)); }
.switch input:checked + .slider::before { transform: translateX(20px); background: #03161a; }
.switch input:disabled + .slider { opacity: 0.6; cursor: not-allowed; }

.consent-actions { display: flex; gap: var(--space-12); flex-wrap: wrap; }
.consent-meta { color: var(--color-text-muted); font-size: var(--text-sm); }

@media (min-width: 768px) {
  .consent-actions { justify-content: flex-start; }
}
