:root{--hintergrund:#f4f5f7;--flaeche:#fff;--flaeche-2:#eef0f3;--rand:#d9dde3;--text:#1c2129;--text-leise:#5d6673;--akzent:#e0a100;--akzent-text:#1c2129;--link:#1f5fbf;--offen:#1f5fbf;--offen-grund:#e3edfb;--warnung:#9a5b00;--warnung-grund:#fdf0d5;--aktiv:#1f7a3d;--aktiv-grund:#e1f3e6;--fertig:#5d6673;--fertig-grund:#eceef1;--abbruch:#b3261e;--abbruch-grund:#fbe5e3;--schatten:0 1px 2px #0000000f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--hintergrund:#12151a;--flaeche:#1b1f26;--flaeche-2:#242a33;--rand:#323945;--text:#e6e9ee;--text-leise:#9aa3b0;--link:#7fb0ff;--offen:#8fb8ff;--offen-grund:#1d2a40;--warnung:#f2c063;--warnung-grund:#3a2d12;--aktiv:#7fd69a;--aktiv-grund:#183022;--fertig:#9aa3b0;--fertig-grund:#242a33;--abbruch:#ff8f86;--abbruch-grund:#3d1c1a;--schatten:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--hintergrund);color:var(--text);font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0 0 16px;font-size:20px}h2{margin:0 0 10px;font-size:15px}.kopf{background:var(--flaeche);border-bottom:1px solid var(--rand);flex-wrap:wrap;align-items:center;gap:24px;min-height:52px;padding:0 20px;display:flex}.marke{align-items:center;gap:8px;font-weight:700;display:flex}.marke:before{content:"";background:var(--akzent);border-radius:3px;width:12px;height:12px}.navi{flex:1;gap:4px;display:flex}.navi a{color:var(--text);border-radius:6px;padding:6px 12px}.navi a[aria-current=page]{background:var(--flaeche-2);font-weight:600}.navi a:hover{background:var(--flaeche-2);text-decoration:none}.wer{color:var(--text-leise);align-items:center;gap:12px;display:flex}main{max-width:1400px;margin:0 auto;padding:20px}.karte{background:var(--flaeche);border:1px solid var(--rand);box-shadow:var(--schatten);border-radius:10px;padding:16px}.leiste{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.leiste .rechts{margin-left:auto}button,.knopf{font:inherit;border:1px solid var(--rand);background:var(--flaeche);color:var(--text);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}button:hover:not(:disabled),.knopf:hover{background:var(--flaeche-2);text-decoration:none}button:disabled{opacity:.5;cursor:default}button.haupt,.knopf.haupt{background:var(--akzent);border-color:var(--akzent);color:var(--akzent-text);font-weight:600}button.haupt:hover:not(:disabled){filter:brightness(1.05);background:var(--akzent)}button.gefahr{color:var(--abbruch)}.reiter{background:var(--flaeche-2);border-radius:8px;gap:2px;max-width:100%;padding:3px;display:flex;overflow-x:auto}.reiter button{background:0 0;border:0;padding:5px 12px}.reiter button[aria-pressed=true]{background:var(--flaeche);box-shadow:var(--schatten);font-weight:600}.reiter a{color:inherit;border-radius:6px;padding:5px 12px;text-decoration:none}.reiter a[aria-current=page]{background:var(--flaeche);box-shadow:var(--schatten);font-weight:600}input,select,textarea{font:inherit;color:var(--text);background:var(--flaeche);border:1px solid var(--rand);border-radius:6px;width:100%;padding:6px 8px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--link);outline-offset:1px}label{color:var(--text-leise);gap:4px;font-size:12px;display:grid}label.haken{color:var(--text);align-items:center;gap:6px;font-size:14px;display:flex}label.haken input{width:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--text-leise);border-bottom:1px solid var(--rand);white-space:nowrap;padding:6px 8px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--rand);vertical-align:top;padding:7px 8px}tbody tr{cursor:pointer}tbody tr:hover{background:var(--flaeche-2)}.zahl{font-variant-numeric:tabular-nums}.leise{color:var(--text-leise)}.klein{font-size:12px}.status{white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.status.offen{color:var(--offen);background:var(--offen-grund)}.status.warnung{color:var(--warnung);background:var(--warnung-grund)}.status.aktiv{color:var(--aktiv);background:var(--aktiv-grund)}.status.fertig{color:var(--fertig);background:var(--fertig-grund)}.status.abbruch{color:var(--abbruch);background:var(--abbruch-grund)}.meldung{border-radius:8px;margin-bottom:12px;padding:10px 12px}.meldung.fehler{color:var(--abbruch);background:var(--abbruch-grund)}.meldung.ok{color:var(--aktiv);background:var(--aktiv-grund)}.meldung.hinweis{color:var(--warnung);background:var(--warnung-grund)}.raster{gap:12px;display:grid}.raster.zwei{grid-template-columns:repeat(2,minmax(0,1fr))}.raster.drei{grid-template-columns:repeat(3,minmax(0,1fr))}.raster.vier{grid-template-columns:repeat(4,minmax(0,1fr))}.spalten{grid-template-columns:minmax(0,3fr) minmax(280px,2fr);align-items:start;gap:16px;display:grid}.adresse{grid-template-columns:1.4fr 2fr .8fr 1.2fr auto;align-items:start;gap:8px;display:grid}.adresse>button{margin-top:20px}.adresssuche{position:relative}.vorschlaege{z-index:10;background:var(--flaeche);border:1px solid var(--rand);color:var(--text);border-radius:8px;max-height:280px;margin:0;padding:4px;font-size:14px;list-style:none;position:absolute;top:52px;left:0;right:0;overflow-y:auto;box-shadow:0 6px 20px #00000026}.vorschlaege li{cursor:pointer;border-radius:5px;padding:7px 8px}.vorschlaege li[aria-selected=true]{background:var(--offen-grund)}.position{color:var(--text-leise);font-size:11px}.position.ja{color:var(--aktiv)}fieldset{border:0;margin:0 0 16px;padding:0}legend{margin-bottom:8px;padding:0;font-weight:600}.protokoll{margin:0;padding:0;list-style:none}.protokoll li{border-bottom:1px solid var(--rand);grid-template-columns:52px 1fr;gap:8px;padding:6px 0;display:grid}.leer{text-align:center;color:var(--text-leise);padding:32px}.anmelden{place-items:center;min-height:100vh;padding:16px;display:grid}.anmelden form{gap:12px;width:100%;max-width:360px;display:grid}@media (max-width:900px){.spalten,.raster.zwei,.raster.vier{grid-template-columns:1fr}.adresse{grid-template-columns:1fr 1fr}main{padding:16px}.tabelle-rahmen{overflow-x:auto}.reiter button{white-space:nowrap}.wer{justify-content:space-between;width:100%;padding-bottom:8px}.navi{max-width:100%;overflow-x:auto}.navi a{white-space:nowrap}}.sektoren{grid-template-columns:minmax(0,3fr) minmax(320px,2fr);align-items:start;gap:16px;display:grid}.kartensuche{width:320px;max-width:100%}.kartenrahmen{padding:0;position:relative;overflow:hidden}.sektorkarte{z-index:0;width:100%;height:calc(100vh - 170px);min-height:420px}.sektorkarte.leer{place-items:center;display:grid}.kartenhinweis{z-index:500;background:var(--flaeche);border:1px solid var(--rand);width:fit-content;box-shadow:var(--schatten);border-radius:8px;padding:6px 10px;font-size:13px;position:absolute;top:12px;left:60px;right:12px}.sektorliste{gap:2px;margin:0;padding:0;list-style:none;display:grid}.sektorliste button{text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;padding:7px 8px;display:flex}.sektorliste button[aria-pressed=true]{background:var(--offen-grund);font-weight:600}.sektorliste .rechts{margin-left:auto}.farbpunkt{border-radius:3px;flex:none;width:12px;height:12px}.nachbarn{margin:0 0 8px;padding-left:20px}.nachbarn li{align-items:center;gap:6px;padding:2px 0;display:flex}.nachbarn .rechts{gap:4px;margin-left:auto;display:flex}.nachbarn button{padding:2px 8px}.ecke{box-sizing:border-box;cursor:move;background:#fff;border:2px solid #1d1d1f;border-radius:50%}.halteplatz-zeichen{color:#fff;text-align:center;box-sizing:border-box;background:#1f5fbf;border:2px solid #fff;border-radius:6px;font:700 13px/20px system-ui,sans-serif;box-shadow:0 1px 3px #0006}@media (max-width:900px){.sektoren{grid-template-columns:1fr}.sektorkarte{height:60vh}}.stammkunde{background:var(--offen-grund);border-radius:8px;margin:-6px 0 16px;padding:10px 12px}.kundenadressen{gap:4px;margin:0;padding:0;list-style:none;display:grid}.kundenadressen li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kundenadressen .rechts{gap:4px;margin-left:auto;display:flex}.kundenadressen button{padding:2px 10px}.rufnummer{grid-template-columns:1fr 1fr auto;gap:8px;display:grid}.kundenadresse{border-bottom:1px solid var(--rand);gap:6px;padding-bottom:10px;display:grid}@media (max-width:900px){.rufnummer{grid-template-columns:1fr auto}.rufnummer input:nth-child(2){grid-column:1}}.wochenplan td,.wochenplan th{vertical-align:middle;padding:4px 6px}.wochenplan td:first-child{width:110px;font-weight:600}.wochenplan input[type=time]{width:130px}@media (max-width:760px){.wochenplan{table-layout:fixed}.wochenplan td:first-child,.wochenplan th:first-child{width:28%}.wochenplan input[type=time]{width:100%;min-width:0}}.kalender td{vertical-align:middle}fieldset,.raster>*{min-width:0}.marke-zeit{background:var(--flaeche-2);border-radius:999px;padding:3px 10px;font-size:.9em;font-weight:600}.marke-zeit.sofort{background:var(--akzent);color:var(--akzent-text)}.filter{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px 12px;display:grid}.exporttabelle td{vertical-align:top}.exporttabelle tr.unvollstaendig td{background:var(--abbruch-grund)}.nachtrag{text-align:right;width:76px;padding:3px 6px}.nachtrag.falsch{border-color:var(--abbruch)}tr.zurueckgenommen td{color:var(--text-leise);text-decoration:line-through}tr.zurueckgenommen td:last-child{text-decoration:none}.exportleiste{background:var(--flaeche);border-top:1px solid var(--rand);padding:10px 0;position:sticky;bottom:0}tr.gesperrt td{color:var(--text-leise)}.editor{border:1px solid var(--rand);background:var(--flaeche-2);border-radius:8px;margin:0 0 14px;padding:14px}.editor h3{margin:0 0 10px;font-size:15px}.haken-reihe{flex-wrap:wrap;gap:6px 16px;display:flex}.symbol{display:inline-flex}.symbolleiste{align-items:center;gap:4px;display:flex}.symboltaste{color:var(--text);align-items:center;gap:3px;padding:4px 6px;line-height:1;display:inline-flex}.symboltaste .zusatz{font-size:11px;font-weight:600}.symboltaste.gefahr{color:var(--abbruch)}.symboltaste.gut{color:var(--aktiv)}.livespalte{align-content:start;gap:14px;max-height:calc(100vh - 170px);display:grid;overflow-y:auto}.livespalte .kartensuche{width:100%}.sektorgruppe h3{align-items:center;gap:8px;margin:0 0 6px;font-size:15px;display:flex}.sektorgruppe h3 .rechts{margin-left:auto;font-weight:400}.wagenliste{gap:2px;margin:0;padding:0;list-style:none;display:grid}.wagenliste li{border-radius:8px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 6px;display:grid}.wagenliste li.gewaehlt{background:var(--offen-grund)}.wageninfo{min-width:0}.wageninfo .klein{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wagennummer{text-align:center;font-variant-numeric:tabular-nums;border-width:2px;justify-content:center;width:100%;padding:3px 0;font-weight:700}.post-zahl{background:var(--akzent);min-width:18px;color:var(--akzent-text);text-align:center;border-radius:999px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;display:inline-block}.leere-sektoren{flex-wrap:wrap;gap:4px 12px;display:flex}.leere-sektoren .farbpunkt{width:8px;height:8px;display:inline-block}.nachrichtenliste{margin:0;padding:0;list-style:none}.nachrichtenliste li{border-bottom:1px solid var(--rand);grid-template-columns:44px 1fr;gap:8px;padding:6px 0;display:grid}.nachrichtenliste li.vom-fahrer.neu{background:var(--flaeche-2);border-left:3px solid var(--akzent);padding-left:4px}.post-zahl.vom-fahrer{background:var(--abbruch);color:#fff}.legende{z-index:500;background:var(--flaeche);border:1px solid var(--rand);max-width:calc(100% - 20px);box-shadow:var(--schatten);border-radius:8px;flex-wrap:wrap;gap:4px 10px;padding:5px 8px;display:flex;position:absolute;bottom:22px;left:10px}.legende span{align-items:center;gap:4px;display:inline-flex}.wagenzeichen,.wagennummer,.wagenzeichen-punkt{--w:var(--wagen-frei,#1f7a3d)}.wagenzeichen.gesperrt,.wagennummer.gesperrt,.wagenzeichen-punkt.gesperrt{--w:var(--wagen-gesperrt,#c026d3)}.wagenzeichen.angebot,.wagennummer.angebot,.wagenzeichen-punkt.angebot{--w:var(--wagen-angebot,#1f5fbf)}.wagenzeichen.auftrag,.wagennummer.auftrag,.wagenzeichen-punkt.auftrag{--w:var(--wagen-auftrag,#d4a017)}.wagenzeichen.besetzt,.wagennummer.besetzt,.wagenzeichen-punkt.besetzt{--w:var(--wagen-besetzt,#b3261e)}.wagenzeichen.pause,.wagennummer.pause,.wagenzeichen-punkt.pause{--w:var(--wagen-pause,#6b7280)}.wagenzeichen{box-sizing:border-box;background:var(--w);color:#fff;cursor:pointer;border:2px solid #fff;border-radius:12px;justify-content:center;align-items:center;gap:3px;width:64px;height:24px;font:700 12px/1 system-ui,sans-serif;display:flex;position:relative;box-shadow:0 1px 3px #00000073}.wagenzeichen .auto{flex:none}.wagenzeichen.alt{opacity:.5}.wagenzeichen.gewaehlt{outline:3px solid var(--akzent);outline-offset:1px}.wagenzeichen .schloss{font-size:11px;position:absolute;top:-9px;left:-9px}.wagenzeichen .post{background:var(--akzent);color:#1c2129;box-sizing:border-box;border-radius:999px;min-width:15px;height:15px;padding:0 3px;font-size:10px;line-height:15px;position:absolute;top:-9px;right:-8px}.wagenzeichen .anfahrt{color:#fff;white-space:nowrap;background:#1f5fbf;border-radius:6px;margin-left:4px;padding:2px 6px;font-size:11px;font-weight:700;position:absolute;top:2px;left:100%;box-shadow:0 1px 3px #00000073}.anfahrt-ziel{color:#fff;white-space:nowrap;background:#1f5fbf;border-radius:6px;margin-left:6px;padding:1px 6px;font-size:12px;font-weight:700;display:inline-block}.wagennummer{color:var(--w);border-color:var(--w)}.wagennummer.alt{border-style:dashed}.wagenzeichen-punkt{background:var(--w);border-radius:3px;width:10px;height:10px;display:inline-block}.wagenzeichen-punkt.alt{opacity:.5}.halteplatz-zahl{box-sizing:border-box;color:#1c2129;background:#fff;border:2px solid;border-radius:12px;justify-content:center;align-items:center;gap:1px;height:24px;font:700 13px/1 system-ui,sans-serif;display:flex;position:relative;box-shadow:0 1px 3px #00000059}.halteplatz-zahl span{color:#1f5fbf;margin-right:3px}.halteplatz-zahl small{color:#5d6673;font-weight:400}.halteplatz-zahl i{width:2px;height:14px;margin-left:-1px;position:absolute;top:22px;left:50%}.wagenfenster{gap:3px;min-width:200px;font-size:13px;display:grid}.wagenfenster .symbolleiste{margin-top:6px}.wagenfenster .symboltaste{font:inherit;color:#1c2129;cursor:pointer;background:#fff;border:1px solid #d9dde3;border-radius:6px}.wagenfenster .symboltaste:hover{background:#eef0f3}.dialog-grund{z-index:2000;background:#00000059;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{width:100%;max-width:440px}.dialog h2{margin-top:0}.dialog button[aria-pressed=true]{background:var(--offen-grund);font-weight:600}@media (max-width:900px){.livespalte{max-height:none}}tr.gruppe-kopf td{background:var(--flaeche-2);text-transform:none;color:var(--text-leise);cursor:default;padding:6px 10px;font-size:12px;font-weight:600}tr.gruppe-kopf.offen td{color:var(--abbruch)}tr.gruppe-kopf.laufend td{color:var(--aktiv)}tr.zeile-offen td{background:var(--abbruch-grund)}tr.zeile-offen td:first-child{box-shadow:inset 4px 0 0 var(--abbruch)}tr.zeile-laufend td{background:var(--aktiv-grund)}tr.zeile-laufend td:first-child{box-shadow:inset 4px 0 0 var(--aktiv)}tr.zeile-erledigt td{background:var(--aktiv-grund)}tr.zeile-erledigt td:first-child{box-shadow:inset 4px 0 0 var(--aktiv)}tr.gruppe-kopf.erledigt td{color:var(--aktiv)}tr.zeile-storniert td{color:var(--text-leise)}tr.zeile-storniert td:nth-child(n+4):not(:last-child){text-decoration:line-through}.symbole{flex-wrap:nowrap;align-items:center;gap:2px;display:inline-flex;position:relative}button.aktionstaste,.knopf.aktionstaste{color:var(--text);background:0 0;border-color:#0000;border-radius:6px;padding:4px;line-height:0}button.aktionstaste:hover:not(:disabled),.knopf.aktionstaste:hover{background:var(--flaeche);border-color:var(--rand)}.aktionstaste.gefahr{color:var(--abbruch)}.symbolfehler{z-index:10;white-space:nowrap;cursor:pointer;margin:4px 0 0;font-size:12px;position:absolute;top:100%;right:0}dialog.fenster{white-space:normal;border:1px solid var(--rand);background:var(--flaeche);width:min(520px,100vw - 32px);color:var(--text);cursor:default;border-radius:10px;padding:16px;box-shadow:0 10px 30px #00000040}dialog.fenster::backdrop{background:#00000059}.verlauf li{grid-template-columns:150px 1fr}.rechnung{color:#111;border:1px solid var(--rand);background:#fff;border-radius:6px;max-width:820px;margin:0 auto;padding:48px 56px;font-size:14px}.rechnung.storniert{background:repeating-linear-gradient(-45deg,#fff,#fff 24px,#fdf0f0 24px 48px)}.rechnung-kopf{justify-content:space-between;gap:24px;margin-bottom:40px;display:flex}.rechnung-kopf address{margin-top:8px;font-style:normal;line-height:1.5}.rechnung-absender{text-align:right;line-height:1.5}.rechnung h1{margin:0 0 12px;font-size:20px}.rechnung-daten{grid-template-columns:max-content auto;gap:2px 16px;margin:0 0 24px;display:grid}.rechnung-daten dt{color:#555}.rechnung-daten dd{margin:0}.rechnung table{border-collapse:collapse;width:100%;margin-bottom:24px}.rechnung th,.rechnung td{text-align:left;vertical-align:top;border-bottom:1px solid #ddd;padding:6px 8px}.rechnung .zahl{text-align:right}.rechnung tfoot td{border-bottom:0}.rechnung-summe td{border-top:2px solid #111;font-weight:700}.rechnung-fuss{color:#555;border-top:1px solid #ddd;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px;padding-top:12px;display:grid}@media print{.kopf,.nicht-drucken,nextjs-portal{display:none!important}body,main{background:#fff!important;padding:0!important}.rechnung{border:0;max-width:none;padding:0}}.kuerzel{text-align:center;border-radius:5px;min-width:20px;padding:0 5px;font-size:12px;font-weight:700;line-height:20px;display:inline-block}.kuerzel.rechnungsfahrt{color:var(--offen);background:var(--offen-grund)}.kuerzel.krankenfahrt{color:var(--warnung);background:var(--warnung-grund)}.zaehler{background:var(--abbruch);color:#fff;text-align:center;border-radius:9px;min-width:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;display:inline-block}.formular{gap:14px;display:grid}.formular .reiter{justify-self:start}.strecken{gap:6px;margin:0;padding:0;list-style:none;display:grid}.strecken button{text-align:left;width:100%;padding:8px 10px;line-height:1.35;display:block}.spalten.bestellen{grid-template-columns:minmax(220px,1fr) minmax(0,3fr)}@media (max-width:900px){.spalten.bestellen,.raster.kunde-fahrgast{grid-template-columns:1fr}}.kategorien{vertical-align:middle;flex-wrap:wrap;gap:3px;margin-left:4px;display:inline-flex}.kategorien:first-child{margin-left:0}.kategorie-zeichen{background:var(--flaeche-2);width:22px;height:22px;color:var(--text);border-radius:5px;place-items:center;display:inline-grid}.kategorie-schild{background:var(--flaeche-2);white-space:nowrap;border-radius:5px;padding:0 5px;font-size:11px;line-height:22px;display:inline-block}.bemerkung-zeile{max-width:220px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.symbolwahl{flex-wrap:nowrap;gap:3px;display:flex}.symbolwahl button{flex:none;place-items:center;width:30px;height:30px;padding:0;display:inline-grid}.symbolwahl button[aria-pressed=true]{outline:2px solid var(--link);outline-offset:1px}.wagenwahl{padding:8px 4px}.wagenwahl-raster{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:4px 10px;display:grid}.bemerkung-zeile.intern{color:var(--warnung);font-style:normal}textarea.interne-notiz{background:var(--warnung-grund)}.interne-notiz-text{color:var(--warnung)}.logo-vorschau{border:1px dashed var(--rand);background:#fff;border-radius:8px;place-items:center;width:200px;height:72px;padding:6px;display:grid}.logo-vorschau img{object-fit:contain;max-width:100%;max-height:100%}.menue{position:relative}.menue-taste{align-items:center;gap:6px;font-weight:600;display:inline-flex}.menue-liste{z-index:1000;background:var(--flaeche);border:1px solid var(--rand);border-radius:10px;grid-template-columns:repeat(3,minmax(160px,1fr));gap:4px 16px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000024}.menue-bereich{flex-direction:column;gap:2px;display:flex}.menue-titel{color:var(--text-leise);padding:4px 10px;font-size:12px;font-weight:600}.menue-liste a{color:var(--text);white-space:nowrap;border-radius:6px;padding:6px 10px}.menue-liste a:hover{background:var(--flaeche-2);text-decoration:none}.menue-liste a[aria-current=page]{background:var(--flaeche-2);font-weight:600}@media (max-width:700px){.menue-liste{grid-template-columns:1fr;max-height:calc(100vh - 72px);position:fixed;top:56px;left:16px;right:16px;overflow-y:auto}}.einstellungs-tabelle{display:grid}.einstellungs-zeile{border-top:1px solid var(--rand);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;padding:8px 0;display:grid}.einstellungs-zeile>span:last-child select,.einstellungs-zeile>span:last-child>input:not([type=number]):not([type=color]),.einstellungs-zeile textarea{width:100%;max-width:320px}@media (max-width:640px){.einstellungs-zeile{grid-template-columns:1fr;gap:4px}}.farbwahl{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.farbwahl button{border:1px solid #00000040;border-radius:3px;width:24px;height:20px;padding:0}.farbwahl button[aria-pressed=true]{outline:2px solid var(--text,#1c2129);outline-offset:1px}.farbwahl input[type=color]{background:0 0;border:none;flex:none;width:32px;height:24px;padding:0}.wagenzeichen-vorschau{color:#fff;border:2px solid #1c2129;border-radius:50%;place-items:center;width:28px;height:28px;margin-left:6px;font:700 12px/1 system-ui,sans-serif;display:inline-grid}.dispo-hinweis{z-index:1000;background:var(--warnung-grund);max-width:min(520px,100vw - 32px);color:var(--warnung);border-radius:8px;align-items:center;gap:12px;padding:10px 14px;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 2px 8px #00000040}.anrufe{z-index:1000;flex-direction:column;gap:8px;width:min(360px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.anruf{color:#fff;background:#1f5fbf;border-radius:8px;align-items:stretch;display:flex;overflow:hidden;box-shadow:0 4px 14px #00000040}.anruf.beendet{background:#4a6fa8}.anruf button{color:inherit;background:0 0;border:0;border-radius:0}.anruf button:hover:not(:disabled){background:#ffffff24}.anruf-haupt{text-align:left;flex:1;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.anruf-text{flex-direction:column;flex:1;min-width:0;display:flex}.anruf-text strong{letter-spacing:.02em;font-size:1.05rem}.anruf-text span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.anruf-stand{opacity:.85;white-space:nowrap;font-size:.8rem}.anruf-weg{padding:0 12px;font-size:1.2rem;line-height:1}.anruf:not(.beendet) svg{animation:1.2s ease-in-out infinite anruf-klingeln}@keyframes anruf-klingeln{0%,60%,to{transform:rotate(0)}10%,30%,50%{transform:rotate(-12deg)}20%,40%{transform:rotate(12deg)}}@media (prefers-reduced-motion:reduce){.anruf svg{animation:none!important}}main:has(.auftragsliste){max-width:1840px}.tabelle-rahmen{overflow-x:auto}.alarm-band{z-index:2000;color:#fff;background:#c81e1e;padding:8px 16px;animation:1s steps(2,start) infinite alarm-blinken;position:sticky;top:0;box-shadow:0 4px 16px #c81e1e73}.alarm-zeile{flex-wrap:wrap;align-items:center;gap:6px 16px;padding:4px 0;display:flex}.alarm-titel{letter-spacing:.04em;font-size:1.15rem}.alarm-band a{color:#fff;font-weight:700;text-decoration:underline}.alarm-knopf{color:#c81e1e;cursor:pointer;background:#fff;border:0;border-radius:8px;margin-left:auto;padding:8px 16px;font-weight:800}@keyframes alarm-blinken{50%{background:#8f1111}}@media (prefers-reduced-motion:reduce){.alarm-band{animation:none}}.strecke-station{color:#fff;background:#111827;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font:700 11px/1 system-ui,sans-serif;display:flex;box-shadow:0 1px 3px #0006}.strecke-regler{flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0;display:flex}.strecke-regler input[type=range]{flex:1;min-width:200px}.export-rahmen{position:relative}.export-feld{z-index:900;gap:10px;width:min(440px,100vw - 32px);display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000024}th[aria-sort]{padding:0}.sortier-kopf{all:unset;box-sizing:border-box;cursor:pointer;width:100%;font:inherit;color:inherit;white-space:nowrap;align-items:center;gap:4px;padding:6px 8px;display:flex}th.zahl .sortier-kopf{justify-content:flex-end}button.sortier-kopf:hover:not(:disabled),.sortier-kopf.aktiv{color:var(--text);background:0 0}.sortier-kopf:focus-visible{outline:2px solid var(--akzent);outline-offset:-2px}.sortier-pfeil{opacity:.35;font-size:10px}.sortier-kopf.aktiv .sortier-pfeil{opacity:1}kbd{border:1px solid var(--rand);background:var(--flaeche);text-align:center;min-width:22px;color:var(--text);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font:600 12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-block}button.tastenfeld{text-align:left;min-width:140px}button.tastenfeld.aufnahme{border-color:var(--akzent);box-shadow:0 0 0 2px var(--akzent)}tr.markiert td{box-shadow:inset 0 2px 0 var(--akzent), inset 0 -2px 0 var(--akzent)}tr.markiert td:first-child{box-shadow:inset 4px 0 0 var(--akzent), inset 0 2px 0 var(--akzent), inset 0 -2px 0 var(--akzent)}
:root{--marke-blau:#0f1b2d;--marke-blau-2:#182841;--marke-gelb:#ffc21a;--marke-gelb-dunkel:#e5a800;--hintergrund:#f3f5f8;--flaeche:#fff;--flaeche-2:#f0f2f6;--rand:#dde2e9;--rand-leicht:#e9ecf1;--text:#121a26;--text-leise:#5b6576;--akzent:var(--marke-gelb);--akzent-text:#121a26;--link:#1d5bc4;--fokus:#1d5bc447;--schatten:0 1px 2px #0f1b2d0d, 0 1px 3px #0f1b2d0f;--schatten-hoch:0 12px 32px #0f1b2d29, 0 2px 6px #0f1b2d14;--kopf-hoehe:56px;--radius:8px;--radius-gross:12px;--logo:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='7' fill='%23FFC21A'/%3E%3Crect x='8' y='5' width='16' height='4.5' rx='1' fill='%230F1B2D'/%3E%3Crect x='13.75' y='5' width='4.5' height='14' rx='1' fill='%230F1B2D'/%3E%3Cg fill='%230F1B2D'%3E%3Crect x='4' y='22' width='4' height='3.5'/%3E%3Crect x='12' y='22' width='4' height='3.5'/%3E%3Crect x='20' y='22' width='4' height='3.5'/%3E%3Crect x='8' y='25.5' width='4' height='3.5'/%3E%3Crect x='16' y='25.5' width='4' height='3.5'/%3E%3Crect x='24' y='25.5' width='4' height='3.5'/%3E%3C/g%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root{--marke-blau:#0a1220;--marke-blau-2:#13203a;--hintergrund:#0e131b;--flaeche:#171d27;--flaeche-2:#1f2633;--rand:#2c3544;--rand-leicht:#252d3a;--text:#e7ebf1;--text-leise:#9ba5b4;--link:#82b1ff;--fokus:#82b1ff4d;--schatten:none;--schatten-hoch:0 12px 32px #00000080}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-family:Inter,Segoe UI Variable Text,Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5}h1{letter-spacing:-.015em;font-size:22px;font-weight:700;line-height:1.25}h2{letter-spacing:-.005em;font-size:15px;font-weight:650}h3{letter-spacing:-.005em}td,th,.zahl,input,select{font-variant-numeric:tabular-nums}::selection{background:#ffc21a73}.kopf{min-height:var(--kopf-hoehe);background:var(--marke-blau);box-shadow:inset 0 -3px 0 var(--marke-gelb);color:#fff;border-bottom:0;gap:20px;padding:0 20px}.kopf .marke{letter-spacing:-.01em;color:#fff;white-space:nowrap;gap:10px;font-size:15px;font-weight:700}.kopf .marke:before,.anmelden .marke:before{background:var(--logo) center / contain no-repeat;border-radius:7px;flex:none;width:30px;height:30px}.kopf .marke .leise{color:#ffffff9e}.kopf .navi{align-self:stretch;gap:2px}.kopf .navi a{color:#ffffffc7;border-bottom:3px solid #0000;border-radius:0;align-items:center;padding:0 14px;font-weight:500;transition:color .12s,background-color .12s;display:inline-flex}.kopf .navi a:hover{color:#fff;background:#ffffff12;text-decoration:none}.kopf .navi a[aria-current=page]{color:#fff;border-bottom-color:var(--marke-gelb);background:#ffffff17;font-weight:600}.kopf .menue-taste{color:#fff;background:#ffffff14;border-color:#ffffff2e}.kopf .menue-taste:hover:not(:disabled),.kopf .menue-taste[aria-expanded=true]{background:#ffffff29}.kopf .wer{color:#ffffffb8;font-size:13px}.kopf .wer>span:before{content:"";vertical-align:1px;background:#3ecf72;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block;box-shadow:0 0 0 3px #3ecf7233}.kopf .wer button{color:#fff;background:0 0;border-color:#ffffff38;font-size:13px}.kopf .wer button:hover:not(:disabled){background:#ffffff1f}.kopf .zaehler{box-shadow:0 0 0 2px var(--marke-blau)}.kopf :focus-visible{outline-color:var(--marke-gelb)}.menue-liste{border-radius:var(--radius-gross);box-shadow:var(--schatten-hoch);border-color:var(--rand-leicht);padding:14px}.menue-titel{text-transform:uppercase;letter-spacing:.06em;font-size:11px}.menue-liste a[aria-current=page]{background:var(--flaeche-2);box-shadow:inset 3px 0 0 var(--marke-gelb)}@media (max-width:900px){.kopf{padding-top:6px}.kopf .navi{align-self:auto}.kopf .navi a{border-bottom:0;border-radius:6px;padding:8px 12px}.kopf .navi a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--marke-gelb)}}main{padding:24px}.karte{border-radius:var(--radius-gross);border-color:var(--rand-leicht);box-shadow:var(--schatten);padding:18px}.leiste{gap:10px;margin-bottom:16px}.leiste h1{margin-bottom:0}button,.knopf{border-radius:var(--radius);font-weight:500;transition:background-color .12s,border-color .12s,box-shadow .12s,filter .12s}button:hover:not(:disabled),.knopf:hover{border-color:#c6cdd8}button.haupt,.knopf.haupt{background:var(--marke-gelb);border-color:var(--marke-gelb-dunkel);color:#121a26;font-weight:650;box-shadow:0 1px #0f1b2d14,inset 0 1px #ffffff59}button.haupt:hover:not(:disabled),.knopf.haupt:hover{border-color:var(--marke-gelb-dunkel);filter:none;background:#ffcb3d}button.haupt:active:not(:disabled){background:var(--marke-gelb-dunkel)}button.gefahr:hover:not(:disabled){background:var(--abbruch-grund);border-color:var(--abbruch)}button.aktionstaste:hover:not(:disabled),.knopf.aktionstaste:hover{border-color:var(--rand)}.reiter{background:var(--flaeche-2);box-shadow:inset 0 0 0 1px var(--rand-leicht);border-radius:10px;padding:3px}.reiter button,.reiter a{color:var(--text-leise);border-radius:7px;font-weight:500}.reiter button:hover:not(:disabled),.reiter a:hover{color:var(--text);background:#ffffff8c;border-color:#0000}.reiter button[aria-pressed=true],.reiter a[aria-current=page]{background:var(--flaeche);color:var(--text);box-shadow:0 1px 2px #0f1b2d1a, 0 0 0 1px var(--rand-leicht)}@media (prefers-color-scheme:dark){.reiter button:hover:not(:disabled),.reiter a:hover{background:#ffffff0f}}input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]),select,textarea{border-radius:var(--radius);border-color:var(--rand);padding:7px 10px;transition:border-color .12s,box-shadow .12s}input:hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:#c2c9d4}input:focus,select:focus,textarea:focus{border-color:var(--link);box-shadow:0 0 0 3px var(--fokus);outline:none}button:focus-visible,a:focus-visible{outline:2px solid var(--link);outline-offset:2px}input::placeholder,textarea::placeholder{color:#9aa3b1}input[type=checkbox],input[type=radio]{accent-color:var(--link)}label{font-weight:500}label.haken{font-weight:400}legend,.karte h2{color:var(--text)}@media (prefers-color-scheme:dark){input:hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:#3e4858}input::placeholder,textarea::placeholder{color:#6b7585}}th{letter-spacing:.01em;color:var(--text-leise);border-bottom-color:var(--rand);padding-top:8px;padding-bottom:8px;font-size:12px;font-weight:600}thead th{background:var(--flaeche-2)}td{border-bottom-color:var(--rand-leicht)}tbody tr{transition:background-color 80ms}tbody tr:last-child td{border-bottom:0}.karte>table th:first-child,.karte>.tabelle-rahmen>table th:first-child{border-top-left-radius:6px}.karte>table th:last-child,.karte>.tabelle-rahmen>table th:last-child{border-top-right-radius:6px}.sortier-kopf{padding:8px}.rechnung th{letter-spacing:0;background:0 0}.status{letter-spacing:.01em;padding:2px 9px;font-weight:600}.meldung{border:1px solid #0000;border-radius:10px;padding:11px 14px}.meldung.fehler{border-color:#b3261e38}.meldung.ok{border-color:#1f7a3d38}.meldung.hinweis{border-color:#9a5b0038}.leer{padding:40px 24px}.editor{border-color:var(--rand-leicht);border-radius:10px}dialog.fenster,.dialog{border-radius:var(--radius-gross);box-shadow:var(--schatten-hoch)}.vorschlaege,.export-feld{box-shadow:var(--schatten-hoch);border-radius:10px}.anmelden{background:radial-gradient(1200px 600px at 85% -10%, #ffc21a29, transparent 60%), radial-gradient(900px 500px at -10% 110%, #1d5bc438, transparent 60%), var(--marke-blau);align-content:center;gap:20px;position:relative;overflow:hidden}.anmelden:after{content:"";background:conic-gradient(var(--marke-gelb) 25%, var(--marke-blau) 0 50%, var(--marke-gelb) 0 75%, var(--marke-blau) 0) 0 0 / 16px 16px;opacity:.9;height:16px;position:absolute;bottom:0;left:0;right:0}.anmelden-kopf{color:#fff;text-align:center;justify-items:center;gap:6px;display:grid}.anmelden .marke{letter-spacing:-.02em;gap:12px;font-size:24px}.anmelden .marke:before{content:"";border-radius:10px;width:44px;height:44px}.anmelden-unterzeile{color:#ffffffa8;font-size:14px}.anmelden form.karte{border:0;gap:14px;max-width:400px;padding:28px;box-shadow:0 24px 60px #00000059}.anmelden form h1{margin:0;font-size:20px}.anmelden form .anmelden-hinweis{color:var(--text-leise);margin:-8px 0 4px;font-size:13px}.anmelden form input{font-size:15px;padding:10px 12px!important}.anmelden form button.haupt{justify-content:center;margin-top:4px;padding:11px 16px;font-size:15px}.anmelden-fuss{color:#ffffff8c;text-align:center;margin:0 0 12px;font-size:13px}.anmelden-fuss a{color:#fffc}.gespeicherte-routen{margin-bottom:8px}button.routen-wahl{text-align:left;white-space:normal;background:var(--flaeche);flex:1;justify-content:flex-start;min-width:0;padding:6px 10px;line-height:1.35}button.routen-wahl:hover:not(:disabled){border-color:var(--link)}.routen-liste li{align-items:start}.routen-liste .kuerzel{place-self:start}
