/* Zeitkommando V117.12 – durchgaengiges Vertragsseiten-Design
   Ziel: Firmenportal, Plattformverwaltung, Login, Update-/Installationsseiten und
   eigenstaendige Portal-Seiten wirken wie die freigegebene Seite "Vertrag & Abrechnung".
   Reine Darstellung – keine Fachlogik. */

:root{
  --zk-blue:#0b6ff4;
  --zk-blue-strong:#075dcc;
  --zk-blue-deep:#143a68;
  --zk-blue-soft:#edf6ff;
  --zk-blue-line:#d4e7ff;
  --zk-ink:#10213a;
  --zk-muted:#65758f;
  --zk-muted-2:#8492a8;
  --zk-line:#dfe7f1;
  --zk-surface:#ffffff;
  --zk-surface-soft:#f6f9fd;
  --zk-bg:#f2f6fb;
  --zk-green:#078454;
  --zk-green-soft:#e9fbf2;
  --zk-green-line:#c9f1dd;
  --zk-red:#b42318;
  --zk-red-soft:#fff0ef;
  --zk-amber:#9b5a00;
  --zk-amber-soft:#fff7e8;
  --zk-radius:20px;
  --zk-radius-sm:12px;
  --zk-shadow:0 18px 50px rgba(26,58,94,.075);
  --zk-shadow-soft:0 8px 24px rgba(26,58,94,.055);
}

