/* ══ 테마 · 폰트 (앱의 다른 옷) — index.html 과 iframe 미니앱이 함께 읽는 단일 원본 ══

   왜 파일로 뺐나: 수업 탭·마켓 앱이 iframe 이라 부모의 <style> 이 안 닿는다.
   미니앱은 <link rel="stylesheet" href="/css/theme.css"> 한 줄 + /css/theme.js 만 붙이면 따라온다.

   ▸ 선택자는 html/body[data-theme] (0,1,1) — 각 앱의 :root (0,1,0) 를 순서와 무관하게 이긴다.
     html 에도 거는 이유: 사용자 정의 속성은 위로 안 올라간다. html{background:var(--bg)} 를 쓰는
     앱(교실 등)은 body 에만 걸면 화면 아래쪽에 옛 배경색이 남는다.
     그래서 미니앱은 자기 :root 를 지울 필요가 없고, 테마를 안 고르면(기본) 원래 색 그대로다.
   ▸ 토큰 이름이 두 벌인 이유: 메인은 --bg-color/--accent-primary, 2026-08 이후 새 앱은
     --bg/--accent. 어느 쪽 이름을 쓰든 같은 값이 나오게 두 이름 다 적는다.
   ▸ 명단 초록(--teal #10B981)·상태색은 테마를 안 탄다(구글 테마의 4색만 예외).

   같은 문법으로 색만 바꾼다: 배경은 그 색의 아주 옅은 틴트(순색 파스텔 금지), 카드는 흰색,
   본문 잉크는 같은 계열의 어두운 저채도, 액센트는 흰 글씨가 얹혀도 4.5:1 이 나오는 깊이까지.
   전 조합 WCAG AA 검증: node scripts/theme-contrast.js fails
*/

/* 모던 — 순백 + 잉크 뉴트럴 */
html[data-theme="white"], body[data-theme="white"] {
  --bg-color:#FBFBFC; --text-main:#18181B; --text-muted:#6B6B74;
  --accent-primary:#27272A; --accent-secondary:#52525B;
  --card-bg:#FFFFFF; --border-color:#E4E4E7;
  --soft:#F5F5F6; --soft-accent:#F1F1F2;
  --terra-soft:#F1F1F2; --terra-ink:#3F3F46;
  /* 새 앱 이름 별칭 */
  --bg:#FBFBFC; --card:#FFFFFF; --ink:#18181B; --muted:#6B6B74; --line:#E4E4E7;
  --accent:#27272A; --accent-ink:#3F3F46; --accent-soft:#F1F1F2;
  --ink2:#18181B; --ink-2:#6B6B74; --faint:#6B6B74; --light:#6B6B74;
  --line2:#F5F5F6; --line-2:#F5F5F6; --soft2:#F5F5F6; --paper:#FBFBFC; --accent-d:#3F3F46;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#27272A; --blue-ink:#3F3F46; --blue-soft:#F1F1F2; --blue-soft2:#F5F5F6;
  --navy:#18181B; --navy2:#6B6B74; --star:#27272A; --amber:#27272A;
}

/* 쪽빛 — 깊은 인디고 (옛 인디고+블루 통합) */
html[data-theme="bw"], body[data-theme="bw"] {
  --bg-color:#FAFAFE; --text-main:#1B1B33; --text-muted:#5B5F82;
  --accent-primary:#4F46E5; --accent-secondary:#8B87EE;
  --card-bg:#FFFFFF; --border-color:#E3E4F4;
  --soft:#F4F5FC; --soft-accent:#ECEDFB;
  --terra-soft:#ECEDFB; --terra-ink:#4338CA;
  /* 새 앱 이름 별칭 */
  --bg:#FAFAFE; --card:#FFFFFF; --ink:#1B1B33; --muted:#5B5F82; --line:#E3E4F4;
  --accent:#4F46E5; --accent-ink:#4338CA; --accent-soft:#ECEDFB;
  --ink2:#1B1B33; --ink-2:#5B5F82; --faint:#5B5F82; --light:#5B5F82;
  --line2:#F4F5FC; --line-2:#F4F5FC; --soft2:#F4F5FC; --paper:#FAFAFE; --accent-d:#4338CA;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#4F46E5; --blue-ink:#4338CA; --blue-soft:#ECEDFB; --blue-soft2:#F4F5FC;
  --navy:#1B1B33; --navy2:#5B5F82; --star:#4F46E5; --amber:#4F46E5;
}

