#rs-consent-dialog{box-sizing:border-box;width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #d8c3b2;border-radius:18px;background:#f6f1e9;color:#202020;box-shadow:0 18px 70px #0004;font:15px/1.55 Inter,Arial,sans-serif;z-index:2147483647;overflow:auto}
#rs-consent-dialog::backdrop{background:#092f3a77}
#rs-consent-dialog .rs-consent-inner{padding:26px}
#rs-consent-dialog h2{margin:0 0 14px;font:700 24px/1.2 Georgia,serif;color:#0e4a5a}
#rs-consent-dialog p{margin:12px 0;color:#303030;font-size:15px;line-height:1.55}
#rs-consent-dialog a{color:#0e4a5a;text-decoration:underline;text-underline-offset:3px}
#rs-consent-dialog details{margin:16px 0;padding:12px;border:1px solid #b8aaa0;border-radius:8px;background:white}
#rs-consent-dialog summary{cursor:pointer;font-weight:700;list-style:revert;padding:0;color:#0e4a5a}
#rs-consent-dialog summary::after{content:none}
#rs-consent-dialog label{display:flex;gap:10px;align-items:flex-start;margin-top:12px}
#rs-consent-dialog input{width:20px;height:20px;flex-shrink:0;accent-color:#0e4a5a}
#rs-consent-dialog button,#rs-consent-open{font:600 14px/1.4 Inter,Arial,sans-serif;cursor:pointer;border:2px solid #0e4a5a;border-radius:8px;background:#0e4a5a;color:white;padding:12px 16px;min-height:44px;letter-spacing:normal;text-transform:none}
#rs-consent-dialog button:hover,#rs-consent-open:hover{background:#073642}
#rs-consent-dialog :focus-visible,#rs-consent-open:focus-visible{outline:3px solid #c1644a;outline-offset:3px}
#rs-consent-dialog .rs-consent-actions{display:flex;gap:12px;margin:18px 0}
#rs-consent-dialog .rs-consent-actions button{flex:1}
#rs-consent-dialog .rs-consent-small{font-size:13px}
#rs-consent-open{position:fixed;left:12px;bottom:12px;z-index:9999;padding:8px 12px;font-size:12px;box-shadow:0 2px 12px #0002}
@media(max-width:480px){#rs-consent-dialog .rs-consent-inner{padding:18px}#rs-consent-dialog h2{font-size:22px}#rs-consent-dialog .rs-consent-actions{flex-wrap:wrap}#rs-consent-dialog .rs-consent-actions button{min-width:115px}}
/* Long German labels must wrap even on narrow phones. */
#rs-consent-dialog,#rs-consent-dialog *{box-sizing:border-box;overflow-wrap:anywhere}
#rs-consent-dialog label strong{min-width:0}
#rs-consent-dialog input{overflow-wrap:normal}
