/* ISLEM VTC V4 — suivi client : visuel uniquement, aucun changement de logique métier */
.suivi-page{padding-top:35px}
.suivi-panel{max-width:720px;margin:0 auto;padding:34px 40px 40px;border-radius:18px;box-shadow:0 18px 45px #25141a0e}
.suivi-topline{font-size:10px;letter-spacing:2.5px;font-weight:800;color:#b89254;margin:0 0 13px}
.suivi-topline span{padding:0 7px}
.suivi-panel h1{font-family:Georgia,'Playfair Display',serif;font-size:clamp(32px,5vw,45px);line-height:1.13;letter-spacing:-.7px;font-weight:600;margin:0 0 26px;color:#211b22}
.suivi-mobile-break{display:none}
.suivi-ref-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;border-top:1px solid #f0e8e1;padding:18px 0}
.suivi-ref-label{font-size:13px;color:#7a6d72}
.suivi-ref{font-size:16px;letter-spacing:1.3px;color:#2d2328}
.suivi-status-card{padding:23px 22px 18px;border-radius:14px;background:linear-gradient(120deg,#fffdfa,#fff9e8 51%,#f1faf1);border:1px solid #f0e4cb}
.suivi-status-card.is-confirmed{background:linear-gradient(120deg,#fcfffc,#f1fbf2);border-color:#d1ead5}
.suivi-status-card.is-cancelled{background:#fff8f8;border-color:#f2d6d6}
.suivi-status-heading{display:flex;gap:11px;align-items:center}
.suivi-status-heading small{display:block;font-size:10px;letter-spacing:1.7px;color:#8b7770;font-weight:800;margin-bottom:5px}
.suivi-status-heading strong{display:block;color:#47331a;font-size:18px}
.suivi-status-mark{display:grid;place-items:center;width:39px;height:39px;flex:none;border-radius:50%;background:#f3bd3d;color:#573d0a;font-size:22px;font-weight:800}
.is-confirmed .suivi-status-mark{background:#2e9857;color:#fff}
.is-cancelled .suivi-status-mark{background:#b6404e;color:#fff}
.suivi-stepper{position:relative;margin:31px 8px 8px}
.suivi-progress-track{position:absolute;left:12%;right:12%;top:16px;height:8px;border-radius:30px;background:linear-gradient(90deg,#f0bd37 0%,#f8e5aa 44%,#e7efcc 72%,#ccead4 100%);overflow:hidden}
.suivi-progress-fill{width:50%;height:100%;border-radius:30px;background:linear-gradient(90deg,#d49b18,#f7ce4a);transition:width .3s}
.is-confirmed .suivi-progress-fill{width:100%;background:linear-gradient(90deg,#e2bc54 0%,#78b873 55%,#209b57 100%)}
.suivi-steps{display:grid;grid-template-columns:repeat(3,1fr);position:relative;z-index:1;gap:3px}
.suivi-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;font-size:11px;line-height:1.27;font-weight:700;color:#a19a91;min-width:0}
.suivi-step-dot{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#e0eadc;border:3px solid #fff;color:#8fa890;font-size:16px;font-weight:800;box-shadow:0 2px 7px #24241810}
.suivi-step.done{color:#675027}.suivi-step.done .suivi-step-dot{background:#e8b62c;color:#fff}
.suivi-step.current{color:#5e4522}.suivi-step.current .suivi-step-dot{background:#f5c94a;color:#51330b;box-shadow:0 0 0 3px #f8e8b2}
.suivi-step.future{color:#6b9478}.suivi-step.future .suivi-step-dot{background:#e4f2e5;color:#7bab84}
.is-confirmed .suivi-step.done{color:#286f43}.is-confirmed .suivi-step.done .suivi-step-dot{background:#2f9a5b}
.suivi-help{font-size:12px;line-height:1.6;color:#806a54;margin:20px 0 0;text-align:center}
.suivi-trip{border-bottom:1px solid #f0e8e1;padding:24px 0 19px}
.suivi-trip h2,.suivi-request h2{font-size:19px;margin:0 0 20px;color:#271c24}
.suivi-route{padding-left:9px}
.suivi-location{display:flex;gap:15px;align-items:start}
.suivi-location-dot{border-radius:50%;width:14px;height:14px;flex:none;margin-top:3px;border:3px solid #fff;box-shadow:0 0 0 1px currentColor}
.suivi-location-dot.pickup{background:#31956a;color:#31956a}
.suivi-location-dot.dropoff{background:#bd524c;color:#bd524c}
.suivi-location small{font-size:10px;color:#998a90;letter-spacing:1.2px;font-weight:800}
.suivi-location p{font-size:14px;line-height:1.5;margin:5px 0;color:#2d272b}
.suivi-route-line{height:30px;border-left:1.5px dashed #cfc4bf;margin:-1px 0 4px 6px}
.suivi-request{padding-top:24px}
.suivi-request h2{margin-bottom:6px}
.suivi-request>p{font-size:13px;color:#867a7d;margin:0 0 22px}
.suivi-request .field label{font-size:13px;margin-bottom:9px}
.suivi-request textarea{border-radius:10px;min-height:106px;padding:13px 14px;resize:vertical;font-size:14px}
.suivi-request button{border-radius:9px;padding:14px 20px;font-size:14px}
.suivi-request button span{margin-left:15px}
.suivi-checkout{margin-top:20px}
@media(max-width:650px){.suivi-page{padding-top:0}.suivi-panel{padding:31px 21px 32px;border-radius:16px}.suivi-mobile-break{display:block}.suivi-panel h1{font-size:36px;margin-bottom:28px}.suivi-status-card{padding:20px 13px 17px}.suivi-stepper{margin-left:0;margin-right:0}.suivi-progress-track{left:12%;right:12%}.suivi-step{font-size:10px;gap:10px}.suivi-step-dot{width:34px;height:34px}.suivi-progress-track{top:13px;height:8px}.suivi-status-heading strong{font-size:16px}.suivi-request button{width:100%}}
.suivi-request .btn,.suivi-checkout .btn{background:#762c49;color:#fff;border:0;box-shadow:0 6px 15px #6c283f16}
.suivi-request .btn:hover,.suivi-checkout .btn:hover{background:#8e3658}
