.pwa-install-banner[hidden],.pwa-install-modal[hidden]{display:none!important}
.pwa-install-banner{max-width:1080px;margin:18px auto;padding:0 22px;color:var(--text,#2B3341);font-family:var(--fb,'DM Sans',sans-serif)}
.pwa-install-state{display:none;align-items:center;justify-content:space-between;gap:22px;padding:18px 20px;background:var(--surface,#fff);border:1px solid var(--line,#E8DDC8);border-left:3px solid var(--gold,#C9A227);border-radius:8px;box-shadow:0 14px 34px rgba(42,36,25,.08)}
.pwa-install-banner[data-pwa-state="installable"] [data-pwa-view="installable"],.pwa-install-banner[data-pwa-state="ios-safari"] [data-pwa-view="ios-safari"],.pwa-install-banner[data-pwa-state="ios-non-safari"] [data-pwa-view="ios-non-safari"]{display:flex}
.pwa-install-copy{min-width:0}.pwa-install-kicker{display:block;margin-bottom:5px;color:var(--gold,#C9A227);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.pwa-install-copy h2,.pwa-install-dialog h2{margin:0;color:var(--navy,#07152F);font-family:var(--ft,'Playfair Display',serif);font-size:22px;line-height:1.18;letter-spacing:0}
.pwa-install-copy p{margin:5px 0 0;color:var(--muted,#7B756A);font-size:13px;line-height:1.55}
.pwa-install-action{flex:0 0 auto;min-height:42px;padding:11px 17px;border:1px solid var(--blue,#10234B);border-radius:999px;background:var(--blue,#10234B);color:#fff;font:800 11px/1 var(--fb,'DM Sans',sans-serif);letter-spacing:.08em;cursor:pointer;white-space:nowrap}
.pwa-install-action.secondary{background:transparent;color:var(--blue,#10234B)}
.pwa-install-banner[data-pwa-context="reader"]{margin:0 0 18px;padding:0}.pwa-install-banner[data-pwa-context="reader"] .pwa-install-state{padding:14px 16px;box-shadow:none}.pwa-install-banner[data-pwa-context="reader"] .pwa-install-copy h2{font-size:18px}.pwa-install-banner[data-pwa-context="reader"] .pwa-install-copy p{display:none}
.pwa-install-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px;font-family:var(--fb,'DM Sans',sans-serif)}
.pwa-install-backdrop{position:absolute;inset:0;background:rgba(7,21,47,.64);backdrop-filter:blur(4px)}
.pwa-install-dialog{position:relative;width:min(460px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:28px;background:var(--surface,#fff);border:1px solid var(--line,#E8DDC8);border-radius:8px;box-shadow:0 28px 80px rgba(7,21,47,.3);color:var(--text,#2B3341)}
.pwa-install-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border:1px solid var(--line,#E8DDC8);border-radius:50%;background:var(--surface,#fff);color:var(--blue,#10234B);font-size:25px;line-height:1;cursor:pointer}
.pwa-install-steps{display:grid;gap:12px;margin:22px 0;padding:0;list-style:none}.pwa-install-steps li{display:grid;grid-template-columns:30px 1fr;gap:11px;align-items:start}.pwa-install-steps li>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(201,162,39,.14);color:var(--gold,#C9A227);font-size:12px;font-weight:900}.pwa-install-steps p{margin:4px 0 0;font-size:14px;line-height:1.5}
@media(max-width:680px){.pwa-install-banner{margin:14px auto;padding:0 16px}.pwa-install-state{align-items:stretch;flex-direction:column;gap:14px;padding:16px}.pwa-install-action{width:100%;white-space:normal}.pwa-install-copy h2{font-size:20px}.pwa-install-dialog{padding:24px 20px}.pwa-install-banner[data-pwa-context="reader"]{padding:0}.pwa-install-banner[data-pwa-context="reader"] .pwa-install-state{gap:12px}.pwa-install-banner[data-pwa-context="reader"] .pwa-install-action{min-height:40px}}
