/* BOOK.AI 工作台 Design Tokens v1.0 — 基于 BOOK.AI VI v2.0。
 * 默认浅色主题（日常办公）；在 <html> 或任意容器上加 data-theme="dark" 切换深色。
 * 前缀 --bk-。由 src/tokens.py 生成，请勿手改。 */
:root{
  --bk-brand-black:#000000;
  --bk-brand-navy:#0E1020;
  --bk-brand-white:#FFFFFF;
  --bk-brand-peach:#FFE3C7;
  --bk-brand-coral:#F59A8B;
  --bk-brand-lavender:#C9A7F0;
  --bk-brand-sky:#7FB6FF;
  --bk-brand-peach-deep:#F4A66E;
  --bk-brand-coral-deep:#EC6F6F;
  --bk-brand-lavender-deep:#9B72E8;
  --bk-brand-sky-deep:#3F86F2;
  --bk-gradient-brand:linear-gradient(90deg,#FFE3C7 0%,#F59A8B 33%,#C9A7F0 66%,#7FB6FF 100%);
  --bk-gradient-brand-diag:linear-gradient(135deg,#FFE3C7 0%,#F59A8B 33%,#C9A7F0 66%,#7FB6FF 100%);
  --bk-gradient-brand-deep:linear-gradient(90deg,#F4A66E 0%,#EC6F6F 33%,#9B72E8 66%,#3F86F2 100%);
  --bk-gradient-ai:linear-gradient(135deg,#9B72E8 0%,#3F86F2 100%);
  --bk-gradient-ai-soft:linear-gradient(135deg,rgba(201,167,240,.16) 0%,rgba(127,182,255,.16) 100%);
  --bk-blue-50:#F0F6FF; --bk-blue-100:#E1EDFF; --bk-blue-200:#C4DCFF; --bk-blue-300:#A3C8FF; --bk-blue-400:#7FB6FF; --bk-blue-500:#5A9AF7; --bk-blue-600:#3F86F2; --bk-blue-700:#2A6DDB; --bk-blue-800:#1F56B3; --bk-blue-900:#173F82;
  --bk-violet-50:#F6F1FE; --bk-violet-100:#EDE3FC; --bk-violet-200:#DCC8F8; --bk-violet-300:#C9A7F0; --bk-violet-400:#B48DEC; --bk-violet-500:#9B72E8; --bk-violet-600:#8259D9; --bk-violet-700:#6A45BF; --bk-violet-800:#523596; --bk-violet-900:#3C276E;
  --bk-coral-50:#FFF2F0; --bk-coral-100:#FFE2DD; --bk-coral-200:#FCC7BE; --bk-coral-300:#F59A8B; --bk-coral-400:#F08372; --bk-coral-500:#EC6F6F; --bk-coral-600:#D65656; --bk-coral-700:#B44343; --bk-coral-800:#8C3434; --bk-coral-900:#662727;
  --bk-peach-50:#FFF8F1; --bk-peach-100:#FFEFDF; --bk-peach-200:#FFE3C7; --bk-peach-300:#FBC998; --bk-peach-400:#F7B47F; --bk-peach-500:#F4A66E; --bk-peach-600:#E08A4D; --bk-peach-700:#BC6E37; --bk-peach-800:#91542A; --bk-peach-900:#6A3D1F;
  --bk-green-50:#EBF9F2; --bk-green-100:#D2F2E2; --bk-green-200:#A6E5C5; --bk-green-300:#6FD4A3; --bk-green-400:#3DD68C; --bk-green-500:#1DBB76; --bk-green-600:#12A866; --bk-green-700:#0A7A4A; --bk-green-800:#0A6C42; --bk-green-900:#084F31;
  --bk-amber-50:#FFF8E8; --bk-amber-100:#FFEEC7; --bk-amber-200:#FFDE91; --bk-amber-300:#FFC261; --bk-amber-400:#F5A922; --bk-amber-500:#E5960A; --bk-amber-600:#D98A00; --bk-amber-700:#9A6200; --bk-amber-800:#865400; --bk-amber-900:#5F3C00;
  --bk-red-50:#FFF0F1; --bk-red-100:#FFDDE0; --bk-red-200:#FFBAC1; --bk-red-300:#FF8F9B; --bk-red-400:#FF6B7A; --bk-red-500:#F2505F; --bk-red-600:#E5384B; --bk-red-700:#C0283B; --bk-red-800:#961F2E; --bk-red-900:#6E1722;
  --bk-teal-50:#ECFAF8; --bk-teal-100:#CFF3EE; --bk-teal-200:#9FE6DC; --bk-teal-300:#62D3C4; --bk-teal-400:#2EC0AE; --bk-teal-500:#14B8A6; --bk-teal-600:#0F9A8B; --bk-teal-700:#0C7C70; --bk-teal-800:#0A5F56; --bk-teal-900:#07443E;
  --bk-gray-0:#FFFFFF; --bk-gray-25:#FAFBFC; --bk-gray-50:#F5F6F8; --bk-gray-100:#EDEEF2; --bk-gray-150:#E4E6EC; --bk-gray-200:#D7DAE2; --bk-gray-300:#B9BDCA; --bk-gray-400:#9AA0B4; --bk-gray-500:#6E7489; --bk-gray-600:#4A5068; --bk-gray-700:#2C3148; --bk-gray-800:#1F2336; --bk-gray-850:#161929; --bk-gray-900:#0E1020; --bk-gray-950:#07080D;
  --bk-dept-sales:#3F86F2; --bk-dept-ops:#14B8A6; --bk-dept-supply:#F4A66E; --bk-dept-finance:#E5A50A; --bk-dept-hr:#EC6F6F; --bk-dept-mgmt:#9B72E8; --bk-dept-content:#D9609E;
  --bk-font-sans:Inter,"PingFang SC","Source Han Sans SC","Noto Sans CJK SC","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  --bk-font-brand:Poppins,"PingFang SC","Source Han Sans SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;
  --bk-font-mono:"JetBrains Mono",SFMono-Regular,Menlo,Consolas,monospace;
  --bk-text-caption:400 12px/18px var(--bk-font-sans);
  --bk-text-body-sm:400 13px/20px var(--bk-font-sans);
  --bk-text-body:400 14px/22px var(--bk-font-sans);
  --bk-text-body-lg:400 16px/24px var(--bk-font-sans);
  --bk-text-title-sm:600 14px/22px var(--bk-font-sans);
  --bk-text-title:600 16px/24px var(--bk-font-sans);
  --bk-text-title-lg:600 18px/26px var(--bk-font-sans);
  --bk-text-heading:600 20px/28px var(--bk-font-sans);
  --bk-text-heading-lg:600 24px/32px var(--bk-font-sans);
  --bk-text-display-sm:600 28px/36px var(--bk-font-sans);
  --bk-text-display:600 36px/44px var(--bk-font-sans);
  --bk-space-0:0px; --bk-space-0_5:2px; --bk-space-1:4px; --bk-space-1_5:6px; --bk-space-2:8px; --bk-space-3:12px; --bk-space-4:16px; --bk-space-5:20px; --bk-space-6:24px; --bk-space-8:32px; --bk-space-10:40px; --bk-space-12:48px; --bk-space-16:64px;
  --bk-radius-xs:4px; --bk-radius-sm:6px; --bk-radius-md:8px; --bk-radius-lg:12px; --bk-radius-xl:16px; --bk-radius-2xl:20px; --bk-radius-full:999px;
  --bk-size-control-xs:24px; --bk-size-control-sm:28px; --bk-size-control-md:32px; --bk-size-control-lg:40px; --bk-size-rail:64px; --bk-size-topbar:52px; --bk-size-list:300px; --bk-size-aside:360px; --bk-size-icon-sm:16px; --bk-size-icon-md:20px; --bk-size-icon-lg:24px;
  --bk-dur-instant:80ms; --bk-dur-fast:120ms; --bk-dur-base:180ms; --bk-dur-slow:260ms; --bk-dur-page:320ms; --bk-ease-standard:cubic-bezier(.2,0,0,1); --bk-ease-out:cubic-bezier(.2,.8,.2,1); --bk-ease-in:cubic-bezier(.4,0,1,1); --bk-ease-emphasized:cubic-bezier(.16,1,.3,1); --bk-dur-exit:120ms; --bk-dur-flash:600ms; /* motion 20261026：动效令牌唯一来源（ux-refine 的 --ux-ease 已并入 emphasized） */
  --bk-z-base:0; --bk-z-sticky:10; --bk-z-rail:20; --bk-z-dropdown:100; --bk-z-drawer:200; --bk-z-modal:300; --bk-z-toast:400; --bk-z-tooltip:500; --bk-z-cmdk:600;
  --bk-bg-canvas:#F5F6F8;
  --bk-bg-container:#FFFFFF;
  --bk-bg-elevated:#FFFFFF;
  --bk-bg-sunken:#EDEEF2;
  --bk-bg-mask:rgba(14,16,32,.45);
  --bk-bg-rail:#0E1020;
  --bk-bg-rail-hover:rgba(255,255,255,.08);
  --bk-bg-rail-active:rgba(255,255,255,.14);
  --bk-text-rail:#9AA0B4;
  --bk-text-rail-active:#FFFFFF;
  --bk-fill-hover:rgba(14,16,32,.04);
  --bk-fill-active:rgba(14,16,32,.08);
  --bk-fill-selected:#F0F6FF;
  --bk-fill-tertiary:#EDEEF2;
  --bk-line:#E4E6EC;
  --bk-line-strong:#D7DAE2;
  --bk-line-subtle:#EEF0F4;
  --bk-divider:#E4E6EC;
  --bk-text-1:#0E1020;
  --bk-text-2:#4A5068;
  --bk-text-3:#6E7489;
  --bk-text-placeholder:#9AA0B4;
  --bk-text-disabled:#B9BDCA;
  --bk-text-inverse:#FFFFFF;
  --bk-primary:#2A6DDB;
  --bk-primary-hover:#2462C9;
  --bk-primary-active:#1F56B3;
  --bk-primary-soft:#F0F6FF;
  --bk-primary-soft-hover:#E1EDFF;
  --bk-primary-text:#2A6DDB;
  --bk-on-primary:#FFFFFF;
  --bk-ai:#8259D9;
  --bk-ai-text:#6A45BF;
  --bk-ai-soft:#F6F1FE;
  --bk-ai-line:#DCC8F8;
  --bk-success:#12A866;
  --bk-success-text:#0A7A4A;
  --bk-success-soft:#EBF9F2;
  --bk-warning:#D98A00;
  --bk-warning-text:#9A6200;
  --bk-warning-soft:#FFF8E8;
  --bk-error:#E5384B;
  --bk-error-text:#C0283B;
  --bk-error-soft:#FFF0F1;
  --bk-info:#3F86F2;
  --bk-info-text:#2A6DDB;
  --bk-info-soft:#F0F6FF;
  --bk-focus-ring:0 0 0 3px rgba(63,134,242,.28);
  --bk-shadow-1:0 1px 2px rgba(14,16,32,.06),0 0 0 1px rgba(14,16,32,.04);
  --bk-shadow-2:0 4px 12px rgba(14,16,32,.08),0 0 0 1px rgba(14,16,32,.04);
  --bk-shadow-3:0 10px 28px rgba(14,16,32,.12),0 0 0 1px rgba(14,16,32,.05);
  --bk-shadow-4:0 20px 56px rgba(14,16,32,.20),0 0 0 1px rgba(14,16,32,.06);
  --bk-brand-gradient-text:linear-gradient(90deg,#F4A66E 0%,#EC6F6F 33%,#9B72E8 66%,#3F86F2 100%);
  --bk-viz-1:#3F86F2; --bk-viz-2:#9B72E8; --bk-viz-3:#EC6F6F; --bk-viz-4:#F4A66E; --bk-viz-5:#14B8A6; --bk-viz-6:#E5A50A; --bk-viz-7:#D9609E; --bk-viz-8:#7A8199;
  color-scheme:light;
}
[data-theme="dark"]{
  --bk-bg-canvas:#0B0D18;
  --bk-bg-container:#121526;
  --bk-bg-elevated:#1A1E31;
  --bk-bg-sunken:#090A12;
  --bk-bg-mask:rgba(0,0,0,.6);
  --bk-bg-rail:#07080D;
  --bk-bg-rail-hover:rgba(255,255,255,.07);
  --bk-bg-rail-active:rgba(255,255,255,.12);
  --bk-text-rail:#6E7489;
  --bk-text-rail-active:#FFFFFF;
  --bk-fill-hover:rgba(255,255,255,.05);
  --bk-fill-active:rgba(255,255,255,.09);
  --bk-fill-selected:rgba(63,134,242,.18);
  --bk-fill-tertiary:rgba(255,255,255,.06);
  --bk-line:#262B40;
  --bk-line-strong:#363C55;
  --bk-line-subtle:#1D2134;
  --bk-divider:#262B40;
  --bk-text-1:#F2F3F7;
  --bk-text-2:#D7DAE2;
  --bk-text-3:#9AA0B4;
  --bk-text-placeholder:#6E7489;
  --bk-text-disabled:#4A5068;
  --bk-text-inverse:#0E1020;
  --bk-primary:#2A6DDB;
  --bk-primary-hover:#2462C9;
  --bk-primary-active:#1F56B3;
  --bk-primary-soft:rgba(63,134,242,.16);
  --bk-primary-soft-hover:rgba(63,134,242,.24);
  --bk-primary-text:#7FB6FF;
  --bk-on-primary:#FFFFFF;
  --bk-ai:#B48DEC;
  --bk-ai-text:#C9A7F0;
  --bk-ai-soft:rgba(155,114,232,.16);
  --bk-ai-line:rgba(201,167,240,.35);
  --bk-success:#3DD68C;
  --bk-success-text:#3DD68C;
  --bk-success-soft:rgba(61,214,140,.14);
  --bk-warning:#FFC261;
  --bk-warning-text:#FFC261;
  --bk-warning-soft:rgba(255,194,97,.14);
  --bk-error:#FF6B7A;
  --bk-error-text:#FF6B7A;
  --bk-error-soft:rgba(255,107,122,.14);
  --bk-info:#7FB6FF;
  --bk-info-text:#7FB6FF;
  --bk-info-soft:rgba(127,182,255,.14);
  --bk-focus-ring:0 0 0 3px rgba(127,182,255,.38);
  --bk-shadow-1:0 1px 2px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.04);
  --bk-shadow-2:0 6px 16px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.05);
  --bk-shadow-3:0 12px 32px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.06);
  --bk-shadow-4:0 24px 64px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.07);
  --bk-brand-gradient-text:linear-gradient(90deg,#FFE3C7 0%,#F59A8B 33%,#C9A7F0 66%,#7FB6FF 100%);
  --bk-viz-1:#7FB6FF; --bk-viz-2:#C9A7F0; --bk-viz-3:#F59A8B; --bk-viz-4:#FBC998; --bk-viz-5:#4FD1C0; --bk-viz-6:#FFC94D; --bk-viz-7:#F08DBE; --bk-viz-8:#A3A9BC;
  color-scheme:dark;
}
@media (prefers-reduced-motion:reduce){:root{--bk-dur-instant:0ms;--bk-dur-fast:0ms;--bk-dur-base:0ms;--bk-dur-slow:0ms;--bk-dur-page:0ms;--bk-dur-exit:0ms;--bk-dur-flash:0ms}}
