.pwa-notices{position:fixed;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:1000;display:grid;gap:10px;max-width:520px;margin-left:auto;font-family:var(--bs-body,system-ui,sans-serif);pointer-events:none}
.pwa-notice{pointer-events:auto;background:#fff;color:#08213c;border:1px solid #d7dfe8;border-radius:16px;box-shadow:0 12px 45px #04172d26;padding:18px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.pwa-notice[hidden]{display:none}
.radio-app [data-app-notices]:has(.pwa-notice:not([hidden])){padding:8px max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}
.radio-app [data-app-notices] .pwa-notices{position:static;max-width:none;margin:0;gap:8px;pointer-events:auto}
.radio-app [data-app-notices] .pwa-notice{box-shadow:none;border-radius:14px;padding:14px;gap:10px}
.radio-app [data-app-notices] .pwa-notice p{font-size:.8rem}
.radio-app [data-app-notices] .pwa-notice strong{font-size:.875rem}
.radio-app .pwa-dialog{max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto}
.pwa-notice p{margin:0;flex:1 1 220px;font-size:.875rem;line-height:1.55}
.pwa-notice strong{display:block;font-size:.95rem}
.pwa-action,.pwa-dismiss{border:0;border-radius:10px;padding:12px 16px;font:600 .875rem var(--bs-body,system-ui,sans-serif);line-height:1.4;text-decoration:none;cursor:pointer;min-height:44px}
.pwa-action{background:#f7b718;color:#04172d;display:inline-flex;align-items:center;justify-content:center}
.pwa-action:disabled{opacity:.65;cursor:wait}
.pwa-dismiss{background:#edf1f5;color:#08213c}
.pwa-notice-actions{display:flex;flex-wrap:wrap;gap:8px}
.pwa-dialog{box-sizing:border-box;border:1px solid #d7dfe8;border-radius:24px;background:#fff;color:#08213c;max-width:min(520px,calc(100vw - 32px));padding:30px;font:1rem/1.6 var(--bs-body,system-ui,sans-serif);box-shadow:0 30px 90px #0005}
.pwa-dialog::backdrop{background:#04172db3;backdrop-filter:blur(4px)}
.pwa-dialog h2{font-family:var(--bs-display,system-ui,sans-serif);font-size:1.55rem;line-height:1.25;margin:0 0 16px}
.pwa-dialog p{margin:12px 0}
.pwa-dialog ol{padding-left:24px;margin:18px 0}
.pwa-dialog li{padding-left:4px;margin:10px 0}
.pwa-dialog .pwa-action{margin-top:8px}
.pwa-small{color:#536579;font-size:.8rem;line-height:1.6}
.pwa-action:focus-visible,.pwa-dismiss:focus-visible,.pwa-secondary-link:focus-visible{outline:3px solid #936600;outline-offset:4px}
[data-theme="dark"] .pwa-notice,[data-theme="dark"] .pwa-dialog{background:#10283f;color:#edf3f9;border-color:#36516a}
[data-theme="dark"] .pwa-small{color:#bdcbd9}
[data-theme="dark"] .pwa-dismiss{background:#213f5b;color:#edf3f9}
.pwa-offline-page{min-height:100vh;min-height:100dvh;margin:0;background:#04172d;color:#fff;display:grid;place-items:center;padding:24px;box-sizing:border-box;font-family:var(--bs-body,system-ui,sans-serif)}
.pwa-offline-card{max-width:500px;padding:32px 0}
.pwa-offline-card h1{font:800 clamp(2rem,7vw,3rem)/1.13 var(--bs-display,system-ui,sans-serif);letter-spacing:-.04em}
.pwa-offline-card p{line-height:1.7;color:#cad5df}
.pwa-offline-card .pwa-overline{color:#f7b718;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:700;margin-top:24px}
.pwa-offline-card .pwa-action{margin:12px 0 18px}
.pwa-secondary-link{display:block;color:inherit;font-size:.875rem;margin-bottom:24px;line-height:1.6}
@media(max-width:400px){.pwa-dialog{padding:22px}.pwa-notice{padding:14px;gap:10px}}
@media(orientation:landscape) and (max-height:540px){
  .radio-app [data-app-notices]:has(.pwa-notice:not([hidden])){padding:6px max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))}
  .radio-app [data-app-notices] .pwa-notice{padding:8px 10px;gap:8px;border-radius:10px}
  .radio-app [data-app-notices] .pwa-notice p{flex:1 1 160px;font-size:.72rem;line-height:1.45}
  .radio-app [data-app-notices] .pwa-notice strong{font-size:.8rem}
  .radio-app [data-app-notices] .pwa-notice-actions{gap:6px;flex-wrap:nowrap}
  .radio-app [data-app-notices] .pwa-action,.radio-app [data-app-notices] .pwa-dismiss{min-height:44px;padding:8px 10px;font-size:.75rem}
}
