/*! @leysys/document-ds v3.10.0 — generated by scripts/build-packages.mjs. DO NOT EDIT.
 * framework-independent. Tailwind은 소비 레포가 별도 @import. @layer 순서는 하단 선언으로 standalone 보장.
 * 원본 주석은 뺐습니다. 주석은 "← 경로" 표지가 가리키는 leysys-design src/assets/styles/ 원본 파일에 있습니다. */
@layer base, components, utilities;

/* ← ./document-ds/tokens/physical-contract.css */
:root {
  --document-font-latin: "Noto Sans", "Noto Sans Variable";
  --document-font-korean: "Noto Sans KR", "Noto Sans KR Variable";
  --document-font-japanese: "Noto Sans JP", "Noto Sans JP Variable";
  --document-font-chinese-simplified: "Noto Sans SC", "Noto Sans SC Variable";
  --document-font-chinese-traditional: "Noto Sans TC", "Noto Sans TC Variable";
  --document-font-chinese-hong-kong: "Noto Sans HK", "Noto Sans HK Variable";
  --document-font-other-scripts:
    "Noto Sans Thai", "Noto Sans Thai Variable", "Noto Sans Arabic", "Noto Sans Arabic Variable",
    "Noto Sans Hebrew", "Noto Sans Hebrew Variable", "Noto Sans Devanagari",
    "Noto Sans Devanagari Variable";
  --document-font-east-asian:
    var(--document-font-korean), var(--document-font-japanese),
    var(--document-font-chinese-simplified), var(--document-font-chinese-traditional),
    var(--document-font-chinese-hong-kong);
  --document-font-weight-regular: 400;
  --document-font-weight-medium: 500;
  --document-font-weight-bold: 700;

  --document-text-body-size: var(--document-font-size-12);
  --document-text-body-line-height: var(--document-line-height-18);
  --document-text-heading-1-size: var(--document-font-size-24);
  --document-text-heading-1-line-height: var(--document-line-height-30);
  --document-text-heading-2-size: var(--document-font-size-20);
  --document-text-heading-2-line-height: var(--document-line-height-26);
  --document-text-heading-3-size: var(--document-font-size-18);
  --document-text-heading-3-line-height: var(--document-line-height-24);
  --document-text-heading-4-size: var(--document-font-size-16);
  --document-text-heading-4-line-height: var(--document-line-height-22);
  --document-text-heading-5-size: var(--document-font-size-14);
  --document-text-heading-5-line-height: var(--document-line-height-20);
  --document-text-heading-6-size: var(--document-font-size-12);
  --document-text-heading-6-line-height: var(--document-line-height-18);

  --document-font-size-8: 8pt;
  --document-font-size-9: 9pt;
  --document-font-size-10: 10pt;
  --document-font-size-12: 12pt;
  --document-font-size-14: 14pt;
  --document-font-size-16: 16pt;
  --document-font-size-18: 18pt;
  --document-font-size-20: 20pt;
  --document-font-size-24: 24pt;
  --document-font-size-30: 30pt;

  --document-line-height-8: 8pt;
  --document-line-height-10: 10pt;
  --document-line-height-12: 12pt;
  --document-line-height-14: 14pt;
  --document-line-height-16: 16pt;
  --document-line-height-18: 18pt;
  --document-line-height-20: 20pt;
  --document-line-height-22: 22pt;
  --document-line-height-24: 24pt;
  --document-line-height-26: 26pt;
  --document-line-height-30: 30pt;
  --document-line-height-36: 36pt;

  --document-text-caption-size: var(--document-font-size-8);
  --document-text-caption-line-height: var(--document-line-height-12);
  --document-text-compact-size: var(--document-font-size-9);
  --document-text-compact-line-height: var(--document-line-height-12);
  --document-text-small-size: var(--document-font-size-10);
  --document-text-small-line-height: var(--document-line-height-14);
  --document-text-lead-size: var(--document-font-size-14);
  --document-text-lead-line-height: var(--document-line-height-20);

  --document-space-0: 0;
  --document-space-half: 0.5mm;
  --document-space-1: 1mm;
  --document-space-1-half: 1.5mm;
  --document-space-2: 2mm;
  --document-space-3: 3mm;
  --document-space-4: 4mm;
  --document-space-5: 5mm;
  --document-space-6: 6mm;
  --document-space-8: 8mm;
  --document-space-10: 10mm;
  --document-space-12: 12mm;
  --document-space-15: 15mm;
  --document-space-18: 18mm;
  --document-space-24: 24mm;
  --document-space-30: 30mm;

  --document-page-inset-xs: 6mm;
  --document-page-inset-sm: 12mm;
  --document-page-inset-md: 18mm;
  --document-page-inset-lg: 24mm;
  --document-page-inset-xl: 30mm;

  --document-stroke-hairline: 0.25mm;
  --document-stroke-thin: 0.5mm;
  --document-stroke-medium: 1mm;

  --document-width: auto;
  --document-height: auto;
  --document-min-width: auto;
  --document-min-height: auto;
  --document-max-width: none;
  --document-max-height: none;
}

:root,
:where(.document[lang], .document [lang]) {
  --document-font-family:
    var(--document-font-latin), var(--document-font-east-asian), var(--document-font-other-scripts),
    "Malgun Gothic", system-ui, sans-serif;
}

[lang]:lang(ko) {
  --document-font-east-asian:
    var(--document-font-korean), var(--document-font-japanese),
    var(--document-font-chinese-simplified), var(--document-font-chinese-traditional),
    var(--document-font-chinese-hong-kong);
}
[lang]:lang(ja) {
  --document-font-east-asian:
    var(--document-font-japanese), var(--document-font-korean),
    var(--document-font-chinese-simplified), var(--document-font-chinese-traditional),
    var(--document-font-chinese-hong-kong);
}
[lang]:lang(zh) {
  --document-font-east-asian:
    var(--document-font-chinese-simplified), var(--document-font-chinese-traditional),
    var(--document-font-chinese-hong-kong), var(--document-font-japanese),
    var(--document-font-korean);
}
[lang]:lang(zh-Hant),
[lang]:lang(zh-TW) {
  --document-font-east-asian:
    var(--document-font-chinese-traditional), var(--document-font-chinese-hong-kong),
    var(--document-font-chinese-simplified), var(--document-font-japanese),
    var(--document-font-korean);
}
[lang]:lang(zh-HK),
[lang]:lang(zh-MO),
[lang]:lang(zh-Hant-HK),
[lang]:lang(zh-Hant-MO) {
  --document-font-east-asian:
    var(--document-font-chinese-hong-kong), var(--document-font-chinese-traditional),
    var(--document-font-chinese-simplified), var(--document-font-japanese),
    var(--document-font-korean);
}

:root {
  --document-font-weight-normal: initial;
}

