/* ==========================================================================
   GLASS UI – Logzeit / SafeT: helles, weißes Frosted-Glass Theme
   Pfad: static/css/glass.css
   ========================================================================== */

/* -------------------- Design-Variablen -------------------- */
:root {
  --accent-50:  #fff5eb;
  --accent-100: #ffe3cc;
  --accent-200: #ffd3b1;
  --accent-500: #ff7a00;
  --accent-600: #e86f00;

  --text-900: #1f2937;
  --text-700: #374151;
  --text-500: #6b7280;

  --glass-bg: rgba(255,255,255,.94);
  --glass-border: rgba(0,0,0,.06);
  --glass-shadow: 0 10px 28px rgba(0,0,0,.06);

  --radius: 14px;
}

/* -------------------- Grundlayout -------------------- */
.glass-app,
.glass-app body { color: var(--text-900); }

.glass-app,
.glass-app .page-wrapper {
  background:
    radial-gradient(1200px 800px at 20% -10%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.995) 55%, #ffffff 100%) !important;
}

.glass-app .content-card,
.glass-app .glass-card {
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  box-shadow: var(--glass-shadow);
  border-radius: var(--radius);
  padding: 16px;
}

/* -------------------- Desktop-Breite -------------------- */
@media (min-width: 1200px){ .glass-app .container{max-width:1480px;} }
@media (min-width: 1400px){ .glass-app .container{max-width:1600px;} }
@media (min-width: 992px){
  .glass-app .page-wrapper{max-width:1600px;margin:0 auto;padding:24px 16px;}
  .glass-app .content-card,.glass-app .glass-card{padding:28px;}
}

/* -------------------- Navbar -------------------- */
.glass-app .glass-nav.navbar{
  background:rgba(255,255,255,.82)!important;
  backdrop-filter:saturate(180%) blur(18px);
  -webkit-backdrop-filter:saturate(180%) blur(18px);
  border-bottom:1px solid var(--glass-border);
  box-shadow:0 8px 24px rgba(0,0,0,.05);
}
.glass-app .brand-mini{height:28px;width:auto;}
.glass-app .brand-title{font-weight:600;letter-spacing:.1px;color:var(--text-900);}
.glass-app .navbar .nav-link{color:var(--text-700);}
.glass-app .navbar .nav-link.active,
.glass-app .navbar .nav-link:focus{color:var(--accent-600)!important;font-weight:600;}

/* -------------------- Hero-Logo -------------------- */
.glass-app .glass-hero{
  position:sticky;top:0;z-index:100;
  display:flex;justify-content:center;align-items:center;
  height:92px;margin:10px auto 12px;padding:12px 18px;
  background:rgba(255,255,255,.88);
  border:1px solid var(--glass-border);
  border-radius:16px;
  box-shadow:var(--glass-shadow);
}
.glass-app .glass-hero img{max-height:64px;width:auto;image-rendering:-webkit-optimize-contrast;}
.login-wrapper .glass-hero{display:none!important;}

