/* =========================================================================
 * Flicknetic — Cookie consent (child theme, update-safe)
 * "HUD panel" treatment: chamfered corner, gold->purple top rail, uppercase
 * eyebrow, hairline edge, left-striped category rows. Tokens: dark + gold.
 * ========================================================================= */
#skz-cc, #skz-cc *, #skz-cc-reopen, #skz-cc-reopen * { box-sizing: border-box; }

#skz-cc {
  --skz-accent: #EF911D;
  --skz-accent-2: #6D4EEC;
  --skz-accent-hover: #ffa733;
  --skz-text: rgba(255,255,255,0.80);
  --skz-muted: rgba(255,255,255,0.50);
  --skz-title: #ffffff;
  --skz-line: rgba(255,255,255,0.09);

  position: fixed;
  left: 24px;
  bottom: 24px;
  z-index: 2147483600;
  width: 430px;
  max-width: calc(100vw - 32px);
  color: var(--skz-text);
  font-family: 'Cabin', Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  padding: 19px 22px 20px;
  background:
    radial-gradient(135% 90% at 0% 0%, rgba(239,145,29,0.08), transparent 55%),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.015) 0 1px, transparent 1px 8px),
    #181818;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 22px), calc(100% - 22px) 100%, 0 100%);
  box-shadow: inset 0 0 0 1px var(--skz-line);
  filter: drop-shadow(0 24px 48px rgba(0,0,0,0.55));
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .35s ease, transform .35s ease;
}
#skz-cc.skz-show { opacity: 1; transform: translateY(0); }
#skz-cc[hidden] { display: none !important; }

/* Gold -> purple top rail */
#skz-cc::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--skz-accent) 0%, var(--skz-accent) 52%, var(--skz-accent-2) 100%);
}

/* Header: small flat cookie mark + uppercase eyebrow + divider rule */
#skz-cc .skz-head { display: flex; align-items: center; gap: 9px; margin-bottom: 11px; }
#skz-cc .skz-ico { width: 17px; height: 17px; flex: 0 0 auto; color: var(--skz-accent); display: block; }
#skz-cc .skz-eyebrow {
  font-family: 'Readex Pro', sans-serif; font-size: 11px; font-weight: 700;
  letter-spacing: 2.5px; text-transform: uppercase; color: var(--skz-accent); white-space: nowrap;
}
#skz-cc .skz-rule { flex: 1 1 auto; height: 1px; background: linear-gradient(90deg, var(--skz-line), transparent); }

#skz-cc .skz-title {
  margin: 0 0 7px; font-family: 'Unbounded', 'Readex Pro', sans-serif; font-weight: 800;
  font-size: 16.5px; line-height: 1.25; color: var(--skz-title); letter-spacing: .2px;
}
#skz-cc .skz-text { margin: 0 0 16px; color: var(--skz-text); font-size: 13.5px; }
#skz-cc .skz-text a { color: var(--skz-accent); text-decoration: none; border-bottom: 1px solid rgba(239,145,29,0.4); }
#skz-cc .skz-text a:hover { color: var(--skz-accent-hover); border-bottom-color: var(--skz-accent-hover); }

/* Buttons */
#skz-cc .skz-actions { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; }
#skz-cc .skz-btn {
  font-family: 'Readex Pro', 'Cabin', sans-serif; font-size: 13px; font-weight: 600; cursor: pointer;
  border-radius: 34px; padding: 11px 20px; border: 1px solid transparent; line-height: 1; white-space: nowrap;
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .08s ease;
}
#skz-cc .skz-btn:active { transform: translateY(1px); }
#skz-cc .skz-btn-primary { background: var(--skz-accent); color: #160f04; flex: 1 1 auto; box-shadow: 0 6px 16px -9px rgba(239,145,29,0.75); }
#skz-cc .skz-btn-primary:hover { background: var(--skz-accent-hover); }
#skz-cc .skz-btn-ghost { background: rgba(255,255,255,0.04); color: var(--skz-text); border-color: var(--skz-line); }
#skz-cc .skz-btn-ghost:hover { border-color: rgba(255,255,255,0.40); color: #fff; }
#skz-cc .skz-btn-text { background: transparent; color: var(--skz-muted); padding: 11px 6px; border-radius: 0; border-bottom: 1px solid transparent; }
#skz-cc .skz-btn-text:hover { color: #fff; border-bottom-color: var(--skz-accent); }

