.access-brand { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.access-brand > a { min-width: 0; }
.access-brand .brand-icon { filter: drop-shadow(0 0 1px rgb(45 39 36 / 75%)); }
.pwa-install-button { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; min-height: 44px; padding: 9px 13px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); color: var(--text); font-size: 12px; font-weight: 600; line-height: 1.4; white-space: nowrap; }
.pwa-install-button:hover { border-color: var(--accent); }
.pwa-install-button:disabled { opacity: .6; }
.app-header .pwa-install-button { border-color: #756b65; background: transparent; color: #fffaf6; }
.app-header .pwa-install-button:hover { background: #433a35; }
.app-header .header-actions .pwa-install-button { min-height: 44px; }
.app-header:has([data-pwa-install]) { flex-wrap: wrap; }
.app-header:has([data-pwa-install]) .header-actions { flex-wrap: wrap; min-width: 0; }
.pwa-install-dialog { width: min(540px, calc(100vw - 32px)); max-height: calc(100svh - 32px); margin: auto; padding: 26px; overflow-y: auto; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); color: var(--text); box-shadow: 0 20px 64px rgb(29 22 20 / 15%); }
.pwa-install-dialog::backdrop { background: rgb(29 22 20 / 48%); }
.pwa-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.pwa-dialog-heading h2 { font-size: 22px; line-height: 1.4; letter-spacing: -.5px; }
.pwa-dialog-close { min-width: 52px; min-height: 44px; padding: 8px; flex: 0 0 auto; border: 1px solid var(--line); border-radius: 6px; background: transparent; color: var(--muted); font-size: 12px; }
.pwa-dialog-description { margin-top: 12px; color: var(--muted); font-size: 14px; line-height: 1.8; word-break: keep-all; }
.pwa-platforms { display: grid; gap: 12px; margin-top: 22px; }
.pwa-platform { padding: 16px; border: 1px solid var(--line-soft); border-radius: 7px; background: var(--surface-subtle); }
.pwa-platform h3 { font-size: 14px; font-weight: 650; }
.pwa-platform p { margin-top: 7px; color: var(--muted); font-size: 13px; line-height: 1.8; word-break: keep-all; }
.pwa-dialog-note { margin-top: 20px; padding-top: 17px; border-top: 1px solid var(--line-soft); color: var(--muted); font-size: 12px; line-height: 1.8; word-break: keep-all; }
@media (max-width: 640px) {
  .access-brand { gap: 10px; }
  .pwa-install-button { padding-right: 11px; padding-left: 11px; }
  .pwa-install-dialog { padding: 20px; }
  .pwa-dialog-heading h2 { font-size: 20px; }
  .pwa-platform { padding: 14px; }
}
@media (display-mode: standalone) {
  [data-pwa-install] { display: none !important; }
}
@media print {
  .pwa-install-button, .pwa-install-dialog { display: none !important; }
}
