        .header {
            color: #003f31;
            margin-bottom: 10px;
            font-size: 16px;
        }         
        
        .layout-container {
            display: flex;
            gap: 20px;
            margin-top: 20px;
        }

        .left-column {
            background: #f8f9fa;
            border-radius: 8px;
            padding: 15px;
        }

        .vertical-block {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        .block-item {
            padding: 12px;
            background: white;
            border: 1px solid #e0e0e0;
            border-radius: 6px;
            text-align: center;
            cursor: pointer;
            transition: all 0.3s ease;
        }

        .block-item:hover {
            background: #e9ecef;
            border-color: #007bff;
        }

        .center-column {
            background: white;
            border-radius: 8px;
            padding: 20px;
            border: 1px solid #e0e0e0;
        }

        .calendar-grid {
            display: flex;
            flex-direction: column;
            width: 100%;
        }

        .calendar-header {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 1px;
            background: #e0e0e0;
        }

        .calendar-day-header {
            padding: 12px 8px;
            background: #f8f9fa;
            border: 1px solid #e0e0e0;
            text-align: center;
            font-weight: bold;
            color: #333;
        }

        .calendar-week {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 1px;
            background: #e0e0e0;
        }

        .calendar-day {
            padding: 8px;
            background: white;
            border: 1px solid #e0e0e0;
            min-height: 100px;
            vertical-align: top;
            transition: background-color 0.3s ease;
        }

        .calendar-day:hover {
            background: #f0f8ff;
        }

        .day-number {
            text-align: center;
            font-weight: bold;
            margin-bottom: 5px;
            padding: 2px;
        }

        .current-day {
            background: #003f31;
            color: white;
            border-radius: 50%;
            width: 24px;
            height: 24px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }

        .event {
            font-size: 11px;
            padding: 2px 4px;
            margin: 5px 1px;
            background: #f0e5c6;
            border-radius: 3px;
            cursor: pointer;
        }

        .event:hover {
            background: #bbdefb;
        }

        .other-month {
            background: #f8f9fa;
            color: #999;
        }

        .task-column {
            display: flex;
            flex-direction: column;
        }

        .text-content {
            font-weight: bold;
            color: #333;
        }

        .task-item {
            padding: 15px;
            border-bottom: 1px solid #e0e0e0;
            cursor: pointer;
            transition: background 0.3s ease;
        }

        .task-item:hover {
            background: #f8f9fa;
        }

        .table-status {
            padding: 4px 8px;
            border-radius: 12px;
            font-size: 11px;
            font-weight: bold;
        }

        .table-status:first-child {
            background: #e3f2fd;
            color: #1976d2;
        }

        .table-content {
            margin-top: 8px;
            color: #333;
            font-size: 14px;
        }

        .event {
            font-size: 11px;
            padding: 2px 4px;
            margin: 5px 1px;
            background: #f0e5c6;
            border-radius: 3px;
            cursor: pointer;
        }

        .event-task {
            font-size: 11px;
            padding: 4px 4px;
            margin: 5px 1px;
            border-radius: 3px;
            cursor: pointer;
            background: #e3f2fd;
            border-left: 3px solid #2196f3;
        }

        .event-task:hover {
            background: #bbdefb;
        }

        .event-activity {
            font-size: 11px;
            padding: 4px 4px;
            margin: 5px 1px;
            border-radius: 3px;
            cursor: pointer;
            background: #e8f5e8;
            border-left: 3px solid #4caf50;
        }

        .event-activity:hover {
            background: #c8e6c9;
        }

        .event-deadline {
            font-size: 11px;
            padding: 4px 4px;
            margin: 5px 1px;
            border-radius: 3px;
            cursor: pointer;            
            background: #ffebee;
            border-left: 3px solid #f44336;
        }

        .event-deadline:hover {
            background: #ffcdd2;
        }

        .event-experiment {
            font-size: 11px;
            padding: 4px 4px;
            margin: 5px 1px;
            border-radius: 3px;
            cursor: pointer;            
            background: #fff3e0;
            border-left: 3px solid #ff9800;
        }

        .event-experiment:hover {
            background: #ffe0b2;
        }

        .event-deal {
            background: #f3e5f5;
            font-size: 11px;
            padding: 4px 4px;
            margin: 5px 1px;
            border-radius: 3px;
            cursor: pointer;            
            border-left: 3px solid #9c27b0;
        }

        .event-deal:hover {
            background: #e1bee7;
        }

        /* Индикатор срока (Trello-style) */
        .deadline-closed {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
    padding: 2px 8px;
    border-radius: 3px;
    font-size: 0.75em;
    color: #999;
    background: #e8e8e8;
    white-space: nowrap;
}
.deadline-closed svg { stroke: #999; }
.deadline-far {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            margin-top: 6px;
            padding: 3px 8px;
            border-radius: 3px;
            font-size: 11px;
            background: #e3f2fd;
            color: #1976d2;
            white-space: nowrap;
        }

        .deadline-soon {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            margin-top: 6px;
            padding: 3px 8px;
            border-radius: 3px;
            font-size: 11px;
            background: #fff3e0;
            color: #e65100;
            white-space: nowrap;
        }

        .deadline-overdue {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            margin-top: 6px;
            padding: 3px 8px;
            border-radius: 3px;
            font-size: 11px;
            background: #ffebee;
            color: #c62828;
            white-space: nowrap;
            font-weight: bold;
        }