/* LUUPIGO objects-2j-b-desktop-detector-css-20260716-01 */

/* Mobile remains controlled by the current 2H styles. This file only enhances desktop/tablet-wide layouts. */

html.desktop-web,
body.desktop-web,
html.objects-desktop,
body.objects-desktop {
  min-height: 100%;
}

body.objects-desktop {
  background:
    radial-gradient(circle at 12% 8%, rgba(18, 99, 241, 0.08), transparent 28%),
    linear-gradient(180deg, #eef8f6 0%, #f7fbff 100%);
}

body.objects-desktop .objects-app,
body.objects-desktop [data-objects-app],
body.objects-desktop .objects-page,
body.objects-desktop .object-page,
body.objects-desktop .submit-page,
body.objects-desktop .manage-page {
  width: min(1180px, calc(100vw - 48px));
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

body.objects-desktop .app-header,
body.objects-desktop .objects-header,
body.objects-desktop .shell-topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  border-radius: 0 0 12px 12px;
  backdrop-filter: blur(16px);
}

body.objects-desktop .search-panel,
body.objects-desktop .objects-search,
body.objects-desktop .filters-panel {
  max-width: none;
}

body.objects-desktop .objects-home-grid,
body.objects-desktop .home-grid,
body.objects-desktop .objects-content,
body.objects-desktop [data-objects-layout] {
  display: grid;
  grid-template-columns: minmax(320px, 0.92fr) minmax(460px, 1.35fr);
  gap: 18px;
  align-items: start;
}

body.objects-desktop .objects-list,
body.objects-desktop [data-objects-list],
body.objects-desktop .results-list {
  max-height: calc(100vh - 230px);
  overflow: auto;
  padding-right: 4px;
}

body.objects-desktop .objects-map,
body.objects-desktop .map-panel,
body.objects-desktop .fake-map,
body.objects-desktop [data-objects-map] {
  min-height: 420px;
  border-radius: 12px;
}

body.objects-desktop .object-card,
body.objects-desktop .result-card,
body.objects-desktop [data-object-card] {
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

body.objects-desktop .object-card:hover,
body.objects-desktop .result-card:hover,
body.objects-desktop [data-object-card]:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.10);
}

body.objects-desktop .object-detail,
body.objects-desktop [data-object-detail],
body.objects-desktop .object-detail-card {
  display: grid;
  grid-template-columns: minmax(380px, 0.95fr) minmax(420px, 1.05fr);
  gap: 22px;
  align-items: start;
}

body.objects-desktop .object-hero,
body.objects-desktop .object-media,
body.objects-desktop .object-photo,
body.objects-desktop .detail-media {
  min-height: 360px;
  border-radius: 14px;
}

body.objects-desktop .submit-shell,
body.objects-desktop .submit-card,
body.objects-desktop [data-submit-form],
body.objects-desktop .manage-shell,
body.objects-desktop .manage-card,
body.objects-desktop [data-manage-root] {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

body.objects-desktop input,
body.objects-desktop select,
body.objects-desktop textarea,
body.objects-desktop button {
  font-size: 15px;
}

body.objects-desktop .bottom-nav,
body.objects-desktop .objects-bottom-nav,
body.objects-desktop .app-bottom-nav,
body.objects-desktop .shell-bottom-nav {
  left: 50%;
  right: auto;
  width: min(520px, calc(100vw - 48px));
  transform: translateX(-50%);
  border-radius: 18px 18px 0 0;
}

@media (min-width: 1280px) {
  body.objects-desktop .objects-app,
  body.objects-desktop [data-objects-app],
  body.objects-desktop .objects-page,
  body.objects-desktop .object-page,
  body.objects-desktop .submit-page,
  body.objects-desktop .manage-page {
    width: min(1240px, calc(100vw - 72px));
    max-width: 1240px;
  }

  body.objects-desktop .objects-home-grid,
  body.objects-desktop .home-grid,
  body.objects-desktop .objects-content,
  body.objects-desktop [data-objects-layout] {
    grid-template-columns: minmax(360px, 0.82fr) minmax(620px, 1.45fr);
    gap: 22px;
  }
}

@media (max-width: 899px) {
  body.objects-mobile .objects-app,
  body.objects-mobile [data-objects-app] {
    width: 100%;
    max-width: none;
  }
}
