/* Shared local privacy controls. Scoped so each experience keeps its own design. */
.ptl-legal{box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px;width:100%;min-width:0;padding:12px 0;font:400 12px/1.5 system-ui,sans-serif;letter-spacing:normal;text-transform:none;color:inherit}
.ptl-legal>span{white-space:nowrap}.ptl-legal nav{display:flex;flex-wrap:wrap;align-items:center;gap:2px 14px}.ptl-legal a{display:inline-flex;align-items:center;min-height:32px;padding:2px 0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px}.ptl-legal a:focus-visible{outline:2px solid currentColor;outline-offset:4px}.ptl-legal--standalone{padding:16px 24px;flex:none}.ptl-legal--compact{width:auto;gap:4px 14px;padding:4px 0}.ptl-legal--compact a{min-height:32px}
.ptl-privacy-dialog{box-sizing:border-box;position:fixed;inset:0;z-index:2147483000;width:min(580px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 32px);height:auto;margin:auto;padding:24px;overflow:auto;overscroll-behavior:contain;border:1px solid #9b90a8;border-radius:4px;background:#f8f5fa;color:#251c30;font:400 15px/1.6 system-ui,sans-serif;letter-spacing:normal;text-transform:none;text-align:left;color-scheme:light;isolation:isolate}
.ptl-privacy-dialog::backdrop{background:rgb(12 8 18 / .7)}.ptl-privacy-dialog *{box-sizing:border-box}.ptl-privacy-dialog .ptl-privacy-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.ptl-privacy-dialog h2{margin:0;font:600 23px/1.3 system-ui,sans-serif;color:inherit;letter-spacing:-.025em}.ptl-privacy-dialog h3{margin:0 0 6px;font:600 16px/1.4 system-ui,sans-serif;color:inherit}.ptl-privacy-dialog p{margin:12px 0;max-width:none;font:inherit;color:inherit}.ptl-privacy-dialog .ptl-privacy-essential{padding:16px 0;border-block:1px solid #d6cedd;margin:16px 0}.ptl-privacy-essential p{margin:0}.ptl-privacy-dialog button{appearance:none;display:inline-flex;align-items:center;justify-content:center;position:static;width:auto;min-height:44px;margin:0;padding:9px 14px;border:1px solid #92839f;border-radius:4px;background:#eee7f3;color:#251c30;font:600 14px/1.4 system-ui,sans-serif;letter-spacing:normal;text-transform:none;cursor:pointer;transform:none;box-shadow:none}.ptl-privacy-dialog button:hover{background:#e1d6e9}.ptl-privacy-dialog button:focus-visible,.ptl-privacy-dialog a:focus-visible,.ptl-privacy-dialog input:focus-visible{outline:3px solid #684886;outline-offset:3px}.ptl-privacy-dialog .ptl-privacy-close{background:transparent;flex:none}.ptl-privacy-dialog .ptl-privacy-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}.ptl-privacy-dialog .ptl-privacy-actions button{flex:1 1 auto}.ptl-privacy-dialog .ptl-privacy-links{display:flex;flex-wrap:wrap;gap:0 18px;border-top:1px solid #d6cedd;padding-top:12px;margin-top:16px}.ptl-privacy-dialog a{display:inline-flex;align-items:center;min-height:40px;color:#50356c;font:500 14px/1.5 system-ui,sans-serif;text-decoration:underline;text-underline-offset:3px}.ptl-privacy-dialog small{display:block;margin-top:12px;font:400 12px/1.5 system-ui,sans-serif}.ptl-privacy-dialog .ptl-privacy-option{display:flex;align-items:start;gap:12px;margin:16px 0;cursor:pointer}.ptl-privacy-option input{appearance:auto;flex:none;width:22px;height:22px;margin:2px 0;accent-color:#684886}.ptl-privacy-option span{display:block}.ptl-privacy-dialog .ptl-privacy-status:empty{display:none}
@media(max-width:420px){.ptl-privacy-dialog{padding:18px}.ptl-privacy-dialog .ptl-privacy-heading{gap:10px}.ptl-privacy-dialog h2{font-size:21px}.ptl-privacy-dialog .ptl-privacy-actions{flex-direction:column}}
@media(forced-colors:active){.ptl-privacy-dialog,.ptl-privacy-dialog button{border:1px solid CanvasText;background:Canvas;color:CanvasText}}

/* Keep legal actions above the controller connection hint. */
body:has(.ptl-pad-hint:not([hidden])) .ptl-legal{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
