Files
worklenz/worklenz-frontend/src/components/task-management/ManagePhaseModal.css
chamiakJ 591d348ae5 feat(localization): update and enhance localization files for multiple languages
- Updated localization files for various languages, including English, German, Spanish, Portuguese, and Chinese, to ensure consistency and accuracy across the application.
- Added new keys and updated existing ones to support recent UI changes and features, particularly in project views, task lists, and admin center settings.
- Enhanced the structure of localization files to improve maintainability and facilitate future updates.
- Implemented performance optimizations in the frontend components to better handle localization data.
2025-07-28 07:19:55 +05:30

390 lines
7.8 KiB
CSS

/* ManagePhaseModal.css */
/* Dark mode modal styling */
.dark-modal .ant-modal-content {
background-color: #1f1f1f;
border: 1px solid #303030;
}
.dark-modal .ant-modal-header {
background-color: #1f1f1f;
border-bottom: 1px solid #303030;
}
.dark-modal .ant-modal-body {
background-color: #1f1f1f;
}
.dark-modal .ant-modal-footer {
background-color: #1f1f1f;
border-top: 1px solid #303030;
}
/* Dark mode confirmation modal styling */
.dark .ant-modal-confirm .ant-modal-content,
[data-theme="dark"] .ant-modal-confirm .ant-modal-content {
background-color: #1f1f1f !important;
border: 1px solid #303030 !important;
}
.dark .ant-modal-confirm .ant-modal-header,
[data-theme="dark"] .ant-modal-confirm .ant-modal-header {
background-color: #1f1f1f !important;
border-bottom: 1px solid #303030 !important;
}
.dark .ant-modal-confirm .ant-modal-body,
[data-theme="dark"] .ant-modal-confirm .ant-modal-body {
background-color: #1f1f1f !important;
color: #d9d9d9 !important;
}
.dark .ant-modal-confirm .ant-modal-footer,
[data-theme="dark"] .ant-modal-confirm .ant-modal-footer {
background-color: #1f1f1f !important;
border-top: 1px solid #303030 !important;
}
.dark .ant-modal-confirm .ant-modal-confirm-title,
[data-theme="dark"] .ant-modal-confirm .ant-modal-confirm-title {
color: #d9d9d9 !important;
}
.dark .ant-modal-confirm .ant-modal-confirm-content,
[data-theme="dark"] .ant-modal-confirm .ant-modal-confirm-content {
color: #8c8c8c !important;
}
.dark .ant-modal-confirm .ant-btn-default,
[data-theme="dark"] .ant-modal-confirm .ant-btn-default {
background-color: #141414 !important;
border-color: #303030 !important;
color: #d9d9d9 !important;
}
.dark .ant-modal-confirm .ant-btn-default:hover,
[data-theme="dark"] .ant-modal-confirm .ant-btn-default:hover {
background-color: #262626 !important;
border-color: #40a9ff !important;
color: #d9d9d9 !important;
}
.dark .ant-modal-confirm .ant-btn-primary,
[data-theme="dark"] .ant-modal-confirm .ant-btn-primary {
background-color: #1890ff !important;
border-color: #1890ff !important;
color: #ffffff !important;
}
.dark .ant-modal-confirm .ant-btn-primary:hover,
[data-theme="dark"] .ant-modal-confirm .ant-btn-primary:hover {
background-color: #40a9ff !important;
border-color: #40a9ff !important;
color: #ffffff !important;
}
.dark .ant-modal-confirm .ant-btn-dangerous,
[data-theme="dark"] .ant-modal-confirm .ant-btn-dangerous {
background-color: #ff4d4f !important;
border-color: #ff4d4f !important;
color: #ffffff !important;
}
.dark .ant-modal-confirm .ant-btn-dangerous:hover,
[data-theme="dark"] .ant-modal-confirm .ant-btn-dangerous:hover {
background-color: #ff7875 !important;
border-color: #ff7875 !important;
color: #ffffff !important;
}
/* Light mode confirmation modal styling (ensure consistency) */
.ant-modal-confirm .ant-modal-content {
background-color: #ffffff;
border: 1px solid #f0f0f0;
}
.ant-modal-confirm .ant-modal-header {
background-color: #ffffff;
border-bottom: 1px solid #f0f0f0;
}
.ant-modal-confirm .ant-modal-body {
background-color: #ffffff;
color: #262626;
}
.ant-modal-confirm .ant-modal-footer {
background-color: #ffffff;
border-top: 1px solid #f0f0f0;
}
.ant-modal-confirm .ant-modal-confirm-title {
color: #262626;
}
.ant-modal-confirm .ant-modal-confirm-content {
color: #595959;
}
.dark-modal .ant-form-item-label > label {
color: #d9d9d9;
}
.dark-modal .ant-input,
.dark-modal .ant-select-selector {
background-color: #141414;
border-color: #303030;
color: #d9d9d9;
}
.dark-modal .ant-input::placeholder {
color: #8c8c8c;
}
.dark-modal .ant-btn-primary {
background-color: #1890ff;
border-color: #1890ff;
}
.dark-modal .ant-btn-primary:hover {
background-color: #40a9ff;
border-color: #40a9ff;
}
.dark-modal .ant-btn-text:hover {
background-color: #262626;
}
/* Color picker styling */
.dark-modal .ant-color-picker-trigger {
background-color: #141414;
border-color: #303030;
}
.dark-modal .ant-color-picker-trigger:hover {
border-color: #40a9ff;
}
.dark-modal .ant-color-picker-panel {
background-color: #1f1f1f;
border-color: #303030;
}
/* Phase management section styling */
.phase-item {
transition: all 0.2s ease;
}
.phase-item:hover {
transform: translateY(-1px);
box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
}
.dark-modal .phase-item:hover {
box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4);
}
/* Enhanced phase card styling */
.phase-card {
border-radius: 8px;
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.phase-card:hover {
transform: translateY(-1px);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}
.dark-modal .phase-card:hover {
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
}
/* Drag handle styling */
.drag-handle {
cursor: grab;
opacity: 0.6;
transition: opacity 0.2s ease;
}
.drag-handle:hover {
opacity: 1;
}
.drag-handle:active {
cursor: grabbing;
}
/* Phase color picker styling */
.phase-color-picker {
border-radius: 6px;
overflow: hidden;
transition: all 0.2s ease;
}
.phase-color-picker:hover {
transform: scale(1.05);
}
.dark-modal .phase-color-picker {
border-color: #303030;
}
.dark-modal .phase-color-picker:hover {
border-color: #40a9ff;
}
/* Improved drag handle */
.drag-handle {
cursor: grab;
opacity: 0.7;
transition: all 0.2s ease;
border-radius: 6px;
}
.drag-handle:hover {
opacity: 1;
background-color: rgba(0, 0, 0, 0.05);
}
.dark-modal .drag-handle:hover {
background-color: rgba(255, 255, 255, 0.1);
}
.drag-handle:active {
cursor: grabbing;
transform: scale(0.95);
}
/* Phase color dot enhancement */
.phase-color-dot {
transition: all 0.2s ease;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.phase-color-dot:hover {
transform: scale(1.1);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
.dark-modal .phase-color-dot {
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}
.dark-modal .phase-color-dot:hover {
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
}
/* Sortable item styling */
.sortable-phase-item {
transition:
transform 0.2s ease,
opacity 0.2s ease;
}
.sortable-phase-item.is-dragging {
transform: scale(1.02);
z-index: 999;
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}
.dark-modal .sortable-phase-item.is-dragging {
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
}
/* Phase label input styling */
.phase-label-input {
margin-bottom: 16px;
}
.dark-modal .phase-label-input .ant-input {
background-color: #141414;
border-color: #303030;
color: #d9d9d9;
}
.dark-modal .phase-label-input .ant-input:focus {
border-color: #40a9ff;
box-shadow: 0 0 0 2px rgba(64, 169, 255, 0.2);
}
/* Responsive design */
@media (max-width: 768px) {
.dark-modal .ant-modal {
width: 95% !important;
margin: 10px;
}
.dark-modal .ant-modal-body {
padding: 16px;
}
.phase-item {
padding: 12px;
}
.phase-color-picker {
width: 24px;
height: 24px;
}
}
/* Accessibility improvements */
.drag-handle:focus {
outline: 2px solid #1890ff;
outline-offset: 2px;
}
.dark-modal .drag-handle:focus {
outline-color: #40a9ff;
}
.phase-color-picker:focus {
outline: 2px solid #1890ff;
outline-offset: 2px;
}
.dark-modal .phase-color-picker:focus {
outline-color: #40a9ff;
}
/* Animation for phase creation */
.phase-item-enter {
opacity: 0;
transform: translateY(-10px);
}
.phase-item-enter-active {
opacity: 1;
transform: translateY(0);
transition:
opacity 0.3s ease,
transform 0.3s ease;
}
.phase-item-exit {
opacity: 1;
transform: translateY(0);
}
.phase-item-exit-active {
opacity: 0;
transform: translateY(-10px);
transition:
opacity 0.3s ease,
transform 0.3s ease;
}
/* Loading state styling */
.dark-modal .ant-spin-container {
background-color: transparent;
}
.dark-modal .ant-spin-dot-item {
background-color: #40a9ff;
}
/* Divider styling for dark mode */
.dark-modal .ant-divider-horizontal {
border-color: #303030;
}