.consent-banner,.consent-panel{z-index:1000;border:1px solid var(--line);background:var(--paper);width:min(460px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--espresso);font:14px/1.5 var(--font-geist-sans), Inter, "Helvetica Neue", Arial, sans-serif;border-radius:8px;padding:20px;position:fixed;bottom:16px;left:16px;overflow-y:auto;box-shadow:0 8px 28px #3e27231f}.consent-banner p,.consent-panel p{margin:0}.consent-banner a,.consent-panel a{text-underline-offset:3px;text-decoration:underline}.consent-panel h2{margin:0 0 8px;font-size:18px;font-weight:500}.consent-panel fieldset{border:0;gap:14px;margin:16px 0;padding:0;display:grid}.consent-row{grid-template-columns:18px 1fr;align-items:start;gap:10px;display:grid}.consent-row input{width:16px;height:16px;accent-color:var(--blue);margin-top:3px}.consent-row strong{font-weight:500;display:block}.consent-row span{color:var(--muted)}.consent-row strong{color:var(--espresso)}.consent-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.consent-banner.is-notice{align-items:center;gap:16px;display:flex}.consent-banner.is-notice .consent-actions{flex-shrink:0;margin-top:0}.consent-actions button{border:1px solid var(--espresso);min-height:36px;color:var(--espresso);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:6px 14px;font-weight:500}.consent-actions button.is-primary{background:var(--espresso);color:var(--paper)}.consent-actions .consent-link,.consent-link{min-height:0;color:inherit;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.consent-actions .consent-link{align-self:center;margin-left:4px}.consent-open{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.consent-open:hover{text-underline-offset:4px;text-decoration:underline}.consent-banner button:focus-visible,.consent-panel button:focus-visible,.consent-panel input:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (max-width:520px){.consent-banner.is-notice{flex-direction:column;align-items:stretch}}
