@microi.net/cli 5.8.5 → 5.8.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/.codebuddy-plugin/marketplace.json +2 -2
  2. package/.codebuddy-plugin/plugin.json +1 -1
  3. package/.codex-plugin/plugin.json +1 -1
  4. package/.mcp.json +1 -1
  5. package/.workbuddy-plugin/marketplace.json +2 -2
  6. package/.workbuddy-plugin/plugin.json +1 -1
  7. package/LICENSE +21 -21
  8. package/README.md +71 -71
  9. package/assets/build-meta.json +6 -6
  10. package/assets/feature-matrix.json +138 -138
  11. package/assets/logo.svg +4 -4
  12. package/cordis.patch.yml +1 -1
  13. package/package.json +1 -1
  14. package/scripts/codex-marketplace.json +20 -20
  15. package/scripts/mcp-codex-stdio-adapter.js +189 -189
  16. package/scripts/mcp-trae-windows-launcher.cmd +21 -21
  17. package/scripts/microi-cli-mcp.js +7 -7
  18. package/scripts/microi-cli.js +66 -65
  19. package/scripts/microi-codex-broker.js +450 -450
  20. package/scripts/microi-codex-router.js +618 -618
  21. package/scripts/microi-skills.meta.json +384 -384
  22. package/skills/.microi-skills-version.json +2 -2
  23. package/skills/.progressive-disclosure-manifest.json +3566 -3566
  24. package/skills/README.md +287 -287
  25. package/skills/ai-engine/SKILL.md +269 -265
  26. package/skills/ai-engine/agents/openai.yaml +4 -4
  27. package/skills/ai-engine/references/ai-employees.md +48 -48
  28. package/skills/ai-engine/references/self-hosted-digital-human.md +59 -59
  29. package/skills/ai-platform-governance/SKILL.md +177 -177
  30. package/skills/ai-platform-governance/references/progressive-01-/345/212/237/350/203/275/345/274/200/345/205/263.md +190 -190
  31. package/skills/app-store/SKILL.md +525 -525
  32. package/skills/app-store/agents/openai.yaml +4 -4
  33. package/skills/business-blueprint/SKILL.md +193 -193
  34. package/skills/datasource-engine/SKILL.md +93 -93
  35. package/skills/datasource-engine/agents/openai.yaml +4 -4
  36. package/skills/dos-orm/SKILL.md +97 -97
  37. package/skills/dos-orm/references/api-reference.md +229 -229
  38. package/skills/email-engine/SKILL.md +81 -81
  39. package/skills/email-engine/references/v8-email.md +34 -34
  40. package/skills/job-engine/SKILL.md +176 -176
  41. package/skills/job-engine/agents/openai.yaml +4 -4
  42. package/skills/message-notification/SKILL.md +156 -156
  43. package/skills/message-notification/agents/openai.yaml +5 -5
  44. package/skills/message-notification/references/contracts.md +102 -102
  45. package/skills/microi/SKILL.md +14 -14
  46. package/skills/microi-ai-app-auth.js +652 -652
  47. package/skills/microi-ai-application/SKILL.md +115 -115
  48. package/skills/microi-ai-application/agents/openai.yaml +4 -4
  49. package/skills/microi-ai-application/references/frontend-baseline.md +164 -164
  50. package/skills/microi-client-frontend/SKILL.md +244 -244
  51. package/skills/microi-client-frontend/references/progressive-01-3-/345/212/250/346/200/201/346/214/211/351/222/256/347/263/273/347/273/237.md +144 -144
  52. package/skills/microi-client-frontend/references/progressive-02-8-/350/277/220/350/241/214/346/227/266/351/253/230/351/242/221/345/235/221/345/244/215/347/233/230.md +196 -196
  53. package/skills/microi-client-frontend/references/progressive-03-vue3-/345/211/215/347/253/257/345/276/256/346/234/215/345/212/241/345/256/277/344/270/273/350/247/204/345/210/231.md +167 -167
  54. package/skills/microi-codex/SKILL.md +102 -102
  55. package/skills/microi-codex-installer/SKILL.md +231 -231
  56. package/skills/microi-codex-installer/agents/openai.yaml +7 -7
  57. package/skills/microi-datasource-mapping/SKILL.md +122 -122
  58. package/skills/microi-db-schema/SKILL.md +175 -175
  59. package/skills/microi-db-schema/agents/openai.yaml +4 -4
  60. package/skills/microi-db-schema/references/core-tables.md +695 -695
  61. package/skills/microi-db-schema/references/form-component-options.md +256 -256
  62. package/skills/microi-db-schema/references/schema-overview.md +202 -202
  63. package/skills/microi-db-schema/references/schema.md +646 -646
  64. package/skills/microi-db-schema/references/table-catalog.md +1599 -1599
  65. package/skills/microi-deployment/SKILL.md +221 -221
  66. package/skills/microi-deployment/references/deployment-matrix.md +109 -109
  67. package/skills/microi-docs-coverage/SKILL.md +133 -133
  68. package/skills/microi-docs-coverage/references/capability-map.md +91 -91
  69. package/skills/microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs +894 -894
  70. package/skills/microi-form-engine/SKILL.md +333 -333
  71. package/skills/microi-form-engine/references/component-catalog.md +218 -218
  72. package/skills/microi-form-engine/references/data-source-events.md +124 -124
  73. package/skills/microi-form-layout/SKILL.md +205 -205
  74. package/skills/microi-form-layout/references/progressive-01-3-/344/270/211/347/247/215/345/210/206/347/273/204/347/232/204/345/255/230/345/202/250/344/270/216/351/205/215/347/275/256.md +235 -235
  75. package/skills/microi-frontend-sdk/SKILL.md +194 -194
  76. package/skills/microi-frontend-sdk/references/progressive-01-token-/345/275/223/345/211/215/347/231/273/345/275/225/347/224/250/346/210/267/344/270/216/345/275/223/345/211/215/347/273/210/347/253/257/347/231/273/345/275/225/345/215/217/350/256/256.md +176 -176
  77. package/skills/microi-left-right-layout/SKILL.md +141 -141
  78. package/skills/microi-microservice/SKILL.md +326 -324
  79. package/skills/microi-microservice/references/runtime-delivery.md +278 -278
  80. package/skills/microi-mobile-app-quality/SKILL.md +185 -185
  81. package/skills/microi-mobile-app-quality/references/progressive-01-4-/351/207/215/350/246/201/346/214/211/351/222/256/345/277/205/351/241/273/345/270/246/345/233/276/346/240/207.md +213 -213
  82. package/skills/microi-mobile-app-quality/references/progressive-02-9-/344/270/273/351/242/230/345/210/207/346/215/242/345/277/205/351/241/273/347/234/237/345/256/236/344/270/224/345/205/250/345/261/200/347/224/237/346/225/210.md +128 -128
  83. package/skills/microi-solution-quotation/SKILL.md +78 -78
  84. package/skills/microi-solution-quotation/agents/openai.yaml +4 -4
  85. package/skills/microi-solution-quotation/scripts/build_solution_quote.py +296 -296
  86. package/skills/microi-sso/SKILL.md +92 -92
  87. package/skills/microi-sso/references/acceptance.md +49 -49
  88. package/skills/microi-sso/references/configuration-and-security.md +53 -53
  89. package/skills/microi-sso/references/inbound.md +53 -53
  90. package/skills/microi-sso/references/outbound.md +39 -39
  91. package/skills/microi-system-delivery/SKILL.md +137 -137
  92. package/skills/microi-system-delivery/references/progressive-01-/346/240/207/345/207/206/345/267/245/344/275/234/346/265/201.md +193 -193
  93. package/skills/microi-system-delivery/references/progressive-02-/350/207/252/345/212/250/345/214/226/346/265/213/350/257/225/345/277/205/351/241/273/350/246/206/347/233/226/347/232/204/345/235/221.md +217 -217
  94. package/skills/microi-ui/SKILL.md +192 -192
  95. package/skills/microi-ui/references/progressive-01-/347/247/273/345/212/250/347/253/257/345/234/272/346/231/257/350/223/235/345/233/276.md +183 -183
  96. package/skills/microi-uniapp-frontend/SKILL.md +193 -193
  97. package/skills/microi-uniapp-frontend/references/progressive-01-/347/247/273/345/212/250/347/253/257/345/210/206/347/261/273-/345/217/214/346/240/217/345/210/227/350/241/250/347/213/254/347/253/213/346/273/232/345/212/250.md +225 -225
  98. package/skills/microi-uniapp-frontend/references/progressive-02-/345/205/263/351/224/256/344/270/232/345/212/241/350/265/204/344/272/247/344/270/215/345/276/227/351/273/230/350/256/244/351/200/211/344/270/255.md +154 -154
  99. package/skills/microi.v8.js +1921 -1921
  100. package/skills/module-engine/SKILL.md +255 -255
  101. package/skills/module-engine/references/module-config.md +204 -204
  102. package/skills/ocr-engine/SKILL.md +113 -113
  103. package/skills/ocr-engine/agents/openai.yaml +4 -4
  104. package/skills/page-engine/SKILL.md +206 -206
  105. package/skills/page-engine/examples/compact-dashboard.json +1444 -1444
  106. package/skills/page-engine/references/progressive-01-/346/211/200/346/234/211/347/273/204/344/273/266/347/261/273/345/236/213.md +234 -234
  107. package/skills/page-engine/references/progressive-02-/347/211/210/346/234/254/345/216/206/345/217/262-/345/271/266/345/217/221/344/277/235/345/255/230/344/270/216/345/233/236/346/273/232.md +60 -60
  108. package/skills/performance-testing/SKILL.md +221 -221
  109. package/skills/playwright-e2e/SKILL.md +196 -196
  110. package/skills/playwright-e2e/references/progressive-01-/345/205/250/350/207/252/345/212/250/347/231/273/345/275/225-/345/205/215/351/252/214/350/257/201/347/240/201-/344/275/206/344/270/215/345/205/215/345/257/206/347/240/201-/345/277/205/350/257/273.md +173 -173
  111. package/skills/playwright-e2e/references/progressive-02-/346/226/207/345/255/227/345/257/271/346/257/224/345/272/246/344/270/216/345/217/257/350/257/273/346/200/247/350/207/252/345/212/250/345/214/226/346/243/200/346/237/245-/345/277/205/345/201/232.md +183 -183
  112. package/skills/playwright-e2e/references/progressive-03-microi-helper-/346/250/241/346/235/277.md +221 -221
  113. package/skills/playwright-e2e/references/progressive-04-ci-/345/273/272/350/256/256.md +115 -115
  114. package/skills/print-engine/SKILL.md +259 -259
  115. package/skills/production-readonly-audit/SKILL.md +41 -41
  116. package/skills/report-engine/SKILL.md +71 -71
  117. package/skills/report-engine/agents/openai.yaml +4 -4
  118. package/skills/scripts/optimize-progressive-disclosure.mjs +204 -204
  119. package/skills/scripts/refresh-progressive-disclosure.mjs +64 -64
  120. package/skills/scripts/sync-embedded-skills.mjs +46 -46
  121. package/skills/scripts/validate-progressive-disclosure.mjs +57 -57
  122. package/skills/search-engine/SKILL.md +75 -75
  123. package/skills/search-engine/agents/openai.yaml +4 -4
  124. package/skills/spider-engine/SKILL.md +190 -190
  125. package/skills/system-observability/SKILL.md +248 -248
  126. package/skills/system-observability/references/memory-incident-triage.md +77 -77
  127. package/skills/translate-engine/SKILL.md +140 -140
  128. package/skills/translate-engine/agents/openai.yaml +4 -4
  129. package/skills/ui-design/SKILL.md +223 -223
  130. package/skills/ui-design/assets/pattern-showcase/app.js +54 -54
  131. package/skills/ui-design/assets/pattern-showcase/index.html +163 -163
  132. package/skills/ui-design/assets/pattern-showcase/styles.css +311 -311
  133. package/skills/ui-design/assets/templates/MCI-DESIGN.md +206 -206
  134. package/skills/ui-design/references/design-pattern-library.md +184 -184
  135. package/skills/ui-design/references/mci-design-contract.md +163 -163
  136. package/skills/ui-design/references/motion-and-media.md +78 -78
  137. package/skills/ui-design/references/product-flow-recipes.md +94 -94
  138. package/skills/ui-design/references/progressive-01-/351/242/234/350/211/262/344/275/223/347/263/273-css-variables-/346/224/257/346/214/201/344/270/273/351/242/230/345/210/207/346/215/242.md +218 -218
  139. package/skills/ui-design/references/progressive-02-/345/255/227/344/275/223.md +164 -164
  140. package/skills/ui-design/references/progressive-03-/345/212/250/346/225/210/350/247/204/350/214/203-/344/270/260/345/257/214/344/275/206/344/270/215/345/215/241.md +235 -235
  141. package/skills/ui-design/references/progressive-04-/347/273/204/344/273/266/351/243/216/346/240/274/351/200/237/346/237/245.md +152 -152
  142. package/skills/ui-design/references/progressive-05-/347/247/273/345/212/250/347/253/257/344/270/223/347/224/250/350/247/204/350/214/203.md +238 -238
  143. package/skills/ui-design/references/progressive-06-/344/270/273/351/242/230/345/210/207/346/215/242/345/256/236/347/216/260.md +194 -194
  144. package/skills/ui-design/references/progressive-07-/351/200/237/346/237/245-/344/273/216/345/244/264/346/220/255/345/273/272/344/270/200/344/270/252/347/247/273/345/212/250/347/253/257/351/241/265/351/235/242.md +207 -207
  145. package/skills/ui-design/references/progressive-08-/350/241/250/345/215/225/345/210/206/347/273/204/350/247/204/350/214/203-tabs-vs-collapsegroup-/345/274/272/345/210/266.md +142 -142
  146. package/skills/uniapp-mall-assets/SKILL.md +176 -176
  147. package/skills/unity-integration/SKILL.md +171 -171
  148. package/skills/unity-integration/agents/openai.yaml +4 -4
  149. package/skills/unity-integration/references/ai-app-delivery.md +119 -119
  150. package/skills/unity-integration/references/sdk-api.md +82 -82
  151. package/skills/unity-integration/references/toolbox-migration.md +66 -66
  152. package/skills/unity-integration/references/webgl-hosting.md +57 -57
  153. package/skills/v8-api-config/SKILL.md +388 -388
  154. package/skills/v8-cache-pattern/SKILL.md +312 -312
  155. package/skills/v8-crud-api/SKILL.md +178 -178
  156. package/skills/v8-crud-api/references/progressive-01-/346/237/245/350/257/242/345/210/227/350/241/250-/345/210/206/351/241/265.md +226 -226
  157. package/skills/v8-crud-api/references/progressive-02-where-/346/235/241/344/273/266/350/257/255/346/263/225/351/200/237/346/237/245.md +49 -49
  158. package/skills/v8-debugging/SKILL.md +284 -284
  159. package/skills/v8-explorer-tree/SKILL.md +228 -228
  160. package/skills/v8-export-import/SKILL.md +219 -219
  161. package/skills/v8-export-import/references/progressive-01-excellayout-/351/253/230/347/272/247/350/207/252/347/224/261/345/270/203/345/261/200.md +211 -211
  162. package/skills/v8-export-import/references/progressive-02-powerpoint-/345/257/274/345/207/272.md +202 -202
  163. package/skills/v8-export-import/references/progressive-03-/345/256/211/345/205/250-/346/200/247/350/203/275/346/263/250/346/204/217.md +42 -42
  164. package/skills/v8-file-upload/SKILL.md +284 -284
  165. package/skills/v8-file-upload/references/progressive-01-/345/205/254/346/234/211/346/241/266-vs-/347/247/201/346/234/211/346/241/266.md +263 -263
  166. package/skills/v8-file-upload/references/progressive-02-office-/346/226/207/344/273/266/345/234/250/347/272/277/347/274/226/350/276/221/347/211/210/346/234/254/345/217/267/350/247/204/345/210/231.md +161 -161
  167. package/skills/v8-formengine-http/SKILL.md +238 -238
  168. package/skills/v8-frontend-events/SKILL.md +180 -180
  169. package/skills/v8-frontend-events/references/bluetooth-print-api.md +135 -135
  170. package/skills/v8-frontend-events/references/bluetooth-print.md +258 -258
  171. package/skills/v8-frontend-events/references/progressive-01-/345/210/227/350/241/250/344/272/213/344/273/266.md +219 -219
  172. package/skills/v8-http-integration/SKILL.md +182 -182
  173. package/skills/v8-http-integration/references/progressive-01-get-/350/257/267/346/261/202.md +220 -220
  174. package/skills/v8-http-integration/references/progressive-02-/351/224/231/350/257/257/345/244/204/347/220/206/346/250/241/345/274/217.md +44 -44
  175. package/skills/v8-image-processing/SKILL.md +190 -190
  176. package/skills/v8-image-processing/agents/openai.yaml +4 -4
  177. package/skills/v8-image-processing/references/api-reference.md +623 -623
  178. package/skills/v8-menu-buttons/SKILL.md +186 -186
  179. package/skills/v8-menu-buttons/references/progressive-01-2-/346/214/211/351/222/256/345/257/271/350/261/241-schema.md +222 -222
  180. package/skills/v8-menu-buttons/references/progressive-02-8-/346/250/241/345/274/217-f-/345/220/216/345/217/260/344/273/273/345/212/241/346/214/211/351/222/256-/351/225/277/344/273/273/345/212/241.md +228 -228
  181. package/skills/v8-menu-buttons/references/progressive-03-10-/345/217/215/346/250/241/345/274/217-/351/201/277/345/205/215.md +104 -104
  182. package/skills/v8-mongodb/SKILL.md +200 -200
  183. package/skills/v8-mq-mqtt/SKILL.md +176 -176
  184. package/skills/v8-mq-mqtt/references/mqtt-production.md +342 -342
  185. package/skills/v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-/347/211/251/350/201/224/347/275/221.md +181 -181
  186. package/skills/v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs +203 -203
  187. package/skills/v8-saas-multi-tenant/SKILL.md +305 -305
  188. package/skills/v8-security/SKILL.md +210 -210
  189. package/skills/v8-security/references/progressive-01-2-/346/235/203/351/231/220/346/240/241/351/252/214.md +200 -200
  190. package/skills/v8-security/references/progressive-02-7-/346/227/245/345/277/227/350/256/260/345/275/225.md +160 -160
  191. package/skills/v8-sql-query/SKILL.md +302 -302
  192. package/skills/v8-table-event/SKILL.md +176 -176
  193. package/skills/v8-table-event/references/progressive-01-informv8-js-/350/241/250/345/215/225/346/211/223/345/274/200/344/272/213/344/273/266.md +216 -216
  194. package/skills/v8-table-event/references/progressive-02-/345/211/215/347/253/257/344/272/213/344/273/266/345/220/215-v8-eventname-/345/217/257/350/203/275/347/232/204/345/200/274.md +46 -46
  195. package/skills/v8-tcp-integration/SKILL.md +147 -147
  196. package/skills/v8-tcp-integration/agents/openai.yaml +4 -4
  197. package/skills/v8-template-engine/SKILL.md +167 -167
  198. package/skills/v8-utilities/SKILL.md +104 -104
  199. package/skills/v8-utilities/references/client-api-index.md +143 -143
  200. package/skills/v8-utilities/references/platform-http-routes.md +83 -83
  201. package/skills/v8-utilities/references/server-api-index.md +188 -188
  202. package/skills/v8-workflow/SKILL.md +252 -252
  203. package/skills/v8-workflow/references/progressive-01-/350/212/202/347/202/271/345/274/200/345/247/213-v8-/344/272/213/344/273/266.md +180 -180
  204. package/skills/v8-workflow/references/workflow-configuration.md +49 -49
  205. package/skills/vision-engine/SKILL.md +160 -160
  206. package/skills/vision-engine/agents/openai.yaml +4 -4
  207. package/skills/vision-engine/references/architecture-and-acceptance.md +194 -194
  208. package/skills/workspace-conventions/SKILL.md +273 -273
  209. package/skills/workspace-conventions/references/progressive-01-/347/211/210/346/234/254/346/233/264/346/226/260/346/227/245/345/277/227/344/277/235/346/212/244/350/247/204/345/210/231-/345/274/272/345/210/266.md +209 -209
  210. package/skills/workspace-conventions/references/progressive-02-microi-net-api-/346/234/254/345/234/260/345/220/257/345/212/250/347/272/246/345/256/232.md +217 -217
  211. package/skills/workspace-conventions/references/progressive-03-cli-/344/270/216-ide-/346/217/222/344/273/266/351/224/231/347/211/210/345/205/261/345/255/230/347/272/246/345/256/232.md +27 -27
