/* ★ 층 순서 선언 — 이 파일이 제일 먼저 실리므로 여기서 정한다 (2026-08-28).
   정본: 웹개발_최우수기술_표준 엑셀 「CSS·레이아웃」 행 32 (★ 최우수).
   뒤에 오는 층이 앞의 층을 이긴다. 화면 전용 <style> 은 층 밖이라 전부를 이긴다.
   ※ `!important` 는 순서가 거꾸로다 — 실측(2026-08-28) 결과 우리 파일의
      !important 는 base.css 4개·화면 2개이고 **이름이 겹치지 않아** 영향이 없다. */
@layer reset, tokens, base, components, utilities;

@layer tokens {
/* ══════════════════════════════════════════════════════════════════════════
   tokens.css v2 — 아젠다 1.0 디자인 토큰 (단일 진리원)
   ──────────────────────────────────────────────────────────────────────────
   교체일 2026-07-25 · 근거: 대시보드디자인/연구자료 01~08
   백업     : 대시보드디자인/_backup_20260725/tokens.css

   확정 결정 (사용자 2026-07-25)
     A. 등락색  = 한국식 (상승 적 / 하락 청)
     B. 기본 테마 = 라이트 (다크는 토글)
     C. 터미널 스타일(순검정+앰버) = 폐기

   ★ 절대 규칙 4개
     1. 크기는 전부 절대값 토큰(rem). `em`/`%` 중첩 금지.
        (교체 전 실측: 한 화면 폰트 크기 22종 — 원인이 em 중첩이었다)
     2. 하드코딩 색 금지. 반드시 이 파일의 변수 참조.
     3. 컨테이너는 3종. 콘텐츠 성격이 폭을 결정한다.
     4. 여백은 "내부 패딩 < 외부 마진".

   ★ §9 레거시 별칭 — 기존 63개 템플릿이 쓰는 옛 변수명을 새 토큰에 연결한다.
     덕분에 템플릿을 한 줄도 고치지 않아도 새 색·새 등락 관례가 즉시 적용된다.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── 1. 폰트 — Pretendard 자체 호스팅 (OFL 1.1 · 상업 판매 안전) ────────────
   가변 1파일(wght 45~930) · 서브셋 시 --layout-features='*' 로 tnum 보존 확인함.
   폴백 첫 항목부터 한글 보유 폰트로 시작 → 한 줄에 서체 2벌이 섞이지 않는다.
   (교체 전: Arial 에 한글 글리프가 0개라 모든 혼합 줄이 Arial+맑은고딕 2벌이었다) */
/* FONT-FACE:BEGIN — scripts/font_subset_build_v01.py 가 만든다. 손으로 고치지 마라. */
/* 자주 쓰는 벌 — 늘 받는다. 창고에서 센 한글(종목명·뉴스 제목) + 기호 전부. */
@font-face {
  src: url("../font/pretendard.core.woff2") format("woff2-variations");
  font-family: "Pretendard Variable";
  font-weight: 45 930;
  font-style: normal;
  font-display: optional;
  unicode-range: U+0020-007E,U+00A0-00FF,U+2010-2027,U+202F-205E,U+20A0-20BF,U+2190-2199,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21BA-21BB,U+21D0,U+21D2,U+21D4,U+21DE-21DF,U+21E4-21E5,U+21E7,U+21EA,U+2202,U+2205-2206,U+220F,U+2211-2212,U+221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+226A-226B,U+22EF,U+2460-2473,U+24B6-24CF,U+24EA-24F4,U+24FF,U+25A0-25A2,U+25AA,U+25B2-25B3,U+25B6-25B7,U+25BA-25BD,U+25C0-25C1,U+25C4-25C7,U+25CA-25CB,U+25CF,U+25E6,U+25EF,U+2600,U+2605-2606,U+263C,U+2661,U+2665,U+266A,U+26A0,U+3000-3003,U+3008-3011,U+3014-301F,U+3131-3164,U+318D,U+AC00-AC02,U+AC04,U+AC07-AC09,U+AC10-AC17,U+AC19-AC1D,U+AC20,U+AC24,U+AC2C-AC2D,U+AC2F-AC31,U+AC38,U+AC40,U+AC48,U+AC4D,U+AC54,U+AC58,U+AC70-AC72,U+AC74,U+AC77-AC78,U+AC80-AC81,U+AC83-AC85,U+AC89-AC8D,U+AC90,U+AC94,U+AC9C,U+AC9F-ACA1,U+ACA8-ACAA,U+ACAC,U+ACB0,U+ACB8-ACB9,U+ACBB-ACBD,U+ACC1,U+ACC3-ACC4,U+ACD7,U+ACE0-ACE1,U+ACE4,U+ACE7-ACE8,U+ACEA,U+ACEC,U+ACEF-ACF1,U+ACF3,U+ACF5-ACF6,U+ACFC-ACFD,U+AD00,U+AD04,U+AD0C,U+AD11,U+AD18-AD19,U+AD1C,U+AD2D,U+AD34,U+AD38,U+AD49,U+AD50,U+AD63,U+AD65,U+AD6C-AD6D,U+AD70,U+AD73-AD76,U+AD7C-AD7D,U+AD7F,U+AD81-AD83,U+AD88,U+AD8C,U+AD90,U+AD9C,U+ADA4,U+ADB7,U+ADC0,U+ADC4,U+ADC8,U+ADD3,U+ADDC-ADDD,U+ADE0,U+ADE4,U+ADF8-ADF9,U+ADFC,U+ADFF-AE01,U+AE08-AE09,U+AE0B,U+AE0D,U+AE30-AE31,U+AE34,U+AE37-AE38,U+AE40-AE41,U+AE43-AE45,U+AE48-AE4A,U+AE4C-AE4E,U+AE50,U+AE54,U+AE5C-AE5D,U+AE5F-AE61,U+AE65,U+AE68,U+AE6C,U+AE70,U+AE78-AE79,U+AE7B-AE7D,U+AE84-AE85,U+AEA0,U+AEBC-AEBE,U+AEC0,U+AEC4,U+AECC-AECD,U+AECF-AED1,U+AED8,U+AEDC,U+AEEB,U+AEF4,U+AEF6,U+AF08,U+AF10,U+AF2C-AF2D,U+AF30,U+AF34,U+AF3C-AF3D,U+AF3F,U+AF41-AF43,U+AF48-AF49,U+AF4C,U+AF5D,U+AF64-AF65,U+AF79,U+AF80,U+AF84,U+AF90,U+AFB3,U+AFB8-AFB9,U+AFBC,U+AFC0,U+AFC7-AFC9,U+AFCB,U+AFCD-AFCE,U+AFD4,U+AFD8,U+AFE8-AFE9,U+AFF0,U+AFF4,U+AFF8,U+B004,U+B00C,U+B010,U+B014,U+B01C-B01D,U+B028,U+B044,U+B048,U+B04A,U+B04C,U+B053-B055,U+B057,U+B059,U+B05D,U+B07C-B07D,U+B080,U+B084,U+B08C-B08D,U+B091,U+B098-B09A,U+B09C,U+B09F-B0A1,U+B0A8-B0A9,U+B0AB-B0AF,U+B0B1,U+B0B3-B0B5,U+B0B8,U+B0BC,U+B0C4-B0C5,U+B0C7-B0C9,U+B0D0-B0D1,U+B0D4,U+B0D8,U+B0E0,U+B0E5,U+B100,U+B108-B109,U+B10B-B10C,U+B110,U+B113,U+B118-B119,U+B11B-B11D,U+B123-B125,U+B128,U+B12C,U+B134-B135,U+B137-B139,U+B13E,U+B140-B141,U+B144,U+B148,U+B150,U+B154-B155,U+B158,U+B15C,U+B178-B179,U+B17C,U+B180,U+B182,U+B188-B189,U+B18D,U+B192-B194,U+B1A8,U+B1CC,U+B1DF,U+B1E8,U+B1F0,U+B1FD,U+B202,U+B204-B205,U+B208,U+B20C,U+B214-B215,U+B217,U+B219,U+B21C,U+B220,U+B234,U+B258,U+B25C,U+B260,U+B274,U+B284,U+B289,U+B290-B291,U+B294,U+B298-B299,U+B2A0,U+B2A5-B2A6,U+B2AA,U+B2AC,U+B2C8-B2C9,U+B2CC,U+B2D0,U+B2D8-B2D9,U+B2DB,U+B2DD,U+B2E2,U+B2E4-B2E6,U+B2E8,U+B2EB-B2EE,U+B2F3-B2F5,U+B2F7,U+B2F9,U+B2FB,U+B2FD,U+B2FF-B301,U+B304,U+B308,U+B310-B311,U+B313-B316,U+B31C,U+B324,U+B331,U+B354-B356,U+B358,U+B35C,U+B35F,U+B364-B365,U+B367,U+B369,U+B36B,U+B36E,U+B370-B371,U+B374,U+B378,U+B380-B381,U+B383,U+B385,U+B38C,U+B390,U+B3A0,U+B3AC,U+B3C4-B3C5,U+B3C8,U+B3CB-B3CC,U+B3D0,U+B3D4-B3D5,U+B3D7,U+B3D9,U+B3DB,U+B3DD,U+B3E0,U+B3E4,U+B3FC,U+B410,U+B418,U+B41C,U+B420,U+B428-B429,U+B42B-B42C,U+B434,U+B450-B451,U+B454,U+B458,U+B460-B461,U+B463,U+B465,U+B469,U+B46C,U+B480,U+B4A4,U+B4B7,U+B4B9,U+B4C0,U+B4C4,U+B4C8,U+B4D0-B4D1,U+B4DC-B4DD,U+B4E0,U+B4E3-B4E4,U+B4E6,U+B4EC-B4ED,U+B4EF,U+B4F1,U+B4F8,U+B50B,U+B514-B515,U+B518,U+B51B-B51C,U+B524-B525,U+B527-B52A,U+B52E,U+B530-B531,U+B534,U+B538,U+B540-B541,U+B544-B545,U+B54B-B54C,U+B550,U+B554,U+B55C,U+B55F-B561,U+B57D,U+B584,U+B5A0-B5A1,U+B5A4,U+B5A8,U+B5AB,U+B5B1,U+B5B3-B5B5,U+B5BB-B5BC,U+B5C0,U+B5C4,U+B5CC,U+B5CF-B5D1,U+B5F4,U+B610-B611,U+B614,U+B618,U+B620,U+B623,U+B625,U+B62C-B62D,U+B664,U+B69C-B69D,U+B6A4,U+B6AB,U+B6B1,U+B6CC,U+B6F0,U+B6F4,U+B6F8,U+B700-B701,U+B728-B729,U+B72C,U+B72F-B730,U+B737-B739,U+B73B,U+B744,U+B748,U+B74C,U+B754,U+B760-B761,U+B764,U+B775,U+B77C-B77D,U+B780,U+B784,U+B78C-B78D,U+B78F-B791,U+B796-B799,U+B79C,U+B7A0,U+B7A8-B7A9,U+B7AB-B7AD,U+B7B2,U+B7B4-B7B5,U+B7BC,U+B7C9,U+B7EC-B7ED,U+B7F0,U+B7F4,U+B7FC-B7FD,U+B7FF-B801,U+B807-B809,U+B80C,U+B810,U+B818-B819,U+B81B-B81D,U+B824-B825,U+B828,U+B82C,U+B834-B835,U+B837-B839,U+B840,U+B844,U+B85C-B85D,U+B860,U+B864,U+B86C-B86D,U+B86F,U+B871,U+B879,U+B8B0,U+B8C0,U+B8CC,U+B8D4,U+B8DF,U+B8E1,U+B8E8-B8E9,U+B8EC,U+B8F0,U+B8F8-B8F9,U+B8FB,U+B8FD,U+B904,U+B918,U+B920,U+B93C-B93D,U+B940,U+B944,U+B958-B959,U+B95C,U+B960,U+B968-B969,U+B96D,U+B974-B975,U+B978,U+B97C,U+B984-B985,U+B987,U+B989,U+B98E,U+B9AC-B9AD,U+B9B0,U+B9B4,U+B9BC-B9BD,U+B9BF,U+B9C1,U+B9C8-B9C9,U+B9CC,U+B9CE-B9D1,U+B9D8-B9D9,U+B9DB,U+B9DD-B9DF,U+B9E1,U+B9E3-B9E5,U+B9E8,U+B9EC,U+B9F4-B9F5,U+B9F7-B9FB,U+BA00,U+BA04,U+BA06,U+BA15,U+BA38-BA39,U+BA3C,U+BA40,U+BA48,U+BA4B,U+BA4D-BA4E,U+BA53-BA55,U+BA58,U+BA5C,U+BA64-BA65,U+BA67-BA6A,U+BA70-BA71,U+BA74,U+BA78,U+BA84-BA87,U+BAA8-BAA9,U+BAAB-BAAC,U+BAB0,U+BAB8-BAB9,U+BABB,U+BABD,U+BAFC,U+BB00,U+BB04,U+BB18,U+BB20,U+BB2B,U+BB34-BB36,U+BB38,U+BB3B-BB3E,U+BB44-BB45,U+BB47,U+BB49,U+BB4D,U+BB4F-BB50,U+BB54,U+BB58,U+BB61,U+BB63,U+BB88,U+BB8C,U+BB90,U+BBA4,U+BBA8,U+BBAC,U+BBB4,U+BBB7,U+BBC0,U+BBC4,U+BBC8,U+BBD0,U+BBD3,U+BBF8-BBF9,U+BBFC,U+BBFF-BC00,U+BC08-BC09,U+BC0B-BC0D,U+BC0F,U+BC11,U+BC14-BC16,U+BC18,U+BC1B-BC1D,U+BC1F,U+BC21,U+BC24-BC27,U+BC29,U+BC2D,U+BC30-BC31,U+BC34,U+BC38,U+BC40-BC41,U+BC43,U+BC45,U+BC49,U+BC4D,U+BC50,U+BC61,U+BC84-BC85,U+BC88,U+BC8B-BC8C,U+BC94-BC95,U+BC97,U+BC99-BC9A,U+BCA0-BCA1,U+BCA4,U+BCA7-BCA8,U+BCB0,U+BCB3-BCB5,U+BCB9,U+BCBC-BCBD,U+BCC0,U+BCC4,U+BCCC-BCCD,U+BCCF-BCD1,U+BCD3-BCD5,U+BCDC,U+BCF4-BCF6,U+BCF8,U+BCFB-BCFC,U+BD04-BD05,U+BD07,U+BD09,U+BD10,U+BD24,U+BD2C,U+BD30,U+BD40,U+BD48,U+BD4C,U+BD50,U+BD59,U+BD5C,U+BD64,U+BD80-BD82,U+BD84,U+BD87-BD89,U+BD90-BD91,U+BD93,U+BD95,U+BD99,U+BDB0,U+BDB4,U+BDD4,U+BDD8,U+BDDC,U+BDF0,U+BDF8,U+BE00,U+BE0C-BE0D,U+BE10,U+BE14,U+BE21,U+BE25,U+BE44-BE45,U+BE48,U+BE4C,U+BE54-BE55,U+BE57,U+BE59-BE5B,U+BE60-BE61,U+BE64,U+BE68,U+BE70,U+BE73-BE75,U+BE7C-BE7D,U+BE80,U+BE84,U+BE8C-BE8D,U+BE8F-BE91,U+BE98,U+BEA8,U+BEB4-BEB5,U+BEC9,U+BED0-BED1,U+BED4,U+BED7-BED8,U+BEE3-BEE5,U+BEEC,U+BEF0,U+BF08-BF09,U+BF18,U+BF1B,U+BF40-BF41,U+BF44,U+BF48,U+BF50-BF51,U+BF55,U+BF71,U+BFB0,U+BFC5,U+BFCC-BFCD,U+BFD0,U+BFD4,U+BFDC,U+BFE1,U+C03C,U+C058,U+C05C,U+C060,U+C068-C069,U+C090-C091,U+C094,U+C098,U+C0A0,U+C0A5,U+C0AC-C0AD,U+C0AF-C0B0,U+C0B3-C0B7,U+C0BA,U+C0BC-C0BD,U+C0BF-C0C2,U+C0C5,U+C0C8-C0C9,U+C0CC,U+C0D0,U+C0D8,U+C0DB-C0DD,U+C0E1,U+C0E4-C0E5,U+C0E8,U+C0EC,U+C0F4-C0F5,U+C0F7,U+C0F9,U+C100,U+C110,U+C11C-C11E,U+C120,U+C123-C127,U+C12B-C12D,U+C12F-C131,U+C136,U+C138-C139,U+C13C,U+C140,U+C148-C149,U+C14B-C14D,U+C154-C155,U+C158,U+C15C,U+C164-C165,U+C167-C169,U+C170,U+C174,U+C178,U+C180,U+C185,U+C18C-C18E,U+C190,U+C194,U+C19C-C19D,U+C19F,U+C1A1,U+C1A5,U+C1A7-C1A8,U+C1BD,U+C1C4,U+C1E0,U+C1E8,U+C1F3,U+C1FC,U+C200,U+C204,U+C20C-C20D,U+C20F,U+C211,U+C218-C219,U+C21C,U+C21F-C220,U+C228,U+C22B,U+C22D,U+C22F,U+C231-C232,U+C234,U+C248,U+C250-C251,U+C254,U+C258,U+C265,U+C26C-C26D,U+C270,U+C274,U+C27C-C27D,U+C27F,U+C288-C289,U+C28C,U+C290,U+C298,U+C29B,U+C29D,U+C2A4-C2A5,U+C2A8,U+C2AC-C2AD,U+C2B4-C2B5,U+C2B7,U+C2B9,U+C2DC-C2DD,U+C2E0,U+C2E3-C2E4,U+C2EB-C2ED,U+C2EF,U+C2F1,U+C2F6,U+C2F8-C2FA,U+C2FC,U+C300,U+C302,U+C308-C309,U+C30C-C30D,U+C313-C315,U+C324,U+C329,U+C330,U+C34A,U+C361,U+C368-C36A,U+C36C,U+C370,U+C378-C379,U+C37B-C37D,U+C384,U+C388,U+C38C,U+C3BC,U+C3C0,U+C3D8-C3D9,U+C3DC,U+C3DF-C3E0,U+C3E8-C3E9,U+C3ED,U+C3F4,U+C408,U+C410,U+C42C,U+C448,U+C464-C465,U+C468,U+C46C,U+C479,U+C480,U+C494,U+C4B8,U+C4C8,U+C4F0-C4F1,U+C4F4,U+C4F8,U+C4FF-C501,U+C50C,U+C510,U+C528-C529,U+C52C,U+C530,U+C538-C539,U+C53B,U+C53D,U+C544-C545,U+C548-C54A,U+C54C,U+C54E,U+C553-C555,U+C557-C55A,U+C55E,U+C560-C561,U+C564,U+C568,U+C570-C571,U+C573-C575,U+C57C-C57D,U+C580,U+C584,U+C587,U+C58C-C58D,U+C58F,U+C591,U+C595,U+C597-C598,U+C59C,U+C5B4-C5B5,U+C5B8-C5B9,U+C5BB-C5BD,U+C5C4-C5CA,U+C5CC,U+C5CE,U+C5D0-C5D1,U+C5D4,U+C5D8,U+C5E0-C5E1,U+C5E3,U+C5E5,U+C5EC-C5EE,U+C5F0,U+C5F4,U+C5FC-C601,U+C605-C608,U+C60C,U+C610,U+C619,U+C61B,U+C624-C625,U+C628,U+C62C-C62E,U+C633-C635,U+C637,U+C639,U+C63B,U+C640-C641,U+C644,U+C648,U+C650-C651,U+C653-C655,U+C65C-C65D,U+C660,U+C678-C679,U+C67C,U+C694-C695,U+C698,U+C69C,U+C6A4,U+C6A7,U+C6A9,U+C6B0-C6B1,U+C6B4,U+C6B8,U+C6C0-C6C1,U+C6C3,U+C6C5,U+C6C9,U+C6CC-C6CD,U+C6D0,U+C6D3-C6D4,U+C6DB-C6DD,U+C6E0-C6E1,U+C6E5,U+C6E8-C6E9,U+C6EC,U+C6F0,U+C6F8-C6F9,U+C6FB,U+C6FD,U+C704-C705,U+C708,U+C70C,U+C714-C715,U+C717,U+C719,U+C71F-C721,U+C724,U+C728,U+C730,U+C733,U+C735,U+C737,U+C73C-C73D,U+C740,U+C744,U+C74A,U+C74C-C74F,U+C751,U+C753,U+C755,U+C758,U+C75C,U+C76B,U+C774-C775,U+C778,U+C77A,U+C77C-C77D,U+C783-C78A,U+C78C,U+C78E,U+C790-C791,U+C794,U+C796,U+C798,U+C7A0-C7A6,U+C7AC-C7AD,U+C7B0,U+C7B4,U+C7BC-C7BD,U+C7BF-C7C1,U+C7C8-C7C9,U+C7CC,U+C7CE,U+C7DD,U+C7E4,U+C800-C801,U+C804,U+C808,U+C80A-C80B,U+C810-C811,U+C813,U+C815-C816,U+C81C-C81D,U+C820,U+C824,U+C82C-C82D,U+C82F,U+C838,U+C83C,U+C848,U+C84C-C84D,U+C870-C871,U+C874,U+C878,U+C880-C881,U+C885,U+C887,U+C88B-C88C,U+C894,U+C8A1,U+C8A8,U+C8C4,U+C8C8,U+C8CC,U+C8D7-C8D8,U+C8E0,U+C8E4,U+C8F5,U+C8FC-C8FD,U+C900,U+C904,U+C90C-C90D,U+C90F,U+C911,U+C918,U+C92C,U+C934,U+C950,U+C954,U+C958,U+C96C,U+C970,U+C974,U+C988-C989,U+C98C,U+C990,U+C998-C999,U+C99B,U+C99D,U+C9C0-C9C1,U+C9C4,U+C9C8,U+C9CA-C9CB,U+C9D0-C9D1,U+C9D3,U+C9D5-C9D6,U+C9D9-C9DA,U+C9DC-C9DD,U+C9E0,U+C9E2,U+C9E4,U+C9E6-C9E7,U+C9EC-C9ED,U+C9F0-C9F1,U+C9F8-C9F9,U+C9FC,U+CA08,U+CA0B-CA0D,U+CA14,U+CA30,U+CA4C-CA4D,U+CA50,U+CA54,U+CA5C-CA5D,U+CA61,U+CA68,U+CA70,U+CA84,U+CA98,U+CABC-CABD,U+CAC0,U+CAC4,U+CACC,U+CAD1-CAD3,U+CAD8-CAD9,U+CB10,U+CB48-CB49,U+CB4C,U+CB50,U+CB58-CB59,U+CB5D,U+CB64,U+CBB8,U+CBD4,U+CBDC,U+CBE4,U+CC0C-CC0D,U+CC10,U+CC14,U+CC1C-CC1D,U+CC1F,U+CC21-CC22,U+CC28-CC29,U+CC2C,U+CC2E,U+CC30,U+CC38-CC39,U+CC3B-CC3F,U+CC42,U+CC44-CC45,U+CC48,U+CC4C,U+CC54-CC55,U+CC57-CC59,U+CC60,U+CC64,U+CC66,U+CC98-CC99,U+CC9C,U+CCA0,U+CCA8-CCA9,U+CCAB,U+CCAD,U+CCB4-CCB5,U+CCB8,U+CCBC,U+CCC4-CCC5,U+CCC7,U+CCC9,U+CCD0-CCD1,U+CCD4,U+CCD8,U+CCE4-CCE5,U+CCEC,U+CD08-CD09,U+CD0C,U+CD10,U+CD18-CD19,U+CD1B,U+CD1D,U+CD24,U+CD28,U+CD2C,U+CD35,U+CD39,U+CD3F,U+CD5C,U+CD78,U+CD88,U+CD94-CD95,U+CD98,U+CD9C,U+CDA4-CDA5,U+CDA7,U+CDA9,U+CDB0,U+CDC4,U+CDCC-CDCD,U+CDE8,U+CDEC,U+CE04,U+CE0C,U+CE20-CE21,U+CE24,U+CE28,U+CE30,U+CE35,U+CE58-CE59,U+CE5C,U+CE60-CE61,U+CE68-CE69,U+CE6B,U+CE6D,U+CE70,U+CE74-CE75,U+CE78,U+CE7C,U+CE84-CE85,U+CE87,U+CE89,U+CE90-CE91,U+CE94,U+CE98,U+CEA0-CEA1,U+CEA3-CEA5,U+CEAA,U+CEAC,U+CEB0,U+CEE4-CEE5,U+CEE8,U+CEEB-CEEC,U+CEF4-CEF5,U+CEF7-CEF9,U+CEFD,U+CF00,U+CF04,U+CF08,U+CF10-CF11,U+CF13,U+CF15,U+CF1A,U+CF1C-CF1D,U+CF20,U+CF24,U+CF2C,U+CF30,U+CF54-CF55,U+CF58,U+CF5C,U+CF64-CF65,U+CF67,U+CF69,U+CF6C,U+CF70-CF71,U+CF74,U+CF78,U+CF83,U+CF85,U+CF8C,U+CFA8,U+CFB0,U+CFC4,U+CFD9,U+CFE0-CFE1,U+CFE4,U+CFE8,U+CFF0-CFF1,U+CFF5,U+CFFC,U+D000,U+D004,U+D00C,U+D018,U+D01C,U+D034-D035,U+D038,U+D03C,U+D045,U+D050,U+D054,U+D058,U+D060,U+D065,U+D06C-D06D,U+D070,U+D074,U+D07C-D07D,U+D081,U+D088,U+D0A4-D0A5,U+D0A8,U+D0AC,U+D0B4-D0B5,U+D0B7,U+D0B9,U+D0C0-D0C1,U+D0C4,U+D0C8-D0C9,U+D0D0-D0D1,U+D0D3-D0D5,U+D0DC-D0DD,U+D0E0,U+D0E4,U+D0EC-D0ED,U+D0EF-D0F1,U+D0F8-D0F9,U+D114,U+D130-D131,U+D134,U+D138,U+D140-D141,U+D143-D145,U+D14C-D14D,U+D150,U+D154,U+D15C-D15D,U+D15F,U+D161,U+D168,U+D17C,U+D188,U+D1A0-D1A1,U+D1A4,U+D1A8,U+D1B0-D1B1,U+D1B3,U+D1B5,U+D1BA,U+D1BC,U+D1C0,U+D1F4,U+D1FC,U+D207,U+D225,U+D22C-D22D,U+D230,U+D234,U+D23C-D23D,U+D23F,U+D241,U+D248,U+D25C,U+D264,U+D280,U+D284,U+D288,U+D295,U+D29C,U+D2A0,U+D2A4,U+D2AC,U+D2B4,U+D2B8-D2B9,U+D2BC,U+D2BF-D2C0,U+D2C8,U+D2CB,U+D2D1,U+D2D4,U+D2D8,U+D2F0-D2F1,U+D2F4,U+D2F8,U+D300-D301,U+D303,U+D305,U+D30C-D30E,U+D310,U+D314,U+D31C-D31D,U+D31F-D321,U+D325,U+D328-D329,U+D32C,U+D330,U+D338-D339,U+D33B-D33D,U+D37C-D37D,U+D380,U+D384,U+D38C-D38D,U+D38F-D391,U+D398-D399,U+D39C,U+D3A0,U+D3A8-D3A9,U+D3AB,U+D3AD,U+D3B4,U+D3B8,U+D3BC,U+D3C4-D3C5,U+D3C8-D3C9,U+D3D0,U+D3EC-D3ED,U+D3F0,U+D3F4,U+D3FC,U+D3FF,U+D401,U+D403,U+D408,U+D41D,U+D440,U+D444,U+D45C-D45D,U+D460,U+D46F,U+D478-D479,U+D47C,U+D480,U+D482,U+D488-D489,U+D48B,U+D48D,U+D4CC,U+D4E8,U+D4F0,U+D4F8,U+D504,U+D508,U+D50C,U+D514-D515,U+D519,U+D51E,U+D53C-D53D,U+D540,U+D544,U+D54C-D54D,U+D54F,U+D551,U+D558-D559,U+D55C,U+D560,U+D565,U+D568-D569,U+D56B,U+D56D,U+D571,U+D574-D575,U+D578,U+D57C,U+D584-D585,U+D587-D589,U+D590-D591,U+D594,U+D598,U+D5A0,U+D5A4-D5A5,U+D5C0,U+D5C8-D5C9,U+D5CC,U+D5D0,U+D5D8-D5D9,U+D5DB,U+D5DD,U+D5E4-D5E5,U+D5E8,U+D5EC,U+D5F4-D5F5,U+D5F7-D5F9,U+D600-D601,U+D604,U+D608,U+D610-D611,U+D613-D615,U+D61C,U+D624,U+D638-D639,U+D63C,U+D640,U+D648-D649,U+D64B,U+D64D,U+D651-D652,U+D654-D655,U+D658,U+D65C,U+D667,U+D669,U+D671,U+D683,U+D68C-D68D,U+D690,U+D69F,U+D6A1,U+D6A8,U+D6B9,U+D6BB,U+D6C4-D6C5,U+D6C8,U+D6CC,U+D6D1,U+D6D4-D6D5,U+D6D7,U+D6D9,U+D6E0,U+D6E4,U+D6E8,U+D6FC,U+D700,U+D711,U+D718-D719,U+D71C,U+D720,U+D728-D729,U+D72B,U+D734,U+D73C,U+D744,U+D749,U+D750-D751,U+D754,U+D758-D759,U+D760-D761,U+D765,U+D769,U+D76C-D76D,U+D770,U+D788-D789,U+D78C,U+D790,U+D798-D799,U+D79B,U+D79D,U+D7A3;
}
/* 드물 때만 — 위에 없는 한글이 화면에 하나라도 있을 때만 브라우저가 받는다. */
@font-face {
  src: url("../font/pretendard.rest.woff2") format("woff2-variations");
  font-family: "Pretendard Variable";
  font-weight: 45 930;
  font-style: normal;
  font-display: optional;
  unicode-range: U+AC03,U+AC05-AC06,U+AC0A-AC0F,U+AC18,U+AC1E-AC1F,U+AC21-AC23,U+AC25-AC2B,U+AC2E,U+AC32-AC37,U+AC39-AC3F,U+AC41-AC47,U+AC49-AC4C,U+AC4E-AC53,U+AC55-AC57,U+AC59-AC6F,U+AC73,U+AC75-AC76,U+AC79-AC7F,U+AC82,U+AC86-AC88,U+AC8E-AC8F,U+AC91-AC93,U+AC95-AC9B,U+AC9D-AC9E,U+ACA2-ACA7,U+ACAB,U+ACAD-ACAF,U+ACB1-ACB7,U+ACBA,U+ACBE-ACC0,U+ACC2,U+ACC5-ACD6,U+ACD8-ACDF,U+ACE2-ACE3,U+ACE5-ACE6,U+ACE9,U+ACEB,U+ACED-ACEE,U+ACF2,U+ACF4,U+ACF7-ACFB,U+ACFE-ACFF,U+AD01-AD03,U+AD05-AD0B,U+AD0D-AD10,U+AD12-AD17,U+AD1A-AD1B,U+AD1D-AD2C,U+AD2E-AD33,U+AD35-AD37,U+AD39-AD48,U+AD4A-AD4F,U+AD51-AD62,U+AD64,U+AD66-AD6B,U+AD6E-AD6F,U+AD71-AD72,U+AD77-AD7B,U+AD7E,U+AD80,U+AD84-AD87,U+AD89-AD8B,U+AD8D-AD8F,U+AD91-AD9B,U+AD9D-ADA3,U+ADA5-ADB6,U+ADB8-ADBF,U+ADC1-ADC3,U+ADC5-ADC7,U+ADC9-ADD2,U+ADD4-ADDB,U+ADDE-ADDF,U+ADE1-ADE3,U+ADE5-ADF7,U+ADFA-ADFB,U+ADFD-ADFE,U+AE02-AE07,U+AE0A,U+AE0C,U+AE0E-AE2F,U+AE32-AE33,U+AE35-AE36,U+AE39-AE3F,U+AE42,U+AE46-AE47,U+AE4B,U+AE4F,U+AE51-AE53,U+AE55-AE5B,U+AE5E,U+AE62-AE64,U+AE66-AE67,U+AE69-AE6B,U+AE6D-AE6F,U+AE71-AE77,U+AE7A,U+AE7E-AE83,U+AE86-AE9F,U+AEA1-AEBB,U+AEBF,U+AEC1-AEC3,U+AEC5-AECB,U+AECE,U+AED2-AED7,U+AED9-AEDB,U+AEDD-AEEA,U+AEEC-AEF3,U+AEF5,U+AEF7-AF07,U+AF09-AF0F,U+AF11-AF2B,U+AF2E-AF2F,U+AF31-AF33,U+AF35-AF3B,U+AF3E,U+AF40,U+AF44-AF47,U+AF4A-AF4B,U+AF4D-AF5C,U+AF5E-AF63,U+AF66-AF78,U+AF7A-AF7F,U+AF81-AF83,U+AF85-AF8F,U+AF91-AFB2,U+AFB4-AFB7,U+AFBA-AFBB,U+AFBD-AFBF,U+AFC1-AFC6,U+AFCA,U+AFCC,U+AFCF-AFD3,U+AFD5-AFD7,U+AFD9-AFE7,U+AFEA-AFEF,U+AFF1-AFF3,U+AFF5-AFF7,U+AFF9-B003,U+B005-B00B,U+B00D-B00F,U+B011-B013,U+B015-B01B,U+B01E-B027,U+B029-B043,U+B045-B047,U+B049,U+B04B,U+B04D-B052,U+B056,U+B058,U+B05A-B05C,U+B05E-B07B,U+B07E-B07F,U+B081-B083,U+B085-B08B,U+B08E-B090,U+B092-B097,U+B09B,U+B09D-B09E,U+B0A2-B0A7,U+B0AA,U+B0B0,U+B0B2,U+B0B6-B0B7,U+B0B9-B0BB,U+B0BD-B0C3,U+B0C6,U+B0CA-B0CF,U+B0D2-B0D3,U+B0D5-B0D7,U+B0D9-B0DF,U+B0E1-B0E4,U+B0E6-B0FF,U+B101-B107,U+B10A,U+B10D-B10F,U+B111-B112,U+B114-B117,U+B11A,U+B11E-B122,U+B126-B127,U+B129-B12B,U+B12D-B133,U+B136,U+B13A-B13D,U+B13F,U+B142-B143,U+B145-B147,U+B149-B14F,U+B151-B153,U+B156-B157,U+B159-B15B,U+B15D-B177,U+B17A-B17B,U+B17D-B17F,U+B181,U+B183-B187,U+B18A-B18C,U+B18E-B191,U+B195-B1A7,U+B1A9-B1CB,U+B1CD-B1DE,U+B1E0-B1E7,U+B1E9-B1EF,U+B1F1-B1FC,U+B1FE-B201,U+B203,U+B206-B207,U+B209-B20B,U+B20D-B213,U+B216,U+B218,U+B21A-B21B,U+B21D-B21F,U+B221-B233,U+B235-B257,U+B259-B25B,U+B25D-B25F,U+B261-B273,U+B275-B283,U+B285-B288,U+B28A-B28F,U+B292-B293,U+B295-B297,U+B29A-B29F,U+B2A1-B2A4,U+B2A7-B2A9,U+B2AB,U+B2AD-B2C7,U+B2CA-B2CB,U+B2CD-B2CF,U+B2D1-B2D7,U+B2DA,U+B2DC,U+B2DE-B2E1,U+B2E3,U+B2E7,U+B2E9-B2EA,U+B2EF-B2F2,U+B2F6,U+B2F8,U+B2FA,U+B2FC,U+B2FE,U+B302-B303,U+B305-B307,U+B309-B30F,U+B312,U+B317-B31B,U+B31D-B323,U+B325-B330,U+B332-B353,U+B357,U+B359-B35B,U+B35D-B35E,U+B360-B363,U+B366,U+B368,U+B36A,U+B36C-B36D,U+B36F,U+B372-B373,U+B375-B377,U+B379-B37F,U+B382,U+B384,U+B386-B38B,U+B38D-B38F,U+B391-B39F,U+B3A1-B3AB,U+B3AD-B3C3,U+B3C6-B3C7,U+B3C9-B3CA,U+B3CD-B3CF,U+B3D1-B3D3,U+B3D6,U+B3D8,U+B3DA,U+B3DC,U+B3DE-B3DF,U+B3E1-B3E3,U+B3E5-B3FB,U+B3FD-B40F,U+B411-B417,U+B419-B41B,U+B41D-B41F,U+B421-B427,U+B42A,U+B42D-B433,U+B435-B44F,U+B452-B453,U+B455-B457,U+B459-B45F,U+B462,U+B464,U+B466-B468,U+B46A-B46B,U+B46D-B47F,U+B481-B4A3,U+B4A5-B4B6,U+B4B8,U+B4BA-B4BF,U+B4C1-B4C3,U+B4C5-B4C7,U+B4C9-B4CF,U+B4D2-B4DB,U+B4DE-B4DF,U+B4E1-B4E2,U+B4E5,U+B4E7-B4EB,U+B4EE,U+B4F0,U+B4F2-B4F7,U+B4F9-B50A,U+B50C-B513,U+B516-B517,U+B519-B51A,U+B51D-B523,U+B526,U+B52B-B52D,U+B52F,U+B532-B533,U+B535-B537,U+B539-B53F,U+B542-B543,U+B546-B54A,U+B54D-B54F,U+B551-B553,U+B555-B55B,U+B55D-B55E,U+B562-B57C,U+B57E-B583,U+B585-B59F,U+B5A2-B5A3,U+B5A5-B5A7,U+B5A9-B5AA,U+B5AC-B5B0,U+B5B2,U+B5B6-B5BA,U+B5BD-B5BF,U+B5C1-B5C3,U+B5C5-B5CB,U+B5CD-B5CE,U+B5D2-B5F3,U+B5F5-B60F,U+B612-B613,U+B615-B617,U+B619-B61F,U+B621-B622,U+B624,U+B626-B62B,U+B62E-B663,U+B665-B69B,U+B69E-B6A3,U+B6A5-B6AA,U+B6AC-B6B0,U+B6B2-B6CB,U+B6CD-B6EF,U+B6F1-B6F3,U+B6F5-B6F7,U+B6F9-B6FF,U+B702-B727,U+B72A-B72B,U+B72D-B72E,U+B731-B736,U+B73A,U+B73C-B743,U+B745-B747,U+B749-B74B,U+B74D-B753,U+B755-B75F,U+B762-B763,U+B765-B774,U+B776-B77B,U+B77E-B77F,U+B781-B783,U+B785-B78B,U+B78E,U+B792-B795,U+B79A-B79B,U+B79D-B79F,U+B7A1-B7A7,U+B7AA,U+B7AE-B7B1,U+B7B3,U+B7B6-B7BB,U+B7BD-B7C8,U+B7CA-B7EB,U+B7EE-B7EF,U+B7F1-B7F3,U+B7F5-B7FB,U+B7FE,U+B802-B806,U+B80A-B80B,U+B80D-B80F,U+B811-B817,U+B81A,U+B81E-B823,U+B826-B827,U+B829-B82B,U+B82D-B833,U+B836,U+B83A-B83F,U+B841-B843,U+B845-B85B,U+B85E-B85F,U+B861-B863,U+B865-B86B,U+B86E,U+B870,U+B872-B878,U+B87A-B8AF,U+B8B1-B8BF,U+B8C1-B8CB,U+B8CD-B8D3,U+B8D5-B8DE,U+B8E0,U+B8E2-B8E7,U+B8EA-B8EB,U+B8ED-B8EF,U+B8F1-B8F7,U+B8FA,U+B8FC,U+B8FE-B903,U+B905-B917,U+B919-B91F,U+B921-B93B,U+B93E-B93F,U+B941-B943,U+B945-B957,U+B95A-B95B,U+B95D-B95F,U+B961-B967,U+B96A-B96C,U+B96E-B973,U+B976-B977,U+B979-B97B,U+B97D-B983,U+B986,U+B988,U+B98A-B98D,U+B98F-B9AB,U+B9AE-B9AF,U+B9B1-B9B3,U+B9B5-B9BB,U+B9BE,U+B9C0,U+B9C2-B9C7,U+B9CA-B9CB,U+B9CD,U+B9D2-B9D7,U+B9DA,U+B9DC,U+B9E0,U+B9E2,U+B9E6-B9E7,U+B9E9-B9EB,U+B9ED-B9F3,U+B9F6,U+B9FC-B9FF,U+BA01-BA03,U+BA05,U+BA07-BA14,U+BA16-BA37,U+BA3A-BA3B,U+BA3D-BA3F,U+BA41-BA47,U+BA49-BA4A,U+BA4C,U+BA4F-BA52,U+BA56-BA57,U+BA59-BA5B,U+BA5D-BA63,U+BA66,U+BA6B-BA6F,U+BA72-BA73,U+BA75-BA77,U+BA79-BA83,U+BA88-BAA7,U+BAAA,U+BAAD-BAAF,U+BAB1-BAB7,U+BABA,U+BABC,U+BABE-BAFB,U+BAFD-BAFF,U+BB01-BB03,U+BB05-BB17,U+BB19-BB1F,U+BB21-BB2A,U+BB2C-BB33,U+BB37,U+BB39-BB3A,U+BB3F-BB43,U+BB46,U+BB48,U+BB4A-BB4C,U+BB4E,U+BB51-BB53,U+BB55-BB57,U+BB59-BB60,U+BB62,U+BB64-BB87,U+BB89-BB8B,U+BB8D-BB8F,U+BB91-BBA3,U+BBA5-BBA7,U+BBA9-BBAB,U+BBAD-BBB3,U+BBB5-BBB6,U+BBB8-BBBF,U+BBC1-BBC3,U+BBC5-BBC7,U+BBC9-BBCF,U+BBD1-BBD2,U+BBD4-BBF7,U+BBFA-BBFB,U+BBFD-BBFE,U+BC01-BC07,U+BC0A,U+BC0E,U+BC10,U+BC12-BC13,U+BC17,U+BC19-BC1A,U+BC1E,U+BC20,U+BC22-BC23,U+BC28,U+BC2A-BC2C,U+BC2E-BC2F,U+BC32-BC33,U+BC35-BC37,U+BC39-BC3F,U+BC42,U+BC44,U+BC46-BC48,U+BC4A-BC4C,U+BC4E-BC4F,U+BC51-BC60,U+BC62-BC83,U+BC86-BC87,U+BC89-BC8A,U+BC8D-BC93,U+BC96,U+BC98,U+BC9B-BC9F,U+BCA2-BCA3,U+BCA5-BCA6,U+BCA9-BCAF,U+BCB1-BCB2,U+BCB6-BCB8,U+BCBA-BCBB,U+BCBE-BCBF,U+BCC1-BCC3,U+BCC5-BCCB,U+BCCE,U+BCD2,U+BCD6-BCDB,U+BCDD-BCF3,U+BCF7,U+BCF9-BCFA,U+BCFD-BD03,U+BD06,U+BD08,U+BD0A-BD0F,U+BD11-BD23,U+BD25-BD2B,U+BD2D-BD2F,U+BD31-BD3F,U+BD41-BD47,U+BD49-BD4B,U+BD4D-BD4F,U+BD51-BD58,U+BD5A-BD5B,U+BD5D-BD63,U+BD65-BD7F,U+BD83,U+BD85-BD86,U+BD8A-BD8F,U+BD92,U+BD94,U+BD96-BD98,U+BD9A-BDAF,U+BDB1-BDB3,U+BDB5-BDD3,U+BDD5-BDD7,U+BDD9-BDDB,U+BDDD-BDEF,U+BDF1-BDF7,U+BDF9-BDFF,U+BE01-BE0B,U+BE0E-BE0F,U+BE11-BE13,U+BE15-BE20,U+BE22-BE24,U+BE26-BE43,U+BE46-BE47,U+BE49-BE4B,U+BE4D-BE53,U+BE56,U+BE58,U+BE5C-BE5F,U+BE62-BE63,U+BE65-BE67,U+BE69-BE6F,U+BE71-BE72,U+BE76-BE7B,U+BE7E-BE7F,U+BE81-BE83,U+BE85-BE8B,U+BE8E,U+BE92-BE97,U+BE99-BEA7,U+BEA9-BEB3,U+BEB6-BEC8,U+BECA-BECF,U+BED2-BED3,U+BED5-BED6,U+BED9-BEE2,U+BEE6-BEEB,U+BEED-BEEF,U+BEF1-BF07,U+BF0A-BF17,U+BF19-BF1A,U+BF1C-BF3F,U+BF42-BF43,U+BF45-BF47,U+BF49-BF4F,U+BF52-BF54,U+BF56-BF70,U+BF72-BFAF,U+BFB1-BFC4,U+BFC6-BFCB,U+BFCE-BFCF,U+BFD1-BFD3,U+BFD5-BFDB,U+BFDD-BFE0,U+BFE2-C03B,U+C03D-C057,U+C059-C05B,U+C05D-C05F,U+C061-C067,U+C06A-C08F,U+C092-C093,U+C095-C097,U+C099-C09F,U+C0A1-C0A4,U+C0A6-C0AB,U+C0AE,U+C0B1-C0B2,U+C0B8-C0B9,U+C0BB,U+C0BE,U+C0C3-C0C4,U+C0C6-C0C7,U+C0CA-C0CB,U+C0CD-C0CF,U+C0D1-C0D7,U+C0D9-C0DA,U+C0DE-C0E0,U+C0E2-C0E3,U+C0E6-C0E7,U+C0E9-C0EB,U+C0ED-C0F3,U+C0F6,U+C0F8,U+C0FA-C0FF,U+C101-C10F,U+C111-C11B,U+C11F,U+C121-C122,U+C128-C12A,U+C12E,U+C132-C135,U+C137,U+C13A-C13B,U+C13D-C13F,U+C141-C147,U+C14A,U+C14E-C153,U+C156-C157,U+C159-C15B,U+C15D-C163,U+C166,U+C16A-C16F,U+C171-C173,U+C175-C177,U+C179-C17F,U+C181-C184,U+C186-C18B,U+C18F,U+C191-C193,U+C195-C19B,U+C19E,U+C1A0,U+C1A2-C1A4,U+C1A6,U+C1A9-C1BC,U+C1BE-C1C3,U+C1C5-C1DF,U+C1E1-C1E7,U+C1E9-C1F2,U+C1F4-C1FB,U+C1FD-C1FF,U+C201-C203,U+C205-C20B,U+C20E,U+C210,U+C212-C217,U+C21A-C21B,U+C21D-C21E,U+C221-C227,U+C229-C22A,U+C22C,U+C22E,U+C230,U+C233,U+C235-C247,U+C249-C24F,U+C252-C253,U+C255-C257,U+C259-C264,U+C266-C26B,U+C26E-C26F,U+C271-C273,U+C275-C27B,U+C27E,U+C280-C287,U+C28A-C28B,U+C28D-C28F,U+C291-C297,U+C299-C29A,U+C29C,U+C29E-C2A3,U+C2A6-C2A7,U+C2A9-C2AB,U+C2AE-C2B3,U+C2B6,U+C2B8,U+C2BA-C2DB,U+C2DE-C2DF,U+C2E1-C2E2,U+C2E5-C2EA,U+C2EE,U+C2F0,U+C2F2-C2F5,U+C2F7,U+C2FB,U+C2FD-C2FF,U+C301,U+C303-C307,U+C30A-C30B,U+C30E-C312,U+C316-C323,U+C325-C328,U+C32A-C32F,U+C331-C349,U+C34B-C360,U+C362-C367,U+C36B,U+C36D-C36F,U+C371-C377,U+C37A,U+C37E-C383,U+C385-C387,U+C389-C38B,U+C38D-C3BB,U+C3BD-C3BF,U+C3C1-C3D7,U+C3DA-C3DB,U+C3DD-C3DE,U+C3E1-C3E7,U+C3EA-C3EC,U+C3EE-C3F3,U+C3F5-C407,U+C409-C40F,U+C411-C42B,U+C42D-C447,U+C449-C463,U+C466-C467,U+C469-C46B,U+C46D-C478,U+C47A-C47F,U+C481-C493,U+C495-C4B7,U+C4B9-C4C7,U+C4C9-C4EF,U+C4F2-C4F3,U+C4F5-C4F7,U+C4F9-C4FE,U+C502-C50B,U+C50D-C50F,U+C511-C527,U+C52A-C52B,U+C52D-C52F,U+C531-C537,U+C53A,U+C53C,U+C53E-C543,U+C546-C547,U+C54B,U+C54D,U+C54F-C552,U+C556,U+C55B-C55D,U+C55F,U+C562-C563,U+C565-C567,U+C569-C56F,U+C572,U+C576-C57B,U+C57E-C57F,U+C581-C583,U+C585-C586,U+C588-C58B,U+C58E,U+C590,U+C592-C594,U+C596,U+C599-C59B,U+C59D-C5B3,U+C5B6-C5B7,U+C5BA,U+C5BE-C5C3,U+C5CB,U+C5CD,U+C5CF,U+C5D2-C5D3,U+C5D5-C5D7,U+C5D9-C5DF,U+C5E2,U+C5E4,U+C5E6-C5EB,U+C5EF,U+C5F1-C5F3,U+C5F5-C5FB,U+C602-C604,U+C609-C60B,U+C60D-C60F,U+C611-C618,U+C61A,U+C61C-C623,U+C626-C627,U+C629-C62B,U+C62F-C632,U+C636,U+C638,U+C63A,U+C63C-C63F,U+C642-C643,U+C645-C647,U+C649-C64F,U+C652,U+C656-C65B,U+C65E-C65F,U+C661-C677,U+C67A-C67B,U+C67D-C693,U+C696-C697,U+C699-C69B,U+C69D-C6A3,U+C6A5-C6A6,U+C6A8,U+C6AA-C6AF,U+C6B2-C6B3,U+C6B5-C6B7,U+C6B9-C6BF,U+C6C2,U+C6C4,U+C6C6-C6C8,U+C6CA-C6CB,U+C6CE-C6CF,U+C6D1-C6D2,U+C6D5-C6DA,U+C6DE-C6DF,U+C6E2-C6E4,U+C6E6-C6E7,U+C6EA-C6EB,U+C6ED-C6EF,U+C6F1-C6F7,U+C6FA,U+C6FC,U+C6FE-C703,U+C706-C707,U+C709-C70B,U+C70D-C713,U+C716,U+C718,U+C71A-C71E,U+C722-C723,U+C725-C727,U+C729-C72F,U+C731-C732,U+C734,U+C736,U+C738-C73B,U+C73E-C73F,U+C741-C743,U+C745-C749,U+C74B,U+C750,U+C752,U+C754,U+C756-C757,U+C759-C75B,U+C75D-C76A,U+C76C-C773,U+C776-C777,U+C779,U+C77B,U+C77E-C782,U+C78B,U+C78D,U+C78F,U+C792-C793,U+C795,U+C797,U+C799-C79F,U+C7A7-C7AB,U+C7AE-C7AF,U+C7B1-C7B3,U+C7B5-C7BB,U+C7BE,U+C7C2-C7C7,U+C7CA-C7CB,U+C7CD,U+C7CF-C7DC,U+C7DE-C7E3,U+C7E5-C7FF,U+C802-C803,U+C805-C807,U+C809,U+C80C-C80F,U+C812,U+C814,U+C817-C81B,U+C81E-C81F,U+C821-C823,U+C825-C82B,U+C82E,U+C830-C837,U+C839-C83B,U+C83D-C847,U+C849-C84B,U+C84E-C86F,U+C872-C873,U+C875-C877,U+C879-C87F,U+C882-C884,U+C886,U+C888-C88A,U+C88D-C893,U+C895-C8A0,U+C8A2-C8A7,U+C8A9-C8C3,U+C8C5-C8C7,U+C8C9-C8CB,U+C8CD-C8D6,U+C8D9-C8DF,U+C8E1-C8E3,U+C8E5-C8F4,U+C8F6-C8FB,U+C8FE-C8FF,U+C901-C903,U+C905-C90B,U+C90E,U+C910,U+C912-C917,U+C919-C92B,U+C92D-C933,U+C935-C94F,U+C951-C953,U+C955-C957,U+C959-C96B,U+C96D-C96F,U+C971-C973,U+C975-C987,U+C98A-C98B,U+C98D-C98F,U+C991-C997,U+C99A,U+C99C,U+C99E-C9BF,U+C9C2-C9C3,U+C9C5-C9C7,U+C9C9,U+C9CC-C9CF,U+C9D2,U+C9D4,U+C9D7-C9D8,U+C9DB,U+C9DE-C9DF,U+C9E1,U+C9E3,U+C9E5,U+C9E8-C9EB,U+C9EE-C9EF,U+C9F2-C9F7,U+C9FA-C9FB,U+C9FD-CA07,U+CA09-CA0A,U+CA0E-CA13,U+CA15-CA2F,U+CA31-CA4B,U+CA4E-CA4F,U+CA51-CA53,U+CA55-CA5B,U+CA5E-CA60,U+CA62-CA67,U+CA69-CA6F,U+CA71-CA83,U+CA85-CA97,U+CA99-CABB,U+CABE-CABF,U+CAC1-CAC3,U+CAC5-CACB,U+CACD-CAD0,U+CAD4-CAD7,U+CADA-CB0F,U+CB11-CB47,U+CB4A-CB4B,U+CB4D-CB4F,U+CB51-CB57,U+CB5A-CB5C,U+CB5E-CB63,U+CB65-CBB7,U+CBB9-CBD3,U+CBD5-CBDB,U+CBDD-CBE3,U+CBE5-CC0B,U+CC0E-CC0F,U+CC11-CC13,U+CC15-CC1B,U+CC1E,U+CC20,U+CC23-CC27,U+CC2A-CC2B,U+CC2D,U+CC2F,U+CC31-CC37,U+CC3A,U+CC40-CC41,U+CC43,U+CC46-CC47,U+CC49-CC4B,U+CC4D-CC53,U+CC56,U+CC5A-CC5F,U+CC61-CC63,U+CC65,U+CC67-CC97,U+CC9A-CC9B,U+CC9D-CC9F,U+CCA1-CCA7,U+CCAA,U+CCAC,U+CCAE-CCB3,U+CCB6-CCB7,U+CCB9-CCBB,U+CCBD-CCC3,U+CCC6,U+CCC8,U+CCCA-CCCF,U+CCD2-CCD3,U+CCD5-CCD7,U+CCD9-CCE3,U+CCE6-CCEB,U+CCED-CD07,U+CD0A-CD0B,U+CD0D-CD0F,U+CD11-CD17,U+CD1A,U+CD1C,U+CD1E-CD23,U+CD25-CD27,U+CD29-CD2B,U+CD2D-CD34,U+CD36-CD38,U+CD3A-CD3E,U+CD40-CD5B,U+CD5D-CD77,U+CD79-CD87,U+CD89-CD93,U+CD96-CD97,U+CD99-CD9B,U+CD9D-CDA3,U+CDA6,U+CDA8,U+CDAA-CDAF,U+CDB1-CDC3,U+CDC5-CDCB,U+CDCE-CDE7,U+CDE9-CDEB,U+CDED-CE03,U+CE05-CE0B,U+CE0D-CE1F,U+CE22-CE23,U+CE25-CE27,U+CE29-CE2F,U+CE31-CE34,U+CE36-CE57,U+CE5A-CE5B,U+CE5D-CE5F,U+CE62-CE67,U+CE6A,U+CE6C,U+CE6E-CE6F,U+CE71-CE73,U+CE76-CE77,U+CE79-CE7B,U+CE7D-CE83,U+CE86,U+CE88,U+CE8A-CE8F,U+CE92-CE93,U+CE95-CE97,U+CE99-CE9F,U+CEA2,U+CEA6-CEA9,U+CEAB,U+CEAD-CEAF,U+CEB1-CEE3,U+CEE6-CEE7,U+CEE9-CEEA,U+CEED-CEF3,U+CEF6,U+CEFA-CEFC,U+CEFE-CEFF,U+CF01-CF03,U+CF05-CF07,U+CF09-CF0F,U+CF12,U+CF14,U+CF16-CF19,U+CF1B,U+CF1E-CF1F,U+CF21-CF23,U+CF25-CF2B,U+CF2D-CF2F,U+CF31-CF53,U+CF56-CF57,U+CF59-CF5B,U+CF5D-CF63,U+CF66,U+CF68,U+CF6A-CF6B,U+CF6D-CF6F,U+CF72-CF73,U+CF75-CF77,U+CF79-CF82,U+CF84,U+CF86-CF8B,U+CF8D-CFA7,U+CFA9-CFAF,U+CFB1-CFC3,U+CFC5-CFD8,U+CFDA-CFDF,U+CFE2-CFE3,U+CFE5-CFE7,U+CFE9-CFEF,U+CFF2-CFF4,U+CFF6-CFFB,U+CFFD-CFFF,U+D001-D003,U+D005-D00B,U+D00D-D017,U+D019-D01B,U+D01D-D033,U+D036-D037,U+D039-D03B,U+D03D-D044,U+D046-D04F,U+D051-D053,U+D055-D057,U+D059-D05F,U+D061-D064,U+D066-D06B,U+D06E-D06F,U+D071-D073,U+D075-D07B,U+D07E-D080,U+D082-D087,U+D089-D0A3,U+D0A6-D0A7,U+D0A9-D0AB,U+D0AD-D0B3,U+D0B6,U+D0B8,U+D0BA-D0BF,U+D0C2-D0C3,U+D0C5-D0C7,U+D0CA-D0CF,U+D0D2,U+D0D6-D0DB,U+D0DE-D0DF,U+D0E1-D0E3,U+D0E5-D0EB,U+D0EE,U+D0F2-D0F7,U+D0FA-D113,U+D115-D12F,U+D132-D133,U+D135-D137,U+D139-D13F,U+D142,U+D146-D14B,U+D14E-D14F,U+D151-D153,U+D155-D15B,U+D15E,U+D160,U+D162-D167,U+D169-D17B,U+D17D-D187,U+D189-D19F,U+D1A2-D1A3,U+D1A5-D1A7,U+D1A9-D1AF,U+D1B2,U+D1B4,U+D1B6-D1B9,U+D1BB,U+D1BD-D1BF,U+D1C1-D1F3,U+D1F5-D1FB,U+D1FD-D206,U+D208-D224,U+D226-D22B,U+D22E-D22F,U+D231-D233,U+D235-D23B,U+D23E,U+D240,U+D242-D247,U+D249-D25B,U+D25D-D263,U+D265-D27F,U+D281-D283,U+D285-D287,U+D289-D294,U+D296-D29B,U+D29D-D29F,U+D2A1-D2A3,U+D2A5-D2AB,U+D2AD-D2B3,U+D2B5-D2B7,U+D2BA-D2BB,U+D2BD-D2BE,U+D2C1-D2C7,U+D2C9-D2CA,U+D2CC-D2D0,U+D2D2-D2D3,U+D2D5-D2D7,U+D2D9-D2EF,U+D2F2-D2F3,U+D2F5-D2F7,U+D2F9-D2FF,U+D302,U+D304,U+D306-D30B,U+D30F,U+D311-D313,U+D315-D31B,U+D31E,U+D322-D324,U+D326-D327,U+D32A-D32B,U+D32D-D32F,U+D331-D337,U+D33A,U+D33E-D37B,U+D37E-D37F,U+D381-D383,U+D385-D38B,U+D38E,U+D392-D397,U+D39A-D39B,U+D39D-D39F,U+D3A1-D3A7,U+D3AA,U+D3AC,U+D3AE-D3B3,U+D3B5-D3B7,U+D3B9-D3BB,U+D3BD-D3C3,U+D3C6-D3C7,U+D3CA-D3CF,U+D3D1-D3EB,U+D3EE-D3EF,U+D3F1-D3F3,U+D3F5-D3FB,U+D3FD-D3FE,U+D400,U+D402,U+D404-D407,U+D409-D41C,U+D41E-D43F,U+D441-D443,U+D445-D45B,U+D45E-D45F,U+D461-D46E,U+D470-D477,U+D47A-D47B,U+D47D-D47F,U+D481,U+D483-D487,U+D48A,U+D48C,U+D48E-D4CB,U+D4CD-D4E7,U+D4E9-D4EF,U+D4F1-D4F7,U+D4F9-D503,U+D505-D507,U+D509-D50B,U+D50D-D513,U+D516-D518,U+D51A-D51D,U+D51F-D53B,U+D53E-D53F,U+D541-D543,U+D545-D54B,U+D54E,U+D550,U+D552-D557,U+D55A-D55B,U+D55D-D55F,U+D561-D564,U+D566-D567,U+D56A,U+D56C,U+D56E-D570,U+D572-D573,U+D576-D577,U+D579-D57B,U+D57D-D583,U+D586,U+D58A-D58F,U+D592-D593,U+D595-D597,U+D599-D59F,U+D5A1-D5A3,U+D5A6-D5BF,U+D5C1-D5C7,U+D5CA-D5CB,U+D5CD-D5CF,U+D5D1-D5D7,U+D5DA,U+D5DC,U+D5DE-D5E3,U+D5E6-D5E7,U+D5E9-D5EB,U+D5ED-D5F3,U+D5F6,U+D5FA-D5FF,U+D602-D603,U+D605-D607,U+D609-D60F,U+D612,U+D616-D61B,U+D61D-D623,U+D625-D637,U+D63A-D63B,U+D63D-D63F,U+D641-D647,U+D64A,U+D64C,U+D64E-D650,U+D653,U+D656-D657,U+D659-D65B,U+D65D-D666,U+D668,U+D66A-D670,U+D672-D682,U+D684-D68B,U+D68E-D68F,U+D691-D69E,U+D6A0,U+D6A2-D6A7,U+D6A9-D6B8,U+D6BA,U+D6BC-D6C3,U+D6C6-D6C7,U+D6C9-D6CB,U+D6CD-D6D0,U+D6D2-D6D3,U+D6D6,U+D6D8,U+D6DA-D6DF,U+D6E1-D6E3,U+D6E5-D6E7,U+D6E9-D6FB,U+D6FD-D6FF,U+D701-D710,U+D712-D717,U+D71A-D71B,U+D71D-D71F,U+D721-D727,U+D72A,U+D72C-D733,U+D735-D73B,U+D73D-D743,U+D745-D748,U+D74A-D74F,U+D752-D753,U+D755-D757,U+D75A-D75F,U+D762-D764,U+D766-D768,U+D76A-D76B,U+D76E-D76F,U+D771-D787,U+D78A-D78B,U+D78D-D78F,U+D791-D797,U+D79A,U+D79C,U+D79E-D7A2;
}
/* FONT-FACE:END */

:root {
  --font-sans: "Pretendard Variable", "Pretendard",
               -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo",
               "Segoe UI", "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif;
  --font-mono: ui-monospace, "Cascadia Mono", Consolas, "Courier New", monospace;
}

/* ══════════════════════════════════════════════════════════════════════════
   ★ 글씨 크기 전역 조절 손잡이 (여기 한 줄만 고치면 전 화면이 비례 확대/축소)
   ──────────────────────────────────────────────────────────────────────────
   타이포 토큰이 전부 rem 이라 루트 크기가 전체 스케일을 결정한다.
   여백(px)은 그대로라 정보 밀도를 유지하면서 글씨만 커진다.

   ★ 16px = 본문 14.0 · 표 13.0 · 최소 11.0   ← 현재값 (2026-08-24 사용자 (c)안 선택 —
            밸리AI 실측 본문 14px 채택 · 3안 나란히 시안에서 확정)
     17px = 본문 14.9 · 표 13.8 · 최소 11.7   (교체 전 아젠다와 거의 동일)
     18px = 본문 15.8 · 표 14.6 · 최소 12.4
     19px = 본문 16.6 · 표 15.4 · 최소 13.1   (2026-07-26~08-24)
     20px = 본문 17.5 · 표 16.3 · 최소 13.8   (KRDS 모바일 본문 17px 수준)

   한글은 같은 px 에서 라틴보다 작아 보인다. 업계 표준 14px 본문은 라틴 기준이므로
   한글 화면에서는 루트를 올려 보정한다(2026-07-26 사용자 피드백 반영).
   ══════════════════════════════════════════════════════════════════════════ */
html { font-size: 16px; }

/* ── 2. 타이포 스케일 — 절대값 11단 (rem · em 중첩 금지) ────────────────────
   rem 표기 이유: 사용자 브라우저 글꼴 확대(WCAG 1.4.4)를 살린다.
   clamp() 유동 타이포는 기각 — 확대 시 vw 기준값이 되레 줄어 WCAG F94 실패 위험.

   ★ 여기가 크기·진함·줄간격의 **단일 원천**이다. 화면에서 숫자를 직접 쓰지 않는다.
     `타이포_감사.py --gate` 가 커밋마다 그것을 검사한다(2026-08-06 신설). */
:root {
  --fs-11: 0.6875rem;  /* 11px · 미세 라벨 · 출처 · eyebrow */
  --fs-12: 0.75rem;    /* 12px · 표 부가 · 메타 · 배지 */
  --fs-13: 0.8125rem;  /* 13px · 표 셀 · 조밀 UI · 사이드바 */
  --fs-14: 0.875rem;   /* 14px · ★ 본문 기준 (Ant 14 · Carbon 14 · Radix 14) */
  --fs-15: 0.9375rem;  /* 15px · 모달 소제목 (2026-08-06 추가 — 아래 주석 참조) */
  --fs-16: 1rem;       /* 16px · 강조 본문 · 카드 제목 */
  --fs-20: 1.25rem;    /* 20px · 섹션 제목 */
  --fs-22: 1.375rem;   /* 22px · 카드 KPI 값 (2026-08-06 추가 — 아래 주석 참조) */
  --fs-24: 1.5rem;     /* 24px · KPI 값 */
  --fs-30: 1.875rem;   /* 30px · 페이지 제목  (폰에서 24 로 스왑) */
  --fs-40: 2.5rem;     /* 40px · 히어로 수치  (폰에서 30 으로 스왑) */
  /* --fs-15 · --fs-22 를 뒤늦게 추가한 이유: 네 곳이 이미 쓰고 있었는데 **정의가 없었다**.
     미정의 CSS 변수는 폴백이 없으면 선언 자체가 무효가 되어 부모 크기로 떨어진다
     (브라우저 실증 · 실측: .t20-section h3 가 15px 의도인데 16.6px 로 렌더됐다).
     쓰는 곳 = discovery/index.html(h3·KPI) · focus/round.html · shared/_fund_ui.html. */

  --lh-hero: 1.15;  --lh-title: 1.35; --lh-ui: 1.5;
  --lh-read: 1.65;  --lh-cell: 1.4;   --lh-dense: 1.3;
  /* 아래 둘은 2026-08-06 추가. 정본에 없어서 화면들이 제각기 만들어 쓰던 것을 흡수한다.
     --lh-article : 긴 글 읽기. 6파일이 1.75·1.8·1.85·1.9 로 갈려 있었다 — 정본 최대(1.65)
                    가 긴 글에 좁아서 각자 넓힌 것이라, 누르지 않고 한 단계를 만든다.
     --lh-tight   : 배지·칩처럼 한 줄짜리 요소를 딱 맞출 때(4파일이 `1` 을 쓰고 있었다). */
  --lh-article: 1.8;  --lh-tight: 1;

  /* 자간 — 한글 ≤16px 는 0. 큰 글씨만 음수. 라틴 대문자 라벨만 양수. */
  --ls-0: 0; --ls-tight: -0.01em; --ls-tighter: -0.02em; --ls-caps: 0.08em;

  /* ★ 글씨 진함 전역 조절 손잡이 — 아래 --fw-step 한 줄이 전 화면의 굵기를 함께 옮긴다.
     ──────────────────────────────────────────────────────────────────────────
       0 = 450·500·600·700·800   (현재)
      50 = 500·550·650·750·850   (반 단계 — 가변 폰트라 중간값이 가능하다)
     100 = 550·600·700·800·900   (한 단계)

     손잡이가 실제로 통하려면 화면이 값을 직접 박지 않아야 한다. 2026-08-06 전수 치환과
     `타이포_감사.py` 게이트가 그것을 보장한다 — 게이트 없이 손잡이만 두면 토큰을 쓰는
     절반만 진해져 지금보다 더 어긋난다.
     Pretendard Variable 의 굵기 범위는 45~930 이라 900 까지 안전하다(@font-face 참조). */
  --fw-step: 0;
  /* 본문만 400 → 450 (2026-08-06 사용자 지시). 화면 요소의 68%가 이 값을 쓰므로 여기가
     "전체가 흐리다"는 인상을 좌우한다. 한글은 같은 굵기에서 라틴보다 가늘어 보여
     400 이 특히 얇게 읽힌다(루트 크기를 19px 로 올린 것과 같은 이유).
     medium(500)과 50 만 벌어지지만, 본문과 medium 은 같은 글에서 나란히 놓이는 일이
     드물어 위계가 무너지지 않는다 — 위계는 semi(600)·bold(700)가 만든다. */
  --fw-normal: calc(450 + var(--fw-step));
  --fw-medium: calc(500 + var(--fw-step));
  --fw-semi:   calc(600 + var(--fw-step));
  --fw-bold:   calc(700 + var(--fw-step));
  --fw-black:  calc(800 + var(--fw-step));
}

/* ── 3. 스페이싱 — 4px 베이스 ──────────────────────────────────────────────
   ★ 여백 리듬: 내부 패딩 < 외부 마진.
     카드 패딩 14~16 / 카드 갭 12~16 / 섹션 마진 32~48.
     (교체 전: 패딩 14~20 ≈ 마진 14~16 이라 그룹 경계가 지각되지 않았다) */
:root {
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-5: 20px; --sp-6: 24px; --sp-8: 32px; --sp-12: 48px;
  --radius: 6px; --radius-sm: 4px; --radius-full: 999px;
}

/* ── 4. 레이아웃 — 컨테이너 3종 + 셸 ──────────────────────────────────────
   교체 전 문제: 컨테이너가 1600px 하나뿐이라 2열 표도 전폭으로 늘어났다.
   사용자가 "적당하다"고 평가한 리서치 데스크만 유일하게 860px 를 썼다. */
:root {
  --w-prose: 780px;   /* 서술 · 리포트 · 해석 글 */
  --w-article: 864px; /* 밸리AI 실측 본문폭 — (c)안 · 카드형 본문 화면 (2026-08-24) */
  --w-app:  1400px;   /* 카드 격자 · KPI · 대시보드 본문 · 모든 헤더/제목 */
  /* 광폭 표·차트는 .tbl-wrap 내부 스크롤로 처리 (컨테이너를 넘기지 않는다) */
  --gutter: 24px;

  --h-header: 56px;
  /* 상표 초록 — 색계단_생성.py --기준 #22C55E 계단(2026-08-24). 400 = 검은 글자 대비 7.89(AA) */
  --brand-green-300: #3fd76f;
  --brand-green-400: #00b751;
  --brand-green-600: #007821;
  --w-sidebar: 240px;
  --w-rail: 64px;      /* 1024~1279 아이콘 레일 */
  --h-tabbar: 56px;    /* <1024 바텀 탭바 */
  --row-h: 40px;       /* 표 행 높이 (폰 44px — 터치 타깃) */
  --safe-b: env(safe-area-inset-bottom, 0px);
  --z-header: 60; --z-side: 55; --z-scrim: 54; --z-tabbar: 58;
  /* 표 안에서 고정되는 칸의 층 — 화면 붙박이(--z-side 55 이상)보다 **반드시 낮다**.
     표는 화면 안에 든 것이지 화면 위에 뜬 것이 아니다. 2026-08-26: 넥서스 하우스뷰가
     99·100·101 을 지어 써서 상단 막대(60)를 덮었다. 집안 규칙은 원래 3·5·7 이었다
     (base.css 268·602·603행) — 그 숫자에 이름을 붙여 다시 지어내지 못하게 한다. */
  /* ── 차트 위 사건 점 (2026-08-27 · 특별한 챠트연구 · 사용자님 확정)
     공시 = 사각형 하늘색 · 뉴스 = 동그라미 연두색. 캔들이 빨강·초록이라 형광 계열로 가른다.

     ★ 색을 눈으로 안 골랐다 — `도구/대비_게이트.py` 로 **재서** 골랐다.
       형광은 밝아서 흰 바탕에 묻힌다(속색 단독은 라이트에서 1.3~3.4 로 전부 미달).
       그래서 **진한 테두리**를 둘러 «인접 색과 3:1»(WCAG 1.4.11)을 넘겼다.

                      라이트   다크   (그래픽 요소 기준 3:1)
       공시 테두리      5.93   3.03   ✓
       뉴스 테두리      4.99   3.60   ✓
       속 vs 테두리     3.28 / 3.31   ✓ (속과 테두리도 서로 갈린다)

     유료 서비스이므로 브라우저·시력을 가리면 안 된다 — 색맹이면 모양(사각/동그라미)으로,
     저시력이면 테두리로 갈린다. 색 하나에만 기대지 않는다. */
  --dot-disc: #22D3EE;         /* 공시 — 하늘색 속 */
  --dot-disc-edge: #0369A1;    /* 공시 — 테두리 */
  --dot-news: #A3E635;         /* 뉴스 — 연두색 속 */
  --dot-news-edge: #4D7C0F;    /* 뉴스 — 테두리 */

  /* 차트 아래 칸 — 수급 3주체 · 테마선.
     ★ 라이트/다크 둘 다에서 «글자» 기준 4.5:1 을 넘는 색만 골랐다(실측 · 대비_게이트.py).
       이름표를 같은 색 글자로 쓰기 때문이다. 기존 --series-* 는 선·막대용이라
       라이트에서 2.17~4.42 로 글자 기준을 못 넘었다.
     ★ 세 색끼리의 대비는 1.1~1.7 에 그친다 — 색만으로는 못 가른다는 뜻이다.
       그래서 이름표에 «글자» 를 함께 두고 막대 차례도 외국인·기관·개인으로 고정한다. */
  --flow-foreign: light-dark(#1F5FD9, #5B9BFF);   /* 5.68 / 6.48 */
  /* ★ 2026-08-28 — «연한 상자 안» 기준 재보정. 같은 색이 여러 이름에 손으로 적혀 있어서
     --good 하나만 고쳤더니 --regime-on-c·--ai-cache-c 에 옛 색이 남아 18 건이 그대로였다.
     axe 로 118 화면을 훑어 «그 글자가 실제로 만나는 바탕 전부» 중 가장 불리한 것에 맞췄다.
       갈색 #9A6200 → #945c00 (49건 · --warn-c·--regime-off-c·--flow-inst)
       초록 #14804A → #0c7842 (22건 · --good·--regime-on-c·--ai-cache-c)
     한 바탕에만 맞추면 다른 바탕에서 또 걸린다 — 그래서 최악 바탕 기준이다. */
  --flow-inst:    light-dark(#945c00, #E0A83A);   /* 4.52(연한 상자 안) / 8.41 — ★ 2026-08-28 */
  --flow-person:  light-dark(#4A3AA7, #9085E9);   /* 8.56 / 5.75 */
  --theme-line:   light-dark(#0F766E, #4FD1C5);   /* 5.47 / 9.63 */

  --z-tbl-col: 3;      /* 왼쪽에 붙는 첫 열 */
  --z-tbl-head: 5;     /* 위에 붙는 머리줄 */
  --z-tbl-corner: 7;   /* 둘이 만나는 모서리 — 머리줄보다 위 */
}

/* ══════════════════════════════════════════════════════════════════════════
   5. 색 — 라이트/다크를 light-dark() 한 줄씩 (2026-08-24 재편)
   ──────────────────────────────────────────────────────────────────────────
   ★ 2026-08-24 사용자 지시 「밸리AI 화면 색을 따르라」:
     밝은 중립계를 밸리 실측값(zinc 계열 · 246만 픽셀 최빈색)으로 —
     바탕 순백 · 옅은 판 #FAFAFA · 잉크 #27272A 층. 값은 OKLCH(지각 균등)로 표기하고
     색계단_생성과 같은 colorjs.io 로 변환·ΔE2000·WCAG 대비를 실측해 주석에 남겼다.
     ※ 밸리의 흐린 잉크(161,161,170 · 2.8:1)와 하늘색 링크(0284C7 · 4.1:1)는 AA 미달이라
       채택하지 않는다 — 잉크 3층 + 브랜드 파랑 유지.
   ★ light-dark() 통합(전 브라우저 Baseline 2024): 한 토큰이 한 줄 —
     「한쪽 테마만 고치고 다른 쪽을 잊는」 실수를 구조적으로 차단한다.
     어느 쪽을 쓸지는 color-scheme 이 정하고, 그것은 기존 data-theme 토글이 정한다(불변).
     색이 아닌 그림자 문자열만 §6 테마 블록에 남는다.
   ★ 다크 값은 전부 종전 그대로(순검정 금지 · 알파 화이트 보더 · 채도 낮춘 등락). */
:root,
[data-theme="light"] { color-scheme: light; }
[data-theme="dark"]  { color-scheme: dark; }

:root {
  /* 표면 — 밸리 실구조(2026-08-24 사용자 색 대조로 정정): 바탕 #FAFAFA · **글 면(카드)만 순백**.
     글 면이 바탕보다 밝아 카드가 살짝 뜨고 바탕이 물러난다. 첫 매핑(바탕 순백)은 화면첩
     최빈색을 구조로 오독한 것 — 순백 1위는 글 카드가 면적 대부분이어서였다. */
  --surface-0: light-dark(oklch(0.9851 0 0), #0B0D10);            /* 앱 배경 · #FAFAFA */
  --surface-1: light-dark(oklch(1 0 0), #14171C);                 /* 카드 · 패널 · #FFFFFF (글 면) */
  --surface-2: light-dark(oklch(0.9674 0.0013 286.37), #1C2027);  /* hover · 표 헤더 · #F4F4F5 */
  --surface-3: light-dark(oklch(0.9197 0.004 286.32), #242931);   /* pressed · 팝오버 · #E4E4E7 */

  /* 보더 — 라이트 zinc 계단(ΔE 3.5/3.7) · 다크 알파 화이트(6~12% 스윗스팟) */
  --border-subtle:  light-dark(oklch(0.9197 0.004 286.32), rgba(255,255,255,.07));   /* #E4E4E7 */
  --border-default: light-dark(oklch(0.8711 0.0055 286.29), rgba(255,255,255,.11));  /* #D4D4D8 */
  --border-strong:  light-dark(oklch(0.7118 0.0129 286.07), rgba(255,255,255,.18));  /* #A1A1AA */

  /* 잉크 — 밸리 실측 층 정렬 (흰 바탕 대비 실측치 주석) */
  --ink-0: light-dark(oklch(0.2739 0.0055 286.03), #E8EBF0);  /* #27272A · 14.9:1 */
  --ink-1: light-dark(oklch(0.4419 0.0146 285.79), #98A2B3);  /* #52525B ·  7.7:1 */
  /* ★ 2026-08-28 — 라이트 값을 L 0.5517 → 0.5392 로 내렸다(색조·채도 그대로).
     왜: 옛 값 #71717A 는 «앱 배경(#FAFAFA)» 에서만 4.63 이라 통과했고,
     «표 머리·hover(--surface-2 #F4F4F5)» 위에서는 4.40 으로 미달이었다.
     axe 실측 2026-08-28: 이 한 조합에서만 위반 16건. 대비 게이트가 앱 배경만 재서 못 봤다.
     새 값 #6D6D76 = 앱 4.88 · 카드 5.09 · 표머리 4.63 (전부 AA).
     ※ --surface-3(눌림·팝오버 #E4E4E7) 위에서는 4.01 이라 여전히 미달 —
        그 표면 위 글자는 --ink-1 을 쓴다. */
  /* ★ 2026-08-28 — L 0.5392 → 0.5172. 연한 상자(--critical-bg 등) 안에서 4.18:1 로 미달이었다.
     0.5212 로는 브라우저가 4.49 로 재 **0.01 이 모자랐다** — 계산기와 브라우저의 반올림이
     달라서다. 그래서 여유를 0.07 두었다(경계에 딱 맞추면 다시 걸린다)
     (axe 4건). 흰 바탕에서는 5.12 → 5.60 으로 오른다. 「흐린 글씨」의 성격은 그대로다. */
  --ink-2: light-dark(oklch(0.5172 0.0138 285.94), #868FA0);  /* #676770 · 4.57~5.6:1 (AA · 여유 0.07) */
  --ink-inv: light-dark(#FFFFFF, #0B0D10);

  --accent-c:  light-dark(#1F5FD9, #5B9BFF);  /* 5.7:1 — 브랜드 액센트 1개 */
  --accent-bg: light-dark(rgba(31, 95, 217, 0.09), rgba(91,155,255,.14));

  /* ★ 등락 — 한국식. status(good/critical) 와 겸용 절대 금지. 다크는 채도 낮춤. */
  --up:        light-dark(#D6202A, #FF6B6B);  /* 상승 = 적  5.1:1 / 6.5:1 */
  /* ★ 라이트 틴트 9% → 7% (2026-08-28) — 같은 적색 글자가 이 틴트 위에서 4.44:1 로 미달이었다
     (axe 실측 · 「성공」 배지). 7% 로 옅히면 4.59:1. 파랑·강조 틴트는 이미 통과라 안 건드린다. */
  --up-bg:     light-dark(rgba(214, 32, 42, 0.07), rgba(255,107,107,.15));
  --up-soft:   light-dark(#c93c45, #db5e62);  /* 4.53:1 / 4.50:1 — ★ 2026-08-28 «연한 상승 상자 안»
                                                 기준으로 재보정(--up-bg 위). 페이지 바탕만 보던
                                                 옛 값 #cd4049/#d4575b 은 상자 안에서 4.24/3.68 이었다. */
  --down:      light-dark(#0B63CE, #5B9BFF);  /* 하락 = 청  5.7:1 / 6.5:1 */
  --down-bg:   light-dark(rgba(11, 99, 206, 0.09), rgba(91,155,255,.15));
  --down-soft: light-dark(#2d6abd, #5d8fd9);  /* 4.55:1 / 4.50:1 — ★ 2026-08-28 «연한 위험 상자 안»
                                                 기준으로 재보정(--critical-bg 위). 옛 값은 4.02/3.75. */
  --flat:      light-dark(#6c7381, #868FA0);  /* 4.57:1 / 5.52:1 (AA) — 라이트만 보정 */
  /* ★ 위 세 줄의 대비 숫자는 장식이 아니다. 2026-08-26 전 화면 실측에서 미달 칸 5,040개 중
     4,975개(98.7%)가 이 세 색에서 나왔다. 원색(--up · --down)에는 대비가 적혀 있었고
     이 변형들에는 없었다 — **잰 색에는 숫자가 있고 안 잰 색에는 없었다.** 그것이 흔적이었다.
     새 색을 더할 때는 `대비_최소보정.py` 로 계산하고 그 숫자를 여기 적는다. 안 적힌 색은
     pre-commit 의 대비 게이트가 막는다. */

  /* 상태 4단 — 반드시 아이콘 + 라벨 동반 (색 단독 금지) */
  /* ★ --good 라이트 #14804A → #127e48 (2026-08-28) — `.pill.regime-on{background:var(--good-bg)}`
     위에서 4.43:1 로 AA 에 0.07 모자랐다. axe 가 119 화면에서 이 조합만 87 건 물었다.
     채널당 2 라 눈으로는 같은 초록이다. 「연해 보이게」 되돌리지 말 것. */
  --good:     light-dark(#0c7842, #3FCF6E);  --good-bg:     light-dark(rgba(20, 128, 74, 0.09), rgba(63,207,110,.15));
  /* ★ 라이트 틴트 10% → 7% (2026-08-28) — 「진행중」 배지가 4.46:1 로 미달이었다 → 4.65:1 */
  --warn-c:   light-dark(#945c00, #E3A83C);  --warn-c-bg:   light-dark(rgba(154, 98, 0, 0.07), rgba(227,168,60,.15));
  --serious:  light-dark(#B3480F, #F08A4B);  --serious-bg:  light-dark(rgba(179, 72, 15, 0.10), rgba(240,138,75,.15));
  --critical: light-dark(#A11017, #F2696E);  --critical-bg: light-dark(rgba(161, 16, 23, 0.09), rgba(242,105,110,.15));

  --ai-rule-c: light-dark(#71717A, #868FA0); --ai-llm-c: light-dark(#1F5FD9, #5B9BFF);
  --ai-claude-c: light-dark(#6D3FC4, #A78BFA); --ai-cache-c: light-dark(#0c7842, #3FCF6E);

  --regime-on-c: light-dark(#0c7842, #3FCF6E); --regime-mixed-c: light-dark(#71717A, #868FA0);
  --regime-off-c: light-dark(#945c00, #E3A83C); --regime-crisis-c: light-dark(#A11017, #F2696E);

  /* 차트 시리즈 8슬롯 — dataviz 검증기 통과
     (인접 CVD ΔE 라이트 9.2/정상 19.6 · 다크 재스텝 9.4/19.3)
     ★ 순서 고정 · 순환 금지 · 9번째 시리즈는 "기타"로 접는다
     ★ blue/red 를 slot 7·8 로 밀어 등락색과의 혼동을 차단했다
     ★ 가격 방향이 인코딩된 차트에는 이 팔레트를 쓰지 않는다 */
  --series-1: light-dark(#eb6834, #d95926); --series-2: light-dark(#1baf7a, #199e70);
  --series-3: light-dark(#4a3aa7, #9085e9); --series-4: light-dark(#eda100, #c98500);
  --series-5: light-dark(#e87ba4, #d55181); --series-6: light-dark(#008300, #008300);
  --series-7: light-dark(#2a78d6, #3987e5); --series-8: light-dark(#e34948, #e66767);

  --grid-line: light-dark(oklch(0.9197 0.004 286.32), rgba(255,255,255,.07));  /* #E4E4E7 */
  --scrim: light-dark(rgba(16, 24, 40, 0.42), rgba(0,0,0,.6));
}

/* ══════════════════════════════════════════════════════════════════════════
   6. 그림자 — 색 함수가 아니라 문자열이라 light-dark() 를 못 쓴다: 여기만 테마 블록.
   (다크: 순검정 금지 근거 등 종전 주석은 §5 머리로 통합)
   ══════════════════════════════════════════════════════════════════════════ */
:root,
[data-theme="light"] {
  --shadow-float: 0 8px 24px rgba(16,24,40,.12), 0 2px 6px rgba(16,24,40,.06);
  --shadow-stick: 8px 0 8px -8px rgba(16,24,40,.22);
}
[data-theme="dark"] {
  --shadow-float: 0 8px 24px rgba(0,0,0,.45);
  --shadow-stick: 8px 0 8px -8px rgba(0,0,0,.5);
}

/* ══════════════════════════════════════════════════════════════════════════
   7. 반응형 토큰 스왑 — 브레이크포인트 3개 (640 / 1024 / 1280)
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 1279.98px) { :root { --gutter: 20px; } }
@media (max-width: 1023.98px) { :root { --gutter: 16px; } }
@media (max-width: 639.98px) {
  :root {
    --gutter: 14px;
    --h-header: 52px;
    --row-h: 44px;      /* 터치 타깃 — Apple·KRDS 44 / Material 48 / WCAG 2.2 최소 24 */
    --fs-40: 1.875rem;  /* 40 → 30 : 상단 2단만 스왑 */
    --fs-30: 1.5rem;    /* 30 → 24 */
  }
}

/* ══════════════════════════════════════════════════════════════════════════
   8. 폐기 목록 (05_UI_UX_TE디자인.md 갱신 의무)
   ❌ border-radius: 0 !important    → radius 6px 단일
   ❌ 3단 그리드 220/1fr/340         → 사이드바 240 + 본문 (15개월 미구현)
   ❌ --font-num (모노 숫자)         → tabular-nums 로 대체
   ❌ 레짐 그라데이션 4종            → 색 칩 + 아이콘
   ❌ th { text-transform: uppercase} → 한글에 무의미 + 라틴 판독성 저하
   ❌ .pill 배경색 + 흰 글자          → 반투명 배경 + 진한 글자 (2.5:1 → 4.5:1+)
   ❌ 컨테이너 1600px 단일           → 3종 (prose 780 / app 1400 / 표 내부 스크롤)
   ══════════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════════
   9. ★ 레거시 별칭 — 기존 63개 템플릿 호환 레이어
   ──────────────────────────────────────────────────────────────────────────
   옛 변수명을 새 토큰에 연결한다. 템플릿을 한 줄도 고치지 않아도
   새 색·새 등락 관례(상승 적 / 하락 청)가 전 화면에 즉시 적용된다.
   ※ 신규 코드에서는 옛 이름을 쓰지 말 것. 아래는 이관 완료 시 삭제한다.
   ══════════════════════════════════════════════════════════════════════════ */
:root, [data-theme="light"], [data-theme="dark"] {
  /* 표면 · 보더 · 텍스트 */
  --bg-0: var(--surface-0);
  --bg-1: var(--surface-1);
  --bg-2: var(--surface-2);
  --border: var(--border-default);
  --text-0: var(--ink-0);
  --text-1: var(--ink-1);
  --text-2: var(--ink-2);
  --accent: var(--accent-c);

  /* ★ 등락 — 여기서 한국식으로 뒤집는다.
     --up-* 가 적색, --dn-* 가 청색이 되면서 전 템플릿의 등락색이 한 번에 전환된다.
     4단 농도는 2단으로 축소(IMQA 2편: 채도만으로 구분하면 정확도가 낮다). */
  --up-4: var(--up);       --up-3: var(--up);
  --up-2: var(--up-soft);  --up-1: var(--up-soft);
  --dn-4: var(--down);     --dn-3: var(--down);
  --dn-2: var(--down-soft);--dn-1: var(--down-soft);

  /* 국면 · 섹터판정 · AI 출처 */
  --regime-crisis: var(--regime-crisis-c);
  --regime-off:    var(--regime-off-c);
  --regime-mixed:  var(--regime-mixed-c);
  --regime-on:     var(--regime-on-c);
  --sd-strong-buy: var(--good);
  --sd-buy:        var(--good);
  --sd-selective:  var(--warn-c);
  --sd-conflict:   var(--ink-2);
  --sd-avoid:      var(--critical);
  --ai-rule:   var(--ai-rule-c);
  --ai-llm:    var(--ai-llm-c);
  --ai-claude: var(--ai-claude-c);
  --ai-cache:  var(--ai-cache-c);

  /* 6 대주제 태그 (사용 잔존분) */
  --t1-what: var(--accent-c);   --t2-why: var(--accent-c);
  --t3-sowhat: var(--good);     --t4-watchout: var(--critical);
  --t5-context: var(--ai-claude-c); --t6-raw: var(--ink-2);

  /* 경고 박스 */
  --warn-bg:     var(--warn-c-bg);
  --warn-fg:     var(--warn-c);
  --warn-border: var(--warn-c);

  /* 타이포 옛 이름 */
  --font-main: var(--font-sans);
  --font-num:  var(--font-sans);   /* ★ 모노 숫자 폐기 — tabular-nums 로 대체 */
  --fs-hero:    var(--fs-30);
  --fs-section: var(--fs-20);
  --fs-body:    var(--fs-14);
  --fs-small:   var(--fs-12);
  /* ⚠️ 옛 이름 구역이 §2 뒤에 오므로 여기서 숫자를 다시 쓰면 **손잡이를 덮어쓴다**.
     실제로 2026-08-06 손잡이 신설 전까지 이 줄이 `--fw-bold: 700` 으로 값을 재선언하고
     있었고, 그대로 뒀다면 --fw-step 을 돌려도 아무 일도 일어나지 않았을 것이다.
     세 이름은 §2 와 같은 이름이라 재선언 자체가 필요 없다 — 지운다. */

  /* radius 옛 이름 */
  --r: var(--radius); --r-sm: var(--radius-sm);
}
}
/* @layer tokens 끝 */
