/* Two visible dots share one generous touch target; one press changes theme. */
.theme-toggle {
  flex: 0 0 64px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 64px;
  height: 44px;
  padding: 0;
  border: 1px solid #b8bbc2;
  border-radius: 24px;
  background: #e9e9ed;
  cursor: pointer;
  color: #222;
}
.theme-dot {
  display: block;
  width: 16px;
  height: 16px;
  flex: none;
  border-radius: 50%;
  border: 1px solid #90939b;
  position: relative;
}
.theme-dot-dark {
  background: #16171a;
}
.theme-dot-light {
  background: #fff;
}
html[data-theme='dark'] .theme-dot-dark,
html[data-theme='light'] .theme-dot-light {
  outline: 2px solid #d66b00;
  outline-offset: 3px;
}
header .nav {
  gap: 18px;
}
header .nav-links {
  gap: 18px;
}
header .theme-toggle {
  margin-left: 0;
}
.theme-logo {
  display: block;
  position: relative;
  line-height: 0;
}
.theme-logo > .company-logo {
  display: block;
}
.theme-logo > img:not(.company-logo) {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media (max-width: 960px) {
  header .nav {
    gap: 16px;
  }
  header .nav-contact {
    margin-left: auto;
  }
  header .theme-toggle {
    margin: 0 2px;
  }
  header .menu {
    width: 40px;
    flex: 0 0 40px;
  }
}
@media (max-width: 430px) {
  header .nav.wrap {
    padding-left: 16px;
    padding-right: 16px;
    gap: 12px;
  }
  header .nav-contact {
    font-size: 12px;
  }
  header .nav-contact span {
    margin-left: 4px;
  }
  .theme-toggle {
    flex-basis: 60px;
    width: 60px;
  }
  .innovation-dark header .brand {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 360px) {
  header .nav.wrap {
    padding-left: 10px;
    padding-right: 10px;
    gap: 10px;
  }
  header .brand .company-logo {
    width: 78px;
    height: auto;
  }
  .innovation-dark header .company-logo.dark-logo {
    width: 78px;
    height: 43px;
  }
  header .nav-contact span {
    display: none;
  }
}
html[data-theme='dark']:not([data-fixed-dark='true']) {
  color-scheme: dark;
  --ink: #f0f1f3;
  --muted: #b0b3bc;
  --brand-link: #ffac59;
  --brand-hover: #ffa43b;
}
html[data-fixed-dark='true'] {
  color-scheme: dark;
}
html[data-theme='dark']:not(.innovation-dark) body {
  background: #101113;
  color: var(--ink);
}
html[data-theme='dark']:not(.innovation-dark) body header {
  background: #141518f5;
  border-color: #34363d;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(.company-subnav, .product-subnav, .support-subnav) {
  background: #17181b;
  border-color: #34363d;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(
    footer,
    .about,
    .contact,
    .identity-section,
    .facility-summary,
    .inquiry-availability,
    .tolerance-guarantee,
    .admin-row,
    .board-grid .board-card
  ) {
  background: #1b1d21;
  color: var(--ink);
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(dialog, .bar-photo-dialog, .support-menu-links, .skip) {
  background: #202226;
  color: var(--ink);
  border-color: #3c3f47;
}
html[data-theme='dark']:not(.innovation-dark) body :is(.machine-stage, .machine-dialog-image) {
  background: transparent;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(.close, .machine-close, .bar-photo-close, .plus-circle, .inquiry-security button) {
  background: #353841;
  color: #f0f1f3;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(
    .breadcrumb,
    .large-copy,
    .resource-row p,
    .email,
    .equipment-intro > p:last-child,
    .facility-summary p,
    .facility p:not(.eyebrow),
    .facility dt,
    .source-note,
    .resource-help p,
    .technical-section small,
    .table-meta,
    .table-note,
    .weight-group > p,
    .machine-dialog dt,
    .machine-stage figcaption,
    .company-intro > p:last-child,
    .company-since,
    .greeting-letter > p,
    .identity-grid p,
    .history-month,
    .principles-list p,
    .product-detail-description,
    .product-order-note,
    .bar-shape-hint,
    .bar-photo-caption,
    .board-meta,
    .board-card span
  ) {
  color: #b7bac3;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(.ceo-signature strong, .facility .facility-subtitle) {
  color: #f0f1f3;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(.technical-number, .expand-icon, .identity-index, .principles-list li > span) {
  color: #b0b3bc;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(
    .footer-bottom,
    .resource-row,
    .document-row,
    .technical-section,
    .table-scroll th,
    .table-scroll td,
    .facility dl > div,
    .machine-dialog dl > div,
    .company-nav,
    .history-timeline li,
    .board-card,
    .inquiry-page fieldset,
    .inquiry-page details
  ) {
  border-color: #393c44;
}
html[data-theme='dark']:not(.innovation-dark) body .table-scroll thead th {
  background: #30333a;
  color: #f0f1f3;
}
html[data-theme='dark']:not(.innovation-dark) body .table-scroll tbody th {
  background: #23252a;
  color: #f0f1f3;
}
html[data-theme='dark']:not(.innovation-dark) body .table-scroll tbody tr:nth-child(even) td {
  background: #1c1e22;
}
html[data-theme='dark']:not(.innovation-dark) body .document-row .file-type {
  background: #25272c;
  border-color: #3a3d45;
  color: #c4c7ce;
}
html[data-theme='dark']:not(.innovation-dark) body .company-photo-intro::after {
  background: linear-gradient(90deg, #0d1117ee, #0d1117aa 60%, #0d11174d);
}
html[data-theme='dark']:not(.innovation-dark) body .company-intro-copy > p:last-child {
  color: #d6d9df;
}
html[data-theme='dark']:not(.innovation-dark) body .support-title {
  color: #f0f1f3;
  background-color: #24272b;
}
html[data-theme='dark']:not(.innovation-dark) body .support-title::before {
  background: linear-gradient(90deg, #101419eb, #10141980 70%, transparent);
}
html[data-theme='dark']:not(.innovation-dark) body .support-title > p:last-child:not(.eyebrow) {
  color: #d5d8df !important;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(input:not([type='checkbox']):not([type='radio']):not([type='hidden']), textarea, select) {
  background: #202226;
  color: #f0f1f3;
  border-color: #555965;
}
html[data-theme='dark']:not(.innovation-dark) body :is(input, textarea)::placeholder {
  color: #a8acb5;
  opacity: 1;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(.board-search button, .board-admin button, .admin-columns button:not(.blue)) {
  background: #30333a;
  color: #f0f1f3;
  border-color: #555965;
}
html[data-theme='dark']:not(.innovation-dark) body .inquiry-submit:disabled {
  background: #30333a;
  color: #a8acb5;
}
html[data-theme='dark']:not(.innovation-dark)
  body
  :is(.board-body a, .board-pager [aria-current], .board-tabs a[aria-current]) {
  color: #ffac59;
}
html[data-theme='dark']:not(.innovation-dark) body .board-body [style*='color'] {
  color: inherit !important;
}
html[data-theme='dark']:not(.innovation-dark) body .board-body [style*='background'] {
  background-color: transparent !important;
}
html[data-theme='dark']:not(.innovation-dark) body #circular-dialog .circular-dialog-heading {
  background: #202226;
  border-color: #3c3f47;
}
html[data-theme='dark']:not(.innovation-dark) body #circular-dialog .circular-dialog-heading p {
  color: #b7bac3;
}
html[data-theme='dark']:not(.innovation-dark) body .circular-model {
  background: #26282e;
  border-color: #42454d;
}
html[data-theme='dark']:not(.innovation-dark) body .circular-model caption {
  background: #30333a;
  color: #f0f1f3;
}
html[data-theme='dark']:not(.innovation-dark) body .circular-model :is(th, td) {
  color: #e1e3e8;
  border-color: #42454d;
}
html[data-theme='dark']:not(.innovation-dark) body .theme-logo > .company-logo {
  visibility: hidden;
}
html[data-theme='dark']:not(.innovation-dark) body .theme-logo > img:not(.company-logo) {
  display: block;
}
.theme-logo-symbol {
  clip-path: polygon(0 0, 100% 0, 100% 54%, 50% 54%, 50% 72%, 0 72%);
}
.theme-logo-steel {
  clip-path: polygon(50% 54%, 100% 54%, 100% 72%, 50% 72%);
  filter: brightness(1.8);
}
.theme-logo-korean {
  clip-path: inset(72% 0 0);
  filter: brightness(0) invert(1);
}
html[data-theme='dark'] .theme-toggle,
.innovation-dark .theme-toggle {
  background: #282a30;
  border-color: #5d626d;
}
@media (max-width: 960px) {
  html[data-theme='dark']:not(.innovation-dark) body header .nav-links {
    background: #141518;
    border-color: #34363d;
  }
  html[data-theme='dark']:not(.innovation-dark) body header .menu span {
    background: #f0f1f3;
  }
}
html[data-theme='dark']:not(.innovation-dark) body .home-notice {
  background: #23262b;
  color: #f0f1f3;
  border-color: #3c3f47;
}
/* Photographs, videos and original company CI artwork retain their own colors. */
@media print {
  .theme-toggle {
    display: none;
  }
  html[data-theme='dark']:not(.innovation-dark) body {
    background: white;
    color: #111;
    color-scheme: light;
  }
}

html.theme-changing:not(.innovation-dark) body,
html.theme-changing:not(.innovation-dark)
  body
  :is(
    header,
    footer,
    main,
    section,
    article,
    dialog,
    table,
    th,
    td,
    input,
    textarea,
    select,
    .company-subnav,
    .product-subnav,
    .support-subnav,
    .circular-dialog-heading,
    .circular-model,
    .facility-summary,
    .support-menu-links,
    .theme-toggle,
    h1,
    h2,
    h3,
    p,
    dt,
    dd,
    caption
  ) {
  transition:
    background-color 0.35s ease,
    color 0.35s ease,
    border-color 0.35s ease,
    box-shadow 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  html.theme-changing body,
  html.theme-changing body * {
    transition: none !important;
  }
}
html[data-theme='dark']:not(.innovation-dark) body .support-title::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(90deg, #101419e8, #10141999 60%, #10141922);
}
html[data-theme='dark']:not(.innovation-dark) body #home-notice {
  background: #23262b;
  color: #f0f1f3;
  border-color: #3c3f47;
}
html[data-theme='dark']:not(.innovation-dark) body .home-notice-badge {
  color: #ffac59;
}
@media (min-width: 961px) {
  header .nav {
    justify-content: flex-start;
  }
  header .nav-links {
    margin-left: auto;
  }
  header .nav-contact {
    margin-left: 12px;
  }
}
.theme-logo > img:not(.company-logo) {
  display: block;
  opacity: 0;
}
.theme-logo > .company-logo {
  opacity: 1;
}
html[data-theme='dark']:not(.innovation-dark) body .theme-logo > .company-logo {
  visibility: visible;
  opacity: 0;
}
html[data-theme='dark']:not(.innovation-dark) body .theme-logo > img:not(.company-logo) {
  opacity: 1;
}
html.theme-changing .theme-logo > img {
  transition: opacity 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  html.theme-changing .theme-logo > img {
    transition: none;
  }
}
html[data-theme='dark']:not(.innovation-dark) .technical-pdf-download {
  color: #ffac59;
}
html[data-theme='dark']:not(.innovation-dark) .technical-pdf-download:hover {
  background: #35271d;
}
html[data-theme='dark']:not(.innovation-dark) .technical-pdf-actions > span {
  color: #b0b3bc;
}
