/* Purchase Orders Container */ .purchase-orders-container { padding: 0.5rem; background-color: var(--dark-gray); min-height: 100vh; } /* Page Header */ .page-header { margin-bottom: 1rem; padding: 0.75rem 0; } .header-content { display: flex; align-items: center; gap: 0.75rem; } .header-icon { color: var(--primary-red); font-size: 1.5rem; } .header-title { margin: 0; font-size: 1.5rem; font-weight: 600; color: var(--white); } .header-subtitle { color: var(--light-gray); font-size: 0.875rem; margin-top: 0.25rem; } /* Filter Card */ .filter-card { background-color: var(--medium-gray); border-radius: 8px; padding: 1rem; margin-bottom: 1rem; } .filter-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.75rem; align-items: end; } .filter-field { display: flex; flex-direction: column; gap: 0.25rem; } .field-icon { color: var(--light-gray); font-size: 1rem; } .field-suffix-icon { color: var(--light-gray); font-size: 1rem; } .filter-actions { display: flex; gap: 0.5rem; align-items: center; } .action-button { padding: 0.5rem 1rem; border-radius: 4px; border: none; font-size: 0.875rem; font-weight: 500; cursor: pointer; transition: all 0.2s ease; display: flex; align-items: center; gap: 0.5rem; } .action-button.primary { background-color: var(--primary-red); color: var(--white); } .action-button.primary:hover { background-color: #b00000; } .action-button.secondary { background-color: transparent; color: var(--white); border: 1px solid rgba(255, 255, 255, 0.2); } .action-button.secondary:hover { background-color: rgba(255, 255, 255, 0.1); } .action-button.accent { background-color: var(--accent-green); color: var(--white); } .action-button.accent:hover { background-color: #00b359; } .button-icon { font-size: 1rem; } /* Table Card */ .table-card { background-color: var(--medium-gray); border-radius: 8px; padding: 1rem; } .table-container { overflow-x: auto; border-radius: 4px; } .purchase-table { width: 100%; border-collapse: collapse; } .table-header { background-color: rgba(0, 0, 0, 0.2); color: var(--white); font-weight: 600; font-size: 0.875rem; } .table-header th { padding: 0.75rem 0.5rem; text-align: left; border-bottom: 1px solid rgba(255, 255, 255, 0.1); } .table-cell { padding: 0.75rem 0.5rem; border-bottom: 1px solid rgba(255, 255, 255, 0.05); font-size: 0.875rem; color: var(--white); } .amount-cell { font-weight: 600; color: var(--accent-green); } .table-header-row { background-color: rgba(0, 0, 0, 0.2); } .table-row { transition: background-color 0.2s ease; } .table-row:hover { background-color: rgba(255, 255, 255, 0.05); } /* Category and Status Chips */ .category-chip, .status-chip { padding: 0.25rem 0.5rem; border-radius: 12px; font-size: 0.75rem; font-weight: 500; display: inline-block; } .category-chip.asset { background-color: rgba(59, 130, 246, 0.2); color: #3b82f6; } .category-chip.tools { background-color: rgba(16, 185, 129, 0.2); color: #10b981; } .category-chip.spare { background-color: rgba(245, 158, 11, 0.2); color: #f59e0b; } .category-chip.expense { background-color: rgba(239, 68, 68, 0.2); color: #ef4444; } .category-chip.consumable { background-color: rgba(139, 92, 246, 0.2); color: #8b5cf6; } .status-chip.completed { background-color: rgba(0, 204, 102, 0.2); color: var(--accent-green); } .status-chip.pending { background-color: rgba(255, 170, 0, 0.2); color: var(--yellow-orange); } .status-chip.cancelled { background-color: rgba(255, 68, 68, 0.2); color: var(--red); } /* Custom Paginator */ .custom-paginator { margin-top: 1rem; display: flex; justify-content: space-between; align-items: center; padding: 0.75rem 0; color: var(--white); font-size: 0.875rem; } /* Responsive Design */ @media (max-width: 1024px) { .filter-grid { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 0.5rem; } .filter-card { padding: 0.75rem; } .table-card { padding: 0.75rem; } .table-header th, .table-cell { padding: 0.5rem 0.375rem; font-size: 0.8125rem; } } @media (max-width: 768px) { .purchase-orders-container { padding: 0.25rem; } .page-header { margin-bottom: 0.75rem; padding: 0.5rem 0; } .header-title { font-size: 1.25rem; } .filter-grid { grid-template-columns: 1fr; gap: 0.5rem; } .filter-actions { flex-wrap: wrap; gap: 0.375rem; } .action-button { padding: 0.375rem 0.75rem; font-size: 0.8125rem; } .table-container { font-size: 0.75rem; } .table-header th, .table-cell { padding: 0.375rem 0.25rem; font-size: 0.75rem; } .category-chip, .status-chip { font-size: 0.6875rem; padding: 0.1875rem 0.375rem; } } @media (max-width: 480px) { .filter-card { padding: 0.5rem; } .table-card { padding: 0.5rem; } .action-button { padding: 0.25rem 0.5rem; font-size: 0.75rem; } .button-icon { font-size: 0.875rem; } .table-header th, .table-cell { padding: 0.25rem 0.125rem; font-size: 0.6875rem; } .custom-paginator { flex-direction: column; gap: 0.5rem; align-items: stretch; } } /* Animations */ .filter-card, .table-card { transition: transform 0.2s ease, box-shadow 0.2s ease; } .filter-card:hover, .table-card:hover { transform: translateY(-1px); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); } .table-row { transition: background-color 0.2s ease; } .action-button { transition: all 0.2s ease; } .action-button:hover { transform: translateY(-1px); } /* Compact spacing optimizations */ .purchase-orders-container { padding: 0.375rem; } .page-header { margin-bottom: 0.75rem; padding: 0.5rem 0; } .filter-card { padding: 0.75rem; margin-bottom: 0.75rem; } .table-card { padding: 0.75rem; } .table-header th, .table-cell { padding: 0.5rem 0.375rem; } /* Reduce font sizes for better density */ .header-title { font-size: 1.375rem; } .table-header th { font-size: 0.8125rem; } .table-cell { font-size: 0.8125rem; } .category-chip, .status-chip { font-size: 0.6875rem; } .action-button { font-size: 0.8125rem; }