:root{font-family:Inter,system-ui,Arial,sans-serif;background:#f3f5f7;color:#17202a}*{box-sizing:border-box}body{margin:0}header{background:#111820;color:white;padding:18px 28px;display:flex;justify-content:space-between;align-items:center}header b{font-size:20px}header span{margin-left:10px;color:#f4c430}header nav{color:#aab4bf;font-size:14px}main{padding:24px;max-width:1500px;margin:auto}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stats div,.card{background:white;border-radius:16px;box-shadow:0 6px 20px #0000000c;padding:18px}.stats small{display:block;color:#6b7785}.stats strong{font-size:26px}.grid.two{display:grid;grid-template-columns:1.4fr .8fr;gap:18px;margin-bottom:18px}.title{display:flex;justify-content:space-between;align-items:center}h2{margin:0 0 14px}.route{border:1px solid #e5e8ec;border-radius:12px;padding:14px;margin:12px 0}.route ol{padding-left:22px}.route li{margin:7px 0}.metric{font-size:13px;color:#5f6b77;margin-top:8px}.pill{padding:4px 8px;border-radius:999px;font-size:11px;background:#eef1f4}.pill.flexible{background:#e6f6ea}.pill.soft_lock{background:#fff3cc}.pill.hard_lock{background:#fde8e7}.link{color:#1f6feb;text-decoration:none;font-size:13px}.form{display:grid;gap:10px}.row{display:grid;grid-template-columns:1fr 1fr;gap:10px}input,select,button{border:1px solid #d9dee4;border-radius:10px;padding:11px;font:inherit}button{background:#f4c430;border:none;font-weight:700;cursor:pointer}.vehicle,.trip,.audit{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f2}.vehicle span,.trip span,.audit span{color:#596674}.trip{display:grid;grid-template-columns:16px 1fr 1.4fr .9fr}.dot{width:10px;height:10px;border-radius:50%}.blue{background:#3578e5}.green{background:#2ca25f}.gold{background:#f4c430}.violet{background:#8b5cf6}.driver-body{background:#dfe4e8;min-height:100vh;padding:24px}.phone{max-width:430px;margin:auto;background:#f8fafb;min-height:820px;border-radius:28px;padding:18px;box-shadow:0 22px 60px #0002}.driver-head{display:flex;justify-content:space-between;align-items:center}.driver-head h1{margin:2px 0 16px}.status{font-size:12px;background:#e8f5ea;padding:6px 9px;border-radius:999px}.hero{background:#111820;color:white;border-radius:18px;padding:18px}.hero h2{margin:4px 0}.timeline{margin:18px 0}.timeline>div{display:flex;gap:12px;padding:12px 2px;border-bottom:1px solid #e8ecef}.timeline section{display:flex;flex-direction:column}.timeline small{color:#6b7785}.node{width:28px;height:28px;border-radius:50%;background:#f4c430;display:grid;place-items:center;font-weight:bold}.actions{display:grid;gap:10px}.secondary{background:#e8ecef}.back{display:block;margin-top:18px;color:#5b6570;text-decoration:none}.empty{padding:80px 10px;text-align:center}@media(max-width:900px){.grid.two,.stats{grid-template-columns:1fr}.trip{grid-template-columns:16px 1fr}.trip span,.trip small{grid-column:2}}
.hint{font-size:13px;color:#6b7785;margin-top:-6px}.livebox{margin-top:18px;padding:14px;background:#f7f9fb;border:1px solid #e3e8ee;border-radius:12px}.livebox h3{margin:0 0 4px}.suggestion{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;margin-top:10px;background:white;border:1px solid #dfe5ea;border-radius:10px}.suggestion>div{display:grid;gap:4px}.suggestion small{color:#63707c}.suggestion.recommended{border:2px solid #2ca25f}.suggestion.weak{border-color:#e59b9b}.tag{font-size:10px;margin-left:8px;padding:3px 6px;border-radius:999px;background:#eef1f4}.recommended .tag{background:#e6f6ea}.new_route .tag{background:#fff3cc}.compact{margin-top:12px}details{margin-top:14px}summary{cursor:pointer;font-weight:600;color:#55616d}hr{border:0;border-top:1px solid #edf0f2;margin:18px 0}
/* V1.6 auth + role management */
a{color:inherit}.inline{display:inline}.linkbtn{background:none!important;border:0!important;padding:0!important;color:inherit!important;text-decoration:underline;cursor:pointer}.auth-body{min-height:100vh;display:grid;place-items:center;background:#eef2f5;padding:20px}.login-card{width:min(420px,100%);background:#fff;border:1px solid #dde4ea;border-radius:18px;padding:28px;box-shadow:0 18px 60px rgba(25,35,45,.12)}.login-card h1{margin-bottom:3px}.login-card>p{margin-top:0;color:#66727e}.brandmark{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-weight:900;font-size:24px;background:#111820;color:#ffd43b}.errorbox{background:#fde8e7;border:1px solid #efb4af;color:#8a2b25;border-radius:10px;padding:10px 12px;margin:12px 0}.form label{font-size:12px;font-weight:700;color:#52606d}.form label input{margin-top:6px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid #e6ebef;vertical-align:top}td small{display:block;color:#7b8792}.rowactions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.rowactions form{display:flex;gap:5px}.rowactions input{width:170px;padding:7px}.rolehelp{display:grid;grid-template-columns:110px 1fr;gap:9px 12px}.rolehelp span{color:#66727e}

/* V1.8 live map */
.map-card{margin-bottom:18px}.live-map{height:430px;border-radius:14px;overflow:hidden;border:1px solid #d7dbe0;background:#eef1f4}.infra-status{font-size:12px;font-weight:700;padding:7px 10px;border-radius:999px;background:#eef1f4;color:#38414a;white-space:nowrap}.vehicle-marker-wrap{background:transparent;border:none}.vehicle-marker{display:flex;align-items:center;justify-content:center;min-width:42px;height:25px;padding:0 7px;border-radius:13px;background:#20262d;color:#fff;font-weight:800;font-size:11px;border:2px solid #fff;box-shadow:0 2px 7px rgba(0,0,0,.25)}.vehicle-marker.active{background:#24734a}.leaflet-popup-content{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}

.cancel-form{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.45rem}.cancel-form input,.cancel-form select{min-width:130px}.danger{background:#8b1e1e!important;color:white!important}.trip:has(small:nth-child(n)){}
/* V2.6 priority semantics */
.trip small { line-height: 1.45; }
.brand-logo-login{display:block;max-width:260px;width:80%;height:auto;margin:0 auto 18px}.header-brand{display:flex;align-items:center;gap:10px}.header-brand img{height:30px;width:auto;max-width:145px;object-fit:contain}.pilot-badge{font-size:.75rem;padding:3px 7px;border-radius:999px;background:#facc15;color:#111827;font-weight:700}

.vehicle-marker.taxi{background:#d8ad00;color:#111}.vehicle-marker.mietwagen{background:#2368d1}.vehicle-marker.active.taxi{box-shadow:0 0 0 3px rgba(216,173,0,.28),0 2px 7px rgba(0,0,0,.25)}.vehicle-marker.active.mietwagen{box-shadow:0 0 0 3px rgba(35,104,209,.25),0 2px 7px rgba(0,0,0,.25)}
/* V3.9 partner registration + administration */
.partner-reg-body{background:#eef2f5;min-height:100vh}.partner-reg-wrap{max-width:980px;padding:36px 18px}.partner-reg-card{padding:28px}.partner-reg-brand{display:flex;gap:18px;align-items:center;margin-bottom:18px}.partner-reg-brand img{width:150px;max-height:64px;object-fit:contain}.partner-reg-brand h1{margin:0 0 5px}.partner-reg-brand p{margin:0;color:#66727e}.partner-form h2{margin-top:22px;padding-top:14px;border-top:1px solid #edf0f2}.partner-form label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#52606d}.partner-form textarea{border:1px solid #d9dee4;border-radius:10px;padding:11px;font:inherit;resize:vertical}.checkgrid,.consentbox{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checkgrid label,.consentbox label{display:flex;align-items:flex-start;gap:8px;background:#f7f9fb;border:1px solid #e4e9ee;border-radius:10px;padding:12px;font-weight:600}.checkgrid input,.consentbox input{margin-top:2px}.noticebox{background:#fff8d8;border:1px solid #ecd87e;border-radius:10px;padding:12px 14px;margin:12px 0;color:#514718}.bigbtn{font-size:16px;padding:14px 18px}.biglink{display:inline-block;margin-top:14px;background:#f4c430;color:#111;text-decoration:none;padding:11px 14px;border-radius:10px;font-weight:800}.partner-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(520px,1fr));gap:18px;margin-top:18px}.partner-company h2{margin-bottom:3px}.partner-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.partner-facts>div{background:#f7f9fb;border-radius:10px;padding:11px}.partner-facts small,.partner-facts span{display:block;color:#6b7785}.partner-facts b{display:block;margin:2px 0}.partner-flags{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.partner-flags span,.statusbadge{padding:5px 9px;border-radius:999px;background:#eef1f4;font-size:12px}.status-active{background:#e3f5e9;color:#176b39}.status-pending{background:#fff3cc;color:#795d00}.status-suspended{background:#fde8e7;color:#922f28}.status-rejected{background:#eee;color:#555}.success-card .noticebox{margin-top:18px}@media(max-width:700px){.partner-form .row,.checkgrid,.consentbox,.partner-facts{grid-template-columns:1fr}.partner-admin-grid{grid-template-columns:1fr}.partner-reg-brand{align-items:flex-start;flex-direction:column}}