/* 자두 — 톤다운 보라 */
html[data-theme="lavender"], body[data-theme="lavender"] {
  --bg-color:#FCFBFE; --text-main:#241B33; --text-muted:#695A83;
  --accent-primary:#6D3B96; --accent-secondary:#A583C7;
  --card-bg:#FFFFFF; --border-color:#E9E4F3;
  --soft:#F7F4FB; --soft-accent:#F1EBF9;
  --terra-soft:#F1EBF9; --terra-ink:#653890;
  /* 새 앱 이름 별칭 */
  --bg:#FCFBFE; --card:#FFFFFF; --ink:#241B33; --muted:#695A83; --line:#E9E4F3;
  --accent:#6D3B96; --accent-ink:#653890; --accent-soft:#F1EBF9;
  --ink2:#241B33; --ink-2:#695A83; --faint:#695A83; --light:#695A83;
  --line2:#F7F4FB; --line-2:#F7F4FB; --soft2:#F7F4FB; --paper:#FCFBFE; --accent-d:#653890;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#6D3B96; --blue-ink:#653890; --blue-soft:#F1EBF9; --blue-soft2:#F7F4FB;
  --navy:#241B33; --navy2:#695A83; --star:#6D3B96; --amber:#6D3B96;
}

/* 안개 — 차분한 회청 (옛 슬레이트+베이비블루 통합) */
html[data-theme="slate"], body[data-theme="slate"] {
  --bg-color:#FAFBFC; --text-main:#1C222B; --text-muted:#5B6675;
  --accent-primary:#41505F; --accent-secondary:#8593A3;
  --card-bg:#FFFFFF; --border-color:#E4E8EE;
  --soft:#F4F6F9; --soft-accent:#EAEEF4;
  --terra-soft:#EAEEF4; --terra-ink:#3C4A5C;
  /* 새 앱 이름 별칭 */
  --bg:#FAFBFC; --card:#FFFFFF; --ink:#1C222B; --muted:#5B6675; --line:#E4E8EE;
  --accent:#41505F; --accent-ink:#3C4A5C; --accent-soft:#EAEEF4;
  --ink2:#1C222B; --ink-2:#5B6675; --faint:#5B6675; --light:#5B6675;
  --line2:#F4F6F9; --line-2:#F4F6F9; --soft2:#F4F6F9; --paper:#FAFBFC; --accent-d:#3C4A5C;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#41505F; --blue-ink:#3C4A5C; --blue-soft:#EAEEF4; --blue-soft2:#F4F6F9;
  --navy:#1C222B; --navy2:#5B6675; --star:#41505F; --amber:#41505F;
}

/* 청록 — 차분한 딥틸 (옛 포레스트+틸 통합. 성공 초록과 안 헷갈리게) */
html[data-theme="teal"], body[data-theme="teal"] {
  --bg-color:#F9FCFC; --text-main:#122A28; --text-muted:#4A6B68;
  --accent-primary:#0F766E; --accent-secondary:#5CA9A2;
  --card-bg:#FFFFFF; --border-color:#DCEBE9;
  --soft:#F2F8F7; --soft-accent:#E6F3F1;
  --terra-soft:#E6F3F1; --terra-ink:#116A63;
  /* 새 앱 이름 별칭 */
  --bg:#F9FCFC; --card:#FFFFFF; --ink:#122A28; --muted:#4A6B68; --line:#DCEBE9;
  --accent:#0F766E; --accent-ink:#116A63; --accent-soft:#E6F3F1;
  --ink2:#122A28; --ink-2:#4A6B68; --faint:#4A6B68; --light:#4A6B68;
  --line2:#F2F8F7; --line-2:#F2F8F7; --soft2:#F2F8F7; --paper:#F9FCFC; --accent-d:#116A63;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#0F766E; --blue-ink:#116A63; --blue-soft:#E6F3F1; --blue-soft2:#F2F8F7;
  --navy:#122A28; --navy2:#4A6B68; --star:#0F766E; --amber:#0F766E;
}

