*{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;min-height:100%;font-family:Arial,sans-serif;background:#050b14;overflow:hidden}button{cursor:pointer;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.45}.dashboard-shell,.subpage-shell,.dispatch-shell{min-height:100vh;color:#fff;position:relative;overflow:hidden;background:linear-gradient(180deg,#02060d94,#02060dc7 55%,#02060deb),url(/map-bg.png);background-size:120%;background-position:80% center;background-repeat:no-repeat}.dashboard-shell:before,.subpage-shell:before,.dispatch-shell:before{content:"";position:absolute;inset:0;pointer-events:none;-webkit-backdrop-filter:blur(2px) saturate(.8);backdrop-filter:blur(2px) saturate(.8);background:radial-gradient(circle at 50% 38%,rgba(34,255,122,.08),transparent 30%),radial-gradient(circle at 18% 52%,rgba(34,255,122,.06),transparent 22%),radial-gradient(circle at 82% 48%,rgba(34,255,122,.06),transparent 22%)}.dashboard-shell:after,.subpage-shell:after,.dispatch-shell:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at center,transparent 0 48%,rgba(0,0,0,.52) 100%)}.dashboard-logo,.dispatch-logo{position:relative;z-index:20;font-size:64px;font-weight:900;padding:24px 0 0 28px;letter-spacing:-2px;text-shadow:0 3px 12px rgba(0,0,0,.92),0 0 18px rgba(0,0,0,.7)}.dashboard-logo span,.dispatch-logo span{color:#22ff7a}.dashboard-grid{position:relative;z-index:5;display:grid;grid-template-columns:320px 620px 320px;justify-content:center;align-items:center;gap:70px;margin-top:30px}.left-tachos,.right-tachos,.center-area{display:flex;flex-direction:column;align-items:center;gap:38px}.menu-tacho{width:280px;height:280px;border-radius:50%;border:10px solid #c6ccd5;background:radial-gradient(circle at center,#050d18,#01050b 75%);position:relative;box-shadow:0 0 28px #00ff782e,inset 0 0 35px #000000e6;color:#fff}.menu-tacho:before{content:"";position:absolute;inset:24px;border-radius:50%;border:5px solid #12d463;box-shadow:0 0 14px #00ff7899}.menu-tacho:after{content:"";position:absolute;width:8px;height:110px;background:linear-gradient(to top,#ff3b3b,#ff914d);border-radius:999px;top:50%;left:50%;transform-origin:bottom center;transform:translate(-50%,-100%) rotate(-43deg)}.menu-tacho-title{position:relative;z-index:5;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:900;color:#fff;text-shadow:0 4px 18px rgba(0,0,0,.95)}.main-tacho-wrap{position:relative}.main-tacho{width:380px;height:380px}.main-tacho:after{height:150px}.main-tacho .menu-tacho-title{font-size:42px}.warning-blinker{position:absolute;top:-85px;width:56px;height:56px;border:none;background:transparent;font-size:46px;color:#6f7784;opacity:.7;z-index:10}.warning-blinker.active{color:#22ff7a;opacity:1;text-shadow:0 0 10px #22ff7a,0 0 24px #22ff7a;animation:blinkerPulse 1s infinite}.main-left-blinker{left:70px}.main-right-blinker{right:70px}@keyframes blinkerPulse{0%{opacity:.25}50%{opacity:1}to{opacity:.25}}.central-warning-display{width:580px;height:280px;border-radius:28px;border:4px solid #bcc2cc;background:linear-gradient(180deg,#111827f2,#020617fa);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 20px #00ff7826}.central-warning-title{font-size:34px;font-weight:900;margin-bottom:24px}.warning-icon-row{display:flex;gap:18px;margin-bottom:24px}.warning-icon{width:120px;height:86px;border-radius:14px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(180deg,#1e293b,#030712);color:#fff;position:relative;font-weight:800}.warning-icon span{display:block;font-size:12px;margin-top:4px}.warning-icon b{position:absolute;right:-10px;top:-10px;width:28px;height:28px;border-radius:50%;background:#ff4d4d;display:flex;align-items:center;justify-content:center}.central-warning-text{color:#22ff7a;font-size:20px}.bottom-action-bar{position:relative;z-index:5;width:1320px;max-width:92vw;display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin:50px auto 0}.bottom-action{height:94px;border-radius:16px;border:2px solid rgba(180,190,205,.6);background:linear-gradient(180deg,#1f2937f0,#050b14fa);color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;font-size:22px;font-weight:900}.bottom-action span{font-size:22px;font-weight:900}.edition-badge{position:absolute;z-index:6;left:50%;bottom:8px;transform:translate(-50%);padding:6px 18px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;background:#050b14c7;border:1px solid rgba(255,255,255,.18)}.edition-silber{color:#cbd5e1}.edition-gold{color:#facc15}.edition-platin{color:#e5e7eb}.subpage-topbar,.dispatch-topbar{position:relative;z-index:10;height:120px}.top-dashboard-nav{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:20}.subpage-content{position:relative;z-index:5;width:760px;max-width:90vw;margin:140px auto 0;padding:46px;border-radius:28px;border:4px solid rgba(188,194,204,.86);background:linear-gradient(180deg,#111827f0,#020617fa);text-align:center;box-shadow:0 0 28px #00ff7824}.subpage-content h1{margin:0 0 14px;font-size:54px;font-weight:900;text-transform:uppercase}.subpage-content p{margin:0;color:#d1d5db;font-size:22px}.mini-dashboard-nav{width:180px;height:54px;border-radius:999px;background:linear-gradient(145deg,#14233cf5,#020a19fa);border:2px solid rgba(255,255,255,.16);box-shadow:0 0 14px #25ff842e,inset 0 0 14px #00000073;display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 12px}.mini-side{display:flex;flex-direction:column;gap:5px}.mini-center{display:flex;flex-direction:column;align-items:center;gap:5px}.mini-tacho,.mini-main-tacho{position:relative;border-radius:50%;background:radial-gradient(circle at center,#02091d,#000814 72%);border:2px solid #c9ced8;box-shadow:0 0 8px #25ff842e,inset 0 0 10px #25ff841f}.mini-tacho{width:18px;height:18px}.mini-main-tacho{width:28px;height:28px}.mini-tacho:after,.mini-main-tacho:after{content:"";position:absolute;width:38%;height:3px;background:linear-gradient(90deg,#ff9b43,#ff5e57);border-radius:999px;top:50%;left:50%;transform:translate(-10%,-50%) rotate(42deg)}.mini-display{width:44px;height:10px;border-radius:999px;background:linear-gradient(145deg,#1e324bf2,#020a19);border:1px solid rgba(255,255,255,.1)}.dispatch-grid{position:relative;z-index:5;display:grid;grid-template-columns:.85fr .62fr .8fr 1.85fr .88fr .85fr;gap:14px;padding:0 18px 18px}.dispatch-panel{background:linear-gradient(145deg,#14233cf2,#020a19fa);border-radius:22px;border:1px solid rgba(255,255,255,.12);padding:12px;min-height:calc(100vh - 150px)}.dispatch-panel h2{text-align:center;margin:0 0 12px;font-size:22px;font-weight:800}.column-scroll{max-height:calc(100vh - 220px);overflow-y:auto;display:flex;flex-direction:column;gap:8px}.placeholder-box{min-height:120px;border:2px dashed rgba(255,255,255,.18);border-radius:14px}.draggable-card{cursor:grab;-webkit-user-select:none;user-select:none}.draggable-card:active{cursor:grabbing;transform:scale(.985)}.vehicle-card{background:#203f73b8;border:1px solid rgba(255,255,255,.08);border-radius:9px;padding:7px 8px;text-align:left;min-height:42px;position:relative}.vehicle-plate{font-size:10px;font-weight:800;line-height:1.15}.vehicle-details{font-size:7px;opacity:.7;margin-top:3px}.vehicle-used,.vehicle-card.blocked-vehicle{opacity:.32;filter:grayscale(.85);background:#50505073;pointer-events:none}.vehicle-used:after,.vehicle-card.blocked-vehicle:after{content:"GESPERRT";position:absolute;top:6px;right:6px;font-size:8px;font-weight:900;letter-spacing:.5px;color:#ff6b6b;background:#000000bf;border:1px solid rgba(255,107,107,.45);border-radius:999px;padding:2px 5px}.start-location-card{background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-left:3px solid rgba(37,255,132,.75);border-radius:10px;padding:9px 10px}.start-location-name{font-size:13px;font-weight:800}.target-card{background:#eaeaeaeb;color:#07111f;border-radius:9px;padding:8px 9px;border:1px solid rgba(255,255,255,.35);min-height:42px}.target-only-name{font-size:12px;font-weight:900;text-align:center}.driver-card{background:linear-gradient(145deg,#222d41f2,#080f1c);border:1px dashed rgba(255,255,255,.2);border-radius:14px;padding:10px}.driver-card-drag-over{border-color:#25ff84d9;box-shadow:inset 0 0 0 1px #25ff842e,0 0 16px #25ff8424}.driver-card.multi-day-tour{border:1px solid rgba(34,255,122,.4);box-shadow:0 0 18px #22ff7a14,inset 0 0 0 1px #22ff7a14}.driver-headline{display:flex;align-items:center;justify-content:space-between;gap:8px}.driver-name{font-size:18px;font-weight:900}.driver-card.multi-day-tour .driver-name{color:#bbf7d0}.driver-card.multi-day-tour .driver-name:after{content:" • 2-TAGE";font-size:11px;color:#22ff7a;margin-left:4px}.driver-stamm{font-size:11px;opacity:.8;margin-top:3px}.driver-date-row{margin-top:8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.driver-date-row label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:800}.driver-date-row input[type=date]{height:24px;border-radius:6px;border:1px solid rgba(255,255,255,.22);background:#fffffff0;color:#020617;font-size:10px;font-weight:800}.tour-mode-row{margin-top:7px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.tour-mode-label{font-size:11px;font-weight:900;color:#e5e7eb;opacity:.9}.tour-mode-button{height:24px;border-radius:999px;border:1px solid rgba(148,163,184,.45);background:#0f172aeb;color:#cbd5e1;font-size:10px;font-weight:900;padding:0 10px}.tour-mode-button.active{border-color:#25ff84d1;background:#25ff8429;color:#bbf7d0;box-shadow:0 0 10px #25ff841f}.action-buttons{display:flex;justify-content:flex-end;gap:7px;flex:0 0 auto}.action-buttons button,.assigned-item button,.remove-small-button{background:#10253f;color:#fff;border:1px solid #25ff84;border-radius:8px;padding:5px 8px;font-size:10px}.assigned-item{margin-top:8px;background:#00ff731a;border:1px solid rgba(0,255,115,.42);border-radius:10px;padding:8px;display:flex;justify-content:space-between;font-size:12px}.assigned-vehicle-details{font-size:10px;opacity:.72;margin-top:2px}.assigned-target-list-dropzone{margin-top:8px;min-height:26px;border-radius:12px}.empty-driver-drop-hint{border:1px dashed rgba(255,255,255,.18);border-radius:10px;padding:8px;text-align:center;font-size:11px;opacity:.55}.assigned-stop{margin-top:8px}.assigned-start-location{background:#2563eb24;border:1px solid rgba(96,165,250,.55);border-radius:12px;padding:9px}.assigned-start-location.next-day-start{border-color:#22ff7aa6;background:linear-gradient(145deg,#22ff7a24,#2563eb1f)}.assigned-start-location.next-day-start:before{content:"TAG 2";display:inline-flex;align-items:center;justify-content:center;margin-bottom:7px;padding:2px 8px;border-radius:999px;background:#22ff7a2e;border:1px solid rgba(34,255,122,.45);color:#bbf7d0;font-size:10px;font-weight:900;letter-spacing:.5px}.assigned-target{background:#00ff731a;border:1px solid rgba(0,255,115,.42);border-radius:12px;padding:9px}.assigned-target.locked-target{opacity:.55;border-style:dashed}.assigned-target.locked-target:after{content:"FOLGETAG GEBLOCKT";display:block;margin-top:8px;font-size:10px;font-weight:900;color:#fca5a5;text-align:center}.assigned-target-drag-over{border-color:#ffffff8c;background:#25ff8429;transform:translateY(2px)}.assigned-target-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.assigned-target-main{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800}.target-position{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;border-radius:50%;background:#ffffff29;color:#fff;font-size:11px;font-weight:900}.remove-small-button{padding:4px 7px;flex:0 0 auto}.assigned-start-edit-grid,.assigned-target-edit-grid,.assigned-target-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.assigned-target-fields{display:flex;flex-direction:column;gap:7px}.assigned-start-edit-grid label,.assigned-target-edit-grid label,.assigned-target-extra-grid label{min-height:34px;border-radius:9px;background:#020a196b;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;gap:6px;padding:5px}.assigned-start-edit-grid label span,.assigned-target-edit-grid label span,.assigned-target-extra-grid label span{flex:0 0 auto;font-size:10px;font-weight:800;opacity:.86}.assigned-start-edit-grid input,.assigned-target-edit-grid input,.assigned-target-extra-grid input{min-width:0;width:100%;border:1px solid rgba(255,255,255,.18);border-radius:7px;background:#ffffffeb;color:#020617;padding:5px;font-size:11px;font-weight:800}.target-details-toggle-row{display:flex;justify-content:flex-end}.target-details-toggle{height:24px;border-radius:999px;border:1px solid rgba(96,165,250,.45);background:#0f172aeb;color:#bfdbfe;font-size:10px;font-weight:900;padding:0 10px}.tour-date-divider{margin:10px 0 6px;padding:5px 10px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.16);color:#e5e7eb;font-size:11px;font-weight:900;text-align:center;letter-spacing:.3px}.tour-date-divider.next-day{background:#22ff7a1f;border:1px solid rgba(34,255,122,.35);color:#86efac;box-shadow:0 0 10px #22ff7a14}.next-driver-card{opacity:.55;filter:grayscale(.45);border:1px dashed rgba(255,255,255,.14)}.next-driver-card .driver-name{text-align:center;font-size:16px}.next-driver-card .driver-name:after{content:"  •  FOLGETAG";color:#22ff7a;font-size:11px;font-weight:900}.next-driver-card .driver-stamm{text-align:center}.follow-day-block-info{margin-top:8px;padding:7px 9px;border-radius:10px;background:#ff6b6b14;border:1px solid rgba(255,107,107,.24);color:#fecaca;font-size:10px;font-weight:800;text-align:center}.icon-input-label{min-height:34px!important}.cargo-mini-truck{width:76px;height:30px;display:flex;align-items:center;gap:4px;flex:0 0 auto}.cargo-mini-truck svg{width:54px;height:28px;overflow:visible}.cargo-mini-truck strong{font-size:12px;font-weight:900;min-width:14px}.mini-truck-line,.mini-box{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.mini-arrow{fill:none;stroke:#fff;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px rgba(255,255,255,.85))}.cargo-mini-truck.load{color:#60a5fa}.cargo-mini-truck.unload{color:#fb7185}
