:root{--bg:#f5f6f8;--panel:#ffffff;--text:#1d1d1f;--muted:#6e6e73;--line:#e5e5ea;--blue:#0a84ff;--green:#30d158;--red:#ff453a;--shadow:0 18px 45px rgba(0,0,0,.08);--radius:22px}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:34px}.brand{display:flex;gap:14px;align-items:center;margin-bottom:24px}.brand-mark{width:48px;height:48px;border-radius:16px;background:linear-gradient(145deg,#0a84ff,#64d2ff);display:grid;place-items:center;color:#fff;font-weight:700}.brand-title{font-size:26px;font-weight:650;letter-spacing:-.03em}.brand-sub{color:var(--muted);font-size:14px;margin-top:3px}.field{margin:14px 0}.field label{display:block;font-size:13px;color:var(--muted);margin:0 0 7px}.input{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 14px;background:#fff;font-size:15px;outline:none}.input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,132,255,.12)}.btn{width:100%;border:0;border-radius:15px;background:var(--blue);color:#fff;padding:13px 16px;font-weight:600;font-size:15px;cursor:pointer}.hint,.error{font-size:13px;margin-top:14px;color:var(--muted);line-height:1.45}.error{color:var(--red);background:#fff2f2;border:1px solid #ffd1d1;border-radius:14px;padding:12px}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:rgba(255,255,255,.78);backdrop-filter:blur(22px);border-right:1px solid var(--line);padding:22px;position:sticky;top:0;height:100vh}.side-logo{display:flex;align-items:center;gap:12px;margin-bottom:28px}.side-logo .brand-mark{width:38px;height:38px;border-radius:13px}.side-logo strong{font-weight:650}.nav{display:flex;flex-direction:column;gap:6px}.nav a{padding:11px 12px;border-radius:14px;color:#333;font-size:14px}.nav a.active,.nav a:hover{background:#f0f2f5}.content{padding:28px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-title h1{margin:0;font-size:30px;letter-spacing:-.04em}.page-title p{margin:6px 0 0;color:var(--muted)}.user-pill{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:14px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px rgba(0,0,0,.04);padding:22px}.card h3{margin:0 0 8px;font-size:17px}.card p{margin:0;color:var(--muted);line-height:1.45}.status{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.dot{width:9px;height:9px;border-radius:50%;background:var(--green)}.mobile-top{display:none}@media(max-width:860px){.app-shell{display:block}.sidebar{display:none}.mobile-top{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:rgba(255,255,255,.86);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:3}.content{padding:20px}.grid{grid-template-columns:1fr}.topbar{align-items:flex-start;gap:16px;flex-direction:column}.page-title h1{font-size:26px}}

/* 1PP Sidebar Variante B · Fleet Management Pro */
:root{--sidebar-w:248px;--sidebar-bg:rgba(255,255,255,.82);--sidebar-line:#e7eaf0;--sidebar-hover:#f3f6fb;--sidebar-active:#edf5ff;--sidebar-active-text:#0b63ce;--sidebar-icon:#7a8493;--sidebar-text:#2b3340;--sidebar-muted:#8b95a5}
.app-shell{grid-template-columns:var(--sidebar-w) 1fr}
.sidebar{width:var(--sidebar-w);background:linear-gradient(180deg,rgba(255,255,255,.92),var(--sidebar-bg));backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-right:1px solid var(--sidebar-line);padding:18px 14px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:0;z-index:30;overflow-y:auto;scrollbar-width:thin}
.side-logo{display:flex;align-items:center;gap:10px;margin:0 6px 18px;padding:4px 2px}.side-logo .brand-mark{width:34px;height:34px;border-radius:12px;background:linear-gradient(145deg,#0a84ff,#64d2ff);display:grid;place-items:center;color:#fff;font-weight:700;font-size:15px;box-shadow:0 8px 22px rgba(10,132,255,.25)}.side-logo strong{font-weight:650;font-size:15px;letter-spacing:-.02em}.brand-copy{line-height:1.08}.brand-sub{display:inline-block;color:var(--sidebar-muted);font-size:11.5px;margin-top:2px;white-space:nowrap}.nav{display:flex;flex-direction:column;gap:3px}.nav a,.nav-logout{position:relative;display:flex;align-items:center;gap:10px;min-height:36px;padding:8px 10px;border-radius:12px;color:var(--sidebar-text);font-size:13.2px;font-weight:430;line-height:1.15;text-decoration:none;letter-spacing:-.01em;transition:background .16s ease,color .16s ease,transform .16s ease}.nav a:hover,.nav-logout:hover{background:var(--sidebar-hover);color:#111827}.nav a.active{background:var(--sidebar-active);color:var(--sidebar-active-text);font-weight:560}.nav a.active::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:99px;background:#0a84ff}.nav-icon{width:18px;height:18px;display:inline-grid;place-items:center;flex:0 0 18px;color:var(--sidebar-icon)}.nav-icon svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.nav a.active .nav-icon{color:var(--sidebar-active-text)}.nav-label{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-section-title{margin:16px 10px 7px;color:var(--sidebar-muted);font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.08em}.sidebar-spacer{flex:1;min-height:16px}.nav-logout{margin-top:10px;color:#6b7280}.content{min-width:0}.mobile-menu-btn{border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 11px;font-size:17px;line-height:1;cursor:pointer;color:var(--text)}.sidebar-backdrop{display:none}
@media(max-width:860px){.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;bottom:0;height:100vh;transform:translateX(-105%);transition:transform .22s ease;box-shadow:24px 0 70px rgba(15,23,42,.14)}body.sidebar-open .sidebar{transform:translateX(0)}.sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.22);opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:20}body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}.mobile-top{display:flex}.content{padding:20px}}



