/* ═══════════════════════════════════════════════════════════
   NK TMS FMS — Global Theme
   폰트: Pretendard (UI) + JetBrains Mono (코드/번호)
   컬러: Monochrome Blue — 눈 피로 최소화
   ═══════════════════════════════════════════════════════════ */

/* ── 폰트 로드 ── */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css');
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&display=swap');

/* ── 색상 변수 ── */
:root {
  --bg:           #f0f4fb;
  --surface:      #ffffff;
  --primary:      #1a2744;
  --primary-mid:  #2e4a8a;
  --accent:       #2563eb;
  --accent-soft:  #e8f0fb;
  --text:         #1e2d4a;
  --text-muted:   #5b7394;
  --border:       #d0daea;
  --shadow:       0 1px 5px rgba(26, 39, 68, .10);
  --radius:       8px;
}

/* ════════════════ 전체 폰트 ════════════════ */
*, *::before, *::after {
  font-family: 'Pretendard', 'Malgun Gothic', 'Apple SD Gothic Neo', sans-serif !important;
}

/* 설비번호·코드·숫자 전용 */
.eqno, .mono, code, pre,
td.eqno, [data-mono] {
  font-family: 'JetBrains Mono', 'Consolas', 'D2Coding', monospace !important;
  letter-spacing: 0.02em;
}

/* ════════════════ 배경 · 텍스트 ════════════════ */
body {
  background: var(--bg) !important;
  color: var(--text) !important;
}

/* ════════════════ 카드 · 패널 ════════════════ */
.tw, .card, .section-card, .section-box,
.leave-summary, .info-box-wrap,
[class$="-panel"], [class$="-card"],
[class*="card-"] {
  background: var(--surface) !important;
  box-shadow: var(--shadow) !important;
  border-radius: var(--radius) !important;
}

/* ════════════════ 테이블 ════════════════ */
table.lt td {
  border-color: var(--border) !important;
  color: var(--text) !important;
}
table.lt tbody tr:nth-child(even) td {
  background: #f5f8ff !important;
}
table.lt tbody tr:hover td {
  background: #ebf1ff !important;
}

/* ════════════════ 버튼 ════════════════ */
.btn.bp, button.bp { background: var(--primary)     !important; color: #fff !important; }
.btn.bi, button.bi { background: var(--accent)      !important; color: #fff !important; }
.btn.bc, button.bc { background: #6b7a94            !important; color: #fff !important; }

.btn.bp:hover { background: var(--primary-mid) !important; }
.btn.bi:hover { background: #1d4ed8           !important; }
.btn.bc:hover { background: #5a6880           !important; }

/* ════════════════ 상태 배지 ════════════════ */
.badge.s-ok,  .s-ok  { background: #dcfce7 !important; color: #166534 !important; }
.badge.s-warn,.s-warn{ background: #fef9c3 !important; color: #92400e !important; }
.badge.s-stop,.s-stop{ background: #fee2e2 !important; color: #991b1b !important; }

/* ════════════════ 입력 요소 ════════════════ */
input, select, textarea {
  font-family: inherit !important;
  border-color: var(--border) !important;
  color: var(--text) !important;
  background: #fafcff !important;
  border-radius: 6px !important;
}
input:focus, select:focus, textarea:focus {
  border-color: var(--accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12) !important;
}

/* ════════════════ 링크 ════════════════ */
a { color: var(--accent) !important; }
a:hover { color: var(--primary-mid) !important; }

/* ════════════════ 보조 텍스트 ════════════════ */
.text-muted, .sub, small { color: var(--text-muted) !important; }

/* ════════════════ 권한 배지 통일 (전체 페이지) ════════════════ */
#uRole, #hdrUserRole {
  display: inline-block !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #fff !important;
  white-space: nowrap !important;
  border: 1px solid rgba(255,255,255,0.35) !important;
  background: rgba(255,255,255,0.18) !important;
}

/* ════════════════ 섹션 헤더 (ev-section-hdr 등) ════════════════ */
.ev-section-hdr {
  background: #eef3fb !important;
  border-left-color: var(--primary) !important;
  color: var(--primary) !important;
}

/* ════════════════ 툴바 ════════════════ */
.toolbar {
  background: var(--surface) !important;
  box-shadow: var(--shadow) !important;
}

/* ════════════════ 탭 ════════════════ */
.ttab { border-color: var(--border) !important; color: var(--text-muted) !important; }
.ttab:hover { border-color: var(--accent) !important; color: var(--accent) !important; }
.ttab.on { background: var(--primary) !important; border-color: var(--primary) !important; color: #fff !important; }

/* ════════════════ 스크롤바 (Chrome/Edge) ════════════════ */
::-webkit-scrollbar { width: 7px; height: 7px; }
::-webkit-scrollbar-track { background: #eef2fb; }
::-webkit-scrollbar-thumb { background: #b0c0dc; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--primary-mid); }

/* ════════════════ 인쇄 시 테마 제외 ════════════════ */
@media print {
  body { background: #fff !important; color: #000 !important; }
}
