/* Enia 테마 — ENIASOFT 디자인 시스템(브랜드 #20a7d4 · 액센트 #f29919) 적용, html[data-theme="enia"] 로 app.css/admin.css 변수 덮어쓰기 */

/* ═══ 1. 토큰 ═══ */
html[data-theme="enia"]{
  /* 진한 브랜드 계열 — 헤더·GNB·사이드바 */
  --navy:#176F8F; --navy-d:#123F4E; --navy-l:#1B8CB3; --navy-dd:#0D2F3A;
  /* 브랜드 블루 */
  --blue:#20A7D4; --blue-bg:#EAF7FB; --blue-bd:#9DDAED;
  /* 보조 색 — 상태 토큰 기반 */
  --teal:#1FA971;  --teal-bg:#E7F6EF;
  --amber:#D07D0E; --amber-bg:#FEF4E6;
  --red:#E2483D;   --red-bg:#FBEAE9;
  --green:#1FA971; --green-bg:#E7F6EF;
  /* 액센트(오렌지) — 주 CTA·활성 강조에만 */
  --gold:#F29919;
  /* 뉴트럴 텍스트·선·표면 */
  --ink:#1D1F21; --txt:#1D1F21; --sub:#6C7176;
  --line:#DDE0E3; --line-d:#C4C8CD;
  --bg:#F7F8F9; --card:#FFFFFF;
  --shadow:0 1px 3px rgba(29,31,33,.06),0 8px 24px rgba(20,88,111,.08);
  --r:14px;

  /* 테마 내부 보조 토큰 */
  --t-alt:#F2F5F7;
  --t-soft:#EEF0F2;
  --t-hover:#F5FBFD;
  --t-muted:#8B9096;
  --t-accent:#F29919;
  --t-accent-soft:#FEF4E6;
  --t-on-accent:#3A2409;      /* 오렌지 위 텍스트는 진한 브라운 */
  --t-nav-ink:#CFEAF4;
  --t-nav-ink-2:#8FC4D8;
  --t-nav-on-bg:rgba(242,153,25,.18);
  --t-scrim:rgba(18,63,78,.42);
  --t-focus:rgba(32,167,212,.45);

  --t-font-body:'Manrope','Pretendard Variable',Pretendard,'Malgun Gothic',sans-serif;
  --t-font-display:'Poppins','Pretendard Variable',Pretendard,'Malgun Gothic',sans-serif;
}

/* ═══ 2. 타이포그래피 — 한글은 Pretendard 폴백이 받는다 ═══ */
html[data-theme="enia"] body,
html[data-theme="enia"] input,
html[data-theme="enia"] select,
html[data-theme="enia"] textarea,
html[data-theme="enia"] button{font-family:var(--t-font-body)}
html[data-theme="enia"] .page-title,
html[data-theme="enia"] .card-h h3,
html[data-theme="enia"] .sec-title,
html[data-theme="enia"] .modal-h h3,
html[data-theme="enia"] .modal .mh b,
html[data-theme="enia"] .brand-txt strong,
html[data-theme="enia"] .logo b,
html[data-theme="enia"] .pt-name,
html[data-theme="enia"] .kpi-box .v,
html[data-theme="enia"] .cal-head b{font-family:var(--t-font-display);letter-spacing:-.02em}

/* ═══ 3. 사용자 SPA(app.css) 하드코딩 색 보정 ═══ */
html[data-theme="enia"] body[data-app="user"] .topbar,
html[data-theme="enia"] body[data-app="user"] .snb,
html[data-theme="enia"] body[data-app="user"] .footer,
html[data-theme="enia"] body[data-app="user"] .modal,
html[data-theme="enia"] body[data-app="user"] .pt-body,
html[data-theme="enia"] body[data-app="user"] .inbox-item,
html[data-theme="enia"] body[data-app="user"] .sess,
html[data-theme="enia"] body[data-app="user"] .cal-nav,
html[data-theme="enia"] body[data-app="user"] .pager button,
html[data-theme="enia"] body[data-app="user"] .btn-o,
html[data-theme="enia"] body[data-app="user"] .ctabs button.on,
html[data-theme="enia"] body[data-app="user"] .f input[type=text],
html[data-theme="enia"] body[data-app="user"] .f input[type=date],
html[data-theme="enia"] body[data-app="user"] .f input[type=number],
html[data-theme="enia"] body[data-app="user"] .f select{background:var(--card)}

