/* Extracted from dispo-plattform.html */
.dp-gantt-section{padding:5rem 2rem;background:#f8fafb;}
.dp-gantt-section__inner{max-width:1200px;margin:0 auto;}
.dp-gantt-section__header{text-align:center;margin-bottom:3rem;}
.dp-gantt-section__badge{display:inline-block;padding:0.4rem 1.2rem;border-radius:6px;background:#e8f4fd;color:#1a2b3c;font-size:0.8rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;margin-bottom:1rem;}
.dp-gantt-section__title{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;color:#1a2b3c;margin-bottom:0.8rem;}
.dp-gantt-section__title span{color:#66ff7e;}
.dp-gantt-section__desc{font-size:1.05rem;color:#5a6a7a;max-width:700px;margin:0 auto;line-height:1.7;}
.dp-gantt__tabs{display:flex;gap:0.5rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap;}
.dp-gantt__tab{padding:0.6rem 1.4rem;border:1px solid #e0e7ec;border-radius:8px;background:#fff;color:#1a2b3c;font-size:0.9rem;font-weight:600;cursor:pointer;transition:all 0.2s ease;}
.dp-gantt__tab:hover{border-color:#66ff7e;background:#eafff0;}
.dp-gantt__tab--active{background:#66ff7e;color:#1a2b3c;border-color:#66ff7e;}
.dp-gantt__chart{background:#fff;border-radius:16px;border:1px solid #e8ecf0;padding:1.5rem;overflow-x:auto;}
.dp-gantt__time-header{display:flex;align-items:center;margin-bottom:0.5rem;padding-bottom:0.5rem;border-bottom:1px solid #f0f3f5;}
.dp-gantt__label-spacer{min-width:160px;flex-shrink:0;}
.dp-gantt__time-slots{display:flex;flex:1;position:relative;}
.dp-gantt__time-slot{flex:1;text-align:center;font-size:0.7rem;color:#8a9baa;font-weight:500;}
.dp-gantt__row{display:flex;align-items:center;padding:0.8rem 0;border-bottom:1px solid #f5f7f9;animation:dp-fadeIn 0.4s ease both;}
.dp-gantt__row:last-child{border-bottom:none;}
@keyframes dp-fadeIn{from{opacity:0;transform:translateX(-10px);}to{opacity:1;transform:translateX(0);}}
.dp-gantt__row-label{min-width:160px;flex-shrink:0;font-size:0.88rem;font-weight:600;color:#1a2b3c;display:flex;align-items:center;gap:0.5rem;}
.dp-gantt__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.dp-gantt__track{flex:1;position:relative;height:40px;background:#f8fafb;border-radius:8px;overflow:hidden;}
.dp-gantt__grid-line{position:absolute;top:0;bottom:0;width:1px;background:#f0f3f5;}
.dp-gantt__bar{position:absolute;top:6px;bottom:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s ease;box-shadow:0 2px 8px rgba(0,0,0,0.08);}
.dp-gantt__bar:hover{transform:scaleY(1.15);box-shadow:0 4px 16px color-mix(in srgb, var(--bar-glow) 30%, transparent);z-index:2;}
.dp-gantt__bar-label{font-size:0.7rem;font-weight:600;color:#1a2b3c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 6px;}
.dp-gantt__no-shift{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:0.75rem;color:#b0bec5;font-style:italic;}
.dp-gantt__summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.5rem;}
.dp-gantt__summary-item{display:flex;align-items:center;gap:0.5rem;padding:0.8rem 1rem;background:#fff;border:1px solid #e8ecf0;border-radius:10px;}
.dp-gantt__summary-name{font-size:0.82rem;font-weight:600;color:#1a2b3c;flex:1;}
.dp-gantt__summary-hours{font-size:0.82rem;font-weight:700;color:#66ff7e;}
.dp-gantt__summary-shifts{font-size:0.75rem;color:#8a9baa;}
.dp-gantt__tooltip{position:absolute;z-index:9999;background:#1a2b3c;color:#fff;padding:0.6rem 1rem;border-radius:8px;font-size:0.8rem;line-height:1.5;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,0.2);}
@media(max-width:900px){
.dp-gantt__label-spacer{min-width:100px;}
.dp-gantt__row-label{min-width:100px;font-size:0.78rem;}
.dp-gantt__summary{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:560px){
.dp-gantt__summary{grid-template-columns:1fr;}
.dp-gantt__label-spacer{min-width:80px;}
.dp-gantt__row-label{min-width:80px;font-size:0.72rem;}
}

.dp-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2.5rem;}
.dp-detail-card{position:relative;background:#fff;border:1px solid #e8ecf0;border-radius:16px;padding:2rem 1.8rem;overflow:hidden;transition:all 0.3s ease;}
.dp-detail-card::before{content:'';position:absolute;top:-20px;right:-20px;width:80px;height:80px;border-radius:50%;background:rgba(102,255,126,0.08);transition:transform 0.4s ease;}
.dp-detail-card:hover{transform:translateY(-4px);border-color:#66ff7e;box-shadow:0 12px 32px rgba(102,255,126,0.12);}
.dp-detail-card:hover::before{transform:scale(2.5);}
.dp-detail-card__number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:rgba(102,255,126,0.12);color:#1a2b3c;font-weight:700;font-size:0.85rem;margin-bottom:1rem;}
.dp-detail-card__icon{width:44px;height:44px;margin-bottom:1rem;}
.dp-detail-card h3{font-size:1.15rem;font-weight:700;color:#1a2b3c;margin-bottom:0.6rem;}
.dp-detail-card p{font-size:0.92rem;color:#5a6a7a;line-height:1.7;}
.dp-detail-card__tags{display:flex;flex-wrap:wrap;gap:0.4rem;margin-top:1rem;}
.dp-detail-card__tag{display:inline-block;padding:0.25rem 0.7rem;border-radius:20px;background:#f0faf2;color:#2d6a4f;font-size:0.72rem;font-weight:600;border:1px solid rgba(102,255,126,0.3);}
.dp-detail-params{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;}
.dp-detail-param{display:flex;align-items:center;gap:0.8rem;padding:1rem 1.2rem;background:#fff;border:1px solid #e8ecf0;border-radius:12px;transition:border-color 0.2s;}
.dp-detail-param:hover{border-color:#66ff7e;}
.dp-detail-param__icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(102,255,126,0.1);flex-shrink:0;}
.dp-detail-param__icon svg{width:18px;height:18px;stroke:#1a2b3c;}
.dp-detail-param__label{font-size:0.75rem;color:#8a9baa;}
.dp-detail-param__value{font-size:0.85rem;font-weight:700;color:#1a2b3c;}
@media(max-width:768px){.dp-detail-grid{grid-template-columns:1fr;}.dp-detail-params{grid-template-columns:1fr;}}

