
.snu-surf-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:24px 0 18px}
.snu-surf-metric{background:#f5f5f5;border:1px solid #e5e7eb;border-radius:12px;padding:16px 18px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.snu-surf-metric span{display:block;color:#6b7280;font-size:13px;line-height:1.3;margin-bottom:8px}
.snu-surf-metric strong{display:block;color:#111827;font-size:24px;line-height:1.2;font-weight:700}
.snu-surf-rating{display:inline-block;background:#f5f5f5;border:1px solid #e5e7eb;border-radius:999px;padding:8px 14px;font-weight:600;margin:0 0 16px}
.snu-surf-summary{margin:12px 0 24px}
.snu-route-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:18px 0 22px}
.snu-route-point{background:#f5f5f5;border:1px solid #e5e7eb;border-radius:12px;padding:16px 18px}
.snu-route-point .snu-point-label{display:block;color:#6b7280;font-size:13px;margin-bottom:8px}
.snu-route-point .snu-point-value{display:block;color:#111827;font-size:22px;font-weight:700;line-height:1.25}
@media (max-width:640px){.snu-surf-metric strong{font-size:22px}.snu-route-point .snu-point-value{font-size:20px}}

.snu-weather-item-title{margin:0 0 6px;font-size:1.5rem;line-height:1.2}.snu-weather-item-title a{text-decoration:none;color:inherit}.snu-weather-item-title a:hover{text-decoration:underline;}

.snu-traffic-legend{margin-top:24px}
