/* tow adaptation of the copied medientage.at consent panel.
   Scoped to the native dialog; the page's typography and buttons remain intact. */
.consent-layer{position:fixed;inset:0;margin:auto;padding:0;border:1px solid var(--ink);width:min(820px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);color:var(--ink);background:var(--paper);box-shadow:8px 8px 0 #24242040;overflow:hidden;font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;line-height:1.6}
.consent-layer::backdrop{background:#242420b8}
.consent-layer:not([open]){display:none}
.consent-layer .consent-panel{display:flex;flex-direction:column;max-height:calc(100dvh - 50px);min-height:0}
.consent-layer .consent-panel__top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px 32px 24px;border-bottom:1px solid var(--line);flex-shrink:0}
.consent-layer .consent-kicker{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;color:var(--muted)}
.consent-layer .consent-title{font-size:clamp(30px,4vw,44px);font-weight:700;line-height:1.04;letter-spacing:-.045em;margin:0}
.consent-layer .consent-title em{color:var(--accent-ink)}
.consent-layer .consent-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);background:transparent;color:var(--ink);padding:0;appearance:none;-webkit-appearance:none;border-radius:0;cursor:pointer}
.consent-layer .consent-panel__scroll{overflow:auto;overscroll-behavior:contain;min-height:0;padding:24px 32px;scrollbar-gutter:stable}
.consent-layer p{margin:0;font-size:inherit;line-height:inherit;letter-spacing:normal}
.consent-layer p+p{margin-top:12px}
.consent-layer a{color:var(--accent-ink);text-underline-offset:3px;overflow-wrap:anywhere}
.consent-layer button{font-family:inherit;cursor:pointer;letter-spacing:normal;appearance:none;-webkit-appearance:none;border-radius:0}
.consent-layer .consent-close svg{display:block;width:20px;height:20px;flex-shrink:0}
.consent-layer :focus-visible{outline:3px solid var(--accent-ink);outline-offset:3px}
.consent-layer .consent-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.consent-layer .consent-choice{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);cursor:pointer;background:var(--paper-light);font-size:13px;line-height:1.55}
.consent-layer .consent-choice strong{display:block;font-size:16px;margin-bottom:5px;font-weight:600}
.consent-layer .consent-choice span span{display:block}
/* Native input semantics with explicit geometry: no Safari-rounded control chrome. */
.consent-layer input[type=checkbox]{appearance:none;-webkit-appearance:none;display:block;position:static;opacity:1;flex:0 0 20px;width:20px;height:20px;min-width:20px;padding:0;margin:3px 0 0;border:1px solid var(--muted);border-radius:0;background-color:var(--paper-light);background-position:center;background-repeat:no-repeat;background-size:14px 14px;box-shadow:none;cursor:pointer}
.consent-layer input[type=checkbox]:checked{border-color:var(--accent-ink);background-color:var(--accent-ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='%23f2f0e9' stroke-width='2' stroke-linecap='square'/%3E%3C/svg%3E")}
.consent-layer input[type=checkbox]:disabled{opacity:1;border-color:var(--muted);background-color:var(--muted)}
.consent-layer input:disabled{cursor:default}
.consent-layer .consent-meta{font-size:12px;color:var(--muted);margin-top:20px}
.consent-layer .consent-legal{display:flex;gap:24px;font-size:13px;margin-top:12px}
.consent-layer .consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:20px 32px 24px;border-top:1px solid var(--line);background:var(--paper);flex-shrink:0}
.consent-layer .consent-button{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 16px;background:var(--ink);border:1px solid var(--ink);color:var(--paper);font-size:14px;font-weight:600;line-height:1.35;box-shadow:4px 4px 0 var(--line);transition:transform .12s,box-shadow .12s}
.consent-layer .consent-button:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--line)}
.consent-layer .consent-button--save{background:var(--paper);color:var(--ink);box-shadow:none}
.consent-layer .consent-details{min-height:44px;background:transparent;color:var(--ink);border:0;font-size:14px;text-decoration:underline;text-underline-offset:4px;padding:8px}
.consent-layer .consent-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:20px;gap:12px}
.consent-layer [role=tab]{flex:1;min-height:48px;padding:8px 2px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-size:13px;font-weight:600}
.consent-layer [role=tab][aria-selected=true]{border-bottom-color:var(--accent-ink);color:var(--ink)}
.consent-layer #panel-groups{display:grid;gap:12px}
.consent-layer .consent-service-row,.consent-layer .consent-provider{padding:18px 0;border-bottom:1px solid var(--line)}
.consent-layer .consent-service-row:first-child,.consent-layer .consent-provider:first-child{padding-top:0}
.consent-layer .consent-service-row__head{display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:center}
.consent-layer .consent-service-row__title,.consent-layer .consent-provider__name{font-size:17px;font-weight:600}
.consent-layer .consent-inline-info{grid-row:2;justify-self:start;text-align:left;min-height:44px;border:0;padding:6px 0;background:transparent;color:var(--accent-ink);font-size:13px;text-decoration:underline;text-underline-offset:3px}
/* Medientage switch form, recoloured for tow. The input remains keyboard operable. */
.consent-layer .consent-switch{position:relative;grid-row:1;grid-column:2;display:block;justify-self:end;width:48px;height:44px;cursor:pointer}
.consent-layer .consent-switch input[type=checkbox]{position:absolute;inset:0;z-index:1;opacity:0;width:48px;height:44px;margin:0;border:0;cursor:inherit}
.consent-layer .consent-switch>span{display:block;position:absolute;inset:8px 0;border:1px solid var(--muted);border-radius:999px;background:var(--line);pointer-events:none;transition:background-color .16s,border-color .16s}
.consent-layer .consent-switch>span::after{content:'';position:absolute;left:2px;top:2px;width:22px;height:22px;border-radius:50%;background:var(--paper-light);box-shadow:0 1px 2px #24242026;transition:transform .16s}
.consent-layer .consent-switch input:checked+span{background:var(--accent-ink);border-color:var(--accent-ink)}
.consent-layer .consent-switch input:checked+span::after{transform:translateX(20px)}
.consent-layer .consent-switch input:disabled+span{background:#858478;border-color:#858478}
.consent-layer .consent-switch:has(input:disabled){cursor:default}
.consent-layer .consent-switch input:focus-visible+span{outline:3px solid var(--accent-ink);outline-offset:3px}
.consent-layer .consent-service-row__state{grid-row:2;grid-column:2;font-size:11px;color:var(--muted);text-align:right}
.consent-layer .consent-service-details{margin:14px 0 6px;padding:16px;background:var(--paper-light);border-left:2px solid var(--accent-ink)}
.consent-layer .csd-section+.csd-section{margin-top:20px}
.consent-layer .csd-label{font-weight:600;font-size:13px;display:block}
.consent-layer .csd-desc{font-size:12px;color:var(--muted);margin:6px 0}
.consent-layer .csd-value,.consent-layer .csd-highlight,.consent-layer .csd-list,.consent-layer .csd-privacy-link{font-size:13px}
.consent-layer .csd-pills{display:flex;gap:6px;flex-wrap:wrap;font-size:12px;margin-top:5px}
.consent-layer .csd-pill{padding:3px 7px;border:1px solid var(--line)}
.consent-layer .csd-list{padding-left:20px;margin:5px 0}
.consent-layer .csd-stored-summary{cursor:pointer;padding:8px 0;min-height:44px}
.consent-layer .csd-stored-summary .csd-label{display:inline}
.consent-layer .csd-cookie-card{padding:12px 0;border-top:1px solid var(--line);font-size:12px}
.consent-layer .csd-cookie-card__name{font-family:var(--mono);overflow-wrap:anywhere}
.consent-layer .csd-cookie-card__meta{margin:8px 0 0}
.consent-layer .csd-cookie-card__meta div{display:flex;gap:10px}
.consent-layer dd{margin:0}
.consent-layer .consent-provider__text{margin-top:8px;font-size:13px}
.consent-layer .consent-info-table{margin-top:12px;font-size:13px;overflow-wrap:anywhere}
.consent-layer .consent-info-row{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:6px 0}
@media(max-width:560px){
.consent-layer{width:calc(100% - 24px);max-height:calc(100dvh - 32px);box-shadow:4px 4px 0 #24242040}
.consent-layer .consent-panel{max-height:calc(100dvh - 34px)}
.consent-layer .consent-panel__top{padding:20px 20px 18px;gap:8px}
.consent-layer .consent-title{font-size:32px}
.consent-layer .consent-kicker{font-size:10px;letter-spacing:.07em}
.consent-layer .consent-panel__scroll{padding:20px;font-size:14px}
.consent-layer .consent-options{grid-template-columns:1fr;margin-top:18px}
.consent-layer .consent-actions{padding:16px 20px max(18px,env(safe-area-inset-bottom));gap:10px}
.consent-layer .consent-button{padding:10px 8px;font-size:12px}
.consent-layer .consent-details{font-size:12px}
.consent-layer .consent-info-row{grid-template-columns:1fr;gap:2px}
.consent-layer .consent-tabs{gap:6px}
.consent-layer [role=tab]{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.consent-layer .consent-button{transition:none}}
.consent-layer .consent-actions{margin:0}
.consent-layer .consent-button:hover{background:var(--ink);color:var(--paper)}
.consent-layer .consent-button--save:hover{background:var(--paper-light);color:var(--ink)}

@media(forced-colors:active){.consent-layer input[type=checkbox]{appearance:auto;-webkit-appearance:auto;background-image:none}}

@media(prefers-reduced-motion:reduce){.consent-layer .consent-switch>span,.consent-layer .consent-switch>span::after{transition:none}}
@media(forced-colors:active){.consent-layer .consent-switch>span{forced-color-adjust:none;background:Canvas;border-color:CanvasText}.consent-layer .consent-switch>span::after{background:CanvasText}.consent-layer .consent-switch input:checked+span{background:Highlight;border-color:Highlight}.consent-layer .consent-switch input:checked+span::after{background:HighlightText}.consent-layer .consent-switch input:disabled+span{background:GrayText;border-color:GrayText}.consent-layer .consent-switch input:focus-visible+span{outline-color:Highlight}}
