.pwa-install-banner{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:12px 12px 12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text,var(--ink))}
.pwa-install-banner[hidden],.pwa-settings[hidden],.pwa-status[hidden],.pwa-status [hidden]{display:none!important}
.pwa-install-banner img{flex:0 0 48px;border-radius:11px}
.pwa-install-banner div{flex:1;min-width:0}
.pwa-install-banner strong{display:block;font-size:15px}
.pwa-install-banner p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.pwa-install-action{flex:0 0 auto;min-height:40px;padding:0 16px;border:0;border-radius:20px;background:var(--accent);color:#fff;font-size:14px;cursor:pointer}
.pwa-install-close{flex:0 0 32px;width:32px;height:32px;border:0;border-radius:16px;background:transparent;color:var(--muted);font-size:20px;line-height:1;cursor:pointer}
.pwa-settings{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.pwa-settings h3{margin:0 0 4px}
.pwa-settings p{margin:0}
.pwa-sheet{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;padding:16px 16px calc(16px + env(safe-area-inset-bottom));background:#000a}
.pwa-sheet-card{width:100%;max-width:420px;max-height:calc(100dvh - 32px);overflow:auto;padding:22px 20px 18px;border:1px solid #2a2a2a;border-radius:16px;background:#111;color:#f1f1f1;text-align:left}
.pwa-sheet-card img{display:block;margin:0 auto 10px;border-radius:14px}
.pwa-sheet-card h2{margin:0 0 12px;font-size:19px;text-align:center}
.pwa-sheet-card ol{margin:0 0 12px;padding-left:22px;line-height:1.75;font-size:15px}
.pwa-note{margin:0 0 8px;color:#a8a8a8;font-size:12px;line-height:1.6}
.pwa-sheet-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.pwa-sheet-actions button{flex:1 1 120px;min-height:44px;font-size:15px}
.pwa-sheet-actions .secondary{background:#1d1d1d;border-color:#333;color:#f1f1f1}
.pwa-sheet-actions .text-btn{flex-basis:100%;min-height:36px;border:0;background:transparent;color:#8f8f8f;font-size:13px}
.pwa-status{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));z-index:900;display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);transform:translateX(-50%);padding:8px 8px 8px 14px;border:1px solid #333;border-radius:18px;background:#161616ee;color:#f1f1f1;font-size:12px;line-height:1.5;box-shadow:0 4px 18px #0006}
.pwa-status span{min-width:0}
.pwa-status-action{flex:0 0 auto;min-height:30px;padding:0 12px;border:0;border-radius:15px;background:#1687ff;color:#fff;font-size:12px}
.pwa-status-close{flex:0 0 28px;width:28px;height:28px;border:0;border-radius:14px;background:transparent;color:#999;font-size:17px;line-height:1}
@media(min-width:801px) and (pointer:fine){.pwa-sheet{align-items:center}}
@media(max-width:800px),(max-width:1100px) and (pointer:coarse){
 body.mobile-workspace .pwa-install-banner{margin:0 0 12px}
 /* Landscape notches sit at the sides; keep content clear of them without widening the page. */
 body,body.desktop-workspace{box-sizing:border-box;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
 .pwa-status{bottom:calc(58px + env(safe-area-inset-bottom))}
}
