/* Shared DS3 surface and Action controls; no new About visual vocabulary. */
.fruit-consent{padding:var(--space-8) var(--g);border:0;border-top:1px solid var(--rule-hairline);background:var(--bg);color:var(--fg)}
.fruit-consent .fv-body{margin:var(--space-5) 0;max-width:var(--measure)}
.consent-actions{display:flex;flex-wrap:wrap;gap:var(--space-4)}
.consent-actions .fv-act{flex:1 1 150px;min-height:44px;line-height:1.4;white-space:normal}
.consent-actions{max-width:680px}
.fruit-consent :focus-visible,.cookie-preferences:focus-visible{outline:2px solid var(--fg);outline-offset:3px}
.fruit-consent .consent-toggle{font:500 14px/1.6 var(--font-sans);display:flex;align-items:center;gap:12px;min-height:44px}
.consent-toggle input{width:22px;height:22px;accent-color:var(--ink)}
#consent-dialog{position:fixed;inset:0;margin:auto;width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:var(--space-7);border:1px solid var(--fg);--fx-heading:32px}
#consent-dialog:not([open]){display:none}
#consent-dialog::backdrop{background:var(--bone)}
/* Keep live announcements accessible without a second footer in document flow. */
.consent-status{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0!important}
/* Existing first-visit choices use a fixed sheet; the native dialog stays modal. */
#consent-banner{position:fixed;z-index:100;inset:auto 0 0;max-height:80dvh;overflow:auto;border-top:1px solid var(--fg)}
.cookie-preferences{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;min-height:44px;text-align:left}
.cookie-preferences:hover{text-decoration:underline;text-decoration-color:var(--accent-rule);text-underline-offset:4px}
@media(max-width:480px){.consent-actions{flex-direction:column}.consent-actions .fv-act{flex:auto;width:100%}}

[data-placeholder-link][aria-disabled="true"]{cursor:default;pointer-events:none}
