/*
 * Phone-only menu shell.
 * This is a compatibility mobile layer: keep rules scoped to
 * html.is-variko-phone so it can be replaced without touching desktop styles.
 */
html.is-variko-phone #workspace_root.menu-workspace {
  --menu-mobile-safe-top: env(safe-area-inset-top, 0px);
  --menu-mobile-safe-right: env(safe-area-inset-right, 0px);
  --menu-mobile-safe-bottom: env(safe-area-inset-bottom, 0px);
  --menu-mobile-safe-left: env(safe-area-inset-left, 0px);
  --left-zone-width: 100vw;
  --right-zone-width: 0px;
  --menu-side-collapsed-width: 0px;
  --menu-center-pad-x: 8px;
  --menu-catalog-pad-x: 10px;
  --menu-catalog-pad-top: 12px;
  --menu-catalog-pad-bottom: 0px;
  --menu-topbar-height: 54px;
}

html.is-variko-phone #workspace_root.menu-workspace button,
html.is-variko-phone #workspace_root.menu-workspace a,
html.is-variko-phone #workspace_root.menu-workspace [role="button"],
html.is-variko-phone #workspace_root.menu-workspace .vk-btn {
  touch-action: manipulation;
}

html.is-variko-phone #workspace_root.menu-workspace.menu-mobile-filters-open {
  --menu-topbar-height: var(--menu-mobile-filter-topbar-height, min(78vh, 260px)) !important;
}

html.is-variko-phone #workspace_root.menu-workspace #right_zone,
html.is-variko-phone #workspace_root.menu-workspace .menu-floating-panel-open--right {
  display: none !important;
}

html.is-variko-phone #workspace_root.menu-workspace.is-profile-landing #left_zone {
  pointer-events: auto;
  transform: translateX(0) !important;
}

html.is-variko-phone #workspace_root.menu-workspace.menu-left-collapsed #top_zone,
html.is-variko-phone #workspace_root.menu-workspace.menu-left-collapsed #content_zone,
html.is-variko-phone #workspace_root.menu-workspace.menu-left-collapsed #bottom_zone {
  --menu-safe-left: 0px;
}

html.is-variko-phone #workspace_root.menu-workspace #top_zone {
  position: relative;
  padding-left: 0;
  padding-right: 0;
  overflow: hidden;
  transition: none;
}

html.is-variko-phone #workspace_root.menu-workspace.menu-left-collapsed #top_zone {
  padding-left: 0;
}

html.is-variko-phone .menu-home-lead {
  margin: 2px 0 10px;
  font-size: 12px;
  line-height: 1.45;
}

html.is-variko-phone .menu-home-wrap.is-guest-home {
  display: block;
  align-items: initial;
}

html.is-variko-phone .menu-home-wrap.is-guest-home .menu-home-scroll {
  height: 100%;
}

html.is-variko-phone .menu-home-hero {
  display: block;
  min-height: 0;
  aspect-ratio: auto;
  padding:
    22px
    calc(20px + var(--menu-mobile-safe-right, 0px))
    calc(36px + var(--menu-mobile-safe-bottom, 0px))
    calc(20px + var(--menu-mobile-safe-left, 0px));
}

html.is-variko-phone .menu-home-hero-copy {
  grid-template-rows: none;
  gap: 11px;
  height: auto;
  align-content: start;
  max-width: 100%;
}

html.is-variko-phone .menu-home-title-spacer {
  display: none;
}

html.is-variko-phone .menu-home-hero-copy.is-auth-open {
  grid-template-rows: none;
}

html.is-variko-phone .menu-home-auth-panel {
  align-self: start;
  width: 100%;
  margin-top: 2px;
}

html.is-variko-phone .menu-home-auth-form {
  min-height: 0;
  grid-template-rows: auto auto;
  gap: 10px;
}

html.is-variko-phone .menu-home-auth-fields {
  align-self: start;
  gap: 8px;
}

html.is-variko-phone .menu-home-hero-version {
  right: 16px;
  bottom: 11px;
  font-size: 10px;
}

html.is-variko-phone .menu-auth-field {
  overflow: hidden;
  -webkit-tap-highlight-color: transparent;
}

html.is-variko-phone .menu-auth-field:focus-within {
  border-color: color-mix(in srgb, var(--vk-app-accent-current) 42%, var(--vk-analysis-inset-surface-border) 58%);
}

