/* _content/Plato/Pages/Benutzerverwaltung.razor.rz.scp.css */
h2[b-b4qdrw7cru] {
    margin-bottom: 2rem;
}

.benutzer-section[b-b4qdrw7cru] {
    margin-top: 3rem;
}
/* _content/Plato/Pages/Catalog.razor.rz.scp.css */
.catalog-container[b-s9o817sx64] {
    padding: 20px;
}

.toolbar[b-s9o817sx64] {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.filter-spacer[b-s9o817sx64] {
    flex: 1;
    min-width: 30px;
}

.filter-section[b-s9o817sx64] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.filter-label[b-s9o817sx64] {
    margin: 0;
    font-weight: 500;
    white-space: nowrap;
}

.filter-combo[b-s9o817sx64] {
    width: 200px;
}

.catalog-grid[b-s9o817sx64] {
    margin-top: 20px;
}

.modal-overlay[b-s9o817sx64] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1050;
}

.modal-dialog[b-s9o817sx64] {
    background: white;
    border-radius: 8px;
    max-width: 600px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
}

.modal-content[b-s9o817sx64] {
    padding: 0;
}

.modal-header[b-s9o817sx64] {
    padding: 1rem 1.5rem;
    border-bottom: 1px solid #dee2e6;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-title[b-s9o817sx64] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 500;
}

.modal-body[b-s9o817sx64] {
    padding: 1.5rem;
}

.modal-footer[b-s9o817sx64] {
    padding: 1rem 1.5rem;
    border-top: 1px solid #dee2e6;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.btn-close[b-s9o817sx64] {
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-close:hover[b-s9o817sx64] {
    opacity: 0.7;
}

.btn-close[b-s9o817sx64]::before {
    content: "×";
}
/* _content/Plato/Pages/Dashboard.razor.rz.scp.css */
.calendar-container[b-4ae1ddeajf] {
    max-height: 600px;
    overflow-y: auto;
    padding: 1rem;
    background: #f9fafb;
}

.calendar-day[b-4ae1ddeajf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    margin-bottom: 0.5rem;
    background: white;
    border-radius: 8px;
    border-left: 4px solid #e5e7eb;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: all 0.2s ease;
}

.calendar-day:hover[b-4ae1ddeajf] {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transform: translateX(4px);
}

.calendar-day.today[b-4ae1ddeajf] {
    border-left-color: #3b82f6;
    background: #eff6ff;
}

.calendar-day.weekend[b-4ae1ddeajf] {
    background: #fafafa;
    border-left-color: #d1d5db;
}

.day-header[b-4ae1ddeajf] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex: 1;
}

.day-info[b-4ae1ddeajf] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.week-number[b-4ae1ddeajf] {
    font-size: 0.75rem;
    color: #6b7280;
    background: #f3f4f6;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-weight: 600;
    min-width: 2rem;
    text-align: center;
}

.calendar-day.today .week-number[b-4ae1ddeajf] {
    background: #3b82f6;
    color: white;
}

.day-number[b-4ae1ddeajf] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #111827;
    min-width: 2.5rem;
    text-align: center;
}

.calendar-day.today .day-number[b-4ae1ddeajf] {
    color: #3b82f6;
}

.calendar-day.weekend .day-number[b-4ae1ddeajf] {
    color: #9ca3af;
}

.day-name[b-4ae1ddeajf] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #6b7280;
    min-width: 2rem;
}

.month-info[b-4ae1ddeajf] {
    display: flex;
    align-items: center;
}

.month-year[b-4ae1ddeajf] {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

.task-badge[b-4ae1ddeajf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    color: white;
    border-radius: 20px;
    font-weight: 600;
    font-size: 0.875rem;
    min-width: 120px;
    justify-content: center;
}

.task-badge.badge-blue[b-4ae1ddeajf] {
    background: #3b82f6;
}

.task-badge.badge-orange[b-4ae1ddeajf] {
    background: #f97316;
}

.task-badge.badge-red[b-4ae1ddeajf] {
    background: #dc2626;
}

.task-badge.no-tasks[b-4ae1ddeajf] {
    background: #f3f4f6;
    color: #9ca3af;
}

.task-badge i[b-4ae1ddeajf] {
    font-size: 1rem;
}

.task-count[b-4ae1ddeajf] {
    font-size: 1rem;
}

/* Scrollbar Styling */
.calendar-container[b-4ae1ddeajf]::-webkit-scrollbar {
    width: 8px;
}

.calendar-container[b-4ae1ddeajf]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.calendar-container[b-4ae1ddeajf]::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 4px;
}

.calendar-container[b-4ae1ddeajf]::-webkit-scrollbar-thumb:hover {
    background: #9ca3af;
}

.leadtime-popup-body[b-4ae1ddeajf] {
    max-height: 560px;
    overflow: auto;
}

.leadtime-grid[b-4ae1ddeajf] {
    min-width: 980px;
}

.leadtime-popup-body[b-4ae1ddeajf]::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.leadtime-popup-body[b-4ae1ddeajf]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.leadtime-popup-body[b-4ae1ddeajf]::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 4px;
}

.leadtime-popup-body[b-4ae1ddeajf]::-webkit-scrollbar-thumb:hover {
    background: #9ca3af;
}

/* Responsive Design */
@media (max-width: 768px) {
    .calendar-day[b-4ae1ddeajf] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }

    .day-header[b-4ae1ddeajf] {
        width: 100%;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .task-badge[b-4ae1ddeajf] {
        width: 100%;
    }

    .leadtime-popup-body[b-4ae1ddeajf] {
        max-height: 60vh;
    }
}
/* _content/Plato/Pages/GanttChart.razor.rz.scp.css */
.gantt-container[b-jm63hajuzp] {
    padding: 1rem;
}

.toolbar[b-jm63hajuzp] {
    display: flex;
    gap: 1rem;
    align-items: center;
    flex-wrap: wrap;
}

