/* ============================================================
   Coretech corporate light theme — matches coretech-revolution.com
   Brand gradient on site: linear-gradient(95deg, #007AEB, #9CCFFF)
   Page chrome on site: #F6F9FF sections, white header, #333 nav text
   ============================================================ */

:root > * {
  /* Coretech brand tokens */
  --ct-blue:                              #007AEB;  /* brand gradient start (decorative) */
  --ct-sky:                               #9CCFFF;  /* brand gradient light end (decorative) */
  --ct-blue-aa:                           #0068D2;  /* AA-safe link/accent blue */
  --ct-blue-deep:                         #0057B8;  /* hover / active text */
  --ct-btn-deep:                          #0059BF;  /* button gradient deep end */
  --ct-navy:                              #0E3A5D;  /* heading navy */
  --ct-page-bg:                           #F6F9FC;  /* airy page chrome (site: #F6F9FF) */
  --ct-tint:                              #E9F3FD;  /* light-blue tint fill */
  --ct-tint-hover:                        #EDF5FD;
  --ct-line:                              #D9E6F2;  /* hairlines */
  --ct-ink:                               #333333;  /* body/nav text (site: #333) */
  --ct-ink-light:                         #5B6B7C;  /* secondary text */

  /* Material tokens */
  --md-primary-fg-color:                #FFFFFF;  /* white header bar */
  --md-primary-fg-color--light:         #F1F6FB;
  --md-primary-fg-color--dark:          #0E3A5D;
  --md-primary-bg-color:                #333333;  /* header text/icons */
  --md-primary-bg-color--light:         #5B6B7C;
  --md-accent-fg-color:                 #0068D2;
  --md-accent-fg-color--transparent:    rgba(0, 104, 210, 0.1);
  --md-accent-bg-color:                 #FFFFFF;
  --md-default-bg-color:                #F6F9FC;
  --md-default-fg-color:                #333333;
  --md-default-fg-color--light:         #5B6B7C;
  --md-default-fg-color--lighter:       #7C8DA0;
  --md-typeset-a-color:                 #0068D2;
  --md-code-bg-color:                   #EDF3F9;
  --md-code-fg-color:                   #24384E;
  --md-footer-bg-color:                 #EEF3F9;
  --md-footer-bg-color--dark:           #E2EBF4;
  --md-footer-fg-color:                 #33404D;
  --md-footer-fg-color--light:          #5B6B7C;
  --md-footer-fg-color--lighter:        #7C8DA0;
}

::selection {
  background: #CFE6FA;
}

/* Header — white bar, dark text, soft hairline */

.md-header {
  box-shadow: 0 1px 0 #E2EAF2, 0 4px 14px rgba(14, 58, 93, 0.05);
}

.md-header__title {
  display: none;
}

.md-header__inner {
  justify-content: flex-start;
  padding-left: 0.8rem;
}

.md-header__button.md-logo {
  margin: 0;
  padding: 0.4rem 0.8rem 0.4rem 0;
}

.md-header__button.md-logo img,
.md-header__button.md-logo svg {
  height: 1.8rem;
  width: auto;
}

/* Header search — light pill on white bar */

.md-header .md-search__input {
  background-color: #F0F5FA;
  color: #33404D;
  border-radius: 999px;
}

.md-header .md-search__input::placeholder {
  color: #7C8DA0;
}

.md-header .md-search__input:hover {
  background-color: #E7F0F8;
}

.md-header .md-search__form:focus-within .md-search__input {
  background-color: #FFFFFF;
  box-shadow: inset 0 0 0 2px var(--ct-blue-aa);
}

/* Left Sidebar — non-conflicting styles only */

.md-nav--primary .md-nav__title {
  display: none;
}

/* Layout Grid */

