.website-pwa-banner {
 --pwa-paper:var(--panel,var(--surface,#fff)); --pwa-ink:var(--text,var(--ink,#20303a));
 --pwa-accent:var(--lime,var(--accent,var(--gold,#1e4d69))); --pwa-action-ink:var(--brand-ink,var(--accent-ink,var(--bg,#fff)));
 position:sticky;top:0;z-index:45;display:flex;align-items:center;gap:12px;
 padding:max(8px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));
 width:100%;box-sizing:border-box;background:var(--pwa-paper);color:var(--pwa-ink);
 border-bottom:1px solid color-mix(in srgb,var(--pwa-ink) 20%,var(--pwa-paper));
 font:400 13px/1.4 var(--sans,system-ui,sans-serif);
}
.website-pwa-banner[hidden],.website-pwa-banner [hidden],.website-pwa-status[hidden] { display:none!important; }
.website-pwa-banner > img { width:40px;height:40px;object-fit:contain;flex-shrink:0;border-radius:8px;background:#fff; }
.website-pwa-banner-copy { display:grid;gap:2px;min-width:0;flex:1; }
.website-pwa-banner-copy strong { font-size:14px;font-weight:600;overflow-wrap:anywhere; }
.website-pwa-banner-copy span { font-size:12px;opacity:.85; }
.website-pwa-banner button,.website-pwa-dialog button { flex-shrink:0;min-height:44px;padding:8px 14px;border:1px solid currentColor;border-radius:6px;font:500 14px/1.4 var(--sans,system-ui,sans-serif);background:transparent;color:inherit;cursor:pointer;touch-action:manipulation; }
.website-pwa-banner .website-pwa-install { background:var(--pwa-accent);color:var(--pwa-action-ink);border-color:var(--pwa-accent); }
.website-pwa-banner .website-pwa-dismiss { display:grid;place-items:center;min-width:44px;width:44px;padding:10px;border:0;background:transparent;color:var(--pwa-ink); }
.website-pwa-dismiss svg { display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round; }
.website-pwa-banner button:hover { filter:brightness(.95); }
.website-pwa-banner button:focus-visible,.website-pwa-dialog button:focus-visible { outline:2px solid currentColor;outline-offset:3px; }
body[data-pwa-banner] [data-pwa-overlay-header] { top:var(--website-pwa-banner-height,0px); }
body.uiweb[data-pwa-banner] .admin-layout .sidebar,body.uiweb-alpantek[data-pwa-banner] .sidebar { top:var(--website-pwa-banner-height,0px);height:calc(100dvh - var(--website-pwa-banner-height,0px));min-height:0;max-height:calc(100dvh - var(--website-pwa-banner-height,0px)); }
.website-pwa-status { position:fixed;z-index:9999;inset:auto 12px max(12px,env(safe-area-inset-bottom));margin:0 auto;max-width:620px;padding:12px 16px;background:#202124;color:#fff;border:1px solid #777;border-radius:8px;font:400 14px/1.5 system-ui;text-align:center;box-sizing:border-box; }
.website-pwa-dialog { box-sizing:border-box;width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:24px;border:1px solid #82939e;border-radius:10px;background:var(--panel,var(--surface,#fff));color:var(--text,var(--ink,#20303a));font:400 16px/1.6 var(--sans,system-ui,sans-serif);overflow:auto;scrollbar-width:none; }
.website-pwa-dialog::backdrop { background:#0008; }
.website-pwa-dialog h2 { font:600 20px/1.3 var(--sans,system-ui,sans-serif);margin:0 0 12px; }
.website-pwa-dialog p { margin:0 0 20px; }
.website-pwa-dialog::-webkit-scrollbar { display:none; }
.website-offline { margin:0;min-height:100dvh;display:grid;place-items:center;background:#f7f7f5;color:#202124;font:18px/1.6 system-ui;padding:24px;box-sizing:border-box; }
.website-offline main { max-width:540px; }
.website-offline a { color:inherit;display:inline-block;padding:12px 0;min-height:44px;box-sizing:border-box; }
@media(min-width:761px) { .website-pwa-banner { justify-content:center;padding-inline:24px; }.website-pwa-banner-copy { flex:0 1 440px; } }
@media(max-width:420px) { .website-pwa-banner { gap:8px;padding-inline:12px; }.website-pwa-banner > img { width:36px;height:36px; }.website-pwa-banner-copy span { font-size:11px; }.website-pwa-banner button { padding-inline:10px; }.website-pwa-banner .website-pwa-dismiss { width:44px;padding:10px; } }
@media(prefers-color-scheme:dark) { .website-offline { background:#202124;color:#f7f7f5; } }
@media(prefers-reduced-motion:reduce) { .website-pwa-banner,.website-pwa-dialog { scroll-behavior:auto;animation:none;transition:none; } }
