/* ================================================================
   wf-grey.css — KTMS WF 完全グレースケール変換
   五十鈴WFスタイル準拠 / ktms-common.css の後に読み込む
   ================================================================ */

/* ===== カラー変数 完全上書き ===== */
:root {
  --ink:    #1a1a1a;
  --ink2:   #f5f5f5;
  --ink3:   #eeeeee;
  --paper:  #ffffff;
  --white:  #ffffff;
  --blue:   #1a1a1a;
  --blue-d: #333333;
  --blue-l: #888888;
  --red:    #888888;
  --line:   #d8d8d8;
  --line-d: #d2d2d2;
  --muted:  #6b6b6b;
  --muted-d:#8a8a8a;
  --ph:     #e3e3e3;
  --ph-d:   #e3e3e3;
}

/* ===== body / html ===== */
body { background: #fff !important; color: #1a1a1a !important; }

/* ===== ヘッダー → ホワイト ===== */
header.site {
  background: #fff !important;
  border-bottom: 1px solid #d8d8d8 !important;
  backdrop-filter: none !important;
}
.nav { color: #1a1a1a !important; }
.nav ul a { color: #333 !important; }
.nav ul a:hover, .nav ul a.active { color: #1a1a1a !important; }
.brand small { color: #8a8a8a !important; }
.nav .gr, .foot-bot .gr { background: #1a1a1a !important; color: #fff !important; }
.nav .gr:hover, .foot-bot .gr:hover { background: #333 !important; }

/* ===== トップアクセント / セクション区切り ===== */
.top-accent { background: #d8d8d8 !important; }
.sec-stripe  { background: #d8d8d8 !important; }

/* ===== ダークセクション → ライトグレー ===== */
section.dark, .dark,
section.ink2, .ink2,
section.ink3, .ink3,
.people-section, .machine-section, .race-section,
.careers, .hud, .machine-hero,
.career-band, .stat-band, .spec-band,
.more-band, .quote-band, .report-header,
.article-hero, .job-hero, .facts-band,
.benefit-section, .entry-section,
.history-section, .machine-gallery,
.report-nav, .article-nav,
.related-section, .stats-strip,
.rf-sub .rcard, .fn-sub .fn-sub-item,
.story-seq .seq-body,
.cta-band .cta-block {
  background: #f5f5f5 !important;
  color: #1a1a1a !important;
}

/* テキストカラー強制上書き（ダーク背景の白テキスト→ダーク） */
.dark *, section.dark *,
.people-section *, .machine-section *,
.race-section *, .careers *,
.hud *, .machine-hero *,
.career-band *, .stat-band *,
.quote-band *, .history-section *,
.benefit-section *, .entry-section *,
.job-hero *, .facts-band *,
.stat-band .sv, .spec-cell .sv,
.rlog-item .yr, .rlog-item .rt, .rlog-item .rd,
.stt .sv, .bcard h4, .vcard h4,
.story-body h3, .story-body p, .seq-body h3, .seq-body p,
.machine-info h3, .machine-info .mi-desc,
.machine-info .mi-cat, .cdbody h3, .cdbody p,
.race-main h3, .race-main .rdesc,
.race-ticket h4, .race-ticket p,
.pcard h3, .pcard .pmeta, .pcard .pcat, .pcard p,
.pbody h4, .pbody .pmeta, .pbody .pstory,
.mcard h4, .mcard p, .mcard .mname,
.std-pt .name, .std-pt .pts,
.rnd-loc, .rnd-n, .rnd-date, .rnd-result,
.cat-tab, .mtab, .rtab, .gtab, .fitem,
.fct .fv, .stt .sv, .ss-cell .v, .rc-cell .v,
.season-table td, .season-table .yr,
blockquote, .pull-quote p,
.result-card, .result-card *, .entry-note,
.ticker, .standing * {
  color: #1a1a1a !important;
}

/* muted系テキスト */
.stt .sk, .spec-cell .sk, .ss-cell .k, .rc-cell .k,
.std-label, .rnd-date, .cat-tab,
.machine-info .mi-cat, .cdbody .cdtag,
.story-body .step, .seq-body .step,
.bcard .bn, .vcard .vn,
.fn-sub-item .na-meta, .rf-main .rfbody .rdate {
  color: #8a8a8a !important;
}

/* ===== ヒーロー ===== */
.hero {
  background: #e8e8e8 !important;
  color: #1a1a1a !important;
}
.hero .grad, .page-hero .grad { opacity: 0 !important; }
.hero h1, .hero .sub, .hero .eyebrow { color: #1a1a1a !important; }

/* FVの3カット */
.hero .bgmedia > div,
.hero .bgmedia {
  background: #e3e3e3 !important;
  background-image: none !important;
}

/* ページヒーロー（about/team等） */
.page-hero {
  background: #e8e8e8 !important;
  color: #1a1a1a !important;
  min-height: 44vh !important;
}
.page-hero .bgmedia {
  background: #d8d8d8 !important;
  background-image: none !important;
}
.page-hero h1, .page-hero .sub { color: #1a1a1a !important; }
.breadcrumb a, .breadcrumb span { color: #6b6b6b !important; }

/* プロフィールヒーロー */
.person-hero, .ph-body { background: #e8e8e8 !important; color: #1a1a1a !important; }
.ph-img { background: #e3e3e3 !important; background-image: none !important; }
.ph-body h1, .ph-body .sub, .ph-body .role-tag { color: #1a1a1a !important; }
.ph-body .bc a { color: #6b6b6b !important; }

/* マシンヒーロー */
.machine-hero .bg { background: #e3e3e3 !important; background-image: none !important; }
.machine-hero h1, .machine-hero .msub, .machine-hero .mcat { color: #1a1a1a !important; }

/* 採用ヒーロー */
.job-hero { background: #e8e8e8 !important; }
.job-hero h1, .job-hero .jsub, .job-hero .jcat { color: #1a1a1a !important; }

/* ===== 画像プレースホルダー 均一ライトグレー ===== */
.media, .media.dark,
.split-img, .ms-img, .seq-img,
.report-feature, .fn-main .media,
.gallery-item, .g-item, .mg-item,
.gallery-grid .g-item,
.mgallery-grid .mg-item,
.inline-photo, .rf-main .media,
.about-intro .media, .himg .media,
.story-visual .media, .machine-visual .media,
.vimg .media, .repcard .rm,
.rcard .rimg .media, .pcard .pimg .media,
.role .role-img, .pillar .bg,
.mcard .mimg .media {
  background: #e3e3e3 !important;
  background-image: none !important;
  border-color: #c8c8c8 !important;
}
.media .ml, .media.dark .ml, .split-img .ml, .ms-img .ml,
.gallery-item .ml, .g-item .ml, .mg-item .ml,
.report-feature .ml { color: #888 !important; }

.media .tag, .media.dark .tag,
.split-img .tag, .ms-img .tag,
.seq-img .tag, .inline-photo .tag,
.gallery-item .gtype, .g-item .tag, .mg-item .tag {
  background: #888 !important;
  color: #fff !important;
}

/* ロールオーバーレイ */
.role .role-overlay, .pillar .ov {
  background: linear-gradient(180deg, transparent 40%, rgba(200,200,200,.9) 100%) !important;
}
.role h4, .role .rl, .role p,
.pillar h3, .pillar .num, .pillar p { color: #1a1a1a !important; }

/* ===== ボタン 完全グレースケール ===== */
.btn {
  background: #1a1a1a !important;
  border-color: #1a1a1a !important;
  color: #fff !important;
}
.btn:hover { background: #333 !important; border-color: #333 !important; }
.btn.ghost, .btn.ghost-od {
  background: transparent !important;
  color: #1a1a1a !important;
  border-color: #1a1a1a !important;
}
.btn.ghost:hover, .btn.ghost-od:hover {
  background: #1a1a1a !important; color: #fff !important;
}
.btn.od {
  background: #fff !important;
  border-color: #1a1a1a !important;
  color: #1a1a1a !important;
}
.btn.od:hover { background: #f0f0f0 !important; }
.lnk { border-bottom-color: #1a1a1a !important; }
.lnk .ar, .lnk.od .ar { color: #888 !important; }
.lnk.od { color: #1a1a1a !important; border-bottom-color: #888 !important; }

/* ===== タイミングストリップ ===== */
.timing { border-color: #d8d8d8 !important; color: #1a1a1a !important; }
.timing .lead { background: #888 !important; color: #fff !important; }
.timing .cell { border-left-color: #d8d8d8 !important; }
.timing .v { color: #1a1a1a !important; }
.timing .k { color: #6b6b6b !important; }

/* ===== バッジ類 ===== */
.nbadge.race, .nbadge.ev { background: #888 !important; color: #fff !important; }
.role-badge, .pcard .role-badge { background: #888 !important; }
.sri-status.done, .sri-status.next { background: #888 !important; color: #fff !important; }
.sri-status.tbd { background: #d8d8d8 !important; color: #555 !important; }
.champ-badge { background: #888 !important; }
.rlog-item .res { background: #888 !important; }

/* ===== アイブロー装飾 ===== */
.eyebrow { color: #6b6b6b !important; }
.eyebrow::before { background: #888 !important; }
.eyebrow.od { color: #888 !important; }

/* ===== HUD / タブ系 ===== */
.hud { border-top-color: #d8d8d8 !important; }
.cat-tabs { border-bottom-color: #d8d8d8 !important; }
.cat-tab.on, .mtab.on, .rtab.on, .gtab.on {
  color: #1a1a1a !important;
  border-bottom-color: #1a1a1a !important;
}
.cat-tab:hover:not(.on), .mtab:hover:not(.on) { color: #333 !important; }
.tl-rnd.done .rnd-dot, .tl-rnd.done::after { background: #888 !important; border-color: #888 !important; }
.tl-rnd.current .rnd-dot { background: #1a1a1a !important; border-color: #888 !important; box-shadow: 0 0 0 4px rgba(100,100,100,.2) !important; }
.tl-rnd::after { background: #d8d8d8 !important; }
.standings { background: #f0f0f0 !important; }
.std-label { border-right-color: #d8d8d8 !important; color: #888 !important; }

/* ===== カード類 ===== */
.pcard, .rcard, .mcard, .job, .vcard, .bcard, .mchip,
.rsched, .race-ticket, .stream-card, .sched-item, .wcta-block,
.cta-block, .cat-detail .cdbody, .machine-display .machine-info,
.machine-info, .story-body {
  background: #f8f8f8 !important;
  border-color: #d8d8d8 !important;
}
.pcard:hover { border-color: #333 !important; }
.rs-head { border-bottom-color: #d8d8d8 !important; color: #888 !important; }
.rs-item { border-bottom-color: #d8d8d8 !important; }
.rs-item.current { background: rgba(0,0,0,.04) !important; }
.sched-item.current { border-color: #888 !important; background: rgba(0,0,0,.04) !important; }

/* ===== テーブル ===== */
.season-table th { border-bottom-color: #d8d8d8 !important; color: #888 !important; }
.season-table td { border-bottom-color: #d8d8d8 !important; }

/* ===== スタット / スペック ===== */
.stat-band .wrap, .spec-band .wrap { border-color: #d8d8d8 !important; }
.stt { border-right-color: #d8d8d8 !important; }
.spec-cell { border-left-color: #d8d8d8 !important; border-right-color: #d8d8d8 !important; }
.spec-cell .sv small { color: #888 !important; }
.ss-cell { border-right-color: #d8d8d8 !important; }
.ss-cell .v.blue, .rc-cell .v.pos { color: #1a1a1a !important; }

/* ===== ニュース/レポート ===== */
.news-article { border-bottom-color: #d8d8d8 !important; }
.news-article:first-child { border-top-color: #d8d8d8 !important; }
.na-arrow { color: #888 !important; }
.repcard { background: #fff !important; border-bottom-color: #d8d8d8 !important; }
.repcards { border-color: #d8d8d8 !important; }
.rel-item { background: #fff !important; border-color: #d8d8d8 !important; }
.rel-item:hover { border-color: #333 !important; }
.rf-sub .rcard h3 { color: #1a1a1a !important; }
.rf-sub .rcard p { color: #6b6b6b !important; }
.rf-sub .rcard .rlnk { color: #1a1a1a !important; }
.fn-sub-item h4 { color: #1a1a1a !important; }

/* ===== プルクオート / 結果カード ===== */
.pull-quote { background: #f0f0f0 !important; border-left-color: #888 !important; }
.pull-quote p { color: #1a1a1a !important; }
.pull-quote cite { color: #888 !important; }
.result-card { background: #f5f5f5 !important; border-left-color: #888 !important; }
.rc-grid { border-color: #d8d8d8 !important; }
.rc-cell { border-right-color: #d8d8d8 !important; }
.rc-cell .k { color: #888 !important; }
.rc-cell .v { color: #1a1a1a !important; }

/* ===== ギャラリー ===== */
.gallery-item .gplay { background: rgba(0,0,0,.15) !important; }
.gallery-item .gplay::after { border-left-color: #1a1a1a !important; }

/* ===== VISIT セクション ===== */
.visit-full { border-color: #d8d8d8 !important; }
.visit-full .vbody { background: #fff !important; }
.can span { background: #f5f5f5 !important; border-color: #d8d8d8 !important; }

/* ===== モジュール（guide） ===== */
.modules { border-color: #d8d8d8 !important; }
.mod { background: #f8f8f8 !important; border-right-color: #d8d8d8 !important; }
.mod:hover { background: #f0f0f0 !important; }
.mod h4 { color: #1a1a1a !important; }
.mod p { color: #6b6b6b !important; }
.mod .n { color: #888 !important; }

/* ===== フィルター ===== */
.filt span, .mode-toggle span, .cf { border-color: #d8d8d8 !important; color: #6b6b6b !important; }
.filt span.on, .mode-toggle span.on, .cf.on { background: #1a1a1a !important; color: #fff !important; border-color: #1a1a1a !important; }
.fitem { border-color: transparent !important; }
.fitem.on { border-color: #1a1a1a !important; background: #f5f5f5 !important; color: #1a1a1a !important; }

/* ===== エントリーナビ ===== */
.entry-nav { background: #fff !important; border-bottom-color: #d8d8d8 !important; }
.en-item { border-right-color: #d8d8d8 !important; color: #1a1a1a !important; }
.en-item:hover { background: #f5f5f5 !important; }
.en-cat { color: #888 !important; }
.en-ttl { color: #1a1a1a !important; }
.en-arrow { color: #888 !important; }

/* ===== ショーケース / フィルタータグ ===== */
.cchip { border-color: #d8d8d8 !important; color: #6b6b6b !important; }
.showgrid .s { min-height: 130px; }

/* ===== スライダー ===== */
.slider-btn { border-color: #d8d8d8 !important; color: #1a1a1a !important; }
.slider-btn:hover { background: #888 !important; border-color: #888 !important; }
.slider-dot { background: #d8d8d8 !important; }
.slider-dot.on { background: #888 !important; }
.slide-label { border-left-color: #888 !important; }

/* ===== フッター ===== */
footer.site { background: #f5f5f5 !important; border-top-color: #d8d8d8 !important; color: #6b6b6b !important; }
.foot-top { border-bottom-color: #d8d8d8 !important; }
.foot-brand { color: #1a1a1a !important; }
.foot-brand .p { color: #888 !important; }
footer .fnav a { color: #6b6b6b !important; }
footer .fnav a:hover { color: #1a1a1a !important; }
.sns a { border-color: #d8d8d8 !important; color: #6b6b6b !important; }

/* ===== 目次ページ ===== */
.review-header { background: #fff !important; border-bottom-color: #d8d8d8 !important; }
.review-badge { border-color: #888 !important; color: #888 !important; }
.review-badge::before { background: #888 !important; }
.toc-hero { background: #fff !important; }
.toc-hero h1 { color: #1a1a1a !important; }
.toc-hero .desc, .toc-hero .meta-item { color: #6b6b6b !important; }
.toc-hero .meta-item .n { color: #1a1a1a !important; }
.sec-head { border-bottom-color: #d8d8d8 !important; }
.sec-head h2 { color: #1a1a1a !important; }
.page-card { background: #f8f8f8 !important; border-color: #d8d8d8 !important; }
.page-card:hover { border-color: #1a1a1a !important; }
.pc-cat { color: #888 !important; }
.pc-name { color: #1a1a1a !important; }
.pc-desc { color: #6b6b6b !important; }
.pc-url { color: #8a8a8a !important; }
.pc-arrow { color: #888 !important; }
.pc-foot { border-top-color: #d8d8d8 !important; }
.page-card:hover .pc-arrow { color: #1a1a1a !important; }
.pw-note { background: #f0f0f0 !important; border-color: #d8d8d8 !important; }
.pw-note .pn-icon { background: #888 !important; }
.pw-note p { color: #6b6b6b !important; }
.pw-note strong { color: #1a1a1a !important; }
.site-link, .back { border-color: #d8d8d8 !important; color: #6b6b6b !important; }
.site-link:hover, .back:hover { color: #1a1a1a !important; border-color: #1a1a1a !important; }

/* ===== プロフィール詳細ページ ===== */
.split-body { background: #fff !important; }
.split-body h2 { color: #1a1a1a !important; }
.split-body p { color: #6b6b6b !important; }
.rlog-item { border-bottom-color: #d8d8d8 !important; }
.quote-band { background: #f5f5f5 !important; border-top-color: #d8d8d8 !important; }
.quote-band blockquote { color: #1a1a1a !important; }
.mchip { border-color: #d8d8d8 !important; }
.mchip:hover { border-color: #1a1a1a !important; }
.mchip .mc { color: #888 !important; }
.mchip .mn { color: #1a1a1a !important; }

/* ===== ニュース詳細 ===== */
.article-hero { background: #f5f5f5 !important; }
.article-feature { background: #e3e3e3 !important; background-image: none !important; }
.article-lead { border-left-color: #888 !important; }
.related-section { background: #f8f8f8 !important; border-top-color: #d8d8d8 !important; }
.article-nav { background: #f5f5f5 !important; border-top-color: #d8d8d8 !important; }
.anav-item .ttl, .rnav-item .ttl { color: #1a1a1a !important; }
.anav-item .dir, .rnav-item .dir { color: #888 !important; }
.anav-item .wrap, .rnav-item { border-color: #d8d8d8 !important; }

/* ===== レポート詳細 ===== */
.report-header { background: #f5f5f5 !important; border-bottom-color: #d8d8d8 !important; }
.report-header h1 { color: #1a1a1a !important; }
.gallery-section { background: #f8f8f8 !important; border-top-color: #d8d8d8 !important; }
.report-nav { background: #f5f5f5 !important; border-top-color: #d8d8d8 !important; }

/* ===== 採用詳細 ===== */
.story-body .step, .seq-body .step { color: #888 !important; }
.story-body h3, .seq-body h3 { color: #1a1a1a !important; }
.benefit-grid .bcard { background: #f8f8f8 !important; border-color: #d8d8d8 !important; }
.req-item { background: #fff !important; border-color: #d8d8d8 !important; }
.req-item .ri { background: #888 !important; }
.entry-block, .entry-section { background: #f5f5f5 !important; }
.entry-block h2, .entry-section h2 { color: #1a1a1a !important; }
.entry-block p, .entry-section p { color: #6b6b6b !important; }
.entry-note { color: #8a8a8a !important; }
.facts-band { background: #f5f5f5 !important; border-bottom-color: #d8d8d8 !important; }
.fct .fk { color: #888 !important; }
.fct .fv { color: #1a1a1a !important; }

/* ===== マシン詳細 ===== */
.ms-body { background: #fff !important; }
.ms-body h2 { color: #1a1a1a !important; }
.ms-body p { color: #6b6b6b !important; }
.machine-gallery { background: #e8e8e8 !important; }

/* ===== ガイドページ ===== */
.guide-tabs { border-bottom-color: #d8d8d8 !important; }
.gtab { color: #888 !important; border-bottom-color: transparent !important; }
.gtab.on { color: #1a1a1a !important; border-bottom-color: #1a1a1a !important; }
.point { background: #f5f5f5 !important; border-color: #d8d8d8 !important; }
.point .pn { color: #888 !important; }
.gitem { background: #fff !important; border-color: #d8d8d8 !important; }
.gterm { color: #888 !important; }
.stream-card { background: #f8f8f8 !important; border-color: #d8d8d8 !important; }
.stream-card .scat { color: #888 !important; }
.stream-card h4, .stream-card p { color: #1a1a1a !important; }
.check { background: #fff !important; border-color: #d8d8d8 !important; }
.check .ck { border-color: #888 !important; color: #888 !important; }
.sound-block .sov { background: rgba(240,240,240,.85) !important; }
.sound-block .sov h3 { color: #1a1a1a !important; }
.sound-block .sov p { color: #6b6b6b !important; }
.sound-block .sov .play-btn { border-color: #888 !important; color: #888 !important; }

/* ===== アバウトページ ===== */
.about-statement { color: #1a1a1a !important; }
.about-statement em { color: #888 !important; }
.hitem { border-bottom-color: #d8d8d8 !important; }
.hitem::before { background: #888 !important; }
.history { border-left-color: #d8d8d8 !important; }
.hitem .year { color: #888 !important; }
.hitem h4 { color: #1a1a1a !important; }
.hitem p { color: #6b6b6b !important; }
.facts-row { border-color: #d8d8d8 !important; }
.fact { border-right-color: #d8d8d8 !important; }
.fact .k { color: #888 !important; }
.fact .v { color: #1a1a1a !important; }
.fact .v small { color: #6b6b6b !important; }

/* ===== ログインページ ===== */
.submit { background: #1a1a1a !important; }
.submit:hover { background: #333 !important; }
