
:root{--ctv-blue:#0004ff;--ctv-dark:#0e1020;--ctv-soft:#f5f7ff;--ctv-border:#e7e9f5;--ctv-muted:#687089}
.ctv-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);gap:26px;max-width:1220px;margin:34px auto;font-family:Inter,Arial,sans-serif;color:var(--ctv-dark);line-height:1.35}
.ctv-left,.ctv-right{background:rgba(255,255,255,.98);border:1px solid var(--ctv-border);border-radius:24px;padding:26px;box-shadow:0 16px 45px rgba(16,24,40,.08)}
.ctv-brand{text-align:center;margin:-4px 0 16px}.ctv-brand img{width:122px;height:auto;display:inline-block}.ctv-driver-logo{text-align:center;margin-bottom:16px}.ctv-driver-logo img{width:110px;height:auto}
.ctv-kicker{display:inline-flex;background:var(--ctv-soft);color:var(--ctv-blue);border:1px solid rgba(0,4,255,.12);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.ctv-left h2{margin:0 0 8px;color:var(--ctv-dark);font-size:34px;letter-spacing:-.04em}
.ctv-intro{color:var(--ctv-muted);margin:0 0 10px;font-size:15px}.ctv-required-note{margin:0 0 20px;color:#0004ff;background:#f5f7ff;border:1px solid rgba(0,4,255,.12);border-radius:12px;padding:10px 12px;font-weight:800;font-size:13px}
.ctv-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 22px;background:#f6f7fb;border:1px solid var(--ctv-border);padding:6px;border-radius:18px}
.ctv-tab{border:0;background:transparent;color:var(--ctv-dark);padding:14px 12px;border-radius:14px;font-weight:900;cursor:pointer;transition:.18s ease;font-size:15px}
.ctv-tab.active{background:var(--ctv-blue);color:#fff;box-shadow:0 10px 22px rgba(0,4,255,.22)}
.ctv-wrap label{display:block;font-weight:850;margin:15px 0 7px;font-size:14px}
.ctv-wrap label span{font-weight:500;color:var(--ctv-muted)}
.ctv-wrap input,.ctv-wrap select{width:100%;box-sizing:border-box;border:1px solid #dce1ee;border-radius:14px;padding:14px 15px;font-size:16px;background:#fff;outline:none;transition:border .15s,box-shadow .15s;min-height:50px}
.ctv-wrap input:focus,.ctv-wrap select:focus{border-color:var(--ctv-blue);box-shadow:0 0 0 4px rgba(0,4,255,.09)}
.ctv-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ctv-check{display:flex!important;align-items:center;gap:10px;padding:12px 14px;background:#fafbff;border:1px solid var(--ctv-border);border-radius:14px}
.ctv-check input{width:auto;min-height:auto}
.ctv-note,.ctv-secure-note{padding:12px 14px;border-radius:14px;background:#eef0ff;color:#0004ff;margin-top:10px;font-weight:700;font-size:14px}
.ctv-secure-note{margin:18px 0 0;background:#f5f7ff;color:#28315f;text-align:center}
.ctv-payments{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ctv-payments label{font-weight:750;display:flex;gap:9px;align-items:center;margin:0;padding:13px;border:1px solid var(--ctv-border);border-radius:14px;background:#fff}
.ctv-payments input{width:auto;min-height:auto}
.ctv-left h3{margin:24px 0 8px;font-size:20px}
.ctv-submit{width:100%;background:linear-gradient(135deg,#0004ff,#3639ff);color:#fff;border:0;border-radius:16px;padding:17px;margin-top:16px;font-size:18px;font-weight:950;cursor:pointer;box-shadow:0 14px 28px rgba(0,4,255,.24);transition:.18s}
.ctv-submit:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(0,4,255,.28)}
#ctv-map{height:380px;border-radius:22px;background:linear-gradient(135deg,#eef1f6,#dfe5ef);margin-bottom:14px;overflow:hidden;border:1px solid var(--ctv-border)}
#ctv-route-info,#ctv-summary{border:1px solid var(--ctv-border);border-radius:20px;padding:18px;margin-top:14px;background:#fff}
#ctv-route-info strong{font-size:17px}
#ctv-route-info p,#ctv-summary p{display:flex;justify-content:space-between;gap:14px;margin:10px 0;color:#283044;border-bottom:1px dashed #edf0f6;padding-bottom:9px}
#ctv-summary h3{margin:0 0 14px;color:var(--ctv-dark);font-size:22px;letter-spacing:-.02em}
.ctv-total{font-size:24px;color:var(--ctv-blue)!important;border-bottom:0!important;margin-top:16px!important}
#ctv-summary small{display:block;color:var(--ctv-muted);line-height:1.45;background:#f7f8ff;border-radius:12px;padding:12px;margin-top:12px}
#ctv-message{margin-top:14px;font-weight:850;padding:10px 2px}
.ctv-driver-box{max-width:850px;margin:40px auto;background:#fff;border:1px solid var(--ctv-border);border-radius:22px;padding:28px;font-family:Inter,Arial,sans-serif;box-shadow:0 16px 45px rgba(16,24,40,.08)}
.ctv-driver-actions{display:flex;gap:12px;margin-top:22px}
.ctv-driver-actions button{border:0;border-radius:14px;padding:15px 22px;color:#fff;font-weight:900;cursor:pointer}
.ctv-accept{background:#139b3b}.ctv-decline{background:#d92020}
@media(max-width:900px){
  .ctv-wrap{grid-template-columns:1fr;margin:12px;gap:14px}
  .ctv-left,.ctv-right{border-radius:20px;padding:18px}
  .ctv-left h2{font-size:29px}
  .ctv-row,.ctv-payments{grid-template-columns:1fr}
  #ctv-map{height:310px}
  .ctv-tabs{grid-template-columns:1fr}
}
@media(max-width:460px){
  .ctv-wrap{margin:8px}
  .ctv-left,.ctv-right{padding:15px}
  .ctv-left h2{font-size:26px}
  .ctv-wrap input,.ctv-wrap select{font-size:15px}
}

.ctv-error-field{border-color:#d92020!important;box-shadow:0 0 0 4px rgba(217,32,32,.12)!important}
