.impl-report-filter {
    background: #fff;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    padding: 1rem;
    margin-bottom: 1rem;
}

.impl-report-hero {
    background: #0f172a;
    color: #fff;
    border-radius: 1rem;
    padding: 1.5rem;
}

.impl-report-kpi {
    background: #fff;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    padding: 1.25rem;
    box-shadow: 0 1px 2px rgb(0 0 0 / 0.04);
}

.impl-report-kpi-value {
    font-size: 1.875rem;
    font-weight: 900;
    line-height: 1.1;
}

.impl-report-phase-card {
    background: #fff;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    padding: 1rem;
}

.impl-report-bar {
    height: 0.5rem;
    background: #f3f4f6;
    border-radius: 9999px;
    overflow: hidden;
}

.impl-report-bar-fill {
    height: 100%;
    background: #84cc16;
    border-radius: 9999px;
}

.impl-report-chart-box {
    position: relative;
    height: 280px;
}

.impl-report-table-wrap {
    background: #fff;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    overflow-x: auto;
    box-shadow: 0 1px 2px rgb(0 0 0 / 0.04);
}

.impl-report-progress-ring {
    height: 0.5rem;
    background: #334155;
    border-radius: 9999px;
    overflow: hidden;
    margin-top: 0.75rem;
}

.impl-report-progress-ring-fill {
    height: 100%;
    background: #a3e635;
    border-radius: 9999px;
    transition: width 0.3s ease;
}
