#cap-consent {
  --cap-bg:#fff;--cap-fg:#181818;--cap-muted:#505050;--cap-border:#d6d3cd;
  --cap-soft:#f5f3ee;--cap-accent:#b41210;
  color:var(--cap-fg);font-family:var(--sans,'Archivo',sans-serif);line-height:1.5;
}
#cap-consent *,#cap-consent *::before,#cap-consent *::after{box-sizing:border-box}
#cap-consent [hidden]{display:none!important}
#cap-consent h2{font-family:var(--serif,'Source Serif 4',serif);font-size:clamp(1.5rem,2.2vw,1.875rem);line-height:1.15;margin:0 0 1rem;color:var(--cap-fg)}
#cap-consent p{font-size:.875rem;line-height:1.5;margin:.75rem 0;color:var(--cap-muted)}
#cap-consent button{font:inherit;font-size:.875rem;font-weight:600;min-height:44px;padding:.75rem 1rem;border:1px solid var(--cap-fg);border-radius:2px;color:var(--cap-fg);background:var(--cap-bg);cursor:pointer;white-space:normal}
#cap-consent button:hover{background:var(--cap-soft)}
#cap-consent :focus-visible,[data-cap-consent-open]:focus-visible{outline:3px solid var(--cap-accent);outline-offset:3px}
#cap-consent a{color:var(--cap-fg);text-decoration:underline;text-underline-offset:3px}
#cap-consent .cap-kicker{letter-spacing:.12em;font-size:.75rem;font-weight:700;color:var(--cap-accent);text-transform:uppercase}
#cap-consent-banner{position:static;width:calc(100% - 48px);max-width:1200px;margin:16px auto;background:var(--cap-soft);border:1px solid var(--cap-border);padding:16px 20px}
#cap-consent .cap-banner-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
#cap-consent .cap-banner-head h2{font-family:inherit;font-size:16px;line-height:1.35;margin:0}
#cap-consent [data-cap-banner-close]{border:0;font-size:24px;line-height:1;padding:8px;min-width:44px}
#cap-consent .cap-banner-content{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:center}
#cap-consent .cap-banner-content p{margin:0;font-size:14px}
#cap-consent .cap-banner-content .cap-actions{grid-template-columns:repeat(4,minmax(0,1fr))}
#cap-consent .cap-banner-content button{padding:8px;font-size:14px;min-height:52px}
#cap-consent [data-cap-accept]{background:#b41210;color:#fff;border-color:#b41210;font-size:16px;font-weight:700;min-height:52px}
#cap-consent [data-cap-accept]:hover{background:#94110f;border-color:#94110f}
#cap-consent-dialog{background:var(--cap-bg);color:var(--cap-fg);width:min(600px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--cap-border);border-radius:4px;overflow:hidden}
#cap-consent-dialog[open]{display:flex;flex-direction:column}
#cap-consent-dialog::backdrop{background:#15151580}
#cap-consent .cap-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem;flex-shrink:0}
#cap-consent [data-cap-close]{border:0;padding:.5rem}
#cap-consent .cap-dialog-body{overflow:auto;min-height:0;overscroll-behavior:contain;padding:0 1.5rem .5rem;scroll-padding:1rem}
#cap-consent .cap-dialog-foot{padding:1rem 1.5rem;border-top:1px solid var(--cap-border);flex-shrink:0;background:var(--cap-bg)}
#cap-consent .cap-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem}
#cap-consent [data-cap-save],#cap-consent [data-cap-custom]{grid-column:1/-1}
#cap-consent [data-cap-save]{background:var(--cap-fg);color:var(--cap-bg)}
#cap-consent [data-cap-save]:hover{background:var(--cap-muted)}
#cap-consent .cap-choice{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--cap-border);font-size:.9375rem;cursor:pointer}
#cap-consent .cap-choice p{margin:.25rem 0 0}
#cap-consent .cap-choice>div{min-width:0}
#cap-consent input[type=checkbox]{appearance:none;position:relative;width:46px;height:28px;min-width:46px;border:1px solid var(--cap-muted);border-radius:20px;background:var(--cap-soft);cursor:pointer;margin:.5rem}
#cap-consent input[type=checkbox]::before{content:"";position:absolute;width:20px;height:20px;top:3px;left:3px;border-radius:50%;background:var(--cap-muted)}
#cap-consent input[type=checkbox]:checked{background:var(--cap-fg);border-color:var(--cap-fg)}
#cap-consent input[type=checkbox]:checked::before{background:var(--cap-bg);transform:translateX(18px)}
#cap-consent input:disabled{cursor:not-allowed;opacity:.45}
#cap-consent [data-cap-analytics-only]{width:100%;margin:.5rem 0 1rem}
#cap-consent .cap-data-details{margin:1rem 0;border-top:1px solid var(--cap-border);padding-top:.5rem}
#cap-consent .cap-data-details summary{font-size:.875rem;font-weight:600;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:.5rem}
#cap-consent .cap-data-details summary::before{content:"+";font-size:1.25rem}
#cap-consent .cap-data-details[open] summary::before{content:"−"}
#cap-consent .cap-required{display:flex;justify-content:space-between;gap:1rem;font-weight:600;padding:.75rem;background:var(--cap-soft);color:var(--cap-fg)}
#cap-consent .cap-required span{font-weight:400;text-align:right}
#cap-consent .cap-assurance{color:var(--cap-fg);font-weight:600}
#cap-consent .cap-memory,#cap-consent .cap-tag{font-size:.75rem;color:var(--cap-muted)}
#cap-consent .cap-tag{display:block;margin-top:.375rem}
#cap-consent .cap-preview{font-size:.75rem;padding:.75rem;background:var(--cap-soft);color:var(--cap-fg)}
#cap-consent .cap-zone{border-top:1px solid var(--cap-border);margin-top:.25rem}
#cap-consent .cap-zone>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;cursor:pointer;min-height:56px;font-size:.9375rem}
#cap-consent .cap-zone[open]>summary>span:last-child{transform:rotate(45deg)}
#cap-consent .cap-zone summary small{display:block;font-size:.75rem;font-weight:400;color:var(--cap-muted);margin-top:.25rem}
#cap-consent .cap-zone-body{border:1px solid var(--cap-border);background:var(--cap-soft);padding:1rem;margin-bottom:1rem}
#cap-consent .cap-zone-body>p:first-child{margin-top:0}
#cap-consent .cap-zone-check{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;font-weight:600;margin:1rem 0}
#cap-consent .cap-zone-check input{flex-shrink:0;margin:0 .25rem 0 0}
#cap-consent .cap-zone-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
#cap-consent .cap-zone-actions button{flex:1 1 150px}
#cap-consent [data-zone-confirm]{background:var(--cap-fg);color:var(--cap-bg)}
#cap-consent [data-zone-confirm]:hover{background:var(--cap-muted);color:var(--cap-bg)}
#cap-consent button:disabled{cursor:not-allowed;opacity:.5}
#cap-consent .cap-zone-terms summary{font-size:.8125rem;min-height:44px;display:flex;align-items:center;text-decoration:underline;cursor:pointer}
#cap-consent [data-zone-status]{padding:.75rem;border-left:3px solid var(--cap-muted);font-size:.875rem}
#cap-consent [data-zone-withdraw],#cap-consent [data-zone-retry]{width:100%;margin:.5rem 0}
#cap-consent-reopen{position:fixed;z-index:9998;bottom:.75rem;left:.75rem;box-shadow:0 2px 12px #11111117}
#cap-consent-feedback{background:var(--cap-soft);padding:.5rem;border-radius:2px}
#cap-consent-feedback:empty{display:none}
[data-cap-consent-open]{font:inherit;color:inherit;background:none;border:0;padding:0;text-align:left;text-decoration:underline;cursor:pointer;min-height:44px}
@media(max-width:680px){
  #cap-consent-banner{width:calc(100% - 24px);margin:12px auto;padding:10px 12px}
  #cap-consent .cap-banner-content{grid-template-columns:1fr;gap:12px}
  #cap-consent .cap-banner-head h2{font-size:16px}
  #cap-consent .cap-banner-content p{font-size:14px}
  #cap-consent .cap-banner-content .cap-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  #cap-consent .cap-dialog-head{padding:.5rem 1rem}
  #cap-consent .cap-dialog-body{padding:0 1rem .5rem}
  #cap-consent .cap-dialog-foot{padding:.75rem 1rem}
  #cap-consent .cap-choice{gap:.5rem}
  #cap-consent h2{font-size:1.5rem}
}
@media(prefers-color-scheme:dark){
  #cap-consent{--cap-bg:#191919;--cap-fg:#f5f3ee;--cap-muted:#cbc8c2;--cap-border:#55514d;--cap-soft:#272624;--cap-accent:#ff9792}
  #cap-consent input{color-scheme:dark}
}
@media(forced-colors:active){
  #cap-consent input[type=checkbox]{appearance:auto;width:28px;min-width:28px}
  #cap-consent input[type=checkbox]::before{display:none}
}
