osi-cards-lib 1.5.37 → 1.5.38

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.
@@ -326,19 +326,19 @@ $breakpoints: (
326
326
  @mixin osi-spacing() {
327
327
  --spacing-base: 0.25rem;
328
328
 
329
- // Primary spacing scale (fluid)
330
- --space-1: clamp(2px, 0.4vw, 6px);
331
- --space-2: clamp(4px, 0.6vw, 8px);
332
- --space-3: clamp(6px, 0.8vw, 12px);
333
- --space-4: clamp(8px, 1vw, 14px);
334
- --space-5: clamp(10px, 1.2vw, 18px);
335
- --space-6: clamp(12px, 1.4vw, 20px);
336
- --space-7: clamp(14px, 1.6vw, 22px);
337
- --space-8: clamp(16px, 1.8vw, 24px);
338
- --space-9: clamp(18px, 2vw, 28px);
339
- --space-10: clamp(20px, 2.2vw, 32px);
340
- --space-11: clamp(22px, 2.4vw, 36px);
341
- --space-12: clamp(24px, 2.6vw, 40px);
329
+ // Primary spacing scale (fixed)
330
+ --space-1: 2px;
331
+ --space-2: 4px;
332
+ --space-3: 6px;
333
+ --space-4: 8px;
334
+ --space-5: 10px;
335
+ --space-6: 12px;
336
+ --space-7: 14px;
337
+ --space-8: 16px;
338
+ --space-9: 18px;
339
+ --space-10: 20px;
340
+ --space-11: 22px;
341
+ --space-12: 24px;
342
342
 
343
343
  // Semantic spacing aliases
344
344
  --spacing-xs: var(--space-1);
@@ -466,27 +466,34 @@ $breakpoints: (
466
466
  @mixin osi-card-typography($variant: "demo") {
467
467
  // Both demo and integration now use the same compact values
468
468
  // Section Titles
469
- --section-title-font-size: clamp(0.92rem, 0.87rem + 0.2vw, 1.07rem);
469
+ --section-title-font-size: 0.92rem;
470
470
  --section-title-font-weight: 700;
471
471
  --section-title-letter-spacing: -0.02em;
472
472
  --section-title-line-height: 1.3;
473
473
  --section-title-text-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
474
474
 
475
- // Card Titles
476
- --card-title-font-size: clamp(0.83rem, 0.78rem + 0.15vw, 0.93rem);
475
+ // Card Header Title (main card title - larger)
476
+ --card-header-title-font-size: 1.25rem; /* 20px - main card header (reduced by 2px from 22px) */
477
+ --card-header-title-font-size-mobile: 1rem; /* 16px - mobile (reduced by 2px from 18px) */
478
+ --card-header-title-font-weight: 700;
479
+ --card-header-title-letter-spacing: -0.02em;
480
+ --card-header-title-line-height: 1.3;
481
+
482
+ // Card Titles (for items within sections - smaller)
483
+ --card-title-font-size: 0.705rem;
477
484
  --card-title-font-weight: 700;
478
485
  --card-title-letter-spacing: -0.01em;
479
486
  --card-title-line-height: 1.4;
480
487
  --card-title-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.06);
481
488
 
482
489
  // Card Subtitles
483
- --card-subtitle-font-size: clamp(0.65rem, 0.625rem + 0.1vw, 0.7rem);
490
+ --card-subtitle-font-size: 0.65rem;
484
491
  --card-subtitle-font-weight: 500;
485
492
  --card-subtitle-letter-spacing: 0.015em;
486
493
  --card-subtitle-line-height: 1.3;
487
494
 
488
495
  // Card Labels
489
- --card-label-font-size: clamp(0.5rem, 0.48rem + 0.05vw, 0.5rem);
496
+ --card-label-font-size: 0.5rem;
490
497
  --card-label-font-weight: 700;
491
498
  --card-label-letter-spacing: 0.065em;
492
499
  --card-label-line-height: 1.25;
@@ -494,21 +501,21 @@ $breakpoints: (
494
501
  --card-label-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
495
502
 
496
503
  // Card Values
497
- --card-value-font-size: clamp(1rem, 0.95rem + 0.2vw, 1rem);
498
- --card-value-font-size-large: clamp(1.2rem, 1.15rem + 0.2vw, 1.25rem);
499
- --card-value-font-size-xl: clamp(1.25rem, 1.2rem + 0.2vw, 1.25rem);
504
+ --card-value-font-size: 1rem;
505
+ --card-value-font-size-large: 1.2rem;
506
+ --card-value-font-size-xl: 1.25rem;
500
507
  --card-value-font-weight: 600;
501
508
  --card-value-letter-spacing: -0.015em;
502
509
  --card-value-line-height: 1.35;
503
510
  --card-value-text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
504
511
 
505
512
  // Card Meta
506
- --card-meta-font-size: clamp(0.55rem, 0.525rem + 0.1vw, 0.6rem);
513
+ --card-meta-font-size: 0.55rem;
507
514
  --card-meta-font-weight: 500;
508
515
  --card-meta-line-height: 1.3;
509
516
 
510
517
  // Smallest text
511
- --card-text-small-font-size: clamp(0.355rem, 0.295rem + 0.13vw, 0.455rem);
518
+ --card-text-small-font-size: 0.355rem;
512
519
 
513
520
  // Grid min width
514
521
  --section-grid-min-width: 200px;
@@ -527,11 +534,11 @@ $breakpoints: (
527
534
  --section-padding: 12px;
528
535
  --section-container-padding: 12px;
529
536
  --card-min-height: auto;
530
- --card-gap: clamp(6px, 0.6vw, 10px);
531
- --card-gap-large: clamp(10px, 0.8vw, 14px);
532
- --card-nested-gap: clamp(3px, 0.4vw, 6px);
533
- --section-header-gap: clamp(3px, 0.4vw, 6px);
534
- --section-header-padding-bottom: clamp(0px, 0.2vw, 2px);
537
+ --card-gap: 6px;
538
+ --card-gap-large: 10px;
539
+ --card-nested-gap: 3px;
540
+ --section-header-gap: 3px;
541
+ --section-header-padding-bottom: 0px;
535
542
  --section-title-margin-bottom: 0;
536
543
  --card-border-radius: 12px;
537
544
  --card-border-radius-large: 16px;
@@ -647,7 +654,7 @@ $breakpoints: (
647
654
  --osi-card-padding-bottom: var(--card-main-padding);
648
655
  --osi-card-padding-left: var(--card-main-padding);
649
656
  --osi-card-padding-right: var(--card-main-padding);
650
- --osi-card-padding-mobile: var(--space-1);
657
+ --osi-card-padding-mobile: 4px; // Fixed padding - no responsive behavior
651
658
 
652
659
  // Card Spacing - Margins
653
660
  --osi-card-margin-top: 0;
@@ -800,8 +807,8 @@ $breakpoints: (
800
807
  --osi-section-title-line-height: var(--section-title-line-height, 1.3);
801
808
  --osi-section-title-color: var(--card-text-primary);
802
809
  --osi-section-title-margin-bottom: var(--section-title-margin-bottom);
803
- --osi-section-title-underline-length: clamp(var(--space-8), 3vw, var(--space-12));
804
- --osi-section-title-underline-hover-length: clamp(var(--space-10), 4vw, var(--space-12));
810
+ --osi-section-title-underline-length: var(--space-8);
811
+ --osi-section-title-underline-hover-length: var(--space-10);
805
812
  --osi-section-title-underline-height: var(--border-width-accent);
806
813
  --osi-section-title-underline-offset: calc(var(--space-2) * -1);
807
814
  --osi-section-title-underline-color: var(--section-accent, var(--accent, #{$osi-color-brand}));
@@ -1052,50 +1059,53 @@ $breakpoints: (
1052
1059
 
1053
1060
  // Surface tokens - defaults (will be overridden by theme-specific mixins and JavaScript presets)
1054
1061
  // These are fallback values only - actual values come from osi-theme-dark/light mixins or JavaScript presets
1055
- --theme-ai-card-border: 1px solid rgba(0, 0, 0, 0.08);
1056
- --theme-ai-card-border-hover: 1px solid rgba(255, 121, 0, 0.4);
1057
- --theme-ai-card-background: rgba(255, 255, 255, 0.85);
1058
- --theme-ai-card-background-hover: rgba(255, 255, 255, 0.92);
1059
- --theme-ai-card-box-shadow: 0 4px 24px -1px rgba(0, 0, 0, 0.1), 0 0 18px rgba(255, 121, 0, 0.15);
1060
- --theme-ai-card-box-shadow-hover:
1061
- 0 20px 40px -5px rgba(0, 0, 0, 0.15), 0 0 24px rgba(255, 121, 0, 0.25),
1062
- 0 0 0 1px rgba(255, 121, 0, 0.15);
1063
- --theme-ai-card-backdrop-filter: blur(12px);
1064
- --theme-ai-card-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
1065
-
1066
- --theme-card-border: 1px solid rgba(0, 0, 0, 0.08);
1067
- --theme-card-border-hover: var(--color-brand);
1068
- --theme-card-background: var(--background);
1069
- --theme-card-background-hover: color-mix(
1070
- in srgb,
1071
- var(--background) 98%,
1072
- var(--surface-contrast-color) 2%
1073
- );
1074
- --theme-card-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1075
- --theme-card-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.07);
1076
-
1077
- --theme-section-border: 1px solid rgba(0, 0, 0, 0.06);
1078
- --theme-section-border-hover: 1px solid rgba(255, 121, 0, 0.15);
1079
- --theme-section-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
1080
- --theme-section-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.05);
1081
- --theme-section-transition:
1082
- border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1);
1083
- // Flat backgrounds - no color-mix
1084
- --section-background: var(--background);
1085
- --section-background-hover: var(--background);
1086
- --section-surface: var(--background);
1087
- --section-surface-hover: var(--background);
1088
-
1089
- --theme-section-item-border: 1px solid rgba(0, 0, 0, 0.06);
1090
- --theme-section-item-border-hover: 1px solid rgba(255, 121, 0, 0.15);
1091
- --theme-section-item-background: var(--background);
1092
- --theme-section-item-background-hover: var(--background);
1093
- --theme-section-item-box-shadow: var(--shadow-md, 0 1px 2px rgba(0, 0, 0, 0.04));
1094
- --theme-section-item-box-shadow-hover: var(--shadow-lg, 0 1px 3px rgba(0, 0, 0, 0.05));
1095
- --theme-section-item-hover-transform: none;
1096
- --theme-section-item-transition:
1097
- border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), background 0.2s cubic-bezier(0.4, 0, 0.2, 1),
1098
- box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1062
+ & {
1063
+ --theme-ai-card-border: 1px solid rgba(0, 0, 0, 0.08);
1064
+ --theme-ai-card-border-hover: 1px solid rgba(255, 121, 0, 0.4);
1065
+ --theme-ai-card-background: rgba(255, 255, 255, 0.85);
1066
+ --theme-ai-card-background-hover: rgba(255, 255, 255, 0.92);
1067
+ --theme-ai-card-box-shadow:
1068
+ 0 4px 24px -1px rgba(0, 0, 0, 0.1), 0 0 18px rgba(255, 121, 0, 0.15);
1069
+ --theme-ai-card-box-shadow-hover:
1070
+ 0 20px 40px -5px rgba(0, 0, 0, 0.15), 0 0 24px rgba(255, 121, 0, 0.25),
1071
+ 0 0 0 1px rgba(255, 121, 0, 0.15);
1072
+ --theme-ai-card-backdrop-filter: blur(12px);
1073
+ --theme-ai-card-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
1074
+
1075
+ --theme-card-border: 1px solid rgba(0, 0, 0, 0.08);
1076
+ --theme-card-border-hover: var(--color-brand);
1077
+ --theme-card-background: var(--background);
1078
+ --theme-card-background-hover: color-mix(
1079
+ in srgb,
1080
+ var(--background) 98%,
1081
+ var(--surface-contrast-color) 2%
1082
+ );
1083
+ --theme-card-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1084
+ --theme-card-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.07);
1085
+
1086
+ --theme-section-border: 1px solid rgba(0, 0, 0, 0.06);
1087
+ --theme-section-border-hover: 1px solid rgba(255, 121, 0, 0.15);
1088
+ --theme-section-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
1089
+ --theme-section-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.05);
1090
+ --theme-section-transition:
1091
+ border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1);
1092
+ // Flat backgrounds - no color-mix
1093
+ --section-background: var(--background);
1094
+ --section-background-hover: var(--background);
1095
+ --section-surface: var(--background);
1096
+ --section-surface-hover: var(--background);
1097
+
1098
+ --theme-section-item-border: 1px solid rgba(0, 0, 0, 0.06);
1099
+ --theme-section-item-border-hover: 1px solid rgba(255, 121, 0, 0.15);
1100
+ --theme-section-item-background: var(--background);
1101
+ --theme-section-item-background-hover: var(--background);
1102
+ --theme-section-item-box-shadow: var(--shadow-md, 0 1px 2px rgba(0, 0, 0, 0.04));
1103
+ --theme-section-item-box-shadow-hover: var(--shadow-lg, 0 1px 3px rgba(0, 0, 0, 0.05));
1104
+ --theme-section-item-hover-transform: none;
1105
+ --theme-section-item-transition:
1106
+ border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), background 0.2s cubic-bezier(0.4, 0, 0.2, 1),
1107
+ box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1108
+ }
1099
1109
  }
1100
1110
 
1101
1111
  /// Generate dark theme colors
@@ -1122,72 +1132,74 @@ $breakpoints: (
1122
1132
  --card-section-card-bg: #1f1f1f;
1123
1133
 
1124
1134
  // AI Card surface - transparent with blur effect (matches preset)
1125
- --theme-ai-card-border: 1px solid rgba(255, 255, 255, 0.08);
1126
- --theme-ai-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1127
- --theme-ai-card-background: rgba(20, 20, 20, 0.6);
1128
- --theme-ai-card-background-hover: rgba(25, 25, 25, 0.7);
1129
- --theme-ai-card-box-shadow: 0 4px 24px -1px rgba(0, 0, 0, 0.2);
1130
- --theme-ai-card-box-shadow-hover:
1131
- 0 12px 32px -4px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 121, 0, 0.1);
1132
- --theme-ai-card-backdrop-filter: blur(12px);
1133
- --theme-ai-card-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
1134
-
1135
- // Card backgrounds (matches preset)
1136
- --theme-card-border: 1px solid rgba(255, 255, 255, 0.08);
1137
- --theme-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1138
- --theme-card-background: var(--background);
1139
- // Fallback for browsers without color-mix support
1140
- --theme-card-background-hover: rgba(25, 25, 25, 0.7);
1141
- --theme-card-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
1142
- --theme-card-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.4);
1143
-
1144
- // Flat section backgrounds
1145
- --section-background: var(--background);
1146
- --section-background-hover: var(--background);
1147
- --section-surface: #181818;
1148
- --section-surface-hover: #1f1f1f;
1149
- --popover: #111111;
1150
- --popover-foreground: #{$osi-foreground-dark};
1151
- --primary: #{$osi-color-brand};
1152
- --primary-foreground: #{$osi-foreground-dark};
1153
- --secondary: #333333;
1154
- --secondary-foreground: #{$osi-foreground-dark};
1155
- --accent: #{$osi-color-brand};
1156
- --accent-foreground: #{$osi-color-black};
1157
- --destructive: #d4183d;
1158
- --destructive-foreground: #{$osi-foreground-dark};
1159
- --border: rgba(200, 200, 200, 0.3);
1160
- --input: transparent;
1161
- --input-background: #222222;
1162
- --switch-background: #333333;
1163
- --ring: #{$brand-color-60};
1164
- --chart-1: #{$osi-color-brand};
1165
- --chart-2: #{$osi-color-brand-light};
1166
- --chart-3: #{$osi-color-brand-dark};
1167
- --chart-4: #{$osi-color-brand-pale};
1168
- --chart-5: #ff4500;
1169
-
1170
- // Element type overrides - subtle theme-aware hover
1171
- --hero-card-border: 1px solid rgba(233, 233, 233, 0.2);
1172
- --hero-card-border-hover: 1px solid rgba(255, 121, 0, 0.25);
1173
- // Section (matches preset)
1174
- --theme-section-border: 1px solid rgba(255, 255, 255, 0.1);
1175
- --theme-section-border-hover: 1px solid rgba(255, 255, 255, 0.1);
1176
- --theme-section-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
1177
- --theme-section-box-shadow-hover: 0 2px 5px rgba(0, 0, 0, 0.5);
1178
- --theme-section-transition:
1179
- border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1);
1180
- // Section Item (matches preset)
1181
- --theme-section-item-border: 1px solid rgba(255, 255, 255, 0.06);
1182
- --theme-section-item-border-hover: 1px solid rgba(255, 121, 0, 0.08);
1183
- --theme-section-item-background: #202020;
1184
- --theme-section-item-background-hover: #212121;
1185
- --theme-section-item-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
1186
- --theme-section-item-box-shadow-hover: 0 1px 4px rgba(0, 0, 0, 0.3);
1187
- --theme-section-item-hover-transform: none;
1188
- --theme-section-item-transition:
1189
- background 220ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 220ms cubic-bezier(0.4, 0, 0.2, 1),
1190
- border-color 220ms cubic-bezier(0.4, 0, 0.2, 1);
1135
+ & {
1136
+ --theme-ai-card-border: 1px solid rgba(255, 255, 255, 0.08);
1137
+ --theme-ai-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1138
+ --theme-ai-card-background: rgba(20, 20, 20, 0.6);
1139
+ --theme-ai-card-background-hover: rgba(25, 25, 25, 0.7);
1140
+ --theme-ai-card-box-shadow: 0 4px 24px -1px rgba(0, 0, 0, 0.2);
1141
+ --theme-ai-card-box-shadow-hover:
1142
+ 0 12px 32px -4px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 121, 0, 0.1);
1143
+ --theme-ai-card-backdrop-filter: blur(12px);
1144
+ --theme-ai-card-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
1145
+
1146
+ // Card backgrounds (matches preset)
1147
+ --theme-card-border: 1px solid rgba(255, 255, 255, 0.08);
1148
+ --theme-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1149
+ --theme-card-background: var(--background);
1150
+ // Fallback for browsers without color-mix support
1151
+ --theme-card-background-hover: rgba(25, 25, 25, 0.7);
1152
+ --theme-card-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
1153
+ --theme-card-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.4);
1154
+
1155
+ // Flat section backgrounds
1156
+ --section-background: var(--background);
1157
+ --section-background-hover: var(--background);
1158
+ --section-surface: #181818;
1159
+ --section-surface-hover: #1f1f1f;
1160
+ --popover: #111111;
1161
+ --popover-foreground: #{$osi-foreground-dark};
1162
+ --primary: #{$osi-color-brand};
1163
+ --primary-foreground: #{$osi-foreground-dark};
1164
+ --secondary: #333333;
1165
+ --secondary-foreground: #{$osi-foreground-dark};
1166
+ --accent: #{$osi-color-brand};
1167
+ --accent-foreground: #{$osi-color-black};
1168
+ --destructive: #d4183d;
1169
+ --destructive-foreground: #{$osi-foreground-dark};
1170
+ --border: rgba(200, 200, 200, 0.3);
1171
+ --input: transparent;
1172
+ --input-background: #222222;
1173
+ --switch-background: #333333;
1174
+ --ring: #{$brand-color-60};
1175
+ --chart-1: #{$osi-color-brand};
1176
+ --chart-2: #{$osi-color-brand-light};
1177
+ --chart-3: #{$osi-color-brand-dark};
1178
+ --chart-4: #{$osi-color-brand-pale};
1179
+ --chart-5: #ff4500;
1180
+
1181
+ // Element type overrides - subtle theme-aware hover
1182
+ --hero-card-border: 1px solid rgba(233, 233, 233, 0.2);
1183
+ --hero-card-border-hover: 1px solid rgba(255, 121, 0, 0.25);
1184
+ // Section (matches preset)
1185
+ --theme-section-border: 1px solid rgba(255, 255, 255, 0.1);
1186
+ --theme-section-border-hover: 1px solid rgba(255, 255, 255, 0.1);
1187
+ --theme-section-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
1188
+ --theme-section-box-shadow-hover: 0 2px 5px rgba(0, 0, 0, 0.5);
1189
+ --theme-section-transition:
1190
+ border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1);
1191
+ // Section Item (matches preset)
1192
+ --theme-section-item-border: 1px solid rgba(255, 255, 255, 0.06);
1193
+ --theme-section-item-border-hover: 1px solid rgba(255, 121, 0, 0.08);
1194
+ --theme-section-item-background: #202020;
1195
+ --theme-section-item-background-hover: #212121;
1196
+ --theme-section-item-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
1197
+ --theme-section-item-box-shadow-hover: 0 1px 4px rgba(0, 0, 0, 0.3);
1198
+ --theme-section-item-hover-transform: none;
1199
+ --theme-section-item-transition:
1200
+ background 220ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 220ms cubic-bezier(0.4, 0, 0.2, 1),
1201
+ border-color 220ms cubic-bezier(0.4, 0, 0.2, 1);
1202
+ }
1191
1203
  }
