/* ============================================================
   AUTOLINK 제안서 — 디자인 테마 3종 (Tweaks '디자인' 토글)
   기존 토큰을 body 클래스로 오버라이드. 콘텐츠/레이아웃 불변.
   ── theme-toss : 핀테크 미니멀 (흰 지면 · 비비드 블루 · 큰 라운드)
   ── theme-aws  : 클라우드 엔터프라이즈 (스퀴드 잉크 다크 · 오렌지)
   ── theme-ptr  : 데이터 인텔리전스 (블랙 · 모노 라벨 · 헤어라인)
   ============================================================ */

/* ---------- 공통: 다크 지면 테마(aws/ptr/기존 dark)의 시그널 칩 보정 ---------- */
.theme-aws, .theme-ptr, .theme-dark {
  --pos: oklch(0.72 0.11 165);
  --neg: oklch(0.70 0.14 25);
}
.theme-aws .logo, .theme-ptr .logo { filter: invert(1); }
.theme-aws .pill--over, .theme-ptr .pill--over, .theme-dark .pill--over { background: rgb(214 69 46 / 0.16); color: oklch(0.74 0.13 25); }
.theme-aws .pill--under, .theme-ptr .pill--under, .theme-dark .pill--under { background: rgb(214 158 46 / 0.14); color: oklch(0.78 0.11 80); }
.theme-aws .qchip--good, .theme-ptr .qchip--good, .theme-dark .qchip--good { background: rgb(46 168 120 / 0.16); color: oklch(0.78 0.10 165); }
.theme-aws .qchip--bad, .theme-ptr .qchip--bad, .theme-dark .qchip--bad { background: rgb(214 69 46 / 0.16); color: oklch(0.74 0.13 25); }
.theme-aws .heat .t--warn, .theme-ptr .heat .t--warn, .theme-dark .heat .t--warn { background: rgb(214 158 46 / 0.13); outline-color: oklch(0.60 0.10 80); }
.theme-aws .heat .t--risk, .theme-ptr .heat .t--risk, .theme-dark .heat .t--risk { background: rgb(214 69 46 / 0.13); outline-color: oklch(0.55 0.12 25); }
.theme-aws .dg-box--dark, .theme-ptr .dg-box--dark { outline: 1px solid var(--line-strong); }

/* ============================================================
   1) 토스 버전 — 핀테크 미니멀
   ============================================================ */