/* compact -> Accept all (primary) · Reject all · Customize
   expanded -> Save my choices (primary) · Accept all (ghost) · Reject all */
#skz-cc .skz-save { display: none; }
#skz-cc.skz-expanded .skz-save { display: inline-block; flex: 1 1 auto; }
#skz-cc.skz-expanded .skz-btn-customize { display: none; }
#skz-cc.skz-expanded .skz-btn-accept { background: rgba(255,255,255,0.04); color: var(--skz-text); border-color: var(--skz-line); box-shadow: none; flex: 0 1 auto; }
#skz-cc.skz-expanded .skz-btn-accept:hover { border-color: rgba(255,255,255,0.40); color: #fff; }

/* Preferences */
#skz-cc .skz-prefs { display: none; margin: 2px 0 16px; }
#skz-cc.skz-expanded .skz-prefs { display: block; }
#skz-cc.skz-expanded .skz-text { margin-bottom: 12px; }

#skz-cc .skz-cat {
  display: flex; align-items: flex-start; gap: 12px; padding: 12px 13px;
  background: rgba(255,255,255,0.025);
  border: 1px solid var(--skz-line); border-left: 2px solid rgba(239,145,29,0.40);
  border-radius: 0 9px 9px 0; margin-bottom: 8px;
}
#skz-cc .skz-cat-body { flex: 1 1 auto; min-width: 0; }
#skz-cc .skz-cat-name { font-family: 'Readex Pro', sans-serif; font-weight: 600; font-size: 13.5px; color: var(--skz-title); margin: 0 0 3px; }
#skz-cc .skz-cat-desc { margin: 0; font-size: 12px; color: var(--skz-muted); line-height: 1.45; }

/* Toggle switch */
#skz-cc .skz-switch { flex: 0 0 auto; position: relative; width: 44px; height: 25px; margin-top: 1px; }
#skz-cc .skz-switch input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
#skz-cc .skz-slider { position: absolute; inset: 0; background: #343434; border: 1px solid var(--skz-line); border-radius: 25px; transition: background .2s ease, border-color .2s ease; }
#skz-cc .skz-slider::before { content: ''; position: absolute; height: 19px; width: 19px; left: 2px; top: 2px; background: #cfcfcf; border-radius: 50%; transition: transform .2s ease, background .2s ease; }
#skz-cc .skz-switch input:checked + .skz-slider { background: var(--skz-accent); border-color: var(--skz-accent); }
#skz-cc .skz-switch input:checked + .skz-slider::before { transform: translateX(19px); background: #160f04; }
#skz-cc .skz-switch input:disabled + .skz-slider { background: var(--skz-accent-2); border-color: var(--skz-accent-2); opacity: .85; cursor: not-allowed; }
#skz-cc .skz-switch input:disabled + .skz-slider::before { transform: translateX(19px); background: #fff; }
#skz-cc .skz-switch input:focus-visible + .skz-slider { box-shadow: 0 0 0 3px rgba(239,145,29,0.4); }

/* Reopen tab — small chamfered mark */
#skz-cc-reopen {
  position: fixed; left: 22px; bottom: 22px; z-index: 2147483500;
  width: 46px; height: 46px; border: none; cursor: pointer; padding: 0;
  display: none; align-items: center; justify-content: center;
  background: #181818; color: var(--skz-accent, #EF911D);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.09);
  filter: drop-shadow(0 10px 22px rgba(0,0,0,0.6));
  transition: color .2s ease;
}
#skz-cc-reopen.skz-show { display: flex; }
#skz-cc-reopen::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: #EF911D; }
#skz-cc-reopen:hover { color: #ffa733; }
#skz-cc-reopen svg { width: 22px; height: 22px; display: block; }

@media (max-width: 600px) {
  #skz-cc { left: 12px; right: 12px; bottom: 12px; width: auto; padding: 17px 16px 16px; }
  #skz-cc .skz-actions { flex-direction: column; align-items: stretch; }
  #skz-cc .skz-btn { width: 100%; text-align: center; }
  #skz-cc .skz-btn-text { border-bottom: none; }
}
@media (prefers-reduced-motion: reduce) {
  #skz-cc, #skz-cc * { transition: none !important; }
}
