/* ============================================================
   소중함인사이트 테마엔진 v1.1 (2026-07-05)
   매달 자동 UI/UX 업그레이드.
   2축 변형: [data-theme]=팔레트(색) · [data-style]=레이아웃/타이포 무드
   creatip.co.kr 딥다이브 반영: editorial=미니멀·큰타이포·최대여백(기본 무드)
   구조/콘텐츠 불변, 색·무드·애니만 변경 = 안전·무회귀.
   ============================================================ */

/* ---- 기본 스케일(무드) = editorial (creatip 스타일) ---- */
:root{
  /* 색(폴백=aurora) */
  --te-bg:#070a14; --te-surface:#0f1524; --te-card:#141c2e; --te-card2:#18213a;
  --te-line:rgba(255,255,255,.09); --te-line2:rgba(0,229,199,.30);
  --te-accent:#00e5c7; --te-accent2:#4f8cff; --te-gold:#fbbf24;
  --te-text:#eaf0fb; --te-muted:#96a3bf; --te-muted2:#6b7794;
  --te-grad:linear-gradient(135deg,#00e5c7,#4f8cff); --te-btn-ink:#04121a;
  /* 스케일(무드=editorial 기본: 큰타이포·넉넉여백·타이트트래킹) */
  --te-maxw:1120px; --te-gutter:24px;
  --te-section:104px;                 /* 섹션 상하 여백(여백감) */
  --te-h1:clamp(2.6rem,6.2vw,5rem);   /* 대형 임팩트 헤드라인 */
  --te-h2:clamp(1.9rem,4vw,3rem);
  --te-lead:clamp(1.05rem,1.6vw,1.25rem);
  --te-fw-head:800; --te-tracking:-.03em; --te-lh-head:1.12;
  --te-radius:18px; --te-card-pad:30px;
  --te-reveal-y:26px; --te-reveal-dur:.7s; --te-ease:cubic-bezier(.2,.7,.2,1);
}

/* ---- 무드(레이아웃/타이포) 3종 ---- */
[data-style="editorial"]{ /* creatip: 미니멀·초대형타이포·최대여백 */
  --te-section:112px; --te-h1:clamp(2.8rem,6.6vw,5.4rem); --te-h2:clamp(2rem,4.2vw,3.2rem);
  --te-fw-head:900; --te-tracking:-.035em; --te-lh-head:1.08; --te-radius:20px; --te-card-pad:34px;
}
[data-style="modern"]{  /* 카드·그라데이션·중간여백(전환친화) */
  --te-section:76px; --te-h1:clamp(2.1rem,4.8vw,3.4rem); --te-h2:clamp(1.6rem,3.4vw,2.35rem);
  --te-fw-head:800; --te-tracking:-.02em; --te-lh-head:1.2; --te-radius:16px; --te-card-pad:26px;
}
[data-style="bold"]{    /* 초대형·고대비·꽉찬 */
  --te-section:96px; --te-h1:clamp(3rem,7.5vw,6rem); --te-h2:clamp(2.1rem,4.6vw,3.4rem);
  --te-fw-head:900; --te-tracking:-.04em; --te-lh-head:1.02; --te-radius:22px; --te-card-pad:32px;
}

/* ---- 팔레트 프리셋 10종 (색만) ---- */
[data-theme="aurora"]{--te-bg:#070a14;--te-surface:#0f1524;--te-card:#141c2e;--te-card2:#18213a;--te-line:rgba(255,255,255,.09);--te-line2:rgba(0,229,199,.30);--te-accent:#00e5c7;--te-accent2:#4f8cff;--te-gold:#fbbf24;--te-text:#eaf0fb;--te-muted:#96a3bf;--te-muted2:#6b7794;--te-grad:linear-gradient(135deg,#00e5c7,#4f8cff);--te-btn-ink:#04121a}
[data-theme="corporate"]{--te-bg:#081019;--te-surface:#0d1a27;--te-card:#112334;--te-card2:#152a3d;--te-line:rgba(255,255,255,.08);--te-line2:rgba(16,185,129,.30);--te-accent:#10b981;--te-accent2:#0ea5e9;--te-gold:#f0b429;--te-text:#e8f0f7;--te-muted:#8ea3b6;--te-muted2:#617488;--te-grad:linear-gradient(135deg,#10b981,#0ea5e9);--te-btn-ink:#04140d}
[data-theme="editorial"]{--te-bg:#faf7f2;--te-surface:#ffffff;--te-card:#ffffff;--te-card2:#f3eee6;--te-line:rgba(33,28,23,.10);--te-line2:rgba(191,90,52,.28);--te-accent:#bf5a34;--te-accent2:#b0863f;--te-gold:#b0863f;--te-text:#211c17;--te-muted:#7a7168;--te-muted2:#a89e92;--te-grad:linear-gradient(135deg,#bf5a34,#d98a4a);--te-btn-ink:#ffffff}
[data-theme="midnight"]{--te-bg:#0a0a12;--te-surface:#12121f;--te-card:#17172a;--te-card2:#1d1d38;--te-line:rgba(255,255,255,.09);--te-line2:rgba(139,92,246,.34);--te-accent:#a78bfa;--te-accent2:#f472b6;--te-gold:#fbbf24;--te-text:#efeaf7;--te-muted:#a3a0c0;--te-muted2:#726f92;--te-grad:linear-gradient(135deg,#a78bfa,#f472b6);--te-btn-ink:#140a24}
[data-theme="sunrise"]{--te-bg:#0f0a08;--te-surface:#1a120d;--te-card:#211711;--te-card2:#2a1d15;--te-line:rgba(255,255,255,.09);--te-line2:rgba(251,146,60,.34);--te-accent:#fb923c;--te-accent2:#f43f5e;--te-gold:#fbbf24;--te-text:#f7ede6;--te-muted:#b8a99d;--te-muted2:#8a7466;--te-grad:linear-gradient(135deg,#fb923c,#f43f5e);--te-btn-ink:#231007}
[data-theme="forest"]{--te-bg:#07120d;--te-surface:#0d1d15;--te-card:#11261b;--te-card2:#153021;--te-line:rgba(255,255,255,.08);--te-line2:rgba(132,204,22,.32);--te-accent:#84cc16;--te-accent2:#22d3ee;--te-gold:#fbbf24;--te-text:#e9f5ea;--te-muted:#9db6a4;--te-muted2:#6a8574;--te-grad:linear-gradient(135deg,#84cc16,#22d3ee);--te-btn-ink:#0c1a05}
[data-theme="rose"]{--te-bg:#12090c;--te-surface:#1e0f14;--te-card:#26141a;--te-card2:#301820;--te-line:rgba(255,255,255,.09);--te-line2:rgba(244,114,182,.32);--te-accent:#fb7185;--te-accent2:#f0b429;--te-gold:#f0b429;--te-text:#f7e9ee;--te-muted:#c0a3ad;--te-muted2:#8a6672;--te-grad:linear-gradient(135deg,#fb7185,#f0b429);--te-btn-ink:#230a10}
[data-theme="ocean"]{--te-bg:#061019;--te-surface:#0a1a2b;--te-card:#0e2236;--te-card2:#122b44;--te-line:rgba(255,255,255,.09);--te-line2:rgba(56,189,248,.32);--te-accent:#38bdf8;--te-accent2:#818cf8;--te-gold:#fbbf24;--te-text:#e6f1fb;--te-muted:#8ea6bd;--te-muted2:#5f7893;--te-grad:linear-gradient(135deg,#38bdf8,#818cf8);--te-btn-ink:#051622}
/* creatip B&W 프리미엄 2종 */
[data-theme="noir"]{--te-bg:#0a0a0a;--te-surface:#131313;--te-card:#171717;--te-card2:#1e1e1e;--te-line:rgba(255,255,255,.11);--te-line2:rgba(255,255,255,.28);--te-accent:#ffffff;--te-accent2:#c9c9c9;--te-gold:#e5e5e5;--te-text:#f2f2f2;--te-muted:#9a9a9a;--te-muted2:#6a6a6a;--te-grad:linear-gradient(135deg,#ffffff,#b8b8b8);--te-btn-ink:#0a0a0a}
[data-theme="ivory"]{--te-bg:#f6f5f2;--te-surface:#ffffff;--te-card:#ffffff;--te-card2:#eeece7;--te-line:rgba(0,0,0,.12);--te-line2:rgba(0,0,0,.55);--te-accent:#111111;--te-accent2:#444444;--te-gold:#222;--te-text:#111111;--te-muted:#6b6b6b;--te-muted2:#9a9a9a;--te-grad:linear-gradient(135deg,#111111,#555555);--te-btn-ink:#ffffff}

/* ---- 애니메이션 플레이버 ---- */
[data-anim="smooth"]{--te-reveal-dur:.7s;--te-reveal-y:26px;--te-ease:cubic-bezier(.2,.7,.2,1)}
[data-anim="bold"]  {--te-reveal-dur:.55s;--te-reveal-y:44px;--te-ease:cubic-bezier(.16,1,.3,1)}
[data-anim="soft"]  {--te-reveal-dur:.95s;--te-reveal-y:16px;--te-ease:cubic-bezier(.33,1,.68,1)}

/* ---- 레이아웃/타이포 헬퍼 (스케일 변수 사용) ---- */
.te-wrap{max-width:var(--te-maxw);margin:0 auto;padding:0 var(--te-gutter)}
.te-section{padding:var(--te-section) 0}
.te-h1{font-size:var(--te-h1);font-weight:var(--te-fw-head);letter-spacing:var(--te-tracking);line-height:var(--te-lh-head)}
.te-h2{font-size:var(--te-h2);font-weight:var(--te-fw-head);letter-spacing:var(--te-tracking);line-height:1.2}
.te-lead{font-size:var(--te-lead);color:var(--te-muted);line-height:1.75}

/* ---- 컴포넌트 (테마 변수 기반) ---- */
.te-btn{display:inline-flex;align-items:center;gap:8px;font-weight:800;border:none;border-radius:13px;padding:15px 28px;font-size:1rem;cursor:pointer;transition:transform .18s,box-shadow .18s;background:var(--te-grad);color:var(--te-btn-ink);box-shadow:0 10px 30px var(--te-line2)}
.te-btn:hover{transform:translateY(-3px);box-shadow:0 16px 42px var(--te-line2)}
.te-btn-ghost{background:transparent;color:var(--te-text);border:1px solid var(--te-line)}
.te-card{background:var(--te-card);border:1px solid var(--te-line);border-radius:var(--te-radius);padding:var(--te-card-pad);transition:transform .2s,box-shadow .2s,border-color .2s}
.te-card:hover{transform:translateY(-5px);border-color:var(--te-line2);box-shadow:0 18px 40px rgba(0,0,0,.28)}
.te-badge{display:inline-flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--te-accent) 12%,transparent);border:1px solid var(--te-line2);color:var(--te-accent);border-radius:100px;padding:7px 15px;font-size:.8rem;font-weight:700}
.te-grad-text{background:var(--te-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.te-accent{color:var(--te-accent)}
.te-reveal{opacity:0;transform:translateY(var(--te-reveal-y));transition:opacity var(--te-reveal-dur) var(--te-ease),transform var(--te-reveal-dur) var(--te-ease)}
.te-reveal.on{opacity:1;transform:none}
html.te-ready body{transition:background-color .6s ease,color .6s ease}
