@charset "UTF-8";
/* KKT Modern UI v3.1.0a – Foundation
   Rein visuelles Overlay für Light/Dark, Karten, Tabellen, Formulare und Buttons. */

:root{
  --kkt-bg:#eef2f5;
  --kkt-surface:#ffffff;
  --kkt-surface-2:#f7f9fb;
  --kkt-surface-3:#eaf0f4;
  --kkt-text:#10212d;
  --kkt-muted:#647785;
  --kkt-border:#d5dfe5;
  --kkt-primary:#294f63;
  --kkt-primary-dark:#1f3e50;
  --kkt-primary-hover:#35667f;
  --kkt-focus:#77a6bf;
  --kkt-success:#2f8a62;
  --kkt-warning:#c08222;
  --kkt-danger:#d34a57;
  --kkt-radius:14px;
  --kkt-radius-sm:9px;
  --kkt-shadow-sm:0 2px 10px rgba(31,62,80,.07);
  --kkt-shadow:0 14px 35px rgba(31,62,80,.10);
  color-scheme:light;
}

html[data-theme="dark"]{
  --kkt-bg:#0f171d;
  --kkt-surface:#18242d;
  --kkt-surface-2:#1e2c36;
  --kkt-surface-3:#253743;
  --kkt-text:#edf3f6;
  --kkt-muted:#a7b7c1;
  --kkt-border:#354955;
  --kkt-primary:#6d9fb8;
  --kkt-primary-dark:#5b8ba4;
  --kkt-primary-hover:#7eb0c8;
  --kkt-focus:#7fb1ca;
  --kkt-success:#54b987;
  --kkt-warning:#e1a84f;
  --kkt-danger:#ef6d78;
  --kkt-shadow-sm:0 2px 12px rgba(0,0,0,.22);
  --kkt-shadow:0 18px 45px rgba(0,0,0,.30);
  color-scheme:dark;
}

html,body{
  background:var(--kkt-bg)!important;
  color:var(--kkt-text)!important;
}
body,table,tr,td,div,span,p,a,input,select,textarea,button{
  font-family:Montserrat,"Segoe UI",Arial,Helvetica,sans-serif;
}

/* Grundflächen */
.kkt-main,
.content_bg,
.content{
  background:transparent!important;
  color:var(--kkt-text)!important;
}

