@speechos/client 0.2.10 → 0.2.11

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.
package/dist/index.cjs CHANGED
@@ -259,6 +259,17 @@ class FormDetector {
259
259
  document.addEventListener("touchstart", this.touchHandler, true);
260
260
  document.addEventListener("mousedown", this.mouseDownHandler, true);
261
261
  this.isActive = true;
262
+ // Check for already-focused form field (e.g., page loaded with autofocus)
263
+ const activeElement = document.activeElement;
264
+ if (isFormField(activeElement)) {
265
+ console.log("[SpeechOS] FormDetector: found initially focused form field", {
266
+ element: activeElement,
267
+ tagName: activeElement?.tagName,
268
+ });
269
+ core.state.setFocusedElement(activeElement);
270
+ core.state.show();
271
+ core.events.emit("form:focus", { element: activeElement });
272
+ }
262
273
  }
263
274
  /**
264
275
  * Stop detecting form field focus events
@@ -1728,9 +1739,9 @@ const themeStyles = i$4 `
1728
1739
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
1729
1740
 
1730
1741
  /* Color tokens */
1731
- --speechos-primary: #10B981;
1732
- --speechos-primary-hover: #059669;
1733
- --speechos-primary-active: #047857;
1742
+ --speechos-primary: #0d9488;
1743
+ --speechos-primary-hover: #0f766e;
1744
+ --speechos-primary-active: #115e59;
1734
1745
 
1735
1746
  --speechos-bg: #ffffff;
1736
1747
  --speechos-bg-hover: #f9fafb;
@@ -2295,45 +2306,51 @@ let SpeechOSMicButton = class SpeechOSMicButton extends i$1 {
2295
2306
  width: 56px;
2296
2307
  height: 56px;
2297
2308
  border-radius: var(--speechos-radius-full);
2298
- background: linear-gradient(135deg, #10b981 0%, #059669 100%);
2309
+ background: #10b981;
2299
2310
  border: none;
2300
2311
  cursor: pointer;
2301
2312
  display: flex;
2302
2313
  align-items: center;
2303
2314
  justify-content: center;
2304
2315
  color: white;
2305
- box-shadow: 0 4px 12px rgba(16, 185, 129, 0.4);
2306
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
2316
+ box-shadow: 0 4px 16px rgba(16, 185, 129, 0.35);
2317
+ transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
2307
2318
  position: relative;
2308
2319
  overflow: hidden;
2309
2320
  }
2310
2321
 
2311
2322
  .mic-button:hover {
2323
+ background: #059669;
2312
2324
  transform: scale(1.05);
2313
- box-shadow: 0 6px 20px rgba(16, 185, 129, 0.5);
2325
+ box-shadow: 0 6px 24px rgba(16, 185, 129, 0.45);
2314
2326
  }
2315
2327
 
2316
2328
  .mic-button:active {
2317
2329
  transform: scale(0.98);
2318
2330
  }
2319
2331
 
2332
+ .mic-button:focus {
2333
+ outline: none;
2334
+ box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.4), 0 4px 16px rgba(16, 185, 129, 0.35);
2335
+ }
2336
+
2320
2337
  /* Expanded state - bubbles visible */
