.plots-shell { min-height: calc(100vh - 180px); background: #f5f8f6; }
.plots-page {
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto;
  padding: 48px var(--public-page-gutter) 72px;
}
:is(#plots-filter-toolbar, #market-filter-toolbar) .home-service-tabs button {
  display: inline-flex;
  min-height: 48px;
  padding: 0 17px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 24px !important;
  background: #fff;
  color: var(--ink);
  text-align: center;
  white-space: nowrap;
}
:is(#plots-filter-toolbar, #market-filter-toolbar) .home-service-tabs button:hover { border-color: #93bda4; transform: none; }
:is(#plots-filter-toolbar, #market-filter-toolbar) .home-service-tabs button.is-active { border-color: var(--brand); background: var(--brand); color: #fff; box-shadow: none; }
.plots-page > #plots-message {
  margin: 0;
  color: #4f5f59;
  font-size: 14px;
  line-height: 1.6;
  text-align: left;
}
.plots-page .plot-filter { margin: 14px 0 24px; }
.plots-page .plot-filter-options button { flex: 0 0 auto; white-space: nowrap; }
.plots-page .plot-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }

.plots-pager {
  display: flex;
  margin-top: 28px;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.plots-pager button {
  min-width: 40px;
  min-height: 38px;
  border: 1px solid #dbe1de;
  background: #fff;
  cursor: pointer;
}
.plots-pager button.active { border-color: #1f4b40; color: #fff; background: #1f4b40; }
.plots-pager button:disabled { opacity: .45; cursor: not-allowed; }
.plots-city-dialog #city-picker-status { padding: 12px 22px; color: #9d3d36; }

@media (max-width: 1200px) {
  .plots-page .plot-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .plots-page .plot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  :is(#plots-filter-toolbar, #market-filter-toolbar) .home-service-tabs button {
    min-width: 0;
    min-height: 46px;
    padding: 0 7px;
    gap: 5px;
    border-radius: 23px !important;
  }
}

@media (max-width: 560px) {
  .plots-page { max-width: 100%; padding-top: 28px; overflow-x: clip; }
  .plots-page > #plots-message { margin-top: 12px; }
  .plots-page .plot-filter { width: 100%; min-width: 0; }
  .plots-page .plot-filter-row { width: 100%; min-width: 0; grid-template-columns: minmax(0, 1fr); }
  .plots-page .plot-filter-row > strong { min-height: 34px; padding: 7px 10px; }
  .plots-page .plot-filter-options { box-sizing: border-box; width: 100%; min-width: 0; gap: 4px; padding: 6px; }
  .plots-page .plot-filter-options button { padding-inline: 6px; }
  .plots-page .plot-grid { grid-template-columns: 1fr; }
}