.main_table_header,
.table_header,
.error_table_header,
.green_table_header{
  border:0!important;
  border-radius:var(--kkt-radius) var(--kkt-radius) 0 0!important;
  background:linear-gradient(135deg,var(--kkt-primary-dark),#294f63)!important;
  color:#fff!important;
  box-shadow:none!important;
  padding:12px 16px!important;
  font-weight:700!important;
  letter-spacing:.015em;
}
html[data-theme="dark"] .main_table_header,
html[data-theme="dark"] .table_header,
html[data-theme="dark"] .error_table_header,
html[data-theme="dark"] .green_table_header{
  background:linear-gradient(135deg,#294f63,#35667f)!important;
}

.main_table_content,
.table_content,
.error_table_content,
.green_table_content,
.border,
fieldset,
.kkt-card,
.kkt-dashboard-card,
.kkt-payroll-settings,
.kkt-payroll-adjustment-form,
.kkt-payroll-adjustment-locked,
.kkt-payroll-document-state{
  background:var(--kkt-surface)!important;
  color:var(--kkt-text)!important;
  border:1px solid var(--kkt-border)!important;
  box-shadow:var(--kkt-shadow-sm)!important;
}
.main_table_content,
.table_content,
.error_table_content,
.green_table_content{
  border-radius:0 0 var(--kkt-radius) var(--kkt-radius)!important;
  padding:16px!important;
}
fieldset{
  border-radius:var(--kkt-radius)!important;
}
legend{
  color:var(--kkt-primary)!important;
  font-weight:700!important;
  padding:0 8px!important;
}

/* Überschriften und Links */
h1,h2,h3,h4,h5,h6{
  color:var(--kkt-primary)!important;
  letter-spacing:-.015em;
}
a{color:var(--kkt-primary)!important}
a:hover{color:var(--kkt-primary-hover)!important}
.kkt-topbar a,.kkt-sidebar a{color:inherit!important}

/* Tabellen */
table{border-color:var(--kkt-border)!important}
.table_tr_bg_1,
.stz_table_tr_bg_1{
  background:var(--kkt-surface)!important;
  color:var(--kkt-text)!important;
}
.table_tr_bg_2,
.stz_table_tr_bg_2,
.filter_td_1,
.filter_td_2,
.filter_tr_end{
  background:var(--kkt-surface-2)!important;
  color:var(--kkt-text)!important;
}
.table_tr_bg_3{
  background:var(--kkt-surface-3)!important;
  color:var(--kkt-text)!important;
}
td,th{
  border-color:var(--kkt-border)!important;
}
tr:hover > td{
  background-color:color-mix(in srgb,var(--kkt-primary) 8%,var(--kkt-surface))!important;
}
.stz_freeday_bg{background:#dbe9f4!important}
.stz_holiday_bg{background:#f3d9dd!important}
html[data-theme="dark"] .stz_freeday_bg{background:#233b4a!important}
html[data-theme="dark"] .stz_holiday_bg{background:#4a2b33!important}

/* Formulare */
input[type=text],input[type=password],input[type=email],input[type=number],
input[type=date],input[type=time],input[type=search],select,textarea,
.ipt_25,.ipt_50,.ipt_75,.ipt_100,.ipt_125,.ipt_150,.ipt_175,
.ipt_200,.ipt_250,.ipt_300,.ipt_350,.ipt_400,
.stz_ipt_25,.stz_ipt_50,.stz_ipt_50_warning,.stz_select_75{
  background:var(--kkt-surface-2)!important;
  color:var(--kkt-text)!important;
  border:1px solid var(--kkt-border)!important;
  border-radius:var(--kkt-radius-sm)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  min-height:38px!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
input::placeholder,textarea::placeholder{color:var(--kkt-muted)!important;opacity:.85}
input:focus,select:focus,textarea:focus{
  border-color:var(--kkt-focus)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--kkt-focus) 24%,transparent)!important;
  outline:0!important;
  background:var(--kkt-surface)!important;
}
input:disabled,select:disabled,textarea:disabled,
input[readonly],textarea[readonly]{
  opacity:.72!important;
  cursor:not-allowed!important;
  background:var(--kkt-surface-3)!important;
}
input[type=checkbox],input[type=radio]{
  accent-color:var(--kkt-primary)!important;
}

/* Buttons */
button,input[type=submit],input[type=button],
.kkt-button-table{
  border:1px solid transparent!important;
  border-radius:var(--kkt-radius-sm)!important;
  background:linear-gradient(180deg,var(--kkt-primary-hover),var(--kkt-primary-dark))!important;
  color:#fff!important;
  box-shadow:0 3px 10px rgba(31,62,80,.18)!important;
  font-weight:700!important;
  transition:transform .14s ease,box-shadow .14s ease,filter .14s ease!important;
}
button:hover,input[type=submit]:hover,input[type=button]:hover,
.kkt-button-table:hover{
  filter:brightness(1.08)!important;
  transform:translateY(-1px)!important;
  box-shadow:0 6px 16px rgba(31,62,80,.24)!important;
}
button:active,input[type=submit]:active,input[type=button]:active,
.kkt-button-table:active{
  transform:translateY(0)!important;
  box-shadow:0 2px 6px rgba(31,62,80,.18)!important;
}
button:focus-visible,input[type=submit]:focus-visible,input[type=button]:focus-visible,
.kkt-button-table:focus-within{
  outline:3px solid color-mix(in srgb,var(--kkt-focus) 45%,transparent)!important;
  outline-offset:2px!important;
}
.kkt-button-table td,.kkt-button-table a{color:#fff!important}

/* Kopfbereich */
.kkt-topbar{
  background:var(--kkt-surface)!important;
  color:var(--kkt-text)!important;
  border-bottom:1px solid var(--kkt-border)!important;
  box-shadow:var(--kkt-shadow-sm)!important;
}
.kkt-header-tool{
  background:var(--kkt-surface-2)!important;
  color:var(--kkt-primary)!important;
  border:1px solid var(--kkt-border)!important;
  box-shadow:none!important;
}
.kkt-header-tool:hover{
  background:var(--kkt-surface-3)!important;
  transform:none!important;
}
.kkt-user,.kkt-user strong,.kkt-user-links,.kkt-countdown{
  color:var(--kkt-text)!important;
}
.kkt-user-links a{color:var(--kkt-primary)!important}

/* Sidebar */
.kkt-sidebar{
  background:linear-gradient(180deg,#213f50 0%,#172e3b 100%)!important;
  border-right:1px solid rgba(255,255,255,.06)!important;
  box-shadow:8px 0 30px rgba(0,0,0,.08)!important;
}
html[data-theme="dark"] .kkt-sidebar{
  background:linear-gradient(180deg,#162a35 0%,#101f28 100%)!important;
}
.kkt-nav-main,.kkt-nav-trigger{
  color:#f3f7f9!important;
  border-radius:10px!important;
}
.kkt-nav-main:hover,.kkt-nav-trigger:hover{
  background:rgba(255,255,255,.11)!important;
}
.kkt-nav-sub a{
  color:#d9e5eb!important;
  border-radius:8px!important;
}
.kkt-nav-sub a:hover{
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
}
.kkt-sub-dot{background:#8bb4c8!important}
.kkt-sidebar-toggle{
  color:#dbe7ed!important;
  border-top-color:rgba(255,255,255,.10)!important;
}

/* Statusmeldungen */
.error_table_header{background:linear-gradient(135deg,#9c2f3b,#d34a57)!important}
.green_table_header{background:linear-gradient(135deg,#226b4c,#2f8a62)!important}
.error_table_content{border-color:color-mix(in srgb,var(--kkt-danger) 45%,var(--kkt-border))!important}
.green_table_content{border-color:color-mix(in srgb,var(--kkt-success) 45%,var(--kkt-border))!important}

/* Dashboard-Kennzahlen */
.kkt-stat-card,.kkt-dashboard-stat,.kkt-kpi{
  background:var(--kkt-surface)!important;
  color:var(--kkt-text)!important;
  border:1px solid var(--kkt-border)!important;
  box-shadow:var(--kkt-shadow-sm)!important;
  border-radius:var(--kkt-radius)!important;
}
.kkt-stat-card strong,.kkt-dashboard-stat strong,.kkt-kpi strong{
  color:var(--kkt-primary)!important;
}

/* Login */
.kkt-login-page .main_table_content{
  background:color-mix(in srgb,var(--kkt-surface) 94%,transparent)!important;
  backdrop-filter:blur(14px);
  box-shadow:var(--kkt-shadow)!important;
}

/* Scrollbars */
*{
  scrollbar-width:thin;
  scrollbar-color:var(--kkt-primary) var(--kkt-surface-2);
}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:var(--kkt-surface-2)}
*::-webkit-scrollbar-thumb{background:var(--kkt-primary);border-radius:10px;border:2px solid var(--kkt-surface-2)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    transition:none!important;
    animation:none!important;
    scroll-behavior:auto!important;
  }
}

@media(max-width:760px){
  .main_table_content,.table_content{padding:12px!important}
  button,input[type=submit],input[type=button]{min-height:42px!important}
  input,select,textarea{font-size:16px!important}
  .kkt-main{background:var(--kkt-bg)!important}
}
