/* Allwin Medical unified typography and accessible color system */
:root {
  --allwin-primary: #006fae;
  --allwin-primary-dark: #00476f;
  --allwin-primary-soft: #e7f3fa;
  --allwin-accent: #b45309;
  --allwin-heading: #1a2b3c;
  --allwin-text: #334155;
  --allwin-muted: #536779;
  --allwin-border: #d8e3ec;
  --allwin-surface: #ffffff;
  --allwin-page: #f5f8fb;

  /* Normalize custom-property names used by the newer pages. */
  --primary: var(--allwin-primary);
  --primary-dark: var(--allwin-primary-dark);
  --primary-light: var(--allwin-primary-soft);
  --accent: var(--allwin-accent);
  --text-dark: var(--allwin-heading);
  --text-gray: var(--allwin-muted);
  --text: var(--allwin-text);
  --text-light: var(--allwin-muted);
  --border: var(--allwin-border);
}

html {
  color-scheme: light;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body,
button,
input,
select,
textarea {
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "Helvetica Neue", Arial, sans-serif !important;
}

body {
  color: var(--allwin-text);
  font-size: 16px;
  line-height: 1.7;
}

p {
  line-height: 1.75;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.top-nav-links a {
  color: #4b5f72 !important;
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}

.top-nav-links a:hover,
.top-nav-links a.active {
  color: var(--allwin-primary) !important;
  font-weight: 700 !important;
}

.top-nav-links a.nav-repair,
.top-nav-links a.nav-repair:hover,
.top-nav-links a.nav-repair.active {
  color: var(--allwin-accent) !important;
  font-weight: 700 !important;
}

.top-nav-hotline {
  color: #0b3774 !important;
  font-weight: 700 !important;
}

.section-title,
.section-title h2 {
  color: var(--allwin-heading) !important;
}

.section-desc,
.case-desc,
.model-table td,
.news-desc,
.card-desc,
.service-desc {
  color: var(--allwin-muted) !important;
  font-size: 15px;
  line-height: 1.75;
}

/* The six legacy builder exports otherwise inherit a 14px body and 13px cards. */
body.pc {
  color: var(--allwin-text);
  font-size: 16px !important;
  line-height: 1.7 !important;
}

body.pc .gw-browse-component-content[style*="font-size:14px"],
body.pc .content-box p {
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

input,
select,
textarea {
  color: var(--allwin-text) !important;
  font-size: 15px !important;
}

input::placeholder,
textarea::placeholder {
  color: #66788a !important;
  opacity: 1;
}

input:focus,
select:focus,
textarea:focus,
button:focus-visible,
a:focus-visible,
[role="button"]:focus-visible {
  outline: 3px solid rgba(0, 111, 174, 0.28) !important;
  outline-offset: 2px;
}

/* Shared form submission feedback. */
.allwin-form-status {
  display: none;
  margin-top: 12px;
  padding: 10px 14px;
  border: 1px solid transparent;
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.6;
  text-align: left;
}

.allwin-form-status.is-visible {
  display: block;
}

.allwin-form-status.is-success {
  color: #14642e;
  background: #f0f9f3;
  border-color: #b9dfc4;
}

.allwin-form-status.is-error {
  color: #9f2d20;
  background: #fff4f2;
  border-color: #efc2bc;
}

.allwin-form-status.is-info {
  color: #00476f;
  background: #eef8fd;
  border-color: #b8dcec;
}

.allwin-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

form[data-allwin-submitting="true"] [type="submit"] {
  cursor: wait !important;
  opacity: 0.72 !important;
}

@media (max-width: 768px) {
  body {
    font-size: 15px;
    line-height: 1.7;
  }

  h1 {
    line-height: 1.3;
  }

  h2 {
    line-height: 1.4;
  }

  .mfr-section {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .mfr-section .product-table {
    min-width: 680px;
  }
}

/* allwin-footer-contact-overflow-fix */
.gw-browse-module[name="底部导航"] .rich-component .gw-browse-component-content .rich-view {
  overflow: visible !important;
  overflow-y: visible !important;
}

.gw-browse-module[name="底部导航"] .rich-component .rich-view p {
  margin: 0 0 6px !important;
  line-height: 1.55 !important;
}

.gw-browse-module[name="底部导航"] .rich-component .rich-view p:last-child {
  margin-bottom: 0 !important;
}