@media screen {
  /* =========================================================
     Grundflaeche / Typografie – exakt dieselbe Richtung wie Vertrag
     ========================================================= */
  html{background:#f2f6fb;}
  body.app-body,
  body.platform-body,
  body.auth,
  body.privacy-public,
  body.privacy-doc-body{
    margin:0;
    min-height:100vh;
    color:var(--zk-ink) !important;
    background:
      radial-gradient(circle at 72% -15%,rgba(11,111,244,.08),transparent 36rem),
      linear-gradient(180deg,#f8fbff 0%,#f2f6fb 100%) !important;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  }
  body.app-body *,body.platform-body *,body.auth *,body.privacy-public *,body.privacy-doc-body *{box-sizing:border-box;}
  body.app-body h1,body.platform-body h1,body.auth h1,body.privacy-public h1,body.privacy-doc-body h1,
  body.app-body h2,body.platform-body h2,body.auth h2,body.privacy-public h2,body.privacy-doc-body h2{
    color:var(--zk-ink);
    letter-spacing:-.035em;
  }
  body.app-body p,body.platform-body p,body.auth p,body.privacy-public p,body.privacy-doc-body p{color:var(--zk-muted);}
  body.app-body a,body.platform-body a,body.auth a{transition:color .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease;}

  /* =========================================================
     Firmenportal – Desktop wird von Seitenleiste zu Vertrags-Topleiste
     ========================================================= */
  .app-body .app-layout{display:block !important;min-height:100vh;}
  .app-body .sidebar{
    position:sticky !important;
    inset:auto !important;
    top:0 !important;
    z-index:45 !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    display:grid !important;
    grid-template-columns:auto minmax(220px,1fr) auto !important;
    grid-template-areas:
      "brand tenant footer"
      "nav nav nav" !important;
    align-items:center !important;
    gap:12px 28px !important;
    padding:14px max(24px,calc((100vw - 1320px)/2)) 0 !important;
    border:0 !important;
    border-bottom:1px solid #dbe5f0 !important;
    background:rgba(248,251,255,.95) !important;
    box-shadow:0 8px 28px rgba(26,58,94,.055) !important;
    backdrop-filter:blur(18px) !important;
    overflow:visible !important;
  }
  .app-body .sidebar-brand{
    grid-area:brand;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    min-width:190px;
  }
  .app-body .sidebar-brand>span,
  .app-body .sidebar-company-logo{
    width:44px !important;height:44px !important;flex:0 0 44px !important;
    border:0 !important;border-radius:14px !important;
    background:linear-gradient(145deg,#1680ff,#0b64dc) !important;
    color:#fff !important;box-shadow:0 9px 22px rgba(11,111,244,.20) !important;
    object-fit:contain !important;
  }
  .app-body .sidebar-company-logo{padding:5px;background:#fff !important;border:1px solid #d8e8fa !important;}
  .app-body .sidebar-brand>div{display:grid;gap:1px;}
  .app-body .sidebar-brand strong{font-size:1rem !important;font-weight:840 !important;color:var(--zk-ink) !important;}
  .app-body .sidebar-brand small{font-size:.67rem !important;color:var(--zk-muted-2) !important;letter-spacing:.11em !important;text-transform:uppercase !important;}

  .app-body .tenant-chip{
    grid-area:tenant;
    justify-self:start;
    display:flex !important;align-items:center !important;gap:10px !important;
    width:auto !important;max-width:420px !important;
    margin:0 !important;padding:8px 12px !important;
    border:1px solid #d7e7fb !important;border-radius:999px !important;
    background:#edf5ff !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7) !important;
  }
  .app-body .tenant-logo{width:30px !important;height:30px !important;border-radius:50% !important;background:#fff !important;color:var(--zk-blue) !important;border:1px solid #dbe9f8 !important;}
  .app-body .tenant-chip>div:last-child{display:flex !important;align-items:center !important;gap:7px !important;min-width:0 !important;}
  .app-body .tenant-chip strong{font-size:.78rem !important;color:#164c8c !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;}
  .app-body .tenant-chip small{font-size:.68rem !important;color:#6b8eb8 !important;white-space:nowrap !important;}

  .app-body .side-nav{
    grid-area:nav;
    display:flex !important;
    align-items:stretch !important;
    gap:3px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border-top:1px solid #e6edf5 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:thin;
  }
  .app-body .side-nav a{
    position:relative;
    flex:0 0 auto !important;
    min-height:62px !important;
    display:flex !important;align-items:center !important;justify-content:center !important;gap:9px !important;
    padding:0 18px !important;
    border:0 !important;border-radius:14px 14px 0 0 !important;
    background:transparent !important;color:#65758e !important;
    font-size:.86rem !important;font-weight:760 !important;text-decoration:none !important;
    box-shadow:none !important;
  }
  .app-body .side-nav a:hover{background:rgba(255,255,255,.65) !important;color:var(--zk-blue) !important;}
  .app-body .side-nav a.active{background:#fff !important;color:var(--zk-blue) !important;box-shadow:0 8px 22px rgba(44,75,118,.055) !important;}
  .app-body .side-nav a.active::after{
    content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--zk-blue);
  }
  .app-body .side-nav i{
    width:28px !important;height:28px !important;display:grid !important;place-items:center !important;
    border:0 !important;border-radius:9px !important;background:#f1f6fd !important;color:#617999 !important;
    font-style:normal !important;font-size:.85rem !important;
  }
  .app-body .side-nav a.active i{background:#edf6ff !important;color:var(--zk-blue) !important;}

  .app-body .sidebar-footer{
    grid-area:footer;
    display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:8px !important;
    margin:0 !important;padding:0 !important;border:0 !important;
  }
  .app-body .mini-profile{display:flex !important;align-items:center !important;gap:9px !important;padding:5px 8px !important;border-radius:12px !important;text-decoration:none !important;}
  .app-body .mini-profile:hover{background:#fff !important;box-shadow:var(--zk-shadow-soft) !important;}
  .app-body .mini-profile>span{width:36px !important;height:36px !important;border-radius:50% !important;background:#edf6ff !important;color:var(--zk-blue) !important;border:1px solid #d8e8fb !important;}
  .app-body .mini-profile strong{font-size:.76rem !important;color:var(--zk-ink) !important;}
  .app-body .mini-profile small{font-size:.64rem !important;color:var(--zk-muted) !important;}
  .app-body .sidebar-footer form{margin:0 !important;}
  .app-body .logout-button{
    margin:0 !important;padding:9px 11px !important;border:1px solid #e2eaf3 !important;border-radius:11px !important;
    background:#fff !important;color:#65758f !important;font-weight:720 !important;box-shadow:none !important;
  }
  .app-body .logout-button:hover{border-color:#cfe0f5 !important;color:var(--zk-blue) !important;background:#f8fbff !important;}
  .app-body .sidebar-legal-link{display:none !important;}

  .app-body .workspace{margin-left:0 !important;min-width:0 !important;}
  .app-body .topbar{display:none !important;}
  .app-body .content,
  .app-body .standalone-app-content{
    width:min(1320px,calc(100% - 48px)) !important;
    max-width:1320px !important;
    margin:0 auto !important;
    padding:34px 0 76px !important;
  }

  /* =========================================================
     Seitentitel = offener Hero der Vertragsseite
     ========================================================= */
  .app-body .content>.section-title,
  .app-body .standalone-app-content>.section-title,
  .app-body .content>.welcome-row{
    position:relative !important;
    display:flex !important;align-items:flex-end !important;justify-content:space-between !important;gap:26px !important;
    margin:0 0 26px !important;
    padding:7px 0 26px !important;
    border:0 !important;border-bottom:1px solid #dfe7f1 !important;
    background:transparent !important;box-shadow:none !important;
  }
  .app-body .content>.section-title>div:first-child,
  .app-body .content>.welcome-row>div:first-child{min-width:0 !important;}
  .app-body .content>.section-title h1,
  .app-body .content>.welcome-row h1{
    margin:0 !important;max-width:900px !important;
    color:#0d1f38 !important;font-size:clamp(2.15rem,4vw,3.4rem) !important;line-height:1.03 !important;
    letter-spacing:-.045em !important;font-weight:830 !important;
  }
  .app-body .content>.section-title h1::before,
  .app-body .content>.welcome-row h1::before{
    content:"ZEITKOMMANDO";
    display:block;margin:0 0 15px;color:var(--zk-blue);font-size:.76rem;line-height:1;font-weight:850;letter-spacing:.12em;text-transform:uppercase;
  }
  .app-body .content>.section-title .eyebrow + h1::before,
  .app-body .content>.welcome-row .eyebrow + h1::before{display:none;}
  .app-body .content>.section-title p,
  .app-body .content>.welcome-row p{
    max-width:850px !important;margin:14px 0 0 !important;color:#64748d !important;font-size:1rem !important;line-height:1.58 !important;
  }
  .app-body .content>.section-title .eyebrow,
  .app-body .content>.welcome-row .eyebrow{
    margin:0 0 16px !important;color:var(--zk-blue) !important;font-size:.76rem !important;font-weight:850 !important;letter-spacing:.12em !important;text-transform:uppercase !important;
  }
  .app-body .section-actions{display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:9px !important;flex-wrap:wrap !important;}

  /* Untertitel in Panels bleiben kompakt und nicht wie Seiten-Hero */
  .app-body .panel>.section-title,
  .app-body .card>.section-title,
  .app-body .modal>.section-title{
    display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:18px !important;
    margin:0 0 18px !important;padding:0 0 16px !important;border:0 !important;border-bottom:1px solid #e7edf4 !important;
    background:transparent !important;box-shadow:none !important;
  }
  .app-body .panel>.section-title h1::before,.app-body .card>.section-title h1::before{display:none !important;}
  .app-body .panel>.section-title h2,.app-body .card>.section-title h2{margin:0 !important;font-size:1.3rem !important;line-height:1.2 !important;font-weight:820 !important;color:#16314f !important;}
  .app-body .panel>.section-title p,.app-body .card>.section-title p{margin:5px 0 0 !important;font-size:.86rem !important;line-height:1.5 !important;color:var(--zk-muted) !important;}

  /* =========================================================
     Bereichsnavigation = Vertragsseiten-Tabs
     ========================================================= */
  .app-body .company-subnav,
  .app-body .accounting-subnav,
  .app-body .calendar-subnav,
  .app-body .watchbook-subnav,
  .app-body .employee-subnav,
  .app-body .timesheet-subnav,
  .app-body .work-records-subnav,
  .app-body .audit-subnav,
  .app-body .datev-subnav{
    position:relative !important;
    display:flex !important;align-items:stretch !important;gap:0 !important;
    width:100% !important;max-width:none !important;
    margin:0 0 28px !important;padding:0 !important;
    border:0 !important;border-bottom:1px solid #dbe5f0 !important;border-radius:0 !important;
    background:rgba(247,250,254,.90) !important;box-shadow:none !important;overflow-x:auto !important;
  }
  .app-body .company-subnav a{
    position:relative !important;flex:0 0 auto !important;
    min-height:64px !important;display:flex !important;align-items:center !important;justify-content:center !important;
    padding:0 18px !important;border:0 !important;border-radius:14px 14px 0 0 !important;
    background:transparent !important;color:#65758e !important;text-decoration:none !important;font-size:.88rem !important;font-weight:760 !important;
  }
  .app-body .company-subnav a:hover{background:rgba(255,255,255,.62) !important;color:var(--zk-blue) !important;}
  .app-body .company-subnav a.active{background:#fff !important;color:var(--zk-blue) !important;box-shadow:0 8px 22px rgba(44,75,118,.055) !important;}
  .app-body .company-subnav a.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--zk-blue);}

  /* =========================================================
     Karten / Panels / Statistiken – Vertragsseiten-Weissraum
     ========================================================= */
  .app-body .panel,
  .app-body .card,
  .app-body .metric-card,
  .app-body .dashboard-clock-card,
  .app-body .dashboard-sales-hero,
  .app-body .settings-card,
  .app-body .form-panel,
  .app-body .category-card,
  .app-body .category-line,
  .app-body .self-shift-card,
  .app-body .support-card,
  .app-body .swap-card,
  .app-body .doc-template-card,
  .app-body .instruction-card{
    border:1px solid #dfe7f1 !important;
    border-radius:20px !important;
    background:rgba(255,255,255,.98) !important;
    box-shadow:var(--zk-shadow) !important;
  }
  .app-body .panel,.app-body .card,.app-body .settings-card,.app-body .form-panel{padding:24px !important;}
  .app-body .panel+.panel,.app-body .card+.card{margin-top:18px !important;}

  .app-body .metrics-grid,.app-body .platform-kpi-grid{
    display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:14px !important;margin:0 0 18px !important;
  }
  .app-body .metric-card{padding:19px !important;gap:14px !important;align-items:center !important;min-height:112px !important;}
  .app-body .metric-card>i{width:44px !important;height:44px !important;border-radius:13px !important;background:#edf6ff !important;color:var(--zk-blue) !important;font-size:1rem !important;}
  .app-body .metric-card span{color:#718098 !important;font-size:.72rem !important;font-weight:760 !important;text-transform:uppercase !important;letter-spacing:.045em !important;}
  .app-body .metric-card strong{margin:4px 0 0 !important;color:#10213a !important;font-size:1.55rem !important;line-height:1 !important;font-weight:840 !important;}
  .app-body .metric-card small{margin-top:5px !important;color:#7d899c !important;font-size:.7rem !important;}

  /* Buttons wie Vertragsseite */
  .app-body .button,
  .app-body .primary-button,
  .platform-body .button,
  .auth .button{
    appearance:none !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;
    min-height:44px !important;padding:0 18px !important;
    border:1px solid transparent !important;border-radius:11px !important;
    background:var(--zk-blue) !important;color:#fff !important;text-decoration:none !important;
    font:inherit !important;font-size:.84rem !important;font-weight:800 !important;cursor:pointer !important;
    box-shadow:0 8px 18px rgba(11,111,244,.18) !important;
  }
  .app-body .button:hover,.platform-body .button:hover,.auth .button:hover{background:var(--zk-blue-strong) !important;transform:translateY(-1px) !important;box-shadow:0 10px 22px rgba(11,111,244,.23) !important;}
  .app-body .button.secondary,.platform-body .button.secondary,.auth .button.secondary{
    border-color:#d7e7fb !important;background:#edf5ff !important;color:#0a63d8 !important;box-shadow:none !important;
  }
  .app-body .button.secondary:hover,.platform-body .button.secondary:hover,.auth .button.secondary:hover{background:#e4f0ff !important;border-color:#c8ddf7 !important;}
  .app-body .button.danger,.platform-body .button.danger,.auth .button.danger{background:#fff0ef !important;border-color:#f4c7c3 !important;color:var(--zk-red) !important;box-shadow:none !important;}
  .app-body .compact-button,.platform-body .compact-button{min-height:38px !important;padding:0 13px !important;border-radius:10px !important;font-size:.78rem !important;}
  .app-body .textlink,.platform-body .textlink{color:var(--zk-blue-strong) !important;font-weight:760 !important;text-decoration:none !important;}
  .app-body .textlink:hover,.platform-body .textlink:hover{text-decoration:underline !important;}

  /* Inputs */
  .app-body input,.app-body select,.app-body textarea,
  .platform-body input,.platform-body select,.platform-body textarea,
  .auth input,.auth select,.auth textarea{
    width:100%;min-height:46px !important;padding:10px 12px !important;
    border:1px solid #d6e0eb !important;border-radius:12px !important;
    background:#fff !important;color:var(--zk-ink) !important;outline:none !important;
    box-shadow:inset 0 1px 0 rgba(16,36,63,.02) !important;
  }
  .app-body textarea,.platform-body textarea,.auth textarea{min-height:110px !important;resize:vertical;}
  .app-body input:focus,.app-body select:focus,.app-body textarea:focus,
  .platform-body input:focus,.platform-body select:focus,.platform-body textarea:focus,
  .auth input:focus,.auth select:focus,.auth textarea:focus{
    border-color:#7cb6ff !important;box-shadow:0 0 0 4px rgba(11,111,244,.09) !important;
  }
  .app-body label,.platform-body label,.auth label{color:#263b58 !important;font-weight:720 !important;}
  .app-body label>small,.platform-body label>small,.auth label>small{color:var(--zk-muted) !important;font-weight:500 !important;}

  /* Hinweise / Status-Chips */
  .app-body .notice,.platform-body .notice,.auth .notice,.privacy-public .notice,.privacy-doc-body .notice{
    border:1px solid #d7e7fb !important;border-radius:15px !important;background:#edf5ff !important;color:#164c8c !important;padding:14px 16px !important;box-shadow:none !important;
  }
  .app-body .notice.ok,.platform-body .notice.ok,.auth .notice.ok,.app-body .notice.success,.platform-body .notice.success{
    border-color:var(--zk-green-line) !important;background:var(--zk-green-soft) !important;color:#086e49 !important;
  }
  .app-body .notice.error,.platform-body .notice.error,.auth .notice.error{
    border-color:#f1cac6 !important;background:var(--zk-red-soft) !important;color:var(--zk-red) !important;
  }
  .app-body .notice.warning,.app-body .notice.warn,.platform-body .notice.warning,.platform-body .notice.warn{
    border-color:#f0dfb9 !important;background:var(--zk-amber-soft) !important;color:var(--zk-amber) !important;
  }
  .app-body .status,.app-body .badge,.platform-body .platform-state,.platform-body .platform-count{
    display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:6px !important;
    min-height:30px !important;padding:0 10px !important;border:1px solid #d7e7fb !important;border-radius:999px !important;
    background:#edf5ff !important;color:#0a63d8 !important;font-size:.72rem !important;font-weight:780 !important;white-space:nowrap !important;
  }

  /* Tabellen wie Rechnungsarchiv */
  .app-body .tablewrap,.platform-body .tablewrap{overflow:auto !important;border-radius:18px !important;}
  .app-body table,.platform-body table{width:100%;border-collapse:separate !important;border-spacing:0 !important;background:#fff !important;}
  .app-body th,.platform-body th{
    padding:12px 13px !important;border-bottom:1px solid #dbe5f0 !important;background:#f3f7fc !important;
    color:#4f6380 !important;font-size:.72rem !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:.035em !important;text-align:left !important;
  }
  .app-body td,.platform-body td{padding:13px !important;border-bottom:1px solid #edf1f6 !important;color:#26394f !important;vertical-align:middle !important;}
  .app-body tbody tr:last-child td,.platform-body tbody tr:last-child td{border-bottom:0 !important;}
  .app-body tbody tr:hover td,.platform-body tbody tr:hover td{background:#f9fbfe !important;}

  /* Detail- und Faktenfelder */
  .app-body .fact,.app-body .detail-row,.app-body .side-row,.app-body .summary-card,
  .platform-body .platform-invoice-facts>div{
    border:1px solid #e1e8f1 !important;border-radius:14px !important;background:#f9fbfe !important;
  }
  .app-body .empty,.app-body .empty-box,.platform-body .empty{
    padding:28px 20px !important;border:1px dashed #cfdae8 !important;border-radius:16px !important;background:#fbfdff !important;color:#758399 !important;text-align:center !important;
  }

  /* Kalender */
  .app-body .calendar-shell{padding:0 !important;overflow:hidden !important;}
  .app-body .calendar-toolbar{padding:18px 20px !important;border-bottom:1px solid #e2e9f2 !important;background:#fbfdff !important;}
  .app-body .calendar-view-switch{padding:4px !important;border-radius:12px !important;background:#edf2f8 !important;}
  .app-body .calendar-view-switch a{border-radius:9px !important;padding:8px 12px !important;color:#667791 !important;font-weight:760 !important;}
  .app-body .calendar-view-switch a.active{background:#fff !important;color:var(--zk-blue) !important;box-shadow:0 3px 10px rgba(28,58,92,.08) !important;}
  .app-body .calendar-weekdays{background:#f5f8fc !important;border-bottom:1px solid #e5ebf3 !important;}
  .app-body .day-cell{background:#fff !important;border-color:#e8eef5 !important;}
  .app-body .day-cell.today{background:#f5faff !important;}
  .app-body .calendar-event{border:1px solid color-mix(in srgb,var(--event-color,#0b6ff4) 26%,#dfe8f3) !important;border-radius:10px !important;box-shadow:0 4px 11px rgba(31,57,91,.04) !important;}

  /* Dialoge / Details */
  .app-body dialog,.app-body .modal,.platform-body dialog,.platform-body .modal{
    border:1px solid #dfe7f1 !important;border-radius:22px !important;background:#fff !important;box-shadow:0 28px 90px rgba(20,48,82,.22) !important;
  }
  .app-body details,.platform-body details{border-color:#e1e8f1;}
  .app-body details>summary,.platform-body details>summary{color:#1b3657;font-weight:760;}

  /* =========================================================
     Plattformverwaltung – gleiche Vertrags-Topleiste statt dunkler Sidebar
     ========================================================= */
  .platform-body .platform-layout{display:block !important;min-height:100vh !important;}
  .platform-body .platform-sidebar{
    position:sticky !important;inset:auto !important;top:0 !important;z-index:50 !important;
    width:100% !important;min-height:0 !important;height:auto !important;
    display:grid !important;grid-template-columns:auto minmax(0,1fr) auto !important;grid-template-areas:"logo footer footer" "nav nav nav" !important;
    gap:12px 24px !important;align-items:center !important;
    padding:14px max(24px,calc((100vw - 1320px)/2)) 0 !important;
    border:0 !important;border-bottom:1px solid #dbe5f0 !important;
    background:rgba(248,251,255,.95) !important;color:var(--zk-ink) !important;box-shadow:0 8px 28px rgba(26,58,94,.055) !important;backdrop-filter:blur(18px) !important;
  }
  .platform-body .platform-logo{grid-area:logo;display:flex !important;align-items:center !important;gap:11px !important;padding:0 !important;color:var(--zk-ink) !important;text-decoration:none !important;}
  .platform-body .platform-logo>span{width:44px !important;height:44px !important;border-radius:14px !important;background:linear-gradient(145deg,#1680ff,#0b64dc) !important;color:#fff !important;box-shadow:0 9px 22px rgba(11,111,244,.20) !important;}
  .platform-body .platform-logo strong{color:var(--zk-ink) !important;font-size:1rem !important;}.platform-body .platform-logo small{color:var(--zk-muted-2) !important;}
  .platform-body .platform-nav{
    grid-area:nav;display:grid !important;grid-template-columns:repeat(6,minmax(0,1fr)) !important;align-items:stretch !important;gap:4px 6px !important;
    width:100% !important;overflow:visible !important;
    margin:0 !important;padding:6px 0 8px !important;border-top:1px solid #e6edf5 !important;
  }
  .platform-body .platform-nav a{
    position:relative !important;min-width:0 !important;display:flex !important;grid-template-columns:none !important;align-items:center !important;justify-content:center !important;gap:8px !important;
    min-height:52px !important;padding:0 10px !important;border:1px solid transparent !important;border-radius:13px !important;
    background:transparent !important;color:#65758e !important;font-size:.78rem !important;font-weight:760 !important;text-decoration:none !important;
    white-space:nowrap !important;
  }
  .platform-body .platform-nav a:hover{background:#fff !important;color:var(--zk-blue) !important;}
  .platform-body .platform-nav i{width:28px !important;height:28px !important;display:grid !important;place-items:center !important;border-radius:9px !important;background:#f1f6fd !important;color:#617999 !important;font-style:normal !important;}
  .platform-body .platform-nav b{background:#edf6ff !important;color:var(--zk-blue) !important;border-radius:999px !important;padding:3px 7px !important;font-size:.63rem !important;}
  .platform-body .platform-nav b.is-alert{background:#fff0ef !important;color:var(--zk-red) !important;}
  .platform-body .platform-sidebar-footer{grid-area:footer !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:8px !important;margin:0 !important;padding:0 !important;border:0 !important;color:var(--zk-muted) !important;}
  .platform-body .platform-sidebar-footer>span,.platform-body .platform-sidebar-footer>small{display:none !important;}
  .platform-body .platform-sidebar-footer>strong{color:var(--zk-ink) !important;font-size:.76rem !important;}
  .platform-body .platform-sidebar-footer>a{display:inline-flex !important;align-items:center !important;min-height:36px !important;padding:0 10px !important;border-radius:10px !important;background:#edf5ff !important;color:var(--zk-blue) !important;text-decoration:none !important;font-size:.72rem !important;font-weight:760 !important;}
  .platform-body .platform-logout{min-height:36px !important;padding:0 10px !important;border:1px solid #e1e8f1 !important;border-radius:10px !important;background:#fff !important;color:#64748c !important;}
  .platform-body .platform-main{margin-left:0 !important;min-width:0 !important;}
  .platform-body .platform-topbar{display:none !important;}
  .platform-body .platform-content{width:min(1320px,calc(100% - 48px)) !important;max-width:1320px !important;margin:0 auto !important;padding:34px 0 80px !important;}
  .platform-body .platform-hero{
    display:grid !important;grid-template-columns:minmax(0,1fr) auto !important;align-items:end !important;gap:30px !important;
    margin:0 0 28px !important;padding:7px 0 26px !important;border:0 !important;border-bottom:1px solid #dfe7f1 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;
  }
  .platform-body .platform-hero .eyebrow{margin:0 0 16px !important;color:var(--zk-blue) !important;font-size:.76rem !important;font-weight:850 !important;letter-spacing:.12em !important;text-transform:uppercase !important;}
  .platform-body .platform-hero h1{margin:0 !important;font-size:clamp(2.15rem,4vw,3.4rem) !important;line-height:1.03 !important;font-weight:830 !important;letter-spacing:-.045em !important;color:#0d1f38 !important;}
  .platform-body .platform-hero p:not(.eyebrow){margin:14px 0 0 !important;max-width:850px !important;font-size:1rem !important;line-height:1.58 !important;color:#64748d !important;}
  .platform-body .platform-section{
    margin:18px 0 !important;padding:24px !important;border:1px solid #dfe7f1 !important;border-radius:20px !important;background:#fff !important;box-shadow:var(--zk-shadow) !important;
  }
  .platform-body .platform-section-head{padding-bottom:17px !important;margin-bottom:18px !important;border-bottom:1px solid #e7edf4 !important;}
  .platform-body .platform-section-head h2{font-size:1.45rem !important;margin:.15rem 0 .3rem !important;color:#16314f !important;}
  .platform-body .platform-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:14px !important;margin-bottom:18px !important;}
  .platform-body .platform-stat-grid>article,.platform-body .platform-stat-grid>a,
  .platform-body .platform-company-card,.platform-body .platform-db-card,.platform-body .platform-create-box{
    border:1px solid #dfe7f1 !important;border-radius:18px !important;background:#fff !important;box-shadow:var(--zk-shadow-soft) !important;
  }
  .platform-body .platform-stat-grid>article,.platform-body .platform-stat-grid>a{padding:18px !important;}

  /* =========================================================
     Login / 2FA / Update / Installer – gleiche offene Kartenoptik
     ========================================================= */
  body.auth{display:grid !important;place-items:center !important;padding:32px 16px !important;}
  body.auth .login,
  body.auth .card.login,
  body.auth .platform-login{
    width:min(520px,100%) !important;max-width:520px !important;
    margin:0 auto !important;padding:30px !important;
    border:1px solid #dfe7f1 !important;border-radius:24px !important;background:rgba(255,255,255,.98) !important;box-shadow:0 26px 80px rgba(20,48,82,.13) !important;
  }
  body.auth .brand{display:flex !important;align-items:center !important;gap:12px !important;margin-bottom:22px !important;}
  body.auth .brand>span{width:48px !important;height:48px !important;display:grid !important;place-items:center !important;border-radius:14px !important;background:linear-gradient(145deg,#1680ff,#0b64dc) !important;color:#fff !important;font-weight:850 !important;box-shadow:0 9px 22px rgba(11,111,244,.20) !important;}
  body.auth .brand strong{font-size:1.05rem !important;color:var(--zk-ink) !important;}
  body.auth .eyebrow{margin:0 0 13px !important;color:var(--zk-blue) !important;font-size:.75rem !important;font-weight:850 !important;letter-spacing:.12em !important;text-transform:uppercase !important;}
  body.auth h1{margin:0 0 12px !important;font-size:clamp(2rem,7vw,2.8rem) !important;line-height:1.05 !important;font-weight:830 !important;letter-spacing:-.045em !important;}
  body.auth form{display:grid !important;gap:14px !important;}
  body.auth form label{display:grid !important;gap:7px !important;}

  /* Datenschutz / Dokumentseiten */
  .privacy-public .privacy-shell,.privacy-doc-body .privacy-shell{width:min(1040px,calc(100% - 40px)) !important;margin:0 auto !important;padding:42px 0 72px !important;}
  .privacy-public .privacy-top,.privacy-doc-body .privacy-top{padding:0 0 24px !important;margin-bottom:24px !important;border-bottom:1px solid #dfe7f1 !important;}
  .privacy-public .privacy-card,.privacy-doc-body .privacy-card{padding:24px !important;border:1px solid #dfe7f1 !important;border-radius:20px !important;background:#fff !important;box-shadow:var(--zk-shadow) !important;}

  /* =========================================================
     Mobile – wieder als kompakter Drawer / Bottom Navigation
     ========================================================= */
  @media(max-width:900px){
    .app-body .mobile-menu{display:block !important;position:fixed !important;top:12px !important;left:12px !important;z-index:80 !important;width:42px !important;height:42px !important;padding:0 !important;border:0 !important;border-radius:12px !important;background:var(--zk-blue) !important;color:#fff !important;box-shadow:0 8px 20px rgba(11,111,244,.22) !important;}
    .app-body .sidebar{
      position:fixed !important;inset:0 auto 0 0 !important;top:0 !important;width:min(310px,88vw) !important;height:100dvh !important;
      display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:0 !important;
      padding:20px 14px !important;border-right:1px solid #dfe7f1 !important;border-bottom:0 !important;border-radius:0 !important;
      background:#fff !important;box-shadow:18px 0 60px rgba(20,48,82,.20) !important;
      transform:translateX(-108%) !important;transition:transform .22s ease !important;overflow:auto !important;
    }
    .app-body .sidebar.open{transform:translateX(0) !important;}
    .app-body .sidebar-brand{display:flex !important;margin:0 !important;padding:0 4px 18px !important;border-bottom:1px solid #edf1f6 !important;}
    .app-body .tenant-chip{display:flex !important;width:100% !important;max-width:none !important;margin:14px 0 !important;border-radius:14px !important;}
    .app-body .tenant-chip>div:last-child{display:grid !important;}
    .app-body .side-nav{display:grid !important;gap:4px !important;border:0 !important;padding:0 !important;overflow:visible !important;}
    .app-body .side-nav a{justify-content:flex-start !important;min-height:46px !important;padding:9px 11px !important;border-radius:12px !important;}
    .app-body .side-nav a.active{background:#edf6ff !important;box-shadow:none !important;}
    .app-body .side-nav a.active::after{display:none !important;}
    .app-body .sidebar-footer{display:grid !important;grid-template-columns:1fr !important;justify-items:stretch !important;gap:8px !important;margin-top:auto !important;padding-top:14px !important;border-top:1px solid #edf1f6 !important;}
    .app-body .mini-profile{justify-content:flex-start !important;}.app-body .logout-button{width:100% !important;}
    .app-body .content,.app-body .standalone-app-content{width:calc(100% - 28px) !important;padding:74px 0 42px !important;}
    .app-body .content>.section-title,.app-body .content>.welcome-row{display:grid !important;align-items:start !important;gap:16px !important;padding-bottom:20px !important;}
    .app-body .content>.section-title h1,.app-body .content>.welcome-row h1{font-size:clamp(2rem,10vw,2.7rem) !important;}
    .app-body .section-actions{justify-content:flex-start !important;}
    .app-body .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    .app-body .panel,.app-body .card,.app-body .settings-card,.app-body .form-panel{padding:18px !important;border-radius:18px !important;}
    .app-body .company-subnav{margin-bottom:20px !important;}
    .app-body .company-subnav a{min-height:54px !important;padding:0 14px !important;}

    .platform-body .platform-sidebar{position:relative !important;display:block !important;padding:14px !important;border-bottom:1px solid #dbe5f0 !important;}
    .platform-body .platform-logo{margin-bottom:12px !important;}.platform-body .platform-sidebar-footer{display:flex !important;flex-wrap:wrap !important;justify-content:flex-start !important;margin-bottom:10px !important;}
    .platform-body .platform-nav{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:6px !important;border:0 !important;padding-top:8px !important;}
    .platform-body .platform-nav a{min-height:48px !important;padding:0 10px !important;border-radius:12px !important;background:#f8fbff !important;white-space:normal !important;text-align:center !important;}
    .platform-body .platform-content{width:calc(100% - 28px) !important;padding:26px 0 50px !important;}
    .platform-body .platform-hero{grid-template-columns:1fr !important;align-items:start !important;}
    .platform-body .platform-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  }

  @media(max-width:620px){
    .platform-body .platform-nav{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    .app-body .metrics-grid,.platform-body .platform-stat-grid{grid-template-columns:1fr !important;}
    .app-body .content,.app-body .standalone-app-content{width:calc(100% - 20px) !important;}
    body.auth .login,body.auth .card.login,body.auth .platform-login{padding:22px !important;border-radius:20px !important;}
    .privacy-public .privacy-shell,.privacy-doc-body .privacy-shell{width:calc(100% - 24px) !important;}
  }
}

@media screen {
  .app-body .portal-quick-action{
    position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;
    min-height:38px;padding:0 10px;border:1px solid #e1e8f1;border-radius:11px;background:#fff;color:#5f718b;
    text-decoration:none;font-size:.72rem;font-weight:760;box-shadow:none;
  }
  .app-body .portal-quick-action:hover,.app-body .portal-quick-action.active{border-color:#cfe0f5;background:#edf6ff;color:var(--zk-blue);}
  .app-body .portal-quick-action b{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--zk-red);color:#fff;font-size:.6rem;}
  @media(max-width:900px){
    .app-body .portal-quick-action{width:100%;justify-content:flex-start;min-height:42px;padding:0 12px;}
  }
}

/* =========================================================
   V117.14 – Dashboard-Kontrastfix nach Vertragsseiten-Redesign
   V117.12 hat die Hero-Karte bewusst auf weiss umgestellt; die
   alten hellen Hero-Texte aus app.css blieben jedoch erhalten.
   Diese Regeln machen den Dashboard-Kopf im neuen Design lesbar.
   ========================================================= */
@media screen {
  .app-body .dashboard-sales-hero{
    background:linear-gradient(135deg,#ffffff 0%,#fbfdff 58%,#f4f9ff 100%) !important;
    color:var(--zk-ink) !important;
  }
  .app-body .dashboard-sales-hero::after{
    border-color:rgba(11,111,244,.08) !important;
    box-shadow:0 0 0 62px rgba(11,111,244,.018),0 0 0 124px rgba(11,111,244,.012) !important;
  }
  .app-body .dashboard-kicker{
    color:var(--zk-blue) !important;
  }
  .app-body .dashboard-hero-copy h1{
    color:#0d1f38 !important;
  }
  .app-body .dashboard-hero-copy>p:not(.dashboard-kicker){
    color:#6c7b91 !important;
  }
  .app-body .dashboard-quickstats>div,
  .app-body .dashboard-quickstats>a{
    border-color:#e1e8f1 !important;
    background:#f8fbff !important;
    box-shadow:none !important;
  }
  .app-body .dashboard-quickstats>a:hover{
    border-color:#cfe0f5 !important;
    background:#edf6ff !important;
  }
  .app-body .dashboard-quickstats span{
    color:#73839a !important;
  }
  .app-body .dashboard-quickstats strong{
    color:#10213a !important;
  }
  .app-body .dashboard-quickstats small{
    color:#8290a3 !important;
  }
}

/* Arbeitszeitnachweis: Signaturfelder werden bewusst per Klick aktiviert. */
.signature-pad-locked canvas{pointer-events:none;opacity:.35}.signature-pad-open canvas{pointer-events:auto;opacity:1}.work-record-web-signatures [data-signature-open]{margin:8px 0}

/* V117.14 – kompakte Formularausnahmen + Berechtigungsverwaltung */
.app-body input[type="checkbox"],
.app-body input[type="radio"],
.platform-body input[type="checkbox"],
.platform-body input[type="radio"],
.auth input[type="checkbox"],
.auth input[type="radio"]{
  width:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  height:18px !important;
  min-height:18px !important;
  padding:0 !important;
  margin:0 !important;
  flex:0 0 18px !important;
  box-shadow:none !important;
  accent-color:var(--zk-blue) !important;
}
.app-body input[type="radio"],
.platform-body input[type="radio"],
.auth input[type="radio"]{border-radius:50% !important;}

.permission-admin-panel .permission-role-content{padding:18px 20px !important;}
.permission-admin-panel .permission-role-content form{gap:18px !important;}
.permission-admin-panel .permission-scope-box{
  grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr) !important;
  gap:18px !important;
  align-items:stretch !important;
  padding:16px 18px !important;
  border-radius:14px !important;
}
.permission-admin-panel .permission-scope-box>div:first-child{
  align-content:start !important;
  gap:5px !important;
  padding:3px 0 !important;
}
.permission-admin-panel .permission-scope-box>div:first-child>strong{font-size:.86rem !important;}
.permission-admin-panel .permission-scope-box>div:first-child>small{font-size:.72rem !important;line-height:1.5 !important;}
.permission-admin-panel .permission-scope-options{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}
.permission-admin-panel .permission-scope-options label{
  display:grid !important;
  grid-template-columns:20px minmax(0,1fr) !important;
  align-items:start !important;
  align-content:start !important;
  gap:10px !important;
  min-width:0 !important;
  min-height:78px !important;
  padding:14px !important;
  margin:0 !important;
}
.permission-admin-panel .permission-scope-options label>input{
  width:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  height:18px !important;
  min-height:18px !important;
  padding:0 !important;
  margin:2px 0 0 !important;
}
.permission-admin-panel .permission-scope-options label>span{min-width:0 !important;gap:3px !important;}
.permission-admin-panel .permission-scope-options strong{font-size:.79rem !important;line-height:1.25 !important;}
.permission-admin-panel .permission-scope-options small{font-size:.69rem !important;line-height:1.42 !important;overflow-wrap:anywhere !important;}

.permission-admin-panel .permission-page-rights>h3{
  margin:0 0 8px !important;
  font-size:.9rem !important;
}
.permission-admin-panel .permission-page-rights>h4{
  margin:16px 0 8px !important;
  font-size:.68rem !important;
  letter-spacing:.08em !important;
  color:#64748b !important;
}
.permission-admin-panel .permission-page-rights .permission-check-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}
.permission-admin-panel .permission-page-rights .permission-check{
  display:grid !important;
  grid-template-columns:20px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  min-width:0 !important;
  min-height:52px !important;
  margin:0 !important;
  padding:10px 12px !important;
  border:1px solid #dce6f2 !important;
  border-radius:12px !important;
  background:#f8fbff !important;
  cursor:pointer !important;
}
.permission-admin-panel .permission-page-rights .permission-check:hover{
  border-color:#b9d3f4 !important;
  background:#f2f7ff !important;
}
.permission-admin-panel .permission-page-rights .permission-check>input{
  width:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  height:18px !important;
  min-height:18px !important;
  padding:0 !important;
  margin:0 !important;
}
.permission-admin-panel .permission-page-rights .permission-check>span{
  min-width:0 !important;
  font-size:.76rem !important;
  font-weight:720 !important;
  line-height:1.35 !important;
  overflow-wrap:anywhere !important;
}
.permission-admin-panel .permission-save-button{min-width:210px !important;}

@media(max-width:1180px){
  .permission-admin-panel .permission-page-rights .permission-check-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:820px){
  .permission-admin-panel .permission-scope-box{grid-template-columns:1fr !important;}
}
@media(max-width:640px){
  .permission-admin-panel .permission-role-content{padding:14px !important;}
  .permission-admin-panel .permission-scope-options,
  .permission-admin-panel .permission-page-rights .permission-check-grid{grid-template-columns:1fr !important;}
  .permission-admin-panel .permission-save-button{width:100% !important;min-width:0 !important;}
}

/* =========================================================
   V117.15 – Firmenportal im freigegebenen Vertragsdesign
   Ziel: helle, ruhige Flaechen, klare Typografie, horizontale
   Untermenue-Zeilen und leichte Karten wie Vertrag & Abrechnung.
   ========================================================= */
@media screen {
  .app-body{
    --portal-ink:#10213a;--portal-muted:#65758f;--portal-line:#dfe7f1;
    --portal-soft:#f6f9fd;--portal-blue:#0b6ff4;--portal-blue-soft:#eaf3ff;
    color:var(--portal-ink)!important;
    background:radial-gradient(circle at 72% -15%,rgba(11,111,244,.08),transparent 36rem),linear-gradient(180deg,#f8fbff 0%,#f2f6fb 100%)!important;
  }
  .app-body .workspace{background:transparent!important;}
  .app-body .topbar{
    width:min(1320px,calc(100% - 48px))!important;margin:0 auto!important;
    padding:22px 0 10px!important;background:transparent!important;border:0!important;box-shadow:none!important;
  }
  .app-body .topbar>div:first-child p{color:#738097!important;font-size:.76rem!important;font-weight:700!important;}
  .app-body .topbar>div:first-child h2{color:#10213a!important;font-size:1rem!important;font-weight:760!important;}
  .app-body .content,.app-body .standalone-app-content{
    width:min(1320px,calc(100% - 48px))!important;max-width:none!important;margin:0 auto!important;padding:16px 0 72px!important;
  }
  .app-body .content>.section-title,.app-body .content>.welcome-row,
  .app-body .standalone-app-content>.section-title{
    padding:14px 0 24px!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;
  }
  .app-body .section-title .eyebrow,.app-body .welcome-row .eyebrow{
    color:var(--portal-blue)!important;font-size:.78rem!important;font-weight:850!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  }
  .app-body .section-title h1,.app-body .welcome-row h1{
    color:#0d1f38!important;font-size:clamp(2.15rem,4vw,3.45rem)!important;line-height:1.03!important;letter-spacing:-.045em!important;font-weight:820!important;margin:8px 0 0!important;
  }
  .app-body .section-title p:not(.eyebrow),.app-body .welcome-row p:not(.eyebrow){
    color:#64748d!important;font-size:1rem!important;line-height:1.55!important;margin-top:12px!important;
  }

  /* Untermenues immer als ruhige horizontale Zeile – keine Accordion-Optik. */
  .app-body .company-subnav,.app-body .section-subnav{
    position:relative!important;display:flex!important;align-items:stretch!important;gap:0!important;
    width:100%!important;max-width:none!important;margin:0 0 28px!important;padding:0!important;
    border:0!important;border-bottom:1px solid #dbe5f0!important;border-radius:0!important;
    background:rgba(247,250,254,.94)!important;box-shadow:none!important;overflow-x:auto!important;
  }
  .app-body .company-subnav a,.app-body .section-subnav a{
    position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;
    min-height:66px!important;padding:0 22px!important;border:0!important;border-radius:14px 14px 0 0!important;
    background:transparent!important;color:#65758e!important;text-decoration:none!important;
    font-size:.9rem!important;font-weight:760!important;white-space:nowrap!important;box-shadow:none!important;
  }
  .app-body .company-subnav a:hover,.app-body .section-subnav a:hover{color:var(--portal-blue)!important;background:rgba(255,255,255,.6)!important;}
  .app-body .company-subnav a.active,.app-body .section-subnav a.active{
    color:var(--portal-blue)!important;background:#fff!important;box-shadow:0 8px 22px rgba(44,75,118,.05)!important;
  }
  .app-body .company-subnav a.active::after,.app-body .section-subnav a.active::after{
    content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;height:3px!important;background:var(--portal-blue)!important;border-radius:3px 3px 0 0!important;
  }

  .app-body .panel,.app-body .card,.app-body .settings-card,.app-body .form-panel,
  .app-body .permission-admin-panel,.app-body .table-card{
    border:1px solid #e2eaf3!important;border-radius:18px!important;background:#fff!important;
    box-shadow:0 12px 34px rgba(32,58,94,.055),0 1px 2px rgba(16,24,40,.03)!important;
  }
  .app-body .panel,.app-body .settings-card,.app-body .form-panel{padding:26px 28px!important;}
  .app-body .panel h2,.app-body .settings-card h2,.app-body .form-panel h2{color:#10213a!important;letter-spacing:-.02em!important;}
  .app-body .status,.app-body .chip{border-radius:999px!important;}
  .app-body .button:not(.danger){border-radius:11px!important;font-weight:780!important;}
  .app-body .button:not(.secondary):not(.danger){background:#0b6ff4!important;border-color:#0b6ff4!important;box-shadow:0 8px 18px rgba(11,111,244,.16)!important;}
  .app-body .button.secondary{background:#fff!important;border-color:#dbe5f0!important;color:#40536d!important;box-shadow:none!important;}
  .app-body input:not([type="checkbox"]):not([type="radio"]),.app-body select,.app-body textarea{
    border:1px solid #dbe5f0!important;border-radius:11px!important;background:#fff!important;box-shadow:none!important;
  }
  .app-body input:not([type="checkbox"]):not([type="radio"]):focus,.app-body select:focus,.app-body textarea:focus{
    border-color:#90bdf5!important;box-shadow:0 0 0 3px rgba(11,111,244,.09)!important;outline:0!important;
  }

  /* Berechtigungen: wie Produktkarten, nicht wie technische Tabellen. */
  .permission-admin-panel{overflow:hidden!important;padding:0!important;}
  .permission-admin-panel .permission-role-content{padding:24px 26px!important;}
  .permission-admin-panel .permission-scope-box{
    border:1px solid #e2eaf3!important;border-radius:18px!important;background:#f8fbff!important;padding:18px 20px!important;
  }
  .permission-admin-panel .permission-scope-options label,
  .permission-admin-panel .permission-page-rights .permission-check{
    background:#fff!important;border:1px solid #e1eaf4!important;border-radius:14px!important;box-shadow:0 4px 14px rgba(32,58,94,.035)!important;
  }
  .permission-admin-panel .permission-page-rights .permission-check:hover,
  .permission-admin-panel .permission-scope-options label:hover{border-color:#bcd5f5!important;background:#fbfdff!important;}
  .permission-admin-panel .permission-page-rights>h4{color:#0b6ff4!important;font-weight:850!important;letter-spacing:.1em!important;}

  /* Sidebar bleibt funktional, nimmt aber die gleiche ruhige Optik an. */
  .app-body .sidebar{background:#fff!important;border-right:1px solid #e2eaf3!important;box-shadow:none!important;}
  .app-body .sidebar-brand strong,.app-body .tenant-chip strong,.app-body .mini-profile strong{color:#10213a!important;}
  .app-body .side-nav>a{color:#5c6d86!important;border-radius:11px!important;}
  .app-body .side-nav>a:hover{background:#f4f8fd!important;color:#0b6ff4!important;}
  .app-body .side-nav>a.active{background:#eaf3ff!important;color:#0b6ff4!important;box-shadow:inset 3px 0 0 #0b6ff4!important;}

  @media(max-width:900px){
    .app-body .topbar,.app-body .content,.app-body .standalone-app-content{width:calc(100% - 28px)!important;}
    .app-body .company-subnav a,.app-body .section-subnav a{min-height:58px!important;padding:0 16px!important;}
  }
}
