/* Şoför rotası sahnesi — .rt-* (sayfaya özel). Harita + altında 2x2 olay kartları */
.rt{display:flex;flex-direction:column;gap:14px}
.rt-map{position:relative;border-radius:22px;background:#eaf3ee;border:1px solid rgba(255,255,255,.12);overflow:hidden;aspect-ratio:16/9;color:#08160f;box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.rt-map::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(28,107,65,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(28,107,65,.09) 1px,transparent 1px);background-size:40px 40px}
.rt-road{position:absolute;inset:0;width:100%;height:100%}
.rt-road .rt-base{fill:none;stroke:#fff;stroke-width:14;stroke-linecap:round;stroke-linejoin:round}
.rt-road .rt-dash{fill:none;stroke:#cfe0d6;stroke-width:2;stroke-dasharray:8 10}
.rt-road .rt-done{fill:none;stroke:#34d399;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.rt-road .rt-blk{fill:#dfe9e3;stroke:#cfdcd4}
.rt-road .rt-park{fill:#d6ead9}
.rt-stop{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:4px}
.rt-pin{width:32px;height:32px;border-radius:50% 50% 50% 0;background:#fff;border:2px solid #cfe0d6;transform:rotate(-45deg);display:flex;align-items:center;justify-content:center;transition:background .3s,border-color .3s,transform .3s}
.rt-pin svg{width:15px;height:15px;transform:rotate(45deg);color:#8a9a91;transition:color .3s}
.rt-lb{position:absolute;top:100%;margin-top:7px;font-size:10.5px;font-weight:800;color:#5b6b62;white-space:nowrap;background:rgba(255,255,255,.88);padding:2px 8px;border-radius:999px;transition:color .3s}
.rt-stop.done .rt-pin{background:#ddf3ea;border-color:#34d399}.rt-stop.done .rt-pin svg{color:#1c6b41}
.rt-stop.on .rt-pin{background:#1c6b41;border-color:#1c6b41;transform:rotate(-45deg) scale(1.15)}.rt-stop.on .rt-pin svg{color:#fff}.rt-stop.on .rt-lb{color:#1c6b41}
.rt-van{position:absolute;left:0;top:0;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;background:#05130c;color:#34d399;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(5,19,12,.4);will-change:transform;z-index:3}
.rt-van svg{width:21px;height:21px}
.rt-van::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid #34d399;opacity:.5;animation:rtPulse 1.5s ease-out infinite}
@keyframes rtPulse{0%{transform:scale(.8);opacity:.7}100%{transform:scale(1.6);opacity:0}}
.rt-pop{position:absolute;background:#fff;border-radius:14px;padding:9px 11px;font-size:11px;box-shadow:0 18px 40px rgba(8,22,15,.22);display:flex;gap:8px;align-items:center;max-width:215px;opacity:0;transform:translateY(8px) scale(.96);transition:opacity .35s,transform .35s;pointer-events:none;z-index:4;border:1px solid rgba(15,61,36,.08)}
.rt-pop.on{opacity:1;transform:none}
.rt-pop i{width:28px;height:28px;border-radius:8px;background:#ecf6f0;color:#1c6b41;flex:none;display:inline-flex;align-items:center;justify-content:center}
.rt-pop i svg{width:14px;height:14px}
.rt-pop b{display:block;font-size:11.5px;color:#08160f}.rt-pop small{display:block;color:#5b6b62;font-size:10.5px;line-height:1.35}
.rt-pop.dark{background:#0e2a20;border-color:transparent}.rt-pop.dark b{color:#fff}.rt-pop.dark small{color:rgba(214,235,224,.7)}.rt-pop.dark i{background:#3bb78f;color:#05130c}
.rt-clock{position:absolute;left:14px;top:14px;background:#05130c;color:#fff;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:700;display:flex;gap:7px;align-items:center;font-variant-numeric:tabular-nums;z-index:4}
.rt-clock i{width:8px;height:8px;border-radius:50%;background:#34d399}
.rt-legend{position:absolute;right:14px;top:14px;display:flex;gap:5px;z-index:4}
.rt-legend span{font-size:10.5px;font-weight:700;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.9);color:#5b6b62;transition:background .3s,color .3s}
.rt-legend span.on{background:#1c6b41;color:#fff}

/* olay kartları: koyu zemin üstünde 2x2 */
.rt-ticker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rt-tk{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:11px 13px;display:flex;flex-direction:column;gap:3px;transition:border-color .3s,background .3s,box-shadow .3s}
.rt-tk.on{border-color:#34d399;background:rgba(52,211,153,.1);box-shadow:0 10px 26px -14px rgba(52,211,153,.7)}
.rt-tk b{font-size:13.5px;color:#fff}.rt-tk span{font-size:12px;color:rgba(214,235,224,.72);line-height:1.4}
.rt-tk .rt-t{font-size:10.5px;font-weight:800;color:#6ee7b7;letter-spacing:.05em}

@media (max-width:600px){
 .rt-map{aspect-ratio:4/3}
 .rt-legend{display:none}
 .rt-lb{font-size:9px;padding:1px 6px}
 .rt-pin{width:26px;height:26px}.rt-pin svg{width:12px;height:12px}
 .rt-pop{max-width:160px;font-size:10px;padding:7px 9px}
 .rt-pop b{font-size:10.5px}.rt-pop small{font-size:9.5px}
 .rt-van{width:34px;height:34px;margin:-17px 0 0 -17px}.rt-van svg{width:17px;height:17px}
 .rt-ticker{gap:8px}
 .rt-tk{padding:9px 11px}.rt-tk b{font-size:12.5px}.rt-tk span:not(.rt-t){display:none}
}
@media (prefers-reduced-motion:reduce){.rt-van::after{animation:none}}
