/* Daily Staffing Report CSS - Clean, military-style document */

/* Main container - very specific to avoid conflicts */
.daily-staffing-report {
    font-family: Arial, sans-serif !important;
    font-size: 12px !important;
    margin: 0;
    padding: 0;
    width: 100%;
    page-break-after: avoid;
    page-break-inside: avoid;
    background-color: #ffffff;
}

/* Global letter spacing for all elements */
.daily-staffing-report,
.daily-staffing-report *,
.daily-staffing-report *::before,
.daily-staffing-report *::after {
    font-size: 12px !important;
    letter-spacing: 1px !important;
}

/* Main report table */
.daily-staffing-report .report-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    table-layout: fixed;
}

.daily-staffing-report .report-table td {
    vertical-align: top;
    padding: 2px;
    border: none;
}

/* MD/Res/APP table - 3 equal columns */
.daily-staffing-report .md-res-app td {
    width: 33.33%;
}

/* Staff lists table - dynamic columns */
.daily-staffing-report .report-table:not(.md-res-app) td {
    width: auto;
    min-width: 120px;
}

/* Section headers */
.daily-staffing-report .section-header {
    font-size: 13px !important;
    font-weight: bold;
    color: #000000;
    background-color: transparent;
    padding: 3px 4px;
    margin: 0;
    border-bottom: 1px solid #000000;
    text-align: left;
    text-transform: uppercase;
}

/* Section header subtitle styling */
.daily-staffing-report .section-header .subtitle {
    font-size: 10px !important;
    font-weight: normal !important;
    text-transform: none !important;
    display: block;
    margin-top: 2px;
    font-style: italic;
}

/* MD/Res/APP Schedule Section */
.daily-staffing-report .md-res-app-section {
    width: 100%;
    margin-bottom: 4px;
}

/* Discipline sections */
.daily-staffing-report .discipline-section {
    margin-bottom: 4px;
    border-left: 2px solid #000000;
    padding-left: 6px;
}

.daily-staffing-report .discipline-section h4 {
    font-weight: bold;
    margin: 0 0 3px 0;
    color: #000000;
    padding: 1px 0;
    background-color: transparent;
    border-bottom: 1px solid #000000;
    text-transform: uppercase;
}

/* Staff Lists Section */
.daily-staffing-report .time-group {
    margin-bottom: 2px;
}

.daily-staffing-report .time-header {
    font-weight: bold;
    color: #000000;
    margin-bottom: 1px;
    padding: 0;
    display: block;
}

.daily-staffing-report .employee-name {
    margin-left: 8px;
    margin-bottom: 1px;
    color: #000000;
    display: block;
    padding-left: 4px;
}

/* MD/Res/APP specific styling - inline format */
.daily-staffing-report .md-res-app .time-header {
    display: inline;
    margin-bottom: 1px;
    margin-right: 4px;
}

.daily-staffing-report .md-res-app .employee-name {
    display: inline;
    margin-left: 0;
    margin-bottom: 1px;
}

/* Staff Counts Section */
.daily-staffing-report .counts-container {
    margin: 0;
    padding: 0;
}

.daily-staffing-report .staff-count-item {
    font-weight: normal;
    padding: 0;
    margin-bottom: 1px;
    background-color: transparent;
    border: none;
    color: #000000;
}

/* Section dividers */
.daily-staffing-report .section-divider {
    display: none;
}

/* Report footer */
.daily-staffing-report .report-footer {
    margin-top: 8px;
    padding-top: 4px;
    border-top: 1px solid #000000;
}

.daily-staffing-report .generation-info {
    text-align: center;
    margin: 0;
    padding: 0;
}

.daily-staffing-report .timestamp {
    font-size: 10px !important;
    font-weight: bold;
    color: #000000;
    margin: 0 0 2px 0;
    padding: 0;
}

.daily-staffing-report .disclaimer {
    font-size: 9px !important;
    font-style: italic;
    color: #000000;
    margin: 0;
    padding: 0;
    line-height: 1.3;
    white-space: pre-line;
    text-align: center;
}

/* Print-specific styles */
@media print {
    .daily-staffing-report {
        page-break-after: avoid;
        page-break-inside: avoid;
    }
    
    .section-header {
        font-size: 13px !important;
        padding: 3px 4px;
    }
    
    .daily-staffing-report .section-header .subtitle {
        font-size: 9px !important;
        font-weight: normal !important;
        text-transform: none !important;
        margin-top: 1px;
        font-style: italic;
    }
    
    .discipline-section h4 {
        margin-bottom: 2px;
    }
    
    .staff-count-item {
        margin-bottom: 1px;
    }
    
    .time-header {
        margin-bottom: 1px;
    }
    
    .employee-name {
        margin-left: 8px;
        margin-bottom: 1px;
    }
    
    .provider-section {
        margin-bottom: 4px;
    }
    
    /* MD/Res/APP print styles */
    .daily-staffing-report .md-res-app .time-header {
        display: inline;
        margin-bottom: 1px;
        margin-right: 4px;
    }
    
    .daily-staffing-report .md-res-app .employee-name {
        display: inline;
        margin-left: 0;
        margin-bottom: 1px;
    }
    
    /* Footer print styles */
    .daily-staffing-report .report-footer {
        margin-top: 6px;
        padding-top: 3px;
        border-top: 1px solid #000000;
    }
    
    .daily-staffing-report .timestamp {
        font-size: 9px !important;
        margin-bottom: 1px;
    }
    
    .daily-staffing-report .disclaimer {
        font-size: 8px !important;
        line-height: 1.2;
        white-space: pre-line;
        text-align: center;
    }
}