.md-grid {
  max-width: 95%;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

/* Nav hierarchy — font/color per level */

.md-sidebar--primary .md-nav__list > .md-nav__item > label.md-nav__link,
.md-sidebar--primary .md-nav__list > .md-nav__item > a.md-nav__link {
  font-size: 0.82rem;
  color: #1F2B38;
  letter-spacing: 0.02em;
}

.md-sidebar--primary [data-md-level="1"] .md-nav__list > .md-nav__item > label.md-nav__link,
.md-sidebar--primary [data-md-level="1"] .md-nav__list > .md-nav__item > a.md-nav__link {
  font-size: 0.78rem;
  color: #354558;
}

.md-sidebar--primary [data-md-level="2"] .md-nav__list > .md-nav__item > label.md-nav__link,
.md-sidebar--primary [data-md-level="2"] .md-nav__list > .md-nav__item > a.md-nav__link {
  font-size: 0.75rem;
  color: #4A5D72;
}

.md-sidebar--primary [data-md-level="3"] .md-nav__list > .md-nav__item > label.md-nav__link,
.md-sidebar--primary [data-md-level="3"] .md-nav__list > .md-nav__item > a.md-nav__link {
  font-size: 0.72rem;
  color: #5B6E80;
}

.md-sidebar--primary .md-nav__item--active > .md-nav__link {
  color: var(--ct-blue-deep) !important;
  font-weight: 700;
  background-color: var(--ct-tint);
  border-radius: 4px;
}

.md-sidebar--primary .md-nav__list > .md-nav__item--nested {
  margin-top: 0.2em;
  padding-top: 0.3em;
  border-top: 1px solid rgba(0, 104, 210, 0.1);
}

.md-sidebar--primary .md-nav__list > .md-nav__item--nested:first-child {
  border-top: none;
  margin-top: 0;
}

/* Content Area */

.md-content {
  max-width: 1200px;
  margin: 0;
}

.md-typeset {
  font-size: 0.94rem;
  line-height: 1.75;
}

.md-typeset h1 {
  font-size: 1.25rem;
  font-weight: 700;
  border-bottom: 2px solid #BFDDF3;
  padding-bottom: 0.3em;
}

.md-typeset h2 {
  font-size: 1.08rem;
  font-weight: 600;
  color: var(--md-primary-fg-color--dark);
  border-bottom: 1px solid #DFE9F2;
  padding-bottom: 0.25em;
}

.md-typeset h3 {
  font-size: 0.98rem;
  font-weight: 600;
  color: #33475C;
}

.md-typeset a:hover {
  color: var(--ct-blue-deep);
}

.md-typeset pre {
  font-size: 0.8rem;
  line-height: 1.5;
  border-radius: 6px;
}

.md-typeset code {
  font-size: 0.85em;
  border-radius: 3px;
  padding: 0.1em 0.3em;
}

/* Note admonitions retinted to the light-blue family */

.md-typeset .admonition.note,
.md-typeset details.note {
  border-color: var(--ct-blue-aa);
}

.md-typeset .note > .admonition-title,
.md-typeset .note > summary {
  background-color: rgba(0, 104, 210, 0.08);
  color: var(--ct-blue-deep);
}

.md-typeset .note > .admonition-title::before,
.md-typeset .note > summary::before {
  background-color: var(--ct-blue-deep);
}

.md-top {
  background-color: var(--ct-blue-aa);
  color: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(0, 104, 210, 0.3);
}

.md-top:hover {
  background-color: var(--ct-blue-deep);
}

.md-typeset table:not([class]) {
  font-size: 0.88rem;
  table-layout: auto;
  width: 100%;
  box-shadow: 0 2px 8px rgba(14, 58, 93, 0.06);
  border-radius: 6px;
  overflow: hidden;
}

.md-typeset .md-typeset__table {
  display: block;
  width: 100%;
}

.md-typeset table:not([class]) td:first-child {
  white-space: nowrap;
  font-weight: 500;
}

.md-typeset table:not([class]) td code {
  white-space: nowrap;
}

.md-typeset table:not([class]) td:nth-child(3) {
  min-width: 11em;
}

.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  padding: 0.45em 0.7em;
  line-height: 1.5;
  text-align: left;
}

.md-typeset table:not([class]) th {
  background-color: #E3EFFB;
  color: #123E63;
  font-weight: 600;
}

.md-typeset table:not([class]) tbody tr:hover {
  background-color: var(--ct-tint-hover);
}

/* Embedded mode — hide chrome when opened inside WebView2 */
html[data-embedded] .md-header,
html[data-embedded] .md-tabs,
html[data-embedded] .md-sidebar--primary,
html[data-embedded] .md-sidebar--secondary,
html[data-embedded] .md-footer {
  display: none !important;
}
html[data-embedded] .md-content {
  max-width: 100% !important;
  width: 100% !important;
}
html[data-embedded] .md-main__inner {
  grid-template-columns: 1fr !important;
}

.md-typeset blockquote {
  border-left: 3px solid var(--ct-sky);
  background-color: #EFF6FD;
  border-radius: 0 4px 4px 0;
}