html[data-theme="enia"] body[data-app="user"] .tbl thead th,
html[data-theme="enia"] body[data-app="user"] .ftbl th,
html[data-theme="enia"] body[data-app="user"] .epi-h,
html[data-theme="enia"] body[data-app="user"] .cal th,
html[data-theme="enia"] body[data-app="user"] .file-mock,
html[data-theme="enia"] body[data-app="user"] .sess.todo{background:var(--t-alt)}

html[data-theme="enia"] body[data-app="user"] .tbl tbody tr:hover{background:var(--t-hover)}

html[data-theme="enia"] body[data-app="user"] .btn-g,
html[data-theme="enia"] body[data-app="user"] .bdg.closed,
html[data-theme="enia"] body[data-app="user"] .dday.ok,
html[data-theme="enia"] body[data-app="user"] .ctabs,
html[data-theme="enia"] body[data-app="user"] .gauge .g-bar,
html[data-theme="enia"] body[data-app="user"] .bar-row .bt,
html[data-theme="enia"] body[data-app="user"] .life-line,
html[data-theme="enia"] body[data-app="user"] .svc-pill.off,
html[data-theme="enia"] body[data-app="user"] .modal-x:hover{background:var(--t-soft)}
html[data-theme="enia"] body[data-app="user"] .bdg.closed,
html[data-theme="enia"] body[data-app="user"] .dday.ok,
html[data-theme="enia"] body[data-app="user"] .svc-pill.off{color:var(--t-muted)}
html[data-theme="enia"] body[data-app="user"] .svc-pill.off{border-color:var(--line)}

html[data-theme="enia"] body[data-app="user"] .last-login,
html[data-theme="enia"] body[data-app="user"] .bread,
html[data-theme="enia"] body[data-app="user"] .tbl .muted,
html[data-theme="enia"] body[data-app="user"] .kpi-box .d,
html[data-theme="enia"] body[data-app="user"] .hint,
html[data-theme="enia"] body[data-app="user"] .life-yr i,
html[data-theme="enia"] body[data-app="user"] .sess .d,
html[data-theme="enia"] body[data-app="user"] .footer-in,
html[data-theme="enia"] body[data-app="user"] ::placeholder{color:var(--t-muted)}

/* GNB — 활성 언더라인만 액센트(화면당 한 번) */
html[data-theme="enia"] body[data-app="user"] .gnb a{color:var(--t-nav-ink)}
html[data-theme="enia"] body[data-app="user"] .gnb a.on::after{background:var(--t-accent)}
html[data-theme="enia"] body[data-app="user"] .pt-code{color:var(--t-nav-ink-2)}
html[data-theme="enia"] body[data-app="user"] .pt-meta{color:var(--t-nav-ink)}

/* 나머지 강조 자리는 브랜드 블루로 — 오렌지 남용 방지 */
html[data-theme="enia"] body[data-app="user"] .kpi-box.a::before{background:var(--t-accent)}
html[data-theme="enia"] body[data-app="user"] .gauge.warn .g-fill{background:var(--amber)}

html[data-theme="enia"] body[data-app="user"] .life-yr,
html[data-theme="enia"] body[data-app="user"] .life-lbl::before{background:var(--line-d)}
html[data-theme="enia"] body[data-app="user"] .sess.done{border-color:var(--green)}
html[data-theme="enia"] body[data-app="user"] .alert-strip{border-color:var(--red)}
html[data-theme="enia"] body[data-app="user"] .ctabs button.on{box-shadow:0 1px 4px rgba(20,88,111,.14)}

/* 포커스 링은 항상 노출(접근성) */
html[data-theme="enia"] body[data-app="user"] .f input:focus,
html[data-theme="enia"] body[data-app="user"] .f select:focus,
html[data-theme="enia"] body[data-app="user"] textarea:focus{outline:3px solid var(--t-focus);border-color:var(--blue)}
html[data-theme="enia"] body[data-app="user"] .modal-bg{background:var(--t-scrim)}

