.browser-push-prompt[hidden],#browser-push-settings[hidden]{display:none!important}
.browser-push-prompt{position:fixed;top:112px;right:20px;bottom:auto;left:auto;z-index:1040;width:370px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 128px);overflow-y:auto;padding:20px;background:#fff;color:#27333c;border:1px solid #dee2e6;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.16);text-align:left}
.browser-push-prompt h2{font-size:17px;line-height:1.4;font-weight:600;margin:0 0 8px}
.browser-push-prompt p{font-size:14px;line-height:1.6;margin:0 0 16px}
.browser-push-actions{display:flex;flex-wrap:wrap;gap:8px}
.browser-push-prompt .browser-push-status{font-size:13px;margin:12px 0 0}
.browser-push-prompt .browser-push-status:empty{display:none}
@media(max-width:575px){.browser-push-prompt{left:16px;right:16px;width:auto;padding:16px}}
@media print{.browser-push-prompt,#browser-push-settings{display:none!important}}

/* Subscription controls are kept in a dialog, away from the footer layout. */
#browser-push-settings[hidden]{display:none!important}
.browser-push-dialog{width:440px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #dee2e6;border-radius:10px;color:#27333c;background:#fff;box-shadow:0 16px 60px rgba(0,0,0,.2);text-align:left}
.browser-push-dialog:not([open]){display:none}
.browser-push-dialog::backdrop{background:rgba(24,36,48,.45)}
.browser-push-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e9ecef}
.browser-push-dialog-header h2{margin:0;font-size:20px;line-height:1.4;font-weight:400}
.browser-push-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border:0;border-radius:4px;color:#69737d;background:transparent;cursor:pointer}
.browser-push-close:hover{background:#f1f3f5;color:#27333c}
.browser-push-dialog-body{padding:20px}
.browser-push-state{margin:0 0 8px;font-size:15px;font-weight:500}
.browser-push-description{margin:0 0 16px;font-size:14px;line-height:1.6;color:#68737d}
.browser-push-dialog-status{margin:12px 0 0;font-size:13px;line-height:1.5}
.browser-push-dialog-status:empty{display:none}
.browser-push-test-code{margin-top:24px;border-top:1px solid #e9ecef;padding-top:16px}
.browser-push-test-code summary{cursor:pointer;font-size:13px;color:#68737d}
.browser-push-test-code p.small{color:#68737d;margin:12px 0;font-size:13px;line-height:1.6}
.browser-push-code-row{display:flex;align-items:center;gap:8px;margin-top:6px}
.browser-push-code-row input{min-width:0;flex:1;font-size:12px}
.browser-push-code-row button{flex-shrink:0}
.browser-push-dialog-footer{display:flex;justify-content:flex-end;padding:12px 20px;border-top:1px solid #e9ecef}
@media print{.browser-push-dialog{display:none!important}}
