/* Locally generated transport pages share the archived site's warm palette.
   The native route cards/tables continue to use reference-site.css. */
.logistics-page .page-title { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin:18px 0 14px; }
.logistics-page .page-title > div { min-width:0; }
.logistics-page .page-title .en { display:block; margin-bottom:4px; color:var(--muted); font-size:10px; letter-spacing:1.4px; }
.logistics-page .page-title h1 { margin-bottom:7px; font-size:20px; font-weight:600; line-height:1.5; }
.logistics-page .page-title p, .logistics-page .lead { color:var(--text-2); font-size:13px; line-height:1.8; }
.logistics-page .page-title > a { flex-shrink:0; margin-top:5px; color:var(--accent); font-size:12px; text-decoration:none; }
.logistics-page .card > h2:not([class]), .logistics-page .page-title h2 { display:flex; align-items:center; gap:8px; margin-bottom:11px; color:var(--text); font-size:14px; font-weight:600; }
.logistics-page .card > h2:not([class])::before { content:""; width:3px; height:13px; border-radius:2px; background:var(--accent); }
.logistics-page .lead { margin-bottom:12px; }
.logistics-page .small { font-size:12px; }
.logistics-page .muted { color:var(--muted); }
.logistics-page .grid { display:grid; gap:10px; margin-bottom:12px; }
.logistics-page .grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.logistics-page .grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.logistics-page .grid.four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.logistics-page .feature-card, .logistics-page .mode-card { display:block; min-width:0; padding:13px 14px; border:1px solid var(--line); border-radius:9px; background:var(--card); color:var(--text); text-decoration:none; }
.logistics-page a.feature-card:hover { border-color:var(--accent-line); background:#faf5ec; }
.logistics-page .feature-card > b { display:block; font-size:14px; font-weight:600; }
.logistics-page .feature-card h3, .logistics-page .mode-card h3 { margin-bottom:6px; font-size:14px; font-weight:600; }
.logistics-page .feature-card p, .logistics-page .mode-card p, .logistics-page .mode-card small { margin-top:5px; color:var(--text-2); font-size:12px; line-height:1.8; }
.logistics-page .feature-icon { display:block; margin-bottom:5px; color:var(--accent); font-size:20px; }
.logistics-page .mode-card .price { color:var(--accent); font-size:20px; font-weight:600; }
.logistics-page .route-form, .logistics-page .tool-form { display:flex; align-items:flex-end; flex-wrap:wrap; gap:10px; }
.logistics-page .route-form label, .logistics-page .tool-form label { display:flex; flex:1 1 150px; flex-direction:column; gap:5px; min-width:0; color:var(--text-2); font-size:12px; }
.logistics-page .route-form input, .logistics-page .route-form select,
.logistics-page .tool-form input, .logistics-page .tool-form select, .logistics-page .tool-form textarea { width:100%; min-width:0; min-height:42px; padding:9px 11px; border:1px solid var(--line); border-radius:7px; background:var(--card); color:var(--text); font:inherit; font-size:14px; }
.logistics-page .route-form input:focus, .logistics-page .route-form select:focus,
.logistics-page .tool-form input:focus, .logistics-page .tool-form select:focus { outline:2px solid var(--accent-line); outline-offset:1px; }
.logistics-page .primary { min-height:42px; padding:9px 18px; border:1px solid var(--accent); border-radius:7px; background:var(--accent); color:#fff; font:inherit; }
.logistics-page .primary:hover { background:#994422; }
.logistics-page .route-swap { flex:0 0 38px; min-height:42px; border:1px solid var(--line); border-radius:7px; background:#faf5ec; color:var(--accent); font-size:18px; }
.logistics-page .route-answer { display:grid; grid-template-columns:minmax(0,1fr) minmax(100px,1fr) minmax(0,1fr); align-items:center; gap:12px; padding:12px 0 20px; }
.logistics-page .route-point { display:flex; flex-direction:column; gap:4px; min-width:0; }
.logistics-page .route-point strong { font-size:24px; font-weight:600; overflow-wrap:anywhere; }
.logistics-page .route-point small, .logistics-page .route-point span { color:var(--muted); font-size:12px; }
.logistics-page .route-point.end { text-align:right; }
.logistics-page .answer-path { border-bottom:1px solid var(--accent-line); padding-bottom:8px; text-align:center; color:var(--accent); font-size:12px; }
.logistics-page .answer-metrics, .logistics-page .weather-info-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:10px 0; }
.logistics-page .answer-metrics > div, .logistics-page .weather-info-grid > div { padding:10px 12px; border:1px solid var(--line-soft); border-radius:9px; background:#f7f2e8; }
.logistics-page .answer-metrics small, .logistics-page .weather-info-grid small { display:block; color:var(--muted); font-size:12px; }
.logistics-page .answer-metrics b, .logistics-page .weather-info-grid b { display:block; margin-top:3px; font-size:14px; font-weight:600; }
.logistics-page .tag-list { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0; }
.logistics-page .tag-list a, .logistics-page .tag-list > span { padding:4px 11px; border:1px solid var(--line); border-radius:14px; color:var(--text-2); font-size:12px; text-decoration:none; }
.logistics-page .tag-list a:hover { color:var(--accent); border-color:var(--accent-line); }
.logistics-page .data-note { margin-top:10px; padding:10px 12px; border:1px solid var(--line-soft); border-radius:7px; background:#faf5ec; color:var(--text-2); font-size:12px; line-height:1.8; }
.logistics-page .faq-item { padding:10px 0; border-bottom:1px solid var(--line-soft); }
.logistics-page .faq-item:last-child { border-bottom:0; }
.logistics-page .faq-item summary { cursor:pointer; font-size:13px; font-weight:600; }
.logistics-page .faq-item p { margin-top:8px; color:var(--text-2); font-size:13px; line-height:1.8; }
.logistics-page .guide-list { padding-left:20px; color:var(--text-2); font-size:13px; line-height:1.9; }
.logistics-page .guide-list li { list-style:decimal; margin:6px 0; }
.logistics-page .pagination { display:flex; flex-wrap:wrap; gap:6px; margin-top:15px; }
.logistics-page .pagination a, .logistics-page .pagination span { padding:5px 10px; border:1px solid var(--line); border-radius:6px; color:var(--text-2); font-size:12px; text-decoration:none; }
.logistics-page .pagination .on { background:var(--accent-soft); border-color:var(--accent-line); color:var(--accent); }
.logistics-page .result-box { margin-top:12px; padding:14px; border:1px solid var(--accent-line); border-radius:8px; background:var(--accent-soft); color:var(--accent); }
.logistics-page .table-wrap { overflow-x:auto; }
.logistics-page .reco-link { color:var(--accent); font-size:12px; text-decoration:none; }
.logistics-page .reco-link:hover { text-decoration:underline; }
.logistics-page .mode-tbl-wrap:focus-visible { outline:2px solid var(--accent-line); outline-offset:3px; }
.logistics-page .svc-tbl { min-width:660px; }
.logistics-page .svc-tbl .svc-price b { white-space:nowrap; }
.transport-page .route-subtitle { margin:12px 0 8px; font-size:13px; font-weight:600; }
.transport-page .ep-h > a { color:var(--text); text-decoration:none; }
.transport-page .ep-h > a:hover { color:var(--accent); text-decoration:underline; }
.transport-page .pk-side { flex-basis:0; }
.transport-page .mode-meta { flex-wrap:wrap; gap:4px 16px; }
@media(max-width:760px) {
  .logistics-page .grid.four { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .logistics-page .grid.three { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .logistics-page .answer-metrics, .logistics-page .weather-info-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:520px) {
  .logistics-page .page-title { flex-direction:column; gap:4px; }
  .logistics-page .page-title h1 { font-size:18px; }
  .logistics-page .route-form { display:grid; grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr); gap:8px; }
  .logistics-page .route-form .primary, .logistics-page .route-form label:nth-of-type(3) { grid-column:1/-1; }
  .logistics-page .route-form .route-swap { min-width:0; padding:0; }
  .logistics-page .tool-form > .primary { width:100%; }
  .logistics-page .grid.two, .logistics-page .grid.three { grid-template-columns:minmax(0,1fr); }
  .logistics-page .feature-card { padding:11px; }
  .logistics-page .route-answer { grid-template-columns:minmax(0,1fr) 94px minmax(0,1fr); gap:7px; }
  .logistics-page .route-point strong { font-size:20px; }
}
