.privacy-banner,dialog.privacy-dialog{color:#292337;background:#fffdfb;border:1px solid #e1d9eb;box-shadow:0 12px 40px #20182d24;font:400 14px/1.5 system-ui,sans-serif;text-align:left;box-sizing:border-box}
.privacy-banner[hidden],dialog.privacy-dialog [hidden]{display:none!important}
.privacy-banner{position:fixed;z-index:1800;bottom:20px;left:50%;transform:translateX(-50%);width:min(900px,calc(100% - 40px));padding:18px 22px;border-radius:16px;display:flex;align-items:center;gap:24px}
.privacy-banner-copy{flex:1;min-width:0}.privacy-banner p{font-size:14px;margin:4px 0 0;color:#5a5365}.privacy-banner strong{font-size:16px;font-weight:650}
.privacy-banner a,dialog.privacy-dialog a{color:#65498b;text-decoration:underline;text-underline-offset:3px}
.privacy-actions{display:flex;gap:10px;flex-wrap:wrap}.privacy-banner .privacy-actions{flex-shrink:0}
.privacy-banner button,dialog.privacy-dialog button{font:600 14px/1.3 system-ui,sans-serif;color:#523871;background:#f5f0fa;border:1px solid #cbbbdc;border-radius:9px;padding:11px 15px;cursor:pointer;min-height:44px}
.privacy-banner button:hover,dialog.privacy-dialog button:hover{background:#ece3f5}
.privacy-banner button.privacy-primary,dialog.privacy-dialog button.privacy-primary{color:#fff;background:#76549c;border-color:#76549c}
.privacy-banner button.privacy-primary:hover,dialog.privacy-dialog button.privacy-primary:hover{background:#654688;border-color:#654688}
.privacy-banner button:focus-visible,.privacy-banner a:focus-visible,dialog.privacy-dialog button:focus-visible,dialog.privacy-dialog a:focus-visible{outline:3px solid #9a77bd;outline-offset:3px}
.privacy-banner button:disabled,dialog.privacy-dialog button:disabled{color:#665c70;background:#eee9f2;border-color:#dcd3e5;cursor:default}
dialog.privacy-dialog{width:min(520px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:24px;border-radius:20px}dialog.privacy-dialog::backdrop{background:#1e153966}
.privacy-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}dialog.privacy-dialog h2{margin:0;font-size:22px;line-height:1.25;font-family:inherit;color:inherit}
dialog.privacy-dialog [data-privacy-close]{flex:0 0 44px;width:44px;padding:0;font-size:26px;font-weight:400;line-height:1;background:transparent;border-color:transparent;color:#716578}
dialog.privacy-dialog [data-privacy-close]:hover{background:#f5f0fa}
dialog.privacy-dialog .privacy-intro{margin:4px 0 18px;color:#6c6377}
.privacy-setting{padding:16px;border:1px solid #e6deee;border-radius:12px;margin:12px 0;background:#fdfbfd}
.privacy-setting-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.privacy-setting h3{font:650 15px/1.35 system-ui,sans-serif;margin:0;color:#342a43}
.privacy-badge{font-size:11px;line-height:1.4;font-weight:600;color:#665277;background:#eee7f4;padding:4px 8px;border-radius:6px}
dialog.privacy-dialog .privacy-setting p{font-size:14px;margin:8px 0 0;color:#645a70}.privacy-setting button{margin-top:12px}
dialog.privacy-dialog [data-privacy-status]{font-size:12px;margin-top:10px;color:#5a4b6c}
dialog.privacy-dialog .privacy-detail{font-size:12px}
dialog.privacy-dialog .privacy-notice{font-size:12px;line-height:1.5;color:#615465;padding:12px;background:#f4eff8;border-radius:10px;margin:12px 0}
.privacy-notice p{margin:0 0 10px}.privacy-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.privacy-dialog-footer>a{font-size:13px}.privacy-dialog-footer .privacy-primary{min-width:94px}
@media(max-width:700px){.privacy-banner{bottom:max(12px,env(safe-area-inset-bottom));width:calc(100% - 24px);padding:16px;display:block;max-height:50dvh;overflow:auto}.privacy-banner .privacy-actions{margin-top:14px}.privacy-banner .privacy-actions button{flex:1}dialog.privacy-dialog{padding:18px}dialog.privacy-dialog h2{font-size:21px}}
[data-privacy-settings]{font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;border:0;background:transparent;padding:2px 0}.app-footer [hidden]{display:none!important}