/* Primary buttons — corporate gradient pill (sky-blue → blue) */

.md-typeset .md-button--primary {
  background-image: linear-gradient(95deg, var(--ct-blue-aa) 0%, var(--ct-btn-deep) 100%);
  border: none;
  border-radius: 999px;
  color: #FFFFFF;
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(0, 89, 191, 0.25);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-image 0.2s ease;
}

.md-typeset .md-button--primary:hover {
  background-image: linear-gradient(95deg, #005EC4 0%, #004A9E 100%);
  color: #FFFFFF;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(0, 89, 191, 0.3);
}

.md-typeset .md-button--primary:focus-visible {
  outline: 2px solid var(--ct-blue-deep);
  outline-offset: 2px;
}

/* ============ Homepage landing (Coretech corporate light blue) ============ */

.ct-hero {
  background: linear-gradient(150deg, #F7FAFE 0%, #E9F2FB 100%);
  border: 1px solid var(--ct-line);
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(14, 58, 93, 0.05);
  color: #3D5A76;
  padding: 2.4rem 2rem;
  margin: 0 0 1.6rem 0;
}

.ct-hero h1 {
  color: var(--ct-navy);
  font-size: 1.35rem;
  font-weight: 700;
  margin-top: 0;
  border-bottom: none;
}

.ct-hero p {
  color: #3D5A76;
  font-size: 1.02em;
  max-width: 46em;
}

.ct-hero .md-button {
  border-radius: 999px;
  font-weight: 600;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.ct-hero .md-button--primary {
  background-image: linear-gradient(95deg, var(--ct-blue-aa) 0%, var(--ct-btn-deep) 100%);
  border: none;
  color: #FFFFFF;
  box-shadow: 0 2px 8px rgba(0, 89, 191, 0.25);
}

.ct-hero .md-button--primary:hover {
  background-image: linear-gradient(95deg, #005EC4 0%, #004A9E 100%);
  color: #FFFFFF;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(0, 89, 191, 0.3);
}

.ct-hero .md-button:not(.md-button--primary) {
  background-color: #FFFFFF;
  border: 1px solid var(--ct-blue-aa);
  color: var(--ct-blue-aa);
}

.ct-hero .md-button:not(.md-button--primary):hover {
  background-color: var(--ct-tint);
  border-color: var(--ct-blue-deep);
  color: var(--ct-blue-deep);
}

.ct-hero .md-button:focus-visible {
  outline: 2px solid var(--ct-blue-deep);
  outline-offset: 2px;
}

@media screen and (max-width: 44.9375em) {
  .ct-hero {
    padding: 1.6rem 1.2rem;
  }
}

.ct-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 1.2rem 0;
}

.ct-card {
  border: 1px solid #DDE7EF;
  border-radius: 8px;
  padding: 1.1rem 1.2rem;
  background: #FFFFFF;
  box-shadow: 0 1px 3px rgba(14, 58, 93, 0.05);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.ct-card:hover {
  border-color: var(--ct-sky);
  box-shadow: 0 5px 16px rgba(0, 104, 210, 0.12);
  transform: translateY(-1px);
}

.ct-card h3 {
  margin: 0 0 0.5rem 0;
  font-size: 1.02em;
  color: var(--ct-navy);
}

.ct-card p {
  font-size: 0.82em;
  color: #475569;
  margin: 0 0 0.5rem 0;
}

.ct-card a {
  font-size: 0.85em;
  font-weight: 600;
  color: var(--ct-blue-aa);
}

.ct-card a:hover {
  color: var(--ct-blue-deep);
  text-decoration: underline;
}

.ct-card a:focus-visible {
  outline: 2px solid var(--ct-blue-aa);
  outline-offset: 2px;
}


/* 故障码表（ErrorCodes 页）：固定三列宽——故障码窄列、故障(枚举名)中列、说明宽列 */
.md-typeset .ec-table table {
  table-layout: fixed;
  width: 100%;
}
.md-typeset .ec-table th:nth-child(1),
.md-typeset .ec-table td:nth-child(1) { width: 10%; }
.md-typeset .ec-table th:nth-child(2),
.md-typeset .ec-table td:nth-child(2) { width: 34%; overflow-wrap: anywhere; }
.md-typeset .ec-table th:nth-child(3),
.md-typeset .ec-table td:nth-child(3) { width: 56%; }