/* ← ./document-ds/tokens/color-contract.css */
:root {
  --document-color-red-50: oklch(96.886% 0.015216 22.3948);
  --document-color-red-50-hex: #fff1f0;
  --document-color-red-50-rgb: rgb(255 241 240);
  --document-color-red-100: oklch(88.83827% 0.058573 24.8127);
  --document-color-red-100-hex: #ffccc7;
  --document-color-red-100-rgb: rgb(255 204 199);
  --document-color-red-200: oklch(80.60631% 0.110157 23.1776);
  --document-color-red-200-hex: #ffa39e;
  --document-color-red-200-rgb: rgb(255 163 158);
  --document-color-red-300: oklch(73.08527% 0.165513 23.2983);
  --document-color-red-300-hex: #ff7875;
  --document-color-red-300-rgb: rgb(255 120 117);
  --document-color-red-400: oklch(67.32453% 0.214344 24.4654);
  --document-color-red-400-hex: #ff4d4f;
  --document-color-red-400-rgb: rgb(255 77 79);
  --document-color-red-500: oklch(62.09874% 0.238052 26.0739);
  --document-color-red-500-hex: #f5222d;
  --document-color-red-500-rgb: rgb(245 34 45);
  --document-color-red-600: oklch(54.34109% 0.213155 25.8603);
  --document-color-red-600-hex: #cf1322;
  --document-color-red-600-rgb: rgb(207 19 34);
  --document-color-red-700: oklch(46.32357% 0.184489 25.2341);
  --document-color-red-700-hex: #a8071a;
  --document-color-red-700-rgb: rgb(168 7 26);
  --document-color-red-800: oklch(38.24885% 0.154668 23.8946);
  --document-color-red-800-hex: #820014;
  --document-color-red-800-rgb: rgb(130 0 20);
  --document-color-red-900: oklch(30.01766% 0.120665 20.6873);
  --document-color-red-900-hex: #5c0011;
  --document-color-red-900-rgb: rgb(92 0 17);
  --document-color-red-950: oklch(23.86415% 0.094053 20.5125);
  --document-color-red-950-hex: #41010a;
  --document-color-red-950-rgb: rgb(65 1 10);

  --document-color-orange-50: oklch(97.78139% 0.02393 85.7871);
  --document-color-orange-50-hex: #fff7e6;
  --document-color-orange-50-rgb: rgb(255 247 230);
  --document-color-orange-100: oklch(93.64835% 0.063826 83.0928);
  --document-color-orange-100-hex: #ffe7ba;
  --document-color-orange-100-rgb: rgb(255 231 186);
  --document-color-orange-200: oklch(89.3955% 0.097516 79.0582);
  --document-color-orange-200-hex: #ffd591;
  --document-color-orange-200-rgb: rgb(255 213 145);
  --document-color-orange-300: oklch(84.83279% 0.126793 73.5055);
  --document-color-orange-300-hex: #ffc069;
  --document-color-orange-300-rgb: rgb(255 192 105);
  --document-color-orange-400: oklch(80.22797% 0.152995 67.2257);
  --document-color-orange-400-hex: #ffa940;
  --document-color-orange-400-rgb: rgb(255 169 64);
  --document-color-orange-500: oklch(74.44477% 0.172357 58.4708);
  --document-color-orange-500-hex: #fa8c16;
  --document-color-orange-500-rgb: rgb(250 140 22);
  --document-color-orange-600: oklch(63.95607% 0.159578 53.2759);
  --document-color-orange-600-hex: #d46b08;
  --document-color-orange-600-rgb: rgb(212 107 8);
  --document-color-orange-700: oklch(53.66178% 0.143671 49.1301);
  --document-color-orange-700-hex: #ad4e00;
  --document-color-orange-700-rgb: rgb(173 78 0);
  --document-color-orange-800: oklch(44.22776% 0.122457 46.943);
  --document-color-orange-800-hex: #873800;
  --document-color-orange-800-rgb: rgb(135 56 0);
  --document-color-orange-900: oklch(34.76341% 0.097772 45.9769);
  --document-color-orange-900-hex: #612500;
  --document-color-orange-900-rgb: rgb(97 37 0);
  --document-color-orange-950: oklch(27.88655% 0.077853 46.4288);
  --document-color-orange-950-hex: #461900;
  --document-color-orange-950-rgb: rgb(70 25 0);

  --document-color-amber-50: oklch(98.56153% 0.027778 98.054);
  --document-color-amber-50-hex: #fffbe6;
  --document-color-amber-50-rgb: rgb(255 251 230);
  --document-color-amber-100: oklch(95.56656% 0.074301 95.9279);
  --document-color-amber-100-hex: #fff1b8;
  --document-color-amber-100-rgb: rgb(255 241 184);
  --document-color-amber-200: oklch(92.47943% 0.109523 93.1618);
  --document-color-amber-200-hex: #ffe58f;
  --document-color-amber-200-rgb: rgb(255 229 143);
  --document-color-amber-300: oklch(89.00157% 0.137468 89.2395);
  --document-color-amber-300-hex: #ffd666;
  --document-color-amber-300-rgb: rgb(255 214 102);
  --document-color-amber-400: oklch(85.36968% 0.157207 84.13);
  --document-color-amber-400-hex: #ffc53d;
  --document-color-amber-400-rgb: rgb(255 197 61);
  --document-color-amber-500: oklch(80.16292% 0.165137 76.0012);
  --document-color-amber-500-hex: #faad14;
  --document-color-amber-500-rgb: rgb(250 173 20);
  --document-color-amber-600: oklch(68.90106% 0.147952 70.1276);
  --document-color-amber-600-hex: #d48806;
  --document-color-amber-600-rgb: rgb(212 136 6);
  --document-color-amber-700: oklch(58.06235% 0.129332 65.9314);
  --document-color-amber-700-hex: #ad6800;
  --document-color-amber-700-rgb: rgb(173 104 0);
  --document-color-amber-800: oklch(47.84066% 0.108929 63.2107);
  --document-color-amber-800-hex: #874d00;
  --document-color-amber-800-rgb: rgb(135 77 0);
  --document-color-amber-900: oklch(37.4488% 0.086901 61.0979);
  --document-color-amber-900-hex: #613400;
  --document-color-amber-900-rgb: rgb(97 52 0);
  --document-color-amber-950: oklch(29.97768% 0.069507 61.1851);
  --document-color-amber-950-hex: #462400;
  --document-color-amber-950-rgb: rgb(70 36 0);

  --document-color-yellow-50: oklch(99.26917% 0.03258 108.8437);
  --document-color-yellow-50-hex: #feffe6;
  --document-color-yellow-50-rgb: rgb(254 255 230);
  --document-color-yellow-100: oklch(98.35317% 0.089612 107.9401);
  --document-color-yellow-100-hex: #ffffb8;
  --document-color-yellow-100-rgb: rgb(255 255 184);
  --document-color-yellow-200: oklch(96.88096% 0.130431 106.7294);
  --document-color-yellow-200-hex: #fffb8f;
  --document-color-yellow-200-rgb: rgb(255 251 143);
  --document-color-yellow-300: oklch(95.18742% 0.16163 105.2961);
  --document-color-yellow-300-hex: #fff566;
  --document-color-yellow-300-rgb: rgb(255 245 102);
  --document-color-yellow-400: oklch(93.05947% 0.180091 102.8414);
  --document-color-yellow-400-hex: #ffec3d;
  --document-color-yellow-400-rgb: rgb(255 236 61);
  --document-color-yellow-500: oklch(89.03306% 0.181774 98.639);
  --document-color-yellow-500-hex: #fadb14;
  --document-color-yellow-500-rgb: rgb(250 219 20);
  --document-color-yellow-600: oklch(76.86856% 0.156815 94.505);
  --document-color-yellow-600-hex: #d4b106;
  --document-color-yellow-600-rgb: rgb(212 177 6);
  --document-color-yellow-700: oklch(64.98982% 0.132882 91.3531);
  --document-color-yellow-700-hex: #ad8b00;
  --document-color-yellow-700-rgb: rgb(173 139 0);
  --document-color-yellow-800: oklch(53.34011% 0.109029 88.0266);
  --document-color-yellow-800-hex: #876800;
  --document-color-yellow-800-rgb: rgb(135 104 0);
  --document-color-yellow-900: oklch(41.48654% 0.085076 84.575);
  --document-color-yellow-900-hex: #614700;
  --document-color-yellow-900-rgb: rgb(97 71 0);
  --document-color-yellow-950: oklch(33.13688% 0.066487 83.3738);
  --document-color-yellow-950-hex: #463202;
  --document-color-yellow-950-rgb: rgb(70 50 2);

  --document-color-lime-50: oklch(99.11698% 0.032742 112.5483);
  --document-color-lime-50-hex: #fcffe6;
  --document-color-lime-50-rgb: rgb(252 255 230);
  --document-color-lime-100: oklch(97.51071% 0.091078 115.2767);
  --document-color-lime-100-hex: #f4ffb8;
  --document-color-lime-100-rgb: rgb(244 255 184);
  --document-color-lime-200: oklch(96.09379% 0.139009 117.8098);
  --document-color-lime-200-hex: #eaff8f;
  --document-color-lime-200-rgb: rgb(234 255 143);
  --document-color-lime-300: oklch(91.10677% 0.172477 120.148);
  --document-color-lime-300-hex: #d3f261;
  --document-color-lime-300-rgb: rgb(211 242 97);
  --document-color-lime-400: oklch(86.39295% 0.195714 123.2597);
  --document-color-lime-400-hex: #bae637;
  --document-color-lime-400-rgb: rgb(186 230 55);
  --document-color-lime-500: oklch(81.56582% 0.206117 126.5302);
  --document-color-lime-500-hex: #a0d911;
  --document-color-lime-500-rgb: rgb(160 217 17);
  --document-color-lime-600: oklch(70.16806% 0.183494 128.4364);
  --document-color-lime-600-hex: #7cb305;
  --document-color-lime-600-rgb: rgb(124 179 5);
  --document-color-lime-700: oklch(58.25135% 0.156687 129.9613);
  --document-color-lime-700-hex: #5b8c00;
  --document-color-lime-700-rgb: rgb(91 140 0);
  --document-color-lime-800: oklch(46.30674% 0.126112 130.7796);
  --document-color-lime-800-hex: #3f6600;
  --document-color-lime-800-rgb: rgb(63 102 0);
  --document-color-lime-900: oklch(33.66106% 0.092293 131.2152);
  --document-color-lime-900-hex: #254000;
  --document-color-lime-900-rgb: rgb(37 64 0);
  --document-color-lime-950: oklch(27.0777% 0.068315 131.3131);
  --document-color-lime-950-hex: #1a2d04;
  --document-color-lime-950-rgb: rgb(26 45 4);

  --document-color-green-50: oklch(98.8442% 0.025407 128.75);
  --document-color-green-50-hex: #f6ffed;
  --document-color-green-50-rgb: rgb(246 255 237);
  --document-color-green-100: oklch(94.02241% 0.081106 130.4401);
  --document-color-green-100-hex: #d9f7be;
  --document-color-green-100-rgb: rgb(217 247 190);
  --document-color-green-200: oklch(88.27344% 0.131381 132.5488);
  --document-color-green-200-hex: #b7eb8f;
  --document-color-green-200-rgb: rgb(183 235 143);
  --document-color-green-300: oklch(82.64923% 0.171944 134.4283);
  --document-color-green-300-hex: #95de64;
  --document-color-green-300-rgb: rgb(149 222 100);
  --document-color-green-400: oklch(77.38793% 0.201729 136.4504);
  --document-color-green-400-hex: #73d13d;
  --document-color-green-400-rgb: rgb(115 209 61);
  --document-color-green-500: oklch(72.55506% 0.21821 138.4875);
  --document-color-green-500-hex: #52c41a;
  --document-color-green-500-rgb: rgb(82 196 26);
  --document-color-green-600: oklch(61.53994% 0.191175 139.4163);
  --document-color-green-600-hex: #389e0d;
  --document-color-green-600-rgb: rgb(56 158 13);
  --document-color-green-700: oklch(50.22008% 0.159727 140.0395);
  --document-color-green-700-hex: #237804;
  --document-color-green-700-rgb: rgb(35 120 4);
  --document-color-green-800: oklch(38.39026% 0.124089 140.19);
  --document-color-green-800-hex: #135200;
  --document-color-green-800-rgb: rgb(19 82 0);
  --document-color-green-900: oklch(25.41946% 0.0803 139.0959);
  --document-color-green-900-hex: #092b00;
  --document-color-green-900-rgb: rgb(9 43 0);
  --document-color-green-950: oklch(20.30634% 0.05186 138.6828);
  --document-color-green-950-hex: #091c04;
  --document-color-green-950-rgb: rgb(9 28 4);

  --document-color-cyan-50: oklch(98.07921% 0.026498 185.1971);
  --document-color-cyan-50-hex: #e6fffb;
  --document-color-cyan-50-rgb: rgb(230 255 251);
  --document-color-cyan-100: oklch(92.47456% 0.065274 185.3653);
  --document-color-cyan-100-hex: #b5f5ec;
  --document-color-cyan-100-rgb: rgb(181 245 236);
  --document-color-cyan-200: oklch(86.84554% 0.093339 187.1043);
  --document-color-cyan-200-hex: #87e8de;
  --document-color-cyan-200-rgb: rgb(135 232 222);
  --document-color-cyan-300: oklch(81.85681% 0.112545 189.4713);
  --document-color-cyan-300-hex: #5cdbd3;
  --document-color-cyan-300-rgb: rgb(92 219 211);
  --document-color-cyan-400: oklch(77.69968% 0.122628 190.94);
  --document-color-cyan-400-hex: #36cfc9;
  --document-color-cyan-400-rgb: rgb(54 207 201);
  --document-color-cyan-500: oklch(73.81% 0.123806 194.8046);
  --document-color-cyan-500-hex: #13c2c2;
  --document-color-cyan-500-rgb: rgb(19 194 194);
  --document-color-cyan-600: oklch(61.48578% 0.103368 199.0019);
  --document-color-cyan-600-hex: #08979c;
  --document-color-cyan-600-rgb: rgb(8 151 156);
  --document-color-cyan-700: oklch(48.74288% 0.083073 203.6881);
  --document-color-cyan-700-hex: #006d75;
  --document-color-cyan-700-rgb: rgb(0 109 117);
  --document-color-cyan-800: oklch(36.38468% 0.062477 207.5885);
  --document-color-cyan-800-hex: #00474f;
  --document-color-cyan-800-rgb: rgb(0 71 79);
  --document-color-cyan-900: oklch(23.49532% 0.040822 211.2778);
  --document-color-cyan-900-hex: #002329;
  --document-color-cyan-900-rgb: rgb(0 35 41);
  --document-color-cyan-950: oklch(18.64907% 0.026145 213.4216);
  --document-color-cyan-950-hex: #04161a;
  --document-color-cyan-950-rgb: rgb(4 22 26);

  --document-color-blue-50: oklch(95.99775% 0.020993 241.3477);
  --document-color-blue-50-hex: #e6f4ff;
  --document-color-blue-50-rgb: rgb(230 244 255);
  --document-color-blue-100: oklch(88.96593% 0.058604 243.0275);
  --document-color-blue-100-hex: #bae0ff;
  --document-color-blue-100-rgb: rgb(186 224 255);
  --document-color-blue-200: oklch(81.93261% 0.09561 247.2559);
  --document-color-blue-200-hex: #91caff;
  --document-color-blue-200-rgb: rgb(145 202 255);
  --document-color-blue-300: oklch(74.60078% 0.134765 251.7806);
  --document-color-blue-300-hex: #69b1ff;
  --document-color-blue-300-rgb: rgb(105 177 255);
  --document-color-blue-400: oklch(67.25571% 0.176033 255.3021);
  --document-color-blue-400-hex: #4096ff;
  --document-color-blue-400-rgb: rgb(64 150 255);
  --document-color-blue-500: oklch(59.86574% 0.219351 259.0395);
  --document-color-blue-500-hex: #1677ff;
  --document-color-blue-500-rgb: rgb(22 119 255);
  --document-color-blue-600: oklch(50.44428% 0.209543 260.968);
  --document-color-blue-600-hex: #0958d9;
  --document-color-blue-600-rgb: rgb(9 88 217);
  --document-color-blue-700: oklch(41.79733% 0.193312 261.9996);
  --document-color-blue-700-hex: #003eb3;
  --document-color-blue-700-rgb: rgb(0 62 179);
  --document-color-blue-800: oklch(34.37978% 0.164597 262.4378);
  --document-color-blue-800-hex: #002c8c;
  --document-color-blue-800-rgb: rgb(0 44 140);
  --document-color-blue-900: oklch(27.27007% 0.132087 262.5747);
  --document-color-blue-900-hex: #001d66;
  --document-color-blue-900-rgb: rgb(0 29 102);
  --document-color-blue-950: oklch(21.73473% 0.106722 262.7283);
  --document-color-blue-950-hex: #00124a;
  --document-color-blue-950-rgb: rgb(0 18 74);

  --document-color-indigo-50: oklch(96.92627% 0.014407 264.4995);
  --document-color-indigo-50-hex: #f0f5ff;
  --document-color-indigo-50-rgb: rgb(240 245 255);
  --document-color-indigo-100: oklch(91.673% 0.03988 263.6614);
  --document-color-indigo-100-hex: #d6e4ff;
  --document-color-indigo-100-rgb: rgb(214 228 255);
  --document-color-indigo-200: oklch(82.80996% 0.08509 266.1661);
  --document-color-indigo-200-hex: #adc6ff;
  --document-color-indigo-200-rgb: rgb(173 198 255);
  --document-color-indigo-300: oklch(73.57085% 0.135691 268.1291);
  --document-color-indigo-300-hex: #85a5ff;
  --document-color-indigo-300-rgb: rgb(133 165 255);
  --document-color-indigo-400: oklch(62.82495% 0.185155 267.9622);
  --document-color-indigo-400-hex: #597ef7;
  --document-color-indigo-400-rgb: rgb(89 126 247);
  --document-color-indigo-500: oklch(52.18452% 0.230136 266.8492);
  --document-color-indigo-500-hex: #2f54eb;
  --document-color-indigo-500-rgb: rgb(47 84 235);
  --document-color-indigo-600: oklch(43.26422% 0.215509 266.6568);
  --document-color-indigo-600-hex: #1d39c4;
  --document-color-indigo-600-rgb: rgb(29 57 196);
  --document-color-indigo-700: oklch(35.29247% 0.194119 266.421);
  --document-color-indigo-700-hex: #10239e;
  --document-color-indigo-700-rgb: rgb(16 35 158);
  --document-color-indigo-800: oklch(27.81013% 0.166253 265.93);
  --document-color-indigo-800-hex: #061178;
  --document-color-indigo-800-rgb: rgb(6 17 120);
  --document-color-indigo-900: oklch(21.27464% 0.127487 266.1444);
  --document-color-indigo-900-hex: #030852;
  --document-color-indigo-900-rgb: rgb(3 8 82);
  --document-color-indigo-950: oklch(17.02624% 0.098076 266.6863);
  --document-color-indigo-950-hex: #020539;
  --document-color-indigo-950-rgb: rgb(2 5 57);

  --document-color-purple-50: oklch(96.64631% 0.021985 312.189);
  --document-color-purple-50-hex: #f9f0ff;
  --document-color-purple-50-rgb: rgb(249 240 255);
  --document-color-purple-100: oklch(91.85669% 0.052681 310.1339);
  --document-color-purple-100-hex: #efdbff;
  --document-color-purple-100-rgb: rgb(239 219 255);
  --document-color-purple-200: oklch(80.68692% 0.109525 307.5386);
  --document-color-purple-200-hex: #d3adf7;
  --document-color-purple-200-rgb: rgb(211 173 247);
  --document-color-purple-300: oklch(69.17386% 0.16075 304.777);
  --document-color-purple-300-hex: #b37feb;
  --document-color-purple-300-rgb: rgb(179 127 235);
  --document-color-purple-400: oklch(58.44411% 0.202443 300.9941);
  --document-color-purple-400-hex: #9254de;
  --document-color-purple-400-rgb: rgb(146 84 222);
  --document-color-purple-500: oklch(49.42122% 0.228354 295.5827);
  --document-color-purple-500-hex: #722ed1;
  --document-color-purple-500-rgb: rgb(114 46 209);
  --document-color-purple-600: oklch(40.89444% 0.202135 291.8808);
  --document-color-purple-600-hex: #531dab;
  --document-color-purple-600-rgb: rgb(83 29 171);
  --document-color-purple-700: oklch(32.9807% 0.171455 288.6833);
  --document-color-purple-700-hex: #391085;
  --document-color-purple-700-rgb: rgb(57 16 133);
  --document-color-purple-800: oklch(25.18916% 0.13527 285.4754);
  --document-color-purple-800-hex: #22075e;
  --document-color-purple-800-rgb: rgb(34 7 94);
  --document-color-purple-900: oklch(18.02165% 0.09465 286.3592);
  --document-color-purple-900-hex: #120338;
  --document-color-purple-900-rgb: rgb(18 3 56);
  --document-color-purple-950: oklch(14.33648% 0.066184 287.4038);
  --document-color-purple-950-hex: #0a0323;
  --document-color-purple-950-rgb: rgb(10 3 35);

  --document-color-fuchsia-50: oklch(96.86172% 0.017924 351.1414);
  --document-color-fuchsia-50-hex: #fff0f6;
  --document-color-fuchsia-50-rgb: rgb(255 240 246);
  --document-color-fuchsia-100: oklch(91.55441% 0.050558 351.2789);
  --document-color-fuchsia-100-hex: #ffd6e7;
  --document-color-fuchsia-100-rgb: rgb(255 214 231);
  --document-color-fuchsia-200: oklch(83.69596% 0.105864 350.9813);
  --document-color-fuchsia-200-hex: #ffadd2;
  --document-color-fuchsia-200-rgb: rgb(255 173 210);
  --document-color-fuchsia-300: oklch(76.8955% 0.16115 351.2217);
  --document-color-fuchsia-300-hex: #ff85c0;
  --document-color-fuchsia-300-rgb: rgb(255 133 192);
  --document-color-fuchsia-400: oklch(69.57379% 0.207752 351.7484);
  --document-color-fuchsia-400-hex: #f759ab;
  --document-color-fuchsia-400-rgb: rgb(247 89 171);
  --document-color-fuchsia-500: oklch(63.38387% 0.234534 353.1528);
  --document-color-fuchsia-500-hex: #eb2f96;
  --document-color-fuchsia-500-rgb: rgb(235 47 150);
  --document-color-fuchsia-600: oklch(54.92869% 0.212267 351.5608);
  --document-color-fuchsia-600-hex: #c41d7f;
  --document-color-fuchsia-600-rgb: rgb(196 29 127);
  --document-color-fuchsia-700: oklch(46.67926% 0.185499 350.0888);
  --document-color-fuchsia-700-hex: #9e1068;
  --document-color-fuchsia-700-rgb: rgb(158 16 104);
  --document-color-fuchsia-800: oklch(38.16651% 0.155152 348.6655);
  --document-color-fuchsia-800-hex: #780650;
  --document-color-fuchsia-800-rgb: rgb(120 6 80);
  --document-color-fuchsia-900: oklch(29.43975% 0.120686 345.745);
  --document-color-fuchsia-900-hex: #520339;
  --document-color-fuchsia-900-rgb: rgb(82 3 57);
  --document-color-fuchsia-950: oklch(23.55871% 0.093211 346.3049);
  --document-color-fuchsia-950-hex: #3a0327;
  --document-color-fuchsia-950-rgb: rgb(58 3 39);

  --document-color-neutral-50: oklch(97.91294% 0 0);
  --document-color-neutral-50-hex: #f8f8f8;
  --document-color-neutral-50-rgb: rgb(248 248 248);
  --document-color-neutral-100: oklch(92.79706% 0 0);
  --document-color-neutral-100-hex: #e7e7e7;
  --document-color-neutral-100-rgb: rgb(231 231 231);
  --document-color-neutral-200: oklch(86.06939% 0 0);
  --document-color-neutral-200-hex: #d1d1d1;
  --document-color-neutral-200-rgb: rgb(209 209 209);
  --document-color-neutral-300: oklch(77.94405% 0 0);
  --document-color-neutral-300-hex: #b7b7b7;
  --document-color-neutral-300-rgb: rgb(183 183 183);
  --document-color-neutral-400: oklch(69.27493% 0 0);
  --document-color-neutral-400-hex: #9c9c9c;
  --document-color-neutral-400-rgb: rgb(156 156 156);
  --document-color-neutral-500: oklch(59.64895% 0 0);
  --document-color-neutral-500-hex: #7f7f7f;
  --document-color-neutral-500-rgb: rgb(127 127 127);
  --document-color-neutral-600: oklch(50.32293% 0 0);
  --document-color-neutral-600-hex: #646464;
  --document-color-neutral-600-rgb: rgb(100 100 100);
  --document-color-neutral-700: oklch(41.2834% 0 0);
  --document-color-neutral-700-hex: #4b4b4b;
  --document-color-neutral-700-rgb: rgb(75 75 75);
  --document-color-neutral-800: oklch(33.289% 0 0);
  --document-color-neutral-800-hex: #363636;
  --document-color-neutral-800-rgb: rgb(54 54 54);
  --document-color-neutral-900: oklch(26.44797% 0 0);
  --document-color-neutral-900-hex: #252525;
  --document-color-neutral-900-rgb: rgb(37 37 37);
  --document-color-neutral-950: oklch(21.34225% 0 0);
  --document-color-neutral-950-hex: #191919;
  --document-color-neutral-950-rgb: rgb(25 25 25);

  --document-color-black: #000000;
  --document-color-white: #ffffff;
  --document-color-transparent: rgb(0 0 0 / 0);

  --document-text-bold: var(--document-color-neutral-900-hex);
  --document-text-moderate: var(--document-color-neutral-600-hex);
  --document-text-subtle: var(--document-color-neutral-500-hex);
  --document-text-minimal: var(--document-color-neutral-300-hex);
  --document-text-inverted: var(--document-color-white);

  --document-border-minimal: var(--document-color-neutral-100-hex);
  --document-border-subtle: var(--document-color-neutral-200-hex);
  --document-border-moderate: var(--document-color-neutral-300-hex);
  --document-border-bold: var(--document-color-neutral-500-hex);

  --document-bg-minimal: var(--document-color-white);
  --document-bg-subtle: var(--document-color-neutral-50-hex);
  --document-bg-moderate: var(--document-color-neutral-100-hex);
  --document-bg-bold: var(--document-color-neutral-200-hex);
  --document-divider-color: var(--document-color-neutral-100-hex);

  --document-accent-minimal: var(--document-color-blue-50-hex);
  --document-accent-subtle: var(--document-color-blue-100-hex);
  --document-accent-moderate: var(--document-color-blue-500-hex);
  --document-accent-bold: var(--document-color-blue-600-hex);
  --document-accent-bold-fallback: var(--document-color-blue-600-hex);
  --document-status-info: var(--document-color-blue-600-hex);
  --document-status-success: var(--document-color-green-600-hex);
  --document-status-warning: var(--document-color-amber-600-hex);
  --document-status-error: var(--document-color-red-600-hex);
  --document-status-info-subtle: var(--document-color-blue-50-hex);
  --document-status-success-subtle: var(--document-color-green-50-hex);
  --document-status-warning-subtle: var(--document-color-amber-50-hex);
  --document-status-error-subtle: var(--document-color-red-50-hex);
}

