/* =========================================================
   NRT PARKING — daylight.css（v6.14.0「昼の空港」）
   オーナー決定（2026-10-24・案1）: 白地 × 紺 × 押してほしいボタンだけオレンジ。
   根拠: 「成田空港 駐車場」上位サイトは白地が5〜8割・暗い面は0〜21%（当サイトは28%で最多）。
         research/phase3/12-daylight.md。
   方針:
   - 既存の CSS は書き換えず、このファイルを最後に読み込んで上書きする（外せば元の配色に戻る）。
   - 暗いまま残すのはトップの出発案内板（.nrt-fids）と運賃ボード（.nrt-board--merged）だけ。
   - 文字と背景のコントラストは 4.5:1 以上（大きい文字は 3:1 以上）。
   ========================================================= */

:root {
	--nrt-paper:  #F3F6FA; /* 淡い空色（地） */
	--nrt-white:  #FFFFFF;
	--nrt-hair:   #E3E8F0;
	--nrt-hair-2: #EEF2F7;
	--nrt-gray:   #5B6472; /* 白の上で 5.98:1 */
	--nrt-faint:  #5B6472;
	--nrt-dep:    #1E3A8A; /* 紺（見出し・リンク・信頼）白の上で 10.36:1 */
	--nrt-indigo: #1E3A8A;
	--nrt-arr:    #C2410C; /* オレンジ（押してほしいボタン）白文字で 5.18:1 */
	--nrt-terra:  #C2410C;
	--nrt-ivory:  #F3F6FA;
	--nrt-cta:    #C2410C;
	--nrt-cta-2:  #9A3412; /* ボタンを押したとき */
	--nrt-sun:    #FFD23F; /* 空港サインの黄（NEW など小さな印だけ） */
	--nrt-navy-2: #172E6E; /* 紺の面（フッターなど）*/
}

