:root{--bg:#020b14;--bg2:#031726;--panel:#041a2d;--panel2:#061f34;--line:#075487;--blue:#109cff;--cyan:#23c8ff;--text:#e6f5ff;--muted:#83a9c1;--green:#18d88c;--amber:#ffb11b;--red:#ff503e}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#010810;color:var(--text);font-family:Segoe UI,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}.hidden{display:none!important}.primary,.ghost,.danger{border:1px solid #1576b9;border-radius:6px;padding:12px 18px;color:#fff;font-weight:700}.primary{background:linear-gradient(180deg,#159fff,#0870df);box-shadow:0 0 20px #008cff33}.ghost{background:#051522}.danger{background:linear-gradient(180deg,#ec4249,#bf2029);border-color:#f04f55}.wide{width:100%}.link{background:none;border:0;color:#28b7ff;padding:0}.form-msg{min-height:20px;color:#7fd9ff}.form-msg.error{color:#ff7a7a}.auth-view{min-height:100vh;display:grid;grid-template-columns:1.25fr .72fr .72fr;gap:14px;padding:16px;background:radial-gradient(circle at 20% 20%,#0a3155 0,#020b14 40%,#01060c 100%)}.brand-hero,.login-card{position:relative;overflow:hidden;border:1px solid #0c5689;border-radius:10px;min-height:530px}.brand-hero{background:linear-gradient(90deg,#00101ed9 0%,#00101e8f 48%,#00101e20),url('/assets/hero-banner.png') center/cover no-repeat;padding:20px}.brand-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#020b14dd);pointer-events:none}.brand-lockup{position:relative;z-index:2;display:flex;align-items:center;gap:8px;width:max-content}.brand-lockup img{width:82px;height:82px;object-fit:contain}.brand-copy{display:grid}.brand-copy strong{font-size:22px;letter-spacing:3px}.brand-copy span{font-size:20px;letter-spacing:5px;color:#33aaff}.brand-copy em{font-family:cursive;color:#7cdcff;margin-top:4px}.hero-copy{position:relative;z-index:2;margin-top:45px;max-width:420px}.hero-copy h1{font-size:38px;line-height:1.08;margin:0 0 14px}.hero-copy h1 span{color:#37b8ff}.hero-copy p{font-size:17px}.script{position:absolute;left:355px;top:-80px;font:italic 26px cursive;color:#d9f3ff;transform:rotate(-8deg);white-space:nowrap}.hero-actions{display:flex;gap:12px;margin-top:24px}.feature-grid{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.feature-grid div{background:#031625d9;border:1px solid #0c5689;border-radius:6px;text-align:center;padding:16px 8px;font-size:22px}.feature-grid b,.feature-grid small{display:block;font-size:12px}.feature-grid small{color:var(--muted);margin-top:4px}.login-card{background:linear-gradient(#06182aee,#020a12ee);padding:72px 28px 28px;text-align:center;display:flex;flex-direction:column;justify-content:center}.login-card h2{font-size:22px;margin:8px 0}.login-card>p{color:#b4c8d7}.login-icon{font-size:46px;color:#2cb5ff}.login-card form{display:grid;gap:12px;margin-top:18px}.login-card label{display:flex;align-items:center;gap:8px;background:#041421;border:1px solid #20506e;border-radius:5px;padding:0 12px}.login-card input{width:100%;border:0;outline:0;background:transparent;color:#fff;padding:13px 4px}.login-foot{margin-top:16px}.mini-brand{margin-top:35px;color:#4ebeff;display:grid;place-items:center}.mini-brand small{color:#4ebeff;font:italic 12px cursive}.register-card{position:fixed;z-index:99;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(480px,92vw);background:#041725;border:1px solid #0c6ba9;border-radius:10px;box-shadow:0 30px 100px #000;padding:30px}.register-card:before,.modal:before{content:"";position:fixed;inset:-100vh -100vw;background:#000a;z-index:-1}.register-card form,.modal-box form{display:grid;gap:12px}.register-card label,.modal-box label,.form-pad label{display:grid;gap:6px;color:#9ed8ff}.register-card input,.modal-box input,.form-pad input{background:#020e18;border:1px solid #17608f;border-radius:5px;color:#fff;padding:12px}.close{position:absolute;top:8px;right:10px;background:transparent;border:0;color:#fff;font-size:28px}.app{min-height:100vh;display:flex;background:#020b14}.sidebar{width:210px;position:fixed;inset:0 auto 0 0;background:linear-gradient(#03182b,#01101d);border-right:1px solid #0a4d7b;display:flex;flex-direction:column;z-index:20}.side-logo{height:85px;display:flex;align-items:center;gap:10px;padding:10px 16px}.side-logo .br{font-size:32px;font-weight:900;color:#17a6ff}.side-logo>span:last-child{display:grid}.side-logo b{font-size:13px;letter-spacing:2px}.side-logo small{color:#38b6ff;font-weight:800;letter-spacing:2px}.sidebar nav{display:grid;gap:4px;padding:4px 10px}.sidebar nav button{height:44px;background:transparent;border:0;border-radius:6px;color:#d7edfb;text-align:left;padding:0 12px;font-weight:600}.sidebar nav button:hover,.sidebar nav button.on{background:#0d82e8;color:#fff}.side-motto{margin-top:auto;text-align:center;padding:24px 8px;font-size:48px}.side-motto b,.side-motto em{display:block;font-size:15px;color:#16afff;letter-spacing:2px}.side-motto em{font:italic 12px cursive;margin-top:7px}.main{margin-left:210px;width:calc(100% - 210px);min-height:100vh}.topbar{height:72px;background:#03182a;border-bottom:1px solid #0c5689;display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:15}.topbar h2{color:#4ebeff;margin:0;font-size:20px}.topbar small{font-size:11px}.top-right{display:flex;align-items:center;gap:16px;color:#8fdcff}.online-dot{color:#34e4aa}.user-chip{display:grid;grid-template-columns:auto auto;background:#06233a;border:1px solid #0c5689;color:#fff;border-radius:22px;padding:5px 12px;text-align:left}.user-chip small{grid-column:2;color:#8db7ce}.logout{background:#061725;border:1px solid #164e70;color:#9ed8ff;border-radius:5px;padding:8px 10px}.page{display:none;padding:14px}.page.active{display:block}.dash-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:12px}.panel{background:#04192b;border:1px solid #0b588e;border-radius:9px;overflow:hidden}.panel-head{min-height:43px;padding:11px 14px;border-bottom:1px solid #0b588e;font-weight:800;display:flex;align-items:center;gap:8px}.panel-head>span{color:#15df9b;font-size:12px}.panel-head button{margin-left:auto;background:transparent;border:0;color:#27b9ff}.map-panel{min-height:520px}.map{height:475px;position:relative;overflow:hidden;background:radial-gradient(circle at 45% 45%,#063c60,#031525 58%,#020c16)}.map-large{height:calc(100vh - 160px);min-height:600px}.map-grid{position:absolute;inset:0;background-image:linear-gradient(#0c3a5a44 1px,transparent 1px),linear-gradient(90deg,#0c3a5a44 1px,transparent 1px);background-size:70px 70px;opacity:.45}.map:before{content:"";position:absolute;left:8%;right:8%;top:10%;bottom:12%;background:#082f4d;clip-path:polygon(6% 36%,14% 22%,24% 20%,29% 8%,40% 14%,47% 8%,57% 18%,68% 17%,78% 27%,90% 30%,94% 46%,84% 52%,77% 66%,70% 74%,60% 68%,51% 83%,39% 77%,27% 81%,23% 65%,12% 58%);filter:drop-shadow(0 0 18px #0b669b);opacity:.8}.map-label.europe{position:absolute;left:35%;top:38%;font-size:68px;font-weight:900;letter-spacing:14px;color:#0a3d63;transform:rotate(-8deg)}.city{position:absolute;font-size:11px;color:#b9d8e9;text-shadow:0 1px 2px #000}.city:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#ffce2f;border:2px solid #fff;margin-right:4px}.c1{left:42%;top:28%}.c2{left:49%;top:39%}.c3{left:62%;top:42%}.c4{left:50%;top:55%}.c5{left:54%;top:68%}.c6{left:25%;top:58%}.route-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.legend{position:absolute;bottom:10px;left:12px;background:#03111ce8;border:1px solid #0b588e;border-radius:5px;padding:8px 10px;display:flex;gap:14px;font-size:11px}.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}.green{background:#17dc89}.orange{background:#ffad20}.blue{background:#1aa8ff}.gray{background:#758594}.marker{position:absolute;transform:translate(-50%,-50%);background:#04111de8;border:2px solid #1eb5ff;border-radius:7px;padding:6px 8px;box-shadow:0 0 12px #09f;color:#fff;z-index:5;min-width:110px}.marker:before{content:"🚛 ";}.marker b{font-size:12px}.marker small{display:block;color:#96d8ff;font-size:10px;margin-top:2px}.status-panel{min-height:250px}.status-meters{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:28px 8px 18px;text-align:center}.status-meters b{display:block;font-size:28px;color:#2ec8ff}.status-meters b.amber{color:var(--amber)}.status-meters b.red{color:var(--red)}.status-meters small{display:block;color:#91b4cb;margin-top:8px;font-size:10px}.status-total{border-top:1px solid #0b588e;padding:18px}.status-total small{display:block;font-weight:700}.status-total strong{font-size:27px;color:#27c8ff}.live-panel,.deliveries-panel{min-height:270px}.live-list{padding:4px 12px}.live-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px;align-items:center;padding:10px;border-bottom:1px solid #093956}.live-row span:nth-child(2){color:#1edb92}.deliveries-panel .table-wrap{max-height:240px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid #0b3656;font-size:12px}th{color:#a6d9f7;background:#05213a;position:sticky;top:0}.badge{display:inline-block;padding:4px 8px;border-radius:4px;background:#108f51;color:#fff;font-size:10px}.badge.pending{background:#c88611}.badge.off{background:#7e3030}.empty{padding:25px;color:#789cb5}.full{min-height:calc(100vh - 125px)}.tabs{padding:14px}.tabs button{border:1px solid #0c588d;background:#05223a;color:#a9d7f4;border-radius:5px;padding:9px 15px;margin-right:6px}.tabs button.on{background:#0a81e6;color:#fff}.driver-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:14px}.driver-card{border:1px solid #0b588e;background:#052039;border-radius:8px;padding:16px}.driver-card h3{margin:5px 0}.driver-card p{color:#8eb4ce}.stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.stat-card{background:#04192b;border:1px solid #0b588e;border-radius:10px;text-align:center;padding:45px 12px}.stat-card span{font-size:30px}.stat-card b{display:block;font-size:34px;color:#2ec8ff;margin:10px}.stat-card small{color:#91b4cb}.driver-grid{display:grid;grid-template-columns:320px 1fr;gap:14px}.profile-card{text-align:center;padding-bottom:30px}.profile-avatar{font-size:62px;margin-top:30px}.profile-card h2{margin:6px}.profile-card p{color:#7fb2d0}.profile-status{color:#1edb92}.my-meters{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:45px 15px;text-align:center}.my-meters b{display:block;font-size:28px;color:#26c7ff}.my-meters small{color:#8baec5}.full-span{grid-column:1/-1}.admin-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}.admin-users{min-height:600px}.admin-actions{display:flex;flex-wrap:wrap;gap:4px}.admin-actions button{border:1px solid #17618d;background:#072841;color:#bde6ff;border-radius:4px;padding:5px 7px;font-size:10px}.admin-actions .warn{border-color:#874b22;color:#ffbf7a}.admin-actions .bad{border-color:#7f2d36;color:#ff8f9b}.form-pad{padding:20px;display:grid;gap:12px}.form-pad p{color:#a4bfd1}.form-actions{display:flex;gap:8px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center}.modal-box{position:relative;width:min(460px,92vw);background:#041725;border:1px solid #0c6ba9;border-radius:10px;box-shadow:0 30px 100px #000;padding:30px}footer{padding:15px 24px;border-top:1px solid #0a4169;color:#6f9fbb;font-size:12px}footer span{float:right}@media(max-width:1200px){.auth-view{grid-template-columns:1fr 1fr}.brand-hero{grid-column:1/-1;min-height:520px}.dash-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(3,1fr)}.admin-grid{grid-template-columns:1fr}.script{display:none}}@media(max-width:800px){.auth-view{display:block;padding:8px}.brand-hero,.login-card{margin-bottom:10px}.brand-hero{min-height:570px}.feature-grid{grid-template-columns:1fr 1fr}.login-card{min-height:auto;padding:35px 20px}.sidebar{width:68px}.side-logo span:not(.br),.sidebar nav span,.side-motto{display:none}.sidebar nav button{text-align:center;font-size:18px}.main{margin-left:68px;width:calc(100% - 68px)}.top-right #clock,.top-right>span:nth-of-type(3){display:none}.user-chip small{display:none}.status-meters{grid-template-columns:repeat(3,1fr)}.stat-grid{grid-template-columns:1fr 1fr}.driver-grid,.settings-grid{grid-template-columns:1fr}.my-meters{grid-template-columns:1fr 1fr}.map-label.europe{font-size:38px}.topbar{padding:0 10px}.logout{display:none}}

/* === ETS2 + ProMods real tile map (v1.1.5) === */
.scs-map{background:#020b13!important;cursor:grab;touch-action:none;user-select:none}
.scs-map:active{cursor:grabbing}
.scs-map:before{display:none!important}
.scs-map .map-grid,.scs-map .map-label,.scs-map .city{display:none!important}
.map-stage{position:absolute;inset:0;overflow:hidden;background:#020b13}
.map-world{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}
.map-tiles{position:absolute;inset:0}
.map-tile{position:absolute;width:256px;height:256px;display:block;image-rendering:auto;user-select:none;pointer-events:none}
.map-trails{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}
.map-marker-layer{position:absolute;inset:0;pointer-events:none}
.scs-marker{position:absolute;z-index:8;transform-origin:center center;white-space:nowrap;pointer-events:none}
.scs-marker-card{position:absolute;left:0;top:0;transform:translate(-50%,-115%) scale(var(--marker-inv,1));transform-origin:50% 100%;background:#03111dec;border:2px solid #1eb5ff;border-radius:8px;padding:6px 9px;box-shadow:0 0 13px #009dff;color:#fff;min-width:125px}
.scs-marker-card b{font-size:12px}.scs-marker-card small{display:block;color:#9bdcff;font-size:10px;margin-top:2px}
.scs-truck-arrow{position:absolute;left:0;top:0;width:12px;height:12px;margin:-6px 0 0 -6px;transform:rotate(var(--heading,0deg)) scale(var(--marker-inv,1));transform-origin:center;border-radius:50%;background:#0a96ed;border:2px solid #fff;box-shadow:0 0 6px #00a6ff}
.scs-truck-arrow:after{content:"";position:absolute;left:3px;top:-5px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:6px solid #fff}
.map-status{position:absolute;z-index:12;left:50%;top:50%;transform:translate(-50%,-50%);background:#02111eea;border:1px solid #0c639b;border-radius:8px;padding:16px 20px;color:#a8dfff;text-align:center;max-width:80%;box-shadow:0 10px 40px #0008}
.map-status.hidden{display:none!important}
.map-controls{position:absolute;z-index:12;top:10px;left:10px;display:flex;align-items:center;gap:8px;background:#02111eea;border:1px solid #0c5788;border-radius:6px;padding:5px 8px;color:#85b7d4;font-size:10px}
.map-controls button{width:30px;height:30px;border-radius:5px;border:1px solid #1689c9;background:#052840;color:#fff;font-weight:800}
.scs-map .legend{z-index:12}

/* v1.1.6 - hard override old placeholder/cache */
.scs-map::before{display:none!important;content:none!important}
.scs-map .map-status.hidden{display:none!important}

/* v1.1.7 - smooth LIVE marker + persistent route trace */
.scs-marker-card{max-width:360px}
.scs-marker-card small{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.map-trails polyline{vector-effect:non-scaling-stroke}

/* v1.1.9 — MAPA LIVE 1:1 z zaakceptowaną wizualizacją */
.live-map-shell{min-height:calc(100vh - 115px);background:#031321;border-color:#0b5687}
.live-map-head{height:66px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #0b568e;background:linear-gradient(180deg,#061d31,#031522)}
.live-map-head>div:first-child{display:grid;gap:4px}.live-map-head b{font-size:15px;letter-spacing:.4px}.live-map-head small{color:#7199b3;font-size:11px}
.live-map-tools{display:flex;align-items:center;gap:8px}.live-pill{color:#18e598;border:1px solid #11724f;background:#06251d;border-radius:5px;padding:8px 10px;font-size:11px;font-weight:800;box-shadow:0 0 14px #00d98b20}
.live-map-tools select{min-width:180px;background:#03111d;color:#dff4ff;border:1px solid #0d5f93;border-radius:5px;padding:8px 10px;outline:none}.map-action{background:#06253c;border:1px solid #1476ad;color:#bfe9ff;border-radius:5px;padding:8px 10px;font-weight:700}
.live-map-body{display:grid;grid-template-columns:minmax(0,1fr) 285px;min-height:680px}.live-map-body .map-large{height:calc(100vh - 210px);min-height:680px;border-right:1px solid #0b568e}
.map-premium{background:#020a11!important}.map-premium .map-tile{filter:brightness(1.18) contrast(1.14) saturate(1.13);image-rendering:auto}
.map-premium:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;box-shadow:inset 0 0 80px #00101c,inset 0 0 18px #008ed51a}
.map-zoom-stack{position:absolute;z-index:13;left:14px;top:14px;display:grid;gap:5px}.map-zoom-stack button{width:34px;height:34px;border:1px solid #1688c8;background:#041a2aee;color:#fff;border-radius:5px;font-size:19px;font-weight:800;box-shadow:0 4px 14px #0008}
.map-location-hint{position:absolute;z-index:13;top:14px;left:60px;background:#03131fe8;border:1px solid #0b598b;border-radius:5px;color:#9dcce5;padding:8px 11px;font-size:10px}.map-location-hint span{color:#17d99a;margin:0 5px}
.map-legend-premium{position:absolute;z-index:13;left:14px;bottom:14px;display:flex;gap:16px;align-items:center;background:#02101be8;border:1px solid #0b598b;border-radius:5px;padding:8px 11px;font-size:10px;color:#a7cee4;box-shadow:0 5px 20px #0007}.dot-live{display:inline-block;width:8px;height:8px;border-radius:50%;background:#1baaff;border:2px solid #dff8ff;box-shadow:0 0 7px #00a6ff;margin-right:5px}.line-live{display:inline-block;width:22px;height:2px;background:#10a8ee;opacity:.65;margin:0 5px 3px 0}.road-live{display:inline-block;width:18px;height:4px;border-top:2px solid #ffd33b;margin-right:5px}
.live-driver-card{background:linear-gradient(180deg,#061b2c,#03111d);padding:16px;border-left:1px solid #03101b;color:#dff4ff}.driver-card-title{display:grid;grid-template-columns:42px 1fr auto;gap:9px;align-items:center;padding-bottom:14px;border-bottom:1px solid #0a4166}.driver-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#0b3755;border:1px solid #1688c8;box-shadow:0 0 15px #009dff22}.driver-card-title div{display:grid;gap:2px}.driver-card-title small,.driver-location small,.driver-live-grid small{font-size:9px;color:#6f9bb7;letter-spacing:.7px}.driver-card-title b{font-size:14px}.driver-online{font-size:9px;color:#6f8290;border:1px solid #37505f;border-radius:4px;padding:4px 5px}.driver-online.on{color:#20e79c;border-color:#168e64;background:#06271e}
.driver-location{display:grid;gap:5px;padding:17px 0}.driver-location strong{font-size:16px;color:#f0faff}.driver-location span{font-size:11px;color:#7fb2cf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-live-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid #0a4e79;border-radius:7px;overflow:hidden;margin-bottom:13px}.driver-live-grid>div{padding:13px;text-align:center;background:#041a2b}.driver-live-grid>div+div{border-left:1px solid #0a4e79}.driver-live-grid b{display:block;color:#27baff;font-size:24px;line-height:1.1;margin-top:4px}.driver-live-grid span{font-size:9px;color:#6e9ab4}.driver-info-row{display:flex;justify-content:space-between;gap:12px;padding:10px 2px;border-bottom:1px solid #082e49;font-size:11px}.driver-info-row span{color:#7098b0}.driver-info-row b{text-align:right;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-driver-card .primary{margin-top:15px;padding:9px;font-size:11px}.driver-tip{font-size:10px;line-height:1.45;color:#668ba3;margin-top:13px}
/* mały, precyzyjny marker jak na zaakceptowanym podglądzie */
.map-premium .scs-truck-arrow{width:8px;height:8px;margin:-4px 0 0 -4px;border-width:1px;box-shadow:0 0 5px #00a6ff}.map-premium .scs-truck-arrow:after{left:2px;top:-4px;border-left-width:2px;border-right-width:2px;border-bottom-width:4px}.map-premium .scs-marker-card{min-width:92px;padding:4px 6px;border-width:1px;border-radius:5px;box-shadow:0 0 7px #009dff99}.map-premium .scs-marker-card b{font-size:10px}.map-premium .scs-marker-card small{font-size:8px;max-width:190px}.map-premium .map-trails polyline{opacity:.48!important;filter:none!important}
@media(max-width:1050px){.live-map-body{grid-template-columns:1fr}.live-driver-card{border-left:0;border-top:1px solid #0b568e}.live-map-tools select{min-width:120px}.live-map-head{height:auto;min-height:66px;gap:10px;flex-wrap:wrap;padding:10px 12px}.live-map-body .map-large{height:65vh;min-height:500px}}

/* v1.2.0 — OSTRA MAPA LIVE: realne kafelki TsMap, bez sztucznego rozmywania */
#maplive{overflow:hidden}
#maplive .live-map-shell{width:100%;max-width:100%;overflow:hidden}
#maplive .live-map-head{box-sizing:border-box;width:100%;overflow:hidden}
#maplive .live-map-tools{min-width:0;flex:0 1 auto}
#maplive .live-map-tools select{width:180px;max-width:22vw}
#maplive .live-map-body{width:100%;max-width:100%;grid-template-columns:minmax(0,1fr) 300px;overflow:hidden}
#maplive .map-premium{min-width:0;width:100%;overflow:hidden}
#maplive .live-driver-card{width:300px;min-width:300px;display:block!important;overflow:hidden}
#maplive .map-premium .map-tile{
  filter:none!important;
  opacity:1!important;
  image-rendering:auto!important;
  transform:translateZ(0);
  backface-visibility:hidden;
}
#maplive .map-premium:after{
  box-shadow:inset 0 0 30px #00101c66!important;
}
#maplive .map-stage{background:#0b1420}
#maplive .map-legend-premium{background:#02101bf2}
#maplive .scs-marker-card{
  min-width:104px!important;
  max-width:230px!important;
  padding:5px 7px!important;
  background:#02111ef2!important;
  box-shadow:0 0 5px #00a6ff88!important;
}
#maplive .scs-truck-arrow{
  width:7px!important;height:7px!important;
  margin:-3.5px 0 0 -3.5px!important;
  box-shadow:0 0 4px #00a6ff!important;
}
#maplive .map-trails polyline{
  opacity:.42!important;
  filter:none!important;
}
@media(max-width:1180px){
  #maplive .live-map-body{grid-template-columns:minmax(0,1fr) 250px}
  #maplive .live-driver-card{width:250px;min-width:250px}
  #maplive .live-map-tools .map-action{font-size:10px;padding:7px}
}

/* ===== MAPA PRO TEST 1.3.0 ===== */
.pro-shell{overflow:hidden}
.pro-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid #12314a}
.pro-head b{font-size:18px;color:#eef8ff}.pro-head small{display:block;color:#7895aa;margin-top:4px}
.pro-badges{display:flex;gap:7px}.pro-badges span{padding:6px 9px;border:1px solid #17466a;border-radius:8px;color:#8bcfff;background:#071a29;font-size:11px;font-weight:800}
.pro-badges .pro-live{color:#5cff9a;border-color:#12683d}
.pro-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:10px 14px;background:#06131f;border-bottom:1px solid #12314a}
.pro-toolbar label{display:flex;gap:6px;align-items:center;padding:7px 9px;border:1px solid #153954;border-radius:7px;background:#081b2a;color:#b9d3e5;font-size:12px;cursor:pointer}
.pro-data-status{margin-left:auto;color:#6f8da3;font-size:11px}
.pro-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;min-height:650px}
.pro-map{height:650px!important;border:0!important;border-radius:0!important;position:relative}
.pro-side{padding:18px;background:#061522;border-left:1px solid #12314a;color:#9db7c9}
.pro-side h3{color:#eef8ff;margin-top:0}.pro-side hr{border:0;border-top:1px solid #16364d;margin:16px 0}
.pro-count{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #102d42}.pro-count b{color:#5fd0ff}
.pro-poi-layer{position:absolute;inset:0;pointer-events:none;z-index:15;overflow:hidden}
.pro-poi{position:absolute;transform:translate(-50%,-50%);font-size:16px;filter:drop-shadow(0 1px 2px #000);pointer-events:auto;cursor:pointer}
@media(max-width:1100px){.pro-layout{grid-template-columns:1fr}.pro-side{display:none}}

/* MAPA PRO 1.3.2 — prawdziwe warstwy w układzie współrzędnych ETS2 */
.map-pro-world-layer{position:absolute;inset:0;z-index:7;pointer-events:none}
.pro-world-poi{position:absolute;transform:translate(-50%,-50%) scale(var(--marker-inv));transform-origin:center;font-size:21px;line-height:1;filter:drop-shadow(0 2px 2px #000);pointer-events:auto;cursor:help;z-index:9}
.pro-border-svg{position:absolute;inset:0;overflow:visible}
.pro-border-line{stroke:#49c8ff;stroke-width:3;stroke-dasharray:10 7;opacity:.78;vector-effect:non-scaling-stroke}

/* Blue Route 1.4.0 — jedna mapa kierowców */
#map2.map-large{height:72vh;min-height:620px}
#map2 .map-location-hint{font-weight:800;letter-spacing:.06em}

/* ===== BLUE ROUTE WORLD 1.5 =====
   Własna prezentacja mapy firmowej. Geometria pozostaje zgodna z aktualnym
   eksportem ETS2/ProMods na VPS, dzięki czemu markery telemetrii zachowują pozycję. */
#map2{background:
 radial-gradient(circle at 45% 35%,rgba(8,55,82,.22),transparent 42%),
 linear-gradient(180deg,#061522,#020b12)!important}
#map2 .map-tile{
 filter:brightness(.67) contrast(1.22) saturate(.46) hue-rotate(155deg);
 opacity:.92
}
#map2 .map-stage:after{
 content:"";position:absolute;inset:0;pointer-events:none;z-index:5;
 background:linear-gradient(180deg,rgba(0,174,255,.025),rgba(0,0,0,.10));
 box-shadow:inset 0 0 90px rgba(0,0,0,.38)
}
#map2 .truck-marker,#map2 .live-marker{
 filter:drop-shadow(0 0 8px rgba(0,196,255,.9)) drop-shadow(0 2px 3px #000)
}
#map2 .trail-line{filter:drop-shadow(0 0 3px rgba(0,196,255,.65))}
#map2 .map-location-hint{
 background:rgba(2,17,28,.92)!important;border-color:#087db5!important;
 color:#7cdbff!important
}
#map2 .map-location-hint:before{content:"BR • "}

/* Blue Route Logistic — manager aktualizacji Tachografu */
.update-manager{grid-column:1/-1}.update-grid{display:grid;grid-template-columns:220px 1fr;gap:14px}.update-manager textarea{width:100%;resize:vertical}.check-row{display:flex!important;align-items:center;gap:9px}.check-row input{width:auto!important}.update-current{margin-top:14px;padding:12px;border:1px solid #17466a;border-radius:8px;background:#061522;color:#9fc6dd;line-height:1.6}.update-current code{word-break:break-all}@media(max-width:700px){.update-grid{grid-template-columns:1fr}}

.company-hero{display:flex;align-items:center;gap:22px;padding:24px;margin-bottom:18px;border:1px solid rgba(0,174,239,.35);border-radius:16px;background:rgba(0,174,239,.08)}
.company-logo-mark{width:76px;height:76px;border-radius:16px;display:grid;place-items:center;font-weight:900;font-size:24px;color:#00aeef;border:1px solid #00aeef;background:#031522}
.company-count{margin-top:8px;color:#00aeef;font-weight:700}.company-staff{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;padding-top:12px}
.company-person{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid rgba(130,180,205,.16);border-radius:12px;background:rgba(4,21,34,.75)}
.company-avatar{width:44px;height:44px;flex:0 0 44px;border-radius:50%;display:grid;place-items:center;background:rgba(0,174,239,.12);border:1px solid rgba(0,174,239,.45);color:#00aeef;font-weight:900}
.company-person-info b{display:block;margin-bottom:7px}.company-rank,.company-admin{display:inline-block;font-size:12px;padding:4px 8px;margin-right:6px;border-radius:999px;border:1px solid rgba(0,174,239,.4);color:#9fe3ff;background:rgba(0,174,239,.08)}
.company-admin{border-color:rgba(255,196,0,.45);color:#ffd45c}

/* ===== BLUE ROUTE WORLD 1.6 — wyraźny redesign MAPY LIVE ===== */
#maplive .live-map-shell{
  background:linear-gradient(180deg,#03111d 0%,#020a12 100%);
  border:1px solid #0b6fa9;
  box-shadow:0 18px 60px rgba(0,0,0,.35),0 0 30px rgba(0,166,255,.08) inset;
}
#maplive .live-map-head{
  min-height:72px;
  background:
    linear-gradient(90deg,rgba(10,121,184,.18),transparent 38%),
    linear-gradient(180deg,#082238 0%,#031421 100%);
  border-bottom:1px solid #0c79b7;
  box-shadow:0 8px 28px rgba(0,0,0,.22);
}
#maplive .live-map-head b{
  font-size:17px;
  letter-spacing:.08em;
  color:#effaff;
  text-shadow:0 0 16px rgba(31,190,255,.22);
}
#maplive .live-map-head small{color:#79a9c5;letter-spacing:.04em}
#maplive .live-pill{
  color:#6dffc0;
  background:linear-gradient(180deg,#083427,#051f19);
  border-color:#1a9f70;
  box-shadow:0 0 0 1px rgba(56,255,170,.05) inset,0 0 16px rgba(35,238,148,.10);
}
#maplive .live-map-tools select,#maplive .map-action{
  background:linear-gradient(180deg,#09283f,#051b2b);
  border-color:#166f9f;
  color:#dff6ff;
  box-shadow:0 5px 16px rgba(0,0,0,.18);
}
#maplive .map-action:hover{border-color:#2ebcff;background:linear-gradient(180deg,#0b3553,#07243a)}

#map2{
  isolation:isolate;
  background:
    radial-gradient(circle at 50% 46%,rgba(0,136,204,.16),transparent 36%),
    linear-gradient(180deg,#071523 0%,#020910 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(40,179,236,.12);
}
#map2 .map-stage{
  background:
    linear-gradient(rgba(31,155,211,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(31,155,211,.035) 1px,transparent 1px),
    #050e17;
  background-size:36px 36px,36px 36px,auto;
}
#map2 .map-tile{
  filter:brightness(.58) contrast(1.32) saturate(.62) hue-rotate(150deg)!important;
  opacity:.96!important;
}
#map2 .map-stage:before{
  content:"";position:absolute;inset:0;z-index:4;pointer-events:none;
  background:
    radial-gradient(circle at 50% 50%,transparent 48%,rgba(0,0,0,.26) 100%),
    linear-gradient(180deg,rgba(0,181,255,.025),rgba(0,0,0,.06));
  box-shadow:inset 0 0 110px rgba(0,0,0,.42);
}
#map2 .map-stage:after{
  content:"BLUE ROUTE LOGISTIC  •  LIVE OPERATIONS";
  position:absolute;right:18px;bottom:18px;z-index:6;pointer-events:none;
  color:rgba(135,212,244,.22);font-size:10px;font-weight:800;letter-spacing:.22em;
  background:none;box-shadow:none;
}
#map2 .map-zoom-stack button{
  width:38px;height:38px;
  background:linear-gradient(180deg,rgba(8,39,62,.97),rgba(3,20,33,.97));
  border:1px solid #1d86ba;
  border-radius:9px;
  box-shadow:0 8px 24px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.02) inset;
}
#map2 .map-zoom-stack button:hover{border-color:#43c9ff;color:#71d9ff}
#map2 .map-location-hint{
  left:66px;top:14px;
  padding:9px 13px;
  border-radius:9px;
  background:rgba(3,19,31,.90)!important;
  border:1px solid #176d9c!important;
  color:#8fdcff!important;
  box-shadow:0 9px 28px rgba(0,0,0,.28);
  backdrop-filter:blur(7px);
}
#map2 .map-location-hint:before{content:"BR // ";color:#4ee3ff}
#map2 .map-legend-premium{
  border-radius:10px;
  background:rgba(3,17,28,.91)!important;
  border:1px solid #145f8a;
  box-shadow:0 10px 28px rgba(0,0,0,.35);
  backdrop-filter:blur(7px);
}
#map2 .map-trails polyline{
  opacity:.72!important;
  filter:drop-shadow(0 0 2px rgba(0,203,255,.85)) drop-shadow(0 0 6px rgba(0,132,255,.28))!important;
}
#map2 .scs-marker-card{
  min-width:122px!important;
  padding:7px 9px!important;
  border:1px solid #39c8ff!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(4,30,47,.97),rgba(2,15,25,.97))!important;
  box-shadow:0 8px 22px rgba(0,0,0,.38),0 0 16px rgba(0,178,255,.28)!important;
}
#map2 .scs-marker-card b{font-size:11px;color:#f4fbff}
#map2 .scs-marker-card small{font-size:9px;color:#86d9fa}
#map2 .scs-truck-arrow{
  width:11px!important;height:11px!important;margin:-5.5px 0 0 -5.5px!important;
  background:#0eb8ff!important;border:2px solid #eafaff!important;
  box-shadow:0 0 0 4px rgba(14,184,255,.12),0 0 16px rgba(0,197,255,.95)!important;
}
#map2 .scs-truck-arrow:after{left:2px!important;top:-7px!important;border-left-width:3px!important;border-right-width:3px!important;border-bottom-width:6px!important}

#maplive .live-driver-card{
  background:
    linear-gradient(180deg,rgba(10,49,76,.18),transparent 32%),
    linear-gradient(180deg,#061a2a,#03111c);
  border-left:1px solid #0d5e8b;
  box-shadow:-14px 0 34px rgba(0,0,0,.18);
}
#maplive .driver-avatar{background:linear-gradient(180deg,#0d4669,#08283e);border-color:#25a8de;box-shadow:0 0 18px rgba(0,176,255,.16)}
#maplive .driver-live-grid{border-color:#116b9d;border-radius:10px;box-shadow:0 9px 24px rgba(0,0,0,.16)}
#maplive .driver-live-grid>div{background:linear-gradient(180deg,#06243a,#041a2b)}
#maplive .driver-live-grid b{color:#55d4ff;text-shadow:0 0 14px rgba(0,186,255,.18)}

@media(max-width:1050px){
  #maplive .live-map-head{align-items:flex-start}
  #maplive .live-map-tools{width:100%;overflow-x:auto;padding-bottom:2px}
  #map2 .map-stage:after{display:none}
}

/* ===== BLUE ROUTE WORLD 1.7 — NATYWNE KAFELKI FIRMOWE =====
   Kafelki /map/Tiles są już wyrenderowane w palecie Blue Route Logistic.
   Nie nakładamy ponownego filtra CSS, żeby zachować ostre drogi, nazwy miast
   i firmowe kolory przy każdym poziomie zoomu. */
#map2 .map-tile,
#maplive .map-premium .map-tile{
  filter:none!important;
  opacity:1!important;
  image-rendering:auto;
}
#map2 .map-stage{
  background:#06131f!important;
}
#map2 .map-stage:before{
  background:
    radial-gradient(circle at 50% 50%,transparent 52%,rgba(0,0,0,.22) 100%),
    linear-gradient(180deg,rgba(0,181,255,.018),rgba(0,0,0,.045))!important;
  box-shadow:inset 0 0 105px rgba(0,0,0,.34)!important;
}
#map2 .map-stage:after{
  content:"BLUE ROUTE LOGISTIC  •  WORLD 1.7  •  LIVE OPERATIONS";
}
