@import '_content/Octane.DAE/Octane.DAE.bundle.scp.css';

/* _content/EzBzModule/Component/POM/Chart/ScheduleDailyGanttChart.razor.rz.scp.css */
.timeline-board[b-9bnpouoqi5] {
    display: flex;
    background: #FFF;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
    width: 100%;
}

.plan-cell-bg[b-9bnpouoqi5] {
    background: #FFEDD5 !important; /* orange bg */
    color: #C2410C !important; /* deep orange text */
    font-weight: 600;
    font-family: monospace;
}

.actual-cell-bg[b-9bnpouoqi5] {
    background: #E0F2FE !important; /* light blue bg */
    color: #0369A1 !important; /* deep blue text */
    font-weight: 600;
    font-family: monospace;
}


/* left sidebar */
.sidebar-table-container[b-9bnpouoqi5] {
    max-width: 50%;
    overflow-x: auto;
    background: #F8FAFC;
    border-right: 2px solid #CBD5E1;
    box-sizing: border-box;
}

.modern-business-table[b-9bnpouoqi5] {
    border-collapse: collapse;
    width: 100%;
    table-layout: auto;
}

    .modern-business-table th[b-9bnpouoqi5] {
        color: #1E293B;
        font-weight: 700;
        font-size: 12px;
        border-right: 1px solid #CBD5E1;
        border-bottom: 1px solid #CBD5E1;
        height: 36px;
        text-align: center;
        box-sizing: border-box;
        padding: 0 14px;
        white-space: nowrap;
    }

.plan-time-header[b-9bnpouoqi5] {
    background: #FFF7ED !important; /* light orange bg */
    color: #EA580C !important; /* modern geek orange */
}

.actual-time-header[b-9bnpouoqi5] {
    background: #F0FDF4 !important; /* light teal bg */
    color: #0284C7 !important; /* modern tech blue */
}

.time-sub-header[b-9bnpouoqi5] {
    font-size: 11px !important;
    font-weight: 600 !important;
    height: 36px;
}

.modern-business-table td[b-9bnpouoqi5] {
    height: 60px;
    padding: 0 14px;
    border-right: 1px solid #E2E8F0;
    border-bottom: 1px solid #E2E8F0;
    font-size: 12px;
    color: #334155;
    text-align: center;
    box-sizing: border-box;
    white-space: nowrap;
}

.text-content-cell[b-9bnpouoqi5] {
    text-align: left !important;
}

.merged-line-cell[b-9bnpouoqi5] {
    background: #F8FAFC !important;
    vertical-align: middle;
    border-right: 1px solid #CBD5E1 !important;
    font-weight: 700;
}

.business-row[b-9bnpouoqi5] {
    transition: background 0.1s ease;
}

    .business-row:hover[b-9bnpouoqi5], .row-highlight[b-9bnpouoqi5] {
        background: #F1F5F9;
    }

.line-badge[b-9bnpouoqi5] {
    background: #E2E8F0;
    padding: 3px 8px;
    border-radius: 4px;
    font-weight: 600;
    color: #475569;
}

.font-semibold[b-9bnpouoqi5] {
    font-weight: 600;
    color: #0F172A;
}

.font-highlight[b-9bnpouoqi5] {
    color: #2563EB;
    font-weight: 700;
    text-align: right !important;
}

.plan-cell-bg[b-9bnpouoqi5] {
    background: #FFF7ED !important;
    color: #C2410C !important;
    font-weight: 600;
    font-family: monospace;
}

.actual-cell-bg[b-9bnpouoqi5] {
    background: #F0F9FF !important;
    color: #0369A1 !important;
    font-weight: 600;
    font-family: monospace;
}

/* right SVG */
.chart-area-wrapper[b-9bnpouoqi5] {
    max-width: 50%;
    overflow-x: auto;
    background: #FFF;
    position: relative;
    box-sizing: border-box;
    flex-grow: 1;
}

.chart-area-inner[b-9bnpouoqi5] {
    display: flex;
    flex-direction: column;
    transition: width 0.05s ease-out;
    flex-shrink: 0;
    width: max-content;
}

.timeline-headers[b-9bnpouoqi5] {
    display: flex;
    flex-direction: column;
    width: 100%;
    flex-shrink: 0;
}

.header-row[b-9bnpouoqi5] {
    display: flex;
    width: 100%;
}

.master-day-row[b-9bnpouoqi5] {
    height: 36px;
    background: #EDF2F7;
    border-bottom: 1px solid #E2E8F0;
}

.today-header-cell[b-9bnpouoqi5] {
    background: #FEF2F2 !important;
    color: #EF4444 !important;
}

.hour-row[b-9bnpouoqi5] {
    height: 36px;
    background: #F8FAFC;
    border-bottom: 1px solid #E2E8F0;
}