/* 라운드 — 8~16px */
html[data-theme="enia"] body[data-app="user"] .btn{border-radius:10px}
html[data-theme="enia"] body[data-app="user"] .modal{border-radius:16px}
html[data-theme="enia"] body[data-app="user"] .brand-mark{border-radius:14px}

/* 서비스 칩 */
html[data-theme="enia"] body[data-app="user"] .ch.c1{color:#1B8CB3;border-color:#9DDAED;background:#EAF7FB}
html[data-theme="enia"] body[data-app="user"] .ch.c2{color:#D07D0E;border-color:#F9CB85;background:#FEF4E6}
html[data-theme="enia"] body[data-app="user"] .ch.c3{color:#1FA971;border-color:#A9E0C6;background:#E7F6EF}
html[data-theme="enia"] body[data-app="user"] .ch.c4{color:#52565A;border-color:#C4C8CD;background:#EEF0F2}

/* 일정 카테고리 */
html[data-theme="enia"] body[data-app="user"] .evt.e1{background:#1B8CB3}
html[data-theme="enia"] body[data-app="user"] .evt.e2{background:#D07D0E}
html[data-theme="enia"] body[data-app="user"] .evt.e3{background:#176F8F}
html[data-theme="enia"] body[data-app="user"] .evt.e4{background:#20A7D4}
html[data-theme="enia"] body[data-app="user"] .evt.e5{background:#8B9096}
html[data-theme="enia"] body[data-app="user"] .evt.e6{background:#E2483D}
html[data-theme="enia"] body[data-app="user"] .evt.e7{background:#1FA971}

/* ═══ 4. 관리자 콘솔(admin.css) 하드코딩 색 보정 ═══ */
html[data-theme="enia"] body[data-app="admin"] .topbar,
html[data-theme="enia"] body[data-app="admin"] .modal,
html[data-theme="enia"] body[data-app="admin"] .kpi-box,
html[data-theme="enia"] body[data-app="admin"] .searchbar,
html[data-theme="enia"] body[data-app="admin"] .btn-o,
html[data-theme="enia"] body[data-app="admin"] .pager button,
html[data-theme="enia"] body[data-app="admin"] input,
html[data-theme="enia"] body[data-app="admin"] select,
html[data-theme="enia"] body[data-app="admin"] textarea{background:var(--card)}
html[data-theme="enia"] body[data-app="admin"] .donut::after{background:var(--card)}

html[data-theme="enia"] body[data-app="admin"] .tbl th,
html[data-theme="enia"] body[data-app="admin"] .ftbl th,
html[data-theme="enia"] body[data-app="admin"] .mtx th,
html[data-theme="enia"] body[data-app="admin"] .batch{background:var(--t-alt)}
html[data-theme="enia"] body[data-app="admin"] .tbl tr:hover td{background:var(--t-hover)}
html[data-theme="enia"] body[data-app="admin"] .tbl td{border-bottom-color:var(--line)}

html[data-theme="enia"] body[data-app="admin"] .btn-g,
html[data-theme="enia"] body[data-app="admin"] .bdg.off,
html[data-theme="enia"] body[data-app="admin"] .gauge,
html[data-theme="enia"] body[data-app="admin"] .bar-row .tr,
html[data-theme="enia"] body[data-app="admin"] .sess,
html[data-theme="enia"] body[data-app="admin"] .file-chip{background:var(--t-soft)}
html[data-theme="enia"] body[data-app="admin"] .file-chip{border-color:var(--line)}
html[data-theme="enia"] body[data-app="admin"] .bdg.info,
html[data-theme="enia"] body[data-app="admin"] .tag-info{background:var(--blue-bg);border-color:var(--blue-bd);color:var(--navy)}
html[data-theme="enia"] body[data-app="admin"] .bdg.navy,
html[data-theme="enia"] body[data-app="admin"] .chip{background:var(--blue-bg);border-color:var(--blue-bd);color:var(--navy)}
html[data-theme="enia"] body[data-app="admin"] .batch .ic{background:var(--blue-bg)}
html[data-theme="enia"] body[data-app="admin"] .kpi-box .d,
html[data-theme="enia"] body[data-app="admin"] .hint,
html[data-theme="enia"] body[data-app="admin"] ::placeholder{color:var(--t-muted)}
html[data-theme="enia"] body[data-app="admin"] input,
html[data-theme="enia"] body[data-app="admin"] select,
html[data-theme="enia"] body[data-app="admin"] textarea{border-color:var(--line-d)}
html[data-theme="enia"] body[data-app="admin"] input:focus,
html[data-theme="enia"] body[data-app="admin"] select:focus,
html[data-theme="enia"] body[data-app="admin"] textarea:focus{outline:3px solid var(--t-focus);border-color:var(--blue)}
html[data-theme="enia"] body[data-app="admin"] .modal-bg{background:var(--t-scrim)}
html[data-theme="enia"] body[data-app="admin"] .btn-p:hover{background:var(--navy-l)}
html[data-theme="enia"] body[data-app="admin"] .btn-o{color:var(--navy);border-color:var(--line-d)}
html[data-theme="enia"] body[data-app="admin"] .btn-o:hover{background:var(--t-alt)}
html[data-theme="enia"] body[data-app="admin"] .modal .mh button{color:var(--t-muted)}
html[data-theme="enia"] body[data-app="admin"] .btn{border-radius:10px}

/* 사이드바 */
html[data-theme="enia"] body[data-app="admin"] .snav a{color:var(--t-nav-ink)}
html[data-theme="enia"] body[data-app="admin"] .snav .grp,
html[data-theme="enia"] body[data-app="admin"] .side .logo .s,
html[data-theme="enia"] body[data-app="admin"] .side .foot{color:var(--t-nav-ink-2)}
html[data-theme="enia"] body[data-app="admin"] .snav a.on{background:var(--t-nav-on-bg);border-left-color:var(--gold)}
html[data-theme="enia"] body[data-app="admin"] .side .logo .adm{background:var(--gold);color:var(--t-on-accent)}

/* 액센트 — 주 CTA만 오렌지, 장식 바는 브랜드 블루 */
html[data-theme="enia"] body[data-app="admin"] .btn-r{background:var(--gold);color:var(--t-on-accent)}
html[data-theme="enia"] body[data-app="admin"] .card-h .bar,
html[data-theme="enia"] body[data-app="admin"] .sec-title::before{background:var(--blue)}
html[data-theme="enia"] body[data-app="admin"] .kpi-box.a::before{background:var(--gold)}
html[data-theme="enia"] body[data-app="admin"] .gauge.warn i{background:var(--amber)}

/* ═══ 5. 로그인 페이지 ═══ */
html[data-theme="enia"] body[data-app="user"] .msg{border-color:var(--red)}
html[data-theme="enia"] body[data-app="user"] .login-foot{color:var(--t-muted)}
html[data-theme="enia"] body[data-app="admin"] .login-card{
  background:linear-gradient(165deg,var(--navy) 0%,var(--navy-dd) 100%);
  border-color:rgba(242,153,25,.28);
}
html[data-theme="enia"] body[data-app="admin"] .env-badge{
  background:rgba(242,153,25,.14);color:#F6B44F;border-color:rgba(242,153,25,.38);
}
html[data-theme="enia"] body[data-app="admin"] .field input:focus{
  border-color:var(--blue);box-shadow:0 0 0 3px var(--t-focus);
}
html[data-theme="enia"] body[data-app="admin"] .change-guide{
  color:#F9CB85;background:rgba(242,153,25,.12);border-color:rgba(242,153,25,.32);
}
html[data-theme="enia"] body[data-app="admin"] .logo .s,
html[data-theme="enia"] body[data-app="admin"] .hint,
html[data-theme="enia"] body[data-app="admin"] .security-note{color:var(--t-nav-ink-2)}

/* ═══ 6. 테마 스위처 — 라운드만 테마값으로 ═══ */
html[data-theme="enia"] .theme-switch select{border-radius:8px}
