/* 台風ページ専用CSS（2026-08-20 weather/typhoon/index.php のインラインstyleを統合） */

/* 見出しデザイン統一(2026-08-19): 潮見表(h2.tide-table)・天気予報トップ「全国のアメダスランキング」(.weather-section-heading)と同じ
   「英字ラベル+オーシャンライン(濃紺→水色→薄グレーの3色下線)」。ラベルはdata-eyebrow属性から::beforeで表示。
   !importantはstyle.cssの旧ルール(.post_title h2.tide-table 青下線 / .post_title h2.shio-tidegraph 青帯 / 415px以下MQ .post_title h2{padding:10px !important})に勝つため。
   発表時刻(.update-time / 天気図の.update_time)は旧デザインの絶対配置(右上)をやめ、見出しと同じ行の右端に配置(折返し時は次行右寄せ) */
.post_title h2.tide-table:not(.h2-legacy),.post_title h2.typhoon-weather-map{position:relative;display:flex;flex-wrap:wrap;align-items:flex-end;column-gap:12px;background:none;border-bottom:none;border-left:none;color:#082f53;margin:20px 0 10px !important;padding:0 0 .55em 7px !important;font-size:clamp(21px,2vw,23px) !important;line-height:1.4;letter-spacing:.02em}
.post_title h2.tide-table:not(.h2-legacy)::after,.post_title h2.typhoon-weather-map::after{position:absolute;right:0;bottom:0;left:0;height:3px;content:"";background:linear-gradient(90deg,#0759a7 0 16%,#81d7f0 16% 28%,#dce7f0 28% 100%)}
.post_title h2.tide-table:not(.h2-legacy)[data-eyebrow]::before,.post_title h2.typhoon-weather-map[data-eyebrow]::before{display:block;flex-basis:100%;content:attr(data-eyebrow);margin:0;color:#157bb4;font-family:Arial,sans-serif;font-size:10px;font-weight:800;letter-spacing:.18em;line-height:1.35}
.post_title h2.tide-table:not(.h2-legacy) .update-time,.post_title h2.typhoon-weather-map .update_time{position:static;margin-left:auto;color:#5b7186;font-family:Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.06em;line-height:1.6;white-space:nowrap}
/* .h2-legacy: 旧デザイン(style.cssの青下線)のまま残す見出し(Windy) 2026-08-19 */
/* よくある質問のディープシー見出し(slb-chrome.css .slb-heading--deep-sea): このページは.type-post配下のためstyle.css「.type-post .post_title h2{margin:15px 0 8px;padding:8px 9px 7px}」(0,2,1)に負けて余白が潰れる。日の出トップと同じ値を詳細度を上げて再指定(2026-08-19) */
.type-post .post_title h2.slb-heading--deep-sea{margin:1.7em 0 .9em;padding:9px 0 14px 18px;background-color:transparent;border:0 /* .surf_spot h2 の青4px下線(style.css)がディープシーの下端ラインの下に重なって二重線になるため解除 */}

.tf-map-tabs{display:flex;margin:0 0 6px}.tf-map-tab{flex:1;text-align:center;padding:5px 0;border:1px solid #ccc;font-size:12px;font-weight:bold;cursor:pointer;background:#f8f8f8;box-sizing:border-box}.tf-map-tab+.tf-map-tab{border-left:none}.tf-map-tab.active{background:#FFA500;color:#fff;border-color:#FFA500}
.jtwc-time-label{display:inline-block;font-size:10px;white-space:nowrap;background:rgba(255,255,255,0.88);border:1px solid #1a9850;color:#333;font-weight:bold;border-radius:4px;padding:0 4px;line-height:1.5;box-shadow:0 1px 2px rgba(0,0,0,0.15)}

.leaflet-tooltip{font-size:12px;line-height:1.6;padding:8px 12px}
.leaflet-tooltip table{border-collapse:collapse}
.leaflet-tooltip th{background:#2c7eb9;color:#fff;padding:4px 8px;text-align:left;font-size:12px}
.leaflet-tooltip td{padding:2px 8px;border-bottom:1px solid #eee;font-size:11px}
.leaflet-tooltip tr:last-child td{border-bottom:none}
.leaflet-tooltip .tk{color:#666;white-space:nowrap}
.leaflet-tooltip .tv{font-weight:bold}

#ai_typhoon_forecast .ai_forecast_text{max-height:7.5em;overflow:hidden;transition:max-height 0.3s}
#ai_forecast_toggle:checked ~ #ai_typhoon_forecast .ai_forecast_text{max-height:none}
#ai_forecast_toggle:checked ~ #ai_typhoon_forecast .ai_forecast_more{display:none}
.ai_forecast_more{display:block;text-align:center;padding:8px 0;color:#2c7eb9;cursor:pointer;font-weight:bold;font-size:12px}

#typhoon_contents { margin: 15px 0;}

/* 進路予想テーブルの文字サイズ（2026-07-28: インラインから移管。スマホは2px縮小） */
.typhoon-forecast-table th{font-size:12px}
.typhoon-forecast-table td{font-size:14px!important}
/* 階級(2列目)は2px・位置(3列目)は1px小さく、速さ(毎時〇〇キロ)は2px小さく（2026-07-28） */
.typhoon-forecast-table td:nth-child(2){font-size:12px!important}
.typhoon-forecast-table td:nth-child(3){font-size:12px!important}
.typhoon-forecast-table .t2-speed{font-size:12px}
@media (max-width:770px){
.typhoon-forecast-table th{font-size:10px}
.typhoon-forecast-table td{font-size:12px!important}
.typhoon-forecast-table td:nth-child(2){font-size:10px!important}
.typhoon-forecast-table td:nth-child(3){font-size:10px!important}
.typhoon-forecast-table .t2-speed{font-size:10px}
.typhoon-forecast-table .t2-class-badge{padding:1px 1px!important}
}

.tab-container{display:flex;cursor:pointer;margin-bottom:0;width:100%}.weather-map-tab{flex:1;text-align:center;padding:5px 0;border-top:1px solid #ccc;border-bottom:1px solid #ccc;border-left:1px solid #ccc;box-sizing:border-box;font-weight:700;font-size:12px}.weather-map-tab:last-child{margin-right:0;border-right:1px solid #ccc}.weather-map-tab.active{background-color:#FFA500;color:#fff;font-weight:700}.tab-content{display:none}.tab-content.active{display:block}.weather_map_img{text-align:center}.post_title h2.typhoon-weather-map{border-left:none;position:relative;margin:20px 0 8px 2px;/* margin-top 0→20px: 上の進路予想テーブルと密着していたため(2026-08-19) */font-size:18px;padding:8px 4px 7px 8px}h2.typhoon-weather-map .update_time{position:absolute;top:13px;right:10px;font-size:12px}

.warning-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:15px}
@media(max-width:770px){.warning-grid{grid-template-columns:1fr 1fr}}
.warning-card{background:#fff;border:1px solid #ddd;border-radius:6px;overflow:hidden}
.warning-card-title{padding:8px 12px;font-size:13px;font-weight:bold;cursor:pointer;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa}
.warning-card-title:hover{background:#2c7eb9;color:#fff}.warning-card-title:hover::after{color:#fff}
.warning-card-title::after{content:"▼";font-size:10px;color:#999;transition:transform 0.2s}
.warning-card.open .warning-card-title::after{transform:rotate(180deg)}
.warning-card-body{display:none;padding:10px 12px;font-size:12px;line-height:1.7;border-top:1px solid #eee;color:#333}
.warning-card.open{grid-column:1/-1}.warning-card.open .warning-card-body{display:block}

.table-scroll {height: 200px;overflow: hidden;overflow-y: scroll;}

.typhoon-info-container h3 i,.typhoon-info-container h3 span.icon{margin-right:10px;font-size:1.2em}.realtime-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:15px;margin:0 0 2em}.knowledge-block{background-color:#f4f9ff;padding:20px;border-radius:12px;margin-bottom:20px}.knowledge-block ul{margin-top:15px;padding-left:25px}.knowledge-block li{margin-bottom:10px}.highlight-red{color:#d32f2f;font-weight:700}.info-box{background-color:#fffbe6;border-left:6px solid #ffc107;padding:15px 20px;margin:25px 0;border-radius:4px}.info-box.warning{background-color:#ffebee;border-left-color:#d32f2f}.info-box-title{display:block;font-weight:700;font-size:1.1em;margin-bottom:.5em}.diagram-figure{text-align:center}.diagram-caption{margin-top:-8px;font-size:12px;color:#555}.diagram-steps ol{padding-left:25px;margin-top:20px}.diagram-steps li{margin-bottom:20px}.post_title h4{font-size:15px;color:#2c7eb9}h4+p{background-color:#f5f5f5;padding:11px;margin-top:8px}@media (max-width:770px){.typhoon-info-container h1{font-size:1.5em}.typhoon-info-container h2{font-size:1.3em}.link-btn{font-size:.9em}}

/* 台風情報の外部リンク（気象庁・JTWC・Windy）カード型ボタン（2026-08-20新設: .link-btn は基礎スタイル未定義だった） */
.realtime-links .link-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px;background:#f4f9ff;border:1px solid #bcd6ec;border-radius:8px;color:#0a4d8c;font-weight:bold;font-size:14px;line-height:1.4;text-decoration:none;transition:background .2s,border-color .2s}
.realtime-links .link-btn:hover{background:#e3f0fc;border-color:#2c7eb9;color:#2c7eb9}


/* 台風ページ「全国の10日間天気」代表都市テーブル（2026-08-20 weather/typhoon/index.php から分離） */
.ty10-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #d5dee6;background:#fff;margin:0 0 8px}
table.ty10-table{border-collapse:collapse;width:100%;min-width:760px;font-size:12px;text-align:center}
.ty10-wrap .ty10-table th,.ty10-wrap .ty10-table td{border:none;border-bottom:1px solid #d9e1e9;border-right:1px solid #e8eef4;padding:4px 3px;white-space:nowrap}
.ty10-wrap .ty10-table th:last-child,.ty10-wrap .ty10-table td:last-child{border-right:none}
.ty10-table thead th{background:#f2f7fb;color:#082f53;font-size:11px;line-height:1.3;padding:5px 3px}
.ty10-table thead th .ty10-w{display:block;font-weight:normal;color:#5b7186;font-size:10px}
.ty10-table thead th.sat{background:#eaf3fd}.ty10-table thead th.sat .ty10-w{color:#1a6fb2}
.ty10-table thead th.hol{background:#fdeeee}.ty10-table thead th.hol .ty10-w{color:#c0392b}
.ty10-table thead th.today{background:#fff6e0}
.ty10-wrap .ty10-table tbody th{position:sticky;left:0;z-index:1;background:#f8fafc;color:#082f53;font-size:12px;padding:4px 3px;text-align:center;vertical-align:middle;border-right:1px solid #d5dee6;min-width:32px}
.ty10-table tbody td{background:#fff}
.ty10-table tbody td.sat{background:#f4f9ff}
.ty10-table tbody td.hol{background:#fef7f7}
.ty10-table tbody td.today{background:#fffbef}
.ty10-table td img{display:block;margin:0 auto 1px;width:39px;height:25px;border:none}
/* 地点名は各県の10日間天気予報へのリンク(2026-08-21) */
.ty10-wrap .ty10-table tbody th a{color:#1a6fb2;text-decoration:underline}
.ty10-max{color:#d63333;font-weight:bold}
.ty10-min{color:#1a6fb2}
.ty10-sep{color:#999;margin:0 1px}
.ty10-rain{display:block;font-size:10px;color:#5b7186;margin-top:0;line-height:1.2}
.ty10-wrap .ty10-table tbody tr:last-child th,.ty10-wrap .ty10-table tbody tr:last-child td{border-bottom:none}
p.ty10-note{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 14px;align-items:center;color:#5b7186;font-size:10px;margin:0 0 20px}
.ty10-note a{color:#1a6fb2}
@media screen and (max-width:770px){table.ty10-table{min-width:700px;font-size:11px}.ty10-table td img{width:34px;height:22px}}

/* ===== ダークモード対応(2026-08-22): 台風ページ。旧#darkBodyと新シェルhtml[data-theme="dark"]の両方に対応。ライトの白/淡色ボックス・濃紺文字がダーク背景で浮く/読めないため ===== */
/* 見出し・更新時刻 */
#darkBody .post_title h2.tide-table:not(.h2-legacy), #darkBody .post_title h2.typhoon-weather-map, html[data-theme="dark"] .post_title h2.tide-table:not(.h2-legacy), html[data-theme="dark"] .post_title h2.typhoon-weather-map { color: #e8f1f8; }
#darkBody .post_title h2.tide-table:not(.h2-legacy) .update-time, #darkBody .post_title h2.typhoon-weather-map .update_time, #darkBody .post_title h2 time, html[data-theme="dark"] .post_title h2.tide-table:not(.h2-legacy) .update-time, html[data-theme="dark"] .post_title h2.typhoon-weather-map .update_time, html[data-theme="dark"] .post_title h2 time { color: #a8b8c8; }
/* 進路図タブ（米軍JTWC/気象庁/ECMWF） */
#darkBody .tf-map-tab, html[data-theme="dark"] .tf-map-tab { background: #2b2b2b; border-color: #555; color: #ddd; }
#darkBody .tf-map-tab.active, html[data-theme="dark"] .tf-map-tab.active { background: #FFA500; border-color: #FFA500; color: #fff; }
/* AI予報の注意書き（inline style: #fff3cd）と「もっと見る」 */
#darkBody .ai_forecast_text p[style*="#fff3cd"], html[data-theme="dark"] .ai_forecast_text p[style*="#fff3cd"] { background: #3d3520 !important; border-color: #b08a1f !important; color: #f0c84a !important; }
#darkBody .ai_forecast_text p[style*="#fff3cd"] a, html[data-theme="dark"] .ai_forecast_text p[style*="#fff3cd"] a { color: #7fb4e8 !important; }
#darkBody .ai_forecast_more, html[data-theme="dark"] .ai_forecast_more { color: #7fb4e8; }
/* 台風一覧テーブルの階級バッジ（inline styleで淡色指定） */
#darkBody .t2-class-badge[style*="#fff3cd"], html[data-theme="dark"] .t2-class-badge[style*="#fff3cd"] { background: #3d3520 !important; color: #f0c84a !important; }
#darkBody .t2-class-badge[style*="#ffe0b2"], html[data-theme="dark"] .t2-class-badge[style*="#ffe0b2"] { background: #3d2a1c !important; color: #ffa26b !important; }
#darkBody .t2-class-badge[style*="#ffcdd2"], html[data-theme="dark"] .t2-class-badge[style*="#ffcdd2"] { background: #3a2525 !important; color: #ff8a8a !important; }
/* 凡例・提供元 */
#darkBody #jma_map_legend, #darkBody #main-content1 div[style*="color:#666"], html[data-theme="dark"] #jma_map_legend, html[data-theme="dark"] #main-content1 div[style*="color:#666"] { color: #bbb !important; }
/* 警報・注意報カード */
#darkBody .warning-card, html[data-theme="dark"] .warning-card { background: #2b2b2b; border-color: #555; }
#darkBody .warning-card-title, html[data-theme="dark"] .warning-card-title { background: #333; color: #e8f1f8; }
#darkBody .warning-card-title:hover, html[data-theme="dark"] .warning-card-title:hover { background: #2c7eb9; color: #fff; }
#darkBody .warning-card-body, html[data-theme="dark"] .warning-card-body { color: #ddd; border-top-color: #444; }
/* 全国の10日間天気テーブル */
#darkBody .ty10-wrap, html[data-theme="dark"] .ty10-wrap { background: #2b2b2b; border-color: #555; }
#darkBody .ty10-wrap .ty10-table th, #darkBody .ty10-wrap .ty10-table td, html[data-theme="dark"] .ty10-wrap .ty10-table th, html[data-theme="dark"] .ty10-wrap .ty10-table td { border-bottom-color: #555; border-right-color: #444; }
#darkBody .ty10-table thead th, #darkBody .ty10-wrap .ty10-table tbody th, html[data-theme="dark"] .ty10-table thead th, html[data-theme="dark"] .ty10-wrap .ty10-table tbody th { background: #333 !important; color: #e8f1f8; border-right-color: #555; }
#darkBody .ty10-table thead th .ty10-w, html[data-theme="dark"] .ty10-table thead th .ty10-w { color: #a8b8c8; }
#darkBody .ty10-table thead th.sat, html[data-theme="dark"] .ty10-table thead th.sat { background: #1e2f44; }
#darkBody .ty10-table thead th.sat .ty10-w, html[data-theme="dark"] .ty10-table thead th.sat .ty10-w { color: #8fb4ff; }
#darkBody .ty10-table thead th.hol, html[data-theme="dark"] .ty10-table thead th.hol { background: #4a2424; }
#darkBody .ty10-table thead th.hol .ty10-w, html[data-theme="dark"] .ty10-table thead th.hol .ty10-w { color: #ff8a8a; }
#darkBody .ty10-table thead th.today, #darkBody .ty10-table tbody td.today, html[data-theme="dark"] .ty10-table thead th.today, html[data-theme="dark"] .ty10-table tbody td.today { background: #3d3520; }
#darkBody .ty10-table tbody td, html[data-theme="dark"] .ty10-table tbody td { background: #2b2b2b; color: #ddd; }
#darkBody .ty10-table tbody td.sat, html[data-theme="dark"] .ty10-table tbody td.sat { background: #1e2f44; }
#darkBody .ty10-table tbody td.hol, html[data-theme="dark"] .ty10-table tbody td.hol { background: #4a2424; }
#darkBody .ty10-max, html[data-theme="dark"] .ty10-max { color: #ff8a8a; }
#darkBody .ty10-min, html[data-theme="dark"] .ty10-min { color: #8fb4ff; }
#darkBody .ty10-rain, html[data-theme="dark"] .ty10-rain { color: #a8b8c8; }
#darkBody .ty10-wrap .ty10-table tbody th a, html[data-theme="dark"] .ty10-wrap .ty10-table tbody th a { color: #7fb4e8; }
/* 過去の台風テーブル（tablesorter）と地点セレクト */
#darkBody #typhoon-table, #darkBody #typhoon-table td, #darkBody #typhoon-table th, #darkBody #typhoon-ranking, #darkBody #typhoon-ranking td, #darkBody #typhoon-ranking th, html[data-theme="dark"] #typhoon-table, html[data-theme="dark"] #typhoon-table td, html[data-theme="dark"] #typhoon-table th, html[data-theme="dark"] #typhoon-ranking, html[data-theme="dark"] #typhoon-ranking td, html[data-theme="dark"] #typhoon-ranking th { background: #2b2b2b !important; color: #ddd !important; border-color: #555 !important; }
#darkBody #typhoon-table th, #darkBody #typhoon-ranking th, #darkBody #typhoon-table .tablesorter-header-inner, html[data-theme="dark"] #typhoon-table th, html[data-theme="dark"] #typhoon-ranking th, html[data-theme="dark"] #typhoon-table .tablesorter-header-inner { background: #333 !important; color: #e8f1f8 !important; }
#darkBody #typhoon-table td a, #darkBody #typhoon-ranking td a, html[data-theme="dark"] #typhoon-table td a, html[data-theme="dark"] #typhoon-ranking td a { color: #7fb4e8 !important; }
#darkBody select.map_id, html[data-theme="dark"] select.map_id { background: #2b2b2b; color: #fff; border-color: #555; }
/* リアルタイム情報リンク・基礎知識ブロック */
#darkBody .realtime-links .link-btn, html[data-theme="dark"] .realtime-links .link-btn { background: #1e2f44; border-color: #2a4a66; color: #cfe3f5; }
#darkBody .realtime-links .link-btn:hover, html[data-theme="dark"] .realtime-links .link-btn:hover { background: #2a4a66; border-color: #7fb4e8; color: #fff; }
#darkBody .knowledge-block, html[data-theme="dark"] .knowledge-block { background-color: #1e2f44; color: #ddd; }
#darkBody .knowledge-block h4, #darkBody .post_title h4, html[data-theme="dark"] .knowledge-block h4, html[data-theme="dark"] .post_title h4 { color: #8ec3ee; }
#darkBody .highlight-red, html[data-theme="dark"] .highlight-red { color: #ff8a8a; }
#darkBody .info-box, html[data-theme="dark"] .info-box { background-color: #3d3520; border-left-color: #f0c84a; color: #ddd; }
#darkBody .info-box.warning, html[data-theme="dark"] .info-box.warning { background-color: #3a2525; border-left-color: #ff8a8a; }
#darkBody .diagram-caption, html[data-theme="dark"] .diagram-caption { color: #bbb; }
/* ひまわり/海況ブロックの枠・FAQ回答(h4 + p)・10日間天気の注記リンク */
#darkBody #kaikyou_block, #darkBody #himawari_block, html[data-theme="dark"] #kaikyou_block, html[data-theme="dark"] #himawari_block { background: #2b2b2b; }
#darkBody h4 + p, html[data-theme="dark"] h4 + p { background-color: #2b2b2b; color: #eee; }
#darkBody .ty10-note a, html[data-theme="dark"] .ty10-note a { color: #7fb4e8; }
#darkBody #play-himawari, html[data-theme="dark"] #play-himawari { background: #2b2b2b; }
#darkBody #ai_typhoon_forecast, html[data-theme="dark"] #ai_typhoon_forecast { color: #ddd !important; } /* 総合分析本文: inline style の color:#333 を上書き */
#darkBody .ty10-note, #darkBody .ty10-note span, html[data-theme="dark"] .ty10-note, html[data-theme="dark"] .ty10-note span { color: #a8b8c8; }
