.msft-app{
  --msft-bg:#f4f7fb;
  --msft-card:#ffffff;
  --msft-text:#132238;
  --msft-muted:#66758a;
  --msft-accent:#2563eb;
  --msft-accent-dark:#1d4ed8;
  --msft-accent-soft:#eaf1ff;
  --msft-border:#dce4ee;
  --msft-border-strong:#b9c7d8;
  --msft-ok:#168454;
  --msft-warn:#9a6700;
  --msft-danger:#b42318;
  --msft-shadow:0 12px 36px rgba(28,46,70,.08);
  max-width:1080px;
  margin:24px auto;
  padding:18px;
  border-radius:28px;
  background:var(--msft-bg);
  color:var(--msft-text);
  font-family:inherit;
  font-size:17px;
  line-height:1.55;
  box-sizing:border-box;
}
.msft-app *{box-sizing:border-box}
.msft-app [hidden]{display:none!important}
.msft-app a{-webkit-tap-highlight-color:transparent}

/* Hero */
.msft-hero{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  min-height:190px;
  padding:34px 36px;
  overflow:hidden;
  border-radius:24px;
  background:
    radial-gradient(circle at 88% 20%,rgba(255,255,255,.19),transparent 28%),
    linear-gradient(135deg,#10233f 0%,#164d83 52%,#2563eb 100%);
  color:#fff;
  box-shadow:0 18px 45px rgba(21,51,91,.18);
}
.msft-hero:after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-90px;
  bottom:-160px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
}
.msft-hero-copy{position:relative;z-index:1;max-width:720px}
.msft-hero-meta{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:7px 11px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.10);font-size:14px;font-weight:800;letter-spacing:.01em}
.msft-live-dot{width:9px;height:9px;border-radius:50%;background:#73e2ae;box-shadow:0 0 0 4px rgba(115,226,174,.16)}
.msft-eyebrow{font-size:13px;font-weight:850;letter-spacing:.11em;text-transform:uppercase;opacity:.72}
.msft-hero h2{margin:5px 0 9px!important;color:#fff!important;font-size:36px!important;line-height:1.08!important;letter-spacing:-.025em}
.msft-hero p{max-width:640px;margin:0;font-size:18px;line-height:1.55;opacity:.9}
.msft-hero-mark{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 92px;width:92px;height:92px;border:1px solid rgba(255,255,255,.22);border-radius:26px;background:rgba(255,255,255,.12);font-size:46px;backdrop-filter:blur(8px)}

/* Kennzahlen */
.msft-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}
.msft-kpi{position:relative;min-height:116px;padding:19px 20px 18px;border:1px solid var(--msft-border);border-radius:18px;background:var(--msft-card);box-shadow:0 6px 22px rgba(30,49,73,.045)}
.msft-kpi:before{content:"";position:absolute;top:0;left:20px;right:20px;height:3px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,var(--msft-accent),#55a7ff)}
.msft-kpi span{display:block;margin-top:4px;color:var(--msft-muted);font-size:15px;font-weight:750}
.msft-kpi strong{display:inline-block;margin-top:8px;color:var(--msft-text);font-size:32px;line-height:1;font-weight:850;letter-spacing:-.025em}
.msft-kpi small{margin-left:6px;color:var(--msft-muted);font-size:15px;font-weight:700}

/* Startauswahl */
.msft-choice{margin:16px 0;padding:26px;border:1px solid var(--msft-border);border-radius:22px;background:var(--msft-card);box-shadow:var(--msft-shadow)}
.msft-choice-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.msft-choice h3{margin:4px 0 4px!important;color:var(--msft-text)!important;font-size:27px!important;line-height:1.18!important;letter-spacing:-.018em}
.msft-choice p{margin:0;color:var(--msft-muted);font-size:16px}
.msft-action-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.msft-action-button{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 26px;
  align-items:center;
  gap:12px;
  min-height:98px;
  padding:17px;
  border:1px solid var(--msft-border);
  border-radius:18px;
  background:#fff;
  color:var(--msft-text)!important;
  text-decoration:none!important;
  text-align:left;
  box-shadow:0 5px 16px rgba(28,46,70,.04);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.msft-action-button:visited{color:var(--msft-text)!important}
.msft-action-button:hover,.msft-action-button:focus-visible{transform:translateY(-2px);border-color:#a9c2f6;background:#fbfdff;box-shadow:0 11px 26px rgba(37,99,235,.10);outline:none}
.msft-action-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--msft-accent-soft);font-size:25px;line-height:1}
.msft-action-refill .msft-action-icon{background:#e9f8f2}
.msft-action-recent .msft-action-icon{background:#f2efff}
.msft-action-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
.msft-action-copy strong{color:var(--msft-text);font-size:17px;line-height:1.25;font-weight:850}
.msft-action-copy small{color:var(--msft-muted);font-size:14px;line-height:1.35;font-weight:600}
.msft-action-chevron{color:#8ca0b7;font-size:29px;line-height:1;font-weight:500}

/* Vorgangskarten */
.msft-operation-panels{margin:16px 0 4px}
.msft-operation-panel{display:none;scroll-margin-top:16px}
.msft-operation-panel:target{display:block}
.msft-operation-card{position:relative;padding:28px;border:1px solid var(--msft-border);border-radius:22px;background:var(--msft-card);box-shadow:var(--msft-shadow);overflow:visible}
.msft-operation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #edf1f5}
.msft-operation-header h3{margin:4px 0 6px!important;color:var(--msft-text)!important;font-size:28px!important;line-height:1.15!important;letter-spacing:-.02em}
.msft-operation-header p{max-width:760px;margin:0;color:var(--msft-muted);font-size:16px;line-height:1.55}
.msft-panel-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--msft-border);border-radius:14px;background:#f8fafc;color:#42546a!important;text-decoration:none!important;font-size:28px;font-weight:500;line-height:1;transition:background .15s ease,border-color .15s ease}
.msft-panel-close:hover,.msft-panel-close:focus-visible{border-color:#b7c6d7;background:#edf2f7;outline:none}

/* Formulare */
.msft-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.msft-form label,.msft-field{display:flex;min-width:0;flex-direction:column;gap:7px;color:var(--msft-text);font-size:16px;font-weight:780}
.msft-field>label{display:block;margin:0!important;padding:0!important;font:inherit;color:inherit}
.msft-form input,.msft-form select,.msft-form textarea{
  width:100%;
  min-height:56px;
  margin:0!important;
  padding:13px 14px;
  border:1px solid var(--msft-border-strong);
  border-radius:13px;
  background:#fff;
  color:var(--msft-text);
  font:inherit;
  font-size:18px!important;
  line-height:1.3;
  box-shadow:0 1px 2px rgba(20,40,60,.03) inset;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.msft-form input::placeholder,.msft-form textarea::placeholder{color:#9aa9b9;opacity:1}
.msft-form textarea{min-height:104px;resize:vertical}
.msft-form input:focus,.msft-form select:focus,.msft-form textarea:focus{border-color:#6f9df4;outline:none;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.msft-form input[readonly]{border-color:#dbe3ec;background:#f2f5f8;color:#536275}
.msft-readonly,.msft-calculated{display:flex;align-items:center;min-height:56px;padding:13px 14px;border:1px solid #e0e6ed;border-radius:13px;background:#f4f7fa;color:#44546a;font-size:18px;font-weight:750}
.msft-calculated{border-color:#cfe0ff;background:#eef5ff;color:#173a68}
.msft-calculated strong{margin-right:6px;color:#123c75;font-size:25px;font-weight:900}
.msft-help{color:var(--msft-muted);font-size:14px;font-weight:520;line-height:1.45}
.msft-span-2{grid-column:1/-1}
.msft-inline-action{display:inline-flex;align-items:center;align-self:flex-start;margin-top:3px;padding:9px 12px;border:1px solid #cfe0ff;border-radius:11px;background:#f1f6ff;color:var(--msft-accent)!important;text-decoration:none!important;font-size:15px;font-weight:800}
.msft-inline-action:hover,.msft-inline-action:focus-visible{border-color:#a9c5fa;background:#e7f0ff;outline:none}
.msft-form-actions{display:flex;justify-content:flex-end;gap:11px;margin-top:24px;padding-top:20px;border-top:1px solid #edf1f5}
.msft-primary,.msft-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:12px 20px;border-radius:13px;font-family:inherit;font-size:17px;font-weight:850;cursor:pointer;text-decoration:none!important;transition:transform .12s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}
.msft-primary{border:1px solid var(--msft-accent);background:var(--msft-accent);color:#fff!important;box-shadow:0 7px 16px rgba(37,99,235,.18)}
.msft-primary:hover,.msft-primary:focus-visible{transform:translateY(-1px);border-color:var(--msft-accent-dark);background:var(--msft-accent-dark);outline:none;box-shadow:0 9px 20px rgba(37,99,235,.22)}
.msft-secondary{border:1px solid var(--msft-border-strong);background:#fff;color:#34465b!important}
.msft-secondary:hover,.msft-secondary:focus-visible{border-color:#a7b6c8;background:#f5f7fa;outline:none}
.msft-link-button{text-decoration:none!important}

/* Autocomplete – Desktop */
.msft-combobox,.msft-person-combobox{position:relative!important;min-width:0;overflow:visible!important;isolation:isolate;z-index:5}
.msft-combobox:focus-within,.msft-person-combobox:focus-within,.msft-combobox.is-open,.msft-person-combobox.is-open{z-index:1000}
.msft-asset-search,.msft-person-search{background-color:#fff!important}
.msft-suggestions{
  position:absolute!important;
  z-index:1001!important;
  top:calc(100% + 7px)!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  max-height:380px!important;
  margin:0!important;
  padding:7px!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  border:1px solid #aebdd0!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 18px 42px rgba(20,40,65,.20)!important;
}
.msft-suggestions[hidden],.msft-suggestion[hidden]{display:none!important}
.msft-suggestions .msft-suggestion{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:flex!important;
  width:100%!important;
  min-height:60px!important;
  margin:0 0 4px!important;
  padding:12px 13px!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:2px!important;
  border:0!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--msft-text)!important;
  text-align:left!important;
  text-transform:none!important;
  letter-spacing:normal!important;
  font-family:inherit!important;
  opacity:1!important;
  visibility:visible!important;
  white-space:normal!important;
  touch-action:manipulation;
  cursor:pointer;
}
.msft-suggestions .msft-suggestion:last-child{margin-bottom:0!important}
.msft-suggestions .msft-suggestion:hover,.msft-suggestions .msft-suggestion:focus,.msft-suggestions .msft-suggestion.is-active{background:#edf4ff!important;color:var(--msft-text)!important;outline:none!important}
.msft-suggestions .msft-suggestion strong{display:block!important;margin:0!important;padding:0!important;color:var(--msft-text)!important;font-size:18px!important;font-weight:850!important;line-height:1.25!important;opacity:1!important}
.msft-suggestions .msft-suggestion span{display:block!important;margin:0!important;padding:0!important;color:#607187!important;font-size:15px!important;font-weight:600!important;line-height:1.35!important;opacity:1!important}

/* Meldungen */
.msft-notice{margin:14px 0;padding:14px 16px;border-radius:14px;font-size:16px;line-height:1.5}
.msft-notice-success{border:1px solid #a6dcc1;background:#ecf9f2;color:#0f6840}
.msft-notice-error{border:1px solid #f0b8b3;background:#fff0ef;color:#8f2018}
.msft-notice-warning{border:1px solid #ead08b;background:#fff8df;color:#725000}
.msft-notice-info{border:1px solid #bbd5f6;background:#eef6ff;color:#21527f}

/* Tabellen */
.msft-table-wrap{width:100%;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--msft-border);border-radius:14px;background:#fff}
.msft-table{width:100%;min-width:760px;border-collapse:collapse;font-size:15px}
.msft-table th,.msft-table td{padding:12px 13px;border-bottom:1px solid #edf1f4;text-align:left;vertical-align:top}
.msft-table th{background:#f5f8fb;color:#4a5b70;font-weight:820}
.msft-table tr:last-child td{border-bottom:0}
.msft-void{opacity:.55;text-decoration:line-through}

/* Gesperrter Zugang */
.msft-access-locked{max-width:680px;margin:50px auto;padding:38px 30px;border:1px solid var(--msft-border);border-radius:24px;background:#fff;text-align:center;box-shadow:var(--msft-shadow)}
.msft-access-locked h2{margin:8px 0 10px!important;color:var(--msft-text)!important;font-size:30px!important;line-height:1.2!important}
.msft-access-locked p{margin:0;color:var(--msft-muted);font-size:18px;line-height:1.55}
.msft-lock-icon{font-size:46px;line-height:1}

/* Mobile */
@media(max-width:760px){
  .msft-app{margin:0 auto;padding:10px;border-radius:0;background:#f3f6fa;font-size:17px}
  .msft-hero{min-height:auto;padding:24px 20px;border-radius:20px;gap:14px}
  .msft-hero-meta{margin-bottom:13px;font-size:13px}
  .msft-hero h2{font-size:30px!important}
  .msft-hero p{font-size:16px;line-height:1.5}
  .msft-hero-mark{display:none}

  .msft-kpis{grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
  .msft-kpi{min-height:102px;padding:16px;border-radius:16px}
  .msft-kpi:nth-child(3):last-child{grid-column:1/-1;min-height:88px}
  .msft-kpi strong{font-size:28px}
  .msft-kpi span{font-size:14px}

  .msft-choice{margin:12px 0;padding:18px 14px;border-radius:18px}
  .msft-choice h3{font-size:24px!important}
  .msft-choice p{font-size:15px}
  .msft-action-nav{grid-template-columns:1fr;gap:9px;margin-top:15px}
  .msft-action-button{grid-template-columns:50px minmax(0,1fr) 24px;min-height:82px;padding:13px 14px;border-radius:16px}
  .msft-action-icon{width:50px;height:50px;border-radius:14px;font-size:24px}
  .msft-action-copy strong{font-size:18px}
  .msft-action-copy small{font-size:14px}

  .msft-operation-panels{margin:12px 0 22px}
  .msft-operation-panel{scroll-margin-top:6px}
  .msft-operation-card{padding:20px 14px;border-radius:18px;box-shadow:0 7px 24px rgba(25,43,66,.07)}
  .msft-operation-header{gap:10px;margin-bottom:20px;padding-bottom:17px}
  .msft-operation-header h3{font-size:25px!important}
  .msft-operation-header p{font-size:15px}
  .msft-panel-close{flex-basis:44px;width:44px;height:44px;border-radius:13px;font-size:27px}

  .msft-grid{grid-template-columns:1fr;gap:17px}
  .msft-span-2{grid-column:auto}
  .msft-form label,.msft-field{font-size:17px}
  .msft-form input,.msft-form select,.msft-form textarea{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:auto!important;width:100%!important;max-width:100%!important;min-height:58px!important;padding:14px!important;border-radius:13px;font-size:18px!important;-webkit-appearance:none}
  .msft-form input[type="datetime-local"]{-webkit-appearance:auto}
  .msft-form select{-webkit-appearance:auto!important;appearance:auto!important}
  .msft-form input[type="hidden"]{display:none!important}
  .msft-help{font-size:14px}
  .msft-readonly,.msft-calculated{min-height:58px;font-size:18px}
  .msft-inline-action{min-height:44px;padding:10px 12px;font-size:16px}
  .msft-form-actions{position:static!important;bottom:auto!important;display:flex;flex-direction:column-reverse;gap:9px;margin-top:22px;padding-top:18px;background:transparent!important}
  .msft-primary,.msft-secondary{width:100%;min-height:58px;font-size:18px}

  /*
   * Mobil bewusst KEIN schwebendes Dropdown: Die Treffer liegen im normalen
   * Dokumentfluss direkt unter dem Feld. Dadurch gibt es weder Theme-Overflow-
   * Probleme noch Touch/Blur-Rennen mit der Bildschirmtastatur.
   */
  .msft-combobox,.msft-person-combobox{position:relative!important;z-index:auto!important;isolation:auto!important}
  .msft-combobox.is-open,.msft-person-combobox.is-open{z-index:auto!important}
  .msft-suggestions{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    max-height:42vh!important;
    margin:8px 0 0!important;
    padding:6px!important;
    border:1px solid #aebdd0!important;
    border-radius:13px!important;
    box-shadow:0 8px 22px rgba(20,40,65,.12)!important;
    overflow-y:auto!important;
  }
  .msft-suggestions .msft-suggestion{min-height:66px!important;padding:14px!important;border-radius:9px!important}
  .msft-suggestions .msft-suggestion strong{font-size:20px!important}
  .msft-suggestions .msft-suggestion span{font-size:16px!important}

  .msft-table{font-size:15px}
  .msft-access-locked{margin:18px 8px;padding:30px 20px;border-radius:20px}
  .msft-access-locked h2{font-size:27px!important}
  .msft-access-locked p{font-size:16px}
}

@media(max-width:420px){
  .msft-kpis{grid-template-columns:1fr}
  .msft-kpi:nth-child(3):last-child{grid-column:auto}
  .msft-kpi{min-height:92px}
}

@media(prefers-reduced-motion:reduce){
  .msft-action-button,.msft-primary,.msft-secondary{transition:none}
}

/* 1.4.2 – robuste Touch-/QR-WebView-Darstellung.
 * Nicht von der gemeldeten CSS-Viewportbreite abhängig: viele QR-Reader
 * melden eine Desktopbreite, obwohl sie auf einem Smartphone laufen. */
.msft-app.msft-touch-ui .msft-combobox,
.msft-app.msft-touch-ui .msft-person-combobox{
  position:relative!important;
  z-index:auto!important;
  isolation:auto!important;
  overflow:visible!important;
}
.msft-app.msft-touch-ui .msft-suggestions{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  max-height:min(440px,52dvh)!important;
  margin:10px 0 0!important;
  padding:8px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  box-sizing:border-box!important;
  border:2px solid #9fb3cc!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(18,38,62,.16)!important;
  font-size:20px!important;
  line-height:1.3!important;
  zoom:1!important;
}
.msft-app.msft-touch-ui .msft-suggestions:not([hidden]){display:block!important;visibility:visible!important;opacity:1!important}
.msft-app.msft-touch-ui .msft-suggestions .msft-suggestion{
  display:flex!important;
  width:100%!important;
  min-width:100%!important;
  min-height:72px!important;
  margin:0 0 6px!important;
  padding:15px 16px!important;
  box-sizing:border-box!important;
  border:1px solid #e0e7f0!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#18283c!important;
  font-size:20px!important;
  line-height:1.3!important;
  text-align:left!important;
  white-space:normal!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}
.msft-app.msft-touch-ui .msft-suggestions .msft-suggestion strong{
  display:block!important;
  color:#18283c!important;
  font-size:20px!important;
  line-height:1.25!important;
  font-weight:850!important;
}
.msft-app.msft-touch-ui .msft-suggestions .msft-suggestion span{
  display:block!important;
  margin-top:3px!important;
  color:#52657c!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:650!important;
}
.msft-app.msft-touch-ui .msft-suggestions .msft-suggestion:active,
.msft-app.msft-touch-ui .msft-suggestions .msft-suggestion.is-active{
  border-color:#9bbcf7!important;
  background:#edf4ff!important;
}

/* Bei eingebetteten QR-/In-App-Browsern nochmals etwas großzügiger. */
.msft-app.msft-inapp-ui .msft-suggestions{max-height:56dvh!important;padding:9px!important;border-width:2px!important}
.msft-app.msft-inapp-ui .msft-suggestions .msft-suggestion{min-height:76px!important;padding:16px!important}
.msft-app.msft-inapp-ui .msft-suggestions .msft-suggestion strong{font-size:21px!important}
.msft-app.msft-inapp-ui .msft-suggestions .msft-suggestion span{font-size:17px!important}

.msft-noscript-fallback{margin:10px 0;padding:12px;border:2px solid #9fb3cc;border-radius:14px;background:#f6f9fd}
.msft-noscript-fallback label{display:block;margin-bottom:7px;font-size:17px;font-weight:800}
.msft-noscript-fallback select{display:block;width:100%;min-height:60px;padding:12px;font-size:18px;border:1px solid #aebdd0;border-radius:12px;background:#fff;color:#18283c}

/* Browser-unabhängiger Fallback: normales Select öffnet auf Smartphones den
 * nativen großen System-Picker und bleibt auch in eingeschränkten QR-WebViews nutzbar. */
.msft-safe-picker{margin-top:10px;border:1px solid #cbd7e6;border-radius:12px;background:#f7faff;overflow:hidden}
.msft-safe-picker summary{display:flex;align-items:center;min-height:48px;padding:10px 13px;color:#2b4d77;font-size:15px;font-weight:800;cursor:pointer;list-style:none}
.msft-safe-picker summary::-webkit-details-marker{display:none}
.msft-safe-picker summary:after{content:"▾";margin-left:auto;font-size:16px}
.msft-safe-picker[open] summary:after{content:"▴"}
.msft-safe-picker-body{padding:0 10px 10px}
.msft-safe-picker select{display:block!important;width:100%!important;max-width:100%!important;min-height:56px!important;padding:12px!important;border:1px solid #aebdd0!important;border-radius:11px!important;background:#fff!important;color:#18283c!important;font-size:17px!important;font-weight:700!important;line-height:1.3!important;-webkit-appearance:auto!important;appearance:auto!important}
.msft-app.msft-touch-ui .msft-safe-picker summary{min-height:54px;padding:12px 14px;font-size:17px!important}
.msft-app.msft-touch-ui .msft-safe-picker select{min-height:62px!important;font-size:19px!important}
.msft-app.msft-inapp-ui .msft-safe-picker{border-width:2px}
.msft-app.msft-inapp-ui .msft-safe-picker summary{font-size:18px!important}
.msft-app.msft-inapp-ui .msft-safe-picker select{min-height:64px!important;font-size:20px!important}


/* 1.4.2 – große, live gefilterte Vorschlagslisten auch in QR-WebViews.
 * msft-mobile-like wird zusätzlich aus UA, screen.width und visualViewport
 * gesetzt, damit QR-Reader mit falsch gemeldeter CSS-Viewportbreite nicht
 * versehentlich die kompakte Desktopdarstellung erhalten. */
.msft-app.msft-mobile-like .msft-combobox,
.msft-app.msft-mobile-like .msft-person-combobox{
  position:relative!important;
  z-index:auto!important;
  isolation:auto!important;
  overflow:visible!important;
}
.msft-app.msft-mobile-like .msft-suggestions{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  min-height:0!important;
  max-height:min(520px,58vh)!important;
  margin:10px 0 0!important;
  padding:8px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  box-sizing:border-box!important;
  border:2px solid #8fa8c8!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(18,38,62,.18)!important;
  opacity:1!important;
  visibility:visible!important;
}
.msft-app.msft-mobile-like .msft-suggestions[hidden]{display:none!important}
.msft-app.msft-mobile-like .msft-suggestions:not([hidden]){display:block!important;min-height:88px!important}
.msft-app.msft-mobile-like .msft-suggestions .msft-suggestion{
  display:flex!important;
  width:100%!important;
  min-width:100%!important;
  min-height:82px!important;
  margin:0 0 7px!important;
  padding:16px 17px!important;
  box-sizing:border-box!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:4px!important;
  border:1px solid #d9e3ef!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#15283f!important;
  text-align:left!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  touch-action:manipulation!important;
}
.msft-app.msft-mobile-like .msft-suggestions .msft-suggestion:last-child{margin-bottom:0!important}
.msft-app.msft-mobile-like .msft-suggestions .msft-suggestion strong{
  display:block!important;
  color:#15283f!important;
  font-size:21px!important;
  line-height:1.25!important;
  font-weight:850!important;
  opacity:1!important;
}
.msft-app.msft-mobile-like .msft-suggestions .msft-suggestion span{
  display:block!important;
  margin:0!important;
  color:#536981!important;
  font-size:17px!important;
  line-height:1.35!important;
  font-weight:650!important;
  opacity:1!important;
}
.msft-app.msft-mobile-like .msft-suggestions .msft-suggestion:active,
.msft-app.msft-mobile-like .msft-suggestions .msft-suggestion.is-active{
  border-color:#82a8ef!important;
  background:#eaf2ff!important;
}

/* Direkter CSS-Fallback, falls JavaScript den mobilen Kontext nicht erkennen
 * kann. Moderne Smartphone-/WebView-Engines unterstützen mindestens eine der
 * folgenden Media Queries. */
@media (pointer:coarse), (hover:none), (max-width:980px){
  .msft-app .msft-suggestions:not([hidden]){min-height:88px!important}
  .msft-app .msft-suggestions .msft-suggestion{min-height:78px!important;padding:15px 16px!important}
  .msft-app .msft-suggestions .msft-suggestion strong{font-size:20px!important}
  .msft-app .msft-suggestions .msft-suggestion span{font-size:16px!important}
}

/* 1.5.0 – Füllstand & Verbrauchsprognose */
.msft-tank-status{margin:14px 0 18px;padding:20px;border:1px solid #dbe4ef;border-radius:20px;background:linear-gradient(180deg,#fff,#f7faff);box-shadow:0 7px 24px rgba(25,43,66,.06)}
.msft-tank-status-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:13px}.msft-tank-status-head>div:first-child{display:flex;flex-direction:column;gap:3px}.msft-status-label{font-size:14px;font-weight:750;color:#66778c}.msft-tank-status-head strong{font-size:30px;line-height:1.1;color:#18283c}.msft-status-percent{font-size:24px;font-weight:850;color:#245c9e}
.msft-fuel-gauge{position:relative;height:22px;border-radius:999px;background:#e5ebf2;overflow:hidden;border:1px solid #d0dae6}.msft-fuel-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2f7bbd,#45a56d);transition:width .25s ease}.msft-fuel-warning-marker{position:absolute;top:-4px;bottom:-4px;width:3px;background:#b46b00;box-shadow:0 0 0 2px rgba(255,255,255,.8)}.msft-gauge-scale{display:flex;justify-content:space-between;margin-top:6px;font-size:12px;font-weight:650;color:#748399}
.msft-forecast-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.msft-forecast-grid>div{padding:13px 14px;border-radius:14px;background:#fff;border:1px solid #e1e8f0}.msft-forecast-grid span{display:block;font-size:13px;font-weight:700;color:#6d7d91}.msft-forecast-grid strong{display:block;margin-top:4px;font-size:17px;color:#1d3047}
.msft-receipt-field input[type=file]{min-height:auto!important;padding:12px!important;background:#f8fafc!important}
@media(max-width:760px){.msft-tank-status{padding:17px 14px;border-radius:18px}.msft-tank-status-head strong{font-size:27px}.msft-status-percent{font-size:22px}.msft-fuel-gauge{height:25px}.msft-forecast-grid{grid-template-columns:1fr}.msft-forecast-grid>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.msft-forecast-grid strong{margin-top:0;text-align:right}}
.msft-receipt-field{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.msft-receipt-field label{min-width:0}@media(max-width:760px){.msft-receipt-field{grid-template-columns:1fr}}

/* 1.6.0 – Offline-Status */
.msft-offline-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px;padding:12px 14px;border:1px solid #efc56c;border-radius:14px;background:#fff7df;color:#6f4d00;font-size:15px;line-height:1.4}
.msft-offline-bar[hidden]{display:none!important}
.msft-offline-bar strong{font-weight:900}
.msft-offline-bar.is-online{border-color:#9ed6bc;background:#edf9f3;color:#155f3d}
.msft-offline-queue{margin-left:auto;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.72);font-weight:850}
@media(max-width:760px){.msft-offline-bar{position:sticky;top:6px;z-index:1200;font-size:16px}.msft-offline-queue{margin-left:0}}

/* 1.8.0 – Personenberechtigungen */
.msft-warning-text{display:block;padding:11px 13px;border:1px solid #e9c56c;border-radius:12px;background:#fff7df;color:#6f4d00!important}

/* 1.12.0 – Beschaffungs- und Rechnungsdetails */
.msft-procurement{margin:14px 0 0;padding:14px 16px;border:1px solid #bdd4e8;border-radius:15px;background:#f4f9ff;color:#1d344c}
.msft-procurement.is-warning{border-color:#e3bd67;background:#fff7df}
.msft-procurement span{display:block;color:#657990;font-size:12px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.msft-procurement strong{display:block;margin-top:3px;font-size:17px;line-height:1.3;color:#173650}
.msft-procurement small{display:block;margin-top:4px;color:#687b90;font-size:13px;line-height:1.4}
.msft-refill-details{margin-top:2px;border:1px solid #d8e2ed;border-radius:14px;background:#fafcff;overflow:hidden}
.msft-refill-details>summary{cursor:pointer;list-style:none;padding:14px 16px;font-size:16px;font-weight:800;color:#254868;background:#f5f9fd}
.msft-refill-details>summary::-webkit-details-marker{display:none}
.msft-refill-details>summary:after{content:'+';float:right;font-size:20px;line-height:1}
.msft-refill-details[open]>summary:after{content:'−'}
.msft-refill-details>.msft-grid{padding:14px 16px 16px;border-top:1px solid #e2e9f1}
@media(max-width:760px){.msft-refill-details>summary{min-height:54px;display:flex;align-items:center;justify-content:space-between;font-size:17px}.msft-refill-details>summary:after{float:none}.msft-refill-details>.msft-grid{padding:14px}}

/* 1.16.0 – flexible Entnahme-Erfassung */
.msft-segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;border-radius:14px;background:#eef2f6;border:1px solid #d9e0e7}
.msft-entry-choice{appearance:none;border:0;border-radius:10px;background:transparent;color:#334155;font:inherit;font-weight:700;min-height:48px;padding:10px 14px;cursor:pointer}
.msft-entry-choice.is-active{background:#fff;color:#0f172a;box-shadow:0 2px 8px rgba(15,23,42,.12)}
.msft-meter-end-wrap[hidden],.msft-quantity-entry-wrap[hidden]{display:none!important}
.msft-meter-end-preview{display:block;margin-top:7px;font-weight:700;color:#334155}
@media (max-width:640px),(pointer:coarse){.msft-segmented{gap:6px}.msft-entry-choice{min-height:58px;font-size:18px}.msft-meter-end-preview{font-size:16px;line-height:1.4}}
