| |
| |
| |
| |
|
|
| |
| .gradient-text { |
| background: linear-gradient(135deg, #1E88E5, #64B5F6); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| background-clip: text; |
| color: transparent; |
| } |
|
|
| .shadow-text { |
| text-shadow: 1px 2px 2px rgba(0, 0, 0, 0.1); |
| } |
|
|
| |
| h1.hero-title { |
| font-size: 2.5rem; |
| font-weight: 800; |
| color: #1E88E5; |
| line-height: 1.2; |
| margin-bottom: 1.5rem; |
| position: relative; |
| padding-right: 1rem; |
| text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.1); |
| background: linear-gradient(135deg, #1E88E5, #64B5F6); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| background-clip: text; |
| color: transparent; |
| } |
|
|
| h1.hero-title::before { |
| content: ''; |
| position: absolute; |
| right: 0; |
| top: 0; |
| bottom: 0; |
| width: 5px; |
| background: linear-gradient(180deg, #1E88E5, #64B5F6); |
| border-radius: 5px; |
| } |
|
|
| |
| .card-enhanced { |
| background: white; |
| border-radius: 15px; |
| padding: 1.5rem; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| transition: transform 0.3s ease, box-shadow 0.3s ease; |
| overflow: hidden; |
| position: relative; |
| z-index: 1; |
| } |
|
|
| .card-enhanced::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| width: 100%; |
| height: 5px; |
| background: linear-gradient(90deg, #1E88E5, #64B5F6); |
| z-index: 2; |
| } |
|
|
| .card-enhanced:hover { |
| transform: translateY(-10px); |
| box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1); |
| } |
|
|
| |
| .button-enhanced { |
| padding: 0.8rem 1.5rem; |
| border-radius: 50px; |
| font-weight: bold; |
| transition: all 0.3s ease; |
| cursor: pointer; |
| border: none; |
| position: relative; |
| overflow: hidden; |
| z-index: 1; |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); |
| } |
|
|
| .button-enhanced::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| width: 0; |
| height: 100%; |
| background: rgba(255, 255, 255, 0.2); |
| transition: width 0.3s ease; |
| z-index: -1; |
| } |
|
|
| .button-enhanced:hover::before { |
| width: 100%; |
| right: auto; |
| left: 0; |
| } |
|
|
| .button-primary-enhanced { |
| background: linear-gradient(135deg, #1E88E5, #1565C0); |
| color: white; |
| } |
|
|
| .button-secondary-enhanced { |
| background: linear-gradient(135deg, #F5F9FF, #E3F2FD); |
| color: #1565C0; |
| border: 1px solid rgba(30, 136, 229, 0.3); |
| } |
|
|
| .button-success-enhanced { |
| background: linear-gradient(135deg, #4CAF50, #2E7D32); |
| color: white; |
| } |
|
|
| .button-warning-enhanced { |
| background: linear-gradient(135deg, #FFC107, #FFA000); |
| color: white; |
| } |
|
|
| .button-danger-enhanced { |
| background: linear-gradient(135deg, #F44336, #C62828); |
| color: white; |
| } |
|
|
| |
| .metric-card-enhanced { |
| background: white; |
| border-radius: 15px; |
| padding: 1.5rem; |
| box-shadow: 0 8px 25px rgba(0, 0, 0, 0.05); |
| text-align: center; |
| position: relative; |
| overflow: hidden; |
| z-index: 1; |
| } |
|
|
| .metric-card-enhanced::before { |
| content: ''; |
| position: absolute; |
| right: 0; |
| top: 0; |
| width: 100%; |
| height: 5px; |
| background: linear-gradient(90deg, var(--metric-color, #1E88E5), var(--metric-color-light, #64B5F6)); |
| z-index: 2; |
| } |
|
|
| .metric-value-enhanced { |
| font-size: 3rem; |
| font-weight: 800; |
| line-height: 1; |
| margin-bottom: 0.5rem; |
| background: linear-gradient(135deg, var(--metric-color, #1E88E5), var(--metric-color-light, #64B5F6)); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| background-clip: text; |
| color: transparent; |
| } |
|
|
| .metric-label-enhanced { |
| font-size: 1rem; |
| color: #666; |
| font-weight: 500; |
| } |
|
|
| |
| .tabs-enhanced { |
| display: flex; |
| margin-bottom: 1.5rem; |
| position: relative; |
| } |
|
|
| .tabs-enhanced::after { |
| content: ''; |
| position: absolute; |
| bottom: 0; |
| right: 0; |
| width: 100%; |
| height: 1px; |
| background-color: #ddd; |
| z-index: 1; |
| } |
|
|
| .tab-item-enhanced { |
| padding: 1rem 1.5rem; |
| cursor: pointer; |
| position: relative; |
| font-weight: 500; |
| z-index: 2; |
| transition: all 0.3s ease; |
| } |
|
|
| .tab-item-enhanced::after { |
| content: ''; |
| position: absolute; |
| bottom: 0; |
| right: 0; |
| width: 0; |
| height: 3px; |
| background: linear-gradient(90deg, #1E88E5, #64B5F6); |
| transition: width 0.3s ease; |
| z-index: 3; |
| } |
|
|
| .tab-item-enhanced.active { |
| color: #1E88E5; |
| } |
|
|
| .tab-item-enhanced.active::after { |
| width: 100%; |
| } |
|
|
| .tab-item-enhanced:hover::after { |
| width: 100%; |
| } |
|
|
| |
| .alert-enhanced { |
| padding: 1.2rem; |
| border-radius: 10px; |
| margin-bottom: 1.5rem; |
| position: relative; |
| display: flex; |
| align-items: flex-start; |
| overflow: hidden; |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); |
| } |
|
|
| .alert-enhanced::before { |
| content: ''; |
| position: absolute; |
| right: 0; |
| top: 0; |
| bottom: 0; |
| width: 5px; |
| background: linear-gradient(180deg, var(--alert-color, #1E88E5), var(--alert-color-light, #64B5F6)); |
| border-radius: 0 5px 5px 0; |
| } |
|
|
| .alert-icon-enhanced { |
| margin-left: 1rem; |
| font-size: 1.8rem; |
| color: var(--alert-color, #1E88E5); |
| } |
|
|
| .alert-content-enhanced { |
| flex: 1; |
| } |
|
|
| .alert-title-enhanced { |
| font-weight: bold; |
| margin-bottom: 0.3rem; |
| color: var(--alert-color, #1E88E5); |
| } |
|
|
| .alert-message-enhanced { |
| margin: 0; |
| color: #333; |
| } |
|
|
| |
| .table-enhanced { |
| width: 100%; |
| border-collapse: separate; |
| border-spacing: 0; |
| margin-bottom: 1.5rem; |
| background-color: white; |
| border-radius: 10px; |
| overflow: hidden; |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); |
| } |
|
|
| .table-enhanced th { |
| background: linear-gradient(135deg, #1E88E5, #1565C0); |
| color: white; |
| font-weight: bold; |
| padding: 1.2rem 1rem; |
| text-align: right; |
| } |
|
|
| .table-enhanced td { |
| padding: 1rem; |
| text-align: right; |
| border-bottom: 1px solid #f0f0f0; |
| } |
|
|
| .table-enhanced tr:last-child td { |
| border-bottom: none; |
| } |
|
|
| .table-enhanced tr:nth-child(even) { |
| background-color: #f9fbfe; |
| } |
|
|
| .table-enhanced tr:hover { |
| background-color: #f0f7ff; |
| } |
|
|
| |
| .search-bar-enhanced { |
| position: relative; |
| margin-bottom: 1.5rem; |
| } |
|
|
| .search-input-enhanced { |
| width: 100%; |
| padding: 1rem 3rem; |
| border: none; |
| border-radius: 50px; |
| font-size: 1rem; |
| transition: all 0.3s ease; |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); |
| } |
|
|
| .search-input-enhanced:focus { |
| box-shadow: 0 4px 20px rgba(30, 136, 229, 0.2); |
| outline: none; |
| } |
|
|
| .search-icon-enhanced { |
| position: absolute; |
| right: 1.2rem; |
| top: 50%; |
| transform: translateY(-50%); |
| color: #1E88E5; |
| font-size: 1.2rem; |
| } |
|
|
| |
| .progress-container-enhanced { |
| width: 100%; |
| height: 15px; |
| background-color: #f0f0f0; |
| border-radius: 10px; |
| overflow: hidden; |
| margin-bottom: 1rem; |
| box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.05); |
| } |
|
|
| .progress-bar-enhanced { |
| height: 100%; |
| background: linear-gradient(90deg, var(--progress-color, #1E88E5), var(--progress-color-light, #64B5F6)); |
| border-radius: 10px; |
| transition: width 0.5s ease; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .progress-bar-enhanced::after { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| bottom: 0; |
| left: 0; |
| background: linear-gradient( |
| 45deg, |
| rgba(255, 255, 255, 0.2) 25%, |
| transparent 25%, |
| transparent 50%, |
| rgba(255, 255, 255, 0.2) 50%, |
| rgba(255, 255, 255, 0.2) 75%, |
| transparent 75%, |
| transparent |
| ); |
| background-size: 30px 30px; |
| animation: progressAnimation 2s linear infinite; |
| border-radius: 10px; |
| } |
|
|
| @keyframes progressAnimation { |
| 0% { |
| background-position: 0 0; |
| } |
| 100% { |
| background-position: 30px 0; |
| } |
| } |
|
|
| |
| .project-card-enhanced { |
| position: relative; |
| overflow: hidden; |
| border-radius: 15px; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| transition: transform 0.3s ease, box-shadow 0.3s ease; |
| margin-bottom: 1.5rem; |
| } |
|
|
| .project-card-enhanced::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| width: 5px; |
| height: 100%; |
| background: linear-gradient(180deg, var(--project-color, #1E88E5), var(--project-color-light, #64B5F6)); |
| } |
|
|
| .project-card-enhanced:hover { |
| transform: translateY(-10px); |
| box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1); |
| } |
|
|
| .project-header-enhanced { |
| padding: 1.5rem; |
| border-bottom: 1px solid #f0f0f0; |
| position: relative; |
| } |
|
|
| .project-title-enhanced { |
| font-weight: bold; |
| font-size: 1.4rem; |
| margin-bottom: 0.5rem; |
| color: #333; |
| } |
|
|
| .project-subtitle-enhanced { |
| font-size: 0.9rem; |
| color: #666; |
| } |
|
|
| .project-content-enhanced { |
| padding: 1.5rem; |
| } |
|
|
| .project-footer-enhanced { |
| padding: 1rem 1.5rem; |
| background-color: #f9fbfe; |
| border-top: 1px solid #f0f0f0; |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| } |
|
|
| |
| .task-list-enhanced { |
| margin-bottom: 1.5rem; |
| } |
|
|
| .task-item-enhanced { |
| padding: 1.2rem; |
| background-color: white; |
| border-radius: 10px; |
| margin-bottom: 1rem; |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); |
| display: flex; |
| align-items: center; |
| transition: transform 0.2s ease, box-shadow 0.2s ease; |
| } |
|
|
| .task-item-enhanced:hover { |
| transform: translateY(-3px); |
| box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08); |
| } |
|
|
| .task-checkbox-enhanced { |
| margin-left: 1rem; |
| width: 24px; |
| height: 24px; |
| flex-shrink: 0; |
| } |
|
|
| .task-content-enhanced { |
| flex: 1; |
| } |
|
|
| .task-title-enhanced { |
| font-weight: 500; |
| margin-bottom: 0.3rem; |
| color: #333; |
| font-size: 1.1rem; |
| } |
|
|
| .task-description-enhanced { |
| font-size: 0.9rem; |
| color: #666; |
| } |
|
|
| .task-meta-enhanced { |
| display: flex; |
| align-items: center; |
| font-size: 0.8rem; |
| color: #888; |
| margin-top: 0.8rem; |
| } |
|
|
| .task-meta-item-enhanced { |
| display: flex; |
| align-items: center; |
| margin-left: 1.2rem; |
| } |
|
|
| .task-meta-icon-enhanced { |
| margin-left: 0.3rem; |
| color: var(--task-color, #1E88E5); |
| } |
|
|
| |
| .icon-enhanced { |
| width: 40px; |
| height: 40px; |
| display: flex; |
| justify-content: center; |
| align-items: center; |
| border-radius: 50%; |
| background: linear-gradient(135deg, var(--icon-color, #1E88E5), var(--icon-color-light, #64B5F6)); |
| color: white; |
| box-shadow: 0 4px 10px rgba(var(--icon-color-rgb, 30, 136, 229), 0.3); |
| margin-left: 1rem; |
| flex-shrink: 0; |
| } |
|
|
| |
| .profile-card-enhanced { |
| background-color: white; |
| border-radius: 15px; |
| padding: 1.5rem; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| display: flex; |
| align-items: center; |
| margin-bottom: 1.5rem; |
| } |
|
|
| .profile-avatar-enhanced { |
| width: 80px; |
| height: 80px; |
| border-radius: 50%; |
| background: linear-gradient(135deg, #1E88E5, #64B5F6); |
| color: white; |
| display: flex; |
| justify-content: center; |
| align-items: center; |
| font-size: 2rem; |
| font-weight: bold; |
| margin-left: 1.5rem; |
| box-shadow: 0 5px 15px rgba(30, 136, 229, 0.3); |
| flex-shrink: 0; |
| } |
|
|
| .profile-info-enhanced { |
| flex: 1; |
| } |
|
|
| .profile-name-enhanced { |
| font-size: 1.4rem; |
| font-weight: bold; |
| margin-bottom: 0.3rem; |
| color: #333; |
| } |
|
|
| .profile-role-enhanced { |
| font-size: 0.9rem; |
| color: #1E88E5; |
| margin-bottom: 0.8rem; |
| } |
|
|
| .profile-stats-enhanced { |
| display: flex; |
| margin-top: 1rem; |
| } |
|
|
| .profile-stat-enhanced { |
| margin-left: 1.5rem; |
| text-align: center; |
| } |
|
|
| .profile-stat-value-enhanced { |
| font-size: 1.2rem; |
| font-weight: bold; |
| color: #1E88E5; |
| } |
|
|
| .profile-stat-label-enhanced { |
| font-size: 0.8rem; |
| color: #666; |
| } |
|
|
| |
| .list-enhanced { |
| list-style-type: none; |
| padding: 0; |
| margin: 0 0 1.5rem 0; |
| } |
|
|
| .list-item-enhanced { |
| position: relative; |
| padding-right: 2rem; |
| margin-bottom: 1rem; |
| } |
|
|
| .list-item-enhanced::before { |
| content: ''; |
| position: absolute; |
| top: 0.5rem; |
| right: 0; |
| width: 8px; |
| height: 8px; |
| border-radius: 50%; |
| background: linear-gradient(135deg, #1E88E5, #64B5F6); |
| } |
|
|
| |
| .hero-section { |
| background: linear-gradient(135deg, #f8f9fa, #f0f7ff); |
| padding: 3rem 2rem; |
| border-radius: 15px; |
| margin-bottom: 2rem; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| text-align: center; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .hero-section::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| width: 100%; |
| height: 5px; |
| background: linear-gradient(90deg, #1E88E5, #64B5F6); |
| } |
|
|
| .hero-title { |
| font-size: 2.5rem; |
| font-weight: 800; |
| margin-bottom: 1rem; |
| background: linear-gradient(135deg, #1E88E5, #64B5F6); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| background-clip: text; |
| color: transparent; |
| } |
|
|
| .hero-subtitle { |
| font-size: 1.2rem; |
| color: #666; |
| margin-bottom: 2rem; |
| max-width: 700px; |
| margin-right: auto; |
| margin-left: auto; |
| } |
|
|
| .hero-actions { |
| display: flex; |
| justify-content: center; |
| gap: 1rem; |
| } |
|
|
| |
| .chart-container-enhanced { |
| background-color: white; |
| border-radius: 15px; |
| padding: 1.5rem; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| margin-bottom: 2rem; |
| position: relative; |
| } |
|
|
| .chart-header-enhanced { |
| margin-bottom: 1.5rem; |
| text-align: center; |
| } |
|
|
| .chart-title-enhanced { |
| font-size: 1.4rem; |
| font-weight: bold; |
| color: #333; |
| margin-bottom: 0.3rem; |
| } |
|
|
| .chart-subtitle-enhanced { |
| font-size: 0.9rem; |
| color: #666; |
| } |
|
|
| |
| .timeline-enhanced { |
| margin-bottom: 2rem; |
| position: relative; |
| } |
|
|
| .timeline-enhanced::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 24px; |
| bottom: 0; |
| width: 2px; |
| background: linear-gradient(180deg, #1E88E5, #64B5F6); |
| } |
|
|
| .timeline-item-enhanced { |
| position: relative; |
| padding-right: 50px; |
| padding-bottom: 1.5rem; |
| } |
|
|
| .timeline-point-enhanced { |
| position: absolute; |
| top: 0; |
| right: 20px; |
| width: 12px; |
| height: 12px; |
| border-radius: 50%; |
| background: linear-gradient(135deg, #1E88E5, #64B5F6); |
| transform: translateX(50%); |
| box-shadow: 0 0 0 4px rgba(30, 136, 229, 0.2); |
| z-index: 2; |
| } |
|
|
| .timeline-content-enhanced { |
| background-color: white; |
| border-radius: 10px; |
| padding: 1.2rem; |
| box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); |
| } |
|
|
| .timeline-date-enhanced { |
| font-size: 0.8rem; |
| color: #1E88E5; |
| margin-bottom: 0.5rem; |
| } |
|
|
| .timeline-title-enhanced { |
| font-weight: 500; |
| margin-bottom: 0.5rem; |
| color: #333; |
| } |
|
|
| .timeline-description-enhanced { |
| font-size: 0.9rem; |
| color: #666; |
| } |
|
|
| |
| .service-grid { |
| display: grid; |
| grid-template-columns: repeat(3, 1fr); |
| gap: 1.5rem; |
| margin-bottom: 2rem; |
| } |
|
|
| .service-item { |
| background-color: white; |
| border-radius: 10px; |
| padding: 1.5rem; |
| box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); |
| transition: transform 0.3s ease, box-shadow 0.3s ease; |
| text-align: center; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .service-item:hover { |
| transform: translateY(-5px); |
| box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); |
| } |
|
|
| .service-item::after { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| width: 100%; |
| height: 4px; |
| background: linear-gradient(90deg, #1E88E5, #64B5F6); |
| } |
|
|
| .service-icon { |
| width: 60px; |
| height: 60px; |
| background: linear-gradient(135deg, #1E88E5, #64B5F6); |
| border-radius: 50%; |
| display: flex; |
| justify-content: center; |
| align-items: center; |
| margin: 0 auto 1rem auto; |
| color: white; |
| font-size: 1.5rem; |
| box-shadow: 0 5px 15px rgba(30, 136, 229, 0.3); |
| } |
|
|
| .service-title { |
| font-weight: bold; |
| margin-bottom: 0.5rem; |
| color: #333; |
| } |
|
|
| .service-description { |
| font-size: 0.9rem; |
| color: #666; |
| } |
|
|
| |
| @media (max-width: 768px) { |
| .service-grid { |
| grid-template-columns: repeat(2, 1fr); |
| } |
| |
| .hero-title { |
| font-size: 2rem; |
| } |
| |
| .chart-container-enhanced { |
| padding: 1rem; |
| } |
| |
| .project-card-enhanced { |
| margin-bottom: 1rem; |
| } |
| } |
|
|
| @media (max-width: 576px) { |
| .service-grid { |
| grid-template-columns: 1fr; |
| } |
| |
| .hero-actions { |
| flex-direction: column; |
| } |
| |
| .profile-card-enhanced { |
| flex-direction: column; |
| text-align: center; |
| } |
| |
| .profile-avatar-enhanced { |
| margin: 0 0 1rem 0; |
| } |
| |
| .profile-stats-enhanced { |
| justify-content: center; |
| } |
| } |
|
|
| |
| .tender-card { |
| background-color: white; |
| border-radius: 15px; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| margin-bottom: 1.5rem; |
| position: relative; |
| overflow: hidden; |
| transition: transform 0.3s ease, box-shadow 0.3s ease; |
| } |
|
|
| .tender-card:hover { |
| transform: translateY(-5px); |
| box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1); |
| } |
|
|
| .tender-card::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| width: 5px; |
| height: 100%; |
| background: linear-gradient(180deg, #1E88E5, #64B5F6); |
| } |
|
|
| .tender-header { |
| padding: 1.5rem; |
| border-bottom: 1px solid #f0f0f0; |
| } |
|
|
| .tender-title { |
| font-size: 1.4rem; |
| font-weight: bold; |
| margin-bottom: 0.5rem; |
| color: #333; |
| } |
|
|
| .tender-meta { |
| display: flex; |
| flex-wrap: wrap; |
| gap: 1rem; |
| margin-top: 1rem; |
| } |
|
|
| .tender-meta-item { |
| display: flex; |
| align-items: center; |
| font-size: 0.8rem; |
| color: #666; |
| } |
|
|
| .tender-meta-icon { |
| margin-left: 0.5rem; |
| color: #1E88E5; |
| } |
|
|
| .tender-body { |
| padding: 1.5rem; |
| } |
|
|
| .tender-section { |
| margin-bottom: 1.5rem; |
| } |
|
|
| .tender-section-title { |
| font-weight: bold; |
| margin-bottom: 0.8rem; |
| color: #333; |
| padding-bottom: 0.5rem; |
| border-bottom: 1px solid #f0f0f0; |
| } |
|
|
| .tender-footer { |
| padding: 1rem 1.5rem; |
| background-color: #f9fbfe; |
| border-top: 1px solid #f0f0f0; |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| } |
|
|
| .tender-actions { |
| display: flex; |
| gap: 0.8rem; |
| } |
|
|
| |
| .items-table-enhanced { |
| width: 100%; |
| border-collapse: separate; |
| border-spacing: 0; |
| margin-bottom: 1.5rem; |
| background-color: white; |
| border-radius: 10px; |
| overflow: hidden; |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); |
| } |
|
|
| .items-table-enhanced th { |
| background: linear-gradient(135deg, #1E88E5, #1565C0); |
| color: white; |
| font-weight: bold; |
| padding: 1rem; |
| text-align: right; |
| } |
|
|
| .items-table-enhanced td { |
| padding: 0.8rem 1rem; |
| text-align: right; |
| border-bottom: 1px solid #f0f0f0; |
| } |
|
|
| .items-table-enhanced tr:last-child td { |
| border-bottom: none; |
| } |
|
|
| .items-price { |
| font-weight: bold; |
| color: #1E88E5; |
| } |
|
|
| .price-analysis { |
| display: flex; |
| align-items: center; |
| gap: 0.5rem; |
| } |
|
|
| .price-indicator { |
| width: 10px; |
| height: 10px; |
| border-radius: 50%; |
| display: inline-block; |
| } |
|
|
| .price-indicator-high { |
| background-color: #F44336; |
| } |
|
|
| .price-indicator-normal { |
| background-color: #4CAF50; |
| } |
|
|
| .price-indicator-low { |
| background-color: #FFC107; |
| } |
|
|
| |
| .risk-card { |
| background-color: white; |
| border-radius: 15px; |
| padding: 1.5rem; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| margin-bottom: 1.5rem; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .risk-card::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| right: 0; |
| width: 5px; |
| height: 100%; |
| } |
|
|
| .risk-card--high::before { |
| background: linear-gradient(180deg, #F44336, #B71C1C); |
| } |
|
|
| .risk-card--medium::before { |
| background: linear-gradient(180deg, #FFC107, #FFA000); |
| } |
|
|
| .risk-card--low::before { |
| background: linear-gradient(180deg, #4CAF50, #2E7D32); |
| } |
|
|
| .risk-header { |
| display: flex; |
| align-items: center; |
| margin-bottom: 1rem; |
| } |
|
|
| .risk-icon { |
| width: 40px; |
| height: 40px; |
| border-radius: 50%; |
| display: flex; |
| justify-content: center; |
| align-items: center; |
| margin-left: 1rem; |
| color: white; |
| } |
|
|
| .risk-icon--high { |
| background: linear-gradient(135deg, #F44336, #B71C1C); |
| } |
|
|
| .risk-icon--medium { |
| background: linear-gradient(135deg, #FFC107, #FFA000); |
| } |
|
|
| .risk-icon--low { |
| background: linear-gradient(135deg, #4CAF50, #2E7D32); |
| } |
|
|
| .risk-title { |
| font-weight: bold; |
| color: #333; |
| } |
|
|
| .risk-description { |
| margin-bottom: 1rem; |
| color: #666; |
| } |
|
|
| .risk-actions { |
| display: flex; |
| gap: 0.8rem; |
| margin-top: 1rem; |
| } |
|
|
| |
| .legend-card { |
| background-color: white; |
| border-radius: 10px; |
| padding: 1.2rem; |
| box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); |
| margin-bottom: 1.5rem; |
| } |
|
|
| .legend-title { |
| font-weight: bold; |
| margin-bottom: 1rem; |
| color: #333; |
| padding-bottom: 0.5rem; |
| border-bottom: 1px solid #f0f0f0; |
| } |
|
|
| .legend-items { |
| display: flex; |
| flex-wrap: wrap; |
| gap: 1rem; |
| } |
|
|
| .legend-item { |
| display: flex; |
| align-items: center; |
| margin-bottom: 0.8rem; |
| } |
|
|
| .legend-color { |
| width: 16px; |
| height: 16px; |
| border-radius: 4px; |
| margin-left: 0.5rem; |
| } |
|
|
| .legend-label { |
| font-size: 0.9rem; |
| color: #333; |
| } |
|
|
| |
| .form-enhanced { |
| background-color: white; |
| border-radius: 15px; |
| padding: 1.5rem; |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); |
| margin-bottom: 1.5rem; |
| } |
|
|
| .form-title { |
| font-size: 1.4rem; |
| font-weight: bold; |
| margin-bottom: 1.5rem; |
| color: #333; |
| text-align: center; |
| } |
|
|
| .form-section { |
| margin-bottom: 1.5rem; |
| } |
|
|
| .form-section-title { |
| font-weight: bold; |
| margin-bottom: 1rem; |
| color: #333; |
| padding-bottom: 0.5rem; |
| border-bottom: 1px solid #f0f0f0; |
| } |
|
|
| .form-row { |
| display: flex; |
| gap: 1rem; |
| margin-bottom: 1rem; |
| } |
|
|
| .form-group { |
| flex: 1; |
| } |
|
|
| .form-label { |
| display: block; |
| margin-bottom: 0.5rem; |
| font-weight: 500; |
| color: #333; |
| } |
|
|
| .form-input, |
| .form-select, |
| .form-textarea { |
| width: 100%; |
| padding: 0.8rem 1rem; |
| border: 1px solid #ddd; |
| border-radius: 5px; |
| font-size: 1rem; |
| transition: border-color 0.3s ease, box-shadow 0.3s ease; |
| } |
|
|
| .form-input:focus, |
| .form-select:focus, |
| .form-textarea:focus { |
| border-color: #1E88E5; |
| box-shadow: 0 0 0 3px rgba(30, 136, 229, 0.2); |
| outline: none; |
| } |
|
|
| .form-textarea { |
| min-height: 100px; |
| resize: vertical; |
| } |
|
|
| .form-actions { |
| display: flex; |
| justify-content: flex-end; |
| gap: 1rem; |
| margin-top: 1.5rem; |
| } |