@k-table/report 0.0.1 → 0.1.0

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.
@@ -0,0 +1,856 @@
1
+ [data-kt-root] {
2
+ --kt-font: 14px;
3
+ --kt-space: 8px;
4
+ --kt-primary: #165dff;
5
+ --kt-success: #00b42a;
6
+ --kt-warning: #ff7d00;
7
+ --kt-error: #f53f3f;
8
+ --kt-primary-soft: rgba(22, 93, 255, 0.12);
9
+ --kt-text: #1d3a5c;
10
+ --kt-text-secondary: #4e6a8a;
11
+ --kt-header-bg: #f3f7fd;
12
+ --kt-border: #c5d6ee;
13
+ --kt-page-bg: #e8f0fb;
14
+ --kt-forms-page-bg: #e8f0fb;
15
+ --kt-forms-header-bg: #f3f7fd;
16
+ --kt-forms-border: #c5d6ee;
17
+ --kt-forms-text: #1d3a5c;
18
+ --kt-forms-text-secondary: #4e6a8a;
19
+ --kt-forms-chrome-bar: #dce8f6;
20
+ --kt-forms-chrome-tab: #d0deef;
21
+ --kt-forms-canvas-pad: #d4e4f5;
22
+ --kt-forms-preview-host: #dce8f6;
23
+ --kt-paper-bg: #fff;
24
+ --kt-canvas-header: #f3f3f3;
25
+ --kt-canvas-header-grid: #c4c4c4;
26
+ --kt-canvas-header-text: #333333;
27
+ min-height: 100vh;
28
+ font-size: var(--kt-font);
29
+ color: var(--kt-forms-text, var(--kt-text));
30
+ background: var(--kt-forms-page-bg, var(--kt-page-bg));
31
+ }
32
+
33
+ [data-kt-root][data-kt-type="sm"] { --kt-font: 12px; }
34
+ [data-kt-root][data-kt-type="md"] { --kt-font: 14px; }
35
+ [data-kt-root][data-kt-type="lg"] { --kt-font: 16px; }
36
+ [data-kt-root][data-kt-density="compact"] { --kt-space: 4px; }
37
+ [data-kt-root][data-kt-density="comfortable"] { --kt-space: 8px; }
38
+ [data-kt-root][data-kt-density="spacious"] { --kt-space: 12px; }
39
+ [data-kt-root][data-kt-scheme="dark"] {
40
+ --kt-canvas-header: #1f1f1f;
41
+ --kt-canvas-header-grid: #424242;
42
+ --kt-canvas-header-text: rgba(255, 255, 255, 0.88);
43
+ }
44
+
45
+ [data-kt-root] .kt-brand {
46
+ display: flex;
47
+ align-items: center;
48
+ flex-wrap: wrap;
49
+ gap: 8px 12px;
50
+ box-sizing: border-box;
51
+ min-height: 40px;
52
+ padding: 6px 12px;
53
+ line-height: 1;
54
+ background: var(--kt-primary);
55
+ color: #fff;
56
+ }
57
+
58
+ [data-kt-root] .kt-brand > strong {
59
+ flex-shrink: 0;
60
+ font-size: 14px;
61
+ line-height: 28px;
62
+ }
63
+
64
+ [data-kt-root] .kt-brand .kt-theme-bar {
65
+ margin-left: auto;
66
+ }
67
+
68
+ [data-kt-root] .kt-paper-island,
69
+ [data-kt-root] [data-kt-paper] {
70
+ color-scheme: light;
71
+ background: var(--kt-forms-preview-host, #f2f3f5);
72
+ color: #1d2129;
73
+ }
74
+
75
+ [data-kt-root] .kt-report-page {
76
+ background: var(--kt-paper-bg, #fff);
77
+ color: #1d2129;
78
+ }
79
+
80
+ [data-kt-root] .kt-chrome {
81
+ display: flex;
82
+ align-items: center;
83
+ flex-wrap: wrap;
84
+ gap: 8px;
85
+ box-sizing: border-box;
86
+ min-height: 40px;
87
+ padding: 6px 12px;
88
+ line-height: 1;
89
+ border-bottom: 1px solid var(--kt-forms-border, var(--kt-border));
90
+ background: var(--kt-forms-chrome-bar, var(--kt-header-bg));
91
+ color: var(--kt-forms-text, var(--kt-text));
92
+ }
93
+
94
+ /* 铬层不跟 density 的 32/36 控件高走;疏密只影响工作区。 */
95
+ [data-kt-root] .kt-chrome .ant-btn {
96
+ height: 28px;
97
+ padding-inline: 10px;
98
+ font-size: 12px;
99
+ }
100
+
101
+ [data-kt-root] .kt-chrome .ant-btn.ant-btn-icon-only {
102
+ width: 28px;
103
+ padding-inline: 0;
104
+ }
105
+
106
+ [data-kt-root] .kt-chrome .ant-select {
107
+ font-size: 12px;
108
+ }
109
+
110
+ [data-kt-root] .kt-chrome .ant-select-selector {
111
+ min-height: 28px !important;
112
+ }
113
+
114
+ [data-kt-root] .kt-report-print-hide .ant-btn {
115
+ height: 28px;
116
+ padding-inline: 10px;
117
+ font-size: 12px;
118
+ }
119
+
120
+ [data-kt-root] .kt-chrome-sub {
121
+ background: var(--kt-forms-header-bg, var(--kt-header-bg));
122
+ border-bottom: 1px solid var(--kt-forms-border, var(--kt-border));
123
+ color: var(--kt-forms-text, var(--kt-text));
124
+ }
125
+
126
+ [data-kt-root] .kt-chrome-tab {
127
+ background: var(--kt-forms-chrome-tab);
128
+ border: 1px solid var(--kt-forms-border);
129
+ color: var(--kt-forms-text-secondary);
130
+ }
131
+
132
+ [data-kt-root] .kt-workspace {
133
+ min-height: 480px;
134
+ background: var(--kt-forms-canvas-pad, var(--kt-page-bg));
135
+ }
136
+
137
+ [data-kt-root] .kt-theme-bar {
138
+ display: flex;
139
+ flex-wrap: nowrap;
140
+ align-items: center;
141
+ gap: 2px;
142
+ }
143
+
144
+ /* 深蓝品牌条上的两个图标按钮:白字、hover 微亮 */
145
+ [data-kt-root] .kt-theme-bar--on-primary .ant-btn-text {
146
+ color: rgba(255, 255, 255, 0.92);
147
+ }
148
+
149
+ [data-kt-root] .kt-theme-bar--on-primary .ant-btn-text:hover {
150
+ color: #fff !important;
151
+ background: rgba(255, 255, 255, 0.16) !important;
152
+ }
153
+
154
+ /* 浮层常挂到 body,选择器不能只写在 [data-kt-root] 下。 */
155
+ .kt-theme-palette {
156
+ display: flex;
157
+ flex-direction: column;
158
+ gap: 10px;
159
+ width: 280px;
160
+ }
161
+
162
+ .kt-theme-palette__cap {
163
+ display: block;
164
+ font-size: 12px;
165
+ line-height: 1;
166
+ }
167
+
168
+ .kt-theme-palette__row {
169
+ display: flex;
170
+ align-items: center;
171
+ justify-content: space-between;
172
+ gap: 8px;
173
+ }
174
+
175
+ .kt-theme-palette__row .kt-theme-palette__cap {
176
+ flex-shrink: 0;
177
+ }
178
+
179
+ .kt-swatch-grid {
180
+ display: grid;
181
+ grid-template-columns: 1fr 1fr;
182
+ gap: 8px 12px;
183
+ }
184
+
185
+ .kt-swatch {
186
+ display: flex;
187
+ align-items: center;
188
+ justify-content: space-between;
189
+ gap: 8px;
190
+ min-width: 0;
191
+ }
192
+
193
+ .kt-swatch-label {
194
+ font-size: 12px;
195
+ line-height: 1;
196
+ color: var(--kt-forms-text-secondary, #4e5969);
197
+ flex-shrink: 0;
198
+ }
199
+
200
+ .kt-swatch-chip {
201
+ position: relative;
202
+ display: block;
203
+ width: 36px;
204
+ height: 20px;
205
+ border-radius: 4px;
206
+ border: 1px solid var(--kt-forms-border, #d0d5dd);
207
+ box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.4);
208
+ overflow: hidden;
209
+ flex-shrink: 0;
210
+ }
211
+
212
+ .kt-swatch-chip input[type="color"] {
213
+ position: absolute;
214
+ inset: -8px;
215
+ width: calc(100% + 16px);
216
+ height: calc(100% + 16px);
217
+ padding: 0;
218
+ border: none;
219
+ opacity: 0;
220
+ cursor: pointer;
221
+ }
222
+
223
+ [data-kt-root][data-kt-style="arco"] .ant-btn,
224
+ [data-kt-root][data-kt-style="arco"] .ant-input,
225
+ [data-kt-root][data-kt-style="arco"] .ant-input-affix-wrapper,
226
+ [data-kt-root][data-kt-style="arco"] .ant-select-selector,
227
+ [data-kt-root][data-kt-style="arco"] .ant-radio-button-wrapper {
228
+ border-radius: 2px;
229
+ }
230
+
231
+ [data-kt-root] .kt-preview-stage {
232
+ box-sizing: border-box;
233
+ display: flex;
234
+ flex-direction: column;
235
+ align-items: center;
236
+ min-height: calc(100vh - 88px);
237
+ padding: 24px 16px 48px;
238
+ background: var(--kt-forms-preview-host, #f2f3f5);
239
+ }
240
+
241
+ @media print {
242
+ [data-kt-root] {
243
+ --kt-text: #1d2129;
244
+ --kt-text-secondary: #4e5969;
245
+ --kt-header-bg: #fff;
246
+ --kt-border: #e5e6eb;
247
+ --kt-page-bg: #fff;
248
+ --kt-forms-page-bg: #fff;
249
+ --kt-forms-header-bg: #fff;
250
+ --kt-forms-border: #e5e6eb;
251
+ --kt-forms-text: #1d2129;
252
+ --kt-forms-canvas-pad: #fff;
253
+ --kt-forms-preview-host: #fff;
254
+ color: #1d2129;
255
+ background: #fff;
256
+ }
257
+
258
+ [data-kt-root] .kt-paper-island,
259
+ [data-kt-root] [data-kt-paper] {
260
+ color-scheme: light !important;
261
+ background: #fff !important;
262
+ color: #1d2129 !important;
263
+ }
264
+
265
+ [data-kt-root] .kt-brand,
266
+ [data-kt-root] .kt-chrome,
267
+ [data-kt-root] .kt-report-print-hide {
268
+ display: none !important;
269
+ }
270
+ }
271
+
272
+
273
+ /* designer chrome — 宿主只引 styles.css,须打进同一文件 */
274
+ /* S0:设计 Tab 铺满中区,表格不再被左右栏夹死 */
275
+ .kt-report-designer-main-tabs {
276
+ flex: 1;
277
+ min-height: 0;
278
+ overflow: hidden;
279
+ }
280
+
281
+ .kt-report-designer-main-tabs.arco-tabs {
282
+ display: flex;
283
+ flex-direction: column;
284
+ height: 100%;
285
+ min-height: 0;
286
+ }
287
+
288
+ .kt-report-designer-main-tabs .arco-tabs-header-nav {
289
+ flex-shrink: 0;
290
+ }
291
+
292
+ .kt-report-designer-main-tabs .arco-tabs-content {
293
+ flex: 1;
294
+ min-height: 0;
295
+ overflow: hidden;
296
+ }
297
+
298
+ .kt-report-designer-main-tabs .arco-tabs-content-list,
299
+ .kt-report-designer-main-tabs .arco-tabs-content-item,
300
+ .kt-report-designer-main-tabs .arco-tabs-pane {
301
+ height: 100%;
302
+ min-height: 0;
303
+ }
304
+
305
+ /*
306
+ * 抵消 v6a mycss.css:
307
+ * body, table, div, span, textarea { font-family: "microsoft yahei" }
308
+ * 该规则直接打在格子内层,不走 td 的 inherit,宋体/黑体看起来像雅黑。
309
+ * 预览侧已有 .kt-report-page span { font-family: inherit };网格轨同等处理。
310
+ */
311
+ .kt-label-designer-grid,
312
+ .kt-label-designer-grid table,
313
+ .kt-label-designer-grid thead,
314
+ .kt-label-designer-grid tbody,
315
+ .kt-label-designer-grid tr,
316
+ .kt-label-designer-grid td,
317
+ .kt-label-designer-grid th,
318
+ .kt-label-designer-grid div,
319
+ .kt-label-designer-grid span,
320
+ .kt-label-designer-grid textarea {
321
+ font-family: inherit;
322
+ }
323
+
324
+ .kt-label-designer-grid {
325
+ font-family: SimSun, "Songti SC", "宋体", "Noto Serif CJK SC", serif;
326
+ }
327
+
328
+ .kt-designer-header-label {
329
+ display: flex;
330
+ flex-direction: column;
331
+ align-items: center;
332
+ justify-content: center;
333
+ line-height: 1.15;
334
+ pointer-events: none;
335
+ }
336
+
337
+ .kt-designer-scale-px {
338
+ display: block;
339
+ font-size: 9px;
340
+ line-height: 1;
341
+ font-weight: 400;
342
+ color: #a9aeb8;
343
+ pointer-events: none;
344
+ user-select: none;
345
+ }
346
+
347
+ .kt-designer-row-index {
348
+ display: flex;
349
+ flex-direction: column;
350
+ align-items: center;
351
+ justify-content: center;
352
+ line-height: 1.1;
353
+ pointer-events: none;
354
+ }
355
+
356
+ /*
357
+ * 第一排:压高度 + 外包层垂直居中。
358
+ * mycss 对 button/span/div 写了 padding:0; line-height:inherit,
359
+ * Arco Dropdown/Tooltip/Badge 又包一层 span,按钮会贴在过高行盒的上沿。
360
+ * 只对子项 align-items:center 不够,必须限制行高并让包裹层也 inline-flex。
361
+ */
362
+ .kt-designer-chrome {
363
+ display: flex;
364
+ align-items: center;
365
+ flex: 0 0 auto;
366
+ height: 32px;
367
+ max-height: 32px;
368
+ margin-top: 4px !important;
369
+ margin-bottom: 4px !important;
370
+ line-height: 1;
371
+ overflow: visible;
372
+ }
373
+
374
+ .kt-designer-chrome-quick {
375
+ display: flex;
376
+ flex-wrap: nowrap;
377
+ align-items: center;
378
+ align-content: center;
379
+ width: 100%;
380
+ height: 32px;
381
+ max-height: 32px;
382
+ gap: 6px;
383
+ line-height: 1;
384
+ }
385
+
386
+ button.kt-designer-chrome-quick__save {
387
+ margin-left: auto !important;
388
+ }
389
+
390
+ .kt-designer-chrome-quick > * {
391
+ display: inline-flex !important;
392
+ align-items: center;
393
+ align-self: center;
394
+ line-height: 1;
395
+ max-height: 32px;
396
+ }
397
+
398
+ .kt-designer-chrome-quick .arco-btn,
399
+ .kt-designer-chrome-quick .ant-btn {
400
+ display: inline-flex !important;
401
+ align-items: center;
402
+ justify-content: center;
403
+ height: 28px;
404
+ min-height: 28px;
405
+ max-height: 28px;
406
+ padding: 0 12px;
407
+ line-height: 26px;
408
+ box-sizing: border-box;
409
+ vertical-align: middle;
410
+ }
411
+
412
+ .kt-designer-chrome-quick .arco-radio-group,
413
+ .kt-designer-chrome-quick .arco-radio-button,
414
+ .kt-designer-chrome-quick .arco-select,
415
+ .kt-designer-chrome-quick .arco-select-view,
416
+ .kt-designer-chrome-quick .arco-badge,
417
+ .kt-designer-chrome-quick .arco-typography,
418
+ .kt-designer-chrome-quick .ant-radio-group,
419
+ .kt-designer-chrome-quick .ant-radio-button-wrapper,
420
+ .kt-designer-chrome-quick .ant-select,
421
+ .kt-designer-chrome-quick .ant-select-selector,
422
+ .kt-designer-chrome-quick .ant-badge,
423
+ .kt-designer-chrome-quick .ant-typography {
424
+ display: inline-flex !important;
425
+ align-items: center;
426
+ height: 28px;
427
+ max-height: 28px;
428
+ line-height: 26px;
429
+ vertical-align: middle;
430
+ }
431
+
432
+ .kt-designer-chrome-quick .arco-radio-button-inner {
433
+ display: inline-flex;
434
+ align-items: center;
435
+ line-height: 26px;
436
+ }
437
+
438
+ .kt-designer-chrome-quick .arco-icon {
439
+ display: block;
440
+ line-height: 1;
441
+ vertical-align: middle;
442
+ }
443
+
444
+ .kt-designer-chrome-btn-inner {
445
+ display: inline-flex;
446
+ align-items: center;
447
+ gap: 2px;
448
+ line-height: 1;
449
+ }
450
+
451
+ .kt-designer-chrome-quick .arco-badge {
452
+ padding: 0;
453
+ line-height: 0;
454
+ }
455
+
456
+ .kt-designer-chrome-quick .arco-dropdown,
457
+ .kt-designer-chrome-quick .arco-trigger {
458
+ display: inline-flex;
459
+ align-items: center;
460
+ line-height: 1;
461
+ }
462
+
463
+ .kt-designer-chrome-menu {
464
+ max-height: 480px;
465
+ overflow: auto;
466
+ min-width: 200px;
467
+ }
468
+
469
+ .kt-designer-fmt-group {
470
+ display: inline-flex;
471
+ align-items: center;
472
+ gap: 4px;
473
+ vertical-align: middle;
474
+ }
475
+
476
+ /*
477
+ * 页签条:mycss.css `div { margin:0; padding:0 }` 未分层,会盖掉弱规则。
478
+ * 条高不要锁 32px(Arco small card header 默认约 28–32px,再 flex-end 会上面空一截)。
479
+ */
480
+ div.kt-designer-sheet-tab-bar {
481
+ display: flex;
482
+ align-items: flex-end;
483
+ flex-wrap: wrap;
484
+ gap: 8px;
485
+ height: auto;
486
+ min-height: 0;
487
+ max-height: none;
488
+ margin-top: 0px !important;
489
+ margin-bottom: 0 !important;
490
+ padding: 6px 4px 0 !important;
491
+ flex-shrink: 0;
492
+ border-bottom: 1px solid var(--kt-forms-border, #d0d5dd);
493
+ background: var(--kt-forms-chrome-bar, #eceef1);
494
+ }
495
+
496
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab-bar__tabs {
497
+ min-width: 0;
498
+ flex: 1 1 auto;
499
+ display: flex;
500
+ align-items: flex-end;
501
+ flex-wrap: nowrap;
502
+ height: auto;
503
+ min-height: 0;
504
+ /* overflow-x:auto + overflow-y:visible 会被算成双向 auto,Windows 就会画出右侧上下三角。 */
505
+ overflow-x: auto;
506
+ overflow-y: hidden;
507
+ scrollbar-width: thin;
508
+ scrollbar-color: rgba(29, 33, 41, 0.28) transparent;
509
+ }
510
+
511
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab-bar__tabs::-webkit-scrollbar {
512
+ height: 5px;
513
+ width: 0;
514
+ }
515
+
516
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab-bar__tabs::-webkit-scrollbar:vertical {
517
+ width: 0;
518
+ height: 0;
519
+ }
520
+
521
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab-bar__tabs::-webkit-scrollbar-track {
522
+ background: transparent;
523
+ }
524
+
525
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab-bar__tabs::-webkit-scrollbar-thumb {
526
+ background: rgba(29, 33, 41, 0.28);
527
+ border-radius: 3px;
528
+ }
529
+
530
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab-bar__tabs::-webkit-scrollbar-thumb:hover {
531
+ background: rgba(29, 33, 41, 0.42);
532
+ }
533
+
534
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab-bar__tabs::-webkit-scrollbar-button {
535
+ display: none;
536
+ width: 0;
537
+ height: 0;
538
+ }
539
+
540
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tabs {
541
+ display: flex;
542
+ align-items: flex-end;
543
+ flex-wrap: nowrap;
544
+ flex-shrink: 0;
545
+ min-width: max-content;
546
+ width: max-content;
547
+ gap: 2px;
548
+ }
549
+
550
+ div.kt-designer-sheet-tab-bar .arco-space,
551
+ div.kt-designer-sheet-tab-bar .ant-space {
552
+ display: inline-flex;
553
+ align-items: flex-end;
554
+ height: 26px;
555
+ padding-bottom: 2px;
556
+ }
557
+
558
+ /*
559
+ * 经典 Tab:未选中扁、淡、有底边;选中更高更实、去底边并入画布。
560
+ * face 色只作淡底 + 左细条,不要给未选中套选中描边 / 3D 厚边。
561
+ * 不用 antd Tabs:shim 把 key 加成 .$id,点下去对不上 sheet。
562
+ */
563
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab {
564
+ appearance: none;
565
+ position: relative;
566
+ z-index: 0;
567
+ display: inline-flex;
568
+ align-items: center;
569
+ box-sizing: border-box;
570
+ height: 24px;
571
+ margin: 0 1px -1px 0;
572
+ padding: 0 12px !important;
573
+ border: 1px solid var(--kt-forms-border, #d0d5dd);
574
+ border-radius: 4px 4px 0 0;
575
+ background: var(--kt-forms-chrome-tab, #e4e6ea);
576
+ color: var(--kt-forms-text-secondary, #4e5969);
577
+ font-size: 12px;
578
+ font-weight: 400;
579
+ line-height: 22px;
580
+ white-space: nowrap;
581
+ cursor: pointer;
582
+ user-select: none;
583
+ box-shadow: none;
584
+ }
585
+
586
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab:focus {
587
+ outline: none;
588
+ }
589
+
590
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab:focus-visible {
591
+ outline: 1px dotted #86909c;
592
+ outline-offset: -2px;
593
+ }
594
+
595
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--entry {
596
+ background: #f3eee4;
597
+ color: #6b5420;
598
+ box-shadow: inset 2px 0 0 #c9a46a;
599
+ }
600
+
601
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--report {
602
+ background: #e7eef5;
603
+ color: #3d5a80;
604
+ box-shadow: inset 2px 0 0 #8aa8c8;
605
+ }
606
+
607
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--prepage {
608
+ background: #c5d4b5;
609
+ color: #2f3d24;
610
+ box-shadow: inset 4px 0 0 #3d5a2a;
611
+ }
612
+
613
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--active {
614
+ z-index: 1;
615
+ height: 28px;
616
+ font-weight: 700;
617
+ color: #1d2129;
618
+ background: var(--kt-paper-bg, #fff);
619
+ border-color: var(--kt-forms-border, #d0d5dd);
620
+ border-bottom-color: var(--kt-paper-bg, #fff);
621
+ box-shadow: none;
622
+ }
623
+
624
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--active.kt-designer-sheet-tab--entry {
625
+ background: var(--kt-paper-bg, #fff);
626
+ color: #4a3200;
627
+ border-bottom-color: var(--kt-paper-bg, #fff);
628
+ box-shadow: inset 2px 0 0 #b8860b;
629
+ }
630
+
631
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--active.kt-designer-sheet-tab--report {
632
+ background: var(--kt-paper-bg, #fff);
633
+ color: #0b3d7a;
634
+ border-bottom-color: var(--kt-paper-bg, #fff);
635
+ box-shadow: inset 2px 0 0 #3d6ea8;
636
+ }
637
+
638
+ div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--active.kt-designer-sheet-tab--prepage {
639
+ background: var(--kt-paper-bg, #fff);
640
+ color: #1f2e16;
641
+ border-bottom-color: var(--kt-paper-bg, #fff);
642
+ box-shadow: inset 4px 0 0 #2a4a1c, 0 0 0 1px #5a7a3a;
643
+ }
644
+
645
+ .kt-antd-mimic-root[data-kt-mimic-scheme="dark"] div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--entry {
646
+ background: #3d3420;
647
+ color: #e8d5a8;
648
+ box-shadow: inset 2px 0 0 #c9a46a;
649
+ }
650
+
651
+ .kt-antd-mimic-root[data-kt-mimic-scheme="dark"] div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--report {
652
+ background: #1e2c40;
653
+ color: #b8cce4;
654
+ box-shadow: inset 2px 0 0 #8aa8c8;
655
+ }
656
+
657
+ .kt-antd-mimic-root[data-kt-mimic-scheme="dark"] div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--prepage {
658
+ background: #2a3820;
659
+ color: #c5d4b5;
660
+ box-shadow: inset 4px 0 0 #7a9a5a;
661
+ }
662
+
663
+ .kt-antd-mimic-root[data-kt-mimic-scheme="dark"] div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--active.kt-designer-sheet-tab--entry {
664
+ background: var(--kt-paper-bg, #fff);
665
+ color: #4a3200;
666
+ border-bottom-color: var(--kt-paper-bg, #fff);
667
+ }
668
+
669
+ .kt-antd-mimic-root[data-kt-mimic-scheme="dark"] div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--active.kt-designer-sheet-tab--report {
670
+ background: var(--kt-paper-bg, #fff);
671
+ color: #0b3d7a;
672
+ border-bottom-color: var(--kt-paper-bg, #fff);
673
+ }
674
+
675
+ .kt-antd-mimic-root[data-kt-mimic-scheme="dark"] div.kt-designer-sheet-tab-bar .kt-designer-sheet-tab--active.kt-designer-sheet-tab--prepage {
676
+ background: var(--kt-paper-bg, #fff);
677
+ color: #1f2e16;
678
+ border-bottom-color: var(--kt-paper-bg, #fff);
679
+ }
680
+
681
+ .kt-designer-sheet-tab-bar__empty {
682
+ padding: 0 8px 4px;
683
+ font-size: 12px;
684
+ color: #86909c;
685
+ line-height: 26px;
686
+ }
687
+
688
+ .kt-designer-sheet-tab--hidden {
689
+ opacity: 0.55;
690
+ color: #86909c;
691
+ }
692
+
693
+ .kt-designer-sheet-tab-menu {
694
+ position: fixed;
695
+ z-index: 1200;
696
+ min-width: 176px;
697
+ padding: 4px;
698
+ background: var(--ant-color-bg-elevated, #fff);
699
+ color: var(--ant-color-text, inherit);
700
+ border: 1px solid var(--kt-forms-border, #e5e6eb);
701
+ border-radius: 6px;
702
+ box-shadow: 0 6px 16px rgba(15, 15, 15, 0.12);
703
+ }
704
+
705
+ .kt-designer-fmt-panel {
706
+ flex-shrink: 0;
707
+ padding: 4px 8px 2px;
708
+ background: var(--kt-forms-header-bg, var(--kt-forms-chrome-bar, #f3f7fd));
709
+ border-bottom: 1px solid var(--kt-forms-border, #d0d5dd);
710
+ }
711
+
712
+ .kt-designer-fmt-panel__toolbar {
713
+ display: flex;
714
+ align-items: flex-start;
715
+ gap: 8px;
716
+ margin-bottom: 4px;
717
+ }
718
+
719
+ .kt-designer-fmt-panel__toolbar-body {
720
+ min-width: 0;
721
+ flex: 1;
722
+ }
723
+
724
+ .kt-designer-fmt-panel__metrics {
725
+ display: flex;
726
+ align-items: center;
727
+ gap: 8px;
728
+ margin-bottom: 6px;
729
+ min-height: 22px;
730
+ }
731
+
732
+ .kt-designer-fmt-panel__metrics-text {
733
+ min-width: 0;
734
+ flex: 1;
735
+ font-size: 12px;
736
+ line-height: 1.4;
737
+ color: #86909c;
738
+ }
739
+
740
+ .kt-designer-help-body {
741
+ max-width: 360px;
742
+ font-size: 12px;
743
+ line-height: 1.55;
744
+ color: #4e5969;
745
+ }
746
+
747
+ .kt-designer-help-body p {
748
+ margin: 4px 0 8px;
749
+ }
750
+
751
+ /* 框线 split:Tooltip/Popover 包裹后仍与左侧图标同高同线 */
752
+ .kt-designer-border-split {
753
+ display: inline-flex !important;
754
+ align-items: center;
755
+ vertical-align: middle;
756
+ height: 24px;
757
+ }
758
+
759
+ .kt-designer-border-split > * {
760
+ display: inline-flex;
761
+ align-items: center;
762
+ height: 24px;
763
+ line-height: 0;
764
+ }
765
+
766
+ .kt-designer-border-split-btn {
767
+ display: inline-flex;
768
+ align-items: center;
769
+ justify-content: center;
770
+ height: 24px;
771
+ line-height: 0;
772
+ }
773
+
774
+ .kt-designer-border-split .ant-btn,
775
+ .kt-designer-border-split .arco-btn {
776
+ display: inline-flex;
777
+ align-items: center;
778
+ justify-content: center;
779
+ height: 24px;
780
+ min-height: 24px;
781
+ padding: 0 5px;
782
+ line-height: 1;
783
+ box-sizing: border-box;
784
+ vertical-align: middle;
785
+ }
786
+
787
+ /*
788
+ * 移植后运行时是 .ant-*。原先只锁 .arco-btn 的 28px,密度 comfortable/宽松
789
+ * 会把格式条、页签条按钮抬到 32/36。
790
+ */
791
+ .kt-designer-fmt-panel .ant-space,
792
+ .kt-designer-sheet-tab-bar .ant-space {
793
+ gap: 4px !important;
794
+ row-gap: 4px !important;
795
+ }
796
+
797
+ .kt-designer-fmt-panel .ant-btn,
798
+ .kt-designer-sheet-tab-bar .ant-btn {
799
+ display: inline-flex;
800
+ align-items: center;
801
+ justify-content: center;
802
+ height: 26px;
803
+ min-height: 26px;
804
+ max-height: 26px;
805
+ padding: 0 8px;
806
+ font-size: 12px;
807
+ line-height: 24px;
808
+ box-sizing: border-box;
809
+ }
810
+
811
+ .kt-designer-fmt-panel .ant-btn.ant-btn-icon-only,
812
+ .kt-designer-sheet-tab-bar .ant-btn.ant-btn-icon-only {
813
+ width: 26px;
814
+ padding-inline: 0;
815
+ }
816
+
817
+ .kt-designer-fmt-panel .ant-select,
818
+ .kt-designer-sheet-tab-bar .ant-select {
819
+ font-size: 12px;
820
+ }
821
+
822
+ .kt-designer-fmt-panel .ant-select-selector,
823
+ .kt-designer-sheet-tab-bar .ant-select-selector {
824
+ min-height: 26px !important;
825
+ height: 26px !important;
826
+ }
827
+
828
+ .kt-designer-fmt-panel .ant-input-number,
829
+ .kt-designer-fmt-panel .ant-input-number-input-wrap,
830
+ .kt-designer-fmt-panel .ant-input-number-input {
831
+ height: 26px !important;
832
+ min-height: 26px;
833
+ font-size: 12px;
834
+ }
835
+
836
+ .kt-designer-fmt-panel input[type="color"] {
837
+ -webkit-appearance: none;
838
+ appearance: none;
839
+ width: 22px;
840
+ height: 22px;
841
+ padding: 1px;
842
+ border: 1px solid var(--kt-forms-border, #d0d5dd);
843
+ border-radius: 4px;
844
+ background: var(--kt-paper-bg, #fff);
845
+ cursor: pointer;
846
+ }
847
+
848
+ .kt-designer-fmt-panel input[type="color"]::-webkit-color-swatch-wrapper {
849
+ padding: 1px;
850
+ }
851
+
852
+ .kt-designer-fmt-panel input[type="color"]::-webkit-color-swatch {
853
+ border: none;
854
+ border-radius: 3px;
855
+ }
856
+