/**
 * 前台全站布局与排版微调（与分端主题配合）
 */
.layout .main {
  line-height: 1.55;
}

.layout .main > section,
.layout .main > .page-section,
.layout .main > .card {
  margin-bottom: var(--section-gap, clamp(14px, 3vw, 22px));
}

.layout .card {
  border-radius: var(--radius, 14px);
  box-shadow:
    0 2px 12px color-mix(in srgb, var(--brand-navy, #122a45) 7%, transparent),
    0 0 0 1px color-mix(in srgb, var(--brand-ice, #6ec8e8) 12%, var(--border, #dde5ee));
}

.layout input[type="text"],
.layout input[type="email"],
.layout input[type="password"],
.layout input[type="search"],
.layout input[type="tel"],
.layout input[type="number"],
.layout textarea,
.layout select {
  border-radius: 8px;
  line-height: 1.4;
}

.layout .btn {
  border-radius: 8px;
}

@media (max-width: 900px) {
  /* 通栏与左右留白由 mobile-public.css / public-fullbleed 负责，避免重复 padding */
  .layout .main {
    max-width: none;
    margin-inline: 0;
    padding-inline: 0;
  }

  .layout .card {
    border-radius: 10px;
  }

  .layout .btn {
    min-height: var(--touch-min, 44px);
  }
}

@media (min-width: 901px) {
  .layout .main {
    max-width: var(--content-max, 1200px);
    margin-inline: auto;
    width: 100%;
    box-sizing: border-box;
    padding-inline: var(--page-pad, clamp(12px, 2.6vw, 22px));
  }
}