@@ -1,311 +1,311 @@
1
- :root {
2
- color-scheme: dark;
3
- --mci-bg: #07101f;
4
- --mci-bg-soft: #0d1830;
5
- --mci-surface: rgba(15, 28, 52, 0.78);
6
- --mci-surface-solid: #111f39;
7
- --mci-border: rgba(151, 173, 216, 0.16);
8
- --mci-text: #f4f7ff;
9
- --mci-text-muted: #9aa9c6;
10
- --mci-primary: #6b87ff;
11
- --mci-primary-strong: #4f6df0;
12
- --mci-cyan: #38dcff;
13
- --mci-success: #26d7b0;
14
- --mci-warning: #ffca68;
15
- --mci-danger: #ff6b88;
16
- --mci-shape-card: 28px;
17
- --mci-shape-panel: 22px;
18
- --mci-shape-button: 999px;
19
- --mci-shape-input: 14px;
20
- --mci-shadow-card: 0 20px 70px rgba(0, 0, 0, 0.22);
21
- --mci-shadow-float: 0 22px 60px rgba(32, 61, 141, 0.28);
22
- font-family: Inter, "SF Pro Display", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
23
- }
24
-
25
- :root[data-mci-theme="light"] {
26
- color-scheme: light;
27
- --mci-bg: #f2f5fb;
28
- --mci-bg-soft: #e9eef8;
29
- --mci-surface: rgba(255, 255, 255, 0.86);
30
- --mci-surface-solid: #ffffff;
31
- --mci-border: rgba(31, 50, 91, 0.12);
32
- --mci-text: #14203a;
33
- --mci-text-muted: #66738d;
34
- --mci-shadow-card: 0 20px 70px rgba(42, 62, 112, 0.12);
35
- --mci-shadow-float: 0 22px 60px rgba(66, 91, 162, 0.18);
36
- }
37
-
38
- * { box-sizing: border-box; }
39
- html { scroll-behavior: smooth; }
40
- body { margin: 0; min-width: 320px; background: var(--mci-bg); color: var(--mci-text); }
41
- button, input { font: inherit; }
42
- button, a { -webkit-tap-highlight-color: transparent; }
43
-
44
- .mci-lab {
45
- min-height: 100vh;
46
- overflow: hidden;
47
- background:
48
- linear-gradient(rgba(107, 135, 255, 0.035) 1px, transparent 1px),
49
- linear-gradient(90deg, rgba(107, 135, 255, 0.035) 1px, transparent 1px),
50
- radial-gradient(circle at 12% 0%, rgba(66, 105, 255, 0.18), transparent 28%),
51
- var(--mci-bg);
52
- background-size: 44px 44px, 44px 44px, auto, auto;
53
- }
54
-
55
- .mci-lab a { color: inherit; text-decoration: none; }
56
- .mci-lab__nav {
57
- position: relative;
58
- z-index: 20;
59
- display: grid;
60
- grid-template-columns: 1fr auto 1fr;
61
- align-items: center;
62
- width: min(1180px, calc(100% - 40px));
63
- height: 84px;
64
- margin: 0 auto;
65
- border-bottom: 1px solid var(--mci-border);
66
- }
67
-
68
- .mci-lab__brand { display: inline-flex; align-items: center; gap: 10px; width: max-content; font-size: 14px; font-weight: 700; letter-spacing: .02em; }
69
- .mci-lab__brand-mark { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 11px; color: white; background: linear-gradient(145deg, var(--mci-primary), #935fff); box-shadow: 0 10px 24px rgba(92, 112, 255, .28); }
70
- .mci-lab__nav-links { display: flex; gap: 30px; font-size: 13px; color: var(--mci-text-muted); }
71
- .mci-lab__nav-links a { position: relative; padding: 10px 0; }
72
- .mci-lab__nav-links a::after { position: absolute; right: 50%; bottom: 4px; left: 50%; height: 1px; content: ""; background: var(--mci-primary); transition: .25s ease; }
73
- .mci-lab__nav-links a:hover::after, .mci-lab__nav-links a:focus-visible::after { right: 0; left: 0; }
74
-
75
- .mci-icon-button { justify-self: end; display: grid; grid-template-columns: 1fr 1fr; align-items: center; width: 68px; height: 36px; padding: 4px; border: 1px solid var(--mci-border); border-radius: 999px; color: var(--mci-text-muted); background: var(--mci-surface); cursor: pointer; }
76
- .mci-icon-button span { display: grid; height: 26px; place-items: center; border-radius: 50%; transition: .2s ease; }
77
- :root[data-mci-theme="dark"] .mci-icon-button__moon,
78
- :root[data-mci-theme="light"] .mci-icon-button__sun { color: #fff; background: var(--mci-primary); box-shadow: 0 4px 12px rgba(91, 124, 250, .28); }
79
-
80
- .mci-hero {
81
- position: relative;
82
- z-index: 1;
83
- display: grid;
84
- grid-template-columns: minmax(0, 1.06fr) minmax(390px, .94fr);
85
- gap: clamp(50px, 8vw, 112px);
86
- align-items: center;
87
- width: min(1180px, calc(100% - 40px));
88
- min-height: 670px;
89
- margin: 0 auto;
90
- padding: 78px 0 96px;
91
- }
92
-
93
- .mci-hero__ambient { position: absolute; z-index: -1; inset: 0; pointer-events: none; }
94
- .mci-hero__ambient span { position: absolute; border: 1px solid rgba(107, 135, 255, .13); border-radius: 50%; animation: mci-drift 12s ease-in-out infinite alternate; }
95
- .mci-hero__ambient span:nth-child(1) { top: 90px; right: -170px; width: 540px; height: 540px; }
96
- .mci-hero__ambient span:nth-child(2) { top: 188px; right: -74px; width: 340px; height: 340px; animation-delay: -3s; }
97
- .mci-hero__ambient span:nth-child(3) { top: 256px; right: -6px; width: 200px; height: 200px; animation-delay: -6s; }
98
-
99
- .mci-eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--mci-cyan); font-size: 11px; font-weight: 800; letter-spacing: .22em; }
100
- .mci-eyebrow::before { width: 26px; height: 1px; content: ""; background: currentColor; }
101
- .mci-hero h1 { margin: 26px 0 24px; font-size: clamp(56px, 6.6vw, 92px); line-height: .97; letter-spacing: -.065em; }
102
- .mci-hero h1 em { color: transparent; font-style: normal; background: linear-gradient(100deg, #9aaeff 0%, #5ee7ff 48%, #a784ff 100%); -webkit-background-clip: text; background-clip: text; }
103
- .mci-hero__content > p { max-width: 650px; margin: 0; color: var(--mci-text-muted); font-size: 16px; line-height: 1.9; }
104
- .mci-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
105
-
106
- .mci-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 12px; padding: 0 24px; border: 1px solid transparent; border-radius: var(--mci-shape-button); font-size: 14px; font-weight: 700; line-height: 1; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
107
- .mci-button:hover, .mci-button:focus-visible { transform: translateY(-2px); }
108
- .mci-button:active { transform: translateY(0) scale(.98); }
109
- .mci-button--primary { color: #fff !important; background: linear-gradient(135deg, var(--mci-primary), var(--mci-primary-strong)); box-shadow: 0 13px 32px rgba(79, 109, 240, .32); }
110
- .mci-button--quiet { border-color: var(--mci-border); background: var(--mci-surface); }
111
-
112
- .mci-hero__console { position: relative; min-height: 420px; padding: 22px; overflow: hidden; border: 1px solid rgba(131, 156, 232, .23); border-radius: 34px; background: linear-gradient(160deg, rgba(25, 45, 81, .94), rgba(10, 20, 40, .86)); box-shadow: 0 35px 100px rgba(0, 0, 0, .35), inset 0 1px rgba(255, 255, 255, .09); }
113
- :root[data-mci-theme="light"] .mci-hero__console { background: linear-gradient(160deg, #fdfdff, #e9effc); box-shadow: var(--mci-shadow-float); }
114
- .mci-console__head { display: flex; align-items: center; gap: 7px; padding-bottom: 18px; border-bottom: 1px solid var(--mci-border); }
115
- .mci-console__head span { width: 7px; height: 7px; border-radius: 50%; background: var(--mci-danger); }
116
- .mci-console__head span:nth-child(2) { background: var(--mci-warning); }
117
- .mci-console__head span:nth-child(3) { background: var(--mci-success); }
118
- .mci-console__head b { margin-left: auto; color: var(--mci-text-muted); font-size: 10px; letter-spacing: .18em; }
119
- .mci-console__orbit { position: absolute; top: 90px; left: 50%; width: 230px; height: 230px; transform: translateX(-50%); }
120
- .mci-console__orbit::before, .mci-console__orbit i { position: absolute; inset: 0; content: ""; border: 1px solid rgba(96, 224, 255, .18); border-radius: 50%; }
121
- .mci-console__orbit::before { inset: 38px; border: 0; background: radial-gradient(circle at 35% 30%, #93f4ff, #5573ff 34%, #5c35a2 62%, transparent 64%); filter: drop-shadow(0 0 30px rgba(83, 120, 255, .45)); animation: mci-orbit-pulse 4s ease-in-out infinite; }
122
- .mci-console__orbit i:nth-child(1) { transform: rotateX(65deg); animation: mci-orbit 8s linear infinite; }
123
- .mci-console__orbit i:nth-child(2) { transform: rotateY(65deg); animation: mci-orbit 11s linear reverse infinite; }
124
- .mci-console__orbit i:nth-child(3) { inset: 24px; border-style: dashed; animation: mci-orbit 14s linear infinite; }
125
- .mci-console__metric { position: absolute; right: 22px; bottom: 68px; left: 22px; display: grid; grid-template-columns: 1fr auto; align-items: end; padding: 20px; border: 1px solid var(--mci-border); border-radius: 18px; background: rgba(5, 13, 30, .62); backdrop-filter: blur(14px); }
126
- :root[data-mci-theme="light"] .mci-console__metric { background: rgba(255, 255, 255, .74); }
127
- .mci-console__metric small { align-self: start; color: var(--mci-text-muted); }
128
- .mci-console__metric strong { grid-row: span 2; color: var(--mci-cyan); font-size: 52px; line-height: .9; }
129
- .mci-console__metric span { color: var(--mci-text-muted); font-size: 11px; }
130
- .mci-console__footer { position: absolute; right: 22px; bottom: 22px; left: 22px; display: flex; justify-content: space-between; color: var(--mci-text-muted); font-size: 9px; letter-spacing: .08em; }
131
-
132
- .mci-section { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 110px 0 120px; border-top: 1px solid var(--mci-border); }
133
- .mci-section__head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
134
- .mci-section h2, .mci-flow h2, .mci-contract h2 { margin: 14px 0 0; font-size: clamp(34px, 4vw, 52px); line-height: 1.1; letter-spacing: -.045em; }
135
- .mci-filter { display: flex; gap: 4px; padding: 5px; border: 1px solid var(--mci-border); border-radius: 999px; background: var(--mci-surface); }
136
- .mci-filter button { min-height: 34px; padding: 0 15px; border: 0; border-radius: 999px; color: var(--mci-text-muted); background: transparent; font-size: 12px; cursor: pointer; }
137
- .mci-filter button.is-active { color: #fff; background: var(--mci-primary); box-shadow: 0 7px 18px rgba(91, 124, 250, .23); }
138
-
139
- .mci-pattern-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
140
- .mci-pattern { min-width: 0; padding: 12px; overflow: hidden; border: 1px solid var(--mci-border); border-radius: var(--mci-shape-card); background: var(--mci-surface); box-shadow: var(--mci-shadow-card); transition: opacity .25s ease, transform .25s ease, border-color .25s ease; }
141
- .mci-pattern:hover { transform: translateY(-4px); border-color: rgba(107, 135, 255, .4); }
142
- .mci-pattern.is-hidden { display: none; }
143
- .mci-pattern__visual { position: relative; height: 318px; padding: 28px; overflow: hidden; border-radius: calc(var(--mci-shape-card) - 10px); background: #101b33; color: #fff; }
144
- .mci-pattern__index { position: absolute; z-index: 3; top: 20px; right: 22px; color: rgba(255, 255, 255, .55); font-size: 11px; font-weight: 800; letter-spacing: .16em; }
145
- .mci-pattern__copy { padding: 20px 12px 14px; }
146
- .mci-pattern__copy > span { color: var(--mci-primary); font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
147
- .mci-pattern__copy h3 { margin: 9px 0 8px; font-size: 22px; letter-spacing: -.025em; }
148
- .mci-pattern__copy p { margin: 0; color: var(--mci-text-muted); font-size: 13px; line-height: 1.7; }
149
-
150
- .mci-pattern--story .mci-pattern__visual { background: #f2f0e8; color: #151515; }
151
- .mci-pattern--story .mci-pattern__visual::before { position: absolute; right: -40px; bottom: -100px; width: 260px; height: 260px; content: ""; border-radius: 50%; background: #ff4f3d; opacity: .9; }
152
- .mci-story-word { position: absolute; top: 76px; left: 28px; z-index: 1; font-size: clamp(46px, 5vw, 70px); font-weight: 900; line-height: .82; letter-spacing: -.08em; }
153
- .mci-story-word em { color: #3e52df; font-style: normal; }
154
- .mci-story-line { position: absolute; right: 28px; bottom: 30px; left: 28px; height: 1px; background: rgba(0, 0, 0, .32); }
155
- .mci-story-line::before { position: absolute; left: 0; bottom: 10px; content: "THE IDEA BECOMES THE INTERFACE"; font-size: 9px; font-style: normal; letter-spacing: .14em; }
156
-
157
- .mci-pattern--product .mci-pattern__visual { display: grid; place-items: center; background: radial-gradient(circle at 0 0, #dce6ff, transparent 45%), #f5f7fb; color: #18233c; }
158
- .mci-phone-card { width: min(330px, 90%); padding: 20px; border: 1px solid #e2e7f1; border-radius: 22px; background: #fff; box-shadow: 0 22px 55px rgba(38, 54, 94, .18); }
159
- .mci-phone-card__bar { display: flex; align-items: center; gap: 9px; font-size: 11px; }
160
- .mci-phone-card__bar i { width: 24px; height: 24px; border-radius: 8px; background: #5b7cfa; }
161
- .mci-phone-card__bar b { margin-left: auto; color: #7c889f; font-size: 9px; }
162
- .mci-phone-card__progress { height: 3px; margin: 14px 0 20px; overflow: hidden; border-radius: 4px; background: #edf0f6; }
163
- .mci-phone-card__progress i { display: block; width: 66%; height: 100%; background: #5b7cfa; }
164
- .mci-phone-card > strong { display: block; margin-bottom: 12px; font-size: 14px; }
165
- .mci-phone-card__choice { display: grid; grid-template-columns: 24px 1fr; gap: 10px; margin-top: 8px; padding: 11px; border: 1px solid #e5e9f1; border-radius: 12px; }
166
- .mci-phone-card__choice > i { display: grid; width: 20px; height: 20px; place-items: center; border: 1px solid #d0d7e5; border-radius: 50%; font-size: 10px; font-style: normal; }
167
- .mci-phone-card__choice span { font-size: 11px; font-weight: 700; }
168
- .mci-phone-card__choice small { display: block; margin-top: 3px; color: #8a96ab; font-size: 8px; font-weight: 400; }
169
- .mci-phone-card__choice.is-selected { border-color: #5b7cfa; background: #f2f5ff; }
170
- .mci-phone-card__choice.is-selected > i { color: white; border-color: #5b7cfa; background: #5b7cfa; }
171
-
172
- .mci-pattern--editorial .mci-pattern__visual { background: #ffcd55; color: #191919; }
173
- .mci-editorial-type { position: absolute; top: 38px; left: 32px; display: flex; align-items: start; gap: 14px; }
174
- .mci-editorial-type b { font-size: 114px; line-height: .85; letter-spacing: -.1em; }
175
- .mci-editorial-type span { max-width: 95px; padding-top: 10px; font-size: 13px; font-weight: 700; line-height: 1.4; }
176
- .mci-editorial-card { position: absolute; right: -20px; bottom: -44px; width: 285px; height: 190px; padding: 22px; transform: rotate(-7deg); background: #3527a5; box-shadow: 0 20px 50px rgba(47, 38, 132, .3); }
177
- .mci-editorial-card i { display: inline-block; width: 42px; height: 42px; margin-right: -6px; border: 2px solid #fff; border-radius: 50%; }
178
- .mci-editorial-card i:nth-child(2) { background: #ff6257; }
179
- .mci-editorial-card i:nth-child(3) { background: #5ce3cc; }
180
- .mci-editorial-card strong { display: block; margin-top: 18px; color: #fff; font-size: 25px; }
181
-
182
- .mci-pattern--immersive .mci-pattern__visual { background: radial-gradient(circle at 52% 48%, #1c3350, #050914 70%); }
183
- .mci-pattern--immersive .mci-pattern__visual::before { position: absolute; inset: 0; content: ""; background-image: linear-gradient(rgba(73, 220, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(73, 220, 255, .05) 1px, transparent 1px); background-size: 22px 22px; mask-image: linear-gradient(to bottom, black, transparent); }
184
- .mci-orb { position: absolute; top: 50%; left: 50%; width: 180px; height: 180px; transform: translate(-50%, -58%); }
185
- .mci-orb::before { position: absolute; inset: 34px; content: ""; border-radius: 38% 62% 44% 56%; background: radial-gradient(circle at 34% 28%, #eaffff, #61eaff 16%, #5d63fa 54%, #17165e 72%); filter: drop-shadow(0 0 34px rgba(80, 201, 255, .5)); animation: mci-blob 7s ease-in-out infinite; }
186
- .mci-orb i { position: absolute; inset: 0; border: 1px solid rgba(107, 222, 255, .35); border-radius: 50%; }
187
- .mci-orb i:nth-child(1) { transform: rotateX(72deg); }
188
- .mci-orb i:nth-child(2) { transform: rotateY(72deg); }
189
- .mci-orb i:nth-child(3) { inset: 20px; border-style: dashed; animation: mci-orbit 12s linear infinite; }
190
- .mci-orb b { position: absolute; top: 22px; right: 18px; width: 9px; height: 9px; border-radius: 50%; background: #62efff; box-shadow: 0 0 16px #62efff; animation: mci-point 4s ease-in-out infinite; }
191
- .mci-orb-copy { position: absolute; right: 24px; bottom: 22px; left: 24px; display: flex; justify-content: space-between; color: rgba(255, 255, 255, .62); font-size: 9px; letter-spacing: .08em; }
192
-
193
- .mci-pattern--motion .mci-pattern__visual { background: #f8f7fc; color: #121526; }
194
- .mci-pattern--motion .mci-pattern__visual::after { position: absolute; top: -120px; right: -80px; width: 300px; height: 300px; content: ""; border-radius: 50%; background: conic-gradient(from 35deg, #7259ff, #44dcff, #ff76ac, #7259ff); filter: blur(20px); opacity: .72; animation: mci-spin 10s linear infinite; }
195
- .mci-motion-copy { position: absolute; z-index: 1; top: 44px; left: 32px; }
196
- .mci-motion-copy small { display: block; margin-bottom: 22px; color: #5a6680; font-size: 9px; font-weight: 800; letter-spacing: .16em; }
197
- .mci-motion-copy strong { font-size: 52px; line-height: .95; letter-spacing: -.06em; }
198
- .mci-motion-track { position: absolute; z-index: 1; right: 32px; bottom: 28px; left: 32px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; }
199
- .mci-motion-track i { height: 4px; border-radius: 6px; background: #dfe3ed; }
200
- .mci-motion-track i:nth-child(1), .mci-motion-track i:nth-child(2) { background: #5b7cfa; }
201
-
202
- .mci-pattern--data .mci-pattern__visual { background: #0c1729; }
203
- .mci-data-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 17px; border-bottom: 1px solid rgba(255, 255, 255, .08); }
204
- .mci-data-head span { font-size: 13px; font-weight: 700; }
205
- .mci-data-head b { padding: 5px 8px; border: 1px solid rgba(38, 215, 176, .3); border-radius: 999px; color: #6ff0d2; font-size: 8px; }
206
- .mci-data-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 18px 0; }
207
- .mci-data-metrics > span { padding: 11px; border: 1px solid rgba(255, 255, 255, .08); border-radius: 11px; background: rgba(255, 255, 255, .03); }
208
- .mci-data-metrics small { display: block; margin-bottom: 8px; color: rgba(255, 255, 255, .5); font-size: 8px; }
209
- .mci-data-metrics b { font-size: 22px; }
210
- .mci-data-chart { display: flex; height: 112px; align-items: end; gap: 8px; padding: 14px 10px 0; border-top: 1px solid rgba(255, 255, 255, .06); background: linear-gradient(to top, rgba(91, 124, 250, .08), transparent); }
211
- .mci-data-chart i { flex: 1; height: var(--h, 50%); border-radius: 5px 5px 1px 1px; background: linear-gradient(to top, #536bf0, #46dffc); transform-origin: bottom; animation: mci-bars 2.6s ease-in-out infinite alternate; }
212
- .mci-data-chart i:nth-child(1) { --h: 42%; }
213
- .mci-data-chart i:nth-child(2) { --h: 66%; animation-delay: -.3s; }
214
- .mci-data-chart i:nth-child(3) { --h: 51%; animation-delay: -.6s; }
215
- .mci-data-chart i:nth-child(4) { --h: 88%; animation-delay: -.9s; }
216
- .mci-data-chart i:nth-child(5) { --h: 72%; animation-delay: -1.2s; }
217
- .mci-data-chart i:nth-child(6) { --h: 96%; animation-delay: -1.5s; }
218
- .mci-data-chart i:nth-child(7) { --h: 78%; animation-delay: -1.8s; }
219
-
220
- .mci-flow { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(40px, 8vw, 110px); align-items: center; width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 110px 0; border-top: 1px solid var(--mci-border); }
221
- .mci-flow__intro > p { max-width: 520px; margin: 22px 0; color: var(--mci-text-muted); line-height: 1.8; }
222
- .mci-flow__intro ul { display: grid; gap: 8px; margin: 32px 0 0; padding: 0; list-style: none; }
223
- .mci-flow__intro li { display: flex; align-items: center; gap: 13px; padding: 12px 0; border-bottom: 1px solid var(--mci-border); font-size: 13px; }
224
- .mci-flow__intro li span { color: var(--mci-primary); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
225
- .mci-flow-card { min-height: 480px; padding: clamp(24px, 4vw, 42px); border: 1px solid var(--mci-border); border-radius: var(--mci-shape-card); background: var(--mci-surface); box-shadow: var(--mci-shadow-card); }
226
- .mci-flow-card__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 23px; border-bottom: 1px solid var(--mci-border); }
227
- .mci-flow-card__head span { font-size: 20px; font-weight: 750; }
228
- .mci-flow-card__head small { color: var(--mci-text-muted); font-size: 10px; }
229
- .mci-field { display: grid; gap: 9px; margin-top: 26px; }
230
- .mci-field > span, .mci-plan-group legend { font-size: 12px; font-weight: 700; }
231
- .mci-field input { width: 100%; height: 50px; padding: 0 16px; border: 1px solid var(--mci-border); border-radius: var(--mci-shape-input); outline: 0; color: var(--mci-text); background: var(--mci-bg-soft); transition: border .2s, box-shadow .2s; }
232
- .mci-field input:focus { border-color: var(--mci-primary); box-shadow: 0 0 0 3px rgba(91, 124, 250, .15); }
233
- .mci-field small { color: var(--mci-text-muted); font-size: 10px; }
234
- .mci-plan-group { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 22px 0 0; padding: 0; border: 0; }
235
- .mci-plan-group legend { grid-column: 1 / -1; margin-bottom: 8px; }
236
- .mci-plan-group label { position: relative; cursor: pointer; }
237
- .mci-plan-group input { position: absolute; opacity: 0; pointer-events: none; }
238
- .mci-plan-group label > span { display: block; padding: 14px; border: 1px solid var(--mci-border); border-radius: var(--mci-shape-input); background: var(--mci-bg-soft); transition: .2s ease; }
239
- .mci-plan-group input:checked + span { border-color: var(--mci-primary); box-shadow: inset 0 0 0 1px var(--mci-primary); }
240
- .mci-plan-group b, .mci-plan-group small { display: block; font-size: 11px; }
241
- .mci-plan-group small { margin-top: 5px; color: var(--mci-text-muted); font-size: 9px; }
242
- .mci-flow-card__status { min-height: 42px; margin: 20px 0 12px; padding: 12px 14px; border-radius: 11px; color: var(--mci-text-muted); background: rgba(107, 135, 255, .08); font-size: 11px; line-height: 1.6; }
243
- .mci-flow-card__status.is-error { color: var(--mci-danger); background: rgba(255, 107, 136, .09); }
244
- .mci-flow-card__status.is-success { color: var(--mci-success); background: rgba(38, 215, 176, .09); }
245
- .mci-flow-card__submit { width: 100%; border: 0; }
246
- .mci-flow-card__submit.is-loading i { display: block; width: 14px; height: 14px; border: 2px solid rgba(255, 255, 255, .45); border-top-color: white; border-radius: 50%; font-size: 0; animation: mci-spin .7s linear infinite; }
247
-
248
- .mci-contract { display: grid; grid-template-columns: 1.1fr .7fr .95fr; gap: 28px; align-items: stretch; width: min(1180px, calc(100% - 40px)); margin: 0 auto 100px; padding: clamp(28px, 5vw, 54px); border: 1px solid rgba(107, 135, 255, .28); border-radius: 34px; background: linear-gradient(145deg, rgba(91, 124, 250, .15), var(--mci-surface)); box-shadow: var(--mci-shadow-card); }
249
- .mci-contract h2 { font-size: clamp(29px, 3vw, 42px); }
250
- .mci-contract__copy p { margin: 18px 0 0; color: var(--mci-text-muted); font-size: 13px; line-height: 1.8; }
251
- .mci-contract__tokens { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
252
- .mci-contract__tokens > span { padding: 13px; border: 1px solid var(--mci-border); border-radius: 14px; background: var(--mci-bg-soft); }
253
- .mci-contract__tokens i { display: block; width: 100%; height: 42px; margin-bottom: 10px; border-radius: 9px; background: var(--token); }
254
- .mci-contract__tokens b, .mci-contract__tokens small { display: block; font-size: 9px; }
255
- .mci-contract__tokens small { margin-top: 3px; color: var(--mci-text-muted); }
256
- .mci-contract__code { display: flex; align-items: center; margin: 0; padding: 22px; overflow: auto; border: 1px solid var(--mci-border); border-radius: 18px; color: #c7d3eb; background: #07101e; font: 11px/1.9 "Cascadia Code", Consolas, monospace; }
257
- .mci-contract__code span { color: #72e7ff; }
258
- .mci-lab__footer { display: flex; justify-content: space-between; width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 30px 0 42px; border-top: 1px solid var(--mci-border); color: var(--mci-text-muted); font-size: 10px; letter-spacing: .08em; }
259
-
260
- @keyframes mci-drift { to { transform: translate3d(-18px, 14px, 0) scale(1.03); } }
261
- @keyframes mci-orbit { to { transform: rotate(360deg); } }
262
- @keyframes mci-orbit-pulse { 50% { transform: scale(.94) rotate(8deg); filter: drop-shadow(0 0 46px rgba(83, 120, 255, .62)); } }
263
- @keyframes mci-blob { 50% { transform: rotate(14deg) scale(.92); border-radius: 58% 42% 64% 36%; } }
264
- @keyframes mci-point { 50% { transform: translate(-130px, 128px); } }
265
- @keyframes mci-spin { to { transform: rotate(360deg); } }
266
- @keyframes mci-bars { to { transform: scaleY(.65); opacity: .72; } }
267
-
268
- @media (max-width: 900px) {
269
- .mci-lab__nav { grid-template-columns: 1fr auto; }
270
- .mci-lab__nav-links { display: none; }
271
- .mci-hero { grid-template-columns: 1fr; gap: 50px; padding-top: 64px; }
272
- .mci-hero__console { width: min(560px, 100%); }
273
- .mci-flow { grid-template-columns: 1fr; }
274
- .mci-contract { grid-template-columns: 1fr 1fr; }
275
- .mci-contract__copy { grid-column: 1 / -1; }
276
- }
277
-
278
- @media (max-width: 680px) {
279
- .mci-lab__nav, .mci-hero, .mci-section, .mci-flow, .mci-contract, .mci-lab__footer { width: min(100% - 28px, 1180px); }
280
- .mci-lab__nav { height: 68px; }
281
- .mci-lab__brand { font-size: 12px; }
282
- .mci-lab__brand-mark { width: 30px; height: 30px; border-radius: 9px; }
283
- .mci-icon-button { width: 62px; height: 34px; }
284
- .mci-hero { min-height: auto; padding: 64px 0 70px; }
285
- .mci-hero h1 { margin-top: 20px; font-size: clamp(48px, 14vw, 64px); }
286
- .mci-hero__content > p { font-size: 14px; line-height: 1.75; }
287
- .mci-hero__actions, .mci-hero__actions .mci-button { width: 100%; }
288
- .mci-hero__console { min-height: 360px; border-radius: 26px; }
289
- .mci-console__orbit { top: 78px; transform: translateX(-50%) scale(.82); }
290
- .mci-section { padding: 80px 0; }
291
- .mci-section__head { display: grid; align-items: start; }
292
- .mci-filter { width: 100%; overflow-x: auto; border-radius: 14px; }
293
- .mci-filter button { flex: 0 0 auto; }
294
- .mci-pattern-grid { grid-template-columns: 1fr; }
295
- .mci-pattern__visual { height: 286px; padding: 22px; }
296
- .mci-story-word { left: 22px; font-size: 55px; }
297
- .mci-editorial-type b { font-size: 92px; }
298
- .mci-flow { padding: 80px 0; }
299
- .mci-flow-card { min-height: 0; padding: 22px; }
300
- .mci-flow-card__head { display: grid; gap: 7px; }
301
- .mci-plan-group { grid-template-columns: 1fr; }
302
- .mci-contract { grid-template-columns: 1fr; margin-bottom: 60px; padding: 24px; border-radius: 26px; }
303
- .mci-contract__copy { grid-column: auto; }
304
- .mci-contract__code { min-height: 210px; }
305
- .mci-lab__footer { display: grid; gap: 8px; }
306
- }
307
-
308
- @media (prefers-reduced-motion: reduce) {
309
- html { scroll-behavior: auto; }
310
- .mci-lab *, .mci-lab *::before, .mci-lab *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
311
- }
1
+ :root {
2
+ color-scheme: dark;
3
+ --mci-bg: #07101f;
4
+ --mci-bg-soft: #0d1830;
5
+ --mci-surface: rgba(15, 28, 52, 0.78);
6
+ --mci-surface-solid: #111f39;
7
+ --mci-border: rgba(151, 173, 216, 0.16);
8
+ --mci-text: #f4f7ff;
9
+ --mci-text-muted: #9aa9c6;
10
+ --mci-primary: #6b87ff;
11
+ --mci-primary-strong: #4f6df0;
12
+ --mci-cyan: #38dcff;
13
+ --mci-success: #26d7b0;
14
+ --mci-warning: #ffca68;
15
+ --mci-danger: #ff6b88;
16
+ --mci-shape-card: 28px;
17
+ --mci-shape-panel: 22px;
18
+ --mci-shape-button: 999px;
19
+ --mci-shape-input: 14px;
20
+ --mci-shadow-card: 0 20px 70px rgba(0, 0, 0, 0.22);
21
+ --mci-shadow-float: 0 22px 60px rgba(32, 61, 141, 0.28);
22
+ font-family: Inter, "SF Pro Display", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
23
+ }
24
+
25
+ :root[data-mci-theme="light"] {
26
+ color-scheme: light;
27
+ --mci-bg: #f2f5fb;
28
+ --mci-bg-soft: #e9eef8;
29
+ --mci-surface: rgba(255, 255, 255, 0.86);
30
+ --mci-surface-solid: #ffffff;
31
+ --mci-border: rgba(31, 50, 91, 0.12);
32
+ --mci-text: #14203a;
33
+ --mci-text-muted: #66738d;
34
+ --mci-shadow-card: 0 20px 70px rgba(42, 62, 112, 0.12);
35
+ --mci-shadow-float: 0 22px 60px rgba(66, 91, 162, 0.18);
36
+ }
37
+
38
+ * { box-sizing: border-box; }
39
+ html { scroll-behavior: smooth; }
40
+ body { margin: 0; min-width: 320px; background: var(--mci-bg); color: var(--mci-text); }
41
+ button, input { font: inherit; }
42
+ button, a { -webkit-tap-highlight-color: transparent; }
43
+
44
+ .mci-lab {
45
+ min-height: 100vh;
46
+ overflow: hidden;
47
+ background:
48
+ linear-gradient(rgba(107, 135, 255, 0.035) 1px, transparent 1px),
49
+ linear-gradient(90deg, rgba(107, 135, 255, 0.035) 1px, transparent 1px),
50
+ radial-gradient(circle at 12% 0%, rgba(66, 105, 255, 0.18), transparent 28%),
51
+ var(--mci-bg);
52
+ background-size: 44px 44px, 44px 44px, auto, auto;
53
+ }
54
+
55
+ .mci-lab a { color: inherit; text-decoration: none; }
56
+ .mci-lab__nav {
57
+ position: relative;
58
+ z-index: 20;
59
+ display: grid;
60
+ grid-template-columns: 1fr auto 1fr;
61
+ align-items: center;
62
+ width: min(1180px, calc(100% - 40px));
63
+ height: 84px;
64
+ margin: 0 auto;
65
+ border-bottom: 1px solid var(--mci-border);
66
+ }
67
+
68
+ .mci-lab__brand { display: inline-flex; align-items: center; gap: 10px; width: max-content; font-size: 14px; font-weight: 700; letter-spacing: .02em; }
69
+ .mci-lab__brand-mark { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 11px; color: white; background: linear-gradient(145deg, var(--mci-primary), #935fff); box-shadow: 0 10px 24px rgba(92, 112, 255, .28); }
70
+ .mci-lab__nav-links { display: flex; gap: 30px; font-size: 13px; color: var(--mci-text-muted); }
71
+ .mci-lab__nav-links a { position: relative; padding: 10px 0; }
72
+ .mci-lab__nav-links a::after { position: absolute; right: 50%; bottom: 4px; left: 50%; height: 1px; content: ""; background: var(--mci-primary); transition: .25s ease; }
73
+ .mci-lab__nav-links a:hover::after, .mci-lab__nav-links a:focus-visible::after { right: 0; left: 0; }
74
+
75
+ .mci-icon-button { justify-self: end; display: grid; grid-template-columns: 1fr 1fr; align-items: center; width: 68px; height: 36px; padding: 4px; border: 1px solid var(--mci-border); border-radius: 999px; color: var(--mci-text-muted); background: var(--mci-surface); cursor: pointer; }
76
+ .mci-icon-button span { display: grid; height: 26px; place-items: center; border-radius: 50%; transition: .2s ease; }
77
+ :root[data-mci-theme="dark"] .mci-icon-button__moon,
78
+ :root[data-mci-theme="light"] .mci-icon-button__sun { color: #fff; background: var(--mci-primary); box-shadow: 0 4px 12px rgba(91, 124, 250, .28); }
79
+
80
+ .mci-hero {
81
+ position: relative;
82
+ z-index: 1;
83
+ display: grid;
84
+ grid-template-columns: minmax(0, 1.06fr) minmax(390px, .94fr);
85
+ gap: clamp(50px, 8vw, 112px);
86
+ align-items: center;
87
+ width: min(1180px, calc(100% - 40px));
88
+ min-height: 670px;
89
+ margin: 0 auto;
90
+ padding: 78px 0 96px;
91
+ }
92
+
93
+ .mci-hero__ambient { position: absolute; z-index: -1; inset: 0; pointer-events: none; }
94
+ .mci-hero__ambient span { position: absolute; border: 1px solid rgba(107, 135, 255, .13); border-radius: 50%; animation: mci-drift 12s ease-in-out infinite alternate; }
95
+ .mci-hero__ambient span:nth-child(1) { top: 90px; right: -170px; width: 540px; height: 540px; }
96
+ .mci-hero__ambient span:nth-child(2) { top: 188px; right: -74px; width: 340px; height: 340px; animation-delay: -3s; }
97
+ .mci-hero__ambient span:nth-child(3) { top: 256px; right: -6px; width: 200px; height: 200px; animation-delay: -6s; }
98
+
99
+ .mci-eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--mci-cyan); font-size: 11px; font-weight: 800; letter-spacing: .22em; }
100
+ .mci-eyebrow::before { width: 26px; height: 1px; content: ""; background: currentColor; }
101
+ .mci-hero h1 { margin: 26px 0 24px; font-size: clamp(56px, 6.6vw, 92px); line-height: .97; letter-spacing: -.065em; }
102
+ .mci-hero h1 em { color: transparent; font-style: normal; background: linear-gradient(100deg, #9aaeff 0%, #5ee7ff 48%, #a784ff 100%); -webkit-background-clip: text; background-clip: text; }
103
+ .mci-hero__content > p { max-width: 650px; margin: 0; color: var(--mci-text-muted); font-size: 16px; line-height: 1.9; }
104
+ .mci-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
105
+
106
+ .mci-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 12px; padding: 0 24px; border: 1px solid transparent; border-radius: var(--mci-shape-button); font-size: 14px; font-weight: 700; line-height: 1; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
107
+ .mci-button:hover, .mci-button:focus-visible { transform: translateY(-2px); }
108
+ .mci-button:active { transform: translateY(0) scale(.98); }
109
+ .mci-button--primary { color: #fff !important; background: linear-gradient(135deg, var(--mci-primary), var(--mci-primary-strong)); box-shadow: 0 13px 32px rgba(79, 109, 240, .32); }
110
+ .mci-button--quiet { border-color: var(--mci-border); background: var(--mci-surface); }
111
+
112
+ .mci-hero__console { position: relative; min-height: 420px; padding: 22px; overflow: hidden; border: 1px solid rgba(131, 156, 232, .23); border-radius: 34px; background: linear-gradient(160deg, rgba(25, 45, 81, .94), rgba(10, 20, 40, .86)); box-shadow: 0 35px 100px rgba(0, 0, 0, .35), inset 0 1px rgba(255, 255, 255, .09); }
113
+ :root[data-mci-theme="light"] .mci-hero__console { background: linear-gradient(160deg, #fdfdff, #e9effc); box-shadow: var(--mci-shadow-float); }
114
+ .mci-console__head { display: flex; align-items: center; gap: 7px; padding-bottom: 18px; border-bottom: 1px solid var(--mci-border); }
115
+ .mci-console__head span { width: 7px; height: 7px; border-radius: 50%; background: var(--mci-danger); }
116
+ .mci-console__head span:nth-child(2) { background: var(--mci-warning); }
117
+ .mci-console__head span:nth-child(3) { background: var(--mci-success); }
118
+ .mci-console__head b { margin-left: auto; color: var(--mci-text-muted); font-size: 10px; letter-spacing: .18em; }
119
+ .mci-console__orbit { position: absolute; top: 90px; left: 50%; width: 230px; height: 230px; transform: translateX(-50%); }
120
+ .mci-console__orbit::before, .mci-console__orbit i { position: absolute; inset: 0; content: ""; border: 1px solid rgba(96, 224, 255, .18); border-radius: 50%; }
121
+ .mci-console__orbit::before { inset: 38px; border: 0; background: radial-gradient(circle at 35% 30%, #93f4ff, #5573ff 34%, #5c35a2 62%, transparent 64%); filter: drop-shadow(0 0 30px rgba(83, 120, 255, .45)); animation: mci-orbit-pulse 4s ease-in-out infinite; }
122
+ .mci-console__orbit i:nth-child(1) { transform: rotateX(65deg); animation: mci-orbit 8s linear infinite; }
123
+ .mci-console__orbit i:nth-child(2) { transform: rotateY(65deg); animation: mci-orbit 11s linear reverse infinite; }
124
+ .mci-console__orbit i:nth-child(3) { inset: 24px; border-style: dashed; animation: mci-orbit 14s linear infinite; }
125
+ .mci-console__metric { position: absolute; right: 22px; bottom: 68px; left: 22px; display: grid; grid-template-columns: 1fr auto; align-items: end; padding: 20px; border: 1px solid var(--mci-border); border-radius: 18px; background: rgba(5, 13, 30, .62); backdrop-filter: blur(14px); }
126
+ :root[data-mci-theme="light"] .mci-console__metric { background: rgba(255, 255, 255, .74); }
127
+ .mci-console__metric small { align-self: start; color: var(--mci-text-muted); }
128
+ .mci-console__metric strong { grid-row: span 2; color: var(--mci-cyan); font-size: 52px; line-height: .9; }
129
+ .mci-console__metric span { color: var(--mci-text-muted); font-size: 11px; }
130
+ .mci-console__footer { position: absolute; right: 22px; bottom: 22px; left: 22px; display: flex; justify-content: space-between; color: var(--mci-text-muted); font-size: 9px; letter-spacing: .08em; }
131
+
132
+ .mci-section { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 110px 0 120px; border-top: 1px solid var(--mci-border); }
133
+ .mci-section__head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
134
+ .mci-section h2, .mci-flow h2, .mci-contract h2 { margin: 14px 0 0; font-size: clamp(34px, 4vw, 52px); line-height: 1.1; letter-spacing: -.045em; }
135
+ .mci-filter { display: flex; gap: 4px; padding: 5px; border: 1px solid var(--mci-border); border-radius: 999px; background: var(--mci-surface); }
136
+ .mci-filter button { min-height: 34px; padding: 0 15px; border: 0; border-radius: 999px; color: var(--mci-text-muted); background: transparent; font-size: 12px; cursor: pointer; }
137
+ .mci-filter button.is-active { color: #fff; background: var(--mci-primary); box-shadow: 0 7px 18px rgba(91, 124, 250, .23); }
138
+
139
+ .mci-pattern-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
140
+ .mci-pattern { min-width: 0; padding: 12px; overflow: hidden; border: 1px solid var(--mci-border); border-radius: var(--mci-shape-card); background: var(--mci-surface); box-shadow: var(--mci-shadow-card); transition: opacity .25s ease, transform .25s ease, border-color .25s ease; }
141
+ .mci-pattern:hover { transform: translateY(-4px); border-color: rgba(107, 135, 255, .4); }
142
+ .mci-pattern.is-hidden { display: none; }
143
+ .mci-pattern__visual { position: relative; height: 318px; padding: 28px; overflow: hidden; border-radius: calc(var(--mci-shape-card) - 10px); background: #101b33; color: #fff; }
144
+ .mci-pattern__index { position: absolute; z-index: 3; top: 20px; right: 22px; color: rgba(255, 255, 255, .55); font-size: 11px; font-weight: 800; letter-spacing: .16em; }
145
+ .mci-pattern__copy { padding: 20px 12px 14px; }
146
+ .mci-pattern__copy > span { color: var(--mci-primary); font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
147
+ .mci-pattern__copy h3 { margin: 9px 0 8px; font-size: 22px; letter-spacing: -.025em; }
148
+ .mci-pattern__copy p { margin: 0; color: var(--mci-text-muted); font-size: 13px; line-height: 1.7; }
149
+
150
+ .mci-pattern--story .mci-pattern__visual { background: #f2f0e8; color: #151515; }
151
+ .mci-pattern--story .mci-pattern__visual::before { position: absolute; right: -40px; bottom: -100px; width: 260px; height: 260px; content: ""; border-radius: 50%; background: #ff4f3d; opacity: .9; }
152
+ .mci-story-word { position: absolute; top: 76px; left: 28px; z-index: 1; font-size: clamp(46px, 5vw, 70px); font-weight: 900; line-height: .82; letter-spacing: -.08em; }
153
+ .mci-story-word em { color: #3e52df; font-style: normal; }
154
+ .mci-story-line { position: absolute; right: 28px; bottom: 30px; left: 28px; height: 1px; background: rgba(0, 0, 0, .32); }
155
+ .mci-story-line::before { position: absolute; left: 0; bottom: 10px; content: "THE IDEA BECOMES THE INTERFACE"; font-size: 9px; font-style: normal; letter-spacing: .14em; }
156
+
157
+ .mci-pattern--product .mci-pattern__visual { display: grid; place-items: center; background: radial-gradient(circle at 0 0, #dce6ff, transparent 45%), #f5f7fb; color: #18233c; }
158
+ .mci-phone-card { width: min(330px, 90%); padding: 20px; border: 1px solid #e2e7f1; border-radius: 22px; background: #fff; box-shadow: 0 22px 55px rgba(38, 54, 94, .18); }
159
+ .mci-phone-card__bar { display: flex; align-items: center; gap: 9px; font-size: 11px; }
160
+ .mci-phone-card__bar i { width: 24px; height: 24px; border-radius: 8px; background: #5b7cfa; }
161
+ .mci-phone-card__bar b { margin-left: auto; color: #7c889f; font-size: 9px; }
162
+ .mci-phone-card__progress { height: 3px; margin: 14px 0 20px; overflow: hidden; border-radius: 4px; background: #edf0f6; }
163
+ .mci-phone-card__progress i { display: block; width: 66%; height: 100%; background: #5b7cfa; }
164
+ .mci-phone-card > strong { display: block; margin-bottom: 12px; font-size: 14px; }
165
+ .mci-phone-card__choice { display: grid; grid-template-columns: 24px 1fr; gap: 10px; margin-top: 8px; padding: 11px; border: 1px solid #e5e9f1; border-radius: 12px; }
166
+ .mci-phone-card__choice > i { display: grid; width: 20px; height: 20px; place-items: center; border: 1px solid #d0d7e5; border-radius: 50%; font-size: 10px; font-style: normal; }
167
+ .mci-phone-card__choice span { font-size: 11px; font-weight: 700; }
168
+ .mci-phone-card__choice small { display: block; margin-top: 3px; color: #8a96ab; font-size: 8px; font-weight: 400; }
169
+ .mci-phone-card__choice.is-selected { border-color: #5b7cfa; background: #f2f5ff; }
170
+ .mci-phone-card__choice.is-selected > i { color: white; border-color: #5b7cfa; background: #5b7cfa; }
171
+
172
+ .mci-pattern--editorial .mci-pattern__visual { background: #ffcd55; color: #191919; }
173
+ .mci-editorial-type { position: absolute; top: 38px; left: 32px; display: flex; align-items: start; gap: 14px; }
174
+ .mci-editorial-type b { font-size: 114px; line-height: .85; letter-spacing: -.1em; }
175
+ .mci-editorial-type span { max-width: 95px; padding-top: 10px; font-size: 13px; font-weight: 700; line-height: 1.4; }
176
+ .mci-editorial-card { position: absolute; right: -20px; bottom: -44px; width: 285px; height: 190px; padding: 22px; transform: rotate(-7deg); background: #3527a5; box-shadow: 0 20px 50px rgba(47, 38, 132, .3); }
177
+ .mci-editorial-card i { display: inline-block; width: 42px; height: 42px; margin-right: -6px; border: 2px solid #fff; border-radius: 50%; }
178
+ .mci-editorial-card i:nth-child(2) { background: #ff6257; }
179
+ .mci-editorial-card i:nth-child(3) { background: #5ce3cc; }
180
+ .mci-editorial-card strong { display: block; margin-top: 18px; color: #fff; font-size: 25px; }
181
+
182
+ .mci-pattern--immersive .mci-pattern__visual { background: radial-gradient(circle at 52% 48%, #1c3350, #050914 70%); }
183
+ .mci-pattern--immersive .mci-pattern__visual::before { position: absolute; inset: 0; content: ""; background-image: linear-gradient(rgba(73, 220, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(73, 220, 255, .05) 1px, transparent 1px); background-size: 22px 22px; mask-image: linear-gradient(to bottom, black, transparent); }
184
+ .mci-orb { position: absolute; top: 50%; left: 50%; width: 180px; height: 180px; transform: translate(-50%, -58%); }
185
+ .mci-orb::before { position: absolute; inset: 34px; content: ""; border-radius: 38% 62% 44% 56%; background: radial-gradient(circle at 34% 28%, #eaffff, #61eaff 16%, #5d63fa 54%, #17165e 72%); filter: drop-shadow(0 0 34px rgba(80, 201, 255, .5)); animation: mci-blob 7s ease-in-out infinite; }
186
+ .mci-orb i { position: absolute; inset: 0; border: 1px solid rgba(107, 222, 255, .35); border-radius: 50%; }
187
+ .mci-orb i:nth-child(1) { transform: rotateX(72deg); }
188
+ .mci-orb i:nth-child(2) { transform: rotateY(72deg); }
189
+ .mci-orb i:nth-child(3) { inset: 20px; border-style: dashed; animation: mci-orbit 12s linear infinite; }
190
+ .mci-orb b { position: absolute; top: 22px; right: 18px; width: 9px; height: 9px; border-radius: 50%; background: #62efff; box-shadow: 0 0 16px #62efff; animation: mci-point 4s ease-in-out infinite; }
191
+ .mci-orb-copy { position: absolute; right: 24px; bottom: 22px; left: 24px; display: flex; justify-content: space-between; color: rgba(255, 255, 255, .62); font-size: 9px; letter-spacing: .08em; }
192
+
193
+ .mci-pattern--motion .mci-pattern__visual { background: #f8f7fc; color: #121526; }
194
+ .mci-pattern--motion .mci-pattern__visual::after { position: absolute; top: -120px; right: -80px; width: 300px; height: 300px; content: ""; border-radius: 50%; background: conic-gradient(from 35deg, #7259ff, #44dcff, #ff76ac, #7259ff); filter: blur(20px); opacity: .72; animation: mci-spin 10s linear infinite; }
195
+ .mci-motion-copy { position: absolute; z-index: 1; top: 44px; left: 32px; }
196
+ .mci-motion-copy small { display: block; margin-bottom: 22px; color: #5a6680; font-size: 9px; font-weight: 800; letter-spacing: .16em; }
197
+ .mci-motion-copy strong { font-size: 52px; line-height: .95; letter-spacing: -.06em; }
198
+ .mci-motion-track { position: absolute; z-index: 1; right: 32px; bottom: 28px; left: 32px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; }
199
+ .mci-motion-track i { height: 4px; border-radius: 6px; background: #dfe3ed; }
200
+ .mci-motion-track i:nth-child(1), .mci-motion-track i:nth-child(2) { background: #5b7cfa; }
201
+
202
+ .mci-pattern--data .mci-pattern__visual { background: #0c1729; }
203
+ .mci-data-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 17px; border-bottom: 1px solid rgba(255, 255, 255, .08); }
204
+ .mci-data-head span { font-size: 13px; font-weight: 700; }
205
+ .mci-data-head b { padding: 5px 8px; border: 1px solid rgba(38, 215, 176, .3); border-radius: 999px; color: #6ff0d2; font-size: 8px; }
206
+ .mci-data-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 18px 0; }
207
+ .mci-data-metrics > span { padding: 11px; border: 1px solid rgba(255, 255, 255, .08); border-radius: 11px; background: rgba(255, 255, 255, .03); }
208
+ .mci-data-metrics small { display: block; margin-bottom: 8px; color: rgba(255, 255, 255, .5); font-size: 8px; }
209
+ .mci-data-metrics b { font-size: 22px; }
210
+ .mci-data-chart { display: flex; height: 112px; align-items: end; gap: 8px; padding: 14px 10px 0; border-top: 1px solid rgba(255, 255, 255, .06); background: linear-gradient(to top, rgba(91, 124, 250, .08), transparent); }
211
+ .mci-data-chart i { flex: 1; height: var(--h, 50%); border-radius: 5px 5px 1px 1px; background: linear-gradient(to top, #536bf0, #46dffc); transform-origin: bottom; animation: mci-bars 2.6s ease-in-out infinite alternate; }
212
+ .mci-data-chart i:nth-child(1) { --h: 42%; }
213
+ .mci-data-chart i:nth-child(2) { --h: 66%; animation-delay: -.3s; }
214
+ .mci-data-chart i:nth-child(3) { --h: 51%; animation-delay: -.6s; }
215
+ .mci-data-chart i:nth-child(4) { --h: 88%; animation-delay: -.9s; }
216
+ .mci-data-chart i:nth-child(5) { --h: 72%; animation-delay: -1.2s; }
217
+ .mci-data-chart i:nth-child(6) { --h: 96%; animation-delay: -1.5s; }
218
+ .mci-data-chart i:nth-child(7) { --h: 78%; animation-delay: -1.8s; }
219
+
220
+ .mci-flow { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(40px, 8vw, 110px); align-items: center; width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 110px 0; border-top: 1px solid var(--mci-border); }
221
+ .mci-flow__intro > p { max-width: 520px; margin: 22px 0; color: var(--mci-text-muted); line-height: 1.8; }
222
+ .mci-flow__intro ul { display: grid; gap: 8px; margin: 32px 0 0; padding: 0; list-style: none; }
223
+ .mci-flow__intro li { display: flex; align-items: center; gap: 13px; padding: 12px 0; border-bottom: 1px solid var(--mci-border); font-size: 13px; }
224
+ .mci-flow__intro li span { color: var(--mci-primary); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
225
+ .mci-flow-card { min-height: 480px; padding: clamp(24px, 4vw, 42px); border: 1px solid var(--mci-border); border-radius: var(--mci-shape-card); background: var(--mci-surface); box-shadow: var(--mci-shadow-card); }
226
+ .mci-flow-card__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 23px; border-bottom: 1px solid var(--mci-border); }
227
+ .mci-flow-card__head span { font-size: 20px; font-weight: 750; }
228
+ .mci-flow-card__head small { color: var(--mci-text-muted); font-size: 10px; }
229
+ .mci-field { display: grid; gap: 9px; margin-top: 26px; }
230
+ .mci-field > span, .mci-plan-group legend { font-size: 12px; font-weight: 700; }
231
+ .mci-field input { width: 100%; height: 50px; padding: 0 16px; border: 1px solid var(--mci-border); border-radius: var(--mci-shape-input); outline: 0; color: var(--mci-text); background: var(--mci-bg-soft); transition: border .2s, box-shadow .2s; }
232
+ .mci-field input:focus { border-color: var(--mci-primary); box-shadow: 0 0 0 3px rgba(91, 124, 250, .15); }
233
+ .mci-field small { color: var(--mci-text-muted); font-size: 10px; }
234
+ .mci-plan-group { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 22px 0 0; padding: 0; border: 0; }
235
+ .mci-plan-group legend { grid-column: 1 / -1; margin-bottom: 8px; }
236
+ .mci-plan-group label { position: relative; cursor: pointer; }
237
+ .mci-plan-group input { position: absolute; opacity: 0; pointer-events: none; }
238
+ .mci-plan-group label > span { display: block; padding: 14px; border: 1px solid var(--mci-border); border-radius: var(--mci-shape-input); background: var(--mci-bg-soft); transition: .2s ease; }
239
+ .mci-plan-group input:checked + span { border-color: var(--mci-primary); box-shadow: inset 0 0 0 1px var(--mci-primary); }
240
+ .mci-plan-group b, .mci-plan-group small { display: block; font-size: 11px; }
241
+ .mci-plan-group small { margin-top: 5px; color: var(--mci-text-muted); font-size: 9px; }
242
+ .mci-flow-card__status { min-height: 42px; margin: 20px 0 12px; padding: 12px 14px; border-radius: 11px; color: var(--mci-text-muted); background: rgba(107, 135, 255, .08); font-size: 11px; line-height: 1.6; }
243
+ .mci-flow-card__status.is-error { color: var(--mci-danger); background: rgba(255, 107, 136, .09); }
244
+ .mci-flow-card__status.is-success { color: var(--mci-success); background: rgba(38, 215, 176, .09); }
245
+ .mci-flow-card__submit { width: 100%; border: 0; }
246
+ .mci-flow-card__submit.is-loading i { display: block; width: 14px; height: 14px; border: 2px solid rgba(255, 255, 255, .45); border-top-color: white; border-radius: 50%; font-size: 0; animation: mci-spin .7s linear infinite; }
247
+
248
+ .mci-contract { display: grid; grid-template-columns: 1.1fr .7fr .95fr; gap: 28px; align-items: stretch; width: min(1180px, calc(100% - 40px)); margin: 0 auto 100px; padding: clamp(28px, 5vw, 54px); border: 1px solid rgba(107, 135, 255, .28); border-radius: 34px; background: linear-gradient(145deg, rgba(91, 124, 250, .15), var(--mci-surface)); box-shadow: var(--mci-shadow-card); }
249
+ .mci-contract h2 { font-size: clamp(29px, 3vw, 42px); }
250
+ .mci-contract__copy p { margin: 18px 0 0; color: var(--mci-text-muted); font-size: 13px; line-height: 1.8; }
251
+ .mci-contract__tokens { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
252
+ .mci-contract__tokens > span { padding: 13px; border: 1px solid var(--mci-border); border-radius: 14px; background: var(--mci-bg-soft); }
253
+ .mci-contract__tokens i { display: block; width: 100%; height: 42px; margin-bottom: 10px; border-radius: 9px; background: var(--token); }
254
+ .mci-contract__tokens b, .mci-contract__tokens small { display: block; font-size: 9px; }
255
+ .mci-contract__tokens small { margin-top: 3px; color: var(--mci-text-muted); }
256
+ .mci-contract__code { display: flex; align-items: center; margin: 0; padding: 22px; overflow: auto; border: 1px solid var(--mci-border); border-radius: 18px; color: #c7d3eb; background: #07101e; font: 11px/1.9 "Cascadia Code", Consolas, monospace; }
257
+ .mci-contract__code span { color: #72e7ff; }
258
+ .mci-lab__footer { display: flex; justify-content: space-between; width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 30px 0 42px; border-top: 1px solid var(--mci-border); color: var(--mci-text-muted); font-size: 10px; letter-spacing: .08em; }
259
+
260
+ @keyframes mci-drift { to { transform: translate3d(-18px, 14px, 0) scale(1.03); } }
261
+ @keyframes mci-orbit { to { transform: rotate(360deg); } }
262
+ @keyframes mci-orbit-pulse { 50% { transform: scale(.94) rotate(8deg); filter: drop-shadow(0 0 46px rgba(83, 120, 255, .62)); } }
263
+ @keyframes mci-blob { 50% { transform: rotate(14deg) scale(.92); border-radius: 58% 42% 64% 36%; } }
264
+ @keyframes mci-point { 50% { transform: translate(-130px, 128px); } }
265
+ @keyframes mci-spin { to { transform: rotate(360deg); } }
266
+ @keyframes mci-bars { to { transform: scaleY(.65); opacity: .72; } }
267
+
268
+ @media (max-width: 900px) {
269
+ .mci-lab__nav { grid-template-columns: 1fr auto; }
270
+ .mci-lab__nav-links { display: none; }
271
+ .mci-hero { grid-template-columns: 1fr; gap: 50px; padding-top: 64px; }
272
+ .mci-hero__console { width: min(560px, 100%); }
273
+ .mci-flow { grid-template-columns: 1fr; }
274
+ .mci-contract { grid-template-columns: 1fr 1fr; }
275
+ .mci-contract__copy { grid-column: 1 / -1; }
276
+ }
277
+
278
+ @media (max-width: 680px) {
279
+ .mci-lab__nav, .mci-hero, .mci-section, .mci-flow, .mci-contract, .mci-lab__footer { width: min(100% - 28px, 1180px); }
280
+ .mci-lab__nav { height: 68px; }
281
+ .mci-lab__brand { font-size: 12px; }
282
+ .mci-lab__brand-mark { width: 30px; height: 30px; border-radius: 9px; }
283
+ .mci-icon-button { width: 62px; height: 34px; }
284
+ .mci-hero { min-height: auto; padding: 64px 0 70px; }
285
+ .mci-hero h1 { margin-top: 20px; font-size: clamp(48px, 14vw, 64px); }
286
+ .mci-hero__content > p { font-size: 14px; line-height: 1.75; }
287
+ .mci-hero__actions, .mci-hero__actions .mci-button { width: 100%; }
288
+ .mci-hero__console { min-height: 360px; border-radius: 26px; }
289
+ .mci-console__orbit { top: 78px; transform: translateX(-50%) scale(.82); }
290
+ .mci-section { padding: 80px 0; }
291
+ .mci-section__head { display: grid; align-items: start; }
292
+ .mci-filter { width: 100%; overflow-x: auto; border-radius: 14px; }
293
+ .mci-filter button { flex: 0 0 auto; }
294
+ .mci-pattern-grid { grid-template-columns: 1fr; }
295
+ .mci-pattern__visual { height: 286px; padding: 22px; }
296
+ .mci-story-word { left: 22px; font-size: 55px; }
297
+ .mci-editorial-type b { font-size: 92px; }
298
+ .mci-flow { padding: 80px 0; }
299
+ .mci-flow-card { min-height: 0; padding: 22px; }
300
+ .mci-flow-card__head { display: grid; gap: 7px; }
301
+ .mci-plan-group { grid-template-columns: 1fr; }
302
+ .mci-contract { grid-template-columns: 1fr; margin-bottom: 60px; padding: 24px; border-radius: 26px; }
303
+ .mci-contract__copy { grid-column: auto; }
304
+ .mci-contract__code { min-height: 210px; }
305
+ .mci-lab__footer { display: grid; gap: 8px; }
306
+ }
307
+
308
+ @media (prefers-reduced-motion: reduce) {
309
+ html { scroll-behavior: auto; }
310
+ .mci-lab *, .mci-lab *::before, .mci-lab *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
311
+ }