:root {
  --vk-inset-top: 0px;
  --vk-inset-bottom: 0px;
  --vk-inset-left: 0px;
  --vk-inset-right: 0px;
}
/* Native banner uses resize mode: VK shrinks the viewport itself. */
.main-menu-overlay {
  padding-top: max(10px, env(safe-area-inset-top, 0px), var(--vk-inset-top)) !important;
  padding-bottom: max(10px, env(safe-area-inset-bottom, 0px), var(--vk-inset-bottom)) !important;
}
.main-menu-panel {
  max-height: calc(100dvh - max(10px, env(safe-area-inset-top, 0px), var(--vk-inset-top)) - max(10px, env(safe-area-inset-bottom, 0px), var(--vk-inset-bottom))) !important;
}
.overlay-panel {
  padding-top: max(10px, env(safe-area-inset-top, 0px), var(--vk-inset-top));
  padding-bottom: max(10px, env(safe-area-inset-bottom, 0px), var(--vk-inset-bottom));
}
/* Allow save cards to keep their controls inside the scrolling grid. */
.saves-panel .save-grid {
  grid-auto-rows: max-content;
  align-content: start;
}
.saves-panel .save-slot {
  min-height: 145px;
}
.sync-link-panel { padding: 14px; margin: 10px 0; border: 1px solid #6d4b3c; border-radius: 10px; background: #211a19; }
.sync-link-panel p { font-size: 13px; line-height: 1.5; margin: 8px 0; }
.sync-link-panel summary { cursor: pointer; font-size: 15px; font-weight: 600; }
.sync-link-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.sync-link-actions input { flex: 1 1 200px; min-width: 0; padding: 9px; border: 1px solid #7b5d4e; border-radius: 6px; background: #161313; color: #f2ded0; font-size: 14px; }
.sync-link-actions button { padding: 9px 12px; border: 1px solid #8a6b50; border-radius: 6px; background: #36251c; color: #f2ded0; cursor: pointer; }
.sync-link-actions button:disabled { opacity: .5; cursor: default; }
.sync-link-code { display: block; width: 100%; box-sizing: border-box; font: 14px monospace; user-select: all; padding: 10px; margin-top: 8px; border: 1px solid #7b5d4e; background: #141111; color: #f2c598; }