1192
1204
 
1193
1205
  /// Generate light theme colors
@@ -1212,85 +1224,88 @@ $breakpoints: (
1212
1224
  }
1213
1225
 
1214
1226
  // Flat light backgrounds - no color-mix
1215
- --card: var(--background);
1216
- --card-surface: var(--background);
1217
- --card-foreground: #{$osi-foreground-light};
1218
- --card-surface-hover: var(--background);
1219
- --card-section-bg: #fcfcfc;
1220
- --card-section-card-bg: #f8f8f8;
1221
-
1222
- // AI Card surface - light theme with blur (matches preset)
1223
- --theme-ai-card-border: 1px solid rgba(0, 0, 0, 0.08);
1224
- --theme-ai-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1225
- --theme-ai-card-background: rgba(255, 255, 255, 0.85);
1226
- --theme-ai-card-background-hover: rgba(255, 255, 255, 0.88);
1227
- --theme-ai-card-box-shadow: 0 4px 24px -1px rgba(0, 0, 0, 0.1), 0 0 18px rgba(255, 121, 0, 0.15);
1228
- --theme-ai-card-box-shadow-hover:
1229
- 0 12px 32px -4px rgba(0, 0, 0, 0.12), 0 0 20px rgba(255, 121, 0, 0.18),
1230
- 0 0 0 1px rgba(255, 121, 0, 0.1);
1231
- --theme-ai-card-backdrop-filter: blur(12px);
1232
- --theme-ai-card-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
1233
-
1234
- // Card backgrounds (matches preset)
1235
- --theme-card-border: 1px solid rgba(0, 0, 0, 0.08);
1236
- --theme-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1237
- --theme-card-background: var(--background);
1238
- // Fallback for browsers without color-mix support
1239
- --theme-card-background-hover: rgba(255, 255, 255, 0.88);
1240
- --theme-card-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1241
- --theme-card-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.06);
1242
-
1243
- // Flat section backgrounds
1244
- --section-background: var(--background);
1245
- --section-background-hover: var(--background);
1246
- --section-surface: #fcfcfc;
1247
- --section-surface-hover: #f8f8f8;
1248
- --popover: #{$osi-color-white};
1249
- --popover-foreground: #1a1a1a;
1250
- --primary: #{$osi-color-brand};
1251
- --primary-foreground: #{$osi-color-white};
1252
- --secondary: #f5f5f5;
1253
- --secondary-foreground: #1a1a1a;
1254
- --accent: #{$osi-color-brand};
1255
- --accent-foreground: #{$osi-color-white};
1256
- --destructive: #d4183d;
1257
- --destructive-foreground: #{$osi-color-white};
1258
- --border: rgba(200, 200, 200, 0.5);
1259
- --input: transparent;
1260
- --input-background: #f9f9f9;
1261
- --switch-background: #e5e5e5;
1262
- --ring: #{$brand-color-40};
1263
- --chart-1: #{$osi-color-brand};
1264
- --chart-2: #{$osi-color-brand-light};
1265
- --chart-3: #{$osi-color-brand-dark};
1266
- --chart-4: #{$osi-color-brand-pale};
1267
- --chart-5: #ff4500;
1268
-
1269
- // Light theme gray overrides
1270
- --color-gray-700: #e0e0e0;
1271
- --color-gray-600: #d0d0d0;
1272
-
1273
- // Element type overrides - subtle theme-aware hover
1274
- --hero-card-border: 1px solid rgba(146, 153, 158, 0.25);
1275
- --hero-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1276
- // Section (matches preset)
1277
- --theme-section-border: 1px solid rgba(0, 0, 0, 0.08);
1278
- --theme-section-border-hover: 1px solid rgba(0, 0, 0, 0.1);
1279
- --theme-section-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1280
- --theme-section-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.07);
1281
- --theme-section-transition:
1282
- border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1);
1283
- // Section Item (matches preset)
1284
- --theme-section-item-border: 1px solid rgba(0, 0, 0, 0.06);
1285
- --theme-section-item-border-hover: 1px solid rgba(255, 121, 0, 0.08);
1286
- --theme-section-item-background: #f9f9f9;
1287
- --theme-section-item-background-hover: #f7f7f7;
1288
- --theme-section-item-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
1289
- --theme-section-item-box-shadow-hover: 0 1px 3px rgba(0, 0, 0, 0.05);
1290
- --theme-section-item-hover-transform: none;
1291
- --theme-section-item-transition:
1292
- background 220ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 220ms cubic-bezier(0.4, 0, 0.2, 1),
1293
- border-color 220ms cubic-bezier(0.4, 0, 0.2, 1);
1227
+ & {
1228
+ --card: var(--background);
1229
+ --card-surface: var(--background);
1230
+ --card-foreground: #{$osi-foreground-light};
1231
+ --card-surface-hover: var(--background);
1232
+ --card-section-bg: #fcfcfc;
1233
+ --card-section-card-bg: #f8f8f8;
1234
+
1235
+ // AI Card surface - light theme with blur (matches preset)
1236
+ --theme-ai-card-border: 1px solid rgba(0, 0, 0, 0.08);
1237
+ --theme-ai-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1238
+ --theme-ai-card-background: rgba(255, 255, 255, 0.85);
1239
+ --theme-ai-card-background-hover: rgba(255, 255, 255, 0.88);
1240
+ --theme-ai-card-box-shadow:
1241
+ 0 4px 24px -1px rgba(0, 0, 0, 0.1), 0 0 18px rgba(255, 121, 0, 0.15);
1242
+ --theme-ai-card-box-shadow-hover:
1243
+ 0 12px 32px -4px rgba(0, 0, 0, 0.12), 0 0 20px rgba(255, 121, 0, 0.18),
1244
+ 0 0 0 1px rgba(255, 121, 0, 0.1);
1245
+ --theme-ai-card-backdrop-filter: blur(12px);
1246
+ --theme-ai-card-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
1247
+
1248
+ // Card backgrounds (matches preset)
1249
+ --theme-card-border: 1px solid rgba(0, 0, 0, 0.08);
1250
+ --theme-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1251
+ --theme-card-background: var(--background);
1252
+ // Fallback for browsers without color-mix support
1253
+ --theme-card-background-hover: rgba(255, 255, 255, 0.88);
1254
+ --theme-card-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1255
+ --theme-card-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.06);
1256
+
1257
+ // Flat section backgrounds
1258
+ --section-background: var(--background);
1259
+ --section-background-hover: var(--background);
1260
+ --section-surface: #fcfcfc;
1261
+ --section-surface-hover: #f8f8f8;
1262
+ --popover: #{$osi-color-white};
1263
+ --popover-foreground: #1a1a1a;
1264
+ --primary: #{$osi-color-brand};
1265
+ --primary-foreground: #{$osi-color-white};
1266
+ --secondary: #f5f5f5;
1267
+ --secondary-foreground: #1a1a1a;
1268
+ --accent: #{$osi-color-brand};
1269
+ --accent-foreground: #{$osi-color-white};
1270
+ --destructive: #d4183d;
1271
+ --destructive-foreground: #{$osi-color-white};
1272
+ --border: rgba(200, 200, 200, 0.5);
1273
+ --input: transparent;
1274
+ --input-background: #f9f9f9;
1275
+ --switch-background: #e5e5e5;
1276
+ --ring: #{$brand-color-40};
1277
+ --chart-1: #{$osi-color-brand};
1278
+ --chart-2: #{$osi-color-brand-light};
1279
+ --chart-3: #{$osi-color-brand-dark};
1280
+ --chart-4: #{$osi-color-brand-pale};
1281
+ --chart-5: #ff4500;
1282
+
1283
+ // Light theme gray overrides
1284
+ --color-gray-700: #e0e0e0;
1285
+ --color-gray-600: #d0d0d0;
1286
+
1287
+ // Element type overrides - subtle theme-aware hover
1288
+ --hero-card-border: 1px solid rgba(146, 153, 158, 0.25);
1289
+ --hero-card-border-hover: 1px solid rgba(255, 121, 0, 0.2);
1290
+ // Section (matches preset)
1291
+ --theme-section-border: 1px solid rgba(0, 0, 0, 0.08);
1292
+ --theme-section-border-hover: 1px solid rgba(0, 0, 0, 0.1);
1293
+ --theme-section-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1294
+ --theme-section-box-shadow-hover: 0 2px 4px rgba(0, 0, 0, 0.07);
1295
+ --theme-section-transition:
1296
+ border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1);
1297
+ // Section Item (matches preset)
1298
+ --theme-section-item-border: 1px solid rgba(0, 0, 0, 0.06);
1299
+ --theme-section-item-border-hover: 1px solid rgba(255, 121, 0, 0.08);
1300
+ --theme-section-item-background: #f9f9f9;
1301
+ --theme-section-item-background-hover: #f7f7f7;
1302
+ --theme-section-item-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
1303
+ --theme-section-item-box-shadow-hover: 0 1px 3px rgba(0, 0, 0, 0.05);
1304
+ --theme-section-item-hover-transform: none;
1305
+ --theme-section-item-transition:
1306
+ background 220ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 220ms cubic-bezier(0.4, 0, 0.2, 1),
1307
+ border-color 220ms cubic-bezier(0.4, 0, 0.2, 1);
1308
+ }
1294
1309
  }
1295
1310
 
1296
1311
  // ============================================