2321
2338
  .mic-button.expanded {
2322
- background: linear-gradient(135deg, #059669 0%, #047857 100%);
2339
+ background: #059669;
2323
2340
  }
2324
2341
 
2325
2342
  /* Connecting state - Siri-style metallic spinner */
2326
2343
  .mic-button.connecting {
2327
2344
  background: radial-gradient(
2328
2345
  circle at 30% 30%,
2329
- #34d399 0%,
2330
- #10b981 40%,
2331
- #059669 70%,
2332
- #047857 100%
2346
+ #2dd4bf 0%,
2347
+ #14b8a6 40%,
2348
+ #0d9488 70%,
2349
+ #0f766e 100%
2333
2350
  );
2334
2351
  cursor: wait;
2335
- box-shadow: 0 0 20px rgba(16, 185, 129, 0.4),
2336
- 0 0 40px rgba(16, 185, 129, 0.2),
2352
+ box-shadow: 0 0 20px rgba(13, 148, 136, 0.4),
2353
+ 0 0 40px rgba(13, 148, 136, 0.2),
2337
2354
  inset 0 0 20px rgba(255, 255, 255, 0.1);
2338
2355
  }
2339
2356
 
@@ -2376,15 +2393,15 @@ let SpeechOSMicButton = class SpeechOSMicButton extends i$1 {
2376
2393
  background: conic-gradient(
2377
2394
  from 0deg,
2378
2395
  transparent 0deg,
2379
- rgba(52, 211, 153, 0.1) 30deg,
2380
- rgba(16, 185, 129, 0.8) 90deg,
2396
+ rgba(45, 212, 191, 0.1) 30deg,
2397
+ rgba(13, 148, 136, 0.8) 90deg,
2381
2398
  rgba(255, 255, 255, 0.95) 120deg,
2382
- rgba(52, 211, 153, 0.9) 150deg,
2383
- rgba(16, 185, 129, 0.6) 180deg,
2384
- rgba(5, 150, 105, 0.3) 210deg,
2399
+ rgba(45, 212, 191, 0.9) 150deg,
2400
+ rgba(13, 148, 136, 0.6) 180deg,
2401
+ rgba(15, 118, 110, 0.3) 210deg,
2385
2402
  transparent 270deg,
2386
- rgba(110, 231, 183, 0.2) 300deg,
2387
- rgba(16, 185, 129, 0.5) 330deg,
2403
+ rgba(94, 234, 212, 0.2) 300deg,
2404
+ rgba(13, 148, 136, 0.5) 330deg,
2388
2405
  transparent 360deg
2389
2406
  );
2390
2407
  -webkit-mask: linear-gradient(#fff 0 0) content-box,
@@ -2405,13 +2422,13 @@ let SpeechOSMicButton = class SpeechOSMicButton extends i$1 {
2405
2422
  background: conic-gradient(
2406
2423
  from 180deg,
2407
2424
  transparent 0deg,
2408
- rgba(167, 243, 208, 0.3) 60deg,
2425
+ rgba(153, 246, 228, 0.3) 60deg,
2409
2426
  rgba(255, 255, 255, 0.7) 90deg,
2410
- rgba(110, 231, 183, 0.5) 120deg,
2427
+ rgba(94, 234, 212, 0.5) 120deg,
2411
2428
  transparent 180deg,
2412
- rgba(52, 211, 153, 0.2) 240deg,
2429
+ rgba(45, 212, 191, 0.2) 240deg,
2413
2430
  rgba(255, 255, 255, 0.5) 270deg,
2414
- rgba(16, 185, 129, 0.4) 300deg,
2431
+ rgba(13, 148, 136, 0.4) 300deg,
2415
2432
  transparent 360deg
2416
2433
  );
2417
2434
  -webkit-mask: linear-gradient(#fff 0 0) content-box,
@@ -2452,8 +2469,8 @@ let SpeechOSMicButton = class SpeechOSMicButton extends i$1 {
2452
2469
  border-radius: 50%;
2453
2470
  background: radial-gradient(
2454
2471
  circle,
2455
- rgba(16, 185, 129, 0.4) 0%,
2456
- rgba(16, 185, 129, 0.15) 40%,
2472
+ rgba(13, 148, 136, 0.4) 0%,
2473
+ rgba(13, 148, 136, 0.15) 40%,
2457
2474
  transparent 70%
2458
2475
  );
2459
2476
  animation: siri-glow-pulse 2s ease-in-out infinite;
@@ -3873,15 +3890,15 @@ const modalLayoutStyles = i$4 `
3873
3890
  }
3874
3891
 
3875
3892
  .modal {
3876
- background: #1a1d24;
3893
+ background: #f5f5f4;
3877
3894
  border-radius: 16px;
3878
3895
  width: 90%;
3879
3896
  max-width: 580px;
3880
3897
  height: min(560px, 85vh);
3881
3898
  display: flex;
3882
3899
  flex-direction: column;
3883
- box-shadow: 0 24px 48px rgba(0, 0, 0, 0.4),
3884
- 0 0 0 1px rgba(255, 255, 255, 0.05);
3900
+ box-shadow: 0 24px 48px rgba(0, 0, 0, 0.15),
3901
+ 0 0 0 1px rgba(0, 0, 0, 0.05);
3885
3902
  transform: scale(0.95) translateY(10px);
3886
3903
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
3887
3904
  pointer-events: auto;
@@ -3906,16 +3923,16 @@ const modalLayoutStyles = i$4 `
3906
3923
  align-items: center;
3907
3924
  justify-content: space-between;
3908
3925
  padding: 16px 20px;
3909
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
3910
- background: rgba(0, 0, 0, 0.2);
3926
+ border-bottom: 1px solid #e5e5e5;
3927
+ background: #ffffff;
3911
3928
  }
3912
3929
 
3913
3930
  .modal-title {
3914
3931
  font-size: 17px;
3915
3932
  font-weight: 600;
3916
- color: white;
3933
+ color: #171717;
3917
3934
  margin: 0;
3918
- letter-spacing: -0.01em;
3935
+ letter-spacing: -0.02em;
3919
3936
  }
3920
3937
 
3921
3938
  .modal-logo {
@@ -3928,7 +3945,7 @@ const modalLayoutStyles = i$4 `
3928
3945
  width: 28px;
3929
3946
  height: 28px;
3930
3947
  border-radius: 8px;
3931
- background: linear-gradient(135deg, #10b981 0%, #8b5cf6 100%);
3948
+ background: linear-gradient(135deg, #14b8a6 0%, #2563eb 100%);
3932
3949
  display: flex;
3933
3950
  align-items: center;
3934
3951
  justify-content: center;
@@ -3943,13 +3960,13 @@ const modalLayoutStyles = i$4 `
3943
3960
  .logo-text {
3944
3961
  font-size: 17px;
3945
3962
  font-weight: 500;
3946
- color: white;
3963
+ color: #171717;
3947
3964
  letter-spacing: -0.02em;
3948
3965
  }
3949
3966
 
3950
3967
  .logo-os {
3951
3968
  font-weight: 700;
3952
- background: linear-gradient(135deg, #34d399 0%, #a78bfa 100%);
3969
+ background: linear-gradient(135deg, #14b8a6 0%, #2563eb 100%);
3953
3970
  -webkit-background-clip: text;
3954
3971
  -webkit-text-fill-color: transparent;
3955
3972
  background-clip: text;
@@ -3965,13 +3982,22 @@ const modalLayoutStyles = i$4 `
3965
3982
  display: flex;
3966
3983
  align-items: center;
3967
3984
  justify-content: center;
3968
- color: rgba(255, 255, 255, 0.5);
3985
+ color: #737373;
3969
3986
  transition: all 0.15s ease;
3970
3987
  }
3971
3988
 
3972
3989
  .close-button:hover {
3973
- background: rgba(255, 255, 255, 0.08);
3974
- color: white;
3990
+ background: #f5f5f4;
3991
+ color: #171717;
3992
+ }
3993
+
3994
+ .close-button:focus {
3995
+ outline: none;
3996
+ box-shadow: 0 0 0 2px #0d9488, 0 0 0 4px rgba(13, 148, 136, 0.2);
3997
+ }
3998
+
3999
+ .close-button:active {
4000
+ transform: scale(0.95);
3975
4001
  }
3976
4002
 
3977
4003
  .modal-body {
@@ -3983,8 +4009,8 @@ const modalLayoutStyles = i$4 `
3983
4009
  .sidebar {
3984
4010
  width: 110px;
3985
4011
  flex-shrink: 0;
3986
- background: rgba(0, 0, 0, 0.25);
3987
- border-right: 1px solid rgba(255, 255, 255, 0.06);
4012
+ background: #fafaf9;
4013
+ border-right: 1px solid #e5e5e5;
3988
4014
  padding: 12px 8px;
3989
4015
  display: flex;
3990
4016
  flex-direction: column;
@@ -4013,19 +4039,25 @@ const modalLayoutStyles = i$4 `
4013
4039
  border-radius: 10px;
4014
4040
  background: transparent;
4015
4041
  cursor: pointer;
4016
- color: rgba(255, 255, 255, 0.5);
4042
+ color: #525252;
4017
4043
  transition: all 0.15s ease;
4018
4044
  position: relative;
4019
4045
  }
4020
4046
 
4021
4047
  .sidebar-item:hover {
4022
- background: rgba(255, 255, 255, 0.05);
4023
- color: rgba(255, 255, 255, 0.8);
4048
+ background: #ffffff;
4049
+ color: #171717;
4050
+ }
4051
+
4052
+ .sidebar-item:focus {
4053
+ outline: none;
4054
+ box-shadow: inset 0 0 0 2px rgba(13, 148, 136, 0.4);
4024
4055
  }
4025
4056
 
4026
4057
  .sidebar-item.active {
4027
- background: rgba(16, 185, 129, 0.12);
4028
- color: #34d399;
4058
+ background: rgba(15, 118, 110, 0.12);
4059
+ color: #0f766e;
4060
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
4029
4061
  }
4030
4062
 
4031
4063
  .sidebar-item.active::before {
@@ -4036,7 +4068,7 @@ const modalLayoutStyles = i$4 `
4036
4068
  transform: translateY(-50%);
4037
4069
  width: 3px;
4038
4070
  height: 24px;
4039
- background: #34d399;
4071
+ background: #0f766e;
4040
4072
  border-radius: 0 3px 3px 0;
4041
4073
  }
4042
4074
 
@@ -4079,14 +4111,14 @@ const tabContentStyles = i$4 `
4079
4111
  .section-title {
4080
4112
  font-size: 15px;
4081
4113
  font-weight: 600;
4082
- color: white;
4114
+ color: #171717;
4083
4115
  margin: 0 0 6px 0;
4084
- letter-spacing: -0.01em;
4116
+ letter-spacing: -0.02em;
4085
4117
  }
4086
4118
 
4087
4119
  .section-description {
4088
4120
  font-size: 13px;
4089
- color: rgba(255, 255, 255, 0.5);
4121
+ color: #525252;
4090
4122
  line-height: 1.5;
4091
4123
  margin: 0;
4092
4124
  }
@@ -4094,7 +4126,7 @@ const tabContentStyles = i$4 `
4094
4126
  .empty-state {
4095
4127
  text-align: center;
4096
4128
  padding: 40px 20px;
4097
- color: rgba(255, 255, 255, 0.5);
4129
+ color: #737373;
4098
4130
  }
4099
4131
 
4100
4132
  .empty-state-icon {
@@ -4106,7 +4138,7 @@ const tabContentStyles = i$4 `
4106
4138
  font-size: 15px;
4107
4139
  font-weight: 500;
4108
4140
  margin-bottom: 8px;
4109
- color: rgba(255, 255, 255, 0.7);
4141
+ color: #525252;
4110
4142
  }
4111
4143
 
4112
4144
  .empty-state-text {
@@ -4124,7 +4156,7 @@ const tabContentStyles = i$4 `
4124
4156
  display: flex;
4125
4157
  align-items: center;
4126
4158
  justify-content: center;
4127
- color: rgba(255, 255, 255, 0.35);
4159
+ color: #737373;
4128
4160
  transition: all 0.15s ease;
4129
4161
  }
4130
4162
 
@@ -4162,20 +4194,30 @@ const formStyles = i$4 `
4162
4194
  align-items: center;
4163
4195
  gap: 6px;
4164
4196
  padding: 10px 16px;
4165
- background: linear-gradient(135deg, #10b981 0%, #059669 100%);
4197
+ background: #0d9488;
4166
4198
  border: none;
4167
4199
  border-radius: 8px;
4168
4200
  color: white;
4169
4201
  font-size: 13px;
4170
4202
  font-weight: 600;
4203
+ letter-spacing: 0.01em;
4171
4204
  cursor: pointer;
4172
- transition: all 0.2s ease;
4173
- box-shadow: 0 2px 8px rgba(16, 185, 129, 0.2);
4205
+ transition: all 0.15s ease;
4206
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
4174
4207
  }
4175
4208
 
4176
4209
  .add-button:hover:not(:disabled) {
4177
- transform: translateY(-1px);
4178
- box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
4210
+ background: #0f766e;
4211
+ box-shadow: 0 4px 12px rgba(13, 148, 136, 0.25);
4212
+ }
4213
+
4214
+ .add-button:focus:not(:disabled) {
4215
+ outline: none;
4216
+ box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #0d9488;
4217
+ }
4218
+
4219
+ .add-button:active:not(:disabled) {
4220
+ transform: scale(0.98);
4179
4221
  }
4180
4222
 
4181
4223
  .add-button:disabled {
@@ -4186,7 +4228,7 @@ const formStyles = i$4 `
4186
4228
 
4187
4229
  .count-badge {
4188
4230
  font-size: 12px;
4189
- color: rgba(255, 255, 255, 0.45);
4231
+ color: #737373;
4190
4232
  font-weight: 500;
4191
4233
  }
4192
4234
 
@@ -4198,11 +4240,12 @@ const formStyles = i$4 `
4198
4240
  }
4199
4241
 
4200
4242
  .add-form {
4201
- background: rgba(255, 255, 255, 0.04);
4202
- border: 1px solid rgba(255, 255, 255, 0.08);
4243
+ background: #ffffff;
4244
+ border: 1px solid #e5e5e5;
4203
4245
  border-radius: 12px;
4204
4246
  padding: 16px;
4205
4247
  margin-bottom: 16px;
4248
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
4206
4249
  }
4207
4250
 
4208
4251
  .form-group {
@@ -4217,7 +4260,7 @@ const formStyles = i$4 `
4217
4260
  display: block;
4218
4261
  font-size: 12px;
4219
4262
  font-weight: 600;
4220
- color: rgba(255, 255, 255, 0.7);
4263
+ color: #525252;
4221
4264
  margin-bottom: 8px;
4222
4265
  text-transform: uppercase;
4223
4266
  letter-spacing: 0.04em;
@@ -4226,10 +4269,10 @@ const formStyles = i$4 `
4226
4269
  .form-input {
4227
4270
  width: 100%;
4228
4271
  padding: 12px 14px;
4229
- background: rgba(0, 0, 0, 0.3);
4230
- border: 1px solid rgba(255, 255, 255, 0.08);
4272
+ background: #ffffff;
4273
+ border: 1px solid #d4d4d4;
4231
4274
  border-radius: 8px;
4232
- color: white;
4275
+ color: #171717;
4233
4276
  font-size: 14px;
4234
4277
  font-family: inherit;
4235
4278
  transition: all 0.15s ease;
@@ -4238,12 +4281,12 @@ const formStyles = i$4 `
4238
4281
 
4239
4282
  .form-input:focus {
4240
4283
  outline: none;
4241
- border-color: #34d399;
4242
- box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
4284
+ border-color: #0d9488;
4285
+ box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.15);
4243
4286
  }
4244
4287
 
4245
4288
  .form-input::placeholder {
4246
- color: rgba(255, 255, 255, 0.3);
4289
+ color: #a3a3a3;
4247
4290
  }
4248
4291
 
4249
4292
  .form-input.error {
@@ -4267,7 +4310,7 @@ const formStyles = i$4 `
4267
4310
 
4268
4311
  .char-count {
4269
4312
  font-size: 11px;
4270
- color: rgba(255, 255, 255, 0.4);
4313
+ color: #737373;
4271
4314
  font-variant-numeric: tabular-nums;
4272
4315
  }
4273
4316
 
@@ -4301,26 +4344,35 @@ const formStyles = i$4 `
4301
4344
  }
4302
4345
 
4303
4346
  .form-btn.cancel {
4304
- background: transparent;
4305
- border: 1px solid rgba(255, 255, 255, 0.15);
4306
- color: rgba(255, 255, 255, 0.7);
4347
+ background: #ffffff;
4348
+ border: 1px solid #d4d4d4;
4349
+ color: #525252;
4307
4350
  }
4308
4351
 
4309
4352
  .form-btn.cancel:hover {
4310
- background: rgba(255, 255, 255, 0.05);
4311
- border-color: rgba(255, 255, 255, 0.25);
4353
+ background: #fafaf9;
4354
+ border-color: #a3a3a3;
4312
4355
  }
4313
4356
 
4314
4357
  .form-btn.save {
4315
- background: linear-gradient(135deg, #10b981 0%, #059669 100%);
4358
+ background: #0d9488;
4316
4359
  border: none;
4317
4360
  color: white;
4318
- box-shadow: 0 2px 8px rgba(16, 185, 129, 0.2);
4361
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
4319
4362
  }
4320
4363
 
4321
4364
  .form-btn.save:hover:not(:disabled) {
4322
- transform: translateY(-1px);
4323
- box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
4365
+ background: #0f766e;
4366
+ box-shadow: 0 4px 12px rgba(13, 148, 136, 0.25);
4367
+ }
4368
+
4369
+ .form-btn.save:focus:not(:disabled) {
4370
+ outline: none;
4371
+ box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #0d9488;
4372
+ }
4373
+
4374
+ .form-btn.save:active:not(:disabled) {
4375
+ transform: scale(0.98);
4324
4376
  }
4325
4377
 
4326
4378
  .form-btn.save:disabled {
@@ -4354,16 +4406,17 @@ let SpeechOSHistoryTab = class SpeechOSHistoryTab extends i$1 {
4354
4406
  }
4355
4407
 
4356
4408
  .transcript-item {
4357
- background: rgba(255, 255, 255, 0.04);
4358
- border: 1px solid rgba(255, 255, 255, 0.06);
4409
+ background: #ffffff;
4410
+ border: 1px solid #e5e5e5;
4359
4411
  border-radius: 10px;
4360
4412
  padding: 12px 14px;
4361
4413
  transition: all 0.15s ease;
4414
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
4362
4415
  }
4363
4416
 
4364
4417
  .transcript-item:hover {
4365
- background: rgba(255, 255, 255, 0.06);
4366
- border-color: rgba(255, 255, 255, 0.1);
4418
+ border-color: #d4d4d4;
4419
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
4367
4420
  }
4368
4421
 
4369
4422
  .transcript-header {
@@ -4386,28 +4439,28 @@ let SpeechOSHistoryTab = class SpeechOSHistoryTab extends i$1 {
4386
4439
  }
4387
4440
 
4388
4441
  .transcript-badge.dictate {
4389
- background: rgba(16, 185, 129, 0.15);
4390
- color: #34d399;
4442
+ background: rgba(13, 148, 136, 0.18);
4443
+ color: #0f766e;
4391
4444
  }
4392
4445
 
4393
4446
  .transcript-badge.edit {
4394
- background: rgba(139, 92, 246, 0.15);
4395
- color: #a78bfa;
4447
+ background: rgba(139, 92, 246, 0.18);
4448
+ color: #7c3aed;
4396
4449
  }
4397
4450
 
4398
4451
  .transcript-badge.command {
4399
- background: rgba(245, 158, 11, 0.15);
4400
- color: #fbbf24;
4452
+ background: rgba(245, 158, 11, 0.18);
4453
+ color: #b45309;
4401
4454
  }
4402
4455
 
4403
4456
  .transcript-time {
4404
4457
  font-size: 12px;
4405
- color: rgba(255, 255, 255, 0.35);
4458
+ color: #737373;
4406
4459
  }
4407
4460
 
4408
4461
  .transcript-text {
4409
4462
  font-size: 14px;
4410
- color: rgba(255, 255, 255, 0.85);
4463
+ color: #171717;
4411
4464
  line-height: 1.5;
4412
4465
  word-break: break-word;
4413
4466
  display: -webkit-box;
@@ -4422,7 +4475,7 @@ let SpeechOSHistoryTab = class SpeechOSHistoryTab extends i$1 {
4422
4475
  gap: 8px;
4423
4476
  margin-top: 10px;
4424
4477
  padding-top: 10px;
4425
- border-top: 1px solid rgba(255, 255, 255, 0.06);
4478
+ border-top: 1px solid #e5e5e5;
4426
4479
  }
4427
4480
 
4428
4481
  .transcript-action-btn {
@@ -4431,23 +4484,23 @@ let SpeechOSHistoryTab = class SpeechOSHistoryTab extends i$1 {
4431
4484
  gap: 6px;
4432
4485
  padding: 6px 10px;
4433
4486
  border-radius: 6px;
4434
- background: rgba(255, 255, 255, 0.06);
4487
+ background: rgba(0, 0, 0, 0.08);
4435
4488
  border: none;
4436
4489
  cursor: pointer;
4437
4490
  font-size: 12px;
4438
4491
  font-weight: 500;
4439
- color: rgba(255, 255, 255, 0.6);
4492
+ color: #404040;
4440
4493
  transition: all 0.15s ease;
4441
4494
  }
4442
4495
 
4443
4496
  .transcript-action-btn:hover {
4444
- background: rgba(255, 255, 255, 0.1);
4445
- color: rgba(255, 255, 255, 0.9);
4497
+ background: rgba(0, 0, 0, 0.12);
4498
+ color: #171717;
4446
4499
  }
4447
4500
 
4448
4501
  .transcript-action-btn.copied {
4449
- background: rgba(16, 185, 129, 0.2);
4450
- color: #34d399;
4502
+ background: rgba(13, 148, 136, 0.2);
4503
+ color: #0d9488;
4451
4504
  }
4452
4505
 
4453
4506
  .transcript-action-btn.delete:hover {
@@ -4461,9 +4514,9 @@ let SpeechOSHistoryTab = class SpeechOSHistoryTab extends i$1 {
4461
4514
  margin-top: 16px;
4462
4515
  padding: 10px;
4463
4516
  background: rgba(239, 68, 68, 0.1);
4464
- border: 1px solid rgba(239, 68, 68, 0.15);
4517
+ border: 1px solid rgba(239, 68, 68, 0.2);
4465
4518
  border-radius: 8px;
4466
- color: #f87171;
4519
+ color: #dc2626;
4467
4520
  font-size: 13px;
4468
4521
  font-weight: 500;
4469
4522
  cursor: pointer;
@@ -4472,18 +4525,18 @@ let SpeechOSHistoryTab = class SpeechOSHistoryTab extends i$1 {
4472
4525
 
4473
4526
  .clear-all-button:hover {
4474
4527
  background: rgba(239, 68, 68, 0.18);
4475
- border-color: rgba(239, 68, 68, 0.25);
4528
+ border-color: rgba(239, 68, 68, 0.3);
4476
4529
  }
4477
4530
 
4478
4531
  .command-matched {
4479
4532
  font-size: 12px;
4480
- color: rgba(255, 255, 255, 0.5);
4533
+ color: #525252;
4481
4534
  margin-top: 6px;
4482
4535
  }
4483
4536
 
4484
4537
  .command-matched code {
4485
4538
  background: rgba(245, 158, 11, 0.15);
4486
- color: #fbbf24;
4539
+ color: #d97706;
4487
4540
  padding: 2px 6px;
4488
4541
  border-radius: 4px;
4489
4542
  font-family: monospace;
@@ -4671,21 +4724,21 @@ let SpeechOSHelpTab = class SpeechOSHelpTab extends i$1 {
4671
4724
  gap: 8px;
4672
4725
  font-size: 15px;
4673
4726
  font-weight: 600;
4674
- color: white;
4727
+ color: #171717;
4675
4728
  margin-bottom: 10px;
4676
4729
  }
4677
4730
 
4678
4731
  .help-title.dictate {
4679
- color: #34d399;
4732
+ color: #0f766e;
4680
4733
  }
4681
4734
 
4682
4735
  .help-title.edit {
4683
- color: #a78bfa;
4736
+ color: #7c3aed;
4684
4737
  }
4685
4738
 
4686
4739
  .help-text {
4687
4740
  font-size: 13px;
4688
- color: rgba(255, 255, 255, 0.6);
4741
+ color: #525252;
4689
4742
  line-height: 1.6;
4690
4743
  margin-bottom: 10px;
4691
4744
  }
@@ -4702,17 +4755,17 @@ let SpeechOSHelpTab = class SpeechOSHelpTab extends i$1 {
4702
4755
  }
4703
4756
 
4704
4757
  .help-example {
4705
- background: rgba(255, 255, 255, 0.04);
4706
- border: 1px solid rgba(255, 255, 255, 0.06);
4758
+ background: #ffffff;
4759
+ border: 1px solid #e5e5e5;
4707
4760
  border-radius: 6px;
4708
4761
  padding: 8px 12px;
4709
4762
  font-size: 12px;
4710
- color: rgba(255, 255, 255, 0.5);
4763
+ color: #525252;
4711
4764
  font-style: italic;
4712
4765
  }
4713
4766
 
4714
4767
  .help-title.languages {
4715
- background: linear-gradient(135deg, #34d399 0%, #a78bfa 100%);
4768
+ background: linear-gradient(135deg, #0f766e 0%, #1d4ed8 100%);
4716
4769
  -webkit-background-clip: text;
4717
4770
  -webkit-text-fill-color: transparent;
4718
4771
  background-clip: text;
@@ -4790,7 +4843,7 @@ let SpeechOSAboutTab = class SpeechOSAboutTab extends i$1 {
4790
4843
  width: 36px;
4791
4844
  height: 36px;
4792
4845
  border-radius: 10px;
4793
- background: linear-gradient(135deg, #10b981 0%, #8b5cf6 100%);
4846
+ background: linear-gradient(135deg, #14b8a6 0%, #2563eb 100%);
4794
4847
  display: flex;
4795
4848
  align-items: center;
4796
4849
  justify-content: center;
@@ -4805,13 +4858,13 @@ let SpeechOSAboutTab = class SpeechOSAboutTab extends i$1 {
4805
4858
  .about-logo-text {
4806
4859
  font-size: 22px;
4807
4860
  font-weight: 500;
4808
- color: white;
4861
+ color: #171717;
4809
4862
  letter-spacing: -0.02em;
4810
4863
  }
4811
4864
 
4812
4865
  .logo-os {
4813
4866
  font-weight: 700;
4814
- background: linear-gradient(135deg, #34d399 0%, #a78bfa 100%);
4867
+ background: linear-gradient(135deg, #14b8a6 0%, #2563eb 100%);
4815
4868
  -webkit-background-clip: text;
4816
4869
  -webkit-text-fill-color: transparent;
4817
4870
  background-clip: text;
@@ -4819,7 +4872,7 @@ let SpeechOSAboutTab = class SpeechOSAboutTab extends i$1 {
4819
4872
 
4820
4873
  .about-description {
4821
4874
  font-size: 14px;
4822
- color: rgba(255, 255, 255, 0.65);
4875
+ color: #525252;
4823
4876
  line-height: 1.7;
4824
4877
  margin-bottom: 24px;
4825
4878
  }
@@ -4837,19 +4890,29 @@ let SpeechOSAboutTab = class SpeechOSAboutTab extends i$1 {
4837
4890
  align-items: center;
4838
4891
  gap: 8px;
4839
4892
  padding: 12px 18px;
4840
- background: linear-gradient(135deg, #10b981 0%, #059669 100%);
4893
+ background: #0d9488;
4841
4894
  border-radius: 10px;
4842
4895
  color: white;
4843
4896
  font-size: 14px;
4844
4897
  font-weight: 600;
4898
+ letter-spacing: 0.01em;
4845
4899
  text-decoration: none;
4846
- transition: all 0.2s ease;
4847
- box-shadow: 0 4px 12px rgba(16, 185, 129, 0.25);
4900
+ transition: all 0.15s ease;
4901
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
4848
4902
  }
4849
4903
 
4850
4904
  .about-link:hover {
4851
- transform: translateY(-1px);
4852
- box-shadow: 0 6px 16px rgba(16, 185, 129, 0.35);
4905
+ background: #0f766e;
4906
+ box-shadow: 0 4px 12px rgba(13, 148, 136, 0.25);
4907
+ }
4908
+
4909
+ .about-link:focus {
4910
+ outline: none;
4911
+ box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #0d9488;
4912
+ }
4913
+
4914
+ .about-link:active {
4915
+ transform: scale(0.98);
4853
4916
  }
4854
4917
  `,
4855
4918
  ]; }
@@ -4929,20 +4992,21 @@ let SpeechOSAudioLevelMeter = class SpeechOSAudioLevelMeter extends i$1 {
4929
4992
  gap: 3px;
4930
4993
  height: 32px;
4931
4994
  padding: 8px 12px;
4932
- background: rgba(0, 0, 0, 0.2);
4995
+ background: #ffffff;
4996
+ border: 2px solid #e5e5e5;
4933
4997
  border-radius: 8px;
4934
4998
  }
4935
4999
 
4936
5000
  .meter-bar {
4937
5001
  width: 6px;
4938
5002
  min-height: 4px;
4939
- background: rgba(255, 255, 255, 0.2);
5003
+ background: #d4d4d4;
4940
5004
  border-radius: 2px;
4941
5005
  transition: height 50ms ease-out, background 100ms ease;
4942
5006
  }
4943
5007
 
4944
5008
  .meter-bar.active {
4945
- background: var(--speechos-primary);
5009
+ background: #10b981;
4946
5010
  }
4947
5011
 
4948
5012
  .meter-inactive {
@@ -4951,14 +5015,15 @@ let SpeechOSAudioLevelMeter = class SpeechOSAudioLevelMeter extends i$1 {
4951
5015
  justify-content: center;
4952
5016
  height: 32px;
4953
5017
  padding: 8px 12px;
4954
- background: rgba(0, 0, 0, 0.2);
5018
+ background: #ffffff;
5019
+ border: 2px solid #e5e5e5;
4955
5020
  border-radius: 8px;
4956
- color: rgba(255, 255, 255, 0.4);
5021
+ color: #737373;
4957
5022
  font-size: 13px;
4958
5023
  }
4959
5024
 
4960
5025
  .meter-error {
4961
- color: #f87171;
5026
+ color: #dc2626;
4962
5027
  }
4963
5028
  `,
4964
5029
  ]; }
@@ -5155,18 +5220,18 @@ let SpeechOSSettingsTab = class SpeechOSSettingsTab extends i$1 {
5155
5220
  }
5156
5221
 
5157
5222
  .settings-section-icon {
5158
- color: #34d399;
5223
+ color: #0d9488;
5159
5224
  }
5160
5225
 
5161
5226
  .settings-section-title {
5162
5227
  font-size: 14px;
5163
5228
  font-weight: 600;
5164
- color: white;
5229
+ color: #171717;
5165
5230
  }
5166
5231
 
5167
5232
  .settings-section-description {
5168
5233
  font-size: 13px;
5169
- color: rgba(255, 255, 255, 0.45);
5234
+ color: #525252;
5170
5235
  line-height: 1.5;
5171
5236
  margin-bottom: 14px;
5172
5237
  }
@@ -5195,10 +5260,10 @@ let SpeechOSSettingsTab = class SpeechOSSettingsTab extends i$1 {
5195
5260
  .settings-select {
5196
5261
  width: 100%;
5197
5262
  padding: 12px 40px 12px 14px;
5198
- background: rgba(0, 0, 0, 0.3);
5199
- border: 1px solid rgba(255, 255, 255, 0.08);
5263
+ background: #ffffff;
5264
+ border: 1px solid #d4d4d4;
5200
5265
  border-radius: 10px;
5201
- color: white;
5266
+ color: #171717;
5202
5267
  font-size: 14px;
5203
5268
  font-family: inherit;
5204
5269
  cursor: pointer;
@@ -5208,19 +5273,19 @@ let SpeechOSSettingsTab = class SpeechOSSettingsTab extends i$1 {
5208
5273
  }
5209
5274
 
5210
5275
  .settings-select:hover {
5211
- border-color: rgba(255, 255, 255, 0.15);
5212
- background: rgba(0, 0, 0, 0.4);
5276
+ border-color: #a3a3a3;
5277
+ background: #ffffff;
5213
5278
  }
5214
5279
 
5215
5280
  .settings-select:focus {
5216
5281
  outline: none;
5217
- border-color: #34d399;
5218
- box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
5282
+ border-color: #0d9488;
5283
+ box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.15);
5219
5284
  }
5220
5285
 
5221
5286
  .settings-select option {
5222
- background: #1a1d24;
5223
- color: white;
5287
+ background: #ffffff;
5288
+ color: #171717;
5224
5289
  padding: 8px;
5225
5290
  }
5226
5291
 
@@ -5230,8 +5295,8 @@ let SpeechOSSettingsTab = class SpeechOSSettingsTab extends i$1 {
5230
5295
  }
5231
5296
 
5232
5297
  .settings-select:disabled:hover {
5233
- border-color: rgba(255, 255, 255, 0.08);
5234
- background: rgba(0, 0, 0, 0.3);
5298
+ border-color: #d4d4d4;
5299
+ background: #ffffff;
5235
5300
  }
5236
5301
 
5237
5302
  .settings-select-arrow {
@@ -5240,12 +5305,12 @@ let SpeechOSSettingsTab = class SpeechOSSettingsTab extends i$1 {
5240
5305
  top: 50%;
5241
5306
  transform: translateY(-50%);
5242
5307
  pointer-events: none;
5243
- color: rgba(255, 255, 255, 0.4);
5308
+ color: #737373;
5244
5309
  }
5245
5310
 
5246
5311
  .settings-permission-note {
5247
5312
  font-size: 12px;
5248
- color: rgba(255, 255, 255, 0.4);
5313
+ color: #737373;
5249
5314
  margin-top: 10px;
5250
5315
  font-style: italic;
5251
5316
  }
@@ -5255,7 +5320,7 @@ let SpeechOSSettingsTab = class SpeechOSSettingsTab extends i$1 {
5255
5320
  align-items: center;
5256
5321
  gap: 4px;
5257
5322
  font-size: 11px;
5258
- color: #34d399;
5323
+ color: #059669;
5259
5324
  font-weight: 500;
5260
5325
  opacity: 0;
5261
5326
  transition: opacity 0.2s ease;
@@ -5271,28 +5336,34 @@ let SpeechOSSettingsTab = class SpeechOSSettingsTab extends i$1 {
5271
5336
  align-items: center;
5272
5337
  justify-content: space-between;
5273
5338
  padding: 12px 14px;
5274
- background: rgba(0, 0, 0, 0.3);
5275
- border: 1px solid rgba(255, 255, 255, 0.08);
5339
+ background: #ffffff;
5340
+ border: 1px solid #e5e5e5;
5276
5341
  border-radius: 10px;
5342
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
5277
5343
  }
5278
5344
 
5279
5345
  .settings-toggle-label {
5280
5346
  font-size: 14px;
5281
- color: white;
5347
+ color: #171717;
5282
5348
  }
5283
5349
 
5284
5350
  .settings-toggle {
5285
5351
  position: relative;
5286
5352
  width: 44px;
5287
5353
  height: 24px;
5288
- background: rgba(255, 255, 255, 0.1);
5354
+ background: #d4d4d4;
5289
5355
  border-radius: 12px;
5290
5356
  cursor: pointer;
5291
5357
  transition: background 0.2s ease;
5292
5358
  }
5293
5359
 
5294
5360
  .settings-toggle.active {
5295
- background: #34d399;
5361
+ background: #0d9488;
5362
+ }
5363
+
5364
+ .settings-toggle:focus {
5365
+ outline: none;
5366
+ box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #0d9488;
5296
5367
  }
5297
5368
 
5298
5369
  .settings-toggle-knob {
@@ -5650,17 +5721,18 @@ let SpeechOSSnippetsTab = class SpeechOSSnippetsTab extends i$1 {
5650
5721
  }
5651
5722
 
5652
5723
  .snippet-item {
5653
- background: rgba(255, 255, 255, 0.04);
5654
- border: 1px solid rgba(255, 255, 255, 0.06);
5724
+ background: #ffffff;
5725
+ border: 1px solid #e5e5e5;
5655
5726
  border-radius: 10px;
5656
5727
  padding: 14px;
5657
5728
  transition: all 0.15s ease;
5658
5729
  position: relative;
5730
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
5659
5731
  }
5660
5732
 
5661
5733
  .snippet-item:hover {
5662
- background: rgba(255, 255, 255, 0.06);
5663
- border-color: rgba(255, 255, 255, 0.1);
5734
+ border-color: #d4d4d4;
5735
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
5664
5736
  }
5665
5737
 
5666
5738
  .snippet-trigger {
@@ -5673,7 +5745,7 @@ let SpeechOSSnippetsTab = class SpeechOSSnippetsTab extends i$1 {
5673
5745
  .snippet-trigger-text {
5674
5746
  font-size: 14px;
5675
5747
  font-weight: 600;
5676
- color: #34d399;
5748
+ color: #0d9488;
5677
5749
  }
5678
5750
 
5679
5751
  .snippet-trigger-text::before {
@@ -5691,12 +5763,12 @@ let SpeechOSSnippetsTab = class SpeechOSSnippetsTab extends i$1 {
5691
5763
  align-items: flex-start;
5692
5764
  gap: 8px;
5693
5765
  font-size: 13px;
5694
- color: rgba(255, 255, 255, 0.65);
5766
+ color: #525252;
5695
5767
  line-height: 1.5;
5696
5768
  }
5697
5769
 
5698
5770
  .snippet-expansion-arrow {
5699
- color: rgba(255, 255, 255, 0.3);
5771
+ color: #a3a3a3;
5700
5772
  flex-shrink: 0;
5701
5773
  margin-top: 2px;
5702
5774
  }
@@ -5725,13 +5797,13 @@ let SpeechOSSnippetsTab = class SpeechOSSnippetsTab extends i$1 {
5725
5797
  display: flex;
5726
5798
  align-items: center;
5727
5799
  justify-content: center;
5728
- color: rgba(255, 255, 255, 0.4);
5800
+ color: #737373;
5729
5801
  transition: all 0.15s ease;
5730
5802
  }
5731
5803
 
5732
5804
  .edit-btn:hover {
5733
- background: rgba(52, 211, 153, 0.15);
5734
- color: #34d399;
5805
+ background: rgba(13, 148, 136, 0.1);
5806
+ color: #0d9488;
5735
5807
  }
5736
5808
  `,
5737
5809
  ]; }
@@ -6014,30 +6086,32 @@ let SpeechOSVocabularyTab = class SpeechOSVocabularyTab extends i$1 {
6014
6086
  gap: 8px;
6015
6087
  padding: 8px 12px;
6016
6088
  background: rgba(139, 92, 246, 0.1);
6017
- border: 1px solid rgba(139, 92, 246, 0.2);
6089
+ border: 1px solid rgba(139, 92, 246, 0.25);
6018
6090
  border-radius: 8px;
6019
6091
  transition: all 0.15s ease;
6020
6092
  }
6021
6093
 
6022
6094
  .vocabulary-chip:hover {
6023
6095
  background: rgba(139, 92, 246, 0.15);
6024
- border-color: rgba(139, 92, 246, 0.3);
6096
+ border-color: rgba(139, 92, 246, 0.35);
6025
6097
  }
6026
6098
 
6027
6099
  .vocabulary-chip-text {
6028
6100
  font-size: 13px;
6029
6101
  font-weight: 500;
6030
- color: #c4b5fd;
6102
+ color: #7c3aed;
6031
6103
  }
6032
6104
 
6033
6105
  .vocabulary-chip .delete-btn {
6034
6106
  width: 20px;
6035
6107
  height: 20px;
6036
6108
  margin: -4px -4px -4px 0;
6109
+ color: #737373;
6037
6110
  }
6038
6111
 
6039
6112
  .vocabulary-chip .delete-btn:hover {
6040
6113
  background: rgba(239, 68, 68, 0.2);
6114
+ color: #f87171;
6041
6115
  }
6042
6116
  `,
6043
6117
  ]; }
@@ -6438,14 +6512,14 @@ const popupModalStyles = i$4 `
6438
6512
  }
6439
6513
 
6440
6514
  .modal-card {
6441
- background: #1a1d24;
6515
+ background: #f5f5f4;
6442
6516
  border-radius: 16px;
6443
6517
  width: 90%;
6444
6518
  max-width: 400px;
6445
6519
  display: flex;
6446
6520
  flex-direction: column;
6447
- box-shadow: 0 24px 48px rgba(0, 0, 0, 0.4),
6448
- 0 0 0 1px rgba(255, 255, 255, 0.05);
6521
+ box-shadow: 0 24px 48px rgba(0, 0, 0, 0.15),
6522
+ 0 0 0 1px rgba(0, 0, 0, 0.05);
6449
6523
  transform: scale(0.95) translateY(10px);
6450
6524
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
6451
6525
  pointer-events: auto;
@@ -6461,14 +6535,14 @@ const popupModalStyles = i$4 `
6461
6535
  align-items: center;
6462
6536
  justify-content: space-between;
6463
6537
  padding: 16px 20px;
6464
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
6465
- background: rgba(0, 0, 0, 0.2);
6538
+ border-bottom: 1px solid #e5e5e5;
6539
+ background: #ffffff;
6466
6540
  }
6467
6541
 
6468
6542
  .modal-title {
6469
6543
  font-size: 16px;
6470
6544
  font-weight: 600;
6471
- color: white;
6545
+ color: #171717;
6472
6546
  margin: 0;
6473
6547
  letter-spacing: -0.01em;
6474
6548
  }
@@ -6483,13 +6557,22 @@ const popupModalStyles = i$4 `
6483
6557
  display: flex;
6484
6558
  align-items: center;
6485
6559
  justify-content: center;
6486
- color: rgba(255, 255, 255, 0.5);
6560
+ color: #737373;
6487
6561
  transition: all 0.15s ease;
6488
6562
  }
6489
6563
 
6490
6564
  .close-button:hover {
6491
- background: rgba(255, 255, 255, 0.08);
6492
- color: white;
6565
+ background: #f5f5f4;
6566
+ color: #171717;
6567
+ }
6568
+
6569
+ .close-button:focus {
6570
+ outline: none;
6571
+ box-shadow: 0 0 0 2px #0d9488, 0 0 0 4px rgba(13, 148, 136, 0.2);
6572
+ }
6573
+
6574
+ .close-button:active {
6575
+ transform: scale(0.95);
6493
6576
  }
6494
6577
 
6495
6578
  .modal-body {
@@ -6501,8 +6584,8 @@ const popupModalStyles = i$4 `
6501
6584
  justify-content: flex-end;
6502
6585
  gap: 10px;
6503
6586
  padding: 16px 20px;
6504
- border-top: 1px solid rgba(255, 255, 255, 0.06);
6505
- background: rgba(0, 0, 0, 0.1);
6587
+ border-top: 1px solid #e5e5e5;
6588
+ background: #ffffff;
6506
6589
  }
6507
6590
 
6508
6591
  .btn {
@@ -6519,42 +6602,47 @@ const popupModalStyles = i$4 `
6519
6602
  }
6520
6603
 
6521
6604
  .btn-secondary {
6522
- background: rgba(255, 255, 255, 0.08);
6523
- color: rgba(255, 255, 255, 0.8);
6605
+ background: rgba(0, 0, 0, 0.08);
6606
+ color: #525252;
6524
6607
  }
6525
6608
 
6526
6609
  .btn-secondary:hover {
6527
- background: rgba(255, 255, 255, 0.12);
6528
- color: white;
6610
+ background: rgba(0, 0, 0, 0.12);
6611
+ color: #171717;
6529
6612
  }
6530
6613
 
6531
6614
  .btn-primary {
6532
- background: linear-gradient(135deg, #10b981 0%, #059669 100%);
6615
+ background: #0d9488;
6533
6616
  color: white;
6534
- box-shadow: 0 2px 8px rgba(16, 185, 129, 0.2);
6617
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
6535
6618
  }
6536
6619
 
6537
6620
  .btn-primary:hover {
6538
- transform: translateY(-1px);
6539
- box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
6621
+ background: #0f766e;
6622
+ box-shadow: 0 4px 12px rgba(13, 148, 136, 0.25);
6623
+ }
6624
+
6625
+ .btn-primary:focus {
6626
+ outline: none;
6627
+ box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #0d9488;
6540
6628
  }
6541
6629
 
6542
6630
  .btn-primary:active {
6543
- transform: translateY(0);
6631
+ transform: scale(0.98);
6544
6632
  }
6545
6633
 
6546
6634
  /* Success state for copy button */
6547
6635
  .btn-success {
6548
- background: linear-gradient(135deg, #34d399 0%, #10b981 100%);
6636
+ background: #059669;
6549
6637
  }
6550
6638
 
6551
6639
  /* Text display area */
6552
6640
  .text-display {
6553
- background: rgba(0, 0, 0, 0.3);
6554
- border: 1px solid rgba(255, 255, 255, 0.08);
6641
+ background: #ffffff;
6642
+ border: 1px solid #e5e5e5;
6555
6643
  border-radius: 10px;
6556
6644
  padding: 14px 16px;
6557
- color: white;
6645
+ color: #171717;
6558
6646
  font-size: 14px;
6559
6647
  line-height: 1.5;
6560
6648
  max-height: 200px;
@@ -6573,12 +6661,12 @@ const popupModalStyles = i$4 `
6573
6661
  }
6574
6662
 
6575
6663
  .text-display::-webkit-scrollbar-thumb {
6576
- background: rgba(255, 255, 255, 0.15);
6664
+ background: rgba(0, 0, 0, 0.15);
6577
6665
  border-radius: 3px;
6578
6666
  }
6579
6667
 
6580
6668
  .text-display::-webkit-scrollbar-thumb:hover {
6581
- background: rgba(255, 255, 255, 0.25);
6669
+ background: rgba(0, 0, 0, 0.25);
6582
6670
  }
6583
6671
 
6584
6672
  /* Instruction list styling */
@@ -6593,7 +6681,7 @@ const popupModalStyles = i$4 `
6593
6681
  align-items: flex-start;
6594
6682
  gap: 12px;
6595
6683
  padding: 12px 0;
6596
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
6684
+ border-bottom: 1px solid #e5e5e5;
6597
6685
  }
6598
6686
 
6599
6687
  .instruction-item:last-child {
@@ -6604,7 +6692,7 @@ const popupModalStyles = i$4 `
6604
6692
  width: 24px;
6605
6693
  height: 24px;
6606
6694
  border-radius: 50%;
6607
- background: linear-gradient(135deg, #10b981 0%, #059669 100%);
6695
+ background: #0d9488;
6608
6696
  color: white;
6609
6697
  font-size: 12px;
6610
6698
  font-weight: 700;
@@ -6616,7 +6704,7 @@ const popupModalStyles = i$4 `
6616
6704
 
6617
6705
  .instruction-text {
6618
6706
  font-size: 14px;
6619
- color: rgba(255, 255, 255, 0.85);
6707
+ color: #171717;
6620
6708
  line-height: 1.5;
6621
6709
  padding-top: 2px;
6622
6710
  }
@@ -6674,7 +6762,7 @@ let SpeechOSDictationOutputModal = class SpeechOSDictationOutputModal extends i$
6674
6762
  width: 32px;
6675
6763
  height: 32px;
6676
6764
  border-radius: 8px;
6677
- background: linear-gradient(135deg, #10b981 0%, #8b5cf6 100%);
6765
+ background: linear-gradient(135deg, #14b8a6 0%, #2563eb 100%);
6678
6766
  display: flex;
6679
6767
  align-items: center;
6680
6768
  justify-content: center;
@@ -6688,31 +6776,35 @@ let SpeechOSDictationOutputModal = class SpeechOSDictationOutputModal extends i$
6688
6776
  }
6689
6777
 
6690
6778
  .modal-title {
6691
- background: linear-gradient(135deg, #34d399 0%, #a78bfa 100%);
6779
+ background: linear-gradient(135deg, #14b8a6 0%, #2563eb 100%);
6692
6780
  -webkit-background-clip: text;
6693
6781
  -webkit-text-fill-color: transparent;
6694
6782
  background-clip: text;
6695
6783
  }
6696
6784
 
6697
6785
  .btn-primary {
6698
- background: linear-gradient(135deg, #10b981 0%, #059669 100%);
6699
- box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
6786
+ background: #0d9488;
6787
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
6700
6788
  border-radius: 999px;
6701
6789
  }
6702
6790
 
6703
6791
  .btn-primary:hover {
6704
- background: linear-gradient(135deg, #34d399 0%, #10b981 100%);
6705
- transform: translateY(-2px);
6706
- box-shadow: 0 6px 16px rgba(16, 185, 129, 0.4);
6792
+ background: #0f766e;
6793
+ box-shadow: 0 4px 12px rgba(13, 148, 136, 0.25);
6794
+ }
6795
+
6796
+ .btn-primary:focus {
6797
+ outline: none;
6798
+ box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #0d9488;
6707
6799
  }
6708
6800
 
6709
6801
  .btn-primary:active {
6710
- transform: translateY(0);
6802
+ transform: scale(0.98);
6711
6803
  }
6712
6804
 
6713
6805
  .btn-success {
6714
- background: linear-gradient(135deg, #34d399 0%, #10b981 100%);
6715
- box-shadow: 0 4px 12px rgba(52, 211, 153, 0.3);
6806
+ background: #059669;
6807
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
6716
6808
  border-radius: 999px;
6717
6809
  }
6718
6810
 
@@ -6726,14 +6818,15 @@ let SpeechOSDictationOutputModal = class SpeechOSDictationOutputModal extends i$
6726
6818
  gap: 6px;
6727
6819
  margin-top: 12px;
6728
6820
  padding: 8px 12px;
6729
- background: rgba(16, 185, 129, 0.08);
6821
+ background: #ffffff;
6822
+ border: 1px solid #e5e5e5;
6730
6823
  border-radius: 8px;
6731
6824
  font-size: 12px;
6732
- color: rgba(255, 255, 255, 0.6);
6825
+ color: #525252;
6733
6826
  }
6734
6827
 
6735
6828
  .hint-icon {
6736
- color: #10b981;
6829
+ color: #0d9488;
6737
6830
  flex-shrink: 0;
6738
6831
  }
6739
6832