Files
Hyungi Ahn 862a2683d3 feat(tkuser): 탭 카테고리 그룹핑 + 설비 관리 탭 추가 + tkfb admin 페이지 통합
- tkuser 탭을 5개 카테고리로 그룹핑 (인력/현장/업무/거래/시스템)
- 설비 관리 탭 신규 추가 (CRUD, 필터, 상세 보기)
- tkfb 사이드바 admin 메뉴 6개를 tkuser 외부 링크로 교체
- tkfb admin HTML 6개를 tkuser 리다이렉트로 변경
- gateway 알림 벨 링크를 tkuser로 변경
- _tkuserBase 헬퍼로 개발/운영 환경 자동 분기

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 15:35:24 +09:00

41 lines
2.1 KiB
CSS

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; background: #f1f5f9; min-height: 100vh; }
.input-field { background: white; border: 1px solid #e2e8f0; transition: all 0.2s; }
.input-field:focus { outline: none; border-color: #64748b; box-shadow: 0 0 0 3px rgba(100,116,139,0.1); }
.tab-btn { transition: all 0.2s; }
.tab-btn.active { background: #334155; color: white; }
.tab-btn:not(.active) { color: #64748b; }
.tab-btn:not(.active):hover { background: #e2e8f0; }
.tab-group-label { font-size: 0.65rem; font-weight: 600; color: #94a3b8; text-transform: uppercase; letter-spacing: 0.05em; padding: 0 0.25rem; white-space: nowrap; flex-shrink: 0; }
.tab-divider { width: 1px; height: 1.25rem; background: #e2e8f0; margin: 0 0.25rem; flex-shrink: 0; }
.system-section { border-left: 4px solid; }
.system-section.system1 { border-color: #3b82f6; }
.system-section.system3 { border-color: #8b5cf6; }
.group-header { cursor: pointer; user-select: none; }
.group-header:hover { background: #f8fafc; }
.perm-item { transition: all 0.15s; }
.perm-item.checked { background: #f0f9ff; border-color: #93c5fd; }
.toast-message { transition: all 0.3s ease; }
.fade-in { opacity: 0; transform: translateY(10px); transition: opacity 0.4s, transform 0.4s; }
.fade-in.visible { opacity: 1; transform: translateY(0); }
/* Mobile responsive */
@media (max-width: 768px) {
#tabNav {
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
padding: 0.25rem 0;
position: relative;
}
#tabNav::-webkit-scrollbar { display: none; }
#tabNav button { white-space: nowrap; flex-shrink: 0; font-size: 0.8rem; padding: 0.375rem 0.75rem; }
.tab-group-label { font-size: 0.6rem; padding: 0 0.125rem; }
.tab-divider { margin: 0 0.125rem; }
.tab-scroll-hint {
position: absolute; right: 0; top: 0; bottom: 0; width: 2rem;
background: linear-gradient(to right, transparent, #fff);
pointer-events: none;
}
input, select, textarea { font-size: 16px !important; }
}