.document[data-document-color="mono"] {
  --document-accent-minimal: var(--document-color-neutral-50-hex);
  --document-accent-subtle: var(--document-color-neutral-100-hex);
  --document-accent-moderate: var(--document-color-neutral-600-hex);
  --document-accent-bold: var(--document-color-neutral-900-hex);
  --document-accent-bold-fallback: var(--document-color-neutral-900-hex);
  --document-status-info: var(--document-color-neutral-700-hex);
  --document-status-success: var(--document-color-neutral-700-hex);
  --document-status-warning: var(--document-color-neutral-700-hex);
  --document-status-error: var(--document-color-neutral-900-hex);
  --document-status-info-subtle: var(--document-color-neutral-50-hex);
  --document-status-success-subtle: var(--document-color-neutral-100-hex);
  --document-status-warning-subtle: var(--document-color-neutral-200-hex);
  --document-status-error-subtle: var(--document-color-neutral-300-hex);
}

:root {
  --document-color-bold: initial;
  --document-color-moderate: initial;
  --document-color-subtle: initial;
  --document-color-minimal: initial;
  --document-color-inverted: initial;
}

/* ← ./document-ds/tokens/presentation-contract.css */
:root,
.document {
  --document-color-primary: var(--document-color-blue-900-hex);
  --document-color-secondary: var(--document-color-cyan-700-hex);
  --document-color-tertiary: var(--document-color-amber-800-hex);

  --document-color-data-categorical-1: var(--document-color-blue-600-hex);
  --document-color-data-categorical-2: var(--document-color-cyan-700-hex);
  --document-color-data-categorical-3: var(--document-color-amber-800-hex);
  --document-color-data-categorical-4: var(--document-color-purple-600-hex);
  --document-color-data-categorical-5: var(--document-color-fuchsia-600-hex);
  --document-color-data-categorical-6: var(--document-color-neutral-600-hex);

  --document-color-data-sequential-1: var(--document-color-blue-100-hex);
  --document-color-data-sequential-2: var(--document-color-blue-300-hex);
  --document-color-data-sequential-3: var(--document-color-blue-500-hex);
  --document-color-data-sequential-4: var(--document-color-blue-700-hex);
  --document-color-data-sequential-5: var(--document-color-blue-900-hex);

  --document-color-data-diverging-1: var(--document-color-amber-800-hex);
  --document-color-data-diverging-2: var(--document-color-amber-300-hex);
  --document-color-data-diverging-3: var(--document-color-neutral-100-hex);
  --document-color-data-diverging-4: var(--document-color-blue-300-hex);
  --document-color-data-diverging-5: var(--document-color-blue-800-hex);

  --document-columns-count: 2;
  --document-columns-gap: var(--document-space-6);
  --document-columns-min-inline-size: calc(
    (210mm - 2 * var(--document-page-inset-sm) - var(--document-columns-gap)) /
      var(--document-columns-count)
  );

  --document-figure-gap: var(--document-space-2);
  --document-figure-title-font-size: var(--document-text-lead-size);
  --document-figure-title-line-height: var(--document-text-lead-line-height);
  --document-figure-description-font-size: var(--document-text-small-size);
  --document-figure-description-line-height: var(--document-text-small-line-height);
  --document-figure-caption-font-size: var(--document-text-compact-size);
  --document-figure-caption-line-height: var(--document-text-compact-line-height);
  --document-chart-label-font-size: var(--document-text-compact-size);
  --document-chart-line-width: var(--document-stroke-thin);
  --document-chart-axis-width: var(--document-stroke-hairline);
  --document-chart-grid-width: var(--document-stroke-hairline);
  --document-chart-series-color: var(--document-color-data-categorical-1);
  --document-chart-dasharray: none;

  --document-media-gap: var(--document-space-2);
  --document-media-caption-font-size: var(--document-text-compact-size);
  --document-media-caption-line-height: var(--document-text-compact-line-height);
  --document-cover-gap: var(--document-space-4);
  --document-cover-padding-block: var(--document-space-8);
  --document-cover-rule-width: var(--document-stroke-medium);
  --document-cover-title-font-size: var(--document-text-heading-1-size);
  --document-cover-title-line-height: var(--document-text-heading-1-line-height);
  --document-cover-summary-font-size: var(--document-text-lead-size);
  --document-cover-summary-line-height: var(--document-text-lead-line-height);
  --document-cover-meta-font-size: var(--document-text-small-size);
  --document-cover-meta-line-height: var(--document-text-small-line-height);
}

.document[data-document-theme="editorial-navy"] {
  --document-color-primary: var(--document-color-blue-900-hex);
  --document-color-secondary: var(--document-color-cyan-700-hex);
  --document-color-tertiary: var(--document-color-amber-800-hex);
}

.document[data-document-theme="executive-red"] {
  --document-color-primary: var(--document-color-red-700-hex);
  --document-color-secondary: var(--document-color-neutral-800-hex);
  --document-color-tertiary: var(--document-color-blue-800-hex);
}

.document[data-document-theme="analytical-green"] {
  --document-color-primary: var(--document-color-green-800-hex);
  --document-color-secondary: var(--document-color-cyan-700-hex);
  --document-color-tertiary: var(--document-color-amber-800-hex);
}

.document[data-document-color="mono"] {
  --document-color-primary: var(--document-color-neutral-950-hex);
  --document-color-secondary: var(--document-color-neutral-700-hex);
  --document-color-tertiary: var(--document-color-neutral-600-hex);
  --document-color-data-categorical-1: var(--document-color-neutral-950-hex);
  --document-color-data-categorical-2: var(--document-color-neutral-600-hex);
  --document-color-data-categorical-3: var(--document-color-neutral-800-hex);
  --document-color-data-categorical-4: var(--document-color-neutral-500-hex);
  --document-color-data-categorical-5: var(--document-color-neutral-700-hex);
  --document-color-data-categorical-6: var(--document-color-neutral-900-hex);
  --document-color-data-sequential-1: var(--document-color-neutral-100-hex);
  --document-color-data-sequential-2: var(--document-color-neutral-300-hex);
  --document-color-data-sequential-3: var(--document-color-neutral-500-hex);
  --document-color-data-sequential-4: var(--document-color-neutral-700-hex);
  --document-color-data-sequential-5: var(--document-color-neutral-900-hex);
  --document-color-data-diverging-1: var(--document-color-neutral-900-hex);
  --document-color-data-diverging-2: var(--document-color-neutral-500-hex);
  --document-color-data-diverging-3: var(--document-color-neutral-100-hex);
  --document-color-data-diverging-4: var(--document-color-neutral-400-hex);
  --document-color-data-diverging-5: var(--document-color-neutral-800-hex);
}

@media screen {
  :root {
    --document-reading-max-inline-size: 64rem;
    --document-reading-inset: 1.5rem;
    --document-reading-font-size: 1rem;
    --document-reading-line-height: 1.625;
    --document-reading-small-font-size: 0.875rem;
    --document-reading-small-line-height: 1.5;
    --document-reading-caption-font-size: 0.875rem;
    --document-reading-caption-line-height: 1.5;
    --document-reading-lead-font-size: 1.25rem;
    --document-reading-lead-line-height: 1.5;
    --document-reading-title-font-size: 2.25rem;
    --document-reading-title-line-height: 1.25;
    --document-reading-heading-2-font-size: 1.5rem;
    --document-reading-heading-3-font-size: 1.25rem;
    --document-reading-heading-4-font-size: 1.125rem;
    --document-reading-heading-5-font-size: 1rem;
    --document-reading-heading-6-font-size: 0.875rem;
    --document-reading-heading-line-height: 1.375;
    --document-reading-gap: 1rem;
    --document-reading-section-gap: 2rem;
    --document-reading-cell-padding: 0.5rem;
  }

  .document.document-reading {
    --document-text-body-size: var(--document-reading-font-size);
    --document-text-body-line-height: var(--document-reading-line-height);
    --document-text-small-size: var(--document-reading-small-font-size);
    --document-text-small-line-height: var(--document-reading-small-line-height);
    --document-text-compact-size: var(--document-reading-caption-font-size);
    --document-text-compact-line-height: var(--document-reading-caption-line-height);
    --document-text-caption-size: var(--document-reading-caption-font-size);
    --document-text-caption-line-height: var(--document-reading-caption-line-height);
    --document-text-lead-size: var(--document-reading-lead-font-size);
    --document-text-lead-line-height: var(--document-reading-lead-line-height);
    --document-text-heading-1-size: var(--document-reading-title-font-size);
    --document-text-heading-1-line-height: var(--document-reading-title-line-height);
    --document-text-heading-2-size: var(--document-reading-heading-2-font-size);
    --document-text-heading-2-line-height: var(--document-reading-heading-line-height);
    --document-text-heading-3-size: var(--document-reading-heading-3-font-size);
    --document-text-heading-3-line-height: var(--document-reading-heading-line-height);
    --document-text-heading-4-size: var(--document-reading-heading-4-font-size);
    --document-text-heading-4-line-height: var(--document-reading-heading-line-height);
    --document-text-heading-5-size: var(--document-reading-heading-5-font-size);
    --document-text-heading-5-line-height: var(--document-reading-lead-line-height);
    --document-text-heading-6-size: var(--document-reading-heading-6-font-size);
    --document-text-heading-6-line-height: var(--document-reading-heading-line-height);
    --document-columns-min-inline-size: 24rem;
    --document-columns-gap: var(--document-reading-section-gap);
    --document-figure-gap: var(--document-reading-gap);
    --document-figure-title-font-size: var(--document-reading-lead-font-size);
    --document-figure-title-line-height: var(--document-reading-lead-line-height);
    --document-figure-description-font-size: var(--document-reading-font-size);
    --document-figure-description-line-height: var(--document-reading-line-height);
    --document-figure-caption-font-size: var(--document-reading-caption-font-size);
    --document-figure-caption-line-height: var(--document-reading-caption-line-height);
    --document-chart-label-font-size: var(--document-reading-caption-font-size);
    --document-media-gap: var(--document-reading-gap);
    --document-media-caption-font-size: var(--document-reading-caption-font-size);
    --document-media-caption-line-height: var(--document-reading-caption-line-height);
    --document-cover-gap: var(--document-reading-gap);
    --document-cover-padding-block: var(--document-reading-section-gap);
    --document-cover-title-font-size: var(--document-reading-title-font-size);
    --document-cover-title-line-height: var(--document-reading-title-line-height);
    --document-cover-summary-font-size: var(--document-reading-lead-font-size);
    --document-cover-summary-line-height: var(--document-reading-lead-line-height);
    --document-cover-meta-font-size: var(--document-reading-small-font-size);
    --document-cover-meta-line-height: var(--document-reading-small-line-height);
  }
}

@layer base {
/* ← ./document-ds/foundations/document-color.css */
.document {
  color: var(--document-color-bold, var(--document-text-bold));

  :is(.document-color-bold, .document-text-bold),
  .text-bold {
    color: var(--document-color-bold, var(--document-text-bold));
  }

  :is(.document-color-moderate, .document-text-moderate),
  .text-moderate {
    color: var(--document-color-moderate, var(--document-text-moderate));
  }

  :is(.document-color-subtle, .document-text-subtle),
  .text-subtle {
    color: var(--document-color-subtle, var(--document-text-subtle));
  }

  :is(.document-color-minimal, .document-text-minimal),
  .text-minimal {
    color: var(--document-color-minimal, var(--document-text-minimal));
  }

  :is(.document-color-inverted, .document-text-inverted),
  .text-inverted {
    color: var(--document-color-inverted, var(--document-text-inverted));
  }

  .document-border-minimal,
  .border-minimal {
    --_print-border-color: var(--document-border-minimal);
  }

  .document-border-subtle,
  .border-subtle {
    --_print-border-color: var(--document-border-subtle);
  }

  .document-border-moderate,
  .border-moderate {
    --_print-border-color: var(--document-border-moderate);
  }

  .document-border-bold,
  .border-bold {
    --_print-border-color: var(--document-border-bold);
  }

  .document-divider,
  .document-separator,
  .divider,
  .separator {
    --_print-border-color: var(--document-divider-color);
  }

  .document-bg-minimal,
  .bg-minimal {
    background-color: var(--document-bg-minimal);
  }

  .document-bg-subtle,
  .bg-subtle {
    background-color: var(--document-bg-subtle);
  }

  .document-bg-moderate,
  .bg-moderate {
    background-color: var(--document-bg-moderate);
  }

  .document-bg-bold,
  .bg-bold {
    background-color: var(--document-bg-bold);
  }

  .document-bg-accent-minimal {
    background-color: var(--document-accent-minimal);
  }

  .document-bg-accent-subtle {
    background-color: var(--document-accent-subtle);
  }

  .document-bg-accent-moderate {
    background-color: var(--document-accent-moderate);
  }

  .document-bg-accent-bold {
    background-color: var(--document-accent-bold);
  }

  :is(.document-color-accent, .document-text-accent) {
    color: var(--document-accent-bold);
  }

  :is(.document-color-info, .document-text-info) {
    color: var(--document-status-info);
  }
  :is(.document-color-success, .document-text-success) {
    color: var(--document-status-success);
  }
  :is(.document-color-warning, .document-text-warning) {
    color: var(--document-status-warning);
  }
  :is(.document-color-error, .document-text-error) {
    color: var(--document-status-error);
  }

  .document-bg-info-subtle {
    background-color: var(--document-status-info-subtle);
  }
  .document-bg-success-subtle {
    background-color: var(--document-status-success-subtle);
  }
  .document-bg-warning-subtle {
    background-color: var(--document-status-warning-subtle);
  }
  .document-bg-error-subtle {
    background-color: var(--document-status-error-subtle);
  }
}
}