.theme-toss {
  --paper: #ffffff;
  --surface: #f2f4f6;
  --surface-2: #e5e8eb;
  --card: #ffffff;
  --ink: #191f28;
  --ink-2: #4e5968;
  --ink-3: #8b95a1;
  --line: #e5e8eb;
  --line-strong: #d1d6db;
  --accent: #3182f6;
  --accent-strong: #1b64da;
  --accent-deep: #1b64da;
  --accent-tint: #ebf3fe;
  --data-1: #3182f6;
  --on-dark: #ffffff;
  --on-dark-2: rgb(255 255 255 / 0.82);
  --on-dark-line: rgb(255 255 255 / 0.35);
  --on-dark-accent: #ffffff;
  --radius: 24px;
  --shadow: 0 2px 8px rgb(2 32 71 / 0.05), 0 22px 52px rgb(2 32 71 / 0.09);
}
/* 헤드라인은 항상 볼드 고딕 — 둥글고 명료하게 */
.theme-toss .ag-display, .theme-toss .ag-h1 { font-family: var(--font-body); font-weight: 800; letter-spacing: -0.025em; line-height: 1.25; }
.theme-toss .keyline { border-radius: 99px; height: 8px; width: 64px; }
.theme-toss .slide--dark { background: #3182f6; }
.theme-toss .sec-num { color: rgb(255 255 255 / 0.20); font-weight: 800; }
.theme-toss .callout { border-top: none; border-radius: 20px; }
.theme-toss .badge, .theme-toss .badge--solid, .theme-toss .badge--line { border-radius: 999px; }
.theme-toss .dash { border-radius: 24px; }
.theme-toss .qcard { border-radius: 24px; }
.theme-toss .mini-mock { border: none; background: var(--surface); border-radius: 16px; }
.theme-toss .mini-mock .mm-btn { border-radius: 12px; }
.theme-toss .engine { border-radius: 28px; }
.theme-toss .engine .e-keys span { border-radius: 14px; border-color: rgb(255 255 255 / 0.45); }
.theme-toss .dg-box { border-radius: 16px; }
.theme-toss .vidcard video { border-radius: 24px; }

/* ============================================================
   2) AWS 버전 — 클라우드 엔터프라이즈 다크 + 오렌지
   ============================================================ */
.theme-aws {
  --paper: #151e2a;
  --surface: #1b2636;
  --surface-2: #243246;
  --card: #1d2939;
  --ink: #ffffff;
  --ink-2: #b8c2ce;
  --ink-3: #7d8998;
  --line: rgb(255 255 255 / 0.10);
  --line-strong: rgb(255 255 255 / 0.22);
  --accent: #ff9900;
  --accent-strong: #e88b00;
  --accent-deep: #0e141d;
  --accent-tint: rgb(255 153 0 / 0.10);
  --data-1: #ff9900;
  --on-dark: #ffffff;
  --on-dark-2: #b8c2ce;
  --on-dark-line: rgb(255 255 255 / 0.25);
  --on-dark-accent: #ff9900;
  --radius: 10px;
  --shadow: 0 1px 2px rgb(0 0 0 / 0.5), 0 18px 44px rgb(0 0 0 / 0.42);
}
.theme-aws .ag-display, .theme-aws .ag-h1 { font-family: var(--font-body); font-weight: 700; letter-spacing: -0.015em; }
.theme-aws .slide--dark { background: #0e141d; }
.theme-aws .keyline { background: #ff9900; }
.theme-aws .slide--dark .keyline { background: #ff9900; }
.theme-aws .sec-num { color: #1d2939; }
/* 오렌지 위 텍스트는 다크 잉크 — 가독성 */
.theme-aws .engine { color: #16202e; }
.theme-aws .engine .e-desc { color: rgb(22 32 46 / 0.78); }
.theme-aws .engine .e-keys span { border-color: rgb(22 32 46 / 0.4); color: #16202e; }
.theme-aws .badge--solid { color: #16202e; }
.theme-aws .mini-mock .mm-btn { color: #16202e; }
.theme-aws .callout { border-top-width: 2px; }
.theme-aws .panel--before { background: rgb(255 255 255 / 0.045); }

/* ============================================================
   3) 팔란티어 버전 — 블랙 · 모노 · 헤어라인 (그림자 대신 1px 링)
   ============================================================ */
.theme-ptr {
  --font-mono: "IBM Plex Mono", monospace;
  --paper: #0a0c10;
  --surface: #10141b;
  --surface-2: #181d26;
  --card: #0e1117;
  --ink: #e9ecf1;
  --ink-2: #a6adb8;
  --ink-3: #6a7280;
  --line: #1f242d;
  --line-strong: #313845;
  --accent: #8aa3d1;
  --accent-strong: #6d87b8;
  --accent-deep: #06080b;
  --accent-tint: rgb(138 163 209 / 0.09);
  --data-1: #8aa3d1;
  --on-dark: #e9ecf1;
  --on-dark-2: #a6adb8;
  --on-dark-line: #313845;
  --on-dark-accent: #8aa3d1;
  --radius: 0px;
  --shadow: 0 0 0 1px #1f242d; /* 그림자 → 헤어라인 링 */
}
.theme-ptr .ag-display, .theme-ptr .ag-h1 { font-family: var(--font-body); font-weight: 600; letter-spacing: -0.01em; }
.theme-ptr .ag-display { font-weight: 650; }
.theme-ptr .slide--dark { background: #06080b; }
.theme-ptr .sec-num { color: #14181f; font-weight: 400; }
.theme-ptr .keyline { height: 2px; width: 120px; }
/* 모노 라벨 복원 + 와이드 트래킹 */
.theme-ptr .ag-label, .theme-ptr .ptitle, .theme-ptr .phone-lbl, .theme-ptr .vid-lbl,
.theme-ptr .arch .stack .grp, .theme-ptr .slide-foot, .theme-ptr .badge, .theme-ptr .mini-mock .mm-head {
  font-family: "IBM Plex Mono", monospace; letter-spacing: 0.18em;
}
/* 카드류: 그림자 끔 + 헤어라인 (--shadow가 링이므로 대부분 자동) */
.theme-ptr .callout { background: transparent; border: 1px solid var(--line-strong); border-top: 2px solid var(--accent); }
.theme-ptr .engine { background: transparent; box-shadow: 0 0 0 1px var(--accent); color: var(--ink); }
.theme-ptr .engine .e-desc { color: var(--ink-2); }
.theme-ptr .engine .e-keys span { border-color: var(--line-strong); color: var(--accent); }
.theme-ptr .badge--solid { background: var(--accent); color: #0a0c10; }
.theme-ptr .mini-mock { border: 1px solid var(--line); background: transparent; border-radius: 0; }
.theme-ptr .mini-mock .mm-btn { color: #0a0c10; border-radius: 0; }
.theme-ptr .dash { border-radius: 0; }
.theme-ptr .qcard { border-radius: 0; }
.theme-ptr .vidcard video { border-radius: 0; }
.theme-ptr .pill { border-radius: 0; }
.theme-ptr .heat .t { border-radius: 0; }
.theme-ptr .dg-box { border-radius: 0; outline: 1px solid var(--line); }
.theme-ptr .phone { box-shadow: 0 0 0 1px var(--line-strong); background: #181d26; }
