/* M146 通用位置面板（Zltc.locPanel）——作用域 .lp-*，不污染全局；
   色彩走 v3 Token（--sx-* 桂红/v2 --zltc-* 漓江青双主题均可用，带回退） */
.lp-panel { border: 1px solid #E5EDE8; border-radius: 14px; background: #fff; overflow: hidden; margin: 16px 0; }
.lp-head { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; border-bottom: 1px solid #EEF4F0; }
.lp-title { font-size: 16px; font-weight: 600; color: #1A2A23; }
.lp-badge { font-size: 11px; padding: 2px 8px; border-radius: 20px; background: rgba(46, 139, 87, 0.1); color: #2E8B57; }
.lp-body { padding: 8px 16px 12px; }
.lp-foot { padding: 8px 16px; font-size: 11px; color: #8A9691; background: #F7FAF9; border-top: 1px dashed #E5EDE8; }

.lp-item { padding: 10px 0; border-bottom: 1px dashed #EEF4F0; }
.lp-item:last-child { border-bottom: 0; }
.lp-item-title { font-size: 14px; font-weight: 500; color: #1A2A23; display: flex; justify-content: space-between; gap: 8px; }
.lp-tel { font-size: 12px; color: #2E8B57; font-weight: 400; white-space: nowrap; }
.lp-item-sub { font-size: 12px; color: #6B7A72; margin-top: 3px; line-height: 1.6; }

.lp-loading { display: flex; align-items: center; gap: 8px; padding: 20px 0; color: #6B7A72; font-size: 13px; }
.lp-spin { width: 16px; height: 16px; border-radius: 50%; border: 2px solid #E5EDE8; border-top-color: #2E8B57; animation: lp-rotate 0.9s linear infinite; display: inline-block; }
@keyframes lp-rotate { to { transform: rotate(360deg); } }
.lp-empty { margin: 4px 0; }

.lp-route-sum { padding: 10px 0; font-size: 14px; font-weight: 500; color: #1A2A23; display: flex; flex-direction: column; gap: 4px; border-bottom: 1px dashed #EEF4F0; }
.lp-route-meta { font-size: 12px; color: #2E8B57; font-weight: 400; }
.lp-step { display: flex; gap: 8px; padding: 8px 0; font-size: 13px; color: #3D4A43; border-bottom: 1px dashed #EEF4F0; }
.lp-step:last-child { border-bottom: 0; }
.lp-step-n { flex: none; width: 18px; height: 18px; border-radius: 50%; background: rgba(46, 139, 87, 0.12); color: #2E8B57; font-size: 11px; display: flex; align-items: center; justify-content: center; margin-top: 1px; }

/* 壮文行高规范（M60：lang-zhuang 作用域行高 1.8）兼容 */
.lang-zhuang .lp-item-sub, .lang-zhuang .lp-foot { line-height: 1.8; }
/* 触摸设备点击目标 ≥44px（M92 规范） */
@media (hover: none) { .lp-item { min-height: 44px; } }
/* 无障碍：动效降级 */
@media (prefers-reduced-motion: reduce) { .lp-spin { animation: none; } }