@layer base {
/* ← ./document-ds/foundations/document-layout.css */
@page {
  size: A4 portrait;
  margin: 0;
}

@page leysys-a4-portrait {
  size: A4 portrait;
  margin: 0;
}

@page leysys-a4-landscape {
  size: A4 landscape;
  margin: 0;
}

@page leysys-a3-portrait {
  size: A3 portrait;
  margin: 0;
}

@page leysys-a3-landscape {
  size: A3 landscape;
  margin: 0;
}

@page leysys-a4-portrait-flow-xs {
  size: A4 portrait;
  margin: 6mm;
}
@page leysys-a4-portrait-flow-sm {
  size: A4 portrait;
  margin: 12mm;
}
@page leysys-a4-portrait-flow-md {
  size: A4 portrait;
  margin: 18mm;
}
@page leysys-a4-portrait-flow-lg {
  size: A4 portrait;
  margin: 24mm;
}
@page leysys-a4-portrait-flow-xl {
  size: A4 portrait;
  margin: 30mm;
}

@page leysys-a4-landscape-flow-xs {
  size: A4 landscape;
  margin: 6mm;
}
@page leysys-a4-landscape-flow-sm {
  size: A4 landscape;
  margin: 12mm;
}
@page leysys-a4-landscape-flow-md {
  size: A4 landscape;
  margin: 18mm;
}
@page leysys-a4-landscape-flow-lg {
  size: A4 landscape;
  margin: 24mm;
}
@page leysys-a4-landscape-flow-xl {
  size: A4 landscape;
  margin: 30mm;
}

@page leysys-a3-portrait-flow-xs {
  size: A3 portrait;
  margin: 6mm;
}
@page leysys-a3-portrait-flow-sm {
  size: A3 portrait;
  margin: 12mm;
}
@page leysys-a3-portrait-flow-md {
  size: A3 portrait;
  margin: 18mm;
}
@page leysys-a3-portrait-flow-lg {
  size: A3 portrait;
  margin: 24mm;
}
@page leysys-a3-portrait-flow-xl {
  size: A3 portrait;
  margin: 30mm;
}

@page leysys-a3-landscape-flow-xs {
  size: A3 landscape;
  margin: 6mm;
}
@page leysys-a3-landscape-flow-sm {
  size: A3 landscape;
  margin: 12mm;
}
@page leysys-a3-landscape-flow-md {
  size: A3 landscape;
  margin: 18mm;
}
@page leysys-a3-landscape-flow-lg {
  size: A3 landscape;
  margin: 24mm;
}
@page leysys-a3-landscape-flow-xl {
  size: A3 landscape;
  margin: 30mm;
}

@media print {
  html,
  body {
    margin: 0;
    padding: 0;
  }

  .no-print,
  .document-app-chrome {
    display: none !important;
  }

  .document,
  .document * {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .document .document-page-break-before {
    break-before: page;
  }

  .document .document-page-break-after {
    break-after: page;
  }

  .document .document-keep-together {
    break-inside: avoid;
  }

  .document .document-keep-with-next {
    break-after: avoid;
  }
}

.document {
  background-color: var(--document-color-white);
  box-sizing: border-box;

  &.document-a4-portrait {
    --document-page-width: 210mm;
    --document-page-height: 297mm;

    page: leysys-a4-portrait;
  }

  &.document-a4-landscape {
    --document-page-width: 297mm;
    --document-page-height: 210mm;

    page: leysys-a4-landscape;
  }

  &.document-a3-portrait {
    --document-page-width: 297mm;
    --document-page-height: 420mm;

    page: leysys-a3-portrait;
  }

  &.document-a3-landscape {
    --document-page-width: 420mm;
    --document-page-height: 297mm;

    page: leysys-a3-landscape;
  }

  &.document-flow.document-a4-portrait {
    page: leysys-a4-portrait-flow-xs;
  }
  &.document-flow.document-a4-portrait.document-sm {
    page: leysys-a4-portrait-flow-sm;
  }
  &.document-flow.document-a4-portrait.document-md {
    page: leysys-a4-portrait-flow-md;
  }
  &.document-flow.document-a4-portrait.document-lg {
    page: leysys-a4-portrait-flow-lg;
  }
  &.document-flow.document-a4-portrait.document-xl {
    page: leysys-a4-portrait-flow-xl;
  }

  &.document-flow.document-a4-landscape {
    page: leysys-a4-landscape-flow-xs;
  }
  &.document-flow.document-a4-landscape.document-sm {
    page: leysys-a4-landscape-flow-sm;
  }
  &.document-flow.document-a4-landscape.document-md {
    page: leysys-a4-landscape-flow-md;
  }
  &.document-flow.document-a4-landscape.document-lg {
    page: leysys-a4-landscape-flow-lg;
  }
  &.document-flow.document-a4-landscape.document-xl {
    page: leysys-a4-landscape-flow-xl;
  }

  &.document-flow.document-a3-portrait {
    page: leysys-a3-portrait-flow-xs;
  }
  &.document-flow.document-a3-portrait.document-sm {
    page: leysys-a3-portrait-flow-sm;
  }
  &.document-flow.document-a3-portrait.document-md {
    page: leysys-a3-portrait-flow-md;
  }
  &.document-flow.document-a3-portrait.document-lg {
    page: leysys-a3-portrait-flow-lg;
  }
  &.document-flow.document-a3-portrait.document-xl {
    page: leysys-a3-portrait-flow-xl;
  }

  &.document-flow.document-a3-landscape {
    page: leysys-a3-landscape-flow-xs;
  }
  &.document-flow.document-a3-landscape.document-sm {
    page: leysys-a3-landscape-flow-sm;
  }
  &.document-flow.document-a3-landscape.document-md {
    page: leysys-a3-landscape-flow-md;
  }
  &.document-flow.document-a3-landscape.document-lg {
    page: leysys-a3-landscape-flow-lg;
  }
  &.document-flow.document-a3-landscape.document-xl {
    page: leysys-a3-landscape-flow-xl;
  }

  &:is(
    .document-a4-portrait,
    .document-a4-landscape,
    .document-a3-portrait,
    .document-a3-landscape
  ) {
    width: var(--document-page-width);
    height: var(--document-page-height);
  }

  &.document-flow:is(
      .document-a4-portrait,
      .document-a4-landscape,
      .document-a3-portrait,
      .document-a3-landscape
    ) {
    height: auto;
    min-height: var(--document-page-height);
  }

  .layout-a4-portrait {
    --document-layout-width: 210mm;
    --document-layout-height: 297mm;
  }

  .layout-a4-landscape {
    --document-layout-width: 297mm;
    --document-layout-height: 210mm;
  }

  .layout-a3-portrait {
    --document-layout-width: 297mm;
    --document-layout-height: 420mm;
  }

  .layout-a3-landscape {
    --document-layout-width: 420mm;
    --document-layout-height: 297mm;
  }

  :is(.layout-a4-portrait, .layout-a4-landscape, .layout-a3-portrait, .layout-a3-landscape) {
    box-sizing: border-box;
    width: var(--document-layout-width);
    height: var(--document-layout-height);
    padding: var(--document-page-inset, var(--document-page-inset-xs));
  }

  &.document-flow
    :is(.layout-a4-portrait, .layout-a4-landscape, .layout-a3-portrait, .layout-a3-landscape) {
    height: auto;
    min-height: var(--document-layout-height);
  }

  .section,
  .article {
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
  }
}

.document-xs {
  --document-page-inset: var(--document-page-inset-xs);
}

.document-sm {
  --document-page-inset: var(--document-page-inset-sm);
}

.document-md {
  --document-page-inset: var(--document-page-inset-md);
}

.document-lg {
  --document-page-inset: var(--document-page-inset-lg);
}

.document-xl {
  --document-page-inset: var(--document-page-inset-xl);
}

@media print {
  .document.document-flow:is(
      .document-a4-portrait,
      .document-a4-landscape,
      .document-a3-portrait,
      .document-a3-landscape
    ) {
    width: auto;
    min-height: 0;
  }

  .document.document-flow
    :is(.layout-a4-portrait, .layout-a4-landscape, .layout-a3-portrait, .layout-a3-landscape) {
    width: auto;
    min-height: 0;
    padding: 0;
  }
}
}

@layer base {
/* ← ./document-ds/foundations/document-typography.css */
.document {
  font-family: var(--document-font-family);
  color: var(--document-color-bold, var(--document-text-bold));
  font-size: var(--document-text-body-size);
  line-height: var(--document-text-body-line-height);
  font-weight: var(--document-font-weight-normal, var(--document-font-weight-regular));
  text-rendering: optimizeLegibility;
  overflow-wrap: anywhere;
}

:where(.document [lang]) {
  font-family: var(--document-font-family);
}

.document:lang(ko),
.document :lang(ko) {
  word-break: keep-all;
}

.document,
.document *,
.document *::before,
.document *::after {
  box-sizing: border-box;
}
}

@layer components {
/* ← ./document-ds/components/document-typeset.css */
.document-typeset {
  min-width: 0;
}

.document-typeset :where(h1, h2, h3, h4, h5, h6) {
  margin: 0;
  color: var(--document-color-bold, var(--document-text-bold));
  font-family: var(--document-font-family);
  font-style: normal;
  font-weight: var(--document-font-weight-medium);
}

.document-typeset h1 {
  font-size: var(--document-text-heading-1-size);
  line-height: var(--document-text-heading-1-line-height);
}

.document-typeset h2 {
  font-size: var(--document-text-heading-2-size);
  line-height: var(--document-text-heading-2-line-height);
}

.document-typeset h3 {
  font-size: var(--document-text-heading-3-size);
  line-height: var(--document-text-heading-3-line-height);
}

.document-typeset h4 {
  font-size: var(--document-text-heading-4-size);
  line-height: var(--document-text-heading-4-line-height);
}

.document-typeset h5 {
  font-size: var(--document-text-heading-5-size);
  line-height: var(--document-text-heading-5-line-height);
}

.document-typeset h6 {
  font-size: var(--document-text-heading-6-size);
  line-height: var(--document-text-heading-6-line-height);
}

.document-typeset p {
  display: block;
  margin-block: var(--document-space-4);
  margin-inline: 0;
  font-size: inherit;
  line-height: inherit;
}

.document-typeset :where(ul, ol) {
  margin-block: var(--document-space-2);
  padding-inline-start: var(--document-space-6);
}

.document-typeset > :last-child {
  margin-block-end: 0;
}

.document-typeset :where(strong, b) {
  font-weight: var(--document-font-weight-bold);
}

.document-typeset :where(small, figcaption, caption) {
  font-size: var(--document-text-compact-size);
  line-height: var(--document-text-compact-line-height);
}

.document-typeset :where(a) {
  color: inherit;
  text-decoration-thickness: var(--document-stroke-hairline);
  text-underline-offset: var(--document-stroke-thin);
}

.document-typeset :where(sub, sup) {
  position: relative;
  font-size: var(--document-font-size-8);
  line-height: 0;
  vertical-align: baseline;
}

.document-typeset sup {
  inset-block-start: -0.5mm;
}

.document-typeset sub {
  inset-block-end: -0.25mm;
}

@media print {
  .document-typeset :where(h1, h2, h3, h4, h5, h6) {
    break-after: avoid;
  }

  .document-typeset :where(pre, blockquote, figure) {
    break-inside: avoid;
  }
}
}

@layer components {
/* ← ./document-ds/components/document-content.css */
.document {
  .document-content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: var(--document-space-2);
    color: var(--document-color-bold, var(--document-text-bold));
    font-size: var(--document-text-small-size);
    line-height: var(--document-text-small-line-height);
  }

  .document-content-header,
  .document-content-body,
  .document-content-footer,
  .document-content-section,
  .document-content-section-body {
    min-width: 0;
  }

  .document-content-header {
    display: grid;
    gap: var(--document-space-2);
  }

  .document-content-body {
    display: flex;
    flex-direction: column;
    gap: var(--document-space-3);
  }

  .document-content-title {
    margin: 0;
    text-align: center;
    font-size: var(--document-font-size-18);
    line-height: var(--document-line-height-24);
    font-weight: var(--document-font-weight-medium);
    letter-spacing: 2pt;
  }

  .document-content-subtitle {
    margin: 0;
    text-align: center;
    color: var(--document-color-moderate, var(--document-text-moderate));
    font-size: var(--document-font-size-10);
    line-height: var(--document-line-height-14);
  }

  .document-content-meta {
    display: grid;
    border-block-start: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-content-meta-row {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(30mm, auto) minmax(0, 1fr);
    border-block-end: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-content-meta-label,
  .document-content-meta-value {
    min-width: 0;
    padding: var(--document-space-1) var(--document-space-2);
  }

  .document-content-meta-label {
    background: var(--document-bg-subtle);
    font-weight: var(--document-font-weight-medium);
  }

  .document-content-section {
    display: grid;
    gap: var(--document-space-1);
  }

  .document-content-section-header,
  .document-content-article-title {
    font-weight: var(--document-font-weight-bold);
  }

  .document-content-parties {
    border: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-content-parties .label {
    background-color: var(--document-bg-subtle);
    font-weight: var(--document-font-weight-medium);
    white-space: nowrap;
  }

  .document-content-intro,
  .document-content-clause {
    text-align: justify;
  }

  .document-content-article {
    display: grid;
    gap: var(--document-space-half);
  }

  .document-content-clause {
    margin: 0;
    padding-inline-start: var(--document-space-4);
    text-indent: -4mm;
  }

  .document-content-notice {
    padding: var(--document-space-2) var(--document-space-3);
    border-inline-start: var(--document-stroke-thin) solid var(--document-status-warning);
    background: var(--document-status-warning-subtle);
  }

  :is(.document-table, .document-table) tr.document-content-total {
    background-color: var(--document-bg-subtle);
    font-weight: var(--document-font-weight-bold);
  }

  .document-content-signatures {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(auto-fit, minmax(50mm, 1fr));
    gap: var(--document-space-4);
  }

  .document-content-signature {
    position: relative;
    min-width: 0;
    min-height: 24mm;
    padding: var(--document-space-2) var(--document-space-3);
    border: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-content-stamp {
    position: absolute;
    width: 16mm;
    height: 16mm;
    object-fit: contain;
    opacity: 0.95;
  }

  .document-content-verification {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: var(--document-space-4);
    padding-block-start: var(--document-space-2);
    border-block-start: var(--document-stroke-hairline) solid var(--document-border-moderate);
    color: var(--document-color-moderate, var(--document-text-moderate));
    font-size: var(--document-text-caption-size);
    line-height: var(--document-text-caption-line-height);
  }

  .document-content-verification-code {
    overflow-wrap: anywhere;
    font-variant-numeric: tabular-nums;
  }

  .document-content-qr {
    width: 20mm;
    height: 20mm;
    object-fit: contain;
  }

  .document-content-footer {
    display: grid;
    gap: var(--document-space-1);
    margin-block-start: auto;
    text-align: center;
  }
}

@media print {
  body.printing-document > *:not(#print-holder) {
    display: none !important;
  }

  body.printing-document > #print-holder {
    display: block;
  }

  .document-content {
    widows: 3;
    orphans: 3;
  }

  .document-content-meta-row,
  .document-content-parties,
  .document-content-notice,
  .document-content-total,
  .document-content-signatures,
  .document-content-signature,
  .document-content-verification {
    break-inside: avoid;
  }

  .document-content-section-header,
  .document-content-article-title {
    break-after: avoid;
  }

  .document-content-clause {
    break-inside: avoid;
  }
}
}

@layer components {
/* ← ./document-ds/components/document-columns.css */
.document .document-columns {
  display: grid;
  min-inline-size: 0;
  grid-template-columns: repeat(
    auto-fit,
    minmax(
      min(
        100%,
        max(
          var(--document-columns-min-inline-size),
          calc(
            (100% - (var(--document-columns-count) - 1) * var(--document-columns-gap)) /
              var(--document-columns-count)
          )
        )
      ),
      1fr
    )
  );
  align-items: start;
  gap: var(--document-columns-gap);
}

.document .document-columns > * {
  min-inline-size: 0;
}
}

@layer components {
/* ← ./document-ds/components/document-table.css */
.document {
  :where(table) {
    border-collapse: collapse;
    border-spacing: 0;
  }

  .document-table {
    width: 100%;
    table-layout: auto;
  }

  .document-table-separate {
    border-collapse: separate;
  }

  .document-table-auto {
    table-layout: auto;
  }

  .document-table-fixed {
    table-layout: fixed;
  }

  .document-table tr {
    background-color: var(--document-color-white);
  }

  .document-table thead > tr,
  .document-table tfoot > tr {
    background-color: var(--document-color-white);
  }

  .document-table th,
  .document-table td {
    min-width: 0;
    border-bottom: var(--document-stroke-hairline) solid var(--document-border-moderate);
    vertical-align: middle;
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
  }

  .document-table th {
    font-weight: var(--document-font-weight-medium);
    text-align: start;
  }

  .document-table-border {
    border: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-table-static th {
    background-color: var(--document-bg-moderate);
  }

  .document-table-static th,
  .document-table-static td {
    border-top: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-table-divide-x th:not(:last-child),
  .document-table-divide-x td:not(:last-child) {
    border-inline-end: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-table-divide-y tr:not(:last-child) > th,
  .document-table-divide-y tr:not(:last-child) > td {
    border-bottom: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }

  .document-table.border-none,
  .document-table .border-none,
  .document-table th.border-none,
  .document-table td.border-none {
    border: 0;
  }

  .document-table-dynamic {
    display: block;
    width: 100%;
    overflow-x: auto;
  }

  .document-table-dynamic th {
    white-space: normal;
  }

  .document-table-dynamic td {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .document-table-cell-wrap {
    overflow-wrap: anywhere;
    white-space: normal;
  }

  .document-table-cell-nowrap {
    white-space: nowrap;
  }

  .document-table-cell-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .document-table-number,
  .document-number,
  .document-table th.document-table-number {
    text-align: end;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
  }

  .document-table-xs tr {
    height: 6mm;
  }
  .document-table-xs th,
  .document-table-xs td {
    padding-inline: var(--document-space-half);
    font-size: var(--document-font-size-8);
    line-height: var(--document-line-height-12);
  }
  .document-table-xs th:has(input[type="checkbox"]),
  .document-table-xs td:has(input[type="checkbox"]) {
    width: 6mm;
  }
  .document-table-xs :is(.input, .document-input) {
    width: 100%;
    height: 5mm;
    padding-inline: var(--document-space-half);
    font-size: var(--document-font-size-8);
  }

  .document-table-sm tr {
    height: 8mm;
  }
  .document-table-sm th,
  .document-table-sm td {
    padding-inline: var(--document-space-1);
    font-size: var(--document-font-size-9);
    line-height: var(--document-line-height-12);
  }
  .document-table-sm th:has(input[type="checkbox"]),
  .document-table-sm td:has(input[type="checkbox"]) {
    width: 8mm;
  }
  .document-table-sm :is(.input, .document-input) {
    width: 100%;
    height: 7mm;
    padding-inline: var(--document-space-1);
    font-size: var(--document-font-size-9);
  }

  .document-table-md tr {
    height: 10mm;
  }
  .document-table-md th,
  .document-table-md td {
    padding-inline: var(--document-space-1);
    font-size: var(--document-font-size-10);
    line-height: var(--document-line-height-14);
  }
  .document-table-md th:has(input[type="checkbox"]),
  .document-table-md td:has(input[type="checkbox"]) {
    width: 10mm;
  }
  .document-table-md :is(.input, .document-input) {
    width: 100%;
    height: 9mm;
    padding-inline: var(--document-space-1);
    font-size: var(--document-font-size-10);
  }

  .document-table-lg tr {
    height: 12mm;
  }
  .document-table-lg th,
  .document-table-lg td {
    padding-inline: var(--document-space-1-half);
    font-size: var(--document-font-size-12);
    line-height: var(--document-line-height-18);
  }
  .document-table-lg th:has(input[type="checkbox"]),
  .document-table-lg td:has(input[type="checkbox"]) {
    width: 12mm;
  }
  .document-table-lg :is(.input, .document-input) {
    width: 100%;
    height: 11mm;
    padding-inline: var(--document-space-1-half);
    font-size: var(--document-font-size-12);
  }

  .document-table-xl tr {
    height: 14mm;
  }
  .document-table-xl th,
  .document-table-xl td {
    padding-inline: var(--document-space-2);
    font-size: var(--document-font-size-14);
    line-height: var(--document-line-height-20);
  }
  .document-table-xl th:has(input[type="checkbox"]),
  .document-table-xl td:has(input[type="checkbox"]) {
    width: 14mm;
  }
  .document-table-xl :is(.input, .document-input) {
    width: 100%;
    height: 13mm;
    padding-inline: var(--document-space-2);
    font-size: var(--document-font-size-14);
  }

  .document-table .input {
    border: var(--document-stroke-hairline) solid var(--document-border-moderate);
  }
}

@media print {
  .document .document-table-dynamic {
    display: table;
    overflow: visible;
  }

  .document .document-table-dynamic td {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }

  .document table thead {
    display: table-header-group;
  }

  .document table tfoot {
    display: table-footer-group;
  }

  .document table tr {
    break-inside: avoid;
  }
}
}

@layer components {
/* ← ./document-ds/components/document-input.css */
.document {
  .document-input {
    min-width: 0;
    width: 100%;
    height: var(--document-space-6);
    margin: 0;
    padding: var(--document-space-half) var(--document-space-1);
    border: var(--document-stroke-hairline) solid var(--document-border-moderate);
    border-radius: 0;
    background: var(--document-bg-subtle);
    color: var(--document-color-bold, var(--document-text-bold));
    font: inherit;
  }

  .document-choice {
    flex: 0 0 auto;
    width: var(--document-space-4);
    height: var(--document-space-4);
    margin: 0;
    vertical-align: middle;
    appearance: auto;
    accent-color: var(--document-color-bold, var(--document-text-bold));
  }
}

@media screen {
  .document {
    :is(.document-input, .document-choice):focus-visible {
      outline: var(--document-stroke-thin) solid var(--document-border-bold);
      outline-offset: var(--document-space-half);
    }

    .document-input[readonly] {
      background: transparent;
    }

    :is(.document-input, .document-choice):disabled {
      color: var(--document-color-moderate, var(--document-text-moderate));
      cursor: not-allowed;
    }

    &.document-reading .document-input {
      min-height: var(--document-space-8);
      height: auto;
      font-size: inherit;
      line-height: inherit;
    }
  }
}

@media print {
  .document {
    .document-input {
      caret-color: transparent;
      border-color: transparent;
      background: transparent;
    }

    .document-input::placeholder {
      opacity: 0;
    }

    :is(.document-input, .document-choice) {
      outline: none;
    }
  }
}
}

@layer components {
/* ← ./document-ds/components/document-reading.css */
@media screen {
  .document.document-reading {
    width: 100%;
    height: auto;
    min-width: 0;
    min-height: 0;
    max-inline-size: var(--document-reading-max-inline-size);
    margin-inline: auto;
  }

  .document.document-reading.document-flow,
  .document.document-reading:is(
      .document-a4-portrait,
      .document-a4-landscape,
      .document-a3-portrait,
      .document-a3-landscape
    ) {
    width: 100%;
    height: auto;
    min-height: 0;
  }

  .document.document-reading
    :is(.layout-a4-portrait, .layout-a4-landscape, .layout-a3-portrait, .layout-a3-landscape) {
    width: 100%;
    height: auto;
    min-width: 0;
    min-height: 0;
    padding: var(--document-reading-inset);
  }

  .document.document-reading .document-content {
    font-size: var(--document-reading-font-size);
    line-height: var(--document-reading-line-height);
  }

  .document.document-reading .document-table :is(th, td) {
    padding-block: var(--document-reading-cell-padding);
    font-size: var(--document-reading-small-font-size);
    line-height: var(--document-reading-small-line-height);
  }

  .document.document-reading .document-table-scroll {
    max-inline-size: 100%;
    overflow-x: auto;
  }
}
}

@layer components {
/* ← ./document-ds/components/document-figure.css */
.document {
  .document-figure {
    display: grid;
    min-inline-size: 0;
    gap: var(--document-figure-gap);
    margin: 0;
  }

  .document-figure-label,
  .document-figure-title,
  .document-figure-description,
  .document-figure-caption,
  .document-figure-source,
  .document-figure-notes {
    margin: 0;
  }

  .document-figure-label {
    color: var(--document-color-secondary);
    font-size: var(--document-figure-caption-font-size);
    line-height: var(--document-figure-caption-line-height);
    font-weight: var(--document-font-weight-bold);
  }

  .document-figure-title {
    color: var(--document-color-bold, var(--document-text-bold));
    font-size: var(--document-figure-title-font-size);
    line-height: var(--document-figure-title-line-height);
    font-weight: var(--document-font-weight-bold);
    text-wrap: pretty;
  }

  .document-figure-description {
    color: var(--document-color-bold, var(--document-text-bold));
    font-size: var(--document-figure-description-font-size);
    line-height: var(--document-figure-description-line-height);
  }

  .document-figure-plot {
    min-inline-size: 0;
  }

  .document-figure-caption,
  .document-figure-source,
  .document-figure-notes {
    color: var(--document-color-moderate, var(--document-text-moderate));
    font-size: var(--document-figure-caption-font-size);
    line-height: var(--document-figure-caption-line-height);
    overflow-wrap: anywhere;
  }

  .document-chart {
    display: block;
    inline-size: 100%;
    block-size: auto;
    overflow: visible;
  }

  .document-chart-label {
    fill: var(--document-color-bold, var(--document-text-bold));
    font-family: var(--document-font-family);
    font-size: var(--document-chart-label-font-size);
    font-variant-numeric: tabular-nums;
  }

  .document-chart-axis,
  .document-chart-grid,
  .document-chart-line {
    fill: none;
    vector-effect: non-scaling-stroke;
  }

  .document-chart-axis {
    stroke: var(--document-border-bold);
    stroke-width: var(--document-chart-axis-width);
  }

  .document-chart-grid {
    stroke: var(--document-border-subtle);
    stroke-width: var(--document-chart-grid-width);
  }

  .document-chart-mark {
    fill: var(--document-chart-series-color);
  }

  .document-chart-line {
    stroke: var(--document-chart-series-color);
    stroke-width: var(--document-chart-line-width);
    stroke-dasharray: var(--document-chart-dasharray);
  }

  .document-chart-category-1 {
    --document-chart-series-color: var(--document-color-data-categorical-1);
    --document-chart-dasharray: none;
  }

  .document-chart-category-2 {
    --document-chart-series-color: var(--document-color-data-categorical-2);
    --document-chart-dasharray: var(--document-space-2) var(--document-space-1);
  }

  .document-chart-category-3 {
    --document-chart-series-color: var(--document-color-data-categorical-3);
    --document-chart-dasharray: var(--document-space-half) var(--document-space-1);
  }

  .document-chart-category-4 {
    --document-chart-series-color: var(--document-color-data-categorical-4);
    --document-chart-dasharray: var(--document-space-3) var(--document-space-1)
      var(--document-space-1) var(--document-space-1);
  }

  .document-chart-category-5 {
    --document-chart-series-color: var(--document-color-data-categorical-5);
    --document-chart-dasharray: var(--document-space-4) var(--document-space-1);
  }

  .document-chart-category-6 {
    --document-chart-series-color: var(--document-color-data-categorical-6);
    --document-chart-dasharray: var(--document-space-4) var(--document-space-1)
      var(--document-space-1) var(--document-space-1) var(--document-space-1)
      var(--document-space-1);
  }

  .document-chart-sequence-1 {
    --document-chart-series-color: var(--document-color-data-sequential-1);
  }

  .document-chart-sequence-2 {
    --document-chart-series-color: var(--document-color-data-sequential-2);
  }

  .document-chart-sequence-3 {
    --document-chart-series-color: var(--document-color-data-sequential-3);
  }

  .document-chart-sequence-4 {
    --document-chart-series-color: var(--document-color-data-sequential-4);
  }

  .document-chart-sequence-5 {
    --document-chart-series-color: var(--document-color-data-sequential-5);
  }

  .document-chart-diverging-1 {
    --document-chart-series-color: var(--document-color-data-diverging-1);
  }

  .document-chart-diverging-2 {
    --document-chart-series-color: var(--document-color-data-diverging-2);
  }

  .document-chart-diverging-3 {
    --document-chart-series-color: var(--document-color-data-diverging-3);
  }

  .document-chart-diverging-4 {
    --document-chart-series-color: var(--document-color-data-diverging-4);
  }

  .document-chart-diverging-5 {
    --document-chart-series-color: var(--document-color-data-diverging-5);
  }
}

@media print {
  .document .document-figure {
    break-inside: avoid;
  }

  .document .document-figure-title {
    break-after: avoid;
  }
}
}

@layer components {
/* ← ./document-ds/components/document-media.css */
.document {
  .document-media {
    display: grid;
    min-inline-size: 0;
    gap: var(--document-media-gap);
    margin: 0;
  }

  .document-media-image {
    display: block;
    inline-size: 100%;
    max-inline-size: 100%;
    block-size: auto;
    object-fit: contain;
  }

  .document-media-caption {
    margin: 0;
    color: var(--document-color-moderate, var(--document-text-moderate));
    font-size: var(--document-media-caption-font-size);
    line-height: var(--document-media-caption-line-height);
    overflow-wrap: anywhere;
  }

  .document-cover {
    display: grid;
    min-inline-size: 0;
    align-content: start;
    gap: var(--document-cover-gap);
    padding-block: var(--document-cover-padding-block);
    border-block-start: var(--document-cover-rule-width) solid var(--document-color-primary);
  }

  .document-cover-eyebrow,
  .document-cover-title,
  .document-cover-summary,
  .document-cover-meta {
    margin: 0;
  }

  .document-cover-eyebrow {
    color: var(--document-color-secondary);
    font-size: var(--document-cover-meta-font-size);
    line-height: var(--document-cover-meta-line-height);
    font-weight: var(--document-font-weight-bold);
  }

  .document-cover-title {
    color: var(--document-color-primary);
    font-size: var(--document-cover-title-font-size);
    line-height: var(--document-cover-title-line-height);
    font-weight: var(--document-font-weight-bold);
    text-wrap: balance;
  }

  .document-cover-summary {
    color: var(--document-color-bold, var(--document-text-bold));
    font-size: var(--document-cover-summary-font-size);
    line-height: var(--document-cover-summary-line-height);
  }

  .document-cover-meta {
    color: var(--document-color-moderate, var(--document-text-moderate));
    font-size: var(--document-cover-meta-font-size);
    line-height: var(--document-cover-meta-line-height);
  }
}

@media print {
  .document .document-media,
  .document .document-cover {
    break-inside: avoid;
  }
}
}

@layer utilities {
/* ← ./document-ds/utilities/document-backgrounds-canonical.css */
.document {
  .document-bg-red-50 {
    background-color: var(--document-color-red-50-hex);
  }
  .document-bg-red-100 {
    background-color: var(--document-color-red-100-hex);
  }
  .document-bg-red-200 {
    background-color: var(--document-color-red-200-hex);
  }
  .document-bg-red-300 {
    background-color: var(--document-color-red-300-hex);
  }
  .document-bg-red-400 {
    background-color: var(--document-color-red-400-hex);
  }
  .document-bg-red-500 {
    background-color: var(--document-color-red-500-hex);
  }
  .document-bg-red-600 {
    background-color: var(--document-color-red-600-hex);
  }
  .document-bg-red-700 {
    background-color: var(--document-color-red-700-hex);
  }
  .document-bg-red-800 {
    background-color: var(--document-color-red-800-hex);
  }
  .document-bg-red-900 {
    background-color: var(--document-color-red-900-hex);
  }
  .document-bg-red-950 {
    background-color: var(--document-color-red-950-hex);
  }

  .document-bg-orange-50 {
    background-color: var(--document-color-orange-50-hex);
  }
  .document-bg-orange-100 {
    background-color: var(--document-color-orange-100-hex);
  }
  .document-bg-orange-200 {
    background-color: var(--document-color-orange-200-hex);
  }
  .document-bg-orange-300 {
    background-color: var(--document-color-orange-300-hex);
  }
  .document-bg-orange-400 {
    background-color: var(--document-color-orange-400-hex);
  }
  .document-bg-orange-500 {
    background-color: var(--document-color-orange-500-hex);
  }
  .document-bg-orange-600 {
    background-color: var(--document-color-orange-600-hex);
  }
  .document-bg-orange-700 {
    background-color: var(--document-color-orange-700-hex);
  }
  .document-bg-orange-800 {
    background-color: var(--document-color-orange-800-hex);
  }
  .document-bg-orange-900 {
    background-color: var(--document-color-orange-900-hex);
  }
  .document-bg-orange-950 {
    background-color: var(--document-color-orange-950-hex);
  }

  .document-bg-amber-50 {
    background-color: var(--document-color-amber-50-hex);
  }
  .document-bg-amber-100 {
    background-color: var(--document-color-amber-100-hex);
  }
  .document-bg-amber-200 {
    background-color: var(--document-color-amber-200-hex);
  }
  .document-bg-amber-300 {
    background-color: var(--document-color-amber-300-hex);
  }
  .document-bg-amber-400 {
    background-color: var(--document-color-amber-400-hex);
  }
  .document-bg-amber-500 {
    background-color: var(--document-color-amber-500-hex);
  }
  .document-bg-amber-600 {
    background-color: var(--document-color-amber-600-hex);
  }
  .document-bg-amber-700 {
    background-color: var(--document-color-amber-700-hex);
  }
  .document-bg-amber-800 {
    background-color: var(--document-color-amber-800-hex);
  }
  .document-bg-amber-900 {
    background-color: var(--document-color-amber-900-hex);
  }
  .document-bg-amber-950 {
    background-color: var(--document-color-amber-950-hex);
  }

  .document-bg-yellow-50 {
    background-color: var(--document-color-yellow-50-hex);
  }
  .document-bg-yellow-100 {
    background-color: var(--document-color-yellow-100-hex);
  }
  .document-bg-yellow-200 {
    background-color: var(--document-color-yellow-200-hex);
  }
  .document-bg-yellow-300 {
    background-color: var(--document-color-yellow-300-hex);
  }
  .document-bg-yellow-400 {
    background-color: var(--document-color-yellow-400-hex);
  }
  .document-bg-yellow-500 {
    background-color: var(--document-color-yellow-500-hex);
  }
  .document-bg-yellow-600 {
    background-color: var(--document-color-yellow-600-hex);
  }
  .document-bg-yellow-700 {
    background-color: var(--document-color-yellow-700-hex);
  }
  .document-bg-yellow-800 {
    background-color: var(--document-color-yellow-800-hex);
  }
  .document-bg-yellow-900 {
    background-color: var(--document-color-yellow-900-hex);
  }
  .document-bg-yellow-950 {
    background-color: var(--document-color-yellow-950-hex);
  }

  .document-bg-lime-50 {
    background-color: var(--document-color-lime-50-hex);
  }
  .document-bg-lime-100 {
    background-color: var(--document-color-lime-100-hex);
  }
  .document-bg-lime-200 {
    background-color: var(--document-color-lime-200-hex);
  }
  .document-bg-lime-300 {
    background-color: var(--document-color-lime-300-hex);
  }
  .document-bg-lime-400 {
    background-color: var(--document-color-lime-400-hex);
  }
  .document-bg-lime-500 {
    background-color: var(--document-color-lime-500-hex);
  }
  .document-bg-lime-600 {
    background-color: var(--document-color-lime-600-hex);
  }
  .document-bg-lime-700 {
    background-color: var(--document-color-lime-700-hex);
  }
  .document-bg-lime-800 {
    background-color: var(--document-color-lime-800-hex);
  }
  .document-bg-lime-900 {
    background-color: var(--document-color-lime-900-hex);
  }
  .document-bg-lime-950 {
    background-color: var(--document-color-lime-950-hex);
  }

  .document-bg-green-50 {
    background-color: var(--document-color-green-50-hex);
  }
  .document-bg-green-100 {
    background-color: var(--document-color-green-100-hex);
  }
  .document-bg-green-200 {
    background-color: var(--document-color-green-200-hex);
  }
  .document-bg-green-300 {
    background-color: var(--document-color-green-300-hex);
  }
  .document-bg-green-400 {
    background-color: var(--document-color-green-400-hex);
  }
  .document-bg-green-500 {
    background-color: var(--document-color-green-500-hex);
  }
  .document-bg-green-600 {
    background-color: var(--document-color-green-600-hex);
  }
  .document-bg-green-700 {
    background-color: var(--document-color-green-700-hex);
  }
  .document-bg-green-800 {
    background-color: var(--document-color-green-800-hex);
  }
  .document-bg-green-900 {
    background-color: var(--document-color-green-900-hex);
  }
  .document-bg-green-950 {
    background-color: var(--document-color-green-950-hex);
  }

  .document-bg-cyan-50 {
    background-color: var(--document-color-cyan-50-hex);
  }
  .document-bg-cyan-100 {
    background-color: var(--document-color-cyan-100-hex);
  }
  .document-bg-cyan-200 {
    background-color: var(--document-color-cyan-200-hex);
  }
  .document-bg-cyan-300 {
    background-color: var(--document-color-cyan-300-hex);
  }
  .document-bg-cyan-400 {
    background-color: var(--document-color-cyan-400-hex);
  }
  .document-bg-cyan-500 {
    background-color: var(--document-color-cyan-500-hex);
  }
  .document-bg-cyan-600 {
    background-color: var(--document-color-cyan-600-hex);
  }
  .document-bg-cyan-700 {
    background-color: var(--document-color-cyan-700-hex);
  }
  .document-bg-cyan-800 {
    background-color: var(--document-color-cyan-800-hex);
  }
  .document-bg-cyan-900 {
    background-color: var(--document-color-cyan-900-hex);
  }
  .document-bg-cyan-950 {
    background-color: var(--document-color-cyan-950-hex);
  }

  .document-bg-blue-50 {
    background-color: var(--document-color-blue-50-hex);
  }
  .document-bg-blue-100 {
    background-color: var(--document-color-blue-100-hex);
  }
  .document-bg-blue-200 {
    background-color: var(--document-color-blue-200-hex);
  }
  .document-bg-blue-300 {
    background-color: var(--document-color-blue-300-hex);
  }
  .document-bg-blue-400 {
    background-color: var(--document-color-blue-400-hex);
  }
  .document-bg-blue-500 {
    background-color: var(--document-color-blue-500-hex);
  }
  .document-bg-blue-600 {
    background-color: var(--document-color-blue-600-hex);
  }
  .document-bg-blue-700 {
    background-color: var(--document-color-blue-700-hex);
  }
  .document-bg-blue-800 {
    background-color: var(--document-color-blue-800-hex);
  }
  .document-bg-blue-900 {
    background-color: var(--document-color-blue-900-hex);
  }
  .document-bg-blue-950 {
    background-color: var(--document-color-blue-950-hex);
  }

  .document-bg-indigo-50 {
    background-color: var(--document-color-indigo-50-hex);
  }
  .document-bg-indigo-100 {
    background-color: var(--document-color-indigo-100-hex);
  }
  .document-bg-indigo-200 {
    background-color: var(--document-color-indigo-200-hex);
  }
  .document-bg-indigo-300 {
    background-color: var(--document-color-indigo-300-hex);
  }
  .document-bg-indigo-400 {
    background-color: var(--document-color-indigo-400-hex);
  }
  .document-bg-indigo-500 {
    background-color: var(--document-color-indigo-500-hex);
  }
  .document-bg-indigo-600 {
    background-color: var(--document-color-indigo-600-hex);
  }
  .document-bg-indigo-700 {
    background-color: var(--document-color-indigo-700-hex);
  }
  .document-bg-indigo-800 {
    background-color: var(--document-color-indigo-800-hex);
  }
  .document-bg-indigo-900 {
    background-color: var(--document-color-indigo-900-hex);
  }
  .document-bg-indigo-950 {
    background-color: var(--document-color-indigo-950-hex);
  }

  .document-bg-purple-50 {
    background-color: var(--document-color-purple-50-hex);
  }
  .document-bg-purple-100 {
    background-color: var(--document-color-purple-100-hex);
  }
  .document-bg-purple-200 {
    background-color: var(--document-color-purple-200-hex);
  }
  .document-bg-purple-300 {
    background-color: var(--document-color-purple-300-hex);
  }
  .document-bg-purple-400 {
    background-color: var(--document-color-purple-400-hex);
  }
  .document-bg-purple-500 {
    background-color: var(--document-color-purple-500-hex);
  }
  .document-bg-purple-600 {
    background-color: var(--document-color-purple-600-hex);
  }
  .document-bg-purple-700 {
    background-color: var(--document-color-purple-700-hex);
  }
  .document-bg-purple-800 {
    background-color: var(--document-color-purple-800-hex);
  }
  .document-bg-purple-900 {
    background-color: var(--document-color-purple-900-hex);
  }
  .document-bg-purple-950 {
    background-color: var(--document-color-purple-950-hex);
  }

  .document-bg-fuchsia-50 {
    background-color: var(--document-color-fuchsia-50-hex);
  }
  .document-bg-fuchsia-100 {
    background-color: var(--document-color-fuchsia-100-hex);
  }
  .document-bg-fuchsia-200 {
    background-color: var(--document-color-fuchsia-200-hex);
  }
  .document-bg-fuchsia-300 {
    background-color: var(--document-color-fuchsia-300-hex);
  }
  .document-bg-fuchsia-400 {
    background-color: var(--document-color-fuchsia-400-hex);
  }
  .document-bg-fuchsia-500 {
    background-color: var(--document-color-fuchsia-500-hex);
  }
  .document-bg-fuchsia-600 {
    background-color: var(--document-color-fuchsia-600-hex);
  }
  .document-bg-fuchsia-700 {
    background-color: var(--document-color-fuchsia-700-hex);
  }
  .document-bg-fuchsia-800 {
    background-color: var(--document-color-fuchsia-800-hex);
  }
  .document-bg-fuchsia-900 {
    background-color: var(--document-color-fuchsia-900-hex);
  }
  .document-bg-fuchsia-950 {
    background-color: var(--document-color-fuchsia-950-hex);
  }

  .document-bg-neutral-50 {
    background-color: var(--document-color-neutral-50-hex);
  }
  .document-bg-neutral-100 {
    background-color: var(--document-color-neutral-100-hex);
  }
  .document-bg-neutral-200 {
    background-color: var(--document-color-neutral-200-hex);
  }
  .document-bg-neutral-300 {
    background-color: var(--document-color-neutral-300-hex);
  }
  .document-bg-neutral-400 {
    background-color: var(--document-color-neutral-400-hex);
  }
  .document-bg-neutral-500 {
    background-color: var(--document-color-neutral-500-hex);
  }
  .document-bg-neutral-600 {
    background-color: var(--document-color-neutral-600-hex);
  }
  .document-bg-neutral-700 {
    background-color: var(--document-color-neutral-700-hex);
  }
  .document-bg-neutral-800 {
    background-color: var(--document-color-neutral-800-hex);
  }
  .document-bg-neutral-900 {
    background-color: var(--document-color-neutral-900-hex);
  }
  .document-bg-neutral-950 {
    background-color: var(--document-color-neutral-950-hex);
  }
}
}

@layer utilities {
/* ← ./document-ds/utilities/document-borders.css */
@property --_print-border-style {
  syntax: "*";
  inherits: false;
}

@property --_print-border-color {
  syntax: "*";
  inherits: false;
}

.document {
  .border {
    border: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .border-none {
    border: 0 none transparent;
  }

  .border-solid {
    --_print-border-style: solid;
  }

  .border-dashed {
    --_print-border-style: dashed;
  }

  .border-dotted {
    --_print-border-style: dotted;
  }

  .border-0 {
    border: 0 var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-0\.25mm {
    border: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-0\.5mm {
    border: var(--document-stroke-thin) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-1mm {
    border: var(--document-stroke-medium) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .border-x-0 {
    border-inline: 0 var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-x-0\.25mm {
    border-inline: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-x-0\.5mm {
    border-inline: var(--document-stroke-thin) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-x-1mm {
    border-inline: var(--document-stroke-medium) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .border-y-0 {
    border-block: 0 var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-y-0\.25mm {
    border-block: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-y-0\.5mm {
    border-block: var(--document-stroke-thin) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-y-1mm {
    border-block: var(--document-stroke-medium) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .border-t-0 {
    border-top: 0 var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-t-0\.25mm {
    border-top: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-t-0\.5mm {
    border-top: var(--document-stroke-thin) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-t-1mm {
    border-top: var(--document-stroke-medium) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .border-b-0 {
    border-bottom: 0 var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-b-0\.25mm {
    border-bottom: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-b-0\.5mm {
    border-bottom: var(--document-stroke-thin) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-b-1mm {
    border-bottom: var(--document-stroke-medium) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .border-s-0 {
    border-inline-start: 0 var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-s-0\.25mm {
    border-inline-start: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-s-0\.5mm {
    border-inline-start: var(--document-stroke-thin) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-s-1mm {
    border-inline-start: var(--document-stroke-medium) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .border-e-0 {
    border-inline-end: 0 var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-e-0\.25mm {
    border-inline-end: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-e-0\.5mm {
    border-inline-end: var(--document-stroke-thin) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }
  .border-e-1mm {
    border-inline-end: var(--document-stroke-medium) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .divider-y,
  .divider-x,
  .fold-guide-y,
  .cut-guide-y,
  .perforation-guide-y {
    border: 0;
  }

  .divider-y {
    width: 100%;
    border-block-end: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .divider-x {
    height: 100%;
    border-inline-end: var(--document-stroke-hairline) var(--_print-border-style, solid)
      var(--_print-border-color, var(--document-border-moderate));
  }

  .fold-guide-y {
    --_print-border-style: dashed;
    --_print-border-color: var(--document-border-subtle);

    width: 100%;
    border-block-end: var(--document-stroke-hairline) var(--_print-border-style)
      var(--_print-border-color);
  }

  .cut-guide-y {
    --_print-border-style: solid;
    --_print-border-color: var(--document-border-bold);

    width: 100%;
    border-block-end: var(--document-stroke-hairline) var(--_print-border-style)
      var(--_print-border-color);
  }

  .perforation-guide-y {
    --_print-border-style: dotted;
    --_print-border-color: var(--document-border-moderate);

    width: 100%;
    border-block-end: var(--document-stroke-hairline) var(--_print-border-style)
      var(--_print-border-color);
  }
}
}

@layer utilities {
/* ← ./document-ds/utilities/document-flexbox-grid.css */
.document {
  .flex {
    display: flex;
  }
  .inline-flex {
    display: inline-flex;
  }
  .grid {
    display: grid;
  }

  .flex-row {
    flex-direction: row;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .flex-nowrap {
    flex-wrap: nowrap;
  }
  .flex-1 {
    flex: 1 1 0%;
  }
  .grow {
    flex-grow: 1;
  }
  .grow-0 {
    flex-grow: 0;
  }
  .shrink {
    flex-shrink: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }

  .items-start {
    align-items: flex-start;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-stretch {
    align-items: stretch;
  }
  .items-baseline {
    align-items: baseline;
  }

  .justify-start {
    justify-content: flex-start;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-around {
    justify-content: space-around;
  }
  .justify-evenly {
    justify-content: space-evenly;
  }

  .self-start {
    align-self: flex-start;
  }
  .self-center {
    align-self: center;
  }
  .self-end {
    align-self: flex-end;
  }
  .self-stretch {
    align-self: stretch;
  }

  .grid-cols-1 {
    grid-template-columns: minmax(0, 1fr);
  }
  .grid-cols-2,
  .grid-cols-1-1 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-3,
  .grid-cols-1-1-1 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-4,
  .grid-cols-1-1-1-1 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .grid-cols-1-2 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  }
  .grid-cols-2-1 {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  }
  .grid-cols-2-3 {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  }
  .grid-cols-3-2 {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  }

  .grid-rows-1 {
    grid-template-rows: minmax(0, 1fr);
  }
  .grid-rows-2,
  .grid-rows-1-1 {
    grid-template-rows: repeat(2, minmax(0, 1fr));
  }
  .grid-rows-3 {
    grid-template-rows: repeat(3, minmax(0, 1fr));
  }
  .grid-rows-4 {
    grid-template-rows: repeat(4, minmax(0, 1fr));
  }
  .grid-rows-1-2 {
    grid-template-rows: minmax(0, 1fr) minmax(0, 2fr);
  }
  .grid-rows-2-1 {
    grid-template-rows: minmax(0, 2fr) minmax(0, 1fr);
  }
  .grid-rows-2-3 {
    grid-template-rows: minmax(0, 2fr) minmax(0, 3fr);
  }
  .grid-rows-3-2 {
    grid-template-rows: minmax(0, 3fr) minmax(0, 2fr);
  }
}
}

@layer utilities {
/* ← ./document-ds/utilities/document-sizing.css */
.document {
  .w-0mm {
    width: 0;
  }
  .w-0\.5mm {
    width: 0.5mm;
  }
  .w-1mm {
    width: 1mm;
  }
  .w-1\.5mm {
    width: 1.5mm;
  }
  .w-2mm {
    width: 2mm;
  }
  .w-3mm {
    width: 3mm;
  }
  .w-4mm {
    width: 4mm;
  }
  .w-5mm {
    width: 5mm;
  }
  .w-6mm {
    width: 6mm;
  }
  .w-8mm {
    width: 8mm;
  }
  .w-10mm {
    width: 10mm;
  }
  .w-12mm {
    width: 12mm;
  }
  .w-15mm {
    width: 15mm;
  }
  .w-16mm {
    width: 16mm;
  }
  .w-18mm {
    width: 18mm;
  }
  .w-20mm {
    width: 20mm;
  }
  .w-24mm {
    width: 24mm;
  }
  .w-30mm {
    width: 30mm;
  }
  .w-40mm {
    width: 40mm;
  }
  .w-50mm {
    width: 50mm;
  }
  .w-60mm {
    width: 60mm;
  }
  .w-80mm {
    width: 80mm;
  }
  .w-100mm {
    width: 100mm;
  }

  .h-0mm {
    height: 0;
  }
  .h-0\.5mm {
    height: 0.5mm;
  }
  .h-1mm {
    height: 1mm;
  }
  .h-1\.5mm {
    height: 1.5mm;
  }
  .h-2mm {
    height: 2mm;
  }
  .h-3mm {
    height: 3mm;
  }
  .h-4mm {
    height: 4mm;
  }
  .h-4\.5mm {
    height: 4.5mm;
  }
  .h-5mm {
    height: 5mm;
  }
  .h-6mm {
    height: 6mm;
  }
  .h-7mm {
    height: 7mm;
  }
  .h-8mm {
    height: 8mm;
  }
  .h-10mm {
    height: 10mm;
  }
  .h-12mm {
    height: 12mm;
  }
  .h-13mm {
    height: 13mm;
  }
  .h-15mm {
    height: 15mm;
  }
  .h-16mm {
    height: 16mm;
  }
  .h-18mm {
    height: 18mm;
  }
  .h-20mm {
    height: 20mm;
  }
  .h-24mm {
    height: 24mm;
  }
  .h-30mm {
    height: 30mm;
  }
  .h-40mm {
    height: 40mm;
  }
  .h-50mm {
    height: 50mm;
  }
  .h-60mm {
    height: 60mm;
  }
  .h-80mm {
    height: 80mm;
  }
  .h-100mm {
    height: 100mm;
  }

  .min-w-0mm {
    min-width: 0;
  }
  .min-w-0\.5mm {
    min-width: 0.5mm;
  }
  .min-w-1mm {
    min-width: 1mm;
  }
  .min-w-1\.5mm {
    min-width: 1.5mm;
  }
  .min-w-2mm {
    min-width: 2mm;
  }
  .min-w-3mm {
    min-width: 3mm;
  }
  .min-w-4mm {
    min-width: 4mm;
  }
  .min-w-5mm {
    min-width: 5mm;
  }
  .min-w-6mm {
    min-width: 6mm;
  }
  .min-w-8mm {
    min-width: 8mm;
  }
  .min-w-10mm {
    min-width: 10mm;
  }
  .min-w-12mm {
    min-width: 12mm;
  }
  .min-w-15mm {
    min-width: 15mm;
  }
  .min-w-16mm {
    min-width: 16mm;
  }
  .min-w-18mm {
    min-width: 18mm;
  }
  .min-w-20mm {
    min-width: 20mm;
  }
  .min-w-24mm {
    min-width: 24mm;
  }
  .min-w-30mm {
    min-width: 30mm;
  }
  .min-w-40mm {
    min-width: 40mm;
  }
  .min-w-50mm {
    min-width: 50mm;
  }
  .min-w-60mm {
    min-width: 60mm;
  }
  .min-w-80mm {
    min-width: 80mm;
  }
  .min-w-100mm {
    min-width: 100mm;
  }

  .max-w-0mm {
    max-width: 0;
  }
  .max-w-0\.5mm {
    max-width: 0.5mm;
  }
  .max-w-1mm {
    max-width: 1mm;
  }
  .max-w-1\.5mm {
    max-width: 1.5mm;
  }
  .max-w-2mm {
    max-width: 2mm;
  }
  .max-w-3mm {
    max-width: 3mm;
  }
  .max-w-4mm {
    max-width: 4mm;
  }
  .max-w-5mm {
    max-width: 5mm;
  }
  .max-w-6mm {
    max-width: 6mm;
  }
  .max-w-8mm {
    max-width: 8mm;
  }
  .max-w-10mm {
    max-width: 10mm;
  }
  .max-w-12mm {
    max-width: 12mm;
  }
  .max-w-15mm {
    max-width: 15mm;
  }
  .max-w-16mm {
    max-width: 16mm;
  }
  .max-w-18mm {
    max-width: 18mm;
  }
  .max-w-20mm {
    max-width: 20mm;
  }
  .max-w-24mm {
    max-width: 24mm;
  }
  .max-w-30mm {
    max-width: 30mm;
  }
  .max-w-40mm {
    max-width: 40mm;
  }
  .max-w-50mm {
    max-width: 50mm;
  }
  .max-w-60mm {
    max-width: 60mm;
  }
  .max-w-80mm {
    max-width: 80mm;
  }
  .max-w-100mm {
    max-width: 100mm;
  }

  .min-h-0mm {
    min-height: 0;
  }
  .min-h-0\.5mm {
    min-height: 0.5mm;
  }
  .min-h-1mm {
    min-height: 1mm;
  }
  .min-h-1\.5mm {
    min-height: 1.5mm;
  }
  .min-h-2mm {
    min-height: 2mm;
  }
  .min-h-3mm {
    min-height: 3mm;
  }
  .min-h-4mm {
    min-height: 4mm;
  }
  .min-h-5mm {
    min-height: 5mm;
  }
  .min-h-6mm {
    min-height: 6mm;
  }
  .min-h-8mm {
    min-height: 8mm;
  }
  .min-h-10mm {
    min-height: 10mm;
  }
  .min-h-12mm {
    min-height: 12mm;
  }
  .min-h-15mm {
    min-height: 15mm;
  }
  .min-h-16mm {
    min-height: 16mm;
  }
  .min-h-18mm {
    min-height: 18mm;
  }
  .min-h-20mm {
    min-height: 20mm;
  }
  .min-h-24mm {
    min-height: 24mm;
  }
  .min-h-30mm {
    min-height: 30mm;
  }
  .min-h-40mm {
    min-height: 40mm;
  }
  .min-h-50mm {
    min-height: 50mm;
  }
  .min-h-60mm {
    min-height: 60mm;
  }
  .min-h-80mm {
    min-height: 80mm;
  }
  .min-h-100mm {
    min-height: 100mm;
  }

  .max-h-0mm {
    max-height: 0;
  }
  .max-h-0\.5mm {
    max-height: 0.5mm;
  }
  .max-h-1mm {
    max-height: 1mm;
  }
  .max-h-1\.5mm {
    max-height: 1.5mm;
  }
  .max-h-2mm {
    max-height: 2mm;
  }
  .max-h-3mm {
    max-height: 3mm;
  }
  .max-h-4mm {
    max-height: 4mm;
  }
  .max-h-5mm {
    max-height: 5mm;
  }
  .max-h-6mm {
    max-height: 6mm;
  }
  .max-h-8mm {
    max-height: 8mm;
  }
  .max-h-10mm {
    max-height: 10mm;
  }
  .max-h-12mm {
    max-height: 12mm;
  }
  .max-h-15mm {
    max-height: 15mm;
  }
  .max-h-16mm {
    max-height: 16mm;
  }
  .max-h-18mm {
    max-height: 18mm;
  }
  .max-h-20mm {
    max-height: 20mm;
  }
  .max-h-24mm {
    max-height: 24mm;
  }
  .max-h-30mm {
    max-height: 30mm;
  }
  .max-h-40mm {
    max-height: 40mm;
  }
  .max-h-50mm {
    max-height: 50mm;
  }
  .max-h-60mm {
    max-height: 60mm;
  }
  .max-h-80mm {
    max-height: 80mm;
  }
  .max-h-100mm {
    max-height: 100mm;
  }

  .size-0mm {
    width: 0;
    height: 0;
  }
  .size-0\.5mm {
    width: 0.5mm;
    height: 0.5mm;
  }
  .size-1mm {
    width: 1mm;
    height: 1mm;
  }
  .size-1\.5mm {
    width: 1.5mm;
    height: 1.5mm;
  }
  .size-2mm {
    width: 2mm;
    height: 2mm;
  }
  .size-3mm {
    width: 3mm;
    height: 3mm;
  }
  .size-4mm {
    width: 4mm;
    height: 4mm;
  }
  .size-5mm {
    width: 5mm;
    height: 5mm;
  }
  .size-6mm {
    width: 6mm;
    height: 6mm;
  }
  .size-8mm {
    width: 8mm;
    height: 8mm;
  }
  .size-10mm {
    width: 10mm;
    height: 10mm;
  }
  .size-12mm {
    width: 12mm;
    height: 12mm;
  }
  .size-15mm {
    width: 15mm;
    height: 15mm;
  }
  .size-16mm {
    width: 16mm;
    height: 16mm;
  }
  .size-18mm {
    width: 18mm;
    height: 18mm;
  }
  .size-20mm {
    width: 20mm;
    height: 20mm;
  }
  .size-24mm {
    width: 24mm;
    height: 24mm;
  }
  .size-30mm {
    width: 30mm;
    height: 30mm;
  }
  .size-40mm {
    width: 40mm;
    height: 40mm;
  }
  .size-50mm {
    width: 50mm;
    height: 50mm;
  }
  .size-60mm {
    width: 60mm;
    height: 60mm;
  }
  .size-80mm {
    width: 80mm;
    height: 80mm;
  }
  .size-100mm {
    width: 100mm;
    height: 100mm;
  }

  .w-full {
    width: 100%;
  }
  .h-full {
    height: 100%;
  }
  .min-w-0 {
    min-width: 0;
  }
  .min-h-0 {
    min-height: 0;
  }
  .w-auto {
    width: auto;
  }
  .h-auto {
    height: auto;
  }

  .document-width-exact {
    width: var(--document-width);
  }
  .document-height-exact {
    height: var(--document-height);
  }
  .document-min-width-exact {
    min-width: var(--document-min-width);
  }
  .document-min-height-exact {
    min-height: var(--document-min-height);
  }
  .document-max-width-exact {
    max-width: var(--document-max-width);
  }
  .document-max-height-exact {
    max-height: var(--document-max-height);
  }
}
}

@layer utilities {
/* ← ./document-ds/utilities/document-spacing.css */
.document {
  .p-0mm {
    padding: var(--document-space-0);
  }
  .p-0\.5mm {
    padding: var(--document-space-half);
  }
  .p-1mm {
    padding: var(--document-space-1);
  }
  .p-1\.5mm {
    padding: var(--document-space-1-half);
  }
  .p-2mm {
    padding: var(--document-space-2);
  }
  .p-3mm {
    padding: var(--document-space-3);
  }
  .p-4mm {
    padding: var(--document-space-4);
  }
  .p-5mm {
    padding: var(--document-space-5);
  }
  .p-6mm {
    padding: var(--document-space-6);
  }
  .p-8mm {
    padding: var(--document-space-8);
  }
  .p-10mm {
    padding: var(--document-space-10);
  }
  .p-12mm {
    padding: var(--document-space-12);
  }
  .p-15mm {
    padding: var(--document-space-15);
  }
  .p-18mm {
    padding: var(--document-space-18);
  }
  .p-24mm {
    padding: var(--document-space-24);
  }
  .p-30mm {
    padding: var(--document-space-30);
  }

  .px-0mm {
    padding-inline: var(--document-space-0);
  }
  .px-0\.5mm {
    padding-inline: var(--document-space-half);
  }
  .px-1mm {
    padding-inline: var(--document-space-1);
  }
  .px-1\.5mm {
    padding-inline: var(--document-space-1-half);
  }
  .px-2mm {
    padding-inline: var(--document-space-2);
  }
  .px-3mm {
    padding-inline: var(--document-space-3);
  }
  .px-4mm {
    padding-inline: var(--document-space-4);
  }
  .px-5mm {
    padding-inline: var(--document-space-5);
  }
  .px-6mm {
    padding-inline: var(--document-space-6);
  }
  .px-8mm {
    padding-inline: var(--document-space-8);
  }
  .px-10mm {
    padding-inline: var(--document-space-10);
  }
  .px-12mm {
    padding-inline: var(--document-space-12);
  }
  .px-15mm {
    padding-inline: var(--document-space-15);
  }
  .px-18mm {
    padding-inline: var(--document-space-18);
  }
  .px-24mm {
    padding-inline: var(--document-space-24);
  }
  .px-30mm {
    padding-inline: var(--document-space-30);
  }

  .py-0mm {
    padding-block: var(--document-space-0);
  }
  .py-0\.5mm {
    padding-block: var(--document-space-half);
  }
  .py-1mm {
    padding-block: var(--document-space-1);
  }
  .py-1\.5mm {
    padding-block: var(--document-space-1-half);
  }
  .py-2mm {
    padding-block: var(--document-space-2);
  }
  .py-3mm {
    padding-block: var(--document-space-3);
  }
  .py-4mm {
    padding-block: var(--document-space-4);
  }
  .py-5mm {
    padding-block: var(--document-space-5);
  }
  .py-6mm {
    padding-block: var(--document-space-6);
  }
  .py-8mm {
    padding-block: var(--document-space-8);
  }
  .py-10mm {
    padding-block: var(--document-space-10);
  }
  .py-12mm {
    padding-block: var(--document-space-12);
  }
  .py-15mm {
    padding-block: var(--document-space-15);
  }
  .py-18mm {
    padding-block: var(--document-space-18);
  }
  .py-24mm {
    padding-block: var(--document-space-24);
  }
  .py-30mm {
    padding-block: var(--document-space-30);
  }

  .pt-0mm {
    padding-top: var(--document-space-0);
  }
  .pt-0\.5mm {
    padding-top: var(--document-space-half);
  }
  .pt-1mm {
    padding-top: var(--document-space-1);
  }
  .pt-1\.5mm {
    padding-top: var(--document-space-1-half);
  }
  .pt-2mm {
    padding-top: var(--document-space-2);
  }
  .pt-3mm {
    padding-top: var(--document-space-3);
  }
  .pt-4mm {
    padding-top: var(--document-space-4);
  }
  .pt-5mm {
    padding-top: var(--document-space-5);
  }
  .pt-6mm {
    padding-top: var(--document-space-6);
  }
  .pt-8mm {
    padding-top: var(--document-space-8);
  }
  .pt-10mm {
    padding-top: var(--document-space-10);
  }
  .pt-12mm {
    padding-top: var(--document-space-12);
  }
  .pt-15mm {
    padding-top: var(--document-space-15);
  }
  .pt-18mm {
    padding-top: var(--document-space-18);
  }
  .pt-24mm {
    padding-top: var(--document-space-24);
  }
  .pt-30mm {
    padding-top: var(--document-space-30);
  }

  .pb-0mm {
    padding-bottom: var(--document-space-0);
  }
  .pb-0\.5mm {
    padding-bottom: var(--document-space-half);
  }
  .pb-1mm {
    padding-bottom: var(--document-space-1);
  }
  .pb-1\.5mm {
    padding-bottom: var(--document-space-1-half);
  }
  .pb-2mm {
    padding-bottom: var(--document-space-2);
  }
  .pb-3mm {
    padding-bottom: var(--document-space-3);
  }
  .pb-4mm {
    padding-bottom: var(--document-space-4);
  }
  .pb-5mm {
    padding-bottom: var(--document-space-5);
  }
  .pb-6mm {
    padding-bottom: var(--document-space-6);
  }
  .pb-8mm {
    padding-bottom: var(--document-space-8);
  }
  .pb-10mm {
    padding-bottom: var(--document-space-10);
  }
  .pb-12mm {
    padding-bottom: var(--document-space-12);
  }
  .pb-15mm {
    padding-bottom: var(--document-space-15);
  }
  .pb-18mm {
    padding-bottom: var(--document-space-18);
  }
  .pb-24mm {
    padding-bottom: var(--document-space-24);
  }
  .pb-30mm {
    padding-bottom: var(--document-space-30);
  }

  .ps-0mm {
    padding-inline-start: var(--document-space-0);
  }
  .ps-0\.5mm {
    padding-inline-start: var(--document-space-half);
  }
  .ps-1mm {
    padding-inline-start: var(--document-space-1);
  }
  .ps-1\.5mm {
    padding-inline-start: var(--document-space-1-half);
  }
  .ps-2mm {
    padding-inline-start: var(--document-space-2);
  }
  .ps-3mm {
    padding-inline-start: var(--document-space-3);
  }
  .ps-4mm {
    padding-inline-start: var(--document-space-4);
  }
  .ps-5mm {
    padding-inline-start: var(--document-space-5);
  }
  .ps-6mm {
    padding-inline-start: var(--document-space-6);
  }
  .ps-8mm {
    padding-inline-start: var(--document-space-8);
  }
  .ps-10mm {
    padding-inline-start: var(--document-space-10);
  }
  .ps-12mm {
    padding-inline-start: var(--document-space-12);
  }
  .ps-15mm {
    padding-inline-start: var(--document-space-15);
  }
  .ps-18mm {
    padding-inline-start: var(--document-space-18);
  }
  .ps-24mm {
    padding-inline-start: var(--document-space-24);
  }
  .ps-30mm {
    padding-inline-start: var(--document-space-30);
  }

  .pe-0mm {
    padding-inline-end: var(--document-space-0);
  }
  .pe-0\.5mm {
    padding-inline-end: var(--document-space-half);
  }
  .pe-1mm {
    padding-inline-end: var(--document-space-1);
  }
  .pe-1\.5mm {
    padding-inline-end: var(--document-space-1-half);
  }
  .pe-2mm {
    padding-inline-end: var(--document-space-2);
  }
  .pe-3mm {
    padding-inline-end: var(--document-space-3);
  }
  .pe-4mm {
    padding-inline-end: var(--document-space-4);
  }
  .pe-5mm {
    padding-inline-end: var(--document-space-5);
  }
  .pe-6mm {
    padding-inline-end: var(--document-space-6);
  }
  .pe-8mm {
    padding-inline-end: var(--document-space-8);
  }
  .pe-10mm {
    padding-inline-end: var(--document-space-10);
  }
  .pe-12mm {
    padding-inline-end: var(--document-space-12);
  }
  .pe-15mm {
    padding-inline-end: var(--document-space-15);
  }
  .pe-18mm {
    padding-inline-end: var(--document-space-18);
  }
  .pe-24mm {
    padding-inline-end: var(--document-space-24);
  }
  .pe-30mm {
    padding-inline-end: var(--document-space-30);
  }

  .m-0mm {
    margin: var(--document-space-0);
  }
  .m-0\.5mm {
    margin: var(--document-space-half);
  }
  .m-1mm {
    margin: var(--document-space-1);
  }
  .m-1\.5mm {
    margin: var(--document-space-1-half);
  }
  .m-2mm {
    margin: var(--document-space-2);
  }
  .m-3mm {
    margin: var(--document-space-3);
  }
  .m-4mm {
    margin: var(--document-space-4);
  }
  .m-5mm {
    margin: var(--document-space-5);
  }
  .m-6mm {
    margin: var(--document-space-6);
  }
  .m-8mm {
    margin: var(--document-space-8);
  }
  .m-10mm {
    margin: var(--document-space-10);
  }
  .m-12mm {
    margin: var(--document-space-12);
  }
  .m-15mm {
    margin: var(--document-space-15);
  }
  .m-18mm {
    margin: var(--document-space-18);
  }
  .m-24mm {
    margin: var(--document-space-24);
  }
  .m-30mm {
    margin: var(--document-space-30);
  }

  .mx-0mm {
    margin-inline: var(--document-space-0);
  }
  .mx-0\.5mm {
    margin-inline: var(--document-space-half);
  }
  .mx-1mm {
    margin-inline: var(--document-space-1);
  }
  .mx-1\.5mm {
    margin-inline: var(--document-space-1-half);
  }
  .mx-2mm {
    margin-inline: var(--document-space-2);
  }
  .mx-3mm {
    margin-inline: var(--document-space-3);
  }
  .mx-4mm {
    margin-inline: var(--document-space-4);
  }
  .mx-5mm {
    margin-inline: var(--document-space-5);
  }
  .mx-6mm {
    margin-inline: var(--document-space-6);
  }
  .mx-8mm {
    margin-inline: var(--document-space-8);
  }
  .mx-10mm {
    margin-inline: var(--document-space-10);
  }
  .mx-12mm {
    margin-inline: var(--document-space-12);
  }
  .mx-15mm {
    margin-inline: var(--document-space-15);
  }
  .mx-18mm {
    margin-inline: var(--document-space-18);
  }
  .mx-24mm {
    margin-inline: var(--document-space-24);
  }
  .mx-30mm {
    margin-inline: var(--document-space-30);
  }

  .my-0mm {
    margin-block: var(--document-space-0);
  }
  .my-0\.5mm {
    margin-block: var(--document-space-half);
  }
  .my-1mm {
    margin-block: var(--document-space-1);
  }
  .my-1\.5mm {
    margin-block: var(--document-space-1-half);
  }
  .my-2mm {
    margin-block: var(--document-space-2);
  }
  .my-3mm {
    margin-block: var(--document-space-3);
  }
  .my-4mm {
    margin-block: var(--document-space-4);
  }
  .my-5mm {
    margin-block: var(--document-space-5);
  }
  .my-6mm {
    margin-block: var(--document-space-6);
  }
  .my-8mm {
    margin-block: var(--document-space-8);
  }
  .my-10mm {
    margin-block: var(--document-space-10);
  }
  .my-12mm {
    margin-block: var(--document-space-12);
  }
  .my-15mm {
    margin-block: var(--document-space-15);
  }
  .my-18mm {
    margin-block: var(--document-space-18);
  }
  .my-24mm {
    margin-block: var(--document-space-24);
  }
  .my-30mm {
    margin-block: var(--document-space-30);
  }

  .mt-0mm {
    margin-top: var(--document-space-0);
  }
  .mt-0\.5mm {
    margin-top: var(--document-space-half);
  }
  .mt-1mm {
    margin-top: var(--document-space-1);
  }
  .mt-1\.5mm {
    margin-top: var(--document-space-1-half);
  }
  .mt-2mm {
    margin-top: var(--document-space-2);
  }
  .mt-3mm {
    margin-top: var(--document-space-3);
  }
  .mt-4mm {
    margin-top: var(--document-space-4);
  }
  .mt-5mm {
    margin-top: var(--document-space-5);
  }
  .mt-6mm {
    margin-top: var(--document-space-6);
  }
  .mt-8mm {
    margin-top: var(--document-space-8);
  }
  .mt-10mm {
    margin-top: var(--document-space-10);
  }
  .mt-12mm {
    margin-top: var(--document-space-12);
  }
  .mt-15mm {
    margin-top: var(--document-space-15);
  }
  .mt-18mm {
    margin-top: var(--document-space-18);
  }
  .mt-24mm {
    margin-top: var(--document-space-24);
  }
  .mt-30mm {
    margin-top: var(--document-space-30);
  }

  .mb-0mm {
    margin-bottom: var(--document-space-0);
  }
  .mb-0\.5mm {
    margin-bottom: var(--document-space-half);
  }
  .mb-1mm {
    margin-bottom: var(--document-space-1);
  }
  .mb-1\.5mm {
    margin-bottom: var(--document-space-1-half);
  }
  .mb-2mm {
    margin-bottom: var(--document-space-2);
  }
  .mb-3mm {
    margin-bottom: var(--document-space-3);
  }
  .mb-4mm {
    margin-bottom: var(--document-space-4);
  }
  .mb-5mm {
    margin-bottom: var(--document-space-5);
  }
  .mb-6mm {
    margin-bottom: var(--document-space-6);
  }
  .mb-8mm {
    margin-bottom: var(--document-space-8);
  }
  .mb-10mm {
    margin-bottom: var(--document-space-10);
  }
  .mb-12mm {
    margin-bottom: var(--document-space-12);
  }
  .mb-15mm {
    margin-bottom: var(--document-space-15);
  }
  .mb-18mm {
    margin-bottom: var(--document-space-18);
  }
  .mb-24mm {
    margin-bottom: var(--document-space-24);
  }
  .mb-30mm {
    margin-bottom: var(--document-space-30);
  }

  .ms-0mm {
    margin-inline-start: var(--document-space-0);
  }
  .ms-0\.5mm {
    margin-inline-start: var(--document-space-half);
  }
  .ms-1mm {
    margin-inline-start: var(--document-space-1);
  }
  .ms-1\.5mm {
    margin-inline-start: var(--document-space-1-half);
  }
  .ms-2mm {
    margin-inline-start: var(--document-space-2);
  }
  .ms-3mm {
    margin-inline-start: var(--document-space-3);
  }
  .ms-4mm {
    margin-inline-start: var(--document-space-4);
  }
  .ms-5mm {
    margin-inline-start: var(--document-space-5);
  }
  .ms-6mm {
    margin-inline-start: var(--document-space-6);
  }
  .ms-8mm {
    margin-inline-start: var(--document-space-8);
  }
  .ms-10mm {
    margin-inline-start: var(--document-space-10);
  }
  .ms-12mm {
    margin-inline-start: var(--document-space-12);
  }
  .ms-15mm {
    margin-inline-start: var(--document-space-15);
  }
  .ms-18mm {
    margin-inline-start: var(--document-space-18);
  }
  .ms-24mm {
    margin-inline-start: var(--document-space-24);
  }
  .ms-30mm {
    margin-inline-start: var(--document-space-30);
  }

  .me-0mm {
    margin-inline-end: var(--document-space-0);
  }
  .me-0\.5mm {
    margin-inline-end: var(--document-space-half);
  }
  .me-1mm {
    margin-inline-end: var(--document-space-1);
  }
  .me-1\.5mm {
    margin-inline-end: var(--document-space-1-half);
  }
  .me-2mm {
    margin-inline-end: var(--document-space-2);
  }
  .me-3mm {
    margin-inline-end: var(--document-space-3);
  }
  .me-4mm {
    margin-inline-end: var(--document-space-4);
  }
  .me-5mm {
    margin-inline-end: var(--document-space-5);
  }
  .me-6mm {
    margin-inline-end: var(--document-space-6);
  }
  .me-8mm {
    margin-inline-end: var(--document-space-8);
  }
  .me-10mm {
    margin-inline-end: var(--document-space-10);
  }
  .me-12mm {
    margin-inline-end: var(--document-space-12);
  }
  .me-15mm {
    margin-inline-end: var(--document-space-15);
  }
  .me-18mm {
    margin-inline-end: var(--document-space-18);
  }
  .me-24mm {
    margin-inline-end: var(--document-space-24);
  }
  .me-30mm {
    margin-inline-end: var(--document-space-30);
  }

  .gap-0mm {
    gap: var(--document-space-0);
  }
  .gap-0\.5mm {
    gap: var(--document-space-half);
  }
  .gap-1mm {
    gap: var(--document-space-1);
  }
  .gap-1\.5mm {
    gap: var(--document-space-1-half);
  }
  .gap-2mm {
    gap: var(--document-space-2);
  }
  .gap-3mm {
    gap: var(--document-space-3);
  }
  .gap-4mm {
    gap: var(--document-space-4);
  }
  .gap-5mm {
    gap: var(--document-space-5);
  }
  .gap-6mm {
    gap: var(--document-space-6);
  }
  .gap-8mm {
    gap: var(--document-space-8);
  }
  .gap-10mm {
    gap: var(--document-space-10);
  }
  .gap-12mm {
    gap: var(--document-space-12);
  }
  .gap-15mm {
    gap: var(--document-space-15);
  }
  .gap-18mm {
    gap: var(--document-space-18);
  }
  .gap-24mm {
    gap: var(--document-space-24);
  }
  .gap-30mm {
    gap: var(--document-space-30);
  }

  .gap-x-0mm {
    column-gap: var(--document-space-0);
  }
  .gap-x-0\.5mm {
    column-gap: var(--document-space-half);
  }
  .gap-x-1mm {
    column-gap: var(--document-space-1);
  }
  .gap-x-1\.5mm {
    column-gap: var(--document-space-1-half);
  }
  .gap-x-2mm {
    column-gap: var(--document-space-2);
  }
  .gap-x-3mm {
    column-gap: var(--document-space-3);
  }
  .gap-x-4mm {
    column-gap: var(--document-space-4);
  }
  .gap-x-5mm {
    column-gap: var(--document-space-5);
  }
  .gap-x-6mm {
    column-gap: var(--document-space-6);
  }
  .gap-x-8mm {
    column-gap: var(--document-space-8);
  }
  .gap-x-10mm {
    column-gap: var(--document-space-10);
  }
  .gap-x-12mm {
    column-gap: var(--document-space-12);
  }
  .gap-x-15mm {
    column-gap: var(--document-space-15);
  }
  .gap-x-18mm {
    column-gap: var(--document-space-18);
  }
  .gap-x-24mm {
    column-gap: var(--document-space-24);
  }
  .gap-x-30mm {
    column-gap: var(--document-space-30);
  }

  .gap-y-0mm {
    row-gap: var(--document-space-0);
  }
  .gap-y-0\.5mm {
    row-gap: var(--document-space-half);
  }
  .gap-y-1mm {
    row-gap: var(--document-space-1);
  }
  .gap-y-1\.5mm {
    row-gap: var(--document-space-1-half);
  }
  .gap-y-2mm {
    row-gap: var(--document-space-2);
  }
  .gap-y-3mm {
    row-gap: var(--document-space-3);
  }
  .gap-y-4mm {
    row-gap: var(--document-space-4);
  }
  .gap-y-5mm {
    row-gap: var(--document-space-5);
  }
  .gap-y-6mm {
    row-gap: var(--document-space-6);
  }
  .gap-y-8mm {
    row-gap: var(--document-space-8);
  }
  .gap-y-10mm {
    row-gap: var(--document-space-10);
  }
  .gap-y-12mm {
    row-gap: var(--document-space-12);
  }
  .gap-y-15mm {
    row-gap: var(--document-space-15);
  }
  .gap-y-18mm {
    row-gap: var(--document-space-18);
  }
  .gap-y-24mm {
    row-gap: var(--document-space-24);
  }
  .gap-y-30mm {
    row-gap: var(--document-space-30);
  }

  .mx-auto {
    margin-inline: auto;
  }
}

.document.mx-auto {
  margin-inline: auto;
}
}

@layer utilities {
/* ← ./document-ds/utilities/document-typography.css */
.document {
  .document-text-caption {
    font-size: var(--document-text-caption-size);
    line-height: var(--document-text-caption-line-height);
  }

  .document-text-compact {
    font-size: var(--document-text-compact-size);
    line-height: var(--document-text-compact-line-height);
  }

  .document-text-small {
    font-size: var(--document-text-small-size);
    line-height: var(--document-text-small-line-height);
  }

  .document-text-body {
    font-size: var(--document-text-body-size);
    line-height: var(--document-text-body-line-height);
  }

  .document-text-lead {
    font-size: var(--document-text-lead-size);
    line-height: var(--document-text-lead-line-height);
  }

  .text-start {
    text-align: start;
  }
  .text-center {
    text-align: center;
  }
  .text-end {
    text-align: end;
  }
  .font-medium {
    font-weight: var(--document-font-weight-medium);
  }
  .font-bold {
    font-weight: var(--document-font-weight-bold);
  }

  .font-8pt {
    font-size: var(--document-font-size-8);
  }
  .font-9pt {
    font-size: var(--document-font-size-9);
  }
  .font-10pt {
    font-size: var(--document-font-size-10);
  }
  .font-12pt {
    font-size: var(--document-font-size-12);
  }
  .font-14pt {
    font-size: var(--document-font-size-14);
  }
  .font-16pt {
    font-size: var(--document-font-size-16);
  }
  .font-18pt {
    font-size: var(--document-font-size-18);
  }
  .font-20pt {
    font-size: var(--document-font-size-20);
  }
  .font-24pt {
    font-size: var(--document-font-size-24);
  }
  .font-30pt {
    font-size: var(--document-font-size-30);
  }

  .leading-8pt {
    line-height: var(--document-line-height-8);
  }
  .leading-10pt {
    line-height: var(--document-line-height-10);
  }
  .leading-12pt {
    line-height: var(--document-line-height-12);
  }
  .leading-14pt {
    line-height: var(--document-line-height-14);
  }
  .leading-16pt {
    line-height: var(--document-line-height-16);
  }
  .leading-18pt {
    line-height: var(--document-line-height-18);
  }
  .leading-20pt {
    line-height: var(--document-line-height-20);
  }
  .leading-22pt {
    line-height: var(--document-line-height-22);
  }
  .leading-24pt {
    line-height: var(--document-line-height-24);
  }
  .leading-26pt {
    line-height: var(--document-line-height-26);
  }
  .leading-30pt {
    line-height: var(--document-line-height-30);
  }
  .leading-36pt {
    line-height: var(--document-line-height-36);
  }
}
}

