/* ===========================================================================
 * icons.css — flaticon uicons 마스크 아이콘 단일 정본(SoT · 2026-06-30 통일)
 * ---------------------------------------------------------------------------
 * 목적 : 그동안 hub_ui.css·qid_style.css·hub_palette.js + 자족 페이지 인라인에
 *        제각각 복붙되던 `.fi` 베이스 + `.fi-*` 마스크 레지스트리를 한 곳에 통합.
 *        → 아이콘 추가/리사이즈 = 이 파일 한 곳만 수정.
 * 소스 : 모든 마스크 = ./icons/<name>.svg 단일 디렉터리(currentColor 테마 적응).
 * 로드 : 전 페이지가 _tokens.css 다음에 <link>. (hub_ui.css 보다 먼저 = 베이스 제공)
 * 추가 : 새 아이콘은 ./icons 에 svg 두고 아래 목록에 `.fi-NAME{--fi:url(./icons/NAME.svg)}` 한 줄.
 * 비고 : flaticon.com/uicons 만 사용(이모지 신규 금지). 아이콘 span = class="fi fi-NAME".
 * ======================================================================== */
.fi{display:inline-block;width:1em;height:1em;flex:0 0 auto;background:currentColor;vertical-align:-.125em;
  -webkit-mask:var(--fi) center/contain no-repeat;mask:var(--fi) center/contain no-repeat}

.fi-alarm-clock{--fi:url(./icons/alarm-clock.svg)}
.fi-angle-small-down{--fi:url(./icons/angle-small-down.svg?v=20260717)}
.fi-angle-small-left{--fi:url(./icons/angle-small-left.svg)}/* angle-small-right 좌향 짝(2026-07-17 오너 제공) */
.fi-angle-small-right{--fi:url(./icons/angle-small-right.svg?v=20260717)}
.fi-angle-small-up{--fi:url(./icons/angle-small-up.svg?v=20260717)}
.fi-arrow-left{--fi:url(./icons/arrow-left.svg)}
.fi-arrow-right{--fi:url(./icons/arrow-right.svg)}
.fi-arrow-small-right{--fi:url(./icons/arrow-small-right.svg)}/* 인라인 진입 화살표(2026-07-17 오너 제공) */
.fi-arrow-trend-up{--fi:url(./icons/arrow-trend-up.svg)}/* 상승 추세(2026-07-17 오너 제공) */
.fi-badge-check{--fi:url(./icons/badge-check.svg)}
.fi-book-alt{--fi:url(./icons/book-alt.svg)}
.fi-brain-doubt{--fi:url(./icons/brain-doubt.svg)}
.fi-brain-question-mark{--fi:url(./icons/brain-question-mark.svg)}
.fi-bug-magnifier{--fi:url(./icons/bug-magnifier.svg)}
.fi-bulb{--fi:url(./icons/bulb.svg)}
.fi-bullseye{--fi:url(./icons/bullseye.svg)}
.fi-bullseye-arrow{--fi:url(./icons/bullseye-arrow.svg?v=20260712)}
.fi-chart{--fi:url(./icons/chart.svg)}
.fi-box-open{--fi:url(./icons/box-open.svg)}/* 구 📦 이모지 자리(2026-07-17 오너 제공) — 커버리지 공백(공장 재산출 대상) */
.fi-check{--fi:url(./icons/check.svg)}
.fi-circle{--fi:url(./icons/circle.svg?v=20260720)}
.fi-convert-shapes{--fi:url(./icons/convert-shapes.svg)}
.fi-settings-sliders{--fi:url(./icons/settings-sliders.svg)}/* 표시·학습 설정 헤더(2026-07-18 오너 제공) */
.fi-clipboard{--fi:url(./icons/clipboard.svg)}
.fi-cross-small{--fi:url(./icons/cross-small.svg)}
.fi-diamond{--fi:url(./icons/diamond.svg)}
.fi-download{--fi:url(./icons/download.svg)}
.fi-eye-2{--fi:url(./icons/eye-2.svg)}/* fi-eye 솔리드 짝(2026-07-17) */
.fi-eye-crossed{--fi:url(./icons/eye-crossed.svg?v=20260717b)}
.fi-eye{--fi:url(./icons/eye.svg?v=20260717b)}
.fi-eye-crossed-2{--fi:url(./icons/eye-crossed-2.svg)}/* fi-eye-crossed 솔리드 짝(2026-07-17) */
.fi-flag{--fi:url(./icons/flag.svg?v=20260717b)}
.fi-flag-2{--fi:url(./icons/flag-2.svg)}/* ★fi-flag 솔리드 짝 — grid 플래그 on(2026-07-17) */
.fi-home{--fi:url(./icons/home.svg)}
.fi-info{--fi:url(./icons/info.svg)}
.fi-interrogation{--fi:url(./icons/interrogation.svg)}
.fi-keyboard{--fi:url(./icons/keyboard.svg)}
.fi-layers{--fi:url(./icons/layers.svg)}
.fi-link-alt{--fi:url(./icons/link-alt.svg)}
.fi-list-check{--fi:url(./icons/list-check.svg)}
.fi-location-arrow{--fi:url(./icons/location-arrow.svg)}/* 발사/보내기(2026-07-17 오너 제공) */
.fi-lock{--fi:url(./icons/lock.svg?v=20260717b)}
.fi-lock-2{--fi:url(./icons/lock-2.svg)}/* fi-lock 솔리드 짝(2026-07-17) */
.fi-menu{--fi:url(./icons/menu.svg)}
.fi-minus-small{--fi:url(./icons/minus-small.svg)}/* ★plus-small 짝(2026-07-17 오너 제공) — 접힘 ＋/− 토글 */
.fi-objects-column{--fi:url(./icons/objects-column.svg)}/* 구 ▦ 이모지 자리(2026-07-17 오너 제공) — 영역/커버리지 그리드 */
.fi-pencil{--fi:url(./icons/pencil.svg)}
.fi-pen-square{--fi:url(./icons/pen-square.svg)}/* 구 ✎ 이모지 자리(2026-07-16 오너 제공) — 편집·수정 액션 */
.fi-play{--fi:url(./icons/play.svg)}
/* ★재생 글리프 2종 공존(2026-07-16 오너 선택) — fi-play=아웃라인(선재 · 발사 CTA 10여 곳),
   fi-play-solid=솔리드(구 ▶ 이모지 자리 · 이모지 신규금지 규약 대체분). 오너가 "기존 아웃라인은 유지"로
   판정해 통합하지 않음. 새 자리에 무엇을 쓸지 헷갈리면: 문장 안 인라인 표식=solid · 버튼 앞 아이콘=fi-play. */
