handler-playable-sdk 0.3.61 → 0.3.63

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.
@@ -44,6 +44,75 @@
44
44
  /* HANDLER Shadow System */
45
45
  --ui-shadow: 0 2px 8px rgba(30, 30, 30, 0.08);
46
46
  --ui-shadow-hover: 0 4px 12px rgba(30, 30, 30, 0.12);
47
+ --ui-shadow-strong: 0 20px 50px rgba(0, 0, 0, 0.5);
48
+
49
+ /* === EXTENDED COLOR PALETTE === */
50
+ /* Pure Colors */
51
+ --ui-black: #000000;
52
+ --ui-white: #FFFFFF;
53
+
54
+ /* Device Frame */
55
+ --ui-device-frame-bg: #000000;
56
+
57
+ /* Light Overlays (White with opacity) */
58
+ --ui-overlay-light-1: rgba(255, 255, 255, 0.02);
59
+ --ui-overlay-light-2: rgba(255, 255, 255, 0.03);
60
+ --ui-overlay-light-3: rgba(255, 255, 255, 0.05);
61
+ --ui-overlay-light-4: rgba(255, 255, 255, 0.08);
62
+ --ui-overlay-light-5: rgba(255, 255, 255, 0.1);
63
+ --ui-overlay-light-6: rgba(255, 255, 255, 0.15);
64
+ --ui-overlay-light-7: rgba(255, 255, 255, 0.2);
65
+
66
+ /* Dark Overlays (Black with opacity) */
67
+ --ui-overlay-dark-1: rgba(0, 0, 0, 0.2);
68
+ --ui-overlay-dark-2: rgba(0, 0, 0, 0.3);
69
+ --ui-overlay-dark-3: rgba(0, 0, 0, 0.5);
70
+
71
+ /* Accent Overlays (Terracotta with opacity) */
72
+ --ui-accent-overlay-1: rgba(227, 138, 90, 0.08);
73
+ --ui-accent-overlay-2: rgba(227, 138, 90, 0.12);
74
+ --ui-accent-overlay-3: rgba(227, 138, 90, 0.35);
75
+ --ui-accent-overlay-4: rgba(227, 138, 90, 0.45);
76
+ --ui-accent-overlay-5: rgba(227, 138, 90, 0.5);
77
+ --ui-accent-overlay-6: rgba(227, 138, 90, 0.55);
78
+
79
+ /* Danger Overlays */
80
+ --ui-danger-overlay-1: rgba(217, 117, 88, 0.1);
81
+ --ui-danger-overlay-2: rgba(217, 117, 88, 0.3);
82
+
83
+ /* Accent-2 Overlays */
84
+ --ui-accent-2-overlay-1: rgba(201, 162, 140, 0.1);
85
+
86
+ /* Border Overlays */
87
+ --ui-border-overlay-1: rgba(212, 207, 200, 0.8);
88
+
89
+ /* AI Tools Dark Background */
90
+ --ui-ai-dark-bg: rgba(8, 10, 14, 0.6);
91
+
92
+ /* Error/Alert Colors (for critical states) */
93
+ --ui-error-bright: #FF5C70;
94
+ --ui-error-bright-overlay-1: rgba(255, 92, 112, 0.1);
95
+ --ui-error-bright-overlay-2: rgba(255, 92, 112, 0.3);
96
+
97
+ --ui-alert-red: #FF5A5A;
98
+ --ui-alert-red-overlay-1: rgba(255, 90, 90, 0.15);
99
+ --ui-alert-red-overlay-2: rgba(255, 90, 90, 0.4);
100
+
101
+ /* Console/Debug Colors */
102
+ --ui-console-info: #007acc;
103
+ --ui-console-bg: #e1e4e8;
104
+ --ui-console-text: #333;
105
+
106
+ /* AI Prompt Colors */
107
+ --ui-ai-magenta: #FF00FF;
108
+
109
+ /* Status Colors (for override states, validation, etc.) */
110
+ --ui-status-warning: #FFD36B;
111
+ --ui-status-warning-border: rgba(255, 211, 107, 0.4);
112
+ --ui-status-success: #9FE7C5;
113
+ --ui-status-success-border: rgba(159, 231, 197, 0.4);
114
+ --ui-status-info: #9FC4FF;
115
+ --ui-status-info-border: rgba(159, 196, 255, 0.35);
47
116
 
48
117
  /* Background Texture */
49
118
  --ui-noise-opacity: 0.05;
@@ -214,7 +283,7 @@
214
283
 
215
284
  .compare-viewport.is-active {
216
285
  border-color: var(--ui-accent);
217
- box-shadow: 0 0 0 1px rgba(227, 138, 90, 0.3), var(--ui-shadow);
286
+ box-shadow: 0 0 0 1px var(--ui-accent-overlay-3), var(--ui-shadow);
218
287
  }
219
288
 
220
289
  .compare-header {
@@ -263,7 +332,7 @@
263
332
 
264
333
  .compare-viewport.is-active .compare-focus {
265
334
  border-color: var(--ui-accent);
266
- background: rgba(227, 138, 90, 0.12);
335
+ background: var(--ui-accent-overlay-2);
267
336
  color: var(--ui-text);
268
337
  }
269
338
 
@@ -298,7 +367,7 @@
298
367
  justify-content: center;
299
368
  font-size: 11px;
300
369
  color: var(--ui-muted);
301
- background: rgba(246, 243, 239, 0.5);
370
+ background: var(--ui-border-overlay-1);
302
371
  opacity: 0;
303
372
  transition: opacity var(--ui-duration-normal) var(--ui-ease);
304
373
  pointer-events: none;
@@ -312,7 +381,7 @@
312
381
  width: 100%;
313
382
  height: 100%;
314
383
  display: block;
315
- background: #000;
384
+ background: var(--ui-black);
316
385
  }
317
386
 
318
387
  @media (max-width: 1100px) {
@@ -466,7 +535,7 @@
466
535
  }
467
536
 
468
537
  .status-icon.active {
469
- background: rgba(227, 138, 90, 0.15);
538
+ background: var(--ui-accent-overlay-1);
470
539
  color: var(--ui-terracotta);
471
540
  }
472
541
 
@@ -589,7 +658,7 @@
589
658
  .scene-tools-body .debug-field input[type="number"]:focus {
590
659
  outline: none;
591
660
  border-color: var(--ui-terracotta);
592
- box-shadow: 0 0 0 2px rgba(227, 138, 90, 0.2);
661
+ box-shadow: 0 0 0 2px var(--ui-accent-overlay-1);
593
662
  }
594
663
 
595
664
  /* Debug nudge controls */
@@ -748,7 +817,7 @@
748
817
  .scene-panel-search input:focus {
749
818
  outline: none;
750
819
  border-color: var(--ui-accent);
751
- box-shadow: 0 0 0 2px rgba(61, 214, 198, 0.2);
820
+ box-shadow: 0 0 0 2px var(--ui-accent-overlay-1);
752
821
  }
753
822
 
754
823
  .scene-panel-filters {
@@ -776,18 +845,18 @@
776
845
 
777
846
  .scene-screen-filter:hover {
778
847
  border-color: var(--ui-terracotta);
779
- background-color: rgba(227, 138, 90, 0.05);
848
+ background-color: var(--ui-accent-overlay-1);
780
849
  }
781
850
 
782
851
  .scene-screen-filter:focus {
783
852
  outline: none;
784
853
  border-color: var(--ui-accent);
785
- box-shadow: 0 0 0 2px rgba(61, 214, 198, 0.2);
854
+ box-shadow: 0 0 0 2px var(--ui-accent-overlay-1);
786
855
  }
787
856
 
788
857
  .filter-chip {
789
- border: 1px solid rgba(111, 140, 255, 0.3);
790
- background: rgba(19, 24, 34, 0.7);
858
+ border: 1px solid var(--ui-accent-overlay-3);
859
+ background: var(--ui-ai-dark-bg);
791
860
  color: var(--ui-muted);
792
861
  font-size: 11px;
793
862
  border-radius: 999px;
@@ -822,7 +891,7 @@
822
891
  margin-left: 6px;
823
892
  padding: 2px 6px;
824
893
  border-radius: 999px;
825
- background: rgba(255, 255, 255, 0.08);
894
+ background: var(--ui-overlay-light-4);
826
895
  color: var(--ui-text);
827
896
  font-size: 10px;
828
897
  }
@@ -864,31 +933,31 @@
864
933
  border-radius: 999px;
865
934
  text-transform: uppercase;
866
935
  letter-spacing: 0.4px;
867
- border: 1px solid rgba(255, 255, 255, 0.1);
936
+ border: 1px solid var(--ui-overlay-light-5);
868
937
  }
869
938
 
870
939
  .scene-object-badge.ui {
871
- background: rgba(227, 138, 90, 0.12);
940
+ background: var(--ui-accent-overlay-2);
872
941
  /* Terracotta tint */
873
942
  color: var(--ui-terracotta);
874
943
  }
875
944
 
