.resignation-detail-panel { display: flex; flex-direction: column; height: 100vh; background: #ffffff; border-radius: 12px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12); overflow: hidden; .panel-header { display: flex; align-items: center; justify-content: space-between; padding: 24px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; .header-content { display: flex; align-items: center; gap: 16px; .reason-icon { font-size: 32px; width: 32px; height: 32px; } .header-text { h2 { margin: 0; font-size: 24px; font-weight: 600; } .category-chip { display: inline-block; background: rgba(255, 255, 255, 0.2); padding: 4px 12px; border-radius: 16px; font-size: 12px; margin-top: 4px; } } } button { color: white; } } .panel-content { flex: 1; overflow: auto; ::ng-deep .mat-mdc-tab-group { height: 100%; .mat-mdc-tab-header { border-bottom: 1px solid #e0e0e0; } .mat-mdc-tab-body-wrapper { flex: 1; overflow: auto; } } .tab-content { padding: 24px; } .stats-section { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 32px; .stat-card { text-align: center; padding: 20px; background: #f8f9fa; border-radius: 12px; border: 1px solid #e9ecef; .stat-value { font-size: 28px; font-weight: 700; color: #2c3e50; margin-bottom: 8px; &.trend { display: flex; align-items: center; justify-content: center; gap: 4px; &.trend-up { color: #e74c3c; } &.trend-down { color: #27ae60; } &.trend-stable { color: #f39c12; } mat-icon { font-size: 20px; width: 20px; height: 20px; } } } .stat-label { font-size: 14px; color: #6c757d; font-weight: 500; } } } .analysis-section { h3 { color: #2c3e50; font-size: 18px; font-weight: 600; margin: 24px 0 12px 0; border-bottom: 2px solid #667eea; padding-bottom: 8px; } .overview-text { line-height: 1.6; color: #495057; margin-bottom: 24px; } .factors-list { margin-bottom: 24px; ::ng-deep mat-chip { background: #e3f2fd; color: #1976d2; } } .impact-analysis { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 24px; .impact-section { h4 { color: #495057; font-size: 16px; margin-bottom: 12px; } ul { list-style: none; padding: 0; li { padding: 8px 0; padding-left: 20px; position: relative; color: #6c757d; &::before { content: '•'; color: #667eea; font-weight: bold; position: absolute; left: 0; } } } } } .time-distribution { .period-item { display: grid; grid-template-columns: 100px 1fr 60px; align-items: center; gap: 16px; margin-bottom: 12px; .period-label { font-weight: 500; color: #495057; } .period-bar { height: 8px; background: #e9ecef; border-radius: 4px; overflow: hidden; .bar-fill { height: 100%; background: linear-gradient(90deg, #667eea, #764ba2); border-radius: 4px; } } .period-count { text-align: right; font-weight: 500; color: #6c757d; } } } } .improvement-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; padding: 16px; background: #f8f9fa; border-radius: 8px; .priority-badge { padding: 6px 16px; border-radius: 20px; font-weight: 600; font-size: 12px; &.priority-high { background: #ffebee; color: #c62828; } &.priority-medium { background: #fff3e0; color: #ef6c00; } &.priority-low { background: #e8f5e8; color: #2e7d32; } } .timeline { color: #6c757d; font-weight: 500; } } .expected-outcome { margin-bottom: 32px; h3 { color: #2c3e50; font-size: 18px; font-weight: 600; margin-bottom: 12px; } p { line-height: 1.6; color: #495057; } } .action-plan { margin-bottom: 32px; h3 { color: #2c3e50; font-size: 18px; font-weight: 600; margin-bottom: 16px; } .actions-list { .action-item { background: #f8f9fa; border-radius: 8px; padding: 20px; margin-bottom: 16px; border-left: 4px solid #667eea; .action-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; h4 { margin: 0; color: #2c3e50; font-size: 16px; } .action-status { padding: 4px 12px; border-radius: 12px; font-size: 12px; font-weight: 500; &.status-pending { background: #fff3cd; color: #856404; } &.status-in_progress { background: #d1ecf1; color: #0c5460; } &.status-completed { background: #d4edda; color: #155724; } } } .action-description { color: #6c757d; line-height: 1.5; margin-bottom: 12px; } .action-meta { display: flex; gap: 24px; font-size: 14px; color: #6c757d; .responsible, .deadline { font-weight: 500; } } } } } .success-metrics { margin-bottom: 32px; h3 { color: #2c3e50; font-size: 18px; font-weight: 600; margin-bottom: 12px; } ul { list-style: none; padding: 0; li { padding: 8px 0; padding-left: 24px; position: relative; color: #495057; &::before { content: '✓'; color: #27ae60; font-weight: bold; position: absolute; left: 0; } } } } .resources { h3 { color: #2c3e50; font-size: 18px; font-weight: 600; margin-bottom: 16px; } .resource-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; .resource-item { background: #f8f9fa; padding: 16px; border-radius: 8px; h4 { margin: 0 0 12px 0; color: #495057; font-size: 14px; font-weight: 600; } p { margin: 0; color: #6c757d; } .personnel-list, .tools-list { display: flex; flex-wrap: wrap; gap: 8px; ::ng-deep mat-chip { background: #e3f2fd; color: #1976d2; font-size: 12px; } } } } } } .panel-footer { display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 20px 24px; border-top: 1px solid #e0e0e0; background: #fafafa; button { min-width: 100px; } } } @media (max-width: 768px) { .resignation-detail-panel { .panel-content { .stats-section { grid-template-columns: 1fr; } .analysis-section { .impact-analysis { grid-template-columns: 1fr; } .time-distribution { .period-item { grid-template-columns: 1fr; gap: 8px; text-align: center; } } } .resources { .resource-grid { grid-template-columns: 1fr; } } } .panel-footer { flex-direction: column; gap: 8px; button { width: 100%; } } } }