.view-selector[b-jm63hajuzp],
.filter-section[b-jm63hajuzp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filter-label[b-jm63hajuzp] {
    font-weight: 500;
    color: #4b5563;
    margin: 0;
    white-space: nowrap;
}

.view-filter[b-jm63hajuzp],
.project-filter[b-jm63hajuzp] {
    min-width: 150px;
}

.gantt-chart[b-jm63hajuzp] {
    margin-top: 1.5rem;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow-x: auto;
    background: white;
}

.gantt-header[b-jm63hajuzp] {
    display: flex;
    border-bottom: 2px solid #d1d5db;
    background: #f9fafb;
}

.gantt-tasks-header[b-jm63hajuzp] {
    width: 300px;
    min-width: 300px;
    padding: 0.5rem 0.75rem;
    font-weight: 600;
    color: #374151;
    border-right: 1px solid #e5e7eb;
}

.gantt-meta-header[b-jm63hajuzp] {
    width: 350px;
    min-width: 350px;
    padding: 0.5rem 0.75rem;
    font-weight: 600;
    color: #374151;
    border-right: 1px solid #e5e7eb;
}

.gantt-timeline-header[b-jm63hajuzp] {
    display: flex;
}

.gantt-period-header[b-jm63hajuzp] {
    padding: 1rem 0.5rem;
    text-align: center;
    font-weight: 600;
    font-size: 0.85rem;
    color: #6b7280;
    border-right: 1px solid #e5e7eb;
}

.gantt-body[b-jm63hajuzp] {
    min-height: 200px;
}

.gantt-row[b-jm63hajuzp] {
    display: flex;
    border-bottom: 1px solid #e5e7eb;
    min-height: 32px;
}

.gantt-row:hover[b-jm63hajuzp] {
    background: #f9fafb;
}

.gantt-task-info[b-jm63hajuzp] {
    width: 300px;
    min-width: 300px;
    padding: 0.4rem 0.75rem;
    border-right: 1px solid #e5e7eb;
    display: flex;
    align-items: center;
}

.task-title[b-jm63hajuzp] {
    font-weight: 500;
    color: #111827;
    font-size: 0.8rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.gantt-task-meta[b-jm63hajuzp] {
    width: 350px;
    min-width: 350px;
    padding: 0.4rem 0.75rem;
    border-right: 1px solid #e5e7eb;
    display: flex;
    gap: 0.35rem;
    align-items: center;
    flex-wrap: wrap;
}

.project-badge[b-jm63hajuzp] {
    padding: 0.15rem 0.4rem;
    border-radius: 3px;
    font-size: 0.7rem;
    color: white;
    font-weight: 500;
}

.priority-badge[b-jm63hajuzp] {
    padding: 0.15rem 0.4rem;
    border-radius: 3px;
    font-size: 0.7rem;
    font-weight: 500;
}

.priority-kritisch[b-jm63hajuzp] {
    background: #fee2e2;
    color: #991b1b;
}

.priority-hoch[b-jm63hajuzp] {
    background: #fed7aa;
    color: #9a3412;
}

.priority-mittel[b-jm63hajuzp] {
    background: #fef3c7;
    color: #92400e;
}

.priority-normal[b-jm63hajuzp] {
    background: #dbeafe;
    color: #1e40af;
}

.priority-unwichtig[b-jm63hajuzp] {
    background: #f3f4f6;
    color: #4b5563;
}

.gantt-timeline[b-jm63hajuzp] {
    position: relative;
    min-height: 32px;
}

.today-line-full[b-jm63hajuzp] {
    position: absolute;
    top: 0;
    height: 100%;
    width: 2px;
    background: #dc2626;
    z-index: 20;
    pointer-events: none;
}

.gantt-bar[b-jm63hajuzp] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 20px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.gantt-bar:hover[b-jm63hajuzp] {
    transform: translateY(-50%) scale(1.05);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    z-index: 10;
}

.gantt-bar.priority-kritisch[b-jm63hajuzp] {
    background: linear-gradient(135deg, #991b1b 0%, #7f1d1d 100%);
}

.gantt-bar.priority-hoch[b-jm63hajuzp] {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
}

.gantt-bar.priority-mittel[b-jm63hajuzp] {
    background: linear-gradient(135deg, #f97316 0%, #ea580c 100%);
}

.gantt-bar.priority-normal[b-jm63hajuzp] {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.gantt-bar.priority-unwichtig[b-jm63hajuzp] {
    background: linear-gradient(135deg, #9ca3af 0%, #6b7280 100%);
}

.bar-label[b-jm63hajuzp] {
    color: white;
    font-size: 0.7rem;
    font-weight: 600;
    white-space: nowrap;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

.empty-state[b-jm63hajuzp] {
    text-align: center;
    padding: 4rem 2rem;
    color: #6b7280;
}

.empty-state i[b-jm63hajuzp] {
    font-size: 4rem;
    color: #d1d5db;
    margin-bottom: 1rem;
}

.empty-state h4[b-jm63hajuzp] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.5rem;
}

.empty-state p[b-jm63hajuzp] {
    font-size: 1rem;
    max-width: 400px;
    margin: 0 auto;
}

.subtasks-list[b-jm63hajuzp] {
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 0.5rem;
    background: #f9fafb;
    max-height: 300px;
    overflow-y: auto;
}

.subtask-item[b-jm63hajuzp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: white;
    border-radius: 4px;
    margin-bottom: 0.5rem;
    cursor: move;
    transition: all 0.2s;
}

.subtask-item:hover[b-jm63hajuzp] {
    background: #f3f4f6;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.subtask-item:last-child[b-jm63hajuzp] {
    margin-bottom: 0;
}

.drag-handle[b-jm63hajuzp] {
    color: #9ca3af;
    cursor: grab;
    font-size: 1rem;
}

.drag-handle:active[b-jm63hajuzp] {
    cursor: grabbing;
}

.subtask-item input[type="checkbox"][b-jm63hajuzp] {
    flex-shrink: 0;
}

.subtask-item .form-control[b-jm63hajuzp] {
    border: 1px solid #d1d5db;
}

.subtask-item .form-control:focus[b-jm63hajuzp] {
    border-color: #3b82f6;
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.modal-overlay[b-jm63hajuzp] {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0, 0, 0, 0.5) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 1050 !important;
    overflow-y: auto !important;
}

.modal-dialog[b-jm63hajuzp] {
    width: 90% !important;
    max-width: 650px !important;
    margin: 0 !important;
    position: relative !important;
}

.modal-dialog-custom[b-jm63hajuzp] {
    width: 90% !important;
    max-width: 500px !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
    margin: 0 !important;
    position: relative !important;
}

.modal-content-custom[b-jm63hajuzp] {
    background: white;
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
}

.modal-content[b-jm63hajuzp] {
    background: white;
    border-radius: 6px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.modal-header[b-jm63hajuzp] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    background: white;
    z-index: 1;
}

.modal-title[b-jm63hajuzp] {
    font-size: 1.25rem;
    font-weight: 600;
    color: #111827;
    margin: 0;
}

.modal-body[b-jm63hajuzp] {
    padding: 1.25rem;
}

.modal-footer[b-jm63hajuzp] {
    padding: 1rem 1.25rem;
    border-top: 1px solid #e5e7eb;
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
    position: sticky;
    bottom: 0;
    background: white;
    z-index: 1;
}

.btn-close[b-jm63hajuzp] {
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    color: #6b7280;
    padding: 0;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-close:hover[b-jm63hajuzp] {
    color: #111827;
}

.btn-close[b-jm63hajuzp]::before {
    content: "├ù";
}


/* _content/Plato/Pages/Heute.razor.rz.scp.css */
.date-picker-container[b-n6d43pjm1u] {
    min-width: 200px;
}

.date-picker[b-n6d43pjm1u] {
    border: 1px solid #d1d5db;
    border-radius: 6px;
}

.today-container[b-n6d43pjm1u] {
    padding: 1rem;
}

.toolbar[b-n6d43pjm1u] {
    display: flex;
    gap: 0.5rem;
}

.today-grid[b-n6d43pjm1u] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(185px, 1fr));
    gap: 0.6rem;
    margin-top: 0.75rem;
}

.today-card[b-n6d43pjm1u] {
    background: white;
    border-radius: 6px;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    border-left: 3px solid;
    transition: transform 0.2s, box-shadow 0.2s;
}

.today-card:hover[b-n6d43pjm1u] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.today-card.priority-kritisch[b-n6d43pjm1u] {
    border-left-color: #dc2626;
}

.today-card.priority-hoch[b-n6d43pjm1u] {
    border-left-color: #ea580c;
}

.today-card.priority-mittel[b-n6d43pjm1u] {
    border-left-color: #ca8a04;
}

.today-card.priority-normal[b-n6d43pjm1u] {
    border-left-color: #2563eb;
}

.today-card.priority-unwichtig[b-n6d43pjm1u] {
    border-left-color: #6b7280;
}

.today-card.at-risk-card[b-n6d43pjm1u] {
    background-color: #dc3545;
    border-left-color: #a71d2a;
}

.today-card.at-risk-card[b-n6d43pjm1u],
.today-card.at-risk-card .card-title[b-n6d43pjm1u],
.today-card.at-risk-card .project-name[b-n6d43pjm1u],
.today-card.at-risk-card .description[b-n6d43pjm1u],
.today-card.at-risk-card .meta-item[b-n6d43pjm1u],
.today-card.at-risk-card .meta-item span[b-n6d43pjm1u],
.today-card.at-risk-card .meta-item i[b-n6d43pjm1u],
.today-card.at-risk-card .priority-badge[b-n6d43pjm1u] {
    color: white !important;
}

.card-header[b-n6d43pjm1u] {
    padding: 0.35rem 0.5rem;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.card-title-section[b-n6d43pjm1u] {
    flex: 1;
}

.project-name[b-n6d43pjm1u] {
    display: block;
    font-size: 0.6rem;
    color: #6b7280;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.15rem;
}

.card-title[b-n6d43pjm1u] {
    margin: 0;
    font-size: 0.78rem;
    font-weight: 600;
    color: #111827;
    line-height: 1.2;
}

.priority-badge[b-n6d43pjm1u] {
    padding: 0.1rem 0.3rem;
    border-radius: 6px;
    font-size: 0.55rem;
    font-weight: 600;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.priority-kritisch[b-n6d43pjm1u] {
    background: #fee2e2;
    color: #991b1b;
}

.priority-hoch[b-n6d43pjm1u] {
    background: #fed7aa;
    color: #9a3412;
}

.priority-mittel[b-n6d43pjm1u] {
    background: #fef3c7;
    color: #92400e;
}

.priority-normal[b-n6d43pjm1u] {
    background: #dbeafe;
    color: #1e40af;
}

.priority-unwichtig[b-n6d43pjm1u] {
    background: #f3f4f6;
    color: #4b5563;
}

.card-body[b-n6d43pjm1u] {
    padding: 0.35rem 0.5rem;
}

.description[b-n6d43pjm1u] {
    color: #4b5563;
    font-size: 0.7rem;
    line-height: 1.2;
    margin-bottom: 0.35rem;
}

.card-meta[b-n6d43pjm1u] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.meta-item[b-n6d43pjm1u] {
    display: flex;
    align-items: center;
    gap: 0.2rem;
    font-size: 0.65rem;
    color: #6b7280;
}

.meta-item i[b-n6d43pjm1u] {
    font-size: 0.8rem;
}

.meta-item.reminder[b-n6d43pjm1u] {
    color: #ea580c;
    font-weight: 500;
}

.card-footer[b-n6d43pjm1u] {
    padding: 0.3rem 0.5rem;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    border-radius: 0 0 6px 6px;
}

.completed-check[b-n6d43pjm1u] {
    display: flex;
    align-items: center;
    gap: 0.2rem;
    cursor: pointer;
    margin: 0;
    font-size: 0.7rem;
    color: #4b5563;
}

.completed-check input[type="checkbox"][b-n6d43pjm1u] {
    width: 0.85rem;
    height: 0.85rem;
    cursor: pointer;
}

.empty-state[b-n6d43pjm1u] {
    text-align: center;
    padding: 4rem 2rem;
    color: #6b7280;
}

.empty-state i[b-n6d43pjm1u] {
    font-size: 4rem;
    color: #d1d5db;
    margin-bottom: 1rem;
}

.empty-state h4[b-n6d43pjm1u] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.5rem;
}

.empty-state p[b-n6d43pjm1u] {
    font-size: 1rem;
    max-width: 400px;
    margin: 0 auto;
}

.subtasks-list[b-n6d43pjm1u] {
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 0.5rem;
    background: #f9fafb;
    max-height: 300px;
    overflow-y: auto;
}

.subtask-item[b-n6d43pjm1u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: white;
    border-radius: 4px;
    margin-bottom: 0.5rem;
    transition: all 0.2s;
}

.subtask-item:hover[b-n6d43pjm1u] {
    background: #f3f4f6;
}

.subtask-item:last-child[b-n6d43pjm1u] {
    margin-bottom: 0;
}

.subtask-controls[b-n6d43pjm1u] {
    display: flex;
    gap: 0.15rem;
    flex-shrink: 0;
}

.subtask-controls button[b-n6d43pjm1u] {
    width: 18px;
    min-width: 18px;
    padding: 0.05rem 0.1rem;
    font-size: 0.7rem;
}

.subtask-item input[type="checkbox"][b-n6d43pjm1u] {
    flex-shrink: 0;
}

.subtask-item .form-control[b-n6d43pjm1u] {
    border: 1px solid #d1d5db;
}

.subtask-item .form-control:focus[b-n6d43pjm1u] {
    border-color: #3b82f6;
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.modal-overlay[b-n6d43pjm1u] {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0, 0, 0, 0.5) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 1050 !important;
    overflow-y: auto !important;
}

.modal-dialog[b-n6d43pjm1u] {
    width: 90% !important;
    max-width: 650px !important;
    margin: 0 !important;
    position: relative !important;
}

.modal-dialog-custom[b-n6d43pjm1u] {
    width: 90% !important;
    max-width: 500px !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
    margin: 0 !important;
    position: relative !important;
}

.modal-content-custom[b-n6d43pjm1u] {
    background: white;
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
}

.modal-content[b-n6d43pjm1u] {
    background: white;
    border-radius: 6px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.modal-header[b-n6d43pjm1u] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-title[b-n6d43pjm1u] {
    font-size: 1.25rem;
    font-weight: 600;
    color: #111827;
    margin: 0;
}

.modal-body[b-n6d43pjm1u] {
    padding: 1.25rem;
    max-height: calc(100vh - 200px);
    overflow-y: auto;
}

.modal-footer[b-n6d43pjm1u] {
    padding: 1rem 1.25rem;
    border-top: 1px solid #e5e7eb;
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

/* === KANBAN BOARD === */

.kanban-board[b-n6d43pjm1u] {
    display: flex;
    gap: 0.75rem;
    overflow-x: auto;
    padding-bottom: 1rem;
    min-height: calc(100vh - 200px);
    align-items: flex-start;
}

.kanban-column[b-n6d43pjm1u] {
    flex: 1 1 0;
    min-width: 220px;
    max-width: 320px;
    background: #f3f4f6;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 200px);
    transition: background 0.15s;
}

.kanban-column-dragover[b-n6d43pjm1u] {
    background: #dbeafe !important;
}

.kanban-card-dragging[b-n6d43pjm1u] {
    opacity: 0.5;
    transform: rotate(2deg);
}

.kanban-column-header[b-n6d43pjm1u] {
    padding: 0.6rem 0.75rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 8px 8px 0 0;
    background: #e5e7eb;
}

.kanban-column-title[b-n6d43pjm1u] {
    font-weight: 600;
    font-size: 0.85rem;
    color: #374151;
}

.kanban-column-count[b-n6d43pjm1u] {
    background: #9ca3af;
    color: white;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.1rem 0.45rem;
    border-radius: 10px;
    min-width: 20px;
    text-align: center;
}

.kanban-column-body[b-n6d43pjm1u] {
    padding: 0.5rem;
    overflow-y: auto;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.kanban-card[b-n6d43pjm1u] {
    background: white;
    border-radius: 6px;
    padding: 0.5rem 0.6rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    border-left: 3px solid;
    cursor: grab;
    transition: transform 0.15s, box-shadow 0.15s;
    font-size: 0.8rem;
}

.kanban-column.weekend-column .kanban-card[b-n6d43pjm1u] {
    background: #f8fafc;
}

.kanban-card:hover[b-n6d43pjm1u] {
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.12);
}

.kanban-card:active[b-n6d43pjm1u] {
    cursor: grabbing;
    opacity: 0.8;
}

.kanban-card.priority-kritisch[b-n6d43pjm1u] { border-left-color: #dc2626; }
.kanban-card.priority-hoch[b-n6d43pjm1u] { border-left-color: #ea580c; }
.kanban-card.priority-mittel[b-n6d43pjm1u] { border-left-color: #ca8a04; }
.kanban-card.priority-normal[b-n6d43pjm1u] { border-left-color: #2563eb; }
.kanban-card.priority-unwichtig[b-n6d43pjm1u] { border-left-color: #6b7280; }

.kanban-card.at-risk-card[b-n6d43pjm1u] {
    background-color: #dc3545;
    color: white;
    border-left-color: #a71d2a;
}

.kanban-card.at-risk-card .kanban-card-project[b-n6d43pjm1u],
.kanban-card.at-risk-card .kanban-card-title[b-n6d43pjm1u],
.kanban-card.at-risk-card .kanban-card-meta span[b-n6d43pjm1u],
.kanban-card.at-risk-card .kanban-card-date span[b-n6d43pjm1u],
.kanban-card.at-risk-card .kanban-priority-badge[b-n6d43pjm1u] {
    color: white !important;
}

.kanban-card-project[b-n6d43pjm1u] {
    font-size: 0.65rem;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 0.15rem;
}

.kanban-card-title[b-n6d43pjm1u] {
    font-weight: 600;
    font-size: 0.8rem;
    color: #111827;
    margin-bottom: 0.3rem;
    line-height: 1.25;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.kanban-card-meta[b-n6d43pjm1u] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.65rem;
    color: #6b7280;
    margin-bottom: 0.15rem;
}

.kanban-priority-badge[b-n6d43pjm1u] {
    padding: 0.05rem 0.3rem;
    border-radius: 3px;
    font-size: 0.6rem;
    font-weight: 600;
    color: white;
}

.kanban-priority-badge.priority-kritisch[b-n6d43pjm1u] { background: #dc2626; }
.kanban-priority-badge.priority-hoch[b-n6d43pjm1u] { background: #ea580c; }
.kanban-priority-badge.priority-mittel[b-n6d43pjm1u] { background: #ca8a04; }
.kanban-priority-badge.priority-normal[b-n6d43pjm1u] { background: #2563eb; }
.kanban-priority-badge.priority-unwichtig[b-n6d43pjm1u] { background: #6b7280; }

.kanban-card-date[b-n6d43pjm1u] {
    font-size: 0.65rem;
    color: #9ca3af;
}

.kanban-card-actions[b-n6d43pjm1u] {
    display: flex;
    gap: 0.3rem;
    margin-top: 0.3rem;
    justify-content: flex-end;
}

.kanban-action-btn[b-n6d43pjm1u] {
    padding: 0.1rem 0.35rem;
    font-size: 0.65rem;
    line-height: 1;
}

.kanban-card-title[b-n6d43pjm1u] {
    cursor: pointer;
}

.kanban-card-title:hover[b-n6d43pjm1u] {
    color: #2563eb;
}

.note-btn[b-n6d43pjm1u] {
    appearance: none;
    -webkit-appearance: none;
    width: 38px;
    height: 34px;
    border: none;
    border-radius: 10px;
    background: #fff;
    color: #6b4f00;
    box-shadow: 0 2px 6px rgba(214,168,0,0.18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    transition: background 0.2s;
}
.note-btn.has-note[b-n6d43pjm1u] {
    background: linear-gradient(180deg, #ffe97a 0%, #ffd23f 100%);
    box-shadow: 0 2px 6px rgba(214,168,0,0.28);
}
/* _content/Plato/Pages/HeuteMobil.razor.rz.scp.css */
/* Mobile-optimiertes Layout für iPhone */
.mobile-container[b-mu85650o91] {
    max-width: 500px;
    margin: 0 auto;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', sans-serif;
    background: #f2f2f7;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
}

/* Header */
.mobile-header[b-mu85650o91] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 16px 8px;
    background: #f2f2f7;
    position: sticky;
    top: 0;
    z-index: 10;
}

.mobile-header h1[b-mu85650o91] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0;
    flex: 1;
    color: #1c1c1e;
}

.back-btn[b-mu85650o91] {
    background: none;
    border: none;
    font-size: 1.4rem;
    color: #007aff;
    padding: 4px 8px;
    cursor: pointer;
    border-radius: 8px;
}

.back-btn:active[b-mu85650o91] {
    background: rgba(0, 122, 255, 0.1);
}

.task-count[b-mu85650o91] {
    background: #007aff;
    color: white;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 12px;
    min-width: 28px;
    text-align: center;
}

/* Tagesnavigation */
.mobile-nav[b-mu85650o91] {
    display: flex;
    gap: 8px;
    padding: 8px 16px 12px;
    justify-content: center;
}

.nav-btn[b-mu85650o91] {
    background: white;
    border: none;
    padding: 8px 20px;
    border-radius: 10px;
    font-size: 0.95rem;
    font-weight: 500;
    color: #007aff;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    transition: background 0.15s;
}

.nav-btn:active[b-mu85650o91] {
    background: #e5e5ea;
}

.today-btn[b-mu85650o91] {
    background: #007aff;
    color: white;
    font-weight: 600;
}

.today-btn:active[b-mu85650o91] {
    background: #0056b3;
}

/* Aufgabenliste */
.mobile-list[b-mu85650o91] {
    padding: 0 16px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Aufgabenkarte */
.mobile-card[b-mu85650o91] {
    background: white;
    border-radius: 12px;
    padding: 14px 16px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
    border-left: 4px solid #2563eb;
    transition: opacity 0.3s;
}

.mobile-card.completed[b-mu85650o91] {
    opacity: 0.5;
}

.mobile-card.priority-kritisch[b-mu85650o91] {
    border-left-color: #dc2626;
}

.mobile-card.priority-hoch[b-mu85650o91] {
    border-left-color: #ea580c;
}

.mobile-card.priority-mittel[b-mu85650o91] {
    border-left-color: #ca8a04;
}

.mobile-card.priority-normal[b-mu85650o91] {
    border-left-color: #2563eb;
}

.mobile-card.priority-unwichtig[b-mu85650o91] {
    border-left-color: #9ca3af;
}

/* Karte: oberer Bereich */
.card-top[b-mu85650o91] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6px;
}

.card-project[b-mu85650o91] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.card-priority[b-mu85650o91] {
    font-size: 0.65rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.card-priority.priority-kritisch[b-mu85650o91] {
    background: #fef2f2;
    color: #dc2626;
}

.card-priority.priority-hoch[b-mu85650o91] {
    background: #fff7ed;
    color: #ea580c;
}

.card-priority.priority-mittel[b-mu85650o91] {
    background: #fefce8;
    color: #ca8a04;
}

.card-priority.priority-normal[b-mu85650o91] {
    background: #eff6ff;
    color: #2563eb;
}

.card-priority.priority-unwichtig[b-mu85650o91] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Titel-Zeile mit Checkbox */
.card-title-row[b-mu85650o91] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 4px;
}

.check-container[b-mu85650o91] {
    position: relative;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 2px;
}

.check-container input[b-mu85650o91] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.checkmark[b-mu85650o91] {
    display: block;
    width: 22px;
    height: 22px;
    border: 2px solid #d1d5db;
    border-radius: 50%;
    transition: all 0.2s;
}

.check-container input:checked ~ .checkmark[b-mu85650o91] {
    background: #34c759;
    border-color: #34c759;
}

.check-container input:checked ~ .checkmark[b-mu85650o91]::after {
    content: '✓';
    display: block;
    text-align: center;
    color: white;
    font-size: 13px;
    line-height: 18px;
    font-weight: bold;
}

.card-title[b-mu85650o91] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #1c1c1e;
    line-height: 1.3;
}

.card-title.done[b-mu85650o91] {
    text-decoration: line-through;
    color: #9ca3af;
}

/* Beschreibung */
.card-desc[b-mu85650o91] {
    font-size: 0.8rem;
    color: #6b7280;
    margin: 4px 0 6px 32px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Meta-Informationen */
.card-meta[b-mu85650o91] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 8px 0 0 32px;
    font-size: 0.75rem;
    color: #9ca3af;
}

.card-meta span[b-mu85650o91] {
    display: flex;
    align-items: center;
    gap: 3px;
}

.card-meta .reminder[b-mu85650o91] {
    color: #ea580c;
    font-weight: 600;
}

/* Aktions-Buttons */
.card-actions[b-mu85650o91] {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #f3f4f6;
}

.action-btn[b-mu85650o91] {
    background: none;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 6px 14px;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: background 0.15s;
}

.action-btn.postpone[b-mu85650o91] {
    color: #dc2626;
    border-color: #fecaca;
}

.action-btn.postpone:active[b-mu85650o91] {
    background: #fef2f2;
}

/* Leerer Zustand */
.empty-state[b-mu85650o91] {
    text-align: center;
    padding: 60px 20px;
    color: #9ca3af;
}

.empty-state i[b-mu85650o91] {
    font-size: 3rem;
    display: block;
    margin-bottom: 12px;
    color: #34c759;
}

.empty-state p[b-mu85650o91] {
    font-size: 1rem;
    font-weight: 500;
}

/* Touch-Optimierungen */
@media (hover: none) and (pointer: coarse) {
    .mobile-card[b-mu85650o91] {
        -webkit-tap-highlight-color: transparent;
    }

    .action-btn[b-mu85650o91], .nav-btn[b-mu85650o91], .back-btn[b-mu85650o91] {
        min-height: 44px;
        min-width: 44px;
    }
}

/* Safe Area für iPhone Notch */
@supports (padding-top: env(safe-area-inset-top)) {
    .mobile-header[b-mu85650o91] {
        padding-top: calc(16px + env(safe-area-inset-top));
    }

    .mobile-list[b-mu85650o91] {
        padding-bottom: calc(24px + env(safe-area-inset-bottom));
    }
}
/* _content/Plato/Pages/Index.razor.rz.scp.css */
.version-badge[b-yq83ngu0tc] {
    background: #e5e7eb;
    color: #4b5563;
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

.logo[b-yq83ngu0tc] {
    width: 400px;
    max-width: 80%;
    height: auto;
}
/* _content/Plato/Pages/Kalender.razor.rz.scp.css */
/* Calendar Page Styles - Google Calendar inspired */

/* Page Layout with sidebar */
.calendar-page-layout[b-f33vcd1np4] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.calendar-sidebar[b-f33vcd1np4] {
    flex: 0 0 220px;
    min-width: 220px;
}

.calendar-main[b-f33vcd1np4] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

/* Mini Calendar */
.mini-calendar[b-f33vcd1np4] {
    margin-bottom: 12px;
}

.mini-calendar-header[b-f33vcd1np4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4px;
    padding: 0 2px;
}

.mini-month-title[b-f33vcd1np4] {
    font-weight: 600;
    font-size: 0.85rem;
    text-align: center;
}

.mini-nav[b-f33vcd1np4] {
    cursor: pointer;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 2px 6px;
    border-radius: 4px;
    user-select: none;
    color: var(--bs-secondary-color, #6c757d);
}

.mini-nav:hover[b-f33vcd1np4] {
    background: var(--bs-secondary-bg, #e9ecef);
}

.mini-nav-spacer[b-f33vcd1np4] {
    width: 24px;
}

.mini-calendar-table[b-f33vcd1np4] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.7rem;
    text-align: center;
    table-layout: fixed;
}

.mini-calendar-table thead th[b-f33vcd1np4] {
    font-weight: 600;
    color: var(--bs-secondary-color, #6c757d);
    padding: 2px 0;
    font-size: 0.65rem;
}

.mini-calendar-table td[b-f33vcd1np4] {
    padding: 2px 0;
    cursor: pointer;
    border-radius: 50%;
    line-height: 1.8;
}

.mini-calendar-table td:hover:not(.mini-kw)[b-f33vcd1np4] {
    background: var(--bs-secondary-bg, #e9ecef);
}

.mini-kw[b-f33vcd1np4] {
    font-size: 0.6rem;
    color: var(--bs-secondary-color, #adb5bd);
    cursor: default !important;
    width: 22px;
}

.mini-other[b-f33vcd1np4] {
    color: var(--bs-secondary-color, #adb5bd);
}

.mini-today[b-f33vcd1np4] {
    background: #ea4335 !important;
    color: white !important;
    font-weight: 700;
    border-radius: 50%;
}

.mini-current-week[b-f33vcd1np4] {
    background: rgba(26, 115, 232, 0.10);
}

.mini-day[b-f33vcd1np4] {
    transition: background 0.1s;
}

/* Context menu */
.context-menu-backdrop[b-f33vcd1np4] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1050;
}

.context-menu[b-f33vcd1np4] {
    position: fixed;
    z-index: 1051;
    background: white;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.15);
    min-width: 160px;
    padding: 4px 0;
    overflow: hidden;
}

.context-menu-item[b-f33vcd1np4] {
    padding: 8px 16px;
    cursor: pointer;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    transition: background 0.1s;
}

.context-menu-item:hover[b-f33vcd1np4] {
    background: var(--bs-light, #f8f9fa);
}

.context-menu-item-danger[b-f33vcd1np4] {
    color: var(--bs-danger, #dc3545);
}

.context-menu-item-danger:hover[b-f33vcd1np4] {
    background: rgba(220, 53, 69, 0.08);
}

/* Calendar filter panel */
.calendar-filter-panel[b-f33vcd1np4] {
    background: var(--bs-light, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 8px;
    padding: 8px 12px;
}

.calendar-filter-item[b-f33vcd1np4] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    padding: 3px 8px;
    border-radius: 4px;
    user-select: none;
    transition: opacity 0.15s;
}

.calendar-filter-item:hover[b-f33vcd1np4] {
    background: rgba(0,0,0,0.06);
}

.calendar-filter-item-disabled[b-f33vcd1np4] {
    opacity: 0.4;
}

.calendar-filter-dot[b-f33vcd1np4] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
    flex-shrink: 0;
}

.calendar-header[b-f33vcd1np4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    flex-wrap: wrap;
    gap: 8px;
}

.calendar-nav[b-f33vcd1np4] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.calendar-title[b-f33vcd1np4] {
    font-size: 1.25rem;
    font-weight: 600;
    white-space: nowrap;
}

.calendar-actions[b-f33vcd1np4] {
    display: flex;
    gap: 6px;
}

/* Category Panel */
.category-panel[b-f33vcd1np4] {
    background: var(--bs-body-bg, #fff);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 8px;
    padding: 12px 16px;
}

.category-panel-header[b-f33vcd1np4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.category-list[b-f33vcd1np4] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.category-item[b-f33vcd1np4] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 12px;
    border-radius: 20px;
    cursor: pointer;
    background: var(--bs-tertiary-bg, #f8f9fa);
    transition: background 0.15s;
    font-size: 0.875rem;
}

.category-item:hover[b-f33vcd1np4] {
    background: var(--bs-secondary-bg, #e9ecef);
}

.category-color-dot[b-f33vcd1np4] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
}

.category-actions[b-f33vcd1np4] {
    display: flex;
    margin-left: 4px;
}

.category-actions .btn-link[b-f33vcd1np4] {
    font-size: 0.75rem;
    color: var(--bs-secondary-color);
}

/* Calendar Grid */
.calendar-grid-wrapper[b-f33vcd1np4] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 8px;
    overflow: auto;
    background: var(--bs-body-bg, #fff);
    max-height: calc(100vh - 200px);
}

.calendar-grid[b-f33vcd1np4] {
    display: grid;
    grid-template-columns: 60px repeat(7, 1fr);
    min-width: 800px;
    position: relative;
}

/* Time Gutter */
.time-gutter[b-f33vcd1np4] {
    position: relative;
    border-right: 1px solid var(--bs-border-color, #dee2e6);
}

.time-gutter-header[b-f33vcd1np4] {
    height: 50px;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.time-label[b-f33vcd1np4] {
    position: absolute;
    right: 8px;
    font-size: 0.7rem;
    color: var(--bs-secondary-color, #6c757d);
    transform: translateY(-50%);
    white-space: nowrap;
}

/* Day Column */
.day-column[b-f33vcd1np4] {
    border-right: 1px solid var(--bs-border-color-translucent, rgba(0,0,0,0.08));
    min-width: 100px;
}

.day-column:last-child[b-f33vcd1np4] {
    border-right: none;
}

/* Dickere Trennlinie zwischen Samstag und Sonntag (7. Spalte = Sonntag im Grid) */
.day-column:nth-child(8)[b-f33vcd1np4] {
    border-left: 3px solid var(--bs-border-color, #dee2e6);
}

.day-header[b-f33vcd1np4] {
    height: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    font-size: 0.8rem;
    position: sticky;
    top: 0;
    background: var(--bs-body-bg, #fff);
    z-index: 2;
}

.today-header[b-f33vcd1np4] {
    background: #e8f0fe;
}

.today-column .day-body[b-f33vcd1np4] {
    background: #e8f0fe;
}

.weekend-column .day-body[b-f33vcd1np4] {
    background: #f5f5f5;
}

.weekend-header[b-f33vcd1np4] {
    background: #ebebeb;
}

.day-name[b-f33vcd1np4] {
    text-transform: uppercase;
    font-size: 0.65rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    color: var(--bs-secondary-color, #6c757d);
}

.today-column .day-name[b-f33vcd1np4] {
    color: #1a73e8;
}

.day-number[b-f33vcd1np4] {
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1;
}

.today-number[b-f33vcd1np4] {
    background: #1a73e8;
    color: white;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
}

.day-body[b-f33vcd1np4] {
    position: relative;
    height: calc(19 * 48px); /* (END_HOUR - START_HOUR) * HOUR_HEIGHT */
    cursor: pointer;
}

/* Grid Lines */
.hour-line[b-f33vcd1np4] {
    position: absolute;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--bs-border-color-translucent, rgba(0,0,0,0.08));
}

.half-hour-line[b-f33vcd1np4] {
    position: absolute;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--bs-border-color-translucent, rgba(0,0,0,0.04));
}

/* Current Time Line */
.current-time-line[b-f33vcd1np4] {
    position: absolute;
    left: 0;
    right: 0;
    height: 2px;
    background: #ea4335;
    z-index: 3;
}

.current-time-dot[b-f33vcd1np4] {
    position: absolute;
    left: -5px;
    top: -4px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ea4335;
}

/* Calendar Events */
.calendar-event[b-f33vcd1np4] {
    position: absolute;
    border-radius: 8px;
    padding: 2px 6px;
    font-size: 0.75rem;
    color: black;
    overflow: hidden;
    cursor: pointer;
    z-index: 1;
    border-left: 3px solid;
    transition: box-shadow 0.15s, transform 0.1s;
    user-select: none;
    -webkit-user-drag: none;
    touch-action: none;
    box-sizing: border-box;
}

.calendar-event:hover[b-f33vcd1np4] {
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    z-index: 2;
}

.calendar-event.dragging[b-f33vcd1np4] {
    opacity: 0.25;
    z-index: 1;
}

.calendar-event-drag-preview[b-f33vcd1np4] {
    opacity: 0.9;
    box-shadow: 0 10px 24px rgba(0,0,0,0.18);
    cursor: grabbing;
}

.event-time[b-f33vcd1np4] {
    font-size: 0.65rem;
    opacity: 0.9;
    white-space: nowrap;
}

.event-title[b-f33vcd1np4] {
    font-weight: 600;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
}

.event-location[b-f33vcd1np4] {
    font-size: 0.65rem;
    opacity: 0.85;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.event-resize-handle[b-f33vcd1np4] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 6px;
    cursor: ns-resize;
    border-radius: 0 0 4px 4px;
}

.event-resize-handle:hover[b-f33vcd1np4] {
    background: rgba(255,255,255,0.3);
}

/* Drop indicator */
.day-body.drag-over[b-f33vcd1np4] {
    background: rgba(26, 115, 232, 0.05);
}

/* Modal/Dialog */
.modal-backdrop[b-f33vcd1np4] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1000;
}

.event-dialog[b-f33vcd1np4] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--bs-body-bg, #fff);
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.2);
    z-index: 1001;
    width: 480px;
    max-width: 95vw;
    max-height: 90vh;
    overflow-y: auto;
}

.event-dialog-header[b-f33vcd1np4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.event-dialog-header h5[b-f33vcd1np4] {
    margin: 0;
    font-size: 1.1rem;
}

.event-dialog-body[b-f33vcd1np4] {
    padding: 16px 20px;
}

.event-dialog-footer[b-f33vcd1np4] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 20px;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}

/* Category Dialog */
.category-dialog[b-f33vcd1np4] {
    width: 360px;
}

.color-picker-grid[b-f33vcd1np4] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
}

.color-option[b-f33vcd1np4] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    border: 2px solid transparent;
    transition: transform 0.15s, border-color 0.15s;
}

.color-option:hover[b-f33vcd1np4] {
    transform: scale(1.15);
}

.color-option.selected[b-f33vcd1np4] {
    border-color: var(--bs-body-color, #212529);
    transform: scale(1.15);
}
/* _content/Plato/Pages/Mobil.razor.rz.scp.css */
/* Minimale Todoist-artige Aufgabenliste */
.mobil-page[b-vqjdgi104x] {
    max-width: 600px;
    margin: 0 auto;
    padding: 16px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Eingabebereich */
.add-box[b-vqjdgi104x] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 20px;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fafafa;
}

.add-input[b-vqjdgi104x] {
    border: none;
    border-bottom: 1px solid #e0e0e0;
    padding: 10px 4px;
    font-size: 15px;
    outline: none;
    background: transparent;
    color: #333;
    width: 100%;
    box-sizing: border-box;
}

.add-input:focus[b-vqjdgi104x] {
    border-bottom-color: #db4c3f;
}

.add-input[b-vqjdgi104x]::placeholder {
    color: #aaa;
}

.add-project[b-vqjdgi104x] {
    border: none;
    border-bottom: 1px solid #e0e0e0;
    padding: 8px 4px;
    font-size: 13px;
    outline: none;
    color: #666;
    background: transparent;
    width: 100%;
    box-sizing: border-box;
    cursor: pointer;
}

.add-project:focus[b-vqjdgi104x] {
    border-bottom-color: #db4c3f;
}

.add-row[b-vqjdgi104x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.add-date[b-vqjdgi104x] {
    border: none;
    border-bottom: 1px solid #e0e0e0;
    padding: 8px 4px;
    font-size: 13px;
    outline: none;
    color: #666;
    background: transparent;
    flex: 1;
}

.add-btn[b-vqjdgi104x] {
    background: none;
    border: none;
    color: #db4c3f;
    font-size: 24px;
    cursor: pointer;
    padding: 4px;
    line-height: 1;
    flex-shrink: 0;
}

.add-btn:disabled[b-vqjdgi104x] {
    color: #ddd;
    cursor: default;
}

/* Aufgabenliste */
.task-list[b-vqjdgi104x] {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Einzelne Aufgabe */
.task-item[b-vqjdgi104x] {
    display: flex;
    align-items: flex-start;
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
    gap: 12px;
}

.task-item.done[b-vqjdgi104x] {
    opacity: 0.4;
}

/* Kreis-Checkbox */
.circle-check[b-vqjdgi104x] {
    flex-shrink: 0;
    cursor: pointer;
    margin-top: 2px;
}

.circle-check input[b-vqjdgi104x] {
    display: none;
}

.circle[b-vqjdgi104x] {
    display: block;
    width: 20px;
    height: 20px;
    border: 2px solid #ccc;
    border-radius: 50%;
    transition: all 0.2s;
}

.circle-check:hover .circle[b-vqjdgi104x] {
    border-color: #999;
}

.circle-check input:checked + .circle[b-vqjdgi104x] {
    border-color: #db4c3f;
    background: #db4c3f;
}

.circle-check input:checked + .circle[b-vqjdgi104x]::after {
    content: '\2713';
    display: block;
    text-align: center;
    color: white;
    font-size: 12px;
    line-height: 16px;
    font-weight: bold;
}

/* Aufgabeninhalt */
.task-content[b-vqjdgi104x] {
    flex: 1;
    cursor: pointer;
    min-width: 0;
}

.task-title[b-vqjdgi104x] {
    display: block;
    font-size: 15px;
    color: #333;
    line-height: 1.4;
    word-break: break-word;
}

.done .task-title[b-vqjdgi104x] {
    text-decoration: line-through;
    color: #999;
}

.task-project[b-vqjdgi104x] {
    display: inline;
    font-size: 12px;
    color: #808080;
    margin-top: 2px;
}

.task-date[b-vqjdgi104x] {
    display: inline;
    font-size: 12px;
    color: #999;
    margin-top: 2px;
    margin-left: 8px;
}

.task-date.overdue[b-vqjdgi104x] {
    color: #db4c3f;
}

/* Löschen-Button */
.btn-delete[b-vqjdgi104x] {
    background: none;
    border: none;
    color: #ccc;
    font-size: 18px;
    cursor: pointer;
    padding: 2px 4px;
    flex-shrink: 0;
    opacity: 0;
    transition: opacity 0.15s;
}

.task-item:hover .btn-delete[b-vqjdgi104x] {
    opacity: 1;
}

/* Bearbeitungsmodus */
.task-item.editing[b-vqjdgi104x] {
    flex-direction: column;
    gap: 8px;
    padding: 12px 0;
    background: #fafafa;
    margin: 0 -8px;
    padding-left: 8px;
    padding-right: 8px;
    border-radius: 6px;
}

.edit-input[b-vqjdgi104x] {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 8px 10px;
    font-size: 15px;
    outline: none;
    box-sizing: border-box;
}

.edit-input:focus[b-vqjdgi104x] {
    border-color: #db4c3f;
}

.edit-project[b-vqjdgi104x] {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 6px 10px;
    font-size: 13px;
    outline: none;
    box-sizing: border-box;
    background: white;
}

.edit-project:focus[b-vqjdgi104x] {
    border-color: #db4c3f;
}

.edit-date[b-vqjdgi104x] {
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 6px 10px;
    font-size: 13px;
    outline: none;
    width: 100%;
    box-sizing: border-box;
}

.edit-btns[b-vqjdgi104x] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.btn-save[b-vqjdgi104x] {
    background: #db4c3f;
    color: white;
    border: none;
    border-radius: 4px;
    padding: 6px 16px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
}

.btn-save:hover[b-vqjdgi104x] {
    background: #c53727;
}

.btn-cancel[b-vqjdgi104x] {
    background: none;
    color: #666;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 6px 16px;
    font-size: 13px;
    cursor: pointer;
}

.btn-cancel:hover[b-vqjdgi104x] {
    background: #f5f5f5;
}

/* Leerer Zustand */
.empty[b-vqjdgi104x] {
    text-align: center;
    padding: 40px 0;
    color: #aaa;
    font-size: 15px;
}

/* Header mit Zähler und Aktualisieren */
.refresh-bar[b-vqjdgi104x] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 12px;
    gap: 8px;
}

.task-counter[b-vqjdgi104x] {
    font-size: 14px;
    font-weight: 600;
    color: #555;
    margin-right: auto;
}

.note-btn[b-vqjdgi104x] {
    appearance: none;
    -webkit-appearance: none;
    width: 38px;
    height: 34px;
    border: none;
    border-radius: 10px;
    background: #fff;
    color: #6b4f00;
    box-shadow: 0 2px 6px rgba(214,168,0,0.18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    transition: background 0.2s;
}

.note-btn.has-note[b-vqjdgi104x] {
    background: linear-gradient(180deg, #ffe97a 0%, #ffd23f 100%);
    box-shadow: 0 2px 6px rgba(214,168,0,0.28);
}

.note-btn:focus[b-vqjdgi104x],
.note-btn:focus-visible[b-vqjdgi104x],
.note-btn:active[b-vqjdgi104x] {
    outline: none;
    border: none;
    box-shadow: 0 0 0 2px rgba(255, 209, 63, 0.45);
}

.note-icon[b-vqjdgi104x] {
    line-height: 1;
    transform: translateY(-1px);
}

.refresh-btn[b-vqjdgi104x] {
    background: none;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 6px 14px;
    font-size: 13px;
    color: #666;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: all 0.15s;
}

.refresh-btn:hover[b-vqjdgi104x] {
    background: #f5f5f5;
    border-color: #ccc;
    color: #333;
}

.note-modal-backdrop[b-vqjdgi104x] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    z-index: 1050;
}

.note-modal[b-vqjdgi104x] {
    width: 100%;
    max-width: 520px;
    background: #fff4b3;
    border: 1px solid #f4d03f;
    border-radius: 12px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
    padding: 14px;
}

.note-modal-title[b-vqjdgi104x] {
    margin: 0 0 10px 0;
    font-size: 18px;
    font-weight: 700;
    color: #5c4200;
}

.note-textarea[b-vqjdgi104x] {
    width: 100%;
    min-height: 140px;
    border: 1px solid #e5b800;
    border-radius: 8px;
    padding: 10px;
    font-size: 14px;
    color: #4a3900;
    background: #fffbe6;
    resize: vertical;
    box-sizing: border-box;
}

.note-textarea:focus[b-vqjdgi104x] {
    outline: none;
    border-color: #b58700;
    box-shadow: 0 0 0 2px rgba(229, 184, 0, 0.2);
}

.note-modal-actions[b-vqjdgi104x] {
    margin-top: 12px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

/* +1 Verschiebe-Button */
.btn-postpone[b-vqjdgi104x] {
    background: none;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: #888;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    padding: 2px 8px;
    flex-shrink: 0;
    opacity: 0;
    transition: opacity 0.15s, background 0.15s;
    line-height: 1.4;
}

.btn-postpone:hover[b-vqjdgi104x] {
    background: #e8f4fd;
    border-color: #90caf9;
    color: #1976d2;
}

.task-item:hover .btn-postpone[b-vqjdgi104x] {
    opacity: 1;
}

/* Touch: Buttons immer sichtbar */
@media (hover: none) and (pointer: coarse) {
    .btn-delete[b-vqjdgi104x] {
        opacity: 0.5;
    }

    .btn-postpone[b-vqjdgi104x] {
        opacity: 1;
    }

    .task-item[b-vqjdgi104x], .add-btn[b-vqjdgi104x], .btn-save[b-vqjdgi104x], .btn-cancel[b-vqjdgi104x], .refresh-btn[b-vqjdgi104x], .btn-postpone[b-vqjdgi104x], .note-btn[b-vqjdgi104x] {
        -webkit-tap-highlight-color: transparent;
    }
}
/* _content/Plato/Pages/Projekte.razor.rz.scp.css */
.project-container[b-4zuwtfmo6e] {
    padding: 1rem;
}

.toolbar[b-4zuwtfmo6e] {
    display: flex;
    gap: 0.5rem;
}

.project-grid[b-4zuwtfmo6e] {
    margin-top: 1rem;
}

.color-preview[b-4zuwtfmo6e] {
    width: 40px;
    height: 24px;
    border-radius: 4px;
    border: 1px solid #e5e7eb;
}

.status-badge[b-4zuwtfmo6e] {
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.85rem;
    font-weight: 500;
}

.status-badge.active[b-4zuwtfmo6e] {
    background: #d1fae5;
    color: #065f46;
}

.status-badge.inactive[b-4zuwtfmo6e] {
    background: #fee2e2;
    color: #991b1b;
}

.color-picker-container[b-4zuwtfmo6e] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.color-picker[b-4zuwtfmo6e] {
    width: 60px;
    height: 40px;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    cursor: pointer;
}

.color-input[b-4zuwtfmo6e] {
    flex: 1;
}

.modal-overlay[b-4zuwtfmo6e] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
}

.modal-dialog[b-4zuwtfmo6e] {
    width: 90%;
    max-width: 600px;
}

.modal-content[b-4zuwtfmo6e] {
    background: white;
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.modal-header[b-4zuwtfmo6e] {
    padding: 1.5rem;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-title[b-4zuwtfmo6e] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
}

.btn-close[b-4zuwtfmo6e] {
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-close[b-4zuwtfmo6e]:before {
    content: "×";
}

.modal-body[b-4zuwtfmo6e] {
    padding: 1.5rem;
}

.modal-footer[b-4zuwtfmo6e] {
    padding: 1rem 1.5rem;
    border-top: 1px solid #e5e7eb;
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}

.form-label[b-4zuwtfmo6e] {
    font-weight: 500;
    margin-bottom: 0.5rem;
    display: block;
}
/* _content/Plato/Pages/ProjekteVerwaltung.razor.rz.scp.css */
.projekt-container[b-y4dwjmrs7o] {
    padding: 0.75rem;
}

.toolbar[b-y4dwjmrs7o] {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    flex-wrap: wrap;
}

.projekt-grid[b-y4dwjmrs7o] {
    margin-top: 0.75rem;
    font-size: 0.875rem;
}

.modal-overlay[b-y4dwjmrs7o] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    overflow: hidden;
    padding: 20px;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
}

.modal-dialog[b-y4dwjmrs7o] {
    width: 90%;
    max-width: 650px;
    max-height: 90vh;
    overflow-y: auto;
}

.modal-content[b-y4dwjmrs7o] {
    background: white;
    border-radius: 6px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.modal-header[b-y4dwjmrs7o] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-title[b-y4dwjmrs7o] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
}

.btn-close[b-y4dwjmrs7o] {
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0;
    width: 1.75rem;
    height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-close[b-y4dwjmrs7o]:before {
    content: "×";
}

.modal-body[b-y4dwjmrs7o] {
    padding: 1.25rem;
}

.modal-footer[b-y4dwjmrs7o] {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid #e5e7eb;
    display: flex;
    justify-content: flex-end;
    gap: 0.4rem;
}

.form-label[b-y4dwjmrs7o] {
    font-weight: 500;
    margin-bottom: 0.4rem;
    display: block;
    font-size: 0.875rem;
}

/* ===== E-Mail Compose Dialog (Outlook-Style) ===== */
.email-compose-dialog[b-y4dwjmrs7o] {
    width: 95%;
    max-width: 920px;
    height: 90vh;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 12px 48px rgba(0, 0, 0, 0.25);
    overflow: hidden;
}

/* Toolbar (Senden-Button & Schließen) */
.email-toolbar[b-y4dwjmrs7o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 16px;
    background: #f0f4f8;
    border-bottom: 1px solid #d1d9e0;
    flex-shrink: 0;
}

.email-toolbar-left[b-y4dwjmrs7o] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.email-toolbar-right[b-y4dwjmrs7o] {
    display: flex;
    align-items: center;
}

.email-close-btn[b-y4dwjmrs7o] {
    background: none;
    border: none;
    font-size: 1.1rem;
    color: #666;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.15s;
}

.email-close-btn:hover[b-y4dwjmrs7o] {
    background: #dce3ea;
    color: #333;
}

/* Header-Felder (An, Betreff, Anhänge) */
.email-header-fields[b-y4dwjmrs7o] {
    flex-shrink: 0;
    border-bottom: 1px solid #e5e7eb;
    background: #fafbfc;
}

.email-field-row[b-y4dwjmrs7o] {
    display: flex;
    align-items: center;
    padding: 4px 16px;
    border-bottom: 1px solid #eef0f2;
    gap: 8px;
}

.email-field-row:last-child[b-y4dwjmrs7o] {
    border-bottom: none;
}

.email-field-label[b-y4dwjmrs7o] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #666;
    min-width: 55px;
    flex-shrink: 0;
}

.email-field-input[b-y4dwjmrs7o] {
    flex: 1;
    min-width: 0;
}

.email-save-btn[b-y4dwjmrs7o] {
    flex-shrink: 0;
}

/* Anhänge als Chips */
.email-attachment-row[b-y4dwjmrs7o] {
    flex-wrap: wrap;
}

.email-attachment-chips[b-y4dwjmrs7o] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 6px;
    padding-bottom: 4px;
}

.email-attachment-chip[b-y4dwjmrs7o] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #e8f0fe;
    color: #1a56db;
    padding: 3px 10px;
    border-radius: 14px;
    font-size: 0.78rem;
    border: 1px solid #c6d9f7;
}

.email-attachment-chip small[b-y4dwjmrs7o] {
    color: #7a9ed6;
}

.chip-remove[b-y4dwjmrs7o] {
    background: none;
    border: none;
    cursor: pointer;
    color: #7a9ed6;
    font-size: 0.85rem;
    padding: 0 2px;
    line-height: 1;
    transition: color 0.15s;
}

.chip-remove:hover[b-y4dwjmrs7o] {
    color: #dc3545;
}

/* E-Mail Body (scrollbar) */
.email-body[b-y4dwjmrs7o] {
    flex: 1 1 0;
    overflow-y: auto;
    padding: 16px 20px;
    min-height: 0;
    background: #fff;
}

.email-section[b-y4dwjmrs7o] {
    margin-bottom: 14px;
}

.email-section-label[b-y4dwjmrs7o] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 4px;
    display: block;
}

.email-update-section[b-y4dwjmrs7o] {
    background: #f8f9fb;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 12px;
}

/* E-Mail Vorschau */
.email-preview[b-y4dwjmrs7o] {
    border: 1px solid #d1d9e0;
    border-radius: 6px;
    padding: 16px;
    background: #fff;
    max-height: 400px;
    overflow-y: auto;
    font-size: 0.875rem;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.04);
}

/* Alert Styles */
.alert[b-y4dwjmrs7o] {
    padding: 0.75rem 1rem;
    border-radius: 4px;
    font-size: 0.875rem;
}

.alert-success[b-y4dwjmrs7o] {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.alert-danger[b-y4dwjmrs7o] {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* Hilfsstile */
.d-flex[b-y4dwjmrs7o] { display: flex; }
.align-items-center[b-y4dwjmrs7o] { align-items: center; }
.gap-2[b-y4dwjmrs7o] { gap: 0.5rem; }
.mt-2[b-y4dwjmrs7o] { margin-top: 0.5rem; }
.me-2[b-y4dwjmrs7o] { margin-right: 0.5rem; }
.fw-bold[b-y4dwjmrs7o] { font-weight: 700; }

/* Log-Tabelle */
.log-table[b-y4dwjmrs7o] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8rem;
}

.log-table th[b-y4dwjmrs7o] {
    background: #f8f9fa;
    padding: 0.5rem 0.6rem;
    text-align: left;
    font-weight: 600;
    border-bottom: 2px solid #dee2e6;
    position: sticky;
    top: 0;
}

.log-table td[b-y4dwjmrs7o] {
    padding: 0.4rem 0.6rem;
    border-bottom: 1px solid #eee;
    vertical-align: top;
}

.log-table tbody tr:hover[b-y4dwjmrs7o] {
    background: #f8f9fa;
}

.log-error-row[b-y4dwjmrs7o] {
    background: #fff5f5;
}

.log-error-row:hover[b-y4dwjmrs7o] {
    background: #fee !important;
}

.badge-success[b-y4dwjmrs7o] {
    background: #28a745;
    color: white;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: 600;
}

.badge-error[b-y4dwjmrs7o] {
    background: #dc3545;
    color: white;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: 600;
}

.text-center[b-y4dwjmrs7o] { text-align: center; }

/* _content/Plato/Pages/RechnungDrucken.razor.rz.scp.css */
/* Invoice Print Styles */
.invoice-print-container[b-vl5yug0b9k] {
    max-width: 210mm;
    margin: 0 auto;
    background: white;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 10pt;
    color: #333;
}

.invoice-page[b-vl5yug0b9k] {
    padding: 15mm 20mm;
    position: relative;
    min-height: 297mm;
}

/* Header / Logo */
.invoice-header[b-vl5yug0b9k] {
    margin-bottom: 10mm;
}

.invoice-logo .logo-img[b-vl5yug0b9k] {
    max-width: 280px;
    height: auto;
}

/* Absender-Zeile */
.invoice-sender-line[b-vl5yug0b9k] {
    font-size: 7pt;
    color: #666;
    border-bottom: 1px solid #333;
    padding-bottom: 2px;
    margin-bottom: 5mm;
}

/* Empfänger / Meta */
.invoice-info-row[b-vl5yug0b9k] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15mm;
}

.invoice-recipient[b-vl5yug0b9k] {
    flex: 0 0 50%;
    font-size: 10pt;
    line-height: 1.6;
}

.recipient-name[b-vl5yug0b9k] {
    font-weight: bold;
}

.invoice-meta[b-vl5yug0b9k] {
    flex: 0 0 45%;
}

.meta-table[b-vl5yug0b9k] {
    width: 100%;
    font-size: 9pt;
}

.meta-table td[b-vl5yug0b9k] {
    padding: 2px 0;
    vertical-align: top;
}

.meta-label[b-vl5yug0b9k] {
    color: #666;
    padding-right: 10px;
}

.meta-value[b-vl5yug0b9k] {
    font-weight: bold;
    text-align: right;
}

/* Betreff */
.invoice-subject[b-vl5yug0b9k] {
    font-size: 14pt;
    margin-bottom: 5mm;
}

/* Kopftext */
.invoice-body-text[b-vl5yug0b9k] {
    margin-bottom: 8mm;
    line-height: 1.6;
}

/* Positionstabelle */
.invoice-positions-table[b-vl5yug0b9k] {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 5mm;
}

.invoice-positions-table thead[b-vl5yug0b9k] {
    background-color: #e8e8e8;
}

.invoice-positions-table th[b-vl5yug0b9k] {
    font-size: 9pt;
    font-weight: bold;
    padding: 6px 8px;
    border-bottom: 2px solid #333;
    text-align: left;
}

.invoice-positions-table td[b-vl5yug0b9k] {
    padding: 8px;
    border-bottom: 1px solid #ddd;
    vertical-align: top;
}

.pos-col[b-vl5yug0b9k] { width: 40px; }
.artikel-col[b-vl5yug0b9k] { width: 70px; }
.menge-col[b-vl5yug0b9k] { width: 90px; }
.preis-col[b-vl5yug0b9k] { width: 100px; }
.gesamt-col[b-vl5yug0b9k] { width: 110px; }

/* Summen */
.invoice-totals[b-vl5yug0b9k] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 8mm;
}

.totals-table[b-vl5yug0b9k] {
    width: 280px;
}

.totals-table td[b-vl5yug0b9k] {
    padding: 4px 8px;
}

.total-row-light[b-vl5yug0b9k] {
    background-color: #f5f5f5;
}

.total-row-bold[b-vl5yug0b9k] {
    background-color: #e0e0e0;
}

/* Zahlungsinformation */
.invoice-payment-info[b-vl5yug0b9k] {
    margin-bottom: 8mm;
    font-style: italic;
    color: #555;
}

/* Fußtext */
.invoice-footer-text[b-vl5yug0b9k] {
    margin-bottom: 15mm;
    line-height: 1.6;
    color: #28a745;
}

/* Fußzeile */
.invoice-footer[b-vl5yug0b9k] {
    position: absolute;
    bottom: 10mm;
    left: 20mm;
    right: 20mm;
    display: flex;
    justify-content: space-between;
    font-size: 7pt;
    color: #666;
    border-top: 1px solid #ccc;
    padding-top: 5px;
}

.footer-col[b-vl5yug0b9k] {
    flex: 1;
    line-height: 1.6;
}

/* Print Styles */
@media print {
    .no-print[b-vl5yug0b9k] {
        display: none !important;
    }
    
    .invoice-print-container[b-vl5yug0b9k] {
        margin: 0;
        padding: 0;
        max-width: none;
    }

    .invoice-page[b-vl5yug0b9k] {
        padding: 10mm 15mm;
        page-break-after: always;
    }
    
    body[b-vl5yug0b9k] {
        margin: 0;
        padding: 0;
    }
}
/* _content/Plato/Pages/Rechnungen.razor.rz.scp.css */
.filter-section[b-zqjkd512yw] {
    display: inline-block;
    margin-right: 32px;
    margin-bottom: 8px;
}

.filter-label[b-zqjkd512yw] {
    margin-right: 8px;
}

.filter-combo[b-zqjkd512yw] {
    min-width: 120px;
}

@media (max-width: 900px) {
    .filter-section[b-zqjkd512yw] {
        display: block;
        margin-right: 0;
        margin-bottom: 12px;
    }
}
/* _content/Plato/Pages/Todos.razor.rz.scp.css */
.todo-container[b-ye2uloyxvc] {
    padding: 0.75rem;
    outline: none;
}

.toolbar[b-ye2uloyxvc] {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    flex-wrap: wrap;
}

.filter-section[b-ye2uloyxvc] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-left: auto;
}

.filter-label[b-ye2uloyxvc] {
    font-weight: 500;
    color: #4b5563;
    margin: 0;
    white-space: nowrap;
    font-size: 0.875rem;
}

.project-filter[b-ye2uloyxvc] {
    min-width: 180px;
}

.todo-grid[b-ye2uloyxvc] {
    margin-top: 0.75rem;
    font-size: 0.875rem;
}

.priority-badge[b-ye2uloyxvc] {
    padding: 0.15rem 0.5rem;
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
}

.priority-kritisch[b-ye2uloyxvc] {
    background: #fee2e2;
    color: #991b1b;
}

.priority-hoch[b-ye2uloyxvc] {
    background: #fed7aa;
    color: #9a3412;
}

.priority-mittel[b-ye2uloyxvc] {
    background: #fef3c7;
    color: #92400e;
}

.priority-normal[b-ye2uloyxvc] {
    background: #dbeafe;
    color: #1e40af;
}

.priority-unwichtig[b-ye2uloyxvc] {
    background: #f3f4f6;
    color: #4b5563;
}

.modal-overlay[b-ye2uloyxvc] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
}

.modal-dialog[b-ye2uloyxvc] {
    width: 90%;
    max-width: 650px;
    max-height: 90vh;
    overflow-y: auto;
}

.modal-dialog-custom[b-ye2uloyxvc] {
    width: 90%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
}

.modal-content[b-ye2uloyxvc] {
    background: white;
    border-radius: 6px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.modal-content-custom[b-ye2uloyxvc] {
    background: white;
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
}

.modal-header[b-ye2uloyxvc] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-title[b-ye2uloyxvc] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
}

.btn-close[b-ye2uloyxvc] {
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0;
    width: 1.75rem;
    height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-close[b-ye2uloyxvc]:before {
    content: "×";
}

.modal-body[b-ye2uloyxvc] {
    padding: 1.25rem;
}

.modal-footer[b-ye2uloyxvc] {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid #e5e7eb;
    display: flex;
    justify-content: flex-end;
    gap: 0.4rem;
}

.form-label[b-ye2uloyxvc] {
    font-weight: 500;
    margin-bottom: 0.4rem;
    display: block;
    font-size: 0.875rem;
}

.subtasks-list[b-ye2uloyxvc] {
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 0.5rem;
    background: #f9fafb;
    max-height: 300px;
    overflow-y: auto;
}

.subtask-item[b-ye2uloyxvc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: white;
    border-radius: 4px;
    margin-bottom: 0.5rem;
    transition: all 0.2s;
}

.subtask-item:hover[b-ye2uloyxvc] {
    background: #f3f4f6;
}

.subtask-item:last-child[b-ye2uloyxvc] {
    margin-bottom: 0;
}

.subtask-controls[b-ye2uloyxvc] {
    display: flex;
    gap: 0.15rem;
    flex-shrink: 0;
}

.subtask-controls button[b-ye2uloyxvc] {
    width: 18px;
    min-width: 18px;
    padding: 0.05rem 0.1rem;
    font-size: 0.7rem;
}

.subtask-item input[type="checkbox"][b-ye2uloyxvc] {
    flex-shrink: 0;
}

.subtask-item .form-control[b-ye2uloyxvc] {
    border: 1px solid #d1d5db;
}

.subtask-item .form-control:focus[b-ye2uloyxvc] {
    border-color: #3b82f6;
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.btn-trello-sync[b-ye2uloyxvc] {
    background-color: #007bff !important;
    border-color: #007bff !important;
    color: white !important;
}

.btn-trello-sync:hover[b-ye2uloyxvc] {
    background-color: #0056b3 !important;
    border-color: #0056b3 !important;
}

.note-btn[b-ye2uloyxvc] {
    appearance: none;
    -webkit-appearance: none;
    width: 38px;
    height: 34px;
    border: none;
    border-radius: 10px;
    background: #fff;
    color: #6b4f00;
    box-shadow: 0 2px 6px rgba(214,168,0,0.18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    transition: background 0.2s;
}
.note-btn.has-note[b-ye2uloyxvc] {
    background: linear-gradient(180deg, #ffe97a 0%, #ffd23f 100%);
    box-shadow: 0 2px 6px rgba(214,168,0,0.28);
}
/* _content/Plato/Pages/Versionsverlauf.razor.rz.scp.css */
.timeline-container[b-q5a71r1vbg] {
    padding: 2rem;
    background: linear-gradient(to bottom, #f8f9fa 0%, #ffffff 100%);
}

.version-block[b-q5a71r1vbg] {
    background: white;
    border-radius: 12px;
    margin-bottom: 2rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border-left: 4px solid #0d6efd;
    transition: all 0.3s ease;
    overflow: hidden;
}

.version-block:hover[b-q5a71r1vbg] {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

.version-header[b-q5a71r1vbg] {
    background: linear-gradient(135deg, #0d6efd 0%, #0056b3 100%);
    padding: 2.5rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem;
}

.version-badge[b-q5a71r1vbg] {
    font-size: 16px !important;
    font-weight: bold;
    color: white;
    display: flex;
    align-items: center;
    line-height: 1;
}

.version-date[b-q5a71r1vbg] {
    color: rgba(255, 255, 255, 0.95);
    font-size: 14px !important;
    font-weight: 500;
    display: flex;
    align-items: center;
    line-height: 1;
    white-space: nowrap;
}

.version-content[b-q5a71r1vbg] {
    padding: 1.5rem;
}

.change-category[b-q5a71r1vbg] {
    margin-bottom: 1.5rem;
}

.change-category:last-child[b-q5a71r1vbg] {
    margin-bottom: 0;
}

.category-title[b-q5a71r1vbg] {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #f0f0f0;
}

.change-list[b-q5a71r1vbg] {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

.change-list li[b-q5a71r1vbg] {
    padding: 0.5rem 0 0.5rem 2rem;
    position: relative;
    line-height: 1.6;
    color: #495057;
}

.change-list li[b-q5a71r1vbg]::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #28a745;
    font-weight: bold;
    font-size: 1.1rem;
}

.card-header[b-q5a71r1vbg] {
    padding: 1.25rem 1.5rem;
}

.card-header h3[b-q5a71r1vbg] {
    font-size: 1.75rem;
    font-weight: 600;
}

/* Responsive Design */
@media (max-width: 992px) {
    .version-header[b-q5a71r1vbg] {
        padding: 2rem 1.5rem;
        gap: 1.5rem;
    }

    .version-badge[b-q5a71r1vbg] {
        font-size: 16px !important;
    }

    .version-date[b-q5a71r1vbg] {
        font-size: 14px !important;
    }
}

@media (max-width: 768px) {
    .timeline-container[b-q5a71r1vbg] {
        padding: 1rem;
    }

    .version-header[b-q5a71r1vbg] {
        flex-direction: row;
        align-items: center;
        gap: 1rem;
        padding: 1.5rem 1rem;
    }

    .version-badge[b-q5a71r1vbg] {
        font-size: 16px !important;
    }

    .version-date[b-q5a71r1vbg] {
        font-size: 14px !important;
    }

    .version-content[b-q5a71r1vbg] {
        padding: 1rem;
    }

    .category-title[b-q5a71r1vbg] {
        font-size: 1rem;
    }

    .change-list li[b-q5a71r1vbg] {
        padding-left: 1.5rem;
        font-size: 0.9rem;
    }
}

@media (max-width: 576px) {
    .version-header[b-q5a71r1vbg] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .version-badge[b-q5a71r1vbg] {
        font-size: 16px !important;
    }

    .version-date[b-q5a71r1vbg] {
        font-size: 14px !important;
    }
}

/* Animation */
@keyframes slideIn-b-q5a71r1vbg {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.version-block[b-q5a71r1vbg] {
    animation: slideIn-b-q5a71r1vbg 0.4s ease-out;
}

.version-block:nth-child(1)[b-q5a71r1vbg] { animation-delay: 0.1s; }
.version-block:nth-child(2)[b-q5a71r1vbg] { animation-delay: 0.2s; }
.version-block:nth-child(3)[b-q5a71r1vbg] { animation-delay: 0.3s; }
.version-block:nth-child(4)[b-q5a71r1vbg] { animation-delay: 0.4s; }
.version-block:nth-child(5)[b-q5a71r1vbg] { animation-delay: 0.5s; }
/* _content/Plato/Pages/Zeiterfassung.razor.rz.scp.css */
.zeiterfassung-container[b-dhkvortwh5] {
    padding: 5px 20px;
    display: flex;
    flex-direction: column;
    height: 100vh;
}

.calendar-header[b-dhkvortwh5] {
    display: flex;
    flex-direction: column;
    margin-bottom: 5px;
}

.week-calendar[b-dhkvortwh5] {
    overflow-x: auto;
    flex: 1;
}

.calendar-grid[b-dhkvortwh5] {
    display: grid;
    grid-template-columns: 60px repeat(7, 1fr);
    gap: 1px;
    background: #dee2e6;
    border: 1px solid #dee2e6;
}

.time-axis[b-dhkvortwh5] {
    display: flex;
    flex-direction: column;
}

.time-header[b-dhkvortwh5] {
    height: 80px;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 12px;
    border-bottom: 2px solid #dee2e6;
}

.time-axis .time-slot[b-dhkvortwh5] {
    height: 50px;
    background: #f8f9fa;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    font-size: 11px;
    color: #6c757d;
    padding-top: 4px;
}

.day-column[b-dhkvortwh5] {
    display: flex;
    flex-direction: column;
    min-width: 150px;
}

.day-header[b-dhkvortwh5] {
    height: 80px;
    background: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-bottom: 2px solid #dee2e6;
    padding: 8px;
}

.day-header.today[b-dhkvortwh5] {
    background: #e7f1ff;
}

.day-name[b-dhkvortwh5] {
    font-weight: 600;
    font-size: 14px;
    color: #212529;
}

.day-date[b-dhkvortwh5] {
    font-size: 12px;
    color: #6c757d;
    margin-top: 4px;
}

.day-hours[b-dhkvortwh5] {
    font-size: 11px;
    color: #6c757d;
    margin-top: 4px;
}

.time-slot-cell[b-dhkvortwh5] {
    height: 50px;
    background: white;
    position: relative;
    cursor: pointer;
    transition: background 0.2s;
}

.time-slot-cell:hover[b-dhkvortwh5] {
    background: #f8f9fa;
}

.time-entry[b-dhkvortwh5] {
    position: absolute;
    left: 2px;
    right: 2px;
    border-radius: 8px;
    padding: 4px 6px;
    color: white;
    font-size: 11px;
    cursor: pointer;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    transition: box-shadow 0.2s;
    user-select: none;
    z-index: 5;
}

.time-entry:hover[b-dhkvortwh5] {
    box-shadow: 0 2px 6px rgba(0,0,0,0.3);
    z-index: 15;
}

.time-entry.dragging[b-dhkvortwh5] {
    opacity: 0.7;
    z-index: 1000;
}

.entry-content[b-dhkvortwh5] {
    pointer-events: none;
}

.entry-time[b-dhkvortwh5] {
    font-weight: 600;
    font-size: 10px;
    line-height: 1.2;
}

.entry-customer[b-dhkvortwh5] {
    font-size: 10px;
    line-height: 1.2;
    margin-top: 2px;
    opacity: 0.9;
}

/* Resize Handles */
.resize-handle-top[b-dhkvortwh5],
.resize-handle-bottom[b-dhkvortwh5] {
    position: absolute;
    left: 0;
    right: 0;
    height: 6px;
    cursor: ns-resize;
    z-index: 20;
}

.resize-handle-top[b-dhkvortwh5] {
    top: 0;
    background: linear-gradient(to bottom, rgba(255,255,255,0.3), transparent);
}

.resize-handle-bottom[b-dhkvortwh5] {
    bottom: 0;
    background: linear-gradient(to top, rgba(255,255,255,0.3), transparent);
}

.resize-handle-top:hover[b-dhkvortwh5],
.resize-handle-bottom:hover[b-dhkvortwh5] {
    background: rgba(255,255,255,0.5);
}

/* Zeiterfassungstool spezifische Styles */
.zeiterfassung-container h3[b-dhkvortwh5] {
    margin-bottom: 20px;
    font-weight: 600;
}

/* Timer Control */
.timer-control[b-dhkvortwh5] {
    background: #f8f9fa;
    transition: all 0.3s;
}

.timer-display[b-dhkvortwh5] {
    text-align: center;
    font-family: 'Courier New', monospace;
}

/* Monthly Report */
.monthly-report[b-dhkvortwh5] {
    margin-left: 220px;
    padding: 20px;
}

.monthly-report h4[b-dhkvortwh5] {
    font-weight: 600;
    color: #212529;
}

.monthly-report table[b-dhkvortwh5] {
    margin-top: 20px;
}

.monthly-report .bi-circle-fill[b-dhkvortwh5] {
    font-size: 10px;
    margin-right: 8px;
}

.accordion-button[b-dhkvortwh5] {
    font-weight: 500;
}

.accordion-body table[b-dhkvortwh5] {
    margin-bottom: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .calendar-sidebar[b-dhkvortwh5] {
        position: relative;
        width: 100%;
        height: auto;
        margin-bottom: 20px;
    }
    
    .monthly-report[b-dhkvortwh5] {
        margin-left: 0;
    }
    
    .week-calendar[b-dhkvortwh5] {
        margin-left: 0;
    }
    
    .day-column[b-dhkvortwh5] {
        min-width: 100px;
    }
}
/* _content/Plato/Shared/Header.razor.rz.scp.css */
.navbar.header-navbar[b-u0uc3ofvmn] {
    flex-grow: 0;
    flex-wrap: nowrap;
    border: none;
    background: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #3b82f6 100%);
    border-radius: 0;
    height: 3.5rem;
    min-height: 3.5rem;
    box-shadow: 0 2px 10px rgba(30, 60, 114, 0.3);
    justify-content: flex-start;
}

.header-logo[b-u0uc3ofvmn] {
    height: 44px;
    width: auto;
}

.elit-primary[b-u0uc3ofvmn] {
    background: var(--elit-primary) !important;
}

.header-navbar .navbar-toggler[b-u0uc3ofvmn] {
    outline: none;
    border-radius: 0;
    padding-left: .75rem;
    padding-right: .75rem;
    box-shadow: none;
    align-self: stretch;
    border: none;
    background-color: rgba(255, 255, 255, 0.1);
    transition: background-color 0.2s;
}

.header-navbar .navbar-toggler:hover[b-u0uc3ofvmn] {
    background-color: rgba(255, 255, 255, 0.2);
}

.header-navbar .navbar-toggler .navbar-toggler-icon[b-u0uc3ofvmn] {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
    background-color: transparent !important;
    height: 2rem;
    width: 2rem;
    display: block;
}

.title[b-u0uc3ofvmn] {
    font-size: 1.4rem;
    text-overflow: ellipsis;
    overflow: hidden;
    color: white;
    display: flex;
    align-items: center;
}

[b-u0uc3ofvmn] .logout-button {
    background-color: #2563eb !important;
    color: white !important;
    border-color: #2563eb !important;
}

[b-u0uc3ofvmn] .logout-button:hover {
    background-color: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
}

[b-u0uc3ofvmn] .logout-button .bi {
    color: white !important;
}

@media (max-width: 350px) {
    .title[b-u0uc3ofvmn] {
        font-size: inherit;
    }
}
/* _content/Plato/Shared/Login.razor.rz.scp.css */
.login-container[b-02fmp6epvb] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: linear-gradient(135deg, #e8f0f7 0%, #f0f4f8 50%, #f8f9fa 100%);
    padding: 20px;
}

.login-card[b-02fmp6epvb] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
    width: 100%;
    max-width: 450px;
    overflow: hidden;
    animation: fadeIn-b-02fmp6epvb 0.4s ease-out;
}

@keyframes fadeIn-b-02fmp6epvb {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.login-header[b-02fmp6epvb] {
    margin-bottom: 0;
}

.logo-box[b-02fmp6epvb] {
    background: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #3b82f6 100%);
    padding: 2.5rem 2rem;
    text-align: center;
}

.logo-icon[b-02fmp6epvb] {
    font-size: 3rem;
    color: white;
    margin-bottom: 0.75rem;
}

.logo-title[b-02fmp6epvb] {
    font-size: 2rem;
    font-weight: 600;
    color: white;
    margin: 0 0 0.5rem 0;
    letter-spacing: -0.5px;
}

.logo-subtitle[b-02fmp6epvb] {
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.9);
    margin: 0;
    font-weight: 400;
}

.login-body[b-02fmp6epvb] {
    padding: 2rem;
}

.login-message[b-02fmp6epvb] {
    font-size: 0.95rem;
    color: #666;
    margin: 0 0 1.5rem 0;
    text-align: center;
}

.login-form[b-02fmp6epvb] {
    padding: 0;
}

.login-form .form-label[b-02fmp6epvb] {
    font-weight: 500;
    color: #333;
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
}

.btn-login[b-02fmp6epvb] {
    padding: 12px;
    font-weight: 500;
    transition: all 0.2s ease;
}

[b-02fmp6epvb] .login-form .dxbl-textbox {
    border: 1px solid #ddd;
    border-radius: 6px;
    transition: all 0.2s ease;
}

[b-02fmp6epvb] .login-form .dxbl-textbox:focus-within {
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

[b-02fmp6epvb] .btn-login {
    background: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #3b82f6 100%) !important;
    border: none !important;
    color: white !important;
    border-radius: 6px;
}

[b-02fmp6epvb] .btn-login .dxbl-btn-content {
    background: transparent !important;
    color: white !important;
}

[b-02fmp6epvb] .btn-login:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}

.alert[b-02fmp6epvb] {
    font-size: 0.9rem;
    border-radius: 6px;
}

.login-footer[b-02fmp6epvb] {
    padding: 0.75rem 2rem;
    background: #f8f9fa;
    border-top: 1px solid #e5e7eb;
    text-align: center;
}

.version-text[b-02fmp6epvb] {
    font-size: 0.75rem;
    color: #6b7280;
    font-weight: 400;
}

@media (max-width: 480px) {
    .login-card[b-02fmp6epvb] {
        margin: 10px;
    }
    
    .login-body[b-02fmp6epvb] {
        padding: 1.5rem;
    }
    
    .logo-box[b-02fmp6epvb] {
        padding: 2rem 1.5rem;
    }
}
/* _content/Plato/Shared/MainLayout.razor.rz.scp.css */
.page[b-ln2jl35ji6] {
    height: 100%;
    overflow: hidden;
    background-color: var(--elit-gray-50);
}
[b-ln2jl35ji6] .page-layout,
[b-ln2jl35ji6] .page-layout > .dxbl-gridlayout-root,
[b-ln2jl35ji6] .layout-item {
    background-color: var(--elit-gray-50);
}

[b-ln2jl35ji6] .content {
    padding: 1.5rem 2rem;
    overflow: auto;
    background-color: var(--elit-gray-50);
}

@media (max-width: 1199.98px) {
    [b-ln2jl35ji6] .page-layout > .dxbl-gridlayout-root {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

[b-ln2jl35ji6] .fit-width {
    max-width: 100%;
}

[b-ln2jl35ji6] .mw-1100 {
    max-width: 1100px;
}

[b-ln2jl35ji6] .submenu-item {
    padding: 0;
    overflow: hidden;
}
/* _content/Plato/Shared/NavMenu.razor.rz.scp.css */
.sidebar[b-65g7qwe9bx] {
    box-shadow: var(--shadow-lg);
    transition: min-width 0.3s ease-out, max-width 0.3s ease-out;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border-right: 1px solid var(--sidebar-border);
    display: flex;
    flex-direction: column;
    position: relative;
    font-family: Tahoma, sans-serif;
}

/* Collapsed: nur Icons (Standard) */
.sidebar.collapse[b-65g7qwe9bx] {
    min-width: 60px;
    max-width: 60px;
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar {
    --dxbl-treeview-spacing-x: 0;
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar * {
    text-align: center !important;
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar .dxbl-treeview-node {
    padding: 0.75rem 0 !important;
    position: relative;
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar .dxbl-treeview-node-content-wrapper {
    width: 60px !important;
    position: relative;
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar .dxbl-treeview-node-content {
    width: 60px !important;
    padding: 0 !important;
    display: block !important;
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar a {
    width: 60px !important;
    padding: 0 !important;
    display: block !important;
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar .dxbl-treeview-node-icon {
    width: 60px !important;
    padding: 0 !important;
    margin: 0 !important;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.sidebar.collapse[b-65g7qwe9bx]  .app-sidebar i {
    font-size: 1.3rem;
}

/* Expanded: Icons mit Text */
.sidebar.expand[b-65g7qwe9bx] {
    min-width: 250px;
    max-width: 250px;
}

.sidebar.expand[b-65g7qwe9bx]  .app-sidebar {
    --dxbl-treeview-spacing-x: 0.5rem;
}

.sidebar.expand[b-65g7qwe9bx]  .app-sidebar .dxbl-treeview-node {
    justify-content: flex-start;
    padding-left: 1rem;
    padding-right: 1rem;
}

.sidebar.expand[b-65g7qwe9bx]  .app-sidebar .dxbl-treeview-node-icon {
    margin-right: 0.75rem !important;
}

.sidebar.expand[b-65g7qwe9bx]  .app-sidebar .dxbl-treeview-node-text {
    display: inline;
}

.sidebar.expand[b-65g7qwe9bx]  .app-sidebar i {
    font-size: 1.1rem;
}

/* Native Browser-Tooltips werden automatisch angezeigt durch title-Attribut */

.sidebar-content[b-65g7qwe9bx] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}

.sidebar-footer[b-65g7qwe9bx] {
    border-top: 1px solid var(--sidebar-border);
    padding: 0.5rem 0;
    background: #ffffff;
}

.footer-item[b-65g7qwe9bx] {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem;
    cursor: pointer;
    transition: all 0.2s;
    color: var(--sidebar-text);
}

.footer-item:hover[b-65g7qwe9bx] {
    background-color: var(--sidebar-hover);
}

.footer-item i[b-65g7qwe9bx] {
    font-size: 1.1rem;
    margin-right: 0.75rem;
    width: 20px;
    text-align: center;
}

.footer-item span[b-65g7qwe9bx] {
    font-size: 0.9rem;
    font-weight: 500;
}

/* Collapsed Footer: nur Icons */
.sidebar.collapse .footer-item[b-65g7qwe9bx] {
    justify-content: center;
    padding: 0.75rem 0.5rem;
}

.sidebar.collapse .footer-item i[b-65g7qwe9bx] {
    font-size: 1.3rem;
    margin-right: 0;
}

.sidebar.collapse .footer-item span[b-65g7qwe9bx] {
    display: none;
}

/* Expanded Footer: Icons mit Text */
.sidebar.expand .footer-item[b-65g7qwe9bx] {
    justify-content: flex-start;
}

@media (max-width: 1199.98px) {
    .sidebar[b-65g7qwe9bx] {
        display: none;
    }

    .sidebar.expand[b-65g7qwe9bx] {
        display: block;
        position: fixed;
        top: 3.5rem;
        left: 0;
        height: auto;
        min-width: 100%;
        max-width: 100%;
        z-index: 1050;
    }
}

[b-65g7qwe9bx] .app-sidebar {
    --dxbl-treeview-spacing-x: 0.5rem;
    --dxbl-treeview-spacing-y: 1rem;
    font-family: Tahoma, Arial, sans-serif;
}

[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node-text {
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--sidebar-text);
}

[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node:hover {
    background-color: var(--sidebar-hover);
    border-radius: 6px;
}

[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node.dxbl-active,
[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node.dxbl-selected,
[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node-content.dxbl-active,
[b-65g7qwe9bx] .app-sidebar a.dxbl-active,
[b-65g7qwe9bx] .app-sidebar a[aria-current="page"] {
    background-color: var(--elit-primary) !important;
    color: white !important;
    border-radius: 6px;
}

[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node.dxbl-active *,
[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node.dxbl-selected *,
[b-65g7qwe9bx] .app-sidebar a.dxbl-active *,
[b-65g7qwe9bx] .app-sidebar a[aria-current="page"] * {
    color: white !important;
}

[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node-content-wrapper:focus {
    outline-color: var(--elit-primary);
}

[b-65g7qwe9bx] .app-sidebar .dxbl-treeview-node-icon {
    color: var(--sidebar-text);
}

[b-65g7qwe9bx] .app-sidebar .root-item > :first-child {
    --dxbl-treeview-font-weight: 600;
}

[b-65g7qwe9bx] .app-sidebar .root-item > :only-child:not(.dxbl-treeview-tmpl) > button {
    display: none;
}

@media (max-width: 1199.98px) {
    [b-65g7qwe9bx] .app-sidebar {
        padding-bottom: 0;
    }
}
/* Heute Menu Item - Rot und Fett */
[b-65g7qwe9bx] .heute-menu-item .dxbl-treeview-node-text {
    color: #dc3545 !important;
    font-weight: 700 !important;
}

[b-65g7qwe9bx] .heute-menu-item .dxbl-treeview-node-icon {
    color: #dc3545 !important;
}

/* Heute Menu Item - Active State */
[b-65g7qwe9bx] .heute-menu-item.dxbl-active,
[b-65g7qwe9bx] .heute-menu-item.dxbl-selected,
[b-65g7qwe9bx] .heute-menu-item .dxbl-treeview-node-content.dxbl-active,
[b-65g7qwe9bx] .heute-menu-item a.dxbl-active,
[b-65g7qwe9bx] .heute-menu-item a[aria-current='page'] {
    background-color: #dc3545 !important;
}
/* _content/Plato/Shared/SubMenu.razor.rz.scp.css */
.submenu-bar[b-8wnp3g32m4] {
    background: white;
    border-bottom: 1px solid var(--border-color);
    padding: 0;
    min-height: 48px;
    display: flex;
    align-items: center;
    box-shadow: var(--shadow-sm);
}

.submenu-items[b-8wnp3g32m4] {
    display: flex;
    gap: 0;
    width: 100%;
}

.submenu-item[b-8wnp3g32m4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    color: var(--elit-gray-600);
    text-decoration: none;
    transition: all 0.2s;
    border-bottom: 2px solid transparent;
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
}

.submenu-item:hover[b-8wnp3g32m4] {
    background: var(--elit-primary-light);
    color: var(--elit-primary);
}

.submenu-item.active[b-8wnp3g32m4] {
    background: var(--elit-primary-light);
    border-bottom-color: var(--elit-primary);
    color: var(--elit-primary);
}

.submenu-item i[b-8wnp3g32m4] {
    font-size: 1rem;
}

@media (max-width: 1199.98px) {
    .submenu-bar[b-8wnp3g32m4] {
        overflow-x: auto;
    }
    
    .submenu-items[b-8wnp3g32m4] {
        min-width: max-content;
    }
}