876
945
  .scene-object-badge.scene {
877
- background: rgba(201, 162, 140, 0.12);
946
+ background: var(--ui-accent-2-overlay-1);
878
947
  /* Dusty clay tint */
879
948
  color: var(--ui-accent-2);
880
949
  }
881
950
 
882
951
  .scene-object-item:hover {
883
952
  border-color: var(--ui-terracotta);
884
- background: rgba(227, 138, 90, 0.08);
953
+ background: var(--ui-accent-overlay-1);
885
954
  /* Light terracotta wash */
886
955
  }
887
956
 
888
957
  .scene-object-item.selected {
889
958
  border-color: var(--ui-terracotta);
890
- background: rgba(227, 138, 90, 0.15);
891
- box-shadow: 0 0 0 1px rgba(227, 138, 90, 0.3);
959
+ background: var(--ui-accent-overlay-2);
960
+ box-shadow: 0 0 0 1px var(--ui-accent-overlay-3);
892
961
  }
893
962
 
894
963
  /* Debug Toggle Button in Toolbar */
@@ -897,7 +966,7 @@
897
966
  }
898
967
 
899
968
  .debug-toggle-badge {
900
- background-color: #28a745;
969
+ background-color: var(--ui-success);
901
970
  color: var(--ui-text);
902
971
  font-size: 10px;
903
972
  padding: 2px 4px;
@@ -913,10 +982,10 @@
913
982
  /* Inspector Image Property - Premium Layout */
914
983
  .inspector-property-image {
915
984
  margin-bottom: 16px;
916
- background: rgba(255, 255, 255, 0.02);
985
+ background: var(--ui-overlay-light-1);
917
986
  border-radius: 10px;
918
987
  padding: 12px;
919
- border: 1px solid rgba(255, 255, 255, 0.05);
988
+ border: 1px solid var(--ui-overlay-light-3);
920
989
  }
921
990
 
922
991
  .inspector-property-image .property-header {
@@ -935,9 +1004,9 @@
935
1004
  position: relative;
936
1005
  width: 100px;
937
1006
  height: 80px;
938
- background: #0d1117;
1007
+ background: var(--ui-black);
939
1008
  border-radius: 8px;
940
- border: 1px solid rgba(255, 255, 255, 0.1);
1009
+ border: 1px solid var(--ui-overlay-light-5);
941
1010
  overflow: hidden;
942
1011
  cursor: zoom-in;
943
1012
  flex-shrink: 0;
@@ -966,8 +1035,8 @@
966
1035
  font-family: inherit;
967
1036
  font-size: 11px !important;
968
1037
  color: var(--ui-muted) !important;
969
- background: rgba(0, 0, 0, 0.2) !important;
970
- border-color: rgba(255, 255, 255, 0.05) !important;
1038
+ background: var(--ui-overlay-dark-1) !important;
1039
+ border-color: var(--ui-overlay-light-3) !important;
971
1040
  }
972
1041
 
973
1042
  .inspector-image-actions {
@@ -982,31 +1051,31 @@
982
1051
  }
983
1052
 
984
1053
  .inspector-image-actions .inspector-btn.primary {
985
- background: #6d5dfc;
1054
+ background: var(--ui-terracotta);
986
1055
  color: white;
987
1056
  font-weight: 600;
988
1057
  }
989
1058
 
990
1059
  .highlight-pulse {
991
1060
  animation: pulse-border 1s infinite alternate;
992
- border-color: #6d5dfc !important;
1061
+ border-color: var(--ui-terracotta) !important;
993
1062
  /* Removed glow effect - HANDLER forbids glows */
994
1063
  }
995
1064
 
996
1065
  @keyframes pulse-border {
997
1066
  from {
998
- border-color: rgba(109, 93, 252, 0.3);
1067
+ border-color: var(--ui-accent-overlay-3);
999
1068
  }
1000
1069
 
1001
1070
  to {
1002
- border-color: rgba(109, 93, 252, 1);
1071
+ border-color: var(--ui-terracotta);
1003
1072
  }
1004
1073
  }
1005
1074
 
1006
1075
  .property-badge {
1007
1076
  font-size: 9px;
1008
1077
  font-weight: 800;
1009
- background: rgba(61, 214, 198, 0.15);
1078
+ background: var(--ui-accent-overlay-2);
1010
1079
  color: var(--ui-accent);
1011
1080
  padding: 2px 5px;
1012
1081
  border-radius: 4px;
@@ -1042,7 +1111,7 @@
1042
1111
  .toolbar-divider {
1043
1112
  width: 1px;
1044
1113
  height: 20px;
1045
- background-color: #555;
1114
+ background-color: var(--ui-border);
1046
1115
  margin: 0 4px;
1047
1116
  }
1048
1117
 
@@ -1094,7 +1163,7 @@
1094
1163
  /* Higher z-index during drag to stay above everything */
1095
1164
  .scene-panel.dragging {
1096
1165
  z-index: 9999 !important;
1097
- box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
1166
+ box-shadow: var(--ui-shadow-strong);
1098
1167
  opacity: 0.95;
1099
1168
  }
1100
1169
 
@@ -1172,8 +1241,8 @@
1172
1241
  }
1173
1242
 
1174
1243
  .customize-icon-btn:hover {
1175
- border-color: rgba(227, 138, 90, 0.55);
1176
- background: rgba(227, 138, 90, 0.08);
1244
+ border-color: var(--ui-accent-overlay-6);
1245
+ background: var(--ui-accent-overlay-1);
1177
1246
  }
1178
1247
 
1179
1248
  .customize-icon-btn svg {
@@ -1199,8 +1268,8 @@
1199
1268
  gap: 6px;
1200
1269
  padding: 8px;
1201
1270
  border-radius: 8px;
1202
- background: rgba(20, 26, 36, 0.7);
1203
- border: 1px solid rgba(255, 255, 255, 0.05);
1271
+ background: var(--ui-ai-dark-bg);
1272
+ border: 1px solid var(--ui-overlay-light-3);
1204
1273
  font-size: 11px;
1205
1274
  color: var(--ui-muted);
1206
1275
  }
@@ -1246,8 +1315,8 @@
1246
1315
  width: 100%;
1247
1316
  padding: 6px 8px;
1248
1317
  border-radius: 8px;
1249
- border: 1px solid rgba(255, 255, 255, 0.08);
1250
- background: rgba(10, 14, 20, 0.85);
1318
+ border: 1px solid var(--ui-overlay-light-4);
1319
+ background: var(--ui-ai-dark-bg);
1251
1320
  color: var(--ui-text);
1252
1321
  font-size: 12px;
1253
1322
  }
@@ -1270,7 +1339,7 @@
1270
1339
 
1271
1340
  .batch-ai-btn {
1272
1341
  border: 1px solid var(--ui-border);
1273
- background: rgba(25, 32, 44, 0.8);
1342
+ background: var(--ui-ai-dark-bg);
1274
1343
  color: var(--ui-text);
1275
1344
  border-radius: 8px;
1276
1345
  padding: 4px 10px;
@@ -1279,8 +1348,8 @@
1279
1348
  }
1280
1349
 
1281
1350
  .batch-ai-btn.primary {
1282
- border-color: rgba(191, 126, 255, 0.6);
1283
- background: rgba(191, 126, 255, 0.2);
1351
+ border-color: var(--ui-accent-overlay-6);
1352
+ background: var(--ui-accent-overlay-2);
1284
1353
  }
1285
1354
 
1286
1355
  .batch-ai-file {
@@ -1301,8 +1370,8 @@
1301
1370
  margin-top: 8px;
1302
1371
  padding: 8px;
1303
1372
  border-radius: 10px;
1304
- border: 1px solid rgba(255, 255, 255, 0.06);
1305
- background: rgba(16, 20, 28, 0.6);
1373
+ border: 1px solid var(--ui-overlay-light-2);
1374
+ background: var(--ui-ai-dark-bg);
1306
1375
  }
1307
1376
 
1308
1377
  .batch-ai-palette {
@@ -1316,7 +1385,7 @@
1316
1385
  width: 22px;
1317
1386
  height: 22px;
1318
1387
  border-radius: 6px;
1319
- border: 1px solid rgba(255, 255, 255, 0.2);
1388
+ border: 1px solid var(--ui-overlay-light-7);
1320
1389
  }
1321
1390
 