/* 1PP Sidebar Emergency-Fix v1.2.1 */\n/* 1PP Sidebar Size Restore v1.3.3 SAFE\n   Ziel: Haupt-App-Sidebar optisch wie Update-Zentrale. */\n:root{--sidebar-w:248px;--sidebar-bg:rgba(255,255,255,.82);--sidebar-line:#e7eaf0;--sidebar-hover:#f3f6fb;--sidebar-active:#edf5ff;--sidebar-active-text:#0b63ce;--sidebar-icon:#7a8493;--sidebar-text:#2b3340;--sidebar-muted:#8b95a5}\n.app-shell{display:grid!important;grid-template-columns:248px 1fr!important;min-height:100vh!important}\n.sidebar{width:248px!important;max-width:248px!important;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84))!important;backdrop-filter:blur(22px)!important;-webkit-backdrop-filter:blur(22px)!important;border-right:1px solid var(--sidebar-line)!important;padding:18px 14px!important;position:sticky!important;top:0!important;height:100vh!important;display:flex!important;flex-direction:column!important;gap:0!important;z-index:30!important;overflow-y:auto!important;scrollbar-width:thin!important}\n.sidebar .side-logo{display:flex!important;align-items:center!important;gap:10px!important;margin:0 6px 18px!important;padding:4px 2px!important}\n.sidebar .side-logo .brand-mark{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:12px!important;background:linear-gradient(145deg,#0a84ff,#64d2ff)!important;display:grid!important;place-items:center!important;color:#fff!important;font-weight:700!important;font-size:15px!important;box-shadow:0 8px 22px rgba(10,132,255,.25)!important}\n.sidebar .side-logo strong{font-weight:650!important;font-size:15px!important;line-height:1.08!important;letter-spacing:-.02em!important;color:#171b22!important}\n.sidebar .brand-copy{line-height:1.08!important}\n.sidebar .brand-sub{display:inline-block!important;color:var(--sidebar-muted)!important;font-size:11.5px!important;margin-top:2px!important;white-space:nowrap!important;line-height:1.2!important}\n.sidebar .nav{display:flex!important;flex-direction:column!important;gap:3px!important;margin:0!important;padding:0!important}\n.sidebar .nav a,.sidebar .nav-logout{position:relative!important;display:flex!important;align-items:center!important;gap:10px!important;min-height:36px!important;height:auto!important;max-height:none!important;padding:8px 10px!important;margin:0!important;border-radius:12px!important;color:var(--sidebar-text)!important;font-size:13.2px!important;font-weight:430!important;line-height:1.15!important;text-decoration:none!important;letter-spacing:-.01em!important;background:transparent!important;overflow:hidden!important;transition:background .16s ease,color .16s ease,transform .16s ease!important}\n.sidebar .nav a:hover,.sidebar .nav-logout:hover{background:var(--sidebar-hover)!important;color:#111827!important}\n.sidebar .nav a.active{background:var(--sidebar-active)!important;color:var(--sidebar-active-text)!important;font-weight:560!important}\n.sidebar .nav a.active:before{content:\"\"!important;position:absolute!important;left:0!important;top:9px!important;bottom:9px!important;width:3px!important;border-radius:99px!important;background:#0a84ff!important}\n.sidebar .nav-icon{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;min-height:18px!important;max-height:18px!important;display:inline-grid!important;place-items:center!important;flex:0 0 18px!important;color:var(--sidebar-icon)!important}\n.sidebar .nav-icon svg,.sidebar svg{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;min-height:18px!important;max-height:18px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important}\n.sidebar .nav a.active .nav-icon{color:var(--sidebar-active-text)!important}\n.sidebar .nav-label{min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}\n.sidebar .nav-section-title{margin:16px 10px 7px!important;color:var(--sidebar-muted)!important;font-size:10.5px!important;font-weight:650!important;text-transform:uppercase!important;letter-spacing:.08em!important;line-height:1!important}\n.sidebar .sidebar-spacer{flex:1!important;min-height:16px!important;height:auto!important}\n.sidebar .nav-logout{margin-top:10px!important;color:#6b7280!important}\n.content{min-width:0!important}\n@media(max-width:860px){.app-shell{display:block!important}.sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;height:100vh!important;width:min(86vw,300px)!important;max-width:min(86vw,300px)!important;transform:translateX(-105%)!important;transition:transform .22s ease!important;box-shadow:24px 0 70px rgba(15,23,42,.14)!important}.sidebar.is-open,body.sidebar-open .sidebar{transform:translateX(0)!important}.sidebar-backdrop{display:block!important;position:fixed!important;inset:0!important;background:rgba(15,23,42,.22)!important;opacity:0!important;pointer-events:none!important;transition:opacity .22s ease!important;z-index:20!important}.sidebar-backdrop.is-open,body.sidebar-open .sidebar-backdrop{opacity:1!important;pointer-events:auto!important}.content{padding:20px!important}}\n

/* 1PP Sidebar Spacing Guard v1.4.1 SAFE
   Vereinheitlicht nur Abstände/Größen der bestehenden Sidebar auf die Referenz Update-Zentrale.
   Keine Layout-Migration, keine Wrapper-Änderung. */
:root{--sidebar-w:248px;}
.app-shell{grid-template-columns:248px 1fr!important;}
.sidebar{
  width:248px!important;
  box-sizing:border-box!important;
  padding:18px 14px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow-y:auto!important;
}
.sidebar .side-logo{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 6px 18px!important;
  padding:4px 2px!important;
}
.sidebar .side-logo .brand-mark{
  width:34px!important;height:34px!important;
  min-width:34px!important;min-height:34px!important;
  border-radius:12px!important;
  font-size:15px!important;
}
.sidebar .side-logo strong{font-size:15px!important;line-height:1.08!important;font-weight:650!important;}
.sidebar .brand-sub{font-size:11.5px!important;line-height:1.15!important;margin-top:2px!important;white-space:nowrap!important;color:#8b95a5!important;}
.sidebar .nav{display:flex!important;flex-direction:column!important;gap:3px!important;margin:0!important;padding:0!important;}
.sidebar .nav a,.sidebar .nav-logout{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:0 10px!important;
  margin:0!important;
  border-radius:12px!important;
  font-size:13.2px!important;
  line-height:1!important;
  font-weight:430!important;
  box-sizing:border-box!important;
  text-decoration:none!important;
}
.sidebar .nav a.active::before,.sidebar .nav a.active:before{
  content:""!important;position:absolute!important;left:0!important;top:9px!important;bottom:9px!important;width:3px!important;border-radius:99px!important;background:#0a84ff!important;
}
.sidebar .nav-icon{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;min-height:18px!important;max-height:18px!important;flex:0 0 18px!important;display:inline-grid!important;place-items:center!important;}
.sidebar .nav-icon svg,.sidebar svg{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;min-height:18px!important;max-height:18px!important;}
.sidebar .nav-section-title{margin:16px 10px 7px!important;font-size:10.5px!important;line-height:1!important;letter-spacing:.08em!important;font-weight:650!important;}
.sidebar .sidebar-spacer{flex:1!important;min-height:16px!important;}
.sidebar .nav-logout{margin-top:10px!important;}
@media(max-width:900px){
  .app-shell{grid-template-columns:1fr!important;}
  .sidebar{width:100%!important;height:auto!important;position:relative!important;padding:14px!important;}
}
