/* POC Admin Page Styles */ /* 통계 카드 */ .stats-card { background: #fff; border-radius: 8px; padding: 20px; margin-bottom: 20px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); display: flex; align-items: center; transition: all 0.3s ease; } .stats-card:hover { transform: translateY(-5px); box-shadow: 0 4px 8px rgba(0,0,0,0.15); } .stats-card .stats-icon { width: 60px; height: 60px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-right: 20px; font-size: 24px; } .stats-card .stats-content h3 { margin: 0; font-size: 32px; font-weight: bold; } .stats-card .stats-content p { margin: 5px 0 0; color: #666; font-size: 14px; } /* 카드 색상 테마 */ .pending-card .stats-icon { background: #fff3cd; color: #856404; } .progress-card .stats-icon { background: #d1ecf1; color: #0c5460; } .completed-card .stats-icon { background: #d4edda; color: #155724; } .total-card .stats-icon { background: #e7e8ea; color: #383d41; } /* 테이블 스타일 개선 */ #poc-table { font-size: 13px; } #poc-table thead th { background-color: #f8f9fa; border-bottom: 2px solid #dee2e6; font-weight: 600; white-space: nowrap; } #poc-table tbody tr:hover { background-color: #f8f9fa; } #poc-table tbody td { vertical-align: middle; padding: 10px 8px; } /* 뱃지 스타일 */ .badge { padding: 4px 8px; font-size: 11px; font-weight: 600; } .badge.badge-warning { background-color: #ffc107; color: #212529; } .badge.badge-info { background-color: #17a2b8; color: #fff; } .badge.badge-success { background-color: #28a745; color: #fff; } .badge.badge-danger { background-color: #dc3545; color: #fff; } /* 필터 섹션 */ .form-group.util-mb-0 { margin-bottom: 0 !important; } /* 액션 버튼 */ .btn-sm { padding: 5px 10px; font-size: 12px; } /* 체크박스 스타일 */ input[type="checkbox"] { cursor: pointer; } /* 페이지네이션 */ .pagination { margin: 20px 0; } .pagination > li > a { color: #333; padding: 6px 12px; margin: 0 2px; border: 1px solid #ddd; border-radius: 4px; } .pagination > li.active > a { background-color: #337ab7; border-color: #337ab7; color: #fff; } .pagination > li > a:hover { background-color: #f5f5f5; } /* 모달 스타일 */ .modal-header { background-color: #f8f9fa; border-bottom: 1px solid #dee2e6; } .modal-title { font-weight: 600; } /* 상세 정보 모달 */ #detailModal .table { margin-bottom: 15px; } #detailModal h5 { font-weight: 600; color: #333; border-bottom: 2px solid #007bff; padding-bottom: 10px; margin-bottom: 20px; } #detailModal .well { background-color: #f8f9fa; border: 1px solid #dee2e6; border-radius: 4px; padding: 15px; } /* 반응형 디자인 */ @media (max-width: 768px) { .stats-card { margin-bottom: 15px; } .stats-card .stats-icon { width: 50px; height: 50px; font-size: 20px; } .stats-card .stats-content h3 { font-size: 24px; } #poc-table { font-size: 11px; } .table-responsive { border: 1px solid #ddd; } } /* 유틸리티 클래스 */ .util-flex { display: flex; } .util-items-center { align-items: center; } .util-justify-between { justify-content: space-between; } .util-gap-2 { gap: 0.5rem; } .util-gap-3 { gap: 1rem; } .util-flex-1 { flex: 1; } .util-mb-0 { margin-bottom: 0 !important; } .util-mb-4 { margin-bottom: 1.5rem; } .util-ml-3 { margin-left: 1rem; } .util-inline-flex { display: inline-flex; } .text-muted { color: #6c757d; }