1322
1391
  .batch-ai-muted {
@@ -1333,8 +1402,8 @@
1333
1402
 
1334
1403
  .batch-ai-item {
1335
1404
  border-radius: 10px;
1336
- border: 1px solid rgba(255, 255, 255, 0.06);
1337
- background: rgba(12, 16, 22, 0.7);
1405
+ border: 1px solid var(--ui-overlay-light-2);
1406
+ background: var(--ui-ai-dark-bg);
1338
1407
  padding: 8px;
1339
1408
  display: flex;
1340
1409
  flex-direction: column;
@@ -1367,8 +1436,8 @@
1367
1436
  max-height: 140px;
1368
1437
  object-fit: contain;
1369
1438
  border-radius: 8px;
1370
- border: 1px solid rgba(255, 255, 255, 0.08);
1371
- background: rgba(8, 10, 14, 0.6);
1439
+ border: 1px solid var(--ui-overlay-light-4);
1440
+ background: var(--ui-ai-dark-bg);
1372
1441
  }
1373
1442
 
1374
1443
  .batch-ai-thumb.hidden {
@@ -1403,8 +1472,8 @@
1403
1472
  width: 100%;
1404
1473
  padding: 6px 8px;
1405
1474
  border-radius: 8px;
1406
- border: 1px solid rgba(255, 255, 255, 0.08);
1407
- background: rgba(10, 14, 20, 0.85);
1475
+ border: 1px solid var(--ui-overlay-light-4);
1476
+ background: var(--ui-ai-dark-bg);
1408
1477
  color: var(--ui-text);
1409
1478
  font-size: 12px;
1410
1479
  }
@@ -1423,7 +1492,7 @@
1423
1492
 
1424
1493
  .brand-dna-btn {
1425
1494
  border: 1px solid var(--ui-border);
1426
- background: rgba(25, 32, 44, 0.8);
1495
+ background: var(--ui-ai-dark-bg);
1427
1496
  color: var(--ui-text);
1428
1497
  border-radius: 8px;
1429
1498
  padding: 4px 10px;
@@ -1432,8 +1501,8 @@
1432
1501
  }
1433
1502
 
1434
1503
  .brand-dna-btn.primary {
1435
- border-color: rgba(111, 140, 255, 0.6);
1436
- background: rgba(111, 140, 255, 0.2);
1504
+ border-color: var(--ui-accent-overlay-6);
1505
+ background: var(--ui-accent-overlay-2);
1437
1506
  }
1438
1507
 
1439
1508
  .brand-dna-file {
@@ -1458,8 +1527,8 @@
1458
1527
  margin: 6px 0 0;
1459
1528
  padding: 8px;
1460
1529
  border-radius: 10px;
1461
- border: 1px solid rgba(255, 255, 255, 0.06);
1462
- background: rgba(12, 16, 22, 0.7);
1530
+ border: 1px solid var(--ui-overlay-light-2);
1531
+ background: var(--ui-ai-dark-bg);
1463
1532
  color: var(--ui-text);
1464
1533
  font-size: 11px;
1465
1534
  white-space: pre-wrap;
@@ -1469,8 +1538,8 @@
1469
1538
  margin-top: 8px;
1470
1539
  padding: 8px;
1471
1540
  border-radius: 10px;
1472
- border: 1px solid rgba(255, 255, 255, 0.06);
1473
- background: rgba(16, 20, 28, 0.6);
1541
+ border: 1px solid var(--ui-overlay-light-2);
1542
+ background: var(--ui-ai-dark-bg);
1474
1543
  }
1475
1544
 
1476
1545
  .brand-dna-palette {
@@ -1484,7 +1553,7 @@
1484
1553
  width: 22px;
1485
1554
  height: 22px;
1486
1555
  border-radius: 6px;
1487
- border: 1px solid rgba(255, 255, 255, 0.2);
1556
+ border: 1px solid var(--ui-overlay-light-7);
1488
1557
  }
1489
1558
 
1490
1559
  .brand-dna-muted {
@@ -1501,8 +1570,8 @@
1501
1570
 
1502
1571
  .brand-dna-object {
1503
1572
  border-radius: 10px;
1504
- border: 1px solid rgba(255, 255, 255, 0.06);
1505
- background: rgba(12, 16, 22, 0.7);
1573
+ border: 1px solid var(--ui-overlay-light-2);
1574
+ background: var(--ui-ai-dark-bg);
1506
1575
  padding: 8px;
1507
1576
  display: flex;
1508
1577
  flex-direction: column;
@@ -1546,7 +1615,7 @@
1546
1615
  .ai-modal {
1547
1616
  position: fixed;
1548
1617
  inset: 0;
1549
- background: rgba(30, 30, 30, 0.75);
1618
+ background: var(--ui-overlay-dark-3);
1550
1619
  display: flex;
1551
1620
  align-items: center;
1552
1621
  justify-content: center;
@@ -1628,7 +1697,7 @@
1628
1697
  gap: 12px;
1629
1698
  padding: 12px 14px;
1630
1699
  border-radius: 10px;
1631
- background: rgba(227, 138, 90, 0.08);
1700
+ background: var(--ui-accent-overlay-1);
1632
1701
  border: 1px solid var(--ui-terracotta);
1633
1702
  }
1634
1703
 
@@ -1649,7 +1718,7 @@
1649
1718
  flex: 1;
1650
1719
  height: 8px;
1651
1720
  border-radius: 999px;
1652
- background: linear-gradient(90deg, rgba(227, 138, 90, 0.3), var(--ui-terracotta), rgba(227, 138, 90, 0.3));
1721
+ background: linear-gradient(90deg, var(--ui-accent-overlay-3), var(--ui-terracotta), var(--ui-accent-overlay-3));
1653
1722
  background-size: 200% 100%;
1654
1723
  animation: ai-bar 1.4s var(--ui-ease) infinite;
1655
1724
  }
@@ -1701,7 +1770,7 @@
1701
1770
  .ai-textarea:focus {
1702
1771
  outline: none;
1703
1772
  border-color: var(--ui-terracotta);
1704
- box-shadow: 0 0 0 3px rgba(227, 138, 90, 0.15);
1773
+ box-shadow: 0 0 0 3px var(--ui-accent-overlay-2);
1705
1774
  }
1706
1775
 
1707
1776
  .ai-textarea {
@@ -1771,8 +1840,8 @@
1771
1840
 
1772
1841
  .ai-gallery-item.active {
1773
1842
  border-color: var(--ui-terracotta);
1774
- background: rgba(227, 138, 90, 0.1);
1775
- box-shadow: 0 0 0 2px rgba(227, 138, 90, 0.2);
1843
+ background: var(--ui-accent-overlay-2);
1844
+ box-shadow: 0 0 0 2px var(--ui-accent-overlay-1);
1776
1845
  }
1777
1846
 
1778
1847
  .ai-gallery-thumb {
@@ -1870,7 +1939,7 @@
1870
1939
  .asset-editor-modal {
1871
1940
  position: fixed;
1872
1941
  inset: 0;
1873
- background: rgba(6, 10, 16, 0.82);
1942
+ background: var(--ui-overlay-dark-3);
1874
1943
  display: flex;
1875
1944
  align-items: center;
1876
1945
  justify-content: center;
@@ -1880,10 +1949,10 @@
1880
1949
  .asset-editor-card {
1881
1950
  width: min(680px, 90vw);
1882
1951
  max-height: 85vh;
1883
- background: rgba(16, 20, 28, 0.98);
1952
+ background: var(--ui-dark-panel);
1884
1953
  border: 1px solid var(--ui-border);
1885
1954
  border-radius: 16px;
1886
- box-shadow: 0 20px 50px rgba(0, 0, 0, 0.45);
1955
+ box-shadow: var(--ui-shadow-strong);
1887
1956
  display: flex;
1888
1957
  flex-direction: column;
1889
1958
  overflow: hidden;
@@ -1894,7 +1963,7 @@
1894
1963
  align-items: center;
1895
1964
  justify-content: space-between;
1896
1965
  padding: 16px 20px;
1897
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
1966
+ border-bottom: 1px solid var(--ui-overlay-light-2);
1898
1967
  }
1899
1968
 
1900
1969
  .asset-editor-title {
@@ -1911,7 +1980,7 @@
1911
1980
 
1912
1981
  .asset-editor-close {
1913
1982
  border: 1px solid var(--ui-border);
1914
- background: rgba(25, 32, 44, 0.8);
1983
+ background: var(--ui-ai-dark-bg);
1915
1984
  color: var(--ui-text);
1916
1985
  border-radius: 8px;
1917
1986
  padding: 6px 12px;
@@ -1921,12 +1990,12 @@
1921
1990
  }
1922
1991
 
1923
1992
  .asset-editor-close:hover {
1924
- background: rgba(25, 32, 44, 1);
1993
+ background: var(--ui-black);
1925
1994
  }
1926
1995
 
1927
1996
  .asset-editor-tabs {
1928
1997
  display: flex;
1929
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
1998
+ border-bottom: 1px solid var(--ui-overlay-light-2);
1930
1999
  }
1931
2000
 
1932
2001
  .asset-editor-tab {
@@ -1948,7 +2017,7 @@
1948
2017
 
1949
2018
  .asset-editor-tab:hover:not(.active) {
1950
2019
  color: var(--ui-text);
1951
- background: rgba(255, 255, 255, 0.02);
2020
+ background: var(--ui-overlay-light-1);
1952
2021
  }
1953
2022
 
1954
2023
  .asset-editor-body {
@@ -1986,13 +2055,13 @@
1986
2055
  justify-content: flex-end;
1987
2056
  gap: 12px;
1988
2057
  padding: 16px 20px;
1989
- border-top: 1px solid rgba(255, 255, 255, 0.06);
2058
+ border-top: 1px solid var(--ui-overlay-light-2);
1990
2059
  }
1991
2060
 
1992
2061
  .asset-preview-modal {
1993
2062
  position: fixed;
1994
2063
  inset: 0;
1995
- background: rgba(8, 10, 14, 0.72);
2064
+ background: var(--ui-overlay-dark-3);
1996
2065
  display: flex;
1997
2066
  align-items: center;
1998
2067
  justify-content: center;
@@ -2002,7 +2071,7 @@
2002
2071
  .asset-preview-card {
2003
2072
  width: min(720px, 92vw);
2004
2073
  max-height: 82vh;
2005
- background: rgba(16, 20, 28, 0.98);
2074
+ background: var(--ui-dark-panel);
2006
2075
  border: 1px solid var(--ui-border);
2007
2076
  border-radius: 14px;
2008
2077
  box-shadow: var(--ui-shadow);
@@ -2015,7 +2084,7 @@
2015
2084
  align-items: center;
2016
2085
  justify-content: space-between;
2017
2086
  padding: 10px 14px;
2018
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
2087
+ border-bottom: 1px solid var(--ui-overlay-light-2);
2019
2088
  color: var(--ui-text);
2020
2089
  }
2021
2090
 
@@ -2027,7 +2096,7 @@
2027
2096
 
2028
2097
  .asset-preview-close {
2029
2098
  border: 1px solid var(--ui-border);
2030
- background: rgba(25, 32, 44, 0.8);
2099
+ background: var(--ui-ai-dark-bg);
2031
2100
  color: var(--ui-text);
2032
2101
  border-radius: 8px;
2033
2102
  padding: 4px 10px;
@@ -2040,7 +2109,7 @@
2040
2109
  color: var(--ui-muted);
2041
2110
  font-size: 11px;
2042
2111
  word-break: break-all;
2043
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
2112
+ border-bottom: 1px solid var(--ui-overlay-light-2);
2044
2113
  }
2045
2114
 
2046
2115
  .asset-preview-actions {
@@ -2051,7 +2120,7 @@
2051
2120
 
2052
2121
  .asset-preview-change {
2053
2122
  border: 1px solid var(--ui-border);
2054
- background: rgba(25, 32, 44, 0.8);
2123
+ background: var(--ui-ai-dark-bg);
2055
2124
  color: var(--ui-text);
2056
2125
  border-radius: 8px;
2057
2126
  padding: 4px 10px;
@@ -2061,7 +2130,7 @@
2061
2130
 
2062
2131
  .asset-preview-ai {
2063
2132
  border: 1px solid var(--ui-border);
2064
- background: rgba(25, 32, 44, 0.8);
2133
+ background: var(--ui-ai-dark-bg);
2065
2134
  color: var(--ui-text);
2066
2135
  border-radius: 8px;
2067
2136
  padding: 4px 10px;
@@ -2078,7 +2147,7 @@
2078
2147
  }
2079
2148
 
2080
2149
  .asset-preview-ai-output {
2081
- border-top: 1px solid rgba(255, 255, 255, 0.06);
2150
+ border-top: 1px solid var(--ui-overlay-light-2);
2082
2151
  padding: 10px 12px 14px;
2083
2152
  }
2084
2153
 
@@ -2097,8 +2166,8 @@
2097
2166
  max-height: 200px;
2098
2167
  object-fit: contain;
2099
2168
  border-radius: 10px;
2100
- border: 1px solid rgba(255, 255, 255, 0.08);
2101
- background: rgba(8, 10, 14, 0.6);
2169
+ border: 1px solid var(--ui-overlay-light-4);
2170
+ background: var(--ui-ai-dark-bg);
2102
2171
  }
2103
2172
 
2104
2173
  .asset-preview-body img {
@@ -2122,7 +2191,7 @@
2122
2191
  .asset-crop-modal {
2123
2192
  position: fixed;
2124
2193
  inset: 0;
2125
- background: rgba(8, 10, 14, 0.78);
2194
+ background: var(--ui-overlay-dark-3);
2126
2195
  display: flex;
2127
2196
  align-items: center;
2128
2197
  justify-content: center;
@@ -2131,7 +2200,7 @@
2131
2200
 
2132
2201
  .asset-crop-card {
2133
2202
  width: min(860px, 96vw);
2134
- background: rgba(16, 20, 28, 0.98);
2203
+ background: var(--ui-dark-panel);
2135
2204
  border: 1px solid var(--ui-border);
2136
2205
  border-radius: 14px;
2137
2206
  box-shadow: var(--ui-shadow);
@@ -2145,7 +2214,7 @@
2145
2214
  justify-content: space-between;
2146
2215
  gap: 16px;
2147
2216
  padding: 12px 16px;
2148
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
2217
+ border-bottom: 1px solid var(--ui-overlay-light-2);
2149
2218
  color: var(--ui-text);
2150
2219
  }
2151
2220
 
@@ -2162,7 +2231,7 @@
2162
2231
 
2163
2232
  .asset-crop-close {
2164
2233
  border: 1px solid var(--ui-border);
2165
- background: rgba(25, 32, 44, 0.8);
2234
+ background: var(--ui-ai-dark-bg);
2166
2235
  color: var(--ui-text);
2167
2236
  border-radius: 8px;
2168
2237
  padding: 4px 10px;
@@ -2196,15 +2265,15 @@
2196
2265
 
2197
2266
  .asset-crop-canvas {
2198
2267
  border-radius: 12px;
2199
- border: 1px solid rgba(255, 255, 255, 0.08);
2200
- background: rgba(8, 10, 14, 0.55);
2268
+ border: 1px solid var(--ui-overlay-light-4);
2269
+ background: var(--ui-ai-dark-bg);
2201
2270
  cursor: grab;
2202
2271
  }
2203
2272
 
2204
2273
  .asset-crop-preview {
2205
2274
  border-radius: 12px;
2206
- border: 1px solid rgba(255, 255, 255, 0.08);
2207
- background: rgba(8, 10, 14, 0.55);
2275
+ border: 1px solid var(--ui-overlay-light-4);
2276
+ background: var(--ui-ai-dark-bg);
2208
2277
  }
2209
2278
 
2210
2279
  .asset-crop-canvas:active {
@@ -2236,7 +2305,7 @@
2236
2305
 
2237
2306
  .asset-crop-reset {
2238
2307
  border: 1px solid var(--ui-border);
2239
- background: rgba(25, 32, 44, 0.8);
2308
+ background: var(--ui-ai-dark-bg);
2240
2309
  color: var(--ui-text);
2241
2310
  border-radius: 8px;
2242
2311
  padding: 4px 10px;
@@ -2256,7 +2325,7 @@
2256
2325
  padding: 6px 14px;
2257
2326
  font-size: 12px;
2258
2327
  border: 1px solid var(--ui-border);
2259
- background: rgba(28, 36, 50, 0.85);
2328
+ background: var(--ui-ai-dark-bg);
2260
2329
  color: var(--ui-text);
2261
2330
  cursor: pointer;
2262
2331
  }
@@ -2264,7 +2333,7 @@
2264
2333
  .asset-crop-apply {
2265
2334
  background: var(--ui-accent);
2266
2335
  border-color: transparent;
2267
- color: #10151f;
2336
+ color: var(--ui-dark-panel);
2268
2337
  font-weight: 600;
2269
2338
  }
2270
2339
 
@@ -2280,12 +2349,12 @@
2280
2349
  justify-content: space-between;
2281
2350
  gap: 12px;
2282
2351
  padding: 10px 14px;
2283
- background-color: rgba(24, 28, 38, 0.95);
2352
+ background-color: var(--ui-dark-panel);
2284
2353
  color: var(--ui-text);
2285
2354
  font-size: 12px;
2286
2355
  user-select: none;
2287
2356
  cursor: move;
2288
- border-bottom: 1px solid rgba(255, 255, 255, 0.05);
2357
+ border-bottom: 1px solid var(--ui-overlay-light-1);
2289
2358
  }
2290
2359
 
2291
2360
  .scene-panel-actions {
@@ -2297,7 +2366,7 @@
2297
2366
  .scene-panel-action {
2298
2367
  border: 1px solid var(--ui-border);
2299
2368
  border-radius: 6px;
2300
- background: #1f2633;
2369
+ background: var(--ui-ai-dark-bg);
2301
2370
  color: var(--ui-muted);
2302
2371
  font-size: 11px;
2303
2372
  padding: 4px 8px;
@@ -2305,7 +2374,7 @@
2305
2374
  }
2306
2375
 
2307
2376
  .scene-panel-action:hover {
2308
- border-color: rgba(255, 159, 67, 0.6);
2377
+ border-color: var(--ui-accent-2-overlay-1);
2309
2378
  color: var(--ui-text);
2310
2379
  }
2311
2380
 
@@ -2322,7 +2391,7 @@
2322
2391
 
2323
2392
  /* Terracotta hover for close button */
2324
2393
  .scene-panel-toggle:hover {
2325
- background: rgba(227, 138, 90, 0.15);
2394
+ background: var(--ui-accent-overlay-2);
2326
2395
  color: var(--ui-terracotta);
2327
2396
  }
2328
2397
 
@@ -2335,7 +2404,7 @@
2335
2404
  .panel-pill {
2336
2405
  padding: 2px 8px;
2337
2406
  border-radius: 999px;
2338
- background: rgba(61, 214, 198, 0.12);
2407
+ background: var(--ui-accent-overlay-2);
2339
2408
  color: var(--ui-accent);
2340
2409
  font-size: 10px;
2341
2410
  text-transform: uppercase;
@@ -2343,18 +2412,18 @@
2343
2412
  }
2344
2413
 
2345
2414
  .panel-accent-blue .panel-pill {
2346
- background: rgba(111, 140, 255, 0.14);
2415
+ background: var(--ui-accent-2-overlay-1);
2347
2416
  color: var(--ui-accent-3);
2348
2417
  }
2349
2418
 
2350
2419
  .panel-accent-amber .panel-pill {
2351
- background: rgba(255, 159, 67, 0.16);
2420
+ background: var(--ui-accent-2-overlay-1);
2352
2421
  color: var(--ui-accent-2);
2353
2422
  }
2354
2423
 
2355
2424
  .panel-accent-violet .panel-pill {
2356
- background: rgba(191, 126, 255, 0.18);
2357
- color: #d6b7ff;
2425
+ background: var(--ui-accent-2-overlay-1);
2426
+ color: var(--ui-accent-2);
2358
2427
  }
2359
2428
 
2360
2429
  .panel-title-text {
@@ -2364,19 +2433,19 @@
2364
2433
  }
2365
2434
 
2366
2435
  .panel-accent-teal {
2367
- border-color: rgba(61, 214, 198, 0.35);
2436
+ border-color: var(--ui-accent-overlay-3);
2368
2437
  }
2369
2438
 
2370
2439
  .panel-accent-blue {
2371
- border-color: rgba(111, 140, 255, 0.35);
2440
+ border-color: var(--ui-accent-overlay-3);
2372
2441
  }
2373
2442
 
2374
2443
  .panel-accent-amber {
2375
- border-color: rgba(255, 159, 67, 0.4);
2444
+ border-color: var(--ui-accent-overlay-4);
2376
2445
  }
2377
2446
 
2378
2447
  .panel-accent-violet {
2379
- border-color: rgba(191, 126, 255, 0.35);
2448
+ border-color: var(--ui-accent-overlay-3);
2380
2449
  }
2381
2450
 
2382
2451
  .scene-panel-body {
@@ -2397,9 +2466,9 @@
2397
2466
 
2398
2467
  /* Device Frame Styling - The "Phone" Look */
2399
2468
  .device-frame {
2400
- box-shadow: 0 0 0 1px rgba(30, 30, 30, 0.08), 0 8px 20px rgba(30, 30, 30, 0.15);
2469
+ box-shadow: 0 0 0 1px var(--ui-overlay-dark-1), 0 8px 20px var(--ui-overlay-dark-1);
2401
2470
  border-radius: 14px;
2402
- background-color: #000;
2471
+ background-color: var(--ui-device-frame-bg);
2403
2472
  transition: width var(--ui-duration-normal) var(--ui-ease), height var(--ui-duration-normal) var(--ui-ease);
2404
2473
  overflow: hidden;
2405
2474
  position: relative;
@@ -2412,7 +2481,7 @@
2412
2481
  align-items: center;
2413
2482
  transform-origin: center center;
2414
2483
  transition: transform var(--ui-duration-normal) cubic-bezier(0.25, 0.46, 0.45, 0.94);
2415
- filter: drop-shadow(0 6px 16px rgba(30, 30, 30, 0.12));
2484
+ filter: drop-shadow(0 6px 16px var(--ui-overlay-dark-1));
2416
2485
  }
2417
2486
 
2418
2487
  /* ========== 05-console.css ========== */
@@ -2460,7 +2529,7 @@
2460
2529
 
2461
2530
  .console-msg.type-error {
2462
2531
  color: var(--ui-danger);
2463
- background: rgba(217, 117, 88, 0.1);
2532
+ background: var(--ui-danger-overlay-1);
2464
2533
  }
2465
2534
 
2466
2535
  .console-msg.type-warn {
@@ -2558,7 +2627,7 @@
2558
2627
 
2559
2628
  .console-msg.type-warn {
2560
2629
  color: var(--ui-accent-2);
2561
- background: rgba(201, 162, 140, 0.1);
2630
+ background: var(--ui-accent-2-overlay-1);
2562
2631
  }
2563
2632
 
2564
2633
  /* ========== 06-debug-overlay.css ========== */
@@ -2681,23 +2750,23 @@
2681
2750
  margin-bottom: 12px;
2682
2751
  padding: 6px 10px;
2683
2752
  border-radius: 8px;
2684
- background: rgba(255, 255, 255, 0.04);
2685
- border: 1px solid rgba(255, 255, 255, 0.08);
2753
+ background: var(--ui-surface-2);
2754
+ border: 1px solid var(--ui-border);
2686
2755
  }
2687
2756
 
2688
2757
  .override-status[data-state="diff"] {
2689
- color: #ffd36b;
2690
- border-color: rgba(255, 211, 107, 0.4);
2758
+ color: var(--ui-status-warning);
2759
+ border-color: var(--ui-status-warning-border);
2691
2760
  }
2692
2761
 
2693
2762
  .override-status[data-state="match"] {
2694
- color: #9fe7c5;
2695
- border-color: rgba(159, 231, 197, 0.4);
2763
+ color: var(--ui-status-success);
2764
+ border-color: var(--ui-status-success-border);
2696
2765
  }
2697
2766
 
2698
2767
  .override-status[data-state="saved"] {
2699
- color: #9fc4ff;
2700
- border-color: rgba(159, 196, 255, 0.35);
2768
+ color: var(--ui-status-info);
2769
+ border-color: var(--ui-status-info-border);
2701
2770
  }
2702
2771
 
2703
2772
  .debug-header {
@@ -2705,8 +2774,8 @@
2705
2774
  align-items: center;
2706
2775
  justify-content: space-between;
2707
2776
  padding: 12px 16px;
2708
- border-bottom: 1px solid #444;
2709
- background-color: #252525;
2777
+ border-bottom: 1px solid var(--ui-border);
2778
+ background-color: var(--ui-bg-2);
2710
2779
  border-radius: 8px 8px 0 0;
2711
2780
  cursor: move;
2712
2781
  user-select: none;
@@ -2716,16 +2785,16 @@
2716
2785
  display: flex;
2717
2786
  gap: 6px;
2718
2787
  padding: 8px 12px;
2719
- border-bottom: 1px solid #333;
2720
- background-color: #1f1f1f;
2788
+ border-bottom: 1px solid var(--ui-border);
2789
+ background-color: var(--ui-surface-2);
2721
2790
  }
2722
2791
 
2723
2792
  .debug-tab {
2724
2793
  flex: 1;
2725
- border: 1px solid #444;
2794
+ border: 1px solid var(--ui-border);
2726
2795
  border-radius: 6px;
2727
- background-color: #262626;
2728
- color: #bfc3c7;
2796
+ background-color: var(--ui-surface);
2797
+ color: var(--ui-muted);
2729
2798
  font-size: 12px;
2730
2799
  padding: 6px 10px;
2731
2800
  cursor: pointer;
@@ -2733,15 +2802,15 @@
2733
2802
  }
2734
2803
 
2735
2804
  .debug-tab.active {
2736
- background-color: #323232;
2805
+ background-color: var(--ui-surface-2);
2737
2806
  color: var(--ui-text);
2738
- border-color: #ffb43b;
2739
- box-shadow: inset 0 0 0 1px rgba(255, 180, 59, 0.35);
2807
+ border-color: var(--ui-accent);
2808
+ box-shadow: inset 0 0 0 1px var(--ui-accent-overlay-3);
2740
2809
  }
2741
2810
 
2742
2811
  .debug-hint {
2743
2812
  font-size: 11px;
2744
- color: #9aa0a6;
2813
+ color: var(--ui-muted);
2745
2814
  margin-bottom: 10px;
2746
2815
  }
2747
2816
 
@@ -2754,9 +2823,9 @@
2754
2823
  }
2755
2824
 
2756
2825
  .debug-collapsible {
2757
- border: 1px solid rgba(255, 255, 255, 0.08);
2826
+ border: 1px solid var(--ui-border);
2758
2827
  border-radius: 10px;
2759
- background-color: rgba(21, 26, 36, 0.85);
2828
+ background-color: var(--ui-surface);
2760
2829
  overflow: hidden;
2761
2830
  margin-bottom: 12px;
2762
2831
  }
@@ -2768,7 +2837,7 @@
2768
2837
  justify-content: space-between;
2769
2838
  gap: 12px;
2770
2839
  padding: 10px 12px;
2771
- background-color: rgba(24, 30, 42, 0.9);
2840
+ background-color: var(--ui-bg-2);
2772
2841
  border: none;
2773
2842
  color: var(--ui-text);
2774
2843
  font-size: 12px;
@@ -2805,17 +2874,17 @@
2805
2874
  }
2806
2875
 
2807
2876
  .debug-arrow-btn {
2808
- border: 1px solid #444;
2877
+ border: 1px solid var(--ui-border);
2809
2878
  border-radius: 6px;
2810
- background-color: #2b2b2b;
2811
- color: #e7e7e7;
2879
+ background-color: var(--ui-surface);
2880
+ color: var(--ui-text);
2812
2881
  font-size: 14px;
2813
2882
  cursor: pointer;
2814
2883
  transition: all 0.15s var(--ui-ease);
2815
2884
  }
2816
2885
 
2817
2886
  .debug-arrow-btn:hover {
2818
- border-color: #ffb43b;
2887
+ border-color: var(--ui-accent);
2819
2888
  color: var(--ui-text);
2820
2889
  }
2821
2890
 
@@ -2845,8 +2914,8 @@
2845
2914
  gap: 8px;
2846
2915
  padding: 8px;
2847
2916
  border-radius: 6px;
2848
- background-color: rgba(25, 30, 40, 0.8);
2849
- border: 1px solid rgba(255, 255, 255, 0.08);
2917
+ background-color: var(--ui-surface-2);
2918
+ border: 1px solid var(--ui-border);
2850
2919
  }
2851
2920
 
2852
2921
  .debug-info-row {
@@ -2858,11 +2927,11 @@
2858
2927
  }
2859
2928
 
2860
2929
  .debug-info-label {
2861
- color: #9aa0a6;
2930
+ color: var(--ui-muted);
2862
2931
  }
2863
2932
 
2864
2933
  .debug-info-value {
2865
- color: #f1f3f5;
2934
+ color: var(--ui-text);
2866
2935
  font-weight: 600;
2867
2936
  }
2868
2937
 
@@ -2879,8 +2948,8 @@
2879
2948
 
2880
2949
  .debug-action-btn {
2881
2950
  background-color: transparent;
2882
- color: #ccc;
2883
- border: 1px solid #555;
2951
+ color: var(--ui-muted);
2952
+ border: 1px solid var(--ui-border);
2884
2953
  border-radius: 3px;
2885
2954
  padding: 4px 8px;
2886
2955
  font-size: 11px;
@@ -2898,7 +2967,7 @@
2898
2967
  max-width: 140px;
2899
2968
  max-height: 140px;
2900
2969
  border-radius: 10px;
2901
- border: 1px solid rgba(255, 255, 255, 0.1);
2970
+ border: 1px solid var(--ui-border);
2902
2971
  }
2903
2972
 
2904
2973
  .brand-vision-panel .vision-raw-block {
@@ -2961,8 +3030,8 @@
2961
3030
  height: 80px;
2962
3031
  object-fit: cover;
2963
3032
  border-radius: 10px;
2964
- border: 1px solid rgba(255, 255, 255, 0.1);
2965
- background: rgba(0, 0, 0, 0.2);
3033
+ border: 1px solid var(--ui-border);
3034
+ background: var(--ui-overlay-dark-1);
2966
3035
  }
2967
3036
 
2968
3037
  .brand-vision-panel .vision-mapping-actions {
@@ -2978,7 +3047,7 @@
2978
3047
  }
2979
3048
 
2980
3049
  .debug-action-btn:hover {
2981
- background-color: #444;
3050
+ background-color: var(--ui-surface-2);
2982
3051
  color: var(--ui-text);
2983
3052
  }
2984
3053
 
@@ -2995,7 +3064,7 @@
2995
3064
  .panel-section {
2996
3065
  margin-bottom: 16px;
2997
3066
  padding-bottom: 12px;
2998
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
3067
+ border-bottom: 1px solid var(--ui-border);
2999
3068
  }
3000
3069
 
3001
3070
  .panel-section:last-child {
@@ -3032,7 +3101,7 @@
3032
3101
  text-transform: uppercase;
3033
3102
  letter-spacing: 0.5px;
3034
3103
  margin-bottom: 8px;
3035
- border-bottom: 1px solid rgba(255, 255, 255, 0.08);
3104
+ border-bottom: 1px solid var(--ui-border);
3036
3105
  padding-bottom: 4px;
3037
3106
  }
3038
3107
 
@@ -3043,7 +3112,7 @@
3043
3112
  .debug-field label {
3044
3113
  display: block;
3045
3114
  font-size: 11px;
3046
- color: #aaa;
3115
+ color: var(--ui-muted);
3047
3116
  margin-bottom: 4px;
3048
3117
  font-weight: 500;
3049
3118
  }
@@ -3051,7 +3120,7 @@
3051
3120
  .debug-field input,
3052
3121
  .debug-field select {
3053
3122
  width: 100%;
3054
- background-color: var(--ui-surface);
3123
+ background-color: var(--ui-surface-2);
3055
3124
  color: var(--ui-text);
3056
3125
  border: 1px solid var(--ui-border);
3057
3126
  border-radius: 4px;
@@ -3064,15 +3133,16 @@
3064
3133
  .debug-field input:focus,
3065
3134
  .debug-field select:focus {
3066
3135
  outline: none;
3067
- border-color: var(--ui-accent-3);
3068
- box-shadow: 0 0 0 2px rgba(111, 140, 255, 0.2);
3136
+ background: var(--ui-surface);
3137
+ border-color: var(--ui-accent);
3138
+ box-shadow: 0 0 0 2px rgba(227, 138, 90, 0.15);
3069
3139
  }
3070
3140
 
3071
3141
  .debug-field input[type="range"] {
3072
3142
  -webkit-appearance: none;
3073
3143
  appearance: none;
3074
3144
  height: 6px;
3075
- background: #555;
3145
+ background: var(--ui-border);
3076
3146
  border-radius: 3px;
3077
3147
  outline: none;
3078
3148
  }
@@ -3128,9 +3198,9 @@
3128
3198
 
3129
3199
  .debug-btn {
3130
3200
  flex: 1;
3131
- background-color: #444;
3201
+ background-color: var(--ui-surface-2);
3132
3202
  color: var(--ui-text);
3133
- border: 1px solid #666;
3203
+ border: 1px solid var(--ui-border);
3134
3204
  border-radius: 4px;
3135
3205
  padding: 6px 8px;
3136
3206
  font-size: 11px;
@@ -3139,39 +3209,40 @@
3139
3209
  }
3140
3210
 
3141
3211
  .debug-btn:hover {
3142
- background-color: #555;
3212
+ background-color: var(--ui-surface);
3143
3213
  border-color: var(--ui-muted);
3144
3214
  }
3145
3215
 
3146
3216
  .debug-btn.primary {
3147
- background-color: #2a5bd7;
3148
- border-color: #2a5bd7;
3217
+ background-color: var(--ui-accent);
3218
+ border-color: var(--ui-accent);
3149
3219
  }
3150
3220
 
3151
3221
  .debug-btn.primary:hover {
3152
- background-color: #2147a7;
3153
- border-color: #2147a7;
3222
+ background-color: var(--ui-terracotta-hover);
3223
+ border-color: var(--ui-terracotta-hover);
3154
3224
  }
3155
3225
 
3156
3226
  .debug-btn.danger {
3157
- background-color: #dc3545;
3158
- border-color: #dc3545;
3227
+ background-color: var(--ui-danger);
3228
+ border-color: var(--ui-danger);
3159
3229
  }
3160
3230
 
3161
3231
  .debug-btn.danger:hover {
3162
- background-color: #c82333;
3163
- border-color: #c82333;
3232
+ background-color: var(--ui-danger);
3233
+ border-color: var(--ui-danger);
3234
+ opacity: 0.9;
3164
3235
  }
3165
3236
 
3166
3237
  .debug-btn.secondary {
3167
- background-color: rgba(61, 214, 198, 0.1);
3168
- border-color: rgba(61, 214, 198, 0.3);
3238
+ background-color: var(--ui-accent-overlay-1);
3239
+ border-color: var(--ui-accent-overlay-3);
3169
3240
  color: var(--ui-accent);
3170
3241
  }
3171
3242
 
3172
3243
  .debug-btn.secondary:hover {
3173
- background-color: rgba(61, 214, 198, 0.2);
3174
- border-color: rgba(61, 214, 198, 0.4);
3244
+ background-color: var(--ui-accent-overlay-2);
3245
+ border-color: var(--ui-accent-overlay-4);
3175
3246
  }
3176
3247
 
3177
3248
  /* -------------------------------------------------------------------------- */
@@ -3235,18 +3306,18 @@
3235
3306
  border-radius: 8px;
3236
3307
  cursor: pointer;
3237
3308
  transition: all var(--ui-duration-fast) var(--ui-ease);
3238
- background: rgba(25, 30, 40, 0.8);
3309
+ background: var(--ui-surface-2);
3239
3310
  }
3240
3311
 
3241
3312
  .library-item:hover {
3242
- border-color: rgba(61, 214, 198, 0.5);
3243
- background: rgba(61, 214, 198, 0.1);
3313
+ border-color: var(--ui-accent-overlay-5);
3314
+ background: var(--ui-accent-overlay-1);
3244
3315
  }
3245
3316
 
3246
3317
  .library-item.selected {
3247
- border-color: rgba(61, 214, 198, 0.8);
3248
- background: rgba(61, 214, 198, 0.15);
3249
- box-shadow: 0 0 0 1px rgba(61, 214, 198, 0.4);
3318
+ border-color: var(--ui-accent);
3319
+ background: var(--ui-accent-overlay-2);
3320
+ box-shadow: 0 0 0 1px var(--ui-accent-overlay-4);
3250
3321
  }
3251
3322
 
3252
3323
  .library-thumbnail {
@@ -3254,7 +3325,7 @@
3254
3325
  height: 40px;
3255
3326
  object-fit: cover;
3256
3327
  border-radius: 4px;
3257
- border: 1px solid rgba(255, 255, 255, 0.1);
3328
+ border: 1px solid var(--ui-border);
3258
3329
  }
3259
3330
 
3260
3331
  .library-label {
@@ -3269,9 +3340,9 @@
3269
3340
  color: var(--ui-text);
3270
3341
  margin: 12px 0;
3271
3342
  padding: 8px;
3272
- background: rgba(25, 30, 40, 0.8);
3343
+ background: var(--ui-surface-2);
3273
3344
  border-radius: 6px;
3274
- border: 1px solid rgba(255, 255, 255, 0.08);
3345
+ border: 1px solid var(--ui-border);
3275
3346
  }
3276
3347
 
3277
3348
  .library-empty {
@@ -3314,7 +3385,7 @@
3314
3385
  letter-spacing: 0.8px;
3315
3386
  color: var(--ui-accent);
3316
3387
  padding: 6px 8px;
3317
- background: rgba(61, 214, 198, 0.08);
3388
+ background: var(--ui-accent-overlay-1);
3318
3389
  border-radius: 6px;
3319
3390
  margin-bottom: 8px;
3320
3391
  }
@@ -3369,9 +3440,9 @@
3369
3440
 
3370
3441
  .inspector-header {
3371
3442
  padding: 12px;
3372
- background: rgba(24, 30, 42, 0.9);
3443
+ background: var(--ui-surface-2);
3373
3444
  border-radius: 8px;
3374
- border: 1px solid rgba(191, 126, 255, 0.2);
3445
+ border: 1px solid var(--ui-border);
3375
3446
  }
3376
3447
 
3377
3448
  .inspector-object-name {
@@ -3389,8 +3460,8 @@
3389
3460
  }
3390
3461
 
3391
3462
  .inspector-section {
3392
- background: rgba(21, 26, 36, 0.85);
3393
- border: 1px solid rgba(255, 255, 255, 0.06);
3463
+ background: var(--ui-surface);
3464
+ border: 1px solid var(--ui-border);
3394
3465
  border-radius: 8px;
3395
3466
  overflow: hidden;
3396
3467
  }
@@ -3400,8 +3471,8 @@
3400
3471
  align-items: center;
3401
3472
  gap: 6px;
3402
3473
  padding: 6px 10px;
3403
- background: rgba(24, 30, 42, 0.9);
3404
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
3474
+ background: var(--ui-bg-2);
3475
+ border-bottom: 1px solid var(--ui-border);
3405
3476
  cursor: pointer;
3406
3477
  user-select: none;
3407
3478
  }
@@ -3433,7 +3504,7 @@
3433
3504
 
3434
3505
  .ai-tabs {
3435
3506
  display: flex;
3436
- background: rgba(0, 0, 0, 0.2);
3507
+ background: var(--ui-overlay-dark-1);
3437
3508
  border-radius: 8px;
3438
3509
  padding: 4px;
3439
3510
  margin-bottom: 16px;
@@ -3457,7 +3528,7 @@
3457
3528
  }
3458
3529
 
3459
3530
  .ai-tab-btn:hover {
3460
- background: rgba(255, 255, 255, 0.05);
3531
+ background: var(--ui-overlay-light-3);
3461
3532
  }
3462
3533
 
3463
3534
  .ai-tab-btn.active {
@@ -3938,7 +4009,7 @@
3938
4009
 
3939
4010
  .debug-select {
3940
4011
  width: 100%;
3941
- background-color: var(--ui-surface);
4012
+ background-color: var(--ui-surface-2);
3942
4013
  color: var(--ui-text);
3943
4014
  border: 1px solid var(--ui-border);
3944
4015
  border-radius: 4px;
@@ -4017,9 +4088,7 @@
4017
4088
  .inspector-property-label {
4018
4089
  font-size: 10px;
4019
4090
  font-weight: 600;
4020
- color: var(--ui-dark-text);
4021
- /* Use lighter text for dark backgrounds */
4022
- opacity: 0.7;
4091
+ color: var(--ui-muted);
4023
4092
  text-transform: capitalize;
4024
4093
  width: 80px;
4025
4094
  flex-shrink: 0;
@@ -4028,7 +4097,7 @@
4028
4097
  .inspector-input {
4029
4098
  flex: 1;
4030
4099
  min-width: 80px;
4031
- background: var(--ui-surface);
4100
+ background: var(--ui-surface-2);
4032
4101
  color: var(--ui-text);
4033
4102
  border: 1px solid var(--ui-border);
4034
4103
  border-radius: 4px;
@@ -4040,8 +4109,9 @@
4040
4109
 
4041
4110
  .inspector-input:focus {
4042
4111
  outline: none;
4043
- border-color: rgba(227, 138, 90, 0.7);
4044
- box-shadow: 0 0 0 2px rgba(227, 138, 90, 0.18);
4112
+ background: var(--ui-surface);
4113
+ border-color: var(--ui-accent);
4114
+ box-shadow: 0 0 0 2px rgba(227, 138, 90, 0.15);
4045
4115
  }
4046
4116
 
4047
4117
  .inspector-checkbox {
@@ -4053,8 +4123,7 @@
4053
4123
  align-items: center;
4054
4124
  cursor: pointer;
4055
4125
  font-size: 12px;
4056
- color: var(--ui-dark-text);
4057
- /* Use lighter text for dark backgrounds */
4126
+ color: var(--ui-text);
4058
4127
  }
4059
4128
 
4060
4129
  .inspector-image-preview {
@@ -4141,13 +4210,12 @@
4141
4210
  .inspector-object-header {
4142
4211
  font-size: 11px;
4143
4212
  font-weight: 700;
4144
- color: var(--ui-dark-text);
4145
- /* Use lighter text for dark backgrounds */
4213
+ color: var(--ui-text);
4146
4214
  text-transform: uppercase;
4147
4215
  letter-spacing: 0.5px;
4148
4216
  margin-bottom: 8px;
4149
4217
  padding-bottom: 6px;
4150
- border-bottom: 1px solid rgba(255, 255, 255, 0.08);
4218
+ border-bottom: 1px solid var(--ui-border);
4151
4219
  }
4152
4220
 
4153
4221
  .inspector-object-body {
@@ -4169,8 +4237,7 @@
4169
4237
  margin-right: 6px;
4170
4238
  transition: transform var(--ui-duration-fast) var(--ui-ease);
4171
4239
  font-size: 10px;
4172
- color: var(--ui-dark-text);
4173
- opacity: 0.5;
4240
+ color: var(--ui-muted);
4174
4241
  }
4175
4242
 
4176
4243
  .inspector-section.collapsed .inspector-section-arrow {
@@ -4182,8 +4249,7 @@
4182
4249
  }
4183
4250
 
4184
4251
  .inspector-section-title {
4185
- color: var(--ui-dark-text) !important;
4186
- /* Force light text on dark background */
4252
+ color: var(--ui-text);
4187
4253
  font-weight: 700;
4188
4254
  }
4189
4255
 
@@ -4302,14 +4368,14 @@
4302
4368
  }
4303
4369
 
4304
4370
  .library-category-tab:hover {
4305
- background: rgba(227, 138, 90, 0.08);
4371
+ background: var(--ui-accent-overlay-1);
4306
4372
  color: var(--ui-text);
4307
4373
  }
4308
4374
 
4309
4375
  .library-category-tab.active {
4310
- background: rgba(227, 138, 90, 0.12);
4376
+ background: var(--ui-accent-overlay-2);
4311
4377
  color: var(--ui-accent);
4312
- border-color: rgba(227, 138, 90, 0.35);
4378
+ border-color: var(--ui-accent-overlay-3);
4313
4379
  }
4314
4380
 
4315
4381
  /* Individual Slot */
@@ -4322,11 +4388,11 @@
4322
4388
  }
4323
4389
 
4324
4390
  .library-slot:hover {
4325
- border-color: rgba(227, 138, 90, 0.5);
4391
+ border-color: var(--ui-accent-overlay-5);
4326
4392
  }
4327
4393
 
4328
4394
  .library-slot.expanded {
4329
- border-color: rgba(227, 138, 90, 0.55);
4395
+ border-color: var(--ui-accent-overlay-6);
4330
4396
  background: var(--ui-surface-2);
4331
4397
  }
4332
4398
 
@@ -4347,15 +4413,15 @@
4347
4413
  gap: 4px;
4348
4414
  padding: 6px;
4349
4415
  border-radius: 8px;
4350
- border: 1px solid rgba(212, 207, 200, 0.8);
4416
+ border: 1px solid var(--ui-border-overlay-1);
4351
4417
  background: var(--ui-surface);
4352
4418
  cursor: pointer;
4353
4419
  transition: all 0.15s var(--ui-ease);
4354
4420
  }
4355
4421
 
4356
4422
  .library-item:hover {
4357
- background: rgba(227, 138, 90, 0.08);
4358
- border-color: rgba(227, 138, 90, 0.45);
4423
+ background: var(--ui-accent-overlay-1);
4424
+ border-color: var(--ui-accent-overlay-4);
4359
4425
  }
4360
4426
 
4361
4427
  .library-item:active {
@@ -4389,7 +4455,6 @@
4389
4455
  text-align: center;
4390
4456
  }
4391
4457
 
4392
-
4393
4458
  /* ========== 10-ai-tools.css ========== */
4394
4459
  /* 10 Ai Tools */
4395
4460
  /* Auto-generated from preview.css */
@@ -4415,8 +4480,8 @@
4415
4480
  height: 24px;
4416
4481
  object-fit: cover;
4417
4482
  border-radius: 4px;
4418
- border: 1px solid rgba(255, 255, 255, 0.1);
4419
- background: rgba(8, 10, 14, 0.6);
4483
+ border: 1px solid var(--ui-overlay-light-5);
4484
+ background: var(--ui-ai-dark-bg);
4420
4485
  flex-shrink: 0;
4421
4486
  margin-right: 6px;
4422
4487
  }
@@ -4425,10 +4490,10 @@
4425
4490
  width: 12px;
4426
4491
  height: 12px;
4427
4492
  border-radius: 50%;
4428
- border: 1px solid rgba(255, 255, 255, 0.2);
4493
+ border: 1px solid var(--ui-overlay-light-7);
4429
4494
  flex-shrink: 0;
4430
4495
  margin-left: 6px;
4431
- box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
4496
+ box-shadow: 0 0 4px var(--ui-overlay-dark-2);
4432
4497
  }
4433
4498
 
4434
4499
  .scene-object-meta {
@@ -4463,7 +4528,7 @@
4463
4528
  }
4464
4529
 
4465
4530
  .slot-header:hover {
4466
- background: rgba(255, 255, 255, 0.03);
4531
+ background: var(--ui-overlay-light-2);
4467
4532
  }
4468
4533
 
4469
4534
  .slot-current {
@@ -4472,8 +4537,8 @@
4472
4537
  flex-shrink: 0;
4473
4538
  border-radius: 6px;
4474
4539
  overflow: hidden;
4475
- background: rgba(0, 0, 0, 0.3);
4476
- border: 1px solid rgba(255, 255, 255, 0.08);
4540
+ background: var(--ui-overlay-dark-2);
4541
+ border: 1px solid var(--ui-overlay-light-4);
4477
4542
  }
4478
4543
 
4479
4544
  .slot-thumbnail {
@@ -4514,8 +4579,8 @@
4514
4579
  width: 24px;
4515
4580
  height: 24px;
4516
4581
  border-radius: 6px;
4517
- border: 1px solid rgba(255, 255, 255, 0.1);
4518
- background: rgba(255, 255, 255, 0.05);
4582
+ border: 1px solid var(--ui-overlay-light-5);
4583
+ background: var(--ui-overlay-light-3);
4519
4584
  color: var(--ui-muted);
4520
4585
  font-size: 14px;
4521
4586
  cursor: pointer;
@@ -4526,8 +4591,8 @@
4526
4591
  }
4527
4592
 
4528
4593
  .slot-reset:hover {
4529
- background: rgba(255, 90, 90, 0.15);
4530
- border-color: rgba(255, 90, 90, 0.4);
4594
+ background: var(--ui-alert-red-overlay-1);
4595
+ border-color: var(--ui-alert-red-overlay-2);
4531
4596
  color: var(--ui-danger);
4532
4597
  }
4533
4598
 
@@ -4553,9 +4618,9 @@
4553
4618
  }
4554
4619
 
4555
4620
  .staging-group {
4556
- background: rgba(255, 255, 255, 0.02);
4621
+ background: var(--ui-overlay-light-1);
4557
4622
  border-radius: 10px;
4558
- border: 1px solid rgba(255, 255, 255, 0.05);
4623
+ border: 1px solid var(--ui-overlay-light-3);
4559
4624
  overflow: hidden;
4560
4625
  }
4561
4626
 
@@ -4564,8 +4629,8 @@
4564
4629
  align-items: center;
4565
4630
  gap: 8px;
4566
4631
  padding: 8px 12px;
4567
- background: rgba(255, 255, 255, 0.03);
4568
- border-bottom: 1px solid rgba(255, 255, 255, 0.05);
4632
+ background: var(--ui-overlay-light-2);
4633
+ border-bottom: 1px solid var(--ui-overlay-light-3);
4569
4634
  font-size: 12px;
4570
4635
  font-weight: 700;
4571
4636
  }
@@ -4588,7 +4653,7 @@
4588
4653
  align-items: center;
4589
4654
  gap: 8px;
4590
4655
  padding: 6px 4px;
4591
- border-bottom: 1px solid rgba(255, 255, 255, 0.02);
4656
+ border-bottom: 1px solid var(--ui-overlay-light-1);
4592
4657
  }
4593
4658
 
4594
4659
  .staging-item:last-child {
@@ -4609,7 +4674,7 @@
4609
4674
  flex: 1;
4610
4675
  font-size: 11px;
4611
4676
  color: var(--ui-text);
4612
- background: rgba(0, 0, 0, 0.2);
4677
+ background: var(--ui-overlay-dark-1);
4613
4678
  padding: 2px 6px;
4614
4679
  border-radius: 4px;
4615
4680
  font-family: 'JetBrains Mono', 'Consolas', monospace;
@@ -4633,8 +4698,6 @@
4633
4698
  transform: scale(1.2);
4634
4699
  }
4635
4700
 
4636
-
4637
-
4638
4701
  /* ========== 11-modals.css ========== */
4639
4702
  /* 11 Modals */
4640
4703
  /* Auto-generated from preview.css */
@@ -5009,7 +5072,7 @@
5009
5072
  }
5010
5073
 
5011
5074
  .unused-group {
5012
- border-top: 1px dashed rgba(255, 255, 255, 0.1);
5075
+ border-top: 1px dashed var(--ui-overlay-light-5);
5013
5076
  margin-top: 8px;
5014
5077
  padding-top: 8px;
5015
5078
  }
@@ -5041,7 +5104,7 @@
5041
5104
 
5042
5105
  .staging-clear-all {
5043
5106
  background: transparent;
5044
- border: 1px solid rgba(217, 117, 88, 0.3);
5107
+ border: 1px solid var(--ui-danger-overlay-2);
5045
5108
  color: var(--ui-danger);
5046
5109
  font-size: 10px;
5047
5110
  padding: 2px 8px;
@@ -5051,7 +5114,7 @@
5051
5114
  }
5052
5115
 
5053
5116
  .staging-clear-all:hover {
5054
- background: rgba(217, 117, 88, 0.1);
5117
+ background: var(--ui-danger-overlay-1);
5055
5118
  border-color: var(--ui-danger);
5056
5119
  }
5057
5120
 
@@ -5127,7 +5190,7 @@
5127
5190
  flex: 1;
5128
5191
  padding: 6px;
5129
5192
  font-size: 10px;
5130
- background: rgba(255, 255, 255, 0.05);
5193
+ background: var(--ui-overlay-light-3);
5131
5194
  border: 1px solid var(--ui-border);
5132
5195
  border-radius: 6px;
5133
5196
  color: var(--ui-text);
@@ -5135,16 +5198,16 @@
5135
5198
  }
5136
5199
 
5137
5200
  .footer-btn:hover:not(:disabled) {
5138
- background: rgba(255, 255, 255, 0.1);
5201
+ background: var(--ui-overlay-light-5);
5139
5202
  }
5140
5203
 
5141
5204
  .footer-btn.danger {
5142
5205
  color: var(--ui-danger);
5143
- border-color: rgba(255, 92, 112, 0.3);
5206
+ border-color: var(--ui-error-bright-overlay-2);
5144
5207
  }
5145
5208
 
5146
5209
  .footer-btn.danger:hover {
5147
- background: rgba(255, 92, 112, 0.1);
5210
+ background: var(--ui-error-bright-overlay-1);
5148
5211
  border-color: var(--ui-danger);
5149
5212
  }
5150
5213
 
@@ -5157,7 +5220,7 @@
5157
5220
  font-size: 10px;
5158
5221
  color: var(--ui-muted);
5159
5222
  line-height: 1.4;
5160
- background: rgba(227, 138, 90, 0.08);
5223
+ background: var(--ui-accent-overlay-1);
5161
5224
  padding: 8px;
5162
5225
  border-radius: 8px;
5163
5226
  }