/* AppFont(Pretendard) + body 타이포그래피 - Server(Blazor)/MAUI(BlazorHybrid) 호스트 공유 단일 소스.
   레이아웃(height/overflow/margin)과 셸 스타일은 호스트마다 다르므로 각 호스트의 app.css 에 둔다.
   여기에는 "Web 과 MAUI 가 반드시 동일해야 하는 폰트 정의"만 모은다.
   - woff2: 각 호스트 wwwroot/fonts/PretendardVariable.woff2 (절대경로 /fonts/ - 문서 base 기준).
     Server 는 자기 wwwroot, MAUI 는 csproj 가 이 파일과 woff2 를 Content Link 로 포함(단일 소스 유지).
   - font-size/line-height 토큰은 FluentUI lib.module.js 가 root 에 주입(base=14px). 주입 전 첫 페인트
     대비 14px/20px 폴백을 둔다(Web 과 동일 크기).
   - font-display 는 block 이다(swap 금지, 2026-09-19). swap 은 woff2(2MB) 가 도착하기 전 대체 글꼴로 먼저
     그렸다가 Pretendard 로 바꿔 그려서 "처음과 잠시 후의 폰트가 다르다" 가 됐다. 특히 탭 패널(fluent-tab-panel)
     안은 FluentUI 가 font-variation-settings "wght" 400 을 상속시키는데, 이 축 설정은 가변 글꼴에만 먹으므로
     대체 글꼴 구간에는 굵게(600) 보이던 그리드 헤더가 Pretendard 가 오는 순간 보통 굵기로 눌렸다.
     MAUI 는 창마다 새 문서라 주문 창을 열 때마다 재현됐다(실측: 내용 표시 723ms / 폰트 준비 1295ms).
     block 은 그 구간에 글자를 잠시 숨겼다가 Pretendard 로 한 번만 그린다(최대 약 3초 뒤엔 대체 글꼴로 폴백).
     숨김 구간 자체는 호스트가 문서 시작 시점에 이 woff2 를 preload 해서 없앤다(App.razor / MAUI index.html) -
     preload 없이는 요청이 "이 글꼴로 그릴 글자가 처음 생긴 순간" 에야 시작돼 매번 늦는다. */
@font-face {
    font-family: 'AppFont';
    font-weight: 100 900;
    font-style: normal;
    font-display: block;
    src: url('/fonts/PretendardVariable.woff2') format('woff2-variations');
}

html, body {
    --body-font: 'AppFont', sans-serif;
    font-family: var(--body-font);
    font-size: var(--type-ramp-base-font-size, 14px);
    line-height: var(--type-ramp-base-line-height, 20px);
    /* 숫자 고정폭 - 가격/수량 컬럼 정렬 */
    font-variant-numeric: tabular-nums;
}
