/* Force body background to pink for debug - REMOVED */
/*
body {
    background-color: hotpink !important;
    display: block !important; 
}
*/

/* --- Gantt Chart Specific Styles --- */

#gantt-container {
    flex-grow: 1; /* Take remaining vertical space */
    display: flex;
    flex-direction: column;
    overflow: hidden; /* Prevent content overflow */
    /* border: 2px solid red; */ /* DEBUG REMOVED */
    /* background-color: rgba(255,0,0,0.1); */ /* DEBUG REMOVED */
    position: relative; /* For SVG overlay */
}

.gantt-header {
    display: flex;
    background-color: #e0e0e0;
    border-bottom: 1px solid #c0c0c0;
    height: 40px; /* Height for month/week headers */
    min-height: 40px; /* Ensure height */
    position: sticky; /* Keep header visible on scroll */
    top: 0;
    z-index: 2;
    padding-left: 250px; /* Match task list width */
    box-sizing: border-box;
    /* border: 1px solid blue; */ /* DEBUG REMOVED */
}

.gantt-timeline-unit {
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #c0c0c0;
    font-size: 10pt;
    font-weight: bold;
    box-sizing: border-box;
    text-align: center;
    white-space: nowrap;
}

.gantt-tasks {
    flex-grow: 1;
    display: flex;
    overflow: auto; /* Allow both horizontal and vertical scroll */
    position: relative;
    /* border: 2px solid green; */ /* DEBUG REMOVED */
    /* background-color: rgba(0,255,0,0.1); */ /* DEBUG REMOVED */
}

.gantt-task-list {
    min-width: 250px; /* Fixed width for task names */
    width: 250px; /* Explicit width */
    border-right: 1px solid #c0c0c0;
    /* background-color: rgba(0,0,255,0.1); */ /* DEBUG REMOVED */
    position: sticky;
    left: 0;
    z-index: 1;
}

.gantt-task-row {
    display: flex;
    align-items: center;
    height: 30px; /* Height per task */
    border-bottom: 1px solid #e8e8e8;
    box-sizing: border-box;
    padding-left: 10px;
    font-size: 10pt;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.gantt-task-row.summary {
    font-weight: bold;
    background-color: #f0f0f0;
}

.gantt-task-row .task-indent {
    padding-left: 20px;
}

.gantt-chart-area {
    position: relative; /* Needed for positioning bars */
    flex-grow: 1;
    height: fit-content; /* Allow height to grow with tasks */
    /* border: 1px solid orange; */ /* DEBUG REMOVED */
    /* background-color: rgba(255,165,0,0.1); */ /* DEBUG REMOVED */
}

.gantt-grid-lines {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none; /* Don't interfere with bars */
}

.gantt-grid-line-vertical {
    position: absolute;
    top: 0;
    bottom: 0;
    border-left: 1px dashed #dcdcdc;
}

.gantt-grid-line-horizontal {
    position: absolute;
    left: 0;
    right: 0;
    border-top: 1px solid #e8e8e8;
    height: 30px;
    box-sizing: border-box;
}

.gantt-bar-container {
    position: absolute; /* Position relative to chart area */
    height: 30px; /* Match row height */
    display: flex;
    align-items: center;
    padding: 4px 0; /* Vertical padding for bars */
    box-sizing: border-box;
}

.gantt-bar {
    height: 100%;
    background-color: #3498db; /* Default blue */
    border-radius: 3px;
    box-shadow: 1px 1px 2px rgba(0,0,0,0.1);
    cursor: pointer;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    color: white;
    font-size: 9pt;
    padding: 0 5px;
    white-space: nowrap;
}

.gantt-bar.summary {
    background-color: #555;
    height: 10px; /* Thinner bar for summaries */
    margin-top: 6px; /* Adjust vertical position */
    border-radius: 0;
}

.gantt-bar.milestone {
    background-color: #d35400; /* Orange for milestones */
    width: 20px !important; /* Fixed width */
    height: 20px;
    transform: rotate(45deg);
    border-radius: 0;
    margin-left: -10px; /* Adjust for rotation center */
}

.gantt-bar-progress {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.2); /* Darker overlay for progress */
    border-radius: 3px;
}

.gantt-bar-label {
    padding-left: 5px;
    font-size: 9pt;
    color: #333;
    white-space: nowrap;
}

/* Dependencies */
.gantt-dependencies {
    position: absolute;
    top: 0; /* Align with top of gantt-tasks */
    left: 250px; /* Still offset by task list width */
    /* Removed width/height - let SVG define size relative to scroll */
    pointer-events: none; /* Allow interaction with elements below */
    overflow: visible; /* Allow lines to draw outside bounds if needed */
    z-index: 3; /* Above bars */
    /* border: 1px dashed purple; */ /* DEBUG REMOVED */
}

#dependency-svg {
    position: absolute; /* Position relative to .gantt-dependencies */
    top: 0;
    left: 0;
    /* border: 1px dashed cyan; */ /* DEBUG REMOVED */
    /* Width and height set dynamically by JS based on content */
}

.dependency-line {
    stroke: #f39c12; /* Orange dependency lines */
    stroke-width: 1.5;
    fill: none;
    marker-end: url(#arrowhead);
}

#ezPrivacyCenter {
    position: fixed !important;
    bottom: 20px !important;
    right: 20px !important;
    top: auto !important;
    left: auto !important;
    display: block !important;
    margin: 0 !important;
    padding: 10px 16px !important;
    font-size: 14px !important;
    writing-mode: horizontal-tb !important;
    transform: none !important;
    background-color: #5fa624 !important;
    color: white !important;
    border-radius: 5px !important;
    z-index: 2147483647 !important;
    box-shadow: 0 0 10px rgba(0,0,0,0.3) !important;
    cursor: pointer !important;
} 