/*
 * Musashi Kurume — Traffic-accident category only — Ken'i 8 one-column skin
 * v1.3.0. Applied only when PHP has added body.mtcb-traffic-onecol.
 * 1) theme/wrappers 2) native image/flow layout 3) calculator harmony.
 * No media file or stored WordPress content is modified.
 */
body.mtcb-traffic-onecol {
  --mtcb-page-max: 1160px;
  --mtcb-page-pad: clamp(16px, 3.2vw, 32px);
  --mtcb-ink: #171717;
  --mtcb-yellow: #ffdc35;
  --mtcb-paper: #fff;
  overflow-x: clip;
  /* harmonize with the separately installed unified Ken'i plugin, if active */
  --mkuf-content-max: var(--mtcb-page-max);
}
body.mtcb-traffic-onecol .keni-main_outer,
body.mtcb-traffic-onecol .keni-main_outer *,
body.mtcb-traffic-onecol .mtcb-family-message,
body.mtcb-traffic-onecol .mtcb-family-message * { box-sizing: border-box; }

/* Ken'i 8: remove reserved sidebar column and float/negative-margin tricks. */
body.mtcb-traffic-onecol .keni-main_outer,
body.mtcb-traffic-onecol.col2 .keni-main_outer,
body.mtcb-traffic-onecol.col2r .keni-main_outer,
body.mtcb-traffic-onecol.col1 .keni-main_outer,
body.mtcb-traffic-onecol.mkuf-onecol .keni-main_outer {
  display: block !important;
  float: none !important;
  clear: both;
  width: 100% !important;
  max-width: var(--mtcb-page-max) !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--mtcb-page-pad) !important;
  padding-right: var(--mtcb-page-pad) !important;
}
body.mtcb-traffic-onecol .keni-main_outer::after { content: ""; display: block; clear: both; }
body.mtcb-traffic-onecol .keni-main_outer .keni-main,
body.mtcb-traffic-onecol .keni-main_outer > .keni-main_wrap,
body.mtcb-traffic-onecol .keni-main_outer .keni-main_inner,
body.mtcb-traffic-onecol .keni-main_outer .keni-main_wrap > main {
  float: none !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Hide only the Ken'i sidebar: widgets and their settings remain untouched. */
body.mtcb-traffic-onecol:not(.mtcb-traffic-lp) .keni-sub,
body.mtcb-traffic-onecol:not(.mtcb-traffic-lp) .keni-main_outer #sidebar,
body.mtcb-traffic-onecol:not(.mtcb-traffic-lp) .keni-main_outer aside.sidebar,
body.mtcb-traffic-lp.mtcb-lp-hide-sidebar .keni-sub,
body.mtcb-traffic-lp.mtcb-lp-hide-sidebar .keni-main_outer #sidebar,
body.mtcb-traffic-lp.mtcb-lp-hide-sidebar .keni-main_outer aside.sidebar { display: none !important; }

/* Category/archive description is often outside .entry-content on Ken'i 8. */
body.mtcb-traffic-onecol .keni-main :is(
  .keni-section, .keni-section_wrap, .entry-content, .article-body,
  .archive-description, .archive_desc, .category-description,
  .term-description, .archive-list, .archive-list_outer
) {
  width: 100%;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-wrap: anywhere;
}
body.mtcb-traffic-onecol .keni-main :is(img,picture,video,iframe,canvas,svg) {
  max-width: 100% !important;
}
body.mtcb-traffic-onecol .keni-main :is(img,video) { height: auto; }
body.mtcb-traffic-onecol .keni-main :is(figure,.wp-caption,.wp-block-image) {
  max-width: 100% !important;
  box-sizing: border-box;
}
body.mtcb-traffic-onecol .keni-main :is(.entry-content,.article-body,.archive-description,.category-description,.term-description) :is(figure,.wp-caption) {
  margin-inline: auto;
}
body.mtcb-traffic-onecol .keni-main :is(.entry-content,.article-body,.archive-description,.category-description,.term-description) > img,
body.mtcb-traffic-onecol .keni-main :is(.entry-content,.article-body,.archive-description,.category-description,.term-description) > p > img {
  display: block;
  margin: clamp(14px,2.5vw,28px) auto;
}
/* No arbitrary image stretching: maintain source aspect ratio, including CTA images. */
body.mtcb-traffic-onecol .keni-main :is(.entry-content,.article-body,.archive-description,.category-description,.term-description) img {
  object-fit: contain;
}
body.mtcb-traffic-onecol .keni-main :is(table,pre) { max-width: 100%; }
body.mtcb-traffic-onecol .keni-main :is(.sseo-table-scroll,.wp-block-table) { overflow-x: auto; }

/* Wider column, restrained archive headers. Does not re-style the special
   calculator headings (whose color is managed by v1.2.0 polish). */
body.mtcb-traffic-onecol .keni-main_outer :is(.archive_title,.archive_title_wrap,.archive-title) {
  max-width: 100% !important;
  min-width: 0;
  margin-inline: auto;
}
body.mtcb-traffic-onecol .keni-main_outer :is(.archive_title,.archive-title) {
  color: var(--mtcb-ink) !important;
  font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  font-size: clamp(23px,3vw,34px);
  font-weight: 900;
  line-height: 1.45;
  overflow-wrap: break-word;
  text-wrap: pretty;
}
body.mtcb-traffic-onecol .keni-main :is(.archive-description,.category-description,.term-description) :is(h2,h3,h4):not(.mtcb-calculator-title) {
  font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  line-height: 1.5;
  overflow-wrap: break-word;
}
/* When heading tags are content rather than pre-made imagery, give them the
   same yellow/black tone as other 1-column posts. Never touch the calculator. */
body.mtcb-traffic-onecol:not(.mkuf-heading-system) .keni-main :is(.archive-description,.category-description,.term-description) > h2:not(.mtcb-calculator-title) {
  border: 0 !important;
  border-left: 5px solid var(--mtcb-yellow) !important;
  color: var(--mtcb-ink) !important;
  background: #fff8dc !important;
  padding: 14px 18px !important;
  margin: 1.8em 0 .9em !important;
  font-size: clamp(21px,2.4vw,28px) !important;
}
body.mtcb-traffic-onecol:not(.mkuf-heading-system) .keni-main :is(.archive-description,.category-description,.term-description) > h2:not(.mtcb-calculator-title)::before,
body.mtcb-traffic-onecol:not(.mkuf-heading-system) .keni-main :is(.archive-description,.category-description,.term-description) > h2:not(.mtcb-calculator-title)::after {
  content: none !important;
  display: none !important;
}

/* Existing estimator is its own component: do not replace or reposition form
   controls; only ensure it fits the new one-column width and keeps contrast. */
body.mtcb-traffic-onecol .mtcb-calculator-refined {
  width: 100% !important;
  max-width: min(100%, 920px) !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow: visible;
}
body.mtcb-traffic-onecol .mtcb-calculator-refined :is(form,fieldset,.result,.mtcb-calculator-output) {
  max-width: 100%;
  min-width: 0;
}
body.mtcb-traffic-onecol .mtcb-calculator-refined .mtcb-calculator-title,
body.mtcb-traffic-onecol .mtcb-calculator-refined .mtcb-calculator-title * {
  color: #171717 !important;
  -webkit-text-fill-color: #171717 !important;
  text-shadow: none !important;
}
body.mtcb-traffic-onecol .mtcb-calculator-refined .mtcb-calculator-title .mtcb-calculator-accent {
  background-image: linear-gradient(to top,#ffdf45 0 19%,transparent 19% 100%) !important;
}
/* The family card is inserted into the visible calculator's existing parent.
   Respect both desktop and mobile without forcing a second copy. */
body.mtcb-traffic-onecol .mtcb-family-message {
  max-width: min(100%, 960px) !important;
  margin-inline: auto !important;
}
body.mtcb-traffic-onecol .mtcb-family-message__inner,
body.mtcb-traffic-onecol .mtcb-family-message__contact { min-width: 0; }

/* Archive listings stay below the main category content, never squeezed into
   an old float sidebar column. No duplicated latest-posts module is created. */
body.mtcb-traffic-onecol .keni-main :is(.archive-list,.archive-list_outer) { float:none; clear:both; }
body.mtcb-traffic-onecol .keni-main .archive-list > li { max-width:100%;min-width:0; }
body.mtcb-traffic-onecol .keni-main .archive-list img { max-width:100% !important;height:auto; }

@media (max-width: 767px) {
  body.mtcb-traffic-onecol { --mtcb-page-pad: 15px; }
  body.mtcb-traffic-onecol .keni-main_outer { max-width: 100% !important; }
  body.mtcb-traffic-onecol .keni-main :is(.archive-description,.category-description,.term-description) > img,
  body.mtcb-traffic-onecol .keni-main :is(.entry-content,.article-body) > img { width:auto;max-width:100% !important; }
  body.mtcb-traffic-onecol .keni-main_outer :is(.archive_title,.archive-title) { font-size: clamp(23px,6vw,29px); }
  body.mtcb-traffic-onecol .mtcb-calculator-refined { max-width:100% !important; }
  body.mtcb-traffic-onecol .mtcb-family-message { width:100%; }
}
@media (prefers-reduced-motion: reduce) {
  body.mtcb-traffic-onecol .keni-main_outer * { scroll-behavior:auto !important; }
}
