.route-advisor-page .route-map { list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); grid-auto-rows: 1fr; align-items: stretch; gap: 10px; margin: 18px 0 20px; padding: 0; }
.route-advisor-page .route-map-node { display: flex; flex-direction: column; gap: 4px; padding: 12px; border-radius: 10px; background: rgba(242,239,230,0.08); border: 1px solid rgba(242,239,230,0.14); height: 100%; }
.route-advisor-page .route-map-node[data-state="done"] { border-color: rgba(120,200,150,0.45); background: rgba(120,200,150,0.08); }
.route-advisor-page .route-map-node[data-state="attention"] { border-color: rgba(240,140,120,0.55); background: rgba(240,140,120,0.1); }
.route-advisor-page .route-map-status { display: flex; align-items: center; gap: 5px; white-space: nowrap; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(242,239,230,0.62); }
.route-advisor-page .route-map-node[data-state="done"] .route-map-status { color: rgba(150,220,175,0.85); }
.route-advisor-page .route-map-node[data-state="attention"] .route-map-status { color: rgba(245,165,150,0.9); }
.route-advisor-page .route-map-icon { font-size: 11px; }
.route-advisor-page .route-map-node strong { font-size: 13px; line-height: 1.3; }
.route-advisor-page .route-map-detail { font-size: 12px; color: rgba(242,239,230,0.82); margin-top: auto; }

.route-advisor-page .route-disclosure { margin-top: 18px; padding: 14px 16px; border-radius: 10px; background: rgba(242,239,230,0.06); border: 1px solid rgba(242,239,230,0.14); }
.route-advisor-page .route-disclosure summary { cursor: pointer; font-weight: 700; font-size: 13px; }
.route-advisor-page .route-disclosure[open] summary { margin-bottom: 12px; }

.route-advisor-page .route-table-wrap { overflow-x: auto; }
.route-advisor-page .route-decision-table { width: 100%; table-layout: fixed; border-collapse: collapse; font-size: 13px; }
.route-advisor-page .route-decision-table th, .route-advisor-page .route-decision-table td { text-align: left; padding: 8px 10px; border-bottom: 1px solid rgba(242,239,230,0.12); overflow-wrap: break-word; }
.route-advisor-page .route-decision-table th { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(242,239,230,0.62); }
.route-advisor-page .route-decision-outcome-row td { background: rgba(242,239,230,0.06); font-weight: 600; border-bottom: none; }

.route-advisor-page .route-result-action-lead { flex-basis: 100%; font-size: 12px; color: rgba(242,239,230,0.72); margin: 0; }

.route-advisor-page .route-evidence-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.route-advisor-page .route-evidence-list dl { display: grid; gap: 4px; margin: 8px 0; font-size: 12px; }
.route-advisor-page .route-evidence-list dt { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(242,239,230,0.62); }
.route-advisor-page .route-evidence-list dd { margin: 0 0 6px; }
.route-advisor-page .route-evidence-sources { margin: 6px 0 0; padding-left: 18px; font-size: 12px; }
.route-advisor-page .route-evidence-sources a { color: #F4B2B2; word-break: break-all; }

@media (max-width: 900px) {
  .route-advisor-page .route-map { grid-template-columns: 1fr; }
}
