:root{--bg:#f6f7f9;--surface:#ffffff;--surface-2:#eef1f5;--line:rgba(23,32,47,0.09);--line-strong:rgba(23,32,47,0.18);--ink:#16202f;--ink-2:#46536a;--ink-3:#64707f;--accent:#4f46e5;--accent-tief:#4338ca;--accent-soft:rgba(79,70,229,0.09);--ok:#0f7a55;--warn:#a16207;--danger:#c8372f;--radius:12px;--radius-lg:16px;--nav-h:62px;--rail-w:230px;--content:1240px;--schatten:0 1px 2px rgba(22,32,47,0.06),0 4px 14px rgba(22,32,47,0.05);--schatten-hoch:0 18px 44px rgba(22,32,47,0.18);--z-header:30;--z-nav:40;--serie-1:#4f46e5;--serie-2:#e0702a;--serie-3:#0f9d8a;--serie-grau:#9aa3b2;--serie-r1:#9aa8fb;--serie-r2:#7280f0;--serie-r3:#4f46e5;--serie-r4:#3730a3;color-scheme:light}:root[data-thema=dunkel]{--bg:#0a0f1a;--surface:#0f1726;--surface-2:#131d30;--line:rgba(154,173,204,0.14);--line-strong:rgba(154,173,204,0.26);--ink:#eaf0f9;--ink-2:#a8b5ca;--ink-3:#8391a5;--accent:#7c93ff;--accent-tief:#5b76f5;--accent-soft:rgba(124,147,255,0.13);--ok:#34d399;--warn:#fbbf24;--danger:#f87171;--schatten:0 1px 2px rgba(0,0,0,0.35);--schatten-hoch:0 18px 44px rgba(0,0,0,0.5);--serie-1:#6577ee;--serie-2:#dd7330;--serie-3:#13a090;--serie-grau:#5b6780;--serie-r1:#474c9e;--serie-r2:#5560c9;--serie-r3:#6f80f3;--serie-r4:#a5b0ff;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}::selection{background:color-mix(in srgb,var(--accent) 24%,transparent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}button{font:inherit}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-header);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.app-header-inner{max-width:var(--content);margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;row-gap:10px}.app-header-inner>div:first-child{flex:1 1 190px;min-width:0}.app-main{max-width:var(--content);margin:0 auto;padding:22px 20px calc(var(--nav-h) + 34px)}.app-nav{position:fixed;inset:auto 0 0 0;z-index:var(--z-nav);display:flex;justify-content:space-around;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line)}.nav-brand,.nav-gruppe,.rail-suche{display:none}.rail-suche input{width:100%;padding:8px 11px;margin:0 0 14px;border-radius:9px;border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);font:inherit;font-size:13px}.rail-suche input::placeholder{color:var(--ink-3)}.rail-suche input:focus{border-color:var(--accent);outline:none}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:56px;flex:1 1;padding:6px 4px;border:none;background:transparent;font:inherit;cursor:pointer;border-radius:10px;font-size:10.5px;font-weight:500;color:var(--ink-2);text-decoration:none;transition:color .15s ease-out,background-color .15s ease-out}.nav-item:hover{color:var(--ink)}.nav-item.aktiv{color:var(--accent);background:var(--accent-soft);font-weight:650}.nav-item.nur-desktop{display:none}.nav-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.nav-mehr{display:flex;order:100}@media (max-width:959px){.nav-item{order:var(--rang,99)}}.nav-sheet-hintergrund{position:fixed;inset:0;z-index:calc(var(--z-nav) - 1);background:rgba(0,0,0,.38)}.nav-sheet{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-nav);max-height:78vh;overflow-y:auto;padding:14px 14px calc(72px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);border-radius:16px 16px 0 0;box-shadow:0 -14px 40px rgba(0,0,0,.35)}.nav-sheet-gruppe{font-size:10.5px;font-weight:700;letter-spacing:.09em;color:var(--ink-3);margin:12px 0 6px}.nav-sheet-items{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.nav-sheet-item{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);text-decoration:none;font-size:13.5px;font-weight:500}.nav-sheet-item.aktiv{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);font-weight:650}@media (min-width:960px){.app-nav{inset:0 auto 0 0;width:var(--rail-w);flex-direction:column;justify-content:flex-start;gap:1px;padding:18px 12px;border-top:none;border-right:1px solid var(--line);background:var(--surface);overflow-y:auto}.nav-brand{display:block;padding:2px 12px 16px}.nav-brand b{display:block;font-size:12.5px;font-weight:800;letter-spacing:.16em;color:var(--accent)}.nav-brand span{margin-top:2px;font-size:11px}.nav-brand span,.nav-gruppe{display:block;color:var(--ink-3)}.nav-gruppe{padding:14px 12px 5px;font-size:10.5px;font-weight:700;letter-spacing:.09em}.nav-item{flex-direction:row;justify-content:flex-start;gap:11px;padding:8px 12px;font-size:13.5px}.nav-item.nur-desktop{display:flex}.nav-item{flex:none}.nav-mehr,.nav-sheet,.nav-sheet-hintergrund{display:none}.rail-suche{display:block}.app-header,.app-main{margin-left:var(--rail-w)}.app-main{padding-bottom:48px}.brand-mobil{display:none}}.brand-mobil{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:520px){.brand-mobil{display:none}.firmaswitch button{padding:6px 7px!important;font-size:11px!important;letter-spacing:-.01em}}@media (max-width:620px){.app-header-inner{padding:9px 14px;row-gap:7px}.app-header-inner h1{font-size:16px!important}.app-main{padding:14px 14px calc(var(--nav-h) + 26px)}.knopf{padding:7px 11px;font-size:12.5px}}.statband{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--schatten)}.statband>div{background:var(--surface);padding:14px 16px 13px;min-width:0}@media (min-width:720px){.statband{grid-template-columns:repeat(var(--cols,4),1fr)}}.subtabs{display:flex;gap:2px;overflow-x:auto;border-bottom:1px solid var(--line-strong);margin-bottom:18px}.subtab{padding:9px 14px;font-size:13px;font-weight:500;color:var(--ink-2);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap;transition:color .14s ease-out,border-color .14s ease-out}.subtab:hover{color:var(--ink)}.subtab.aktiv{color:var(--accent);border-bottom-color:var(--accent);font-weight:650}.subtab .anzahl{margin-left:6px;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.subtab .anzahl.warn{background:color-mix(in srgb,var(--warn) 14%,transparent);color:var(--warn)}.tabelle{width:100%;border-collapse:collapse}.tabelle thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.tabelle tr{transition:background-color .12s ease-out}.tabelle tbody tr:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.statband,.tabelle td,.zahl{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tabelle tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.knopf{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:10px;border:1px solid transparent;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out,box-shadow .15s ease-out}.knopf-primaer{background:var(--accent);color:#fff;box-shadow:var(--schatten)}.knopf-primaer:hover{background:var(--accent-tief)}.knopf-ghost{background:var(--surface);border-color:var(--line-strong);color:var(--ink-2)}.knopf-ghost:hover{color:var(--ink);border-color:var(--ink-3)}.knopf-geplant{background:transparent;border:1px dashed var(--line-strong);color:var(--ink-3);cursor:not-allowed}.knopf-mini{padding:5px 10px;font-size:11.5px;border-radius:8px;line-height:1.35}@media (pointer:coarse){.knopf-mini{padding:9px 13px;font-size:12.5px;min-height:38px}.posten-zeile .knoepfe{gap:8px}}.link{color:var(--accent);text-decoration:none}.link:hover{text-decoration:underline;text-underline-offset:3px}.ladebalken{position:fixed;top:0;left:0;right:0;height:2px;z-index:100;background:transparent;pointer-events:none}.ladebalken>span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 45%,var(--ok)));box-shadow:0 0 8px color-mix(in srgb,var(--accent) 60%,transparent);transition:width .22s ease-out,opacity .26s ease-out}.ladebalken.laeuft>span{width:72%}.ladebalken.fertig>span{width:100%;opacity:0}.leer{display:flex;flex-direction:column;align-items:center;gap:6px;padding:34px 20px;text-align:center;color:var(--ink-2);font-size:13.5px}.leer b{color:var(--ink);font-size:14.5px;font-weight:650}.leer span{max-width:46ch;line-height:1.5;color:var(--ink-3)}.karte-hover{transition:border-color .15s ease-out,box-shadow .15s ease-out,transform .15s ease-out}.karte-hover:hover{border-color:var(--line-strong);box-shadow:var(--schatten-hoch);transform:translateY(-1px)}.posten-zeile{display:grid;grid-template-columns:58px minmax(0,1fr) auto auto;align-items:center;grid-gap:10px;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line);cursor:pointer;transition:background-color .13s ease-out}.posten-zeile:last-of-type{border-bottom:none}.posten-zeile:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.posten-zeile .wer{min-width:0}.posten-zeile .wer b{font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.posten-zeile .wer small{color:var(--ink-3);font-size:11.5px}.posten-zeile .summe{font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.posten-zeile .knoepfe{display:flex;gap:6px}@media (max-width:620px){.posten-zeile{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}.posten-zeile .datum{grid-column:1;font-size:11px}.posten-zeile .wer{grid-column:1}.posten-zeile .summe{grid-column:2;grid-row:1/span 2;align-self:center}.posten-zeile .knoepfe{grid-column:1/-1}}.viz{position:relative}.viz-leer{margin:0;font-size:12.5px;color:var(--ink-3)}.viz-tip{position:absolute;top:0;transform:translateX(-50%);background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--schatten-hoch);padding:8px 10px;min-width:150px;pointer-events:none;z-index:5}.viz-tip-titel{margin:0 0 4px;font-size:11.5px;color:var(--ink-3);font-weight:600}.viz-tip-zeile{margin:2px 0 0;font-size:12.5px;display:flex;align-items:center;gap:7px}.viz-tip-zeile strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:650;color:var(--ink)}.viz-tip-zeile span:last-child{color:var(--ink-2)}.viz-key{width:12px;height:3px;border-radius:2px}.viz-key,.viz-swatch{display:inline-block;flex-shrink:0}.viz-swatch{width:10px;height:10px;border-radius:3px}.viz-legende{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:11.5px;color:var(--ink-2)}.viz-legende>span{display:inline-flex;align-items:center;gap:6px}.viz-tabelle{margin-top:6px;font-size:11.5px;color:var(--ink-3)}.viz-tabelle summary{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.viz-tabelle table{margin-top:6px;border-collapse:collapse;font-size:12px;color:var(--ink-2)}.viz-tabelle td,.viz-tabelle th{padding:3px 10px 3px 0;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-bottom:1px solid var(--line)}.viz-tabelle td:first-child,.viz-tabelle th:first-child{text-align:left}.viz-balken{display:flex;flex-direction:column;gap:2px}.viz-balken-zeile{display:flex;align-items:center;gap:10px;padding:5px 6px;border-radius:7px;text-decoration:none;color:inherit;font-size:12.5px}a.viz-balken-zeile:hover{background:color-mix(in srgb,var(--ink) 5%,transparent)}.viz-balken-name{flex:0 1 150px;min-width:64px;display:flex;flex-direction:column}.viz-balken-sub,.viz-balken-titel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viz-balken-sub{font-size:11px;color:var(--ink-3)}.viz-balken-spur{flex:1 1;height:10px;border-radius:0 4px 4px 0;background:var(--surface-2);overflow:hidden}.viz-balken-fuellung{display:block;height:100%;border-radius:0 4px 4px 0;min-width:2px}.viz-balken-wert{flex:0 0 auto;text-align:right;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}.viz-meter-spur{display:block;height:10px;border-radius:5px;overflow:hidden}.viz-meter-spur>span{display:block;height:100%;border-radius:5px}.viz-kachel{display:block;min-width:0;text-decoration:none;color:inherit}.viz-kachel-label{margin:0;font-size:12px;color:var(--ink-2);line-height:1.35}.viz-kachel-wert{margin:3px 0 0;font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.viz-kachel-hero{margin:4px 0 0;font-size:44px;font-weight:700;letter-spacing:-.03em;line-height:1.05}.viz-kachel-delta{margin:5px 0 0;font-size:12px;font-weight:600}.viz-kachel-sub{margin:3px 0 0;font-size:11.5px;color:var(--ink-3);line-height:1.35}.hero-raster{display:grid;grid-template-columns:1fr;grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--schatten)}.hero-raster>*{background:var(--surface);padding:16px 18px;min-width:0}.kpi-raster{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--schatten)}.kpi-raster>*{background:var(--surface);padding:14px 16px 13px;min-width:0}@media (min-width:720px){.hero-raster{grid-template-columns:1.6fr 1fr 1fr 1fr}.kpi-raster{grid-template-columns:repeat(4,1fr)}}.dash-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(262px,1fr));grid-gap:14px;gap:14px}.liste-zeile{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line);font-size:13px}.liste-zeile:last-child{border-bottom:none}.liste-zeile:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.punkt{width:7px;height:7px;border-radius:99px;flex-shrink:0}.dash-raster{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:14px;gap:14px}.dash-breit{grid-column:1/-1}.dash-balken{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:12.5px;text-decoration:none;color:inherit;border-radius:6px}.dash-balken:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.dash-balken .name{flex:0 0 168px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-balken .spur{flex:1 1;height:9px;border-radius:99px;background:var(--surface-2);overflow:hidden}.dash-balken .spur>span{display:block;height:100%;border-radius:99px;background:var(--accent);opacity:.85}.dash-balken .wert{flex:0 0 auto;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}kbd{font:inherit;font-size:11px;padding:1px 5px;border-radius:5px;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-3)}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important}}.druck-seite{max-width:1400px;margin:0 auto;padding:18px 20px 40px}.druck-kopf h1{margin:0;font-size:18px;letter-spacing:-.015em}.druck-kopf p{margin:2px 0 0;font-size:12px;color:var(--ink-2)}.druckmatrix{width:100%;border-collapse:collapse;margin-top:12px}.druckmatrix td,.druckmatrix th{border:1px solid var(--line-strong);padding:3px 5px;font-size:11px;vertical-align:top;text-align:left}.druckmatrix th{background:var(--surface-2);font-weight:650;white-space:nowrap}.druckmatrix td.we{background:color-mix(in srgb,var(--ink) 4%,transparent)}.druckmatrix .zeilenkopf{font-weight:650;white-space:nowrap}.druckmatrix .summe{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.druck-legende{margin-top:10px;font-size:11px;color:var(--ink-2)}.druck-filter{margin:12px 0;display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start}.druck-filter details{border:1px solid var(--line-strong);border-radius:10px;padding:8px 12px;background:var(--surface);font-size:12.5px;max-width:340px}.druck-filter summary{cursor:pointer;font-weight:600}.druck-filter label{display:flex;gap:7px;align-items:center;padding:3px 0;cursor:pointer}.druck-filter input[type=checkbox]{accent-color:var(--accent)}@media print{:root,:root:not([data-theme=light]),:root[data-thema=dunkel]{--bg:#fff!important;--surface:#fff!important;--surface-2:#f4f4f4!important;--ink:#000!important;--ink-2:#222!important;--ink-3:#444!important;--line:#bbb!important;--line-strong:#777!important;--accent:#000!important;--accent-soft:#eee!important;--schatten:none!important;--schatten-hoch:none!important;color-scheme:light}*{text-shadow:none!important;box-shadow:none!important}.app-header .knopf,.app-nav,.ladebalken,.nur-bildschirm,aside[aria-label]{display:none!important}.app-header,.app-main{margin-left:0!important;max-width:none!important}.app-header{position:static;border-bottom:1px solid #999}body{background:#fff;color:#000;font-size:11pt}.tabelle thead th{position:static}.statband>div,tr{page-break-inside:avoid;break-inside:avoid}a[href]:after{content:""}.druck-seite{max-width:none;padding:0}.druckmatrix td,.druckmatrix th{border-color:#999;font-size:9.5px;padding:2px 4px}.druckmatrix th{background:#eee!important}.druckmatrix td.we{background:#f3f3f3!important}.druckmatrix tr{page-break-inside:avoid;break-inside:avoid}@page{size:A4 landscape;margin:10mm}}.rp-stopps{--rp-linie-x:10px;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;position:relative}.rp-stopps:before{content:"";position:absolute;left:var(--rp-linie-x);top:12px;bottom:12px;width:2px;border-radius:1px;background:var(--line-strong)}.rp-stopps.mit-zeiten{--rp-linie-x:63px}.rp-stopps li{display:flex;gap:11px;align-items:center;padding:3.5px 0;font-size:12.5px;position:relative}.rp-stopps li>.rp-adresse{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1}.rp-zeit{min-width:41px;text-align:right;flex:none;font-size:12px;font-weight:650;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rp-nr{position:relative;min-width:22px;height:22px;border-radius:50%;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px var(--surface);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:none}.rp-nr.rp-terminal{background:var(--ink-2)!important;border-radius:7px}.rp-personen{margin-left:auto;font-size:11px;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:none}.rp-name,.rp-personen{color:var(--ink-3)}.rp-stopps li[draggable]{cursor:-webkit-grab;cursor:grab;border-radius:6px}.rp-stopps li[draggable]:hover{background:var(--surface-2)}.rp-stopps li.rp-zieht{opacity:.45;cursor:-webkit-grabbing;cursor:grabbing}.rp-stopps li.rp-ziel-davor{box-shadow:0 -2px 0 0 var(--accent)}.rp-stopps li.rp-ziel-ende{box-shadow:0 2px 0 0 var(--accent)}.rp-werkzeuge{display:inline-flex;gap:3px;margin-left:6px;flex:none;visibility:hidden}.rp-stopps li:hover .rp-werkzeuge{visibility:visible}.rp-mv{width:20px;height:20px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--ink-2);font-size:11px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.rp-mv:hover{background:var(--accent-soft);color:var(--accent);border-color:transparent}.rp-route-karte.rp-ziehen-ueber{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent-soft)}.rp-marker{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;color:#fff;font-weight:700;font-size:12px;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.4);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rp-marker.rp-terminal{border-radius:8px}.leaflet-container{font-family:inherit}.rp-overlay{position:fixed;inset:0;z-index:90;background:rgba(10,15,26,.45);display:flex;align-items:center;justify-content:center}.rp-spinner{width:30px;height:30px;border-radius:50%;border:3px solid var(--accent-soft);border-top-color:var(--accent);animation:rp-drehen .8s linear infinite}@keyframes rp-drehen{to{transform:rotate(1turn)}}.rp-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:95;background:var(--ink);color:var(--bg);padding:11px 20px;border-radius:10px;font-size:13px;font-weight:500;box-shadow:var(--schatten-hoch);max-width:82vw}.rp-toast.fehler{background:var(--danger);color:#fff}.rp-punkt{width:9px;height:9px;border-radius:50%;flex:none}.rp-punkt.ok{background:var(--ok)}.rp-punkt.fehl{background:var(--danger)}.rp-punkt.offen{background:var(--warn);animation:rp-puls 1.6s ease-in-out infinite}@keyframes rp-puls{50%{opacity:.35}}#rp-druck{display:none;font-size:10.5pt;color:#111;line-height:1.4;-webkit-print-color-adjust:exact;print-color-adjust:exact}#rp-druck .rp-bogen{page-break-after:always;break-after:page}#rp-druck .rp-bogen:last-child{page-break-after:auto;break-after:auto}#rp-druck .rp-bogen-kopf{display:flex;justify-content:space-between;align-items:flex-end;gap:8mm;border-bottom:1.4pt solid #111;padding-bottom:2.5mm;margin-bottom:2.5mm}#rp-druck .rp-bogen-titel{font-size:17pt;font-weight:700;letter-spacing:-.01em;display:flex;align-items:center;gap:3mm}#rp-druck .rp-druck-punkt{width:5mm;height:5mm;border-radius:1.5mm;display:inline-block;flex:none}#rp-druck .rp-bogen-neben{font-size:9pt;color:#444;text-align:right;line-height:1.5}#rp-druck .rp-bogen-meta{font-size:10pt;font-weight:600;color:#222;margin-bottom:4.5mm}#rp-druck .rp-druck-koerper{display:flex;gap:7mm;align-items:flex-start}#rp-druck table{flex:1 1;width:100%;border-collapse:collapse}#rp-druck th{text-align:left;font-size:8.5pt;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#333;border-bottom:1.4pt solid #111;padding:2mm 2.5mm}#rp-druck td{padding:2.1mm 2.5mm;border-bottom:.4pt solid #ccc;vertical-align:top}#rp-druck tbody tr:nth-child(2n) td{background:#f4f4f4}#rp-druck .c-nr{width:9mm;color:#666}#rp-druck td.c-zeit,#rp-druck th.c-zeit{width:18mm}#rp-druck td.c-zeit{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}#rp-druck td.c-pers,#rp-druck th.c-pers{width:13mm;text-align:right}#rp-druck tr.terminal td{font-weight:700;background:#e8e8e8;border-top:.8pt solid #777}#rp-druck .rp-druck-qr{width:50mm;flex:none;display:flex;flex-direction:column;gap:6mm;padding-top:1mm}#rp-druck .rp-druck-qr figure{margin:0;text-align:center;page-break-inside:avoid;break-inside:avoid}#rp-druck .rp-druck-qr svg{width:46mm;height:46mm;display:block;margin:0 auto 2mm}#rp-druck .rp-druck-qr figcaption{font-size:8pt;color:#444;line-height:1.45}@media print{body.rp-druckmodus .app-header,body.rp-druckmodus .app-main>:not(#rp-druck),body.rp-druckmodus .app-nav,body.rp-druckmodus .rp-overlay,body.rp-druckmodus .rp-toast{display:none!important}body.rp-druckmodus .app-main{margin:0!important;padding:0!important;max-width:none!important}body.rp-druckmodus #rp-druck{display:block!important}}@media (max-width:980px){.rp-ergebnis-raster{grid-template-columns:1fr!important}}.tp-raster{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 10px;gap:0 10px}.tl-liste{overflow-x:auto}.tl-kopf,.tl-zeile{display:grid;align-items:center;grid-gap:2px 10px;gap:2px 10px;padding:8px 12px;border-top:1px solid var(--line);grid-template-columns:50px 42px minmax(100px,1fr) minmax(120px,1.2fr) minmax(120px,1.2fr) 34px 92px 180px 200px;grid-template-areas:"zeit art name von nach pers tel zut akt" "sub sub sub sub sub sub sub sub sub";min-width:1000px}.tl-kopf{font-size:10.5px;font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);padding-top:2px;padding-bottom:8px;border-top:none;grid-template-areas:"zeit art name von nach pers tel zut akt"}.tl-zeit{grid-area:zeit}.tl-art{grid-area:art}.tl-name{grid-area:name}.tl-von{grid-area:von}.tl-nach{grid-area:nach}.tl-pers{grid-area:pers}.tl-tel{grid-area:tel}.tl-zut{grid-area:zut}.tl-sub{grid-area:sub;padding-top:2px}.tl-akt{grid-area:akt;flex-direction:column;align-items:flex-end}.tl-akt,.tl-akt>div{display:flex;gap:4px}.tl-meta{display:contents}.tl-mehr,.tl-zut-text{display:none}.tl-akt-desktop{flex-direction:column;align-items:flex-end}.tl-akt-desktop,.tl-akt-desktop>div{display:flex;gap:4px}@media (max-width:900px){.tl-kopf{display:none}.tl-zeile{min-width:0;gap:1px 8px;padding:8px 10px;align-items:start;grid-template-columns:44px 1fr auto;grid-template-areas:"zeit name art" "zeit von von" "zeit nach nach" "meta meta meta" "sub sub sub" "akt akt akt"}.tl-zeit{font-size:14px!important;line-height:1.3}.tl-art{justify-self:end}.tl-name{font-size:13.5px;line-height:1.3}.tl-nach,.tl-von{font-size:12.5px!important;font-weight:500!important;color:var(--ink-2);line-height:1.3}.tl-nach:before{content:"→ ";color:var(--ink-3)}.tl-meta{grid-area:meta;display:flex;flex-wrap:wrap;gap:1px 12px;padding:3px 0 0 52px;font-size:12px;color:var(--ink-2)}.tl-meta>div{min-width:max-content}.tl-pers{text-align:left!important}.tl-pers:before{content:"Pers. ";color:var(--ink-3)}.tl-zut-inputs{display:none!important}.tl-zut-text{display:inline}.tl-sub{padding:2px 0 0 52px}.tl-akt{flex-direction:row;align-items:center;justify-content:flex-start;padding:4px 0 0 52px}.tl-zeile .tl-akt-desktop{display:none!important}.tl-zeile .tl-mehr{display:block!important;width:100%}.tl-mehr>summary{list-style:none;cursor:pointer}.tl-mehr>summary::-webkit-details-marker{display:none}.tl-mehr-inhalt{display:flex;flex-wrap:wrap;gap:4px 6px;margin-top:6px}.tl-mehr-inhalt>div{display:flex;gap:4px;flex-wrap:wrap}}@media (max-width:520px){.tp-raster{grid-template-columns:1fr}.tp-raster>div{grid-column:auto!important}}.rp-qr-url{font-family:ui-monospace,monospace;font-size:8pt;color:#333;word-break:break-all}.knopf:disabled{opacity:.5;cursor:not-allowed}.app-main{overflow-wrap:break-word}@media (max-width:900px){.app-main table{display:block;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.app-main table.tabelle{width:max-content;min-width:100%}}@media (max-width:720px){.subtabs{flex-wrap:wrap;overflow-x:visible}.subtab{padding:8px 10px;font-size:12.5px}.app-header-inner{flex-wrap:wrap}.kopf-rechts{flex:1 1 100%!important;align-items:flex-start!important;max-width:100%}.kopf-werkzeuge{flex-wrap:wrap}.app-main input,.app-main select{max-width:100%}.app-main [style*="display:flex"],.app-main [style*="display:inline-flex"]{flex-wrap:wrap}.app-main [style*="display:grid"]{min-width:0!important}.app-main [style*="display:grid"]>*{min-width:0}}.nur-lesen .nur-schreiben,.nur-lesen .rp-werkzeuge{display:none!important}@media (max-width:900px){.lohn-buchung-raster{grid-template-columns:1fr!important}}.tp-woche{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));grid-gap:8px;gap:8px;min-width:1080px}@media (max-width:900px){.tp-woche{grid-template-columns:1fr;min-width:0}}.se-zeile{display:grid;grid-template-columns:minmax(140px,1.1fr) minmax(220px,2fr) minmax(100px,.8fr) minmax(150px,1.1fr) auto;grid-gap:2px 14px;gap:2px 14px;align-items:start;padding:9px 14px;border-top:1px solid var(--line);font-size:12.5px}.se-zeile:first-child{border-top:none}.se-block{min-width:0}.se-haupt{font-weight:600;line-height:1.35}.se-haupt,.se-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.se-sub{font-size:11.5px;color:var(--ink-3);margin-top:1px}.se-route{font-weight:500;color:var(--ink-2)}.se-aktionen{display:flex;flex-direction:column;align-items:flex-end;gap:5px;white-space:nowrap}@media (max-width:1100px){.se-zeile{grid-template-columns:minmax(140px,1fr) minmax(200px,1.6fr) minmax(150px,1fr)}.se-aktionen{grid-column:1/-1;flex-direction:row;align-items:center;flex-wrap:wrap;justify-content:flex-start}}@media (max-width:640px){.se-zeile{grid-template-columns:1fr;gap:3px}.se-haupt,.se-sub{white-space:normal}}.rp-uebersicht{width:100%;border-collapse:collapse;font-size:12.5px}.rp-uebersicht th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);font-weight:600}.rp-uebersicht td,.rp-uebersicht th{padding:5px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.rp-uebersicht tbody tr{cursor:pointer}.rp-uebersicht tbody tr:hover{background:var(--surface-2)}.rp-uebersicht tbody tr.aktiv{background:var(--accent-soft)}.rp-uebersicht .r{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rp-uebersicht tfoot td{border-bottom:none;font-weight:600;color:var(--ink-2)}.rp-pruef{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:12px;line-height:1.4}.rp-pruef li{display:flex;gap:7px;align-items:baseline}.rp-pruef .z{font-weight:700;width:12px;flex:none;text-align:center}#rp-druck .rp-uebersicht-bogen td,#rp-druck .rp-uebersicht-bogen th{white-space:nowrap}#rp-druck .rp-uebersicht-bogen .rp-druck-punkt{width:3.5mm;height:3.5mm;vertical-align:middle;margin-right:1mm}.geschwaerzt .geld-sensibel{filter:blur(6px);-webkit-user-select:none;-moz-user-select:none;user-select:none}.geschwaerzt input.geld-eingabe,.geschwaerzt textarea.geld-eingabe{filter:blur(6px)}.geschwaerzt svg text.geld-sensibel,.geschwaerzt svg tspan.geld-sensibel{filter:blur(3px)}@media (max-width:720px){.bp-kopf{flex-wrap:wrap;position:relative;padding:12px 14px!important}.bp-titel{flex:1 1 100%;padding-right:44px}.bp-aktionen{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-start;gap:8px!important}.bp-schliessen{position:absolute;top:8px;right:10px}.app-main table.karten{display:block!important;width:100%!important;min-width:0!important;overflow:visible!important}.karten thead{display:none}.karten tbody{display:block}.karten tbody tr{display:grid;grid-template-columns:auto 1fr auto;grid-column-gap:8px;column-gap:8px;grid-row-gap:3px;row-gap:3px;align-items:start;padding:9px 6px;border-bottom:1px solid var(--line)}.karten tbody tr:last-child{border-bottom:0}.karten tbody td{display:block;padding:0!important;border:0!important;min-width:0!important;max-width:none!important;white-space:normal!important;text-align:left!important}.karten tbody td[colspan]{grid-column:1/-1}.karten td.rechts{text-align:right!important}.karten td.voll{grid-column:1/-1}.rg-tabelle tbody tr{grid-template-areas:"nr firma datum" "kunde kunde kunde" "typ typ betrag" "status status gueltig" "akt akt akt"}.rg-nr{grid-area:nr}.rg-firma{grid-area:firma}.rg-datum{grid-area:datum;text-align:right!important}.rg-kunde{grid-area:kunde}.rg-typ{grid-area:typ}.rg-betrag{grid-area:betrag;text-align:right!important;font-weight:650}.rg-status{grid-area:status}.rg-gueltig{grid-area:gueltig;text-align:right!important}.rg-akt{grid-area:akt;display:flex!important;flex-wrap:wrap;gap:6px;margin-top:2px}.rg-akt:empty{display:none!important}.bl-tabelle tbody tr{grid-template-areas:"nr fz datum" "partner partner partner" "art status betrag" "leistung leistung leistung"}.bl-nr{grid-area:nr}.bl-fz{grid-area:fz}.bl-datum{grid-area:datum;text-align:right!important}.bl-partner{grid-area:partner}.bl-art{grid-area:art}.bl-status{grid-area:status}.bl-betrag{grid-area:betrag;text-align:right!important;font-weight:650}.bl-leistung{grid-area:leistung}.op-tabelle tbody tr{grid-template-areas:"richtung richtung faellig" "partner partner partner" "datum betrag offen" "vorschlag vorschlag vorschlag" "akt akt akt"}.op-richtung{grid-area:richtung}.op-faellig{grid-area:faellig;text-align:right!important}.op-partner{grid-area:partner}.op-datum{grid-area:datum}.op-betrag{grid-area:betrag}.op-betrag,.op-offen{text-align:right!important}.op-offen{grid-area:offen}.op-betrag:before{content:"Betrag "}.op-betrag:before,.op-offen:before{font-size:10.5px;font-weight:400;color:var(--ink-3)}.op-offen:before{content:"Offen "}.op-vorschlag{grid-area:vorschlag}.op-akt{grid-area:akt;display:flex!important;flex-wrap:wrap;gap:6px}.op-partner>div{white-space:normal!important}.karten tfoot{display:block}.karten tfoot tr{display:grid;grid-template-columns:1fr auto;grid-column-gap:8px;column-gap:8px;padding:9px 6px}.karten tfoot td{display:block;padding:0!important;border:0!important;white-space:normal!important}.karten tfoot td[colspan]{grid-column:1/-1}.karten tfoot td:empty{display:none}.karten td:before{font-size:10.5px;font-weight:400;color:var(--ink-3)}.ar-tabelle tbody tr{grid-template-areas:"nr firma datum" "empf empf empf" "betrag fahrten summe" "abgleich abgleich zahlung"}.ar-nr{grid-area:nr}.ar-firma{grid-area:firma}.ar-datum{grid-area:datum;text-align:right!important}.ar-empf{grid-area:empf;font-weight:600}.ar-betrag{grid-area:betrag}.ar-fahrten{grid-area:fahrten}.ar-summe{grid-area:summe;text-align:right!important}.ar-abgleich{grid-area:abgleich}.ar-zahlung{grid-area:zahlung;text-align:right!important}.ar-betrag:before{content:"Rechnung "}.ar-fahrten:before{content:"Fahrten "}.ar-summe:before{content:"Summe "}.ad-tabelle tbody tr{grid-template-areas:"datum datum auftrag" "name name name" "von von von" "preis rabatt mwst" "end end akt"}.ad-datum{grid-area:datum}.ad-auftrag{grid-area:auftrag;text-align:right!important;color:var(--ink-2)}.ad-name{grid-area:name}.ad-von{grid-area:von}.ad-preis{grid-area:preis}.ad-rabatt{grid-area:rabatt}.ad-mwst{grid-area:mwst;text-align:right!important}.ad-end{grid-area:end}.ad-akt{grid-area:akt;text-align:right!important}.ad-preis:before{content:"Preis "}.ad-rabatt:before{content:"Rabatt "}.ad-mwst:before{content:"MwSt "}.ad-end:before{content:"Endbetrag "}}.app-nav.nav-wartet{visibility:hidden}