html.is-variko-phone .menu-auth-field input,
html.is-variko-phone .menu-auth-field input:focus,
html.is-variko-phone .menu-auth-field input:focus-visible,
html.is-variko-phone .menu-auth-field input:active {
  appearance: none;
  -webkit-appearance: none;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -webkit-tap-highlight-color: transparent;
}

html.is-variko-phone .menu-auth-field input:-webkit-autofill,
html.is-variko-phone .menu-auth-field input:-webkit-autofill:hover,
html.is-variko-phone .menu-auth-field input:-webkit-autofill:focus {
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  background-clip: text !important;
  box-shadow: var(--vk-shadow-autofill-inset) !important;
  -webkit-box-shadow: var(--vk-shadow-autofill-inset) !important;
  -webkit-text-fill-color: var(--vk-text-primary) !important;
  caret-color: var(--vk-text-primary);
  transition: background-color 999999s ease-out, color 999999s ease-out;
}

html.is-variko-phone #workspace_root.menu-workspace #content_zone,
html.is-variko-phone #workspace_root.menu-workspace #bottom_zone {
  padding-right: 0;
}

html.is-variko-phone .menu-floating-panel-open {
  top: calc(8px + var(--menu-mobile-safe-top, 0px));
  transform: none;
  transition: none;
}

html.is-variko-phone .menu-floating-panel-open--left {
  left: calc(8px + var(--menu-mobile-safe-left, 0px));
}

html.is-variko-phone #menu_left_brand [data-panel-toggle="left-close"] {
  display: none !important;
}

html.is-variko-phone #workspace_root.menu-profile-left-can-collapse #menu_left_brand.is-profile-mode [data-panel-toggle="left-close"] {
  display: inline-flex !important;
}

html.is-variko-phone #menu_left_zone_layout[data-left-panel-mode="home"] .menu-shell-scroll {
  display: grid;
  grid-auto-rows: max-content;
  align-content: start;
  gap: 14px;
  overflow-y: auto;
  overflow-x: hidden;
}

html.is-variko-phone .menu-collection-nav-panel .menu-content-nav-edit {
  display: none;
}

html.is-variko-phone .menu-collection-nav-panel .menu-content-nav-item {
  gap: var(--menu-panel-inline-action-gap);
}

html.is-variko-phone .menu-profile-panel .menu-profile-collection-nav-list .menu-content-nav-item,
html.is-variko-phone .menu-profile-panel .menu-profile-selection-nav-list .menu-content-nav-item {
  gap: var(--menu-panel-inline-action-gap);
}

html.is-variko-phone .menu-collection-nav-panel .menu-content-nav-action-spacer,
html.is-variko-phone .menu-profile-panel .menu-content-nav-action-spacer {
  display: none;
}

.menu-mobile-filter-toggle {
  display: none;
}

.menu-topbar-filter-controls .menu-mobile-filter-apply {
  display: none;
}

html.is-variko-phone .menu-mobile-filter-toggle {
  position: absolute;
  top: calc(8px + var(--menu-mobile-safe-top, 0px));
  right: calc(8px + var(--menu-mobile-safe-right, 0px));
  z-index: 1200;
  display: inline-flex;
  opacity: 0;
  pointer-events: none;
  transform: none;
  transition: none;
}

html.is-variko-phone #workspace_root.menu-workspace.menu-left-collapsed .menu-mobile-filter-toggle {
  opacity: 1;
  pointer-events: auto;
}

html.is-variko-phone #workspace_root.menu-workspace.menu-mobile-filter-toggle-guard .menu-mobile-filter-toggle {
  opacity: 0;
  pointer-events: none;
}

html.is-variko-phone .menu-mobile-filter-toggle.is-active {
  color: var(--vk-app-accent-current);
}

html.is-variko-phone .menu-topbar-shell {
  grid-template-rows: 54px;
  gap: 0;
  padding: 0;
  overflow: hidden;
}

html.is-variko-phone .menu-topbar-title-wrap {
  height: 54px;
  padding:
    0
    calc(50px + var(--menu-mobile-safe-right, 0px))
    0
    calc(50px + var(--menu-mobile-safe-left, 0px));
  box-sizing: border-box;
  align-items: center;
}

html.is-variko-phone .menu-topbar-title {
  font-size: 15px;
}

html.is-variko-phone .menu-topbar-title--breadcrumbs {
  width: 100%;
  min-width: 0;
}