body.nrt-body { background: var(--nrt-white); }
::selection { background: #DBE4FF; color: #15171A; }

/* ---------- ボタン ---------- */
.nrt-btn--dep, a.nrt-btn--dep, .nrt-body a.nrt-btn--dep,
.nrt-btn--onlight, a.nrt-btn--onlight, .nrt-body a.nrt-btn--onlight {
	background: var(--nrt-cta); color: #fff; -webkit-text-fill-color: #fff; border-color: var(--nrt-cta); border-radius: 6px; font-weight: 600;
}
.nrt-btn--dep:hover, a.nrt-btn--dep:hover, .nrt-body a.nrt-btn--dep:hover,
.nrt-btn--onlight:hover, a.nrt-btn--onlight:hover, .nrt-body a.nrt-btn--onlight:hover {
	background: var(--nrt-cta-2); color: #fff; -webkit-text-fill-color: #fff; border-color: var(--nrt-cta-2);
}
.nrt-btn--ghost-light, a.nrt-btn--ghost-light, .nrt-body a.nrt-btn--ghost-light,
.nrt-btn--ghost, a.nrt-btn--ghost, .nrt-body a.nrt-btn--ghost {
	background: #fff; color: var(--nrt-dep); -webkit-text-fill-color: var(--nrt-dep); border: 1.5px solid var(--nrt-dep); border-radius: 6px; font-weight: 600;
}
.nrt-btn--ghost-light:hover, a.nrt-btn--ghost-light:hover, .nrt-body a.nrt-btn--ghost-light:hover,
.nrt-btn--ghost:hover, a.nrt-btn--ghost:hover, .nrt-body a.nrt-btn--ghost:hover { background: #EEF2FF; border-color: var(--nrt-dep); }
.nrt-btn--arr, a.nrt-btn--arr, .nrt-body a.nrt-btn--arr { border-radius: 6px; }
/* LINE: 白地に緑の枠・濃い緑の文字（白文字×LINE緑は 2.26:1 で読みにくい） */
.nrt-btn--line, a.nrt-btn--line, .nrt-body a.nrt-btn--line {
	background: #fff; color: #007A37; -webkit-text-fill-color: #007A37; border: 1.5px solid #06C755; border-radius: 6px; font-weight: 600;
}
.nrt-btn--line:hover, a.nrt-btn--line:hover, .nrt-body a.nrt-btn--line:hover { background: #E8F8EE; color: #00662E; -webkit-text-fill-color: #00662E; border-color: #06C755; }
.nrt-chip--line { color: #007A37; }
/* 案内板・運賃ボードの中のボタンは、暗い面の配色のまま */
.nrt-body .nrt-board--merged a.nrt-btn--dep { background: var(--nrt-amber); color: var(--nrt-night); -webkit-text-fill-color: var(--nrt-night); border-color: var(--nrt-amber); }
@media (hover: hover) and (pointer: fine) { .nrt-body .nrt-board--merged a.nrt-btn--dep:hover { background: #fff; border-color: #fff; } }

/* ---------- ヘッダー（白） ---------- */
.nrt-header { background: rgba(255,255,255,.96); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-bottom: 1px solid var(--nrt-hair); }
.nrt-header__brand, .nrt-header__mark, .nrt-header__name-main { color: var(--nrt-dep); }
/* ロゴの下線は元の紺→オレンジの細線（components.css）をそのまま使う */
.nrt-header__name-sub { color: var(--nrt-gray); }
.nrt-body .nrt-nav a { color: #15171A; }
.nrt-nav a::after { background: var(--nrt-cta); }
@media (hover: hover) and (pointer: fine) { .nrt-body .nrt-nav a:hover { color: var(--nrt-dep); } }
.nrt-body a.nrt-header__cta { background: var(--nrt-cta); color: #fff; -webkit-text-fill-color: #fff; border-color: var(--nrt-cta); border-radius: 6px; font-weight: 600; }
@media (hover: hover) and (pointer: fine) { .nrt-body a.nrt-header__cta:hover { background: var(--nrt-cta-2); border-color: var(--nrt-cta-2); } }
.nrt-nav-toggle span { background: var(--nrt-dep); }
.nrt-drawer { background: #fff; border-bottom: 1px solid var(--nrt-hair); }
.nrt-body .nrt-drawer a { color: #15171A; border-top-color: var(--nrt-hair); }

/* ---------- 新着の帯（parts/new-strip.php） ---------- */
.nrt-newstrip { background: var(--nrt-dep); color: #fff; height: 38px; overflow: hidden; }
.nrt-newstrip__inner { max-width: 1240px; margin-inline: auto; height: 100%; display: flex; align-items: center; gap: .9rem; padding: 0 clamp(1rem, 4vw, 2rem); }
.nrt-newstrip__tag { flex: none; font-family: var(--nrt-mono); font-size: .66rem; font-weight: 500; letter-spacing: .16em; line-height: 1; padding: .42em .6em; background: var(--nrt-sun); color: #15171A; border-radius: 2px; }
.nrt-newstrip__list { position: relative; flex: 1; min-width: 0; height: 100%; margin: 0; padding: 0; list-style: none; }
.nrt-newstrip__item { position: absolute; inset: 0; display: flex; align-items: center; gap: .8rem; opacity: 0; transform: translateY(60%);
	animation: nrt-newstrip 20s infinite; animation-delay: calc(var(--i) * 4s - .6s); }
/* 全体を0.6秒前倒し: 1本目はページを開いた瞬間から見えている（透明から始めない） */
.nrt-newstrip__item:first-child { opacity: 1; transform: none; }
.nrt-newstrip__date { flex: none; font-family: var(--nrt-mono); font-size: .74rem; color: var(--nrt-sun); letter-spacing: .04em; }
.nrt-body a.nrt-newstrip__link { min-width: 0; color: #fff; text-decoration: none; font-size: .84rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (hover: hover) and (pointer: fine) { .nrt-body a.nrt-newstrip__link:hover { text-decoration: underline; text-underline-offset: 3px; } .nrt-newstrip:hover .nrt-newstrip__item { animation-play-state: paused; } }
.nrt-body a.nrt-newstrip__more { flex: none; color: var(--nrt-sun); text-decoration: none; font-size: .76rem; white-space: nowrap; }
@keyframes nrt-newstrip {
	0% { opacity: 0; transform: translateY(60%); }
	3%, 19% { opacity: 1; transform: none; }
	22%, 100% { opacity: 0; transform: translateY(-60%); }
}
@media (max-width: 600px) { .nrt-newstrip__date { display: none; } .nrt-body a.nrt-newstrip__link { font-size: .8rem; } }
/* 5本ぶんの切り替え（20秒）に合わせた作り。5本未満は切り替えない */
.nrt-newstrip.is-static .nrt-newstrip__item { animation: none; }
.nrt-newstrip.is-static .nrt-newstrip__item:not(:first-child) { display: none; }
@media (prefers-reduced-motion: reduce) {
	.nrt-newstrip__item { animation: none; }
	.nrt-newstrip__item:not(:first-child) { display: none; }
}

/* ---------- ヒーロー（淡い空色。右の出発案内板だけ夜のまま） ---------- */
.nrt-hero--fids { background: var(--nrt-paper); color: #15171A; }
.nrt-hero--fids .nrt-hero__bg { display: none; }
.nrt-hero--fids .nrt-hero__eyebrow { color: var(--nrt-gray); }
.nrt-hero--fids .nrt-hero__eyebrow span { background: var(--nrt-dep); color: #fff; }
.nrt-hero--fids .nrt-hero__title { color: var(--nrt-dep); font-weight: 400; }
.nrt-hero--fids .nrt-hero__accent { color: var(--nrt-cta); font-weight: 500; }
.nrt-hero--fids .nrt-hero__lead { color: #3A3D42; }
.nrt-hero__save { color: var(--nrt-gray); }
.nrt-hero__save strong { color: var(--nrt-dep); font-weight: 600; }
.nrt-hero__save a { color: var(--nrt-dep); }
.nrt-fids { box-shadow: 0 30px 60px -36px rgba(30,58,138,.45); }

/* ---------- ゲート番号・ラベル ---------- */
.nrt-top .nrt-sim__eyebrow::before, .nrt-top .nrt-pickup__eyebrow::before, .nrt-top .nrt-needs__eyebrow::before, .nrt-top .nrt-feed__eyebrow::before,
.nrt-top .nrt-steps__eyebrow::before, .nrt-top .nrt-hub__eyebrow::before, .nrt-top .nrt-spot__eyebrow::before { background: var(--nrt-dep); color: #fff; }

/* ---------- 夜の面だった小さな部品を紺に ---------- */
.nrt-plate--tag, .nrt-feed__thumb--tag { background: linear-gradient(160deg, #2747A8 0%, var(--nrt-dep) 55%, var(--nrt-navy-2) 100%); color: #fff; }
.nrt-plate__top span:first-child { background: var(--nrt-sun); color: #15171A; }
.nrt-plate__top, .nrt-plate__fare, .nrt-feed__tk, .nrt-feed__ty { color: rgba(255,255,255,.78); }
.nrt-plate__code, .nrt-feed__td { -webkit-text-stroke: 1px rgba(255,255,255,.85); }
.nrt-plate--tag .nrt-plate__name { color: #fff; }
.nrt-plate__keys { background: repeating-linear-gradient(90deg, rgba(255,255,255,.55) 0 4px, transparent 4px 9px); }
@media (hover: hover) and (pointer: fine) { .nrt-card--photo:hover .nrt-plate__code, .nrt-pick:hover .nrt-plate__code, .nrt-feed__card:hover .nrt-feed__td { color: #fff; } }
.nrt-body a.nrt-need--cta { background: var(--nrt-dep); color: #fff; }
.nrt-need--cta .nrt-need__label { color: rgba(255,255,255,.75); }
.nrt-need__cta-go { color: var(--nrt-sun); }
.nrt-diff__cell--save { background: var(--nrt-dep); }
.nrt-diff__cell--save .nrt-diff__cap { color: rgba(255,255,255,.8); }
.nrt-diff__cell--save .nrt-diff__num { color: #fff; }
.nrt-sim__daysbox { background: var(--nrt-dep); }
.nrt-sim__dayscap, .nrt-sim__daysunit { color: rgba(255,255,255,.8); }
.nrt-sim__daysval #nrt-days { color: #fff; }
.nrt-ticker__label, .nrt-ticker__pr { background: var(--nrt-dep); color: #fff; }

/* ---------- フッター（紺） ---------- */
.nrt-footer { background: var(--nrt-navy-2); color: #D6DEEE; }
.nrt-footer__brand { color: #fff; }
.nrt-footer__h { color: var(--nrt-sun); }
.nrt-body .nrt-footer__col a { color: #E3E9F6; }
@media (hover: hover) and (pointer: fine) { .nrt-body .nrt-footer__col a:hover { color: #fff; } }
.nrt-footer__disclosure { color: #CBD5EA; border-top-color: rgba(255,255,255,.14); }
.nrt-body .nrt-footer__disclosure a { color: #fff; }
.nrt-footer__copy { color: #CBD5EA; }

/* ---------- 404 は夜の配色のまま（文字の色も夜用のため） ---------- */

/* ---------- SWELL（親テーマ）の部品: 旧い記事の見出しの帯などを紺に揃える ---------- */
body.nrt-body { --color_main: #1E3A8A; --color_htag: #1E3A8A; --color_main_thin: rgba(30,58,138,.05); --color_main_dark: #172E6E; }
/* カテゴリー名: 文字と背景が同じ色（#04384c）で読めなかった（v6.14.0 以前から） */
.nrt-body a.c-categoryList__link { background: #EEF2FF; color: var(--nrt-dep); -webkit-text-fill-color: var(--nrt-dep); border: 1px solid #D6DFFB; border-radius: 4px; }

/* ---------- 記事（nrtA 型・本文の中の色の変数を上書き） ---------- */
body .nrtA { --dep: #1E3A8A; --arr: #C2410C; --paper: #F3F6FA; --hair: #E3E8F0; --hair2: #EEF2F7; --gray: #5B6472; }
