
  html[data-theme="dark"] body{background:#161c28;color:#f4eee5}
  html[data-theme="dark"] #viewSettings{background:#101a2d}
  html[data-theme="dark"] #viewSettings .settings-body{background:#202631}
  html[data-theme="dark"] #viewSettings .settings-reference-card{background:#2a313d;color:#f4eee5;border-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] #viewSettings .settings-section-title{color:#f4eee5}
  html[data-theme="dark"] #viewSettings .settings-select,html[data-theme="dark"] #viewSettings #settingsLocationStatus{color:#cfc8bd}
  html[data-theme="dark"] .support-btn{background:#2a313d;color:#f4eee5;border-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] .support-btn .support-price{color:#ff7a5c}
  html[data-theme="dark"] .support-btn .support-label{color:#9c9488}
  html[data-theme="dark"] .settings-entitlement-card{background:#2a313d;border-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] .settings-entitlement-status{color:#ff7a5c}
  html[data-theme="dark"] .settings-entitlement-code-hint{color:#9c9488}
  html[data-theme="dark"] .settings-entitlement-code{color:#f4eee5}
  html[data-theme="dark"] .settings-entitlement-input{background:#202631;color:#f4eee5;border-color:rgba(255,255,255,.15)}
  html[data-theme="dark"] .view-header h2{color:#f4eee5}
  html[data-theme="dark"] .panel{background:#202631;border-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] .panel select,html[data-theme="dark"] .panel input[type=time]{background:#2a313d;color:#f4eee5;border-color:rgba(255,255,255,.15)}
  html[data-theme="dark"] .mode-toggle button{background:#2a313d;color:#cfc8bd}
  html[data-theme="dark"] .progress-bar{background:#202631;border-color:rgba(255,255,255,.1);color:#cfc8bd}
  html[data-theme="dark"] .bottom-tab-bar{background:rgba(26,31,42,.96);border-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] .stop-title{color:#f4eee5}
  html[data-theme="dark"] .zukan-card{background:#2a313d;border-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] .zukan-card .zukan-noimg{background:#333b47;color:rgba(244,238,229,.25)}
  html[data-theme="dark"] .zukan-card .zukan-info{background:rgba(32,38,49,.92);border-top-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] .zukan-card .zukan-name{color:#f4eee5}
  html[data-theme="dark"] .zukan-card.unvisited .zukan-name,html[data-theme="dark"] .zukan-card.unvisited .zukan-no{color:rgba(244,238,229,.4)}
  /* var(--vermillion)はライト背景前提の濃い朱色で、ダークの.zukan-info背景では
     コントラスト比2.36程度しか出ず読みにくいため、明るい珊瑚色へ差し替える(4.5以上を確保)。 */
  html[data-theme="dark"] .zukan-card .zukan-no{color:#ff7a5c;background:rgba(230,120,100,0.18)}
  html[data-theme="dark"] .zukan-card.unvisited .zukan-no{background:rgba(244,238,229,0.12)}
  /* #viewZukanのIDセレクタを含むライトモード既定値(goshuin.css)の方が詳細度が高く、
     上記のダークテーマ指定を上書きしてしまうため、同じ詳細度で明示的に再指定する
     (背景がライトのまま残ると、ここで指定している明るい文字色との対比が崩れるため)。 */
  html[data-theme="dark"] #viewZukan .zukan-card{background:#2a313d;border-color:rgba(255,255,255,.1)}
  html[data-theme="dark"] #viewZukan .zukan-card .zukan-info{background:rgba(32,38,49,.92);border-top-color:rgba(255,255,255,.1)}
  /* var(--indigo-mid)は明るい生成り背景を前提にした濃紺色のため、ダーク背景では暗くて読みにくい。
     ラベル・出発到着時刻・リンクなど文字として使っている箇所はまとめて明るい水色系に置き換える。 */
  html[data-theme="dark"] label,
  html[data-theme="dark"] .time-fields .tf-colon,
  html[data-theme="dark"] .locate-btn,
  html[data-theme="dark"] .share-btn,
  html[data-theme="dark"] .honzon-toggle,
  html[data-theme="dark"] .legend,
  html[data-theme="dark"] .stop-time,
  html[data-theme="dark"] .segment-note .map-link{color:#9db8e6}
  html[data-theme="dark"] .locate-btn,html[data-theme="dark"] .share-btn{border-color:#9db8e6}
  html[data-theme="dark"] .stop-meta{color:#a8a196}