/* 모란 — 톤다운 로즈 (옛 로즈+베이비핑크 통합) */
html[data-theme="blush"], body[data-theme="blush"] {
  --bg-color:#FDFAFB; --text-main:#2E1A22; --text-muted:#7B5263;
  --accent-primary:#9F3A5F; --accent-secondary:#C88099;
  --card-bg:#FFFFFF; --border-color:#F0E1E7;
  --soft:#FAF4F6; --soft-accent:#F6EAEF;
  --terra-soft:#F6EAEF; --terra-ink:#96375A;
  /* 새 앱 이름 별칭 */
  --bg:#FDFAFB; --card:#FFFFFF; --ink:#2E1A22; --muted:#7B5263; --line:#F0E1E7;
  --accent:#9F3A5F; --accent-ink:#96375A; --accent-soft:#F6EAEF;
  --ink2:#2E1A22; --ink-2:#7B5263; --faint:#7B5263; --light:#7B5263;
  --line2:#FAF4F6; --line-2:#FAF4F6; --soft2:#FAF4F6; --paper:#FDFAFB; --accent-d:#96375A;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#9F3A5F; --blue-ink:#96375A; --blue-soft:#F6EAEF; --blue-soft2:#FAF4F6;
  --navy:#2E1A22; --navy2:#7B5263; --star:#9F3A5F; --amber:#9F3A5F;
}

/* 구글 — 구글 문서 옆에 두고 쓰는 교사용. 상태색도 구글 4색 */
html[data-theme="google"], body[data-theme="google"] {
  --bg-color:#FFFFFF; --text-main:#202124; --text-muted:#5F6368;
  --accent-primary:#1967D2; --accent-secondary:#4285F4;
  --card-bg:#FFFFFF; --border-color:#DADCE0;
  --soft:#F8F9FA; --soft-accent:#E8F0FE;
  --terra-soft:#E8F0FE; --terra-ink:#1967D2;
  --status-red:#EA4335; --status-yellow:#FBBC05; --status-green:#34A853;
  /* 새 앱 이름 별칭 */
  --bg:#FFFFFF; --card:#FFFFFF; --ink:#202124; --muted:#5F6368; --line:#DADCE0;
  --accent:#1967D2; --accent-ink:#1967D2; --accent-soft:#E8F0FE;
  --ink2:#202124; --ink-2:#5F6368; --faint:#5F6368; --light:#5F6368;
  --line2:#F8F9FA; --line-2:#F8F9FA; --soft2:#F8F9FA; --paper:#FFFFFF; --accent-d:#1967D2;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#1967D2; --blue-ink:#1967D2; --blue-soft:#E8F0FE; --blue-soft2:#F8F9FA;
  --navy:#202124; --navy2:#5F6368; --star:#1967D2; --amber:#1967D2;
}

/* 밤 — 웜 다크. ⚠ 본 앱 테마 목록에는 아직 안 넣는다(인라인 흰 배경 338곳). 위젯 다크판 원본 */
html[data-theme="night"], body[data-theme="night"] {
  --bg-color:#16130F; --text-main:#EFE9E0; --text-muted:#A79C8D;
  --accent-primary:#E5873C; --accent-secondary:#C27330;
  --card-bg:#1F1B16; --border-color:#332C24;
  --soft:#1B1712; --soft-accent:#2A231B;
  --terra-soft:#2A231B; --terra-ink:#E9A15F;
  /* 새 앱 이름 별칭 */
  --bg:#16130F; --card:#1F1B16; --ink:#EFE9E0; --muted:#A79C8D; --line:#332C24;
  --accent:#E5873C; --accent-ink:#E9A15F; --accent-soft:#2A231B;
  --ink2:#EFE9E0; --ink-2:#A79C8D; --faint:#A79C8D; --light:#A79C8D;
  --line2:#1B1712; --line-2:#1B1712; --soft2:#1B1712; --paper:#16130F; --accent-d:#E9A15F;
  /* 교실 앱이 물고 있는 옛 별칭 — 전부 액센트로 수렴 */
  --blue:#E5873C; --blue-ink:#E9A15F; --blue-soft:#2A231B; --blue-soft2:#1B1712;
  --navy:#EFE9E0; --navy2:#A79C8D; --star:#E5873C; --amber:#E5873C;
}

/* ══ 글꼴 ══ 색 테마와 독립(po_font). 실제 글꼴 파일은 고른 사람만 받는다 — /css/theme.js 가
   <link> 를 그때 끼워 넣는다. 기본(프리텐다드)을 쓰는 사람에겐 추가 요청이 0건이다.
   가중치는 400·700만 받는다(900 은 700 으로 떨어진다) — 한글 글꼴은 굵기 한 벌이 곧 용량이다. */
body[data-font="gothic"]  { font-family:'Gothic A1','Pretendard',sans-serif; }   /* 고딕A1 — 넓고 또렷, 큰 글씨 */
body[data-font="batang"]  { font-family:'Gowun Batang','Pretendard',serif; }     /* 고운바탕 — 명조, 문서 느낌 */
body[data-font="dodum"]   { font-family:'Gowun Dodum','Pretendard',sans-serif; } /* 고운돋움 — 부드러운 고딕 */