html.is-variko-phone .menu-topbar-subtitle,
html.is-variko-phone .menu-topbar-filter-row {
  display: none;
}

html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-topbar-shell {
  grid-template-rows: 54px minmax(0, 1fr);
  gap: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  max-height: none;
  overflow: hidden;
}

html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-topbar-filter-row {
  display: grid;
  align-content: start;
  justify-content: center;
  width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  padding:
    6px
    calc(10px + var(--menu-mobile-safe-right, 0px))
    calc(10px + var(--menu-mobile-safe-bottom, 0px))
    calc(10px + var(--menu-mobile-safe-left, 0px));
  overflow: auto;
  box-sizing: border-box;
}

html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-topbar-filter-form,
html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-topbar-filter-controls {
  width: min(100%, 420px);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  justify-self: center;
  gap: 8px;
  padding: 0;
}

html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-filter-control,
html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-filter-select,
html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-filter-player-search,
html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-topbar-filter-controls .vk-btn {
  width: 100%;
  max-width: none;
}

html.is-variko-phone #workspace_root.menu-mobile-filters-open .menu-mobile-filter-apply {
  display: inline-flex;
}

html.is-variko-phone .games-wrap.menu-catalog-layout,
html.is-variko-phone .people-catalog-wrap.menu-catalog-layout,
html.is-variko-phone .selection-catalog-wrap.menu-catalog-layout,
html.is-variko-phone .favorite-bookmarks-wrap.menu-catalog-layout,
html.is-variko-phone .menu-related-reviews-strip.menu-catalog-layout {
  padding-left: calc(var(--menu-catalog-pad-x) + var(--menu-mobile-safe-left, 0px));
  padding-right: calc(var(--menu-catalog-pad-x) + var(--menu-mobile-safe-right, 0px));
}

html.is-variko-phone .games-grid.menu-catalog-grid,
html.is-variko-phone .selection-catalog-grid.menu-catalog-grid,
html.is-variko-phone .favorite-bookmarks-grid.menu-catalog-grid {
  --menu-catalog-card-min: 0px;
  grid-template-columns: minmax(0, 1fr);
}

html.is-variko-phone .games-grid.menu-catalog-grid > .variation-card,
html.is-variko-phone .selection-catalog-grid.menu-catalog-grid > .variation-card,
html.is-variko-phone .favorite-bookmarks-grid.menu-catalog-grid > .variation-card {
  width: 100%;
  min-width: 0;
  max-width: none;
}

html.is-variko-phone .games-grid.menu-catalog-grid--tsumego {
  --menu-catalog-card-min: 0px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

html.is-variko-phone .games-grid.menu-catalog-grid--tsumego > .variation-card--tsumego {
  flex-basis: auto;
  width: 100%;
  min-width: 0;
  max-width: none;
}

html.is-variko-phone .variation-card--tsumego .tsumego-card-preview-wrap {
  width: var(--vk-card-preview-size);
  justify-self: center;
}

html.is-variko-phone .variation-card--tsumego .tsumego-card-preview-frame {
  width: var(--vk-card-preview-size);
}

html.is-variko-phone .menu-nav-primary-actions .menu-nav-list > :first-child,
html.is-variko-phone .menu-home-action[href*="section=new_variation"],
html.is-variko-phone .variation-card-create,
html.is-variko-phone .variation-card[data-mobile-analysis-published="0"],
html.is-variko-phone [data-variation-edit-toggle],
html.is-variko-phone [data-review-create-hold],
html.is-variko-phone [data-variation-delete-hold],
html.is-variko-phone [data-content-selection-form],
html.is-variko-phone .menu-content-nav-item--create,
html.is-variko-phone .menu-content-inline-action,
html.is-variko-phone .menu-content-link-create-btn,
html.is-variko-phone .menu-form-delete-row {
  display: none !important;
}

html.is-variko-phone-landscape body::after {
  content: "Поверните устройство вертикально";
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: grid;
  place-items: center;
  padding:
    calc(24px + env(safe-area-inset-top, 0px))
    calc(24px + env(safe-area-inset-right, 0px))
    calc(24px + env(safe-area-inset-bottom, 0px))
    calc(24px + env(safe-area-inset-left, 0px));
  background: var(--vk-paper-depth-base-bg);
  color: var(--vk-text-primary);
  font: 700 18px/1.35 var(--font-ui, sans-serif);
  text-align: center;
}
