/* Meeting Intelligence 로그인 화면 토큰 — 단일 진실. DESIGN.md 프론트매터와 1:1.
   값: Machina Mail 실측(2026-09-26, 사용자 지정 참조 D91). 대비 미달 셋은 고침(DESIGN.md Colors).
   3단 테마: :root(밝음) → prefers-color-scheme: dark 의 :root:not([data-theme="light"]) → :root[data-theme="dark"]. */
:root {
  color-scheme: light dark;

  /* 디자인 검사기가 읽는 네 값(primary · accent · surface · text) */
  --color-primary: #090909;
  --color-accent: #00c8a3;
  --surface-1: #ffffff;
  --text-primary: #090909;

  /* brand */
  --brand: #00c8a3;
  --brand-hover: #12ab8f;
  --brand-pressed: #0f8f78;
  --brand-subtle: rgba(0, 200, 163, 0.12);
  --text-on-brand: #090909;
  --link: #0a7c5f;
  --link-hover: #07664f;

  /* content */
  --content-primary: #090909;
  --content-secondary: #383d44;
  --content-muted: #555b63;
  --content-subtle: #9aa1ab;

  /* surface · border */
  --surface-base: #f5f6f8;
  --surface-raised: #ffffff;
  --surface-hover: #e2e6ec;
  --border-subtle: #e7eaef;
  --border-default: #dbe0e7;
  --border-input: #878e98;
  --border-input-hover: #555b63;
  --ring: #0a7c5f;          /* 초점 링 — 흰 바탕 5.17:1 (검정 두 줄은 첫 화면에서 무거웠다) */

  /* status */
  --status-error: #dc2626;
  --error-tint: rgba(220, 38, 38, 0.08);
  --status-warning-text: #b45309;
  --status-ok-text: #0a7c5f;

  /* fields · shadow */
  --field-violet: rgba(147, 118, 255, 0.28);
  --field-teal: rgba(0, 200, 163, 0.22);
  --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-card: 0 2px 4px -1px rgba(30, 35, 55, 0.06), 0 12px 32px -12px rgba(30, 35, 55, 0.22);

  /* typography */
  --font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif;
  --text-xs: 12px; --lh-xs: 20px;          /* 한글 행간 1.6 이상(렌더 게이트 line-height-ko · 1회차 수정) */
  --text-13: 13px; --lh-13: 21px;
  --text-sm: 14px; --lh-sm: 20px;
  --text-base: 16px; --lh-base: 24px;
  --text-lg: 18px; --lh-lg: 26px;
  --text-xl: 20px; --lh-xl: 28px;
  --weight-normal: 400; --weight-medium: 500; --weight-semibold: 600;

  /* space · radius · size */
  --space-1: 4px; --space-1-5: 6px; --space-2: 8px; --space-3: 12px; --space-3-5: 14px; --space-4: 16px;
  --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px;
  --radius-sm: 6px; --radius-md: 10px; --radius-control: 14px; --radius-card: 20px;
  --control-h: 48px; --button-h: 52px; --card-w: 400px;

  /* motion */
  --ease-out-smooth: cubic-bezier(0.22, 1, 0.36, 1);
  --duration-fast: 150ms;
  --duration-base: 200ms;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --color-primary: #ffffff;
    --color-accent: #ddf300;
    --surface-1: #191919;
    --text-primary: #ffffff;
    --brand: #ddf300;
    --brand-hover: #e8ff33;
    --brand-pressed: #c6da00;
    --brand-subtle: rgba(221, 243, 0, 0.08);
    --text-on-brand: #090909;
    --link: #ddf300;
    --link-hover: #e8ff33;
    --content-primary: #ffffff;
    --content-secondary: #d0d6e0;
    --content-muted: #8a8f98;
    --content-subtle: #62666d;
    --surface-base: #090909;
    --surface-raised: #191919;
    --surface-hover: rgba(255, 255, 255, 0.06);
    --border-subtle: rgba(255, 255, 255, 0.08);
    --border-default: rgba(255, 255, 255, 0.12);
    --border-input: #6b7079;
    --border-input-hover: #8a8f98;
    --ring: #ddf300;
    --status-error: #f87171;
    --error-tint: rgba(248, 113, 113, 0.1);
    --status-warning-text: #fbbf24;
    --status-ok-text: #ddf300;
    --field-violet: rgba(124, 92, 255, 0.22);
    --field-teal: rgba(0, 200, 163, 0.14);
    --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
    --shadow-card: 0 2px 4px -1px rgba(0, 0, 0, 0.4), 0 12px 32px -12px rgba(0, 0, 0, 0.6);
  }
}
:root[data-theme="dark"] {
    color-scheme: dark;
    --color-primary: #ffffff;
    --color-accent: #ddf300;
    --surface-1: #191919;
    --text-primary: #ffffff;
    --brand: #ddf300;
    --brand-hover: #e8ff33;
    --brand-pressed: #c6da00;
    --brand-subtle: rgba(221, 243, 0, 0.08);
    --text-on-brand: #090909;
    --link: #ddf300;
    --link-hover: #e8ff33;
    --content-primary: #ffffff;
    --content-secondary: #d0d6e0;
    --content-muted: #8a8f98;
    --content-subtle: #62666d;
    --surface-base: #090909;
    --surface-raised: #191919;
    --surface-hover: rgba(255, 255, 255, 0.06);
    --border-subtle: rgba(255, 255, 255, 0.08);
    --border-default: rgba(255, 255, 255, 0.12);
    --border-input: #6b7079;
    --border-input-hover: #8a8f98;
    --ring: #ddf300;
    --status-error: #f87171;
    --error-tint: rgba(248, 113, 113, 0.1);
    --status-warning-text: #fbbf24;
    --status-ok-text: #ddf300;
    --field-violet: rgba(124, 92, 255, 0.22);
    --field-teal: rgba(0, 200, 163, 0.14);
    --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
    --shadow-card: 0 2px 4px -1px rgba(0, 0, 0, 0.4), 0 12px 32px -12px rgba(0, 0, 0, 0.6);
}

@media (prefers-reduced-motion: reduce) {
  :root { --duration-fast: 0ms; --duration-base: 0ms; }
}
