/* AUTO-GENERATED from _design/bookmart-v2.design.md — do not edit directly. */
/* 색 토큰은 hex → oklch 두 줄씩 — 앞줄은 oklch 못 읽는 구브라우저(크롬 <111) 폴백. */
/* Bookmart v2 — Bookmart 주문관리 시스템 v2 디자인 시스템. */

:root {

  /* ── Colors ── */
  --bg-app: #f9fafc;
  --bg-app: oklch(0.985 0.003 264);
  --bg-surface: #ffffff;
  --bg-surface: oklch(1 0 0);
  --bg-subtle: #f5f7f9;
  --bg-subtle: oklch(0.975 0.004 264);
  --bg-muted: #eef0f4;
  --bg-muted: oklch(0.955 0.005 264);
  --bg-inset: #e6e8ec;
  --bg-inset: oklch(0.93 0.006 264);
  --bg-overlay: #0e12188c;
  --bg-overlay: oklch(0.18 0.015 264 / 0.55);
  --border-subtle: #e6e8ec;
  --border-subtle: oklch(0.93 0.006 264);
  --border-default: #d5d7dd;
  --border-default: oklch(0.88 0.008 264);
  --border-strong: #babec6;
  --border-strong: oklch(0.80 0.012 264);
  --border-focus: #4d7ff1;
  --border-focus: oklch(0.62 0.18 264);
  --border-success: #b5d8c0;
  --border-success: oklch(0.85 0.05 155);
  --border-warning: #f7daaa;
  --border-warning: oklch(0.90 0.07 80);
  --border-danger: #febab4;
  --border-danger: oklch(0.85 0.08 25);
  --fg-strong: #171b22;
  --fg-strong: oklch(0.22 0.015 264);
  --fg-default: #303339;
  --fg-default: oklch(0.32 0.012 264);
  --fg-secondary: #4a4d53;
  --fg-secondary: oklch(0.42 0.011 264);
  --fg-muted: #66696f;
  --fg-muted: oklch(0.52 0.010 264);
  --fg-faint: #7e8085;
  --fg-faint: oklch(0.60 0.008 264);
  --fg-inverse: #ffffff;
  --fg-inverse: oklch(1 0 0);
  --accent-50: #edf5ff;
  --accent-50: oklch(0.97 0.025 264);
  --accent-100: #dcecff;
  --accent-100: oklch(0.94 0.045 264);
  --accent-200: #bfd8ff;
  --accent-200: oklch(0.88 0.075 264);
  --accent-300: #90b6ff;
  --accent-300: oklch(0.78 0.12 264);
  --accent-500: #4172e3;
  --accent-500: oklch(0.58 0.18 264);
  --accent-600: #315fcf;
  --accent-600: oklch(0.52 0.18 264);
  --accent-700: #224aa9;
  --accent-700: oklch(0.44 0.16 264);
  --accent-fg: #ffffff;
  --accent-fg: oklch(1 0 0);
  --accent-soft-bg: #ebf2ff;
  --accent-soft-bg: oklch(0.96 0.02 264);
  --accent-soft-fg: #1d44a3;
  --accent-soft-fg: oklch(0.42 0.16 264);
  --success-bg: #e0f9e8;
  --success-bg: oklch(0.96 0.035 155);
  --success-fg: #005f2e;
  --success-fg: oklch(0.42 0.12 155);
  --success-500: #249057;
  --success-500: oklch(0.58 0.13 155);
  --warning-bg: #fff0d4;
  --warning-bg: oklch(0.96 0.04 80);
  --warning-fg: #784500;
  --warning-fg: oklch(0.44 0.11 70);
  --warning-500: #d29922;
  --warning-500: oklch(0.72 0.14 80);
  --danger-bg: #ffe9e6;
  --danger-bg: oklch(0.96 0.035 25);
  --danger-fg: #9e2225;
  --danger-fg: oklch(0.46 0.16 25);
  --danger-500: #cf4040;
  --danger-500: oklch(0.58 0.18 25);
  --info-bg: #def6ff;
  --info-bg: oklch(0.96 0.03 230);
  --info-fg: #005681;
  --info-fg: oklch(0.42 0.12 230);
  --info-500: #008ec8;
  --info-500: oklch(0.60 0.15 230);
  --teacher-copy-bg: #fff7ed;
  --teacher-copy-bg: oklch(0.980 0.016 74);
  --teacher-copy-fg: #9a3413;
  --teacher-copy-fg: oklch(0.470 0.143 37);
  --teacher-copy-500: #ea580e;
  --teacher-copy-500: oklch(0.646 0.194 41);
  --cat-computer: #2563eb;
  --cat-computer: oklch(0.546 0.215 262.9);
  --cat-afterschool: #7c3aed;
  --cat-afterschool: oklch(0.541 0.247 293.0);
  --cat-english: #0d9488;
  --cat-english: oklch(0.6002 0.1038 184.7);
  --cat-arts: #db2777;
  --cat-arts: oklch(0.592 0.218 0.6);
  --cat-general: #6b7280;
  --cat-general: oklch(0.551 0.023 264.4);
  --tag-cmp-bg: #e8efff;
  --tag-cmp-fg: #1d4ed8;
  --tag-aft-bg: #f0e9fe;
  --tag-aft-fg: #5b21b6;
  --tag-eng-bg: #ddf3f0;
  --tag-eng-fg: #0b6b62;
  --tag-it-bg: #fdeee0;
  --tag-it-fg: #8a4b12;
  --tag-art-bg: #fde8f1;
  --tag-art-fg: #9d174d;
  --tag-gen-bg: #eef0f4;
  --tag-gen-bg: oklch(0.955 0.005 264);
  --tag-gen-fg: #4a4d53;
  --tag-gen-fg: oklch(0.42 0.011 264);
  --psim-head: #d9e2f3;
  --psim-head: oklch(0.9111 0.0252 263.32);
  --psim-line: #b4c6e7;
  --psim-line: oklch(0.8238 0.0506 262.58);
  --psim-head-soft: #ecf1fc;
  --psim-head-soft: oklch(0.958 0.016 263.32);
  --psim-group: #cbd8ef;
  --psim-group: oklch(0.8795 0.0348 261.95);
  --stock-cell-bg: #fcfdfe;
  --stock-cell-bg: oklch(0.9936 0.0017 247.84);
  --sidebar-bg: #091123;
  --sidebar-bg: oklch(0.181 0.039 264);
  --sidebar-fg: #c5ccd8;
  --sidebar-fg: oklch(0.843 0.019 264);
  --sidebar-on: #ffffff;
  --sidebar-on: oklch(1 0 0);
  --sidebar-muted: #8c97ac;
  --sidebar-muted: oklch(0.675 0.033 264);
  --sidebar-sep: #243250;
  --sidebar-sep: oklch(0.320 0.058 264);
  --console-thead-bg: #f1f1f1;
  --console-thead-bg: oklch(0.958 0 0);
  --console-border: #bcbcbc;
  --console-border: oklch(0.795 0 0);

  /* ── Spacing (4px base) ── */
  --space-0: 0;
  --space-1: 2px;
  --space-2: 4px;
  --space-3: 6px;
  --space-4: 8px;
  --space-5: 12px;
  --space-6: 16px;
  --space-7: 20px;
  --space-8: 24px;
  --space-9: 32px;
  --space-10: 40px;
  --space-12: 56px;
  --space-14: 72px;

  /* ── Radius ── */
  --radius-xs: 3px;
  --radius-sm: 4px;
  --radius: 6px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --radius-xl: 14px;
  --radius-pill: 999px;

  /* ── Shadow ── */
  --shadow-xs: 0 1px 0 0 #0e12180a;
  --shadow-xs: 0 1px 0 0 oklch(0.18 0.015 264 / 0.04);
  --shadow-sm: 0 1px 2px 0 #0e12180f, 0 1px 0 0 #0e121808;
  --shadow-sm: 0 1px 2px 0 oklch(0.18 0.015 264 / 0.06), 0 1px 0 0 oklch(0.18 0.015 264 / 0.03);
  --shadow: 0 4px 8px -2px #0e12180f, 0 2px 4px -2px #0e12180a;
  --shadow: 0 4px 8px -2px oklch(0.18 0.015 264 / 0.06), 0 2px 4px -2px oklch(0.18 0.015 264 / 0.04);
  --shadow-md: 0 10px 24px -4px #0e121814, 0 4px 8px -4px #0e12180a;
  --shadow-md: 0 10px 24px -4px oklch(0.18 0.015 264 / 0.08), 0 4px 8px -4px oklch(0.18 0.015 264 / 0.04);
  --shadow-lg: 0 20px 48px -8px #0e121824;
  --shadow-lg: 0 20px 48px -8px oklch(0.18 0.015 264 / 0.14);
  --ring-focus: 0 0 0 3px #4d7ff12e;
  --ring-focus: 0 0 0 3px oklch(0.62 0.18 264 / 0.18);
  --ring-danger: 0 0 0 3px #cf40402e;
  --ring-danger: 0 0 0 3px oklch(0.58 0.18 25 / 0.18);

  /* ── Typography ── */
  --font-sans: 'Pretendard', 'Pretendard Variable', 'Noto Sans KR', system-ui, -apple-system, 'Apple SD Gothic Neo', 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', ui-monospace, 'Cascadia Code', Menlo, Consolas, monospace;
  --fs-pico: 9px;
  --fs-nano: 10px;
  --fs-micro: 11px;
  --fs-label: 12px;
  --fs-control: 13px;
  --fs-body: 14px;
  --fs-body-lg: 15px;
  --fs-heading-sm: 16px;
  --fs-heading: 18px;
  --fs-glyph: 20px;
  --fs-page-title: 23px;
  --fs-metric: 27px;
  --lh-tight: 1.2;
  --lh-snug: 1.35;
  --lh-normal: 1.5;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* ── Z-index layers ── */
  --z-base: 1;
  --z-sticky: 100;
  --z-sidebar: 200;
  --z-topbar: 300;
  --z-dropdown: 400;
  --z-overlay: 500;
  --z-modal: 600;
  --z-toast: 700;
  --z-cmd: 800;

  /* ── Motion ── */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 120ms;
  --dur: 180ms;
  --dur-slow: 260ms;

  /* ── Layout ── */
  --sidebar-w: 228px;
  --topbar-h: 48px;
  --tabbar-h: 40px;
  --content-pad: 24px;
  --content-max: 1400px;
  --ctl-h: 28px;
  --ctl-h-sm: 24px;
  --ctl-h-xs: 22px;
  --ctl-pad-x: 8px;
  --ctl-pad-x-sm: 6px;
  --ctl-pad-x-lg: 14px;
  --fs-ctl: 13px;
  --ctl-h-touch: 40px;
  --ctl-h-touch-sm: 34px;
  --ctl-h-touch-xs: 30px;
  --console-radius: 0;
  --console-fs: 14px;
  --console-row-h: 41px;
  --console-head-h: 37px;
  --console-title-h: 38px;

}
