.pwa-install-item[hidden], .pwa-status[hidden], .pwa-status [hidden], #ignitionInstallHelp[hidden] { display: none !important; }
.pwa-install-item { flex: 0 0 auto; min-width: 0; position: relative; }
.pwa-install-item #installIgnition { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; max-width: 100%; padding: 10px 12px; border: 1px solid #959ba4; border-radius: 10px; background: linear-gradient(135deg,#292b2f,#141517); box-shadow: inset 0 1px 0 #ffffff1c; color: #ffb073; font: 700 12px/1.35 'Helvetica Neue',Arial,sans-serif; text-align: left; cursor: pointer; white-space: nowrap; }
.pwa-install-item #installIgnition::before { content: ''; flex: 0 0 18px; width: 18px; height: 18px; background: url('/assets/ip-app-192.png') center/contain no-repeat; }
.pwa-install-item #installIgnition:hover, .pwa-install-item #installIgnition[aria-expanded='true'] { border-color: #ff9c51; background: #302118; color: #ffd1ab; }
.pwa-install-item #installIgnition:focus-visible { outline: 3px solid #ffad68; outline-offset: 3px; }
.pwa-install-item p { position: absolute; top: 100%; left: 0; width: 280px; max-width: calc(100vw - 64px); z-index: 5; margin: 8px 0; padding: 12px; border: 1px solid #666b73; border-radius: 10px; background: #161719; color: #e0e1e4; font: 14px/1.55 Arial,sans-serif; overflow-wrap: anywhere; }
.pwa-status { box-sizing: border-box; width: calc(100% - 32px); max-width: 680px; margin: 20px auto; padding: 14px 16px; border: 1px solid #555a62; border-left: 3px solid #f78b3c; border-radius: 12px; color: #d9dadd; background: linear-gradient(135deg,#25262a,#141517); font: 14px/1.6 'Helvetica Neue',Arial,sans-serif; }
.pwa-status p { margin: 0; overflow-wrap: anywhere; }
.pwa-status p+p { margin-top: 8px; }
@media(max-width:1280px) { .pwa-install-item #installIgnition { width: 100%; justify-content: flex-start; padding: 12px 14px; min-height: 48px; font-size: 13px; white-space: normal; } .pwa-install-item p { position: static; width: 100%; max-width: none; box-sizing: border-box; } }
.offline-page { margin: 0; background: #090909; color: #f5f2ed; min-height: 100vh; display: grid; place-items: center; font: 16px/1.6 Arial,sans-serif; }
.offline-card { max-width: 480px; padding: 32px; }
.offline-card img { display: block; width: 96px; height: 96px; }
.offline-card h1 { line-height: 1.1; font-size: 2.1rem; }
.offline-card a { display: inline-block; color: #ffb668; min-height: 44px; padding: 8px 0; }
.offline-card p { color: #c5c0bb; }
