.pghm-hybrid-root{
  max-width: 1240px;
  margin: 40px auto 80px auto;
  padding: 16px 20px 24px;
  border-radius: 24px;
  background: rgba(2, 12, 14, 0.92);
  box-shadow: 0 18px 40px rgba(0,0,0,0.7);
  border: 1px solid rgba(0, 180, 160, 0.35);
  font-family: "Poppins", Arial, sans-serif;
  color:#FFFFFF;
}

.pghm-hybrid-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
}

.pghm-hybrid-user{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:0.9rem;
}

.pghm-hybrid-user label{
  font-weight:500;
}

#pghmHybridUserSelect{
  min-width:220px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(0,255,180,0.45);
  background:rgba(0,35,40,0.95);
  color:#FFFFFF;
  font-size:0.9rem;
}

#pghmHybridUserSelect option{
  background:#00181c;
  color:#FFFFFF;
}

#pghmHybridLoadBtn{
  padding:6px 16px;
  border-radius:999px;
  border:none;
  cursor:pointer;
  font-size:0.9rem;
  font-weight:600;
  background:linear-gradient(135deg,#00e0a0,#00c480);
  color:#041010;
  box-shadow:0 0 12px rgba(0,255,200,0.45);
}

#pghmHybridLoadBtn:hover{
  filter:brightness(1.08);
}

.pghm-hybrid-badge{
  padding:4px 14px;
  border-radius:999px;
  border:1px solid rgba(0,255,180,0.4);
  font-size:0.7rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(220,255,245,0.9);
  background:radial-gradient(circle at top left, rgba(0,255,180,0.25), transparent 60%);
}

/* KPI Zeile */

.pghm-hybrid-kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-bottom:18px;
}

.kpi-card{
  position:relative;
  padding:10px 14px;
  border-radius:20px;
  background:linear-gradient(145deg, rgba(0,15,20,0.96), rgba(0,40,45,0.96));
  box-shadow:0 12px 28px rgba(0,0,0,0.85);
  border:1px solid rgba(0,200,160,0.25);
  overflow:hidden;
}

.kpi-card::before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top left, rgba(0,255,180,0.18), transparent 60%);
  opacity:0.7;
  pointer-events:none;
}

.kpi-label{
  position:relative;
  font-size:0.8rem;
  font-weight:500;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:6px;
  color:rgba(230,255,246,0.8);
}

.kpi-ring-wrap{
  position:relative;
  height:110px;
}

.kpi-ring-wrap canvas{
  width:100% !important;
  height:100% !important;
  display:block;
}

.kpi-value{
  position:absolute;
  right:14px;
  bottom:10px;
  font-size:1.1rem;
  font-weight:600;
  color:#FFFFFF;
}

/* Panels */

.pghm-hybrid-grid{
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:14px;
  margin-top:4px;
}

.pghm-hybrid-grid.bottom{
  margin-top:14px;
}

.panel{
  border-radius:20px;
  padding:10px 14px 14px;
  background:rgba(0,12,14,0.96);
  border:1px solid rgba(0,180,150,0.3);
  box-shadow:0 12px 30px rgba(0,0,0,0.85);
  position:relative;
  overflow:hidden;
}

.panel-title{
  font-size:0.8rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:6px;
  color:rgba(230,255,244,0.85);
}

.chart-wrap{
  position:relative;
  width:100%;
  height:260px;
  max-height:260px;
  overflow:hidden;
}

.chart-wrap canvas{
  width:100% !important;
  height:100% !important;
  display:block;
}

/* Tagesanalyse */

.day-detail{
  font-size:0.85rem;
  line-height:1.5;
  color:rgba(230,255,244,0.9);
}

/* Responsive */

@media (max-width: 1024px){
  .pghm-hybrid-root{
    margin:20px auto 40px auto;
    padding:14px 14px 18px;
  }
  .pghm-hybrid-kpis{
    grid-template-columns:1fr;
  }
  .pghm-hybrid-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 680px){
  .pghm-hybrid-header{
    flex-direction:column;
    align-items:flex-start;
  }
  #pghmHybridUserSelect{
    min-width:200px;
  }
}