.fi-play-solid{--fi:url(./icons/play_solid.svg)}
.fi-plus{--fi:url(./icons/plus.svg)}
.fi-plus-small{--fi:url(./icons/plus-small.svg)}/* ★minus-small 짝(2026-07-17 오너 제공) — 접힘 ＋/− 토글 */
.fi-psychology{--fi:url(./icons/psychology.svg?v=20260712)}
.fi-refresh{--fi:url(./icons/refresh.svg)}
.fi-ruler-combined{--fi:url(./icons/ruler-combined.svg)}/* 구 fi-ruler-horizontal 승계(2026-07-17 오너 제공) — 계산 풀이·숫자 비교 축 */
.fi-scale-balanced{--fi:url(./icons/scale-balanced.svg)}
.fi-search{--fi:url(./icons/search.svg)}
.fi-shuffle{--fi:url(./icons/shuffle.svg)}
.fi-sparkles{--fi:url(./icons/sparkles.svg)}
.fi-star-solid{--fi:url(./icons/star-solid.svg?v=20260717)}/* ?v = 자산 내용 교체(2026-07-16 오너 신규 별) — URL 동일이라 캐시가 옛 모양을 붙든다 */
.fi-star{--fi:url(./icons/star.svg?v=20260717)}
.fi-stethoscope{--fi:url(./icons/stethoscope.svg)}
.fi-triangle-2{--fi:url(./icons/triangle-2.svg)}/* triangle 변형(2026-07-17 오너 제공) */
.fi-triangle-warning{--fi:url(./icons/triangle-warning.svg?v=20260717)}
.fi-triangle{--fi:url(./icons/triangle.svg?v=20260717)}
.fi-triangle-warning-2{--fi:url(./icons/triangle-warning-2.svg)}/* triangle-warning 변형(2026-07-17 오너 제공) */
.fi-unlock{--fi:url(./icons/unlock.svg)}/* fi-lock 반대상태 아웃라인(2026-07-17) */
.fi-user-lock-2{--fi:url(./icons/user-lock-2.svg)}/* ★기기·계정 보안(2026-07-17 오너 제공) — fi-lock(유료 잠금 전용)과 어휘 분리 */
.fi-unlock-2{--fi:url(./icons/unlock-2.svg)}/* fi-unlock 솔리드 짝(2026-07-17) */
.fi-wrench-alt{--fi:url(./icons/wrench-alt.svg)}/* 구 🔧 이모지 자리(2026-07-17 오너 제공) — 정합 모순(제품 정정 대상) */

/* 탑바 back 홈 아이콘 — 단독 아이콘이라 텍스트 대비 키움(부모 클래스 무관 .back 스코프) */
.back{display:inline-flex;align-items:center}
.back .fi{font-size:20px}
