:root{--bg:#07111f;--panel:#0d1b2e;--panel2:#122640;--text:#eef5ff;--muted:#9eb3cc;--blue:#00a3e0;--yellow:#ffd400;--danger:#ff5a6b;--ok:#00c48c;--border:rgba(255,255,255,.1)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#050912,#102039 55%,#07111f);font-family:Segoe UI,Arial,sans-serif;color:var(--text)}a{color:inherit}.topbar{position:sticky;top:0;z-index:10;background:rgba(7,17,31,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:22px;padding:10px 22px}.brand{display:flex;align-items:center;gap:12px;min-width:290px}.brand img{height:52px}.brand span{display:block;color:var(--muted);font-size:12px}.nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.nav a,.nav button{border:0;background:transparent;color:var(--text);padding:10px 12px;border-radius:10px;text-decoration:none;font:inherit;cursor:pointer}.nav a:hover,.nav button:hover{background:rgba(0,163,224,.17)}.nav-group{position:relative}.nav-group>div{display:none;position:absolute;top:100%;left:0;background:#0b1829;border:1px solid var(--border);border-radius:14px;padding:8px;min-width:210px;box-shadow:0 15px 40px rgba(0,0,0,.35)}.nav-group:hover>div{display:block}.nav-group div a{display:block}.userbox{margin-left:auto;color:var(--muted)}.container{max-width:1280px;margin:0 auto;padding:28px}.footer{text-align:center;color:var(--muted);font-size:12px;padding:25px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.card{background:linear-gradient(180deg,rgba(18,38,64,.95),rgba(13,27,46,.95));border:1px solid var(--border);border-radius:20px;padding:20px;box-shadow:0 18px 50px rgba(0,0,0,.25)}.link-card{text-decoration:none;display:block;transition:.18s}.link-card:hover{transform:translateY(-3px);border-color:rgba(0,163,224,.45)}.icon{font-size:34px;margin-bottom:10px}.metric strong{font-size:34px;display:block}.metric span,.muted,p{color:var(--muted)}.toolbar{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:14px 0;flex-wrap:wrap}.btn,button,input[type=submit]{background:linear-gradient(90deg,var(--blue),#087db1);border:0;color:#fff;border-radius:10px;padding:10px 14px;text-decoration:none;cursor:pointer;font-weight:600}.btn.alt{background:#223750}.btn.danger{background:var(--danger)}.btn.small{padding:7px 10px;font-size:13px;display:inline-block}table{width:100%;border-collapse:collapse;background:rgba(13,27,46,.7);border-radius:16px;overflow:hidden}th,td{padding:12px;border-bottom:1px solid var(--border);text-align:left}th{color:#fff;background:rgba(0,163,224,.12)}tr:hover{background:rgba(255,255,255,.03)}form.card{max-width:820px}label{display:block;margin:12px 0 6px;color:var(--muted)}input,select,textarea{width:100%;padding:11px;border-radius:10px;border:1px solid var(--border);background:#081525;color:var(--text)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.alert{background:rgba(0,163,224,.15);border:1px solid rgba(0,163,224,.35);padding:12px 14px;border-radius:12px;margin:12px 0}.low{color:var(--yellow);font-weight:700}.negative{color:var(--danger)}.ok{color:var(--ok)}.login{min-height:100vh;display:grid;place-items:center}.login .card{width:min(420px,92vw)}.login-logo{display:block;margin:0 auto 16px;max-width:260px}.print-header{display:none}@media print{.topbar,.footer,.toolbar,.btn{display:none!important}body{background:white;color:#111}.container{max-width:none;padding:0}.card,table{box-shadow:none;border:0;background:white;color:#111}.print-header{display:flex;align-items:center;gap:20px;border-bottom:1px solid #ccc;margin-bottom:16px}.print-header img{height:60px}th{background:#eee;color:#111}td,th{color:#111;border-bottom:1px solid #ccc}.muted,p{color:#333}}


/* Mobile Optimierung v2.2.1 */
.mobile-nav-toggle{display:none;margin-left:auto;background:rgba(0,163,224,.18);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:10px 13px;font-size:22px;line-height:1}
.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px}
.table-responsive table{min-width:720px}
input,select,textarea,button,.btn{font-size:16px}

@media (max-width: 900px){
  .topbar{align-items:flex-start;gap:10px;padding:10px 14px;flex-wrap:wrap}
  .brand{min-width:0;flex:1 1 auto;max-width:calc(100% - 72px)}
  .brand img{height:42px;max-width:95px;object-fit:contain}
  .brand strong{font-size:15px;line-height:1.2}
  .brand span{font-size:11px}
  .mobile-nav-toggle{display:block}
  .userbox{order:3;width:100%;margin-left:0;font-size:13px;padding-left:4px}
  .nav{order:4;display:none;width:100%;flex-direction:column;align-items:stretch;gap:6px;padding-top:8px}
  .nav.open{display:flex}
  .nav a,.nav button{width:100%;text-align:left;padding:12px 14px;background:rgba(255,255,255,.04)}
  .nav-group>div{position:static;display:none;min-width:0;box-shadow:none;margin-top:6px;background:rgba(0,0,0,.16)}
  .nav-group.open>div{display:block}
  .nav-group:hover>div{display:none}
  .nav-group.open:hover>div{display:block}
  .container{padding:18px 12px}
  h1{font-size:25px;margin:12px 0 16px}
  .grid{grid-template-columns:1fr;gap:12px}
  .card{padding:16px;border-radius:16px}
  .toolbar{align-items:stretch;gap:10px}
  .toolbar .btn,.toolbar input,.toolbar select{width:100%}
  .form-row{grid-template-columns:1fr;gap:8px}
  table{font-size:14px}
  th,td{padding:10px 9px;white-space:nowrap}
  .btn,button,input[type=submit]{width:100%;min-height:44px;text-align:center}
  .btn.small{width:auto;min-height:38px}
  .login .card{width:94vw;padding:18px}
  .login-logo{max-width:220px}
}

@media (max-width: 520px){
  .metric strong{font-size:28px}
  .icon{font-size:28px}
  .footer{padding:18px 12px}
  .brand strong{display:block;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
