@media (display-mode: standalone) {
  body { overscroll-behavior-y: contain; }
  .fix-topbar { padding-top: env(safe-area-inset-top); }
}

.fix-pwa-install-card {
  display: none;
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9999;
  background: #0f172a;
  color: #fff;
  border-radius: 16px;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .28);
  padding: 14px;
  max-width: 310px;
}
.fix-pwa-install-available .fix-pwa-install-card { display: block; }
.fix-pwa-install-card strong { display:block; font-size: 15px; margin-bottom: 4px; }
.fix-pwa-install-card span { display:block; color:#cbd5e1; font-size: 13px; line-height:1.35; margin-bottom:10px; }
.fix-pwa-install-card button { background:#2563eb; color:#fff; border:0; border-radius:10px; padding:10px 12px; font-weight:800; width:100%; }

@media (max-width: 780px) {
  html, body { min-height: 100%; }
  .fix-wrapper { display:block; }
  .fix-sidebar { width:100%; padding:12px 14px; border-radius:0 0 18px 18px; }
  .fix-sidebar nav { display:flex; gap:8px; overflow-x:auto; padding-bottom:4px; -webkit-overflow-scrolling:touch; }
  .fix-sidebar nav a { white-space:nowrap; background:rgba(255,255,255,.08); padding:10px 12px; border-radius:999px; font-size:14px; }
  .fix-sidebar nav a.active { background:#2563eb; color:#fff; }
  .fix-main { padding:14px; }
  .fix-topbar { align-items:flex-start; gap:12px; flex-direction:column; margin-bottom:16px; }
  .fix-user-box { width:100%; }
  .fix-card, .fix-panel { border-radius:14px; padding:16px; }
  .fix-table-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .fix-table { min-width:720px; }
  .fix-actions, .fix-toolbar, .fix-panel-title { align-items:stretch; }
  .fix-actions .fix-btn, .fix-toolbar .fix-btn, .fix-panel-title .fix-btn { width:100%; }
  input, select, textarea { font-size:16px !important; }
}
