.route-sim-control.leaflet-control{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);padding:8px 6px;box-shadow:0 1px 5px #0000004d}.route-sim-speed{writing-mode:vertical-lr;direction:rtl;width:22px;height:84px;margin:2px 0;accent-color:var(--accent-color);cursor:pointer}.route-sim-speed-value{position:absolute;left:calc(100% + 8px);top:50px;transform:translateY(-50%);font-family:var(--font-family);font-size:.78rem;font-weight:600;color:var(--text-primary);background:var(--bg-primary);border-radius:var(--radius-sm, 4px);padding:2px 7px;white-space:nowrap;box-shadow:0 1px 4px #00000040;opacity:0;pointer-events:none;transition:opacity .12s ease}.route-sim-speed-value--show,.route-sim-speed:hover~.route-sim-speed-value{opacity:1}.route-sim-buttons{display:flex;align-items:center;gap:4px}.route-sim-toggle,.route-sim-stop,.route-sim-settings{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border-color);border-radius:50%;background:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:background .15s ease,color .15s ease}.route-sim-toggle:hover,.route-sim-stop:hover,.route-sim-settings:hover{background:var(--bg-secondary)}.route-sim-toggle .material-symbols-outlined{font-size:22px}.route-sim-stop .material-symbols-outlined{font-size:20px;color:var(--accent-color)}.route-sim-settings{width:28px;height:28px}.route-sim-settings .material-symbols-outlined{font-size:17px;color:var(--text-secondary)}.route-sim-icon-pause,.route-sim-control.is-playing .route-sim-icon-play{display:none}.route-sim-control.is-playing .route-sim-icon-pause{display:inline-flex}.route-sim-stop{display:none}.route-sim-control.is-active .route-sim-stop{display:inline-flex}.route-sim-settings-popover{position:absolute;left:calc(100% + 8px);bottom:0;display:flex;flex-direction:column;gap:6px;font-family:var(--font-family);font-size:.8rem;color:var(--text-primary);background:var(--bg-primary);border-radius:var(--radius-sm, 4px);padding:6px 8px;white-space:nowrap;box-shadow:0 1px 6px #0000004d}.route-sim-settings-popover[hidden]{display:none}.route-sim-follow-row{display:flex;align-items:center;gap:5px;cursor:pointer}.route-sim-follow-row input{accent-color:var(--accent-color);cursor:pointer}.route-sim-threshold{width:42px;font-family:var(--font-family);background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm, 4px);padding:1px 4px;text-align:right}.route-sim-arrow svg{display:block;width:40px;height:40px;transform-box:border-box;transform-origin:50% 50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}.route-sim-arrow svg path{fill:#1d4ed8;stroke:#fff;stroke-width:1.5;stroke-linejoin:round}.route-sim-arrow svg.route-sim-arrow--backward path{fill:var(--accent-color)}.route-sim-summary-list{margin:.5rem 0 0;padding-left:1.2rem;text-align:left}.route-sim-summary-list li{margin:.2rem 0}.route-sim-warn-ring span{display:block;width:30px;height:30px;border-radius:50%;border:2px solid var(--accent-color);background:#e3061326;animation:route-sim-warn-ring-pulse 1.1s ease-in-out infinite}@keyframes route-sim-warn-ring-pulse{0%,to{box-shadow:0 0 #e3061380}50%{box-shadow:0 0 0 8px #e3061300}}
