/* Done48 privacy UI. Native dialog owns focus and modality; no animation library. */
body.done48.d-privacy-open{overflow:hidden}
.done48 .d-privacy-banner,.done48 .d-privacy-dialog{font:400 14px/1.55 Inter,Arial,sans-serif;letter-spacing:0;color:#edf4fa;background:#101b24;border:1px solid #355164;box-shadow:0 16px 65px #0006;text-align:left}
.done48 .d-privacy-banner{position:fixed;z-index:220;right:24px;bottom:24px;width:min(600px,calc(100vw - 48px));padding:20px 22px;border-radius:8px}
.done48 .d-privacy-banner h2{font:700 17px/1.25 Inter,Arial,sans-serif;letter-spacing:0;margin:0 0 7px;color:#fff}
.done48 .d-privacy-banner p{font-size:13px;line-height:1.55;margin:0;color:#c5d2dc;max-width:none}
.done48 .d-privacy-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.done48 .d-privacy-actions button{min-height:44px;padding:11px 17px;border:1px solid #6c8293;border-radius:4px;background:transparent;color:#fff;font:600 12px/1.4 Inter,Arial,sans-serif;letter-spacing:0;cursor:pointer}
.done48 .d-privacy-actions button:hover{background:#223543;border-color:#b2c4d1}
.done48 .d-privacy-actions .d-privacy-save{background:#0068ff;border-color:#0068ff}
.done48 .d-privacy-actions .d-privacy-save:hover{background:#0057d6;border-color:#0057d6}
.done48 .d-privacy-banner button:focus-visible,.done48 .d-privacy-dialog button:focus-visible,.done48 .d-privacy-dialog a:focus-visible{outline:3px solid #69b4ff;outline-offset:4px}
.done48 .d-privacy-dialog{width:580px;max-width:calc(100vw - 32px);max-height:calc(100svh - 40px);padding:28px;border-radius:10px;margin:auto;overflow:auto;overscroll-behavior:contain}
.done48 .d-privacy-dialog::backdrop{background:#02080ce0;backdrop-filter:blur(4px)}
.done48 .d-privacy-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;font-size:10px;font-weight:700;letter-spacing:1.2px;color:#a8c0d1}
.done48 .d-privacy-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;background:transparent;border:1px solid #637e92;border-radius:4px;color:#fff;font:400 26px/1 Arial,sans-serif}
.done48 .d-privacy-close:hover{background:#223543}
.done48 .d-privacy-dialog h2{font:750 28px/1.15 Inter,Arial,sans-serif;letter-spacing:-.7px;margin:0 0 14px;color:#fff}
.done48 .d-privacy-dialog h2:focus{outline:0}
.done48 .d-privacy-dialog p{font-size:13px;line-height:1.65;color:#c5d2dc;margin:0;max-width:none}
.done48 .d-privacy-category{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid #344957}
.done48 .d-privacy-category:first-of-type{margin-top:12px}
.done48 .d-privacy-category h3{font:700 15px/1.35 Inter,Arial,sans-serif;letter-spacing:0;margin:0 0 7px;color:#fff}
.done48 .d-privacy-category p{font-size:12px}
.done48 .d-privacy-required{flex-shrink:0;color:#b6d3c4;background:#213a30;padding:5px 8px;font-size:10px;font-weight:650;border-radius:4px;white-space:nowrap}
.done48 .d-privacy-switch{position:relative;width:46px;height:28px;flex-shrink:0;cursor:pointer;margin:0}
.done48 .d-privacy-switch input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:inherit;z-index:1}
.done48 .d-privacy-switch span{position:absolute;inset:0;background:#4b5d6a;border:1px solid #8b9ca8;border-radius:18px}
.done48 .d-privacy-switch span:before{content:'';position:absolute;left:4px;top:4px;background:#fff;width:18px;height:18px;border-radius:50%;transition:transform .15s}
.done48 .d-privacy-switch input:checked+span{background:#0068ff;border-color:#4392ff}
.done48 .d-privacy-switch input:checked+span:before{transform:translateX(18px)}
.done48 .d-privacy-switch input:focus-visible+span{outline:3px solid #69b4ff;outline-offset:4px}
.done48 .d-privacy-switch:has(input:disabled){cursor:not-allowed}
.done48 .d-privacy-switch input:disabled+span{background:#273843;border-color:#536874}
.done48 .d-privacy-switch input:disabled+span:before{background:#aebdc7}
.done48 .d-privacy-category .d-privacy-config-status{color:#b5cfdf;margin-top:8px;font-size:11px}
.done48 .d-privacy-dialog .d-privacy-policy-link{margin-top:18px;font-size:12px}
.done48 .d-privacy-policy-link a{color:#c9e3ff;text-underline-offset:3px}
.done48 .d-privacy-dialog .d-privacy-storage-note:not(:empty){margin-top:14px;padding:10px;border:1px solid #a8874d;color:#f2d8a6;border-radius:4px}
.done48 .d-footer [data-privacy-settings]{font:inherit;color:inherit;padding:0;border:0;background:transparent;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){
 .done48 .d-privacy-banner{left:12px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));width:auto;padding:16px;max-height:calc(100svh - 165px);overflow:auto}
 .done48 .d-privacy-banner h2{font-size:15px}
 .done48 .d-privacy-banner p{font-size:12px;line-height:1.5}
 .done48 .d-privacy-actions{gap:8px;margin-top:13px}
 .done48 .d-privacy-actions button{flex:1;padding:11px 10px;font-size:11px}
 .done48 .d-privacy-dialog{padding:20px;max-height:calc(100svh - 24px)}
 .done48 .d-privacy-dialog-top{margin-bottom:15px}
 .done48 .d-privacy-dialog h2{font-size:25px}
 .done48 .d-privacy-category{gap:15px;padding:19px 0}
 .done48 .d-privacy-required{font-size:9px;padding:5px 7px}
}

/* The short enquiry stays unobstructed; its privacy notice follows the form. */
.done48 .d-privacy-banner.d-privacy-banner-inline{position:static;width:100%;max-width:none;margin:24px 0 0;box-shadow:none;padding:17px;border-radius:6px}
