/* Progressive enhancement over the existing public/workspace design; no application data is cached. */
.pwa-disconnected>header,.pwa-disconnected>main,.pwa-disconnected>footer{display:none!important}
#pwa-root [hidden],.pwa-bottom-nav[hidden]{display:none!important}.pwa-install-hint,.pwa-update{position:fixed;inset-inline-end:20px;bottom:calc(22px + env(safe-area-inset-bottom));z-index:1040;display:flex;align-items:center;gap:10px;background:var(--surface,#fff);color:var(--text,#182235);border:1px solid var(--border,#dfe5ed);padding:8px;border-radius:18px;box-shadow:0 10px 35px #13243a1c;max-width:calc(100vw - 32px)}.pwa-install-hint button,.pwa-update button,#pwa-install-dialog button,#pwa-offline button{border:0;border-radius:12px;min-height:44px;padding:10px 16px;background:#2563eb;color:#fff;font:inherit;font-size:14px;cursor:pointer}.pwa-install-hint button:last-child,.pwa-update button:last-child{background:transparent;color:inherit;padding-inline:12px}.pwa-update{inset-inline-start:20px;inset-inline-end:auto;flex-wrap:wrap;font-size:14px}.pwa-update span{padding-inline:6px}#pwa-install-dialog{border:1px solid var(--border,#dfe5ed);border-radius:26px;padding:32px;max-width:min(420px,calc(100vw - 32px));background:var(--surface,#fff);color:var(--text,#182235);line-height:1.8}#pwa-install-dialog::backdrop{background:#0b122080;backdrop-filter:blur(5px)}#pwa-install-dialog img{border-radius:16px}#pwa-install-dialog h2{font-size:25px;margin-block:20px 12px}#pwa-install-dialog p{color:var(--text-muted,#526078)}#pwa-install-dialog .pwa-dialog-close{position:absolute;inset-inline-end:12px;top:12px;background:transparent;color:inherit;font-size:22px}
#pwa-offline{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:24px;background:var(--bg,#f5f7fb);color:var(--text,#182235);font-family:inherit}.pwa-disconnected{overflow:hidden!important}.pwa-offline-card{width:100%;max-width:420px;text-align:center;padding:38px 24px;border:1px solid var(--border,#dfe5ed);border-radius:28px;background:var(--surface,#fff)}.pwa-signal{display:grid;place-items:center;width:72px;height:72px;border-radius:24px;margin:0 auto 24px;background:#2563eb12;color:#2563eb;font-size:42px}.pwa-offline-card h2{font-size:26px;line-height:1.4}.pwa-offline-card p{color:var(--text-muted,#526078);line-height:1.8}.pwa-retry-status{min-height:24px;font-size:13px;margin:12px 0 0}
.pwa-share-page{max-width:760px;margin:auto;padding:40px 0 70px}.pwa-eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;color:#2563eb}.pwa-share-page h1{font-size:clamp(30px,5vw,46px);font-weight:800;line-height:1.3;margin-block:14px}.pwa-share-page>p,.pwa-share-note{color:var(--text-muted,#526078);line-height:1.8}.pwa-share-card{margin-block:28px 20px;padding:28px;border-radius:24px;border:1px solid var(--border,#dfe5ed);background:var(--surface,#fff);overflow-wrap:anywhere}.pwa-share-card h2{font-size:20px}.pwa-share-card ul{padding-inline-start:22px;line-height:2}.pwa-share-url{background:var(--surface-2,#f3f6fa);padding:16px;border-radius:12px;overflow-wrap:anywhere}.pwa-share-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.pwa-share-note{font-size:13px}.pwa-share-card .btn{min-height:48px}
.pwa-bottom-nav{display:none}.pwa-install-menu{background:transparent;border:0;color:inherit;text-align:start;min-height:44px;padding:8px 16px}#pwa-root :focus-visible,.pwa-bottom-nav :focus-visible{outline:3px solid #2563eb;outline-offset:4px}
@media(max-width:991px){.workspace-topbar{padding-top:env(safe-area-inset-top);height:calc(62px + env(safe-area-inset-top))}.workspace-stage{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.pwa-bottom-nav{display:flex;position:fixed;inset-inline:0;bottom:0;z-index:1040;align-items:stretch;justify-content:space-around;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--app-surface,#fff);border-top:1px solid var(--app-line,#dfe5ed);box-shadow:0 -6px 25px #10234206}.pwa-bottom-nav a,.pwa-bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:54px;flex:1;min-width:0;border:0;background:transparent;color:var(--app-muted,#526078);text-decoration:none;font:inherit;font-size:11px;border-radius:12px}.pwa-bottom-nav i{font-size:21px}.pwa-bottom-nav [aria-current=page]{color:#2563eb;background:#2563eb0d}.pwa-bottom-nav .pwa-create-link{color:#fff;background:#2563eb;max-width:82px;box-shadow:0 4px 14px #2563eb26}.workspace-page .pwa-install-hint,.workspace-page .pwa-update{bottom:calc(88px + env(safe-area-inset-bottom))}.workspace-page .ws-feedback{inset-block-end:calc(90px + env(safe-area-inset-bottom))}.workspace-page input,.workspace-page textarea,.workspace-page select{scroll-margin-bottom:140px}.workspace-page .workspace-sidebar{padding-top:env(safe-area-inset-top)}.pwa-share-card{padding:22px 18px}}
@media(display-mode:standalone){body{overscroll-behavior-y:none}.pwa-install-hint{display:none!important}}
@media(display-mode:standalone){body:not(.workspace-page){padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}}
@media(prefers-reduced-motion:reduce){#pwa-root *,.pwa-bottom-nav *{scroll-behavior:auto;animation:none!important;transition:none!important}}

[data-pwa-open-install][hidden]{display:none!important}