.header-cell[b-9bnpouoqi5] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
    color: #475569;
    border-right: 1px solid #E2E8F0;
    box-sizing: border-box;
    flex-shrink: 0;
}

.svg-container[b-9bnpouoqi5] {
    background: #FFF;
    width: 100%;
}

.svg-content[b-9bnpouoqi5] {
    display: block;
}

.gantt-bar-plan[b-9bnpouoqi5] {
    fill: #FB923C;
    cursor: pointer;
    filter: drop-shadow(0 2px 4px rgba(234, 88, 12, 0.15));
}

.gantt-bar-actual[b-9bnpouoqi5] {
    fill: #38BDF8;
    cursor: pointer;
    filter: drop-shadow(0 2px 4px rgba(2, 132, 199, 0.15));
}

/* Today line */
.today-line[b-9bnpouoqi5] {
    stroke: #EF4444;
    stroke-width: 1.5;
}

/* Tooltip */
.modern-tooltip[b-9bnpouoqi5] {
    position: absolute;
    z-index: 999;
    width: 270px;
    background: #FFFFFF;
    border-radius: 12px;
    box-shadow: 0 10px 30px -5px rgba(15, 23, 42, 0.15);
    border: 1px solid #E2E8F0;
    padding: 14px;
    pointer-events: none;
    transition: opacity 0.1s ease-out;
}

.tooltip-header[b-9bnpouoqi5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #F1F5F9;
    padding-bottom: 8px;
    margin-bottom: 10px;
}

.tooltip-title[b-9bnpouoqi5] {
    font-size: 14px;
    font-weight: 700;
    color: #0F172A;
}

.tooltip-badge[b-9bnpouoqi5] {
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 600;
}

.badge-plan[b-9bnpouoqi5] {
    background: #FFEDD5;
    color: #C2410C;
}

.badge-actual[b-9bnpouoqi5] {
    background: #E0F2FE;
    color: #0369A1;
}

.tooltip-section-title[b-9bnpouoqi5] {
    font-size: 11px;
    font-weight: 700;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 6px;
}

.tooltip-body[b-9bnpouoqi5] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.tooltip-item[b-9bnpouoqi5] {
    display: flex;
    align-items: center;
    font-size: 12px;
    line-height: 1.5;
}

    .tooltip-item .label[b-9bnpouoqi5] {
        color: #64748B;
        width: 60px;
        flex-shrink: 0;
    }

/* text pattern */
.val-common[b-9bnpouoqi5] {
    color: #334155;
    font-weight: 500;
}

.val-qty[b-9bnpouoqi5] {
    color: #2563EB;
    font-weight: 700;
}

.text-muted[b-9bnpouoqi5] {
    color: #94A3B8;
    font-style: italic;
}

.time-item-plan[b-9bnpouoqi5] {
    background: #FFF7ED;
    padding: 4px 6px;
    border-radius: 6px;
    border-left: 3px solid #FB923C;
}

.font-plan[b-9bnpouoqi5] {
    color: #9A3412;
    font-weight: 600;
    font-family: monospace;
}

.tag-plan[b-9bnpouoqi5] {
    background: #EA580C;
    color: #FFF;
}

.time-item-actual[b-9bnpouoqi5] {
    background: #F0F9FF;
    padding: 4px 6px;
    border-radius: 6px;
    border-left: 3px solid #38BDF8;
}

.font-actual[b-9bnpouoqi5] {
    color: #075E8A;
    font-weight: 600;
    font-family: monospace;
}

.tag-actual[b-9bnpouoqi5] {
    background: #0284C7;
    color: #FFF;
}

.duration-tag[b-9bnpouoqi5] {
    font-size: 10px;
    font-weight: 700;
    padding: 1px 5px;
    border-radius: 4px;
    margin-left: auto;
    font-family: monospace;
}

/* selected row */
.row-selected-active[b-9bnpouoqi5] {
    background: #F0F9FF !important;
}

    .row-selected-active td.font-semibold[b-9bnpouoqi5] {
        position: relative;
    }
        
        .row-selected-active td.font-semibold[b-9bnpouoqi5]::before {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 3.5px; 
            background: #0284C7;
            box-shadow: 1px 0 4px rgba(2, 132, 199, 0.3); 
        }

    .row-selected-active .plan-cell-bg[b-9bnpouoqi5] {
        background: #FFE4E6 !important;
        color: #BE123C !important;
    }

    .row-selected-active .actual-cell-bg[b-9bnpouoqi5] {
        background: #E0F2FE !important;
    }

.svg-row-background[b-9bnpouoqi5] {
    fill: transparent;
    pointer-events: none;
    transition: fill 0.2s ease;
    opacity: 0.05;
}

.svg-row-selected[b-9bnpouoqi5] {
    fill: #0284C7;
    opacity: 0.05;
}
