/* Platiniq legal footer + consent widget. Tokens come from live base.css (--pl-*). */
.plq-linkbtn{background:none;border:0;padding:0;font-family:inherit;font-size:var(--pl-fs-small);font-weight:500;line-height:var(--pl-lh-snug);cursor:pointer;text-align:left}
.pl-footer__link:focus-visible,.plq-linkbtn:focus-visible{outline:2px solid var(--pl-purple-soft);outline-offset:3px;border-radius:4px}
.plq-legalbar{display:flex;flex-direction:column;gap:8px}
.plq-legalbar__reg{font-size:13px;line-height:1.6;color:#A9A8B0;max-width:880px}/* 6.0:1 on footer bar */
.plq-legalbar__copy{font-size:13px!important;line-height:1.6;color:var(--pl-white-70)}
.pl-footer__col--legal .pl-footer__list{gap:16px}

/* ---- Consent ---- */
.plq-cc,.plq-cc *{box-sizing:border-box}
.plq-cc{font-family:var(--pl-font);color:var(--pl-text-on-light)}
.plq-banner{position:fixed;z-index:1000;right:24px;bottom:24px;width:min(440px,calc(100vw - 32px));
  background:var(--pl-light);border-radius:24px;padding:24px;box-shadow:0 24px 60px rgba(10,11,15,.28),0 0 0 1px rgba(21,19,28,.06)}
.plq-banner[hidden],.plq-modal[hidden]{display:none}
.plq-h{font-size:20px;line-height:1.2;font-weight:600;color:var(--pl-ink);margin:0 0 10px;letter-spacing:-.2px}
.plq-p{font-size:14px;line-height:1.6;color:var(--pl-text-on-light);margin:0}
.plq-links{display:flex;gap:16px;margin-top:12px;font-size:13px}
.plq-links a{color:#4834DF;text-decoration:underline;text-underline-offset:3px}
.plq-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}
.plq-actions .plq-btn--ghost{grid-column:1/-1}
.plq-btn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 18px;border-radius:999px;
  font:600 14px/1 var(--pl-font);cursor:pointer;border:1px solid transparent;transition:background-color .2s ease,color .2s ease;white-space:nowrap}
.plq-btn--primary{background:var(--pl-btn-bg);color:#fff}
.plq-btn--primary:hover{background:#3D2BC9}
.plq-btn--secondary{background:var(--pl-ink);color:#fff}/* equal weight to Accept */
.plq-btn--secondary:hover{background:#2C2B34}
.plq-btn--ghost{background:transparent;color:var(--pl-ink);border-color:rgba(21,19,28,.22)}
.plq-btn--ghost:hover{background:rgba(21,19,28,.05)}
.plq-btn:focus-visible,.plq-switch input:focus-visible+span,.plq-x:focus-visible,.plq-links a:focus-visible{outline:2px solid #4834DF;outline-offset:3px}
.plq-modal{position:fixed;inset:0;z-index:1001;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(10,11,15,.56)}
.plq-dialog{position:relative;width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:var(--pl-light);border-radius:24px;padding:28px}
.plq-x{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;border:0;background:rgba(21,19,28,.06);color:var(--pl-ink);font-size:20px;cursor:pointer}
.plq-cats{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.plq-cat{display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:center;background:#fff;border-radius:16px;padding:16px 18px}
.plq-cat__name{font-size:15px;font-weight:600;color:var(--pl-ink)}
.plq-cat__desc{grid-column:1/-1;font-size:13px;line-height:1.55;color:#5A5A5A}
.plq-cat__fixed{font-size:12px;font-weight:600;color:#3B7A47}
.plq-switch{position:relative;display:inline-block;width:44px;height:26px}
.plq-switch input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.plq-switch span{position:absolute;inset:0;border-radius:999px;background:#8A8994;transition:background-color .2s ease;pointer-events:none}
.plq-switch span::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s ease}
.plq-switch input:checked+span{background:var(--pl-btn-bg)}
.plq-switch input:checked+span::after{transform:translateX(18px)}
.plq-dialog .plq-actions{grid-template-columns:repeat(3,1fr)}
.plq-dialog .plq-actions .plq-btn--ghost{grid-column:auto}
.plq-status{margin-top:12px;font-size:13px}.plq-status:empty{display:none}
.plq-status.is-err{color:#B42318}.plq-status.is-ok{color:#2F6B3A}
@media (max-width:600px){
  .plq-banner{left:16px;right:16px;bottom:16px;width:auto;padding:20px}
  .plq-dialog{padding:24px 20px}
  .plq-dialog .plq-actions{grid-template-columns:1fr}
  .plq-legalbar__reg,.plq-legalbar__copy{font-size:12px!important}
}
@media (prefers-reduced-motion:reduce){.plq-cc *{transition:none!important}}
@media (max-width:600px){.plq-linkbtn{font-size:12px}}