/* -------------------- Flash-Banderolen -------------------- */
.glass-app .flash-stack{position:relative;display:grid;gap:8px;margin-bottom:12px;}
.glass-app .glass-flash{
  background:rgba(255,255,255,.98);
  color:var(--text-900);
  border:1px solid #e6e8eb;
  box-shadow:var(--glass-shadow);
  border-radius:12px;
  padding:10px 12px;
  transition:opacity .25s ease,transform .25s ease;
}
.glass-app .glass-flash.hide{opacity:0;transform:translateY(-6px);}
.glass-app .glass-flash.flash-success{border-left:4px solid #27ae60;}
.glass-app .glass-flash.flash-warning{border-left:4px solid #f39c12;}
.glass-app .glass-flash.flash-danger{border-left:4px solid #e74c3c;}

/* -------------------- Buttons & Links -------------------- */
.glass-app .btn-primary,
.glass-app .btn-outline-primary:hover{
  background:var(--accent-500)!important;
  border-color:var(--accent-500)!important;
}
.glass-app .btn-outline-primary{
  color:var(--accent-600)!important;
  border-color:var(--accent-200)!important;
  background:#fff!important;
}
.glass-app .btn:focus{box-shadow:0 0 0 .2rem rgba(255,122,0,.18)!important;}
.glass-app .btn-outline-secondary{color:var(--text-700);background:#fff;border-color:#e6e8eb;}
.glass-app .btn-outline-secondary:hover{background:#fff;border-color:#dcdfe4;}
.glass-app a{color:var(--accent-600);text-decoration:none;}
.glass-app a:hover{text-decoration:underline;}

/* -------------------- Formulare -------------------- */
.glass-app .form-control,.glass-app .form-select{
  background:rgba(255,255,255,.98);
  border:1px solid #e6e8eb;
  color:var(--text-900);
  border-radius:10px;
}
.glass-app .form-control:focus,.glass-app .form-select:focus{
  border-color:#ffcaa3;
  box-shadow:0 0 0 .15rem rgba(255,122,0,.12);
}
.glass-app .form-check-input:checked{
  background-color:var(--accent-600);
  border-color:var(--accent-600);
}

/* -------------------- Tabellen -------------------- */
.glass-app .table{color:var(--text-900);}
.glass-app .table thead th{background:rgba(255,255,255,.98);border-bottom:1px solid #eef1f4;}

/* -------------------- Footer -------------------- */
.glass-app .glass-footer{
  margin-top:18px;
  background:rgba(255,255,255,.82);
  border:1px solid var(--glass-border);
  border-radius:12px;
  box-shadow:var(--glass-shadow);
}

/* -------------------- WHITE PATCH -------------------- */
.glass-app .bg-dark,
.glass-app .text-bg-dark,
.glass-app .bg-secondary,
.glass-app .text-bg-secondary,
.glass-app .table-dark,
.glass-app .alert-dark{
  background:#ffffff!important;
  color:var(--text-900)!important;
  border-color:#e6e8eb!important;
}
.glass-app .card,
.glass-app .card .card-body,
.glass-app .card .card-header,
.glass-app .card .card-footer{
  background:#ffffff!important;
  color:var(--text-900)!important;
  border-color:#e6e8eb!important;
}

/* -------------------- LOGIN Bereich -------------------- */

/* Footer-Logo ausblenden */
.login-wrapper .login-footer-logo{display:none!important;}

/* Breite + Entfernung der Container-Karte */
.login-wrapper,
.login-wrapper .container,
.login-wrapper .page-wrapper,
.login-wrapper .glass-card,
.login-wrapper .content-card{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
}

/* ✅ Große, klare Anmeldebox */
.login-wrapper .login-card{
  background:#fff!important;
  border:none!important;
  box-shadow:0 8px 30px rgba(0,0,0,.05)!important;
  border-radius:22px!important;
  max-width:900px!important;
  width:100%!important;
  margin:80px auto!important;
  padding:60px 80px!important;
  transition:all .3s ease-in-out;
}

/* Inline-Logo */
.login-logo-inline{display:flex;justify-content:center;margin-top:20px;animation:popIn .28s ease-out both;}
@keyframes popIn{from{opacity:0;transform:translateY(4px) scale(.985);}to{opacity:1;transform:translateY(0) scale(1);}}
.glass-logo-badge{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 16px;border-radius:18px;
  background:rgba(255,255,255,.75);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 8px 26px rgba(0,0,0,.04);
}
.login-logo-inline img{
  max-width:220px!important;
  max-height:56px!important;
  opacity:.98;
  image-rendering:-webkit-optimize-contrast;
}

/* ===================== LOGIN: Top-Brand ===================== */
.login-wrapper .login-top-brand{
  display:flex;
  justify-content:center;
  margin:8px auto 12px;
}
.login-wrapper .login-top-brand img{
  max-height:56px;
  width:auto;
  image-rendering:-webkit-optimize-contrast;
}
@media (min-width:480px){
  .login-wrapper .login-top-brand img{max-height:64px;}
}

/* ===================== Farb- & Kontrastfix für Buttons ===================== */

/* Hell-orange Buttons mit weißer Schrift */
.glass-app .btn.btn-warning,
.glass-app .btn-warning {
  background-color: #ffa64d !important;  /* helles Orange */
  border-color: #ffa64d !important;
  color: #ffffff !important;
  transition: all 0.2s ease-in-out;
}
.glass-app .btn.btn-warning:hover,
.glass-app .btn.btn-warning:focus,
.glass-app .btn.btn-warning:active {
  background-color: #ff931f !important;  /* etwas dunkler beim Hover */
  border-color: #ff931f !important;
  color: #ffffff !important;
}

/* Einheitliche Weißschrift auf gefüllten Buttons */
.glass-app .btn.btn-primary,
.glass-app .btn.btn-success,
.glass-app .btn.btn-danger,
.glass-app .btn.btn-info,
.glass-app .btn.btn-secondary {
  color: #ffffff !important;
}

/* Hover/Focus behalten Weißschrift */
.glass-app .btn.btn-primary:hover,
.glass-app .btn.btn-success:hover,
.glass-app .btn.btn-danger:hover,
.glass-app .btn.btn-info:hover,
.glass-app .btn.btn-secondary:hover,
.glass-app .btn.btn-primary:focus,
.glass-app .btn.btn-success:focus,
.glass-app .btn.btn-danger:focus,
.glass-app .btn.btn-info:focus,
.glass-app .btn.btn-secondary:focus,
.glass-app .btn.btn-primary:active,
.glass-app .btn.btn-success:active,
.glass-app .btn.btn-danger:active,
.glass-app .btn.btn-info:active,
.glass-app .btn.btn-secondary:active {
  color: #ffffff !important;
}

/* Spezial: .btn-orange falls manuell verwendet */
.btn-orange {
  background-color: #ff7a00 !important;
  border-color: #ff7a00 !important;
  color: #fff !important;
}
.btn-orange:hover,
.btn-orange:focus {
  background-color: #e86f00 !important;
  border-color: #e86f00 !important;
  color: #fff !important;
}

/* Utility: weiße Schrift erzwingen */
.btn-contrast { color: #fff !important; }

/* ===================== Spezielle Mitarbeiter-Aktionsbuttons ===================== */

/* Details = Orange, vollflächig, weiße Schrift */
.glass-app .btn-details-solid {
  background-color: #fd7e14 !important;
  border-color: #fd7e14 !important;
  color: #ffffff !important;
}
.glass-app .btn-details-solid:hover,
.glass-app .btn-details-solid:focus,
.glass-app .btn-details-solid:active {
  background-color: #e96b0c !important;
  border-color: #e96b0c !important;
  color: #ffffff !important;
}

/* Archivieren = Gelb, vollflächig, weiße Schrift */
.glass-app .btn-archive-solid {
  background-color: #ffc107 !important;
  border-color: #ffc107 !important;
  color: #ffffff !important;
}
.glass-app .btn-archive-solid:hover,
.glass-app .btn-archive-solid:focus,
.glass-app .btn-archive-solid:active {
  background-color: #e0a800 !important;
  border-color: #e0a800 !important;
  color: #ffffff !important;
}

/* Löschen = Rot, vollflächig, weiße Schrift */
.glass-app .btn-delete-solid {
  background-color: #dc3545 !important;
  border-color: #dc3545 !important;
  color: #ffffff !important;
}
.glass-app .btn-delete-solid:hover,
.glass-app .btn-delete-solid:focus,
.glass-app .btn-delete-solid:active {
  background-color: #bb2d3b !important;
  border-color: #b02a37 !important;
  color: #ffffff !important;
}