/* ── InfraMate base.css — reset 및 요소 기본 규칙 ──────────────────────
   클래스 셀렉터 금지. 요소/전역 기본만 허용. */

* {
  box-sizing: border-box;
}

html,
body,
#root {
  min-height: 100%;
}

body {
  margin: 0;
  /* min-width: 1280px;  — 공개 웹 대상이라 해제 */
  background: var(--page-bg);
  color: var(--text);
}

a {
  color: inherit;
}

button,
input {
  font: inherit;
}

/* 체크박스·라디오 accent 전역 통일 (IM-FE-041 D1).
   착수 전에는 초록(--brand) 4곳 · 파랑(--primary) 5곳 · 하드코딩 2곳 ·
   미정의 --accent 1곳 · 선언 없음(브라우저 기본) 다수가 섞여 있었다.
   사용자 확정값은 파랑이며, 여기 요소 선택자 1건으로 기준을 모은다.
   ⚠️ input[type='range'] 는 포함하지 않는다 — settings.css 의 .settings-range 가
      자기 값을 갖고 있고, 슬라이더는 이 Task 의 판정 대상이 아니다.
   ⚠️ 로그인(login.css .login-v2__remember input)은 인증 전 별도 비주얼이라 제외다.
      같은 명시도(0,1,1)지만 login.css 가 main.tsx 에서 더 뒤에 로드돼 그대로 이긴다. */
input[type='checkbox'],
input[type='radio'] {
  accent-color: var(--primary);
}

h1,
h2,
h3,
h4,
p {
  margin: 0;
}

/* G3 (2026-08-05, 사용자 확정) — 다크 모드 드롭다운 팝업 글씨 결함의 전역 해소.
   저장소 전체에 option 을 잡는 규칙이 0건이라 팝업 리스트가 UA 렌더였다: select 의
   반투명 `--bg-input`(4% 흰색)이 밝은 팝업 베이스 위에 합성돼 흰 배경 + 상속된 `--text`(흰색)
   조합이 됐다. 불투명 토큰으로 배경·글자색을 요소 셀렉터(0,0,1)로 깔면 경쟁 셀렉터가 없어
   전 화면이 한 번에 고쳐지고, 라이트는 토큰 오버라이드가 자동 추종한다.
   select 쪽(24블록, 화면별 클래스)은 여기서 덮을 수 없고 덮지도 않는다. */
option,
optgroup {
  background-color: var(--bg-elevated);
  color: var(--text);
}

