bitwrench 2.0.10 → 2.0.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.
@@ -367,7 +367,7 @@ function generateTables(scope, palette, layout) {
367
367
  'background-color': palette.light.light
368
368
  };
369
369
  rules[scopeSelector(scope, '.bw-table-striped > tbody > tr:nth-of-type(odd) > *')] = {
370
- 'background-color': 'rgba(0, 0, 0, 0.025)'
370
+ 'background-color': 'rgba(0, 0, 0, 0.05)'
371
371
  };
372
372
  rules[scopeSelector(scope, '.bw-table-hover > tbody > tr:hover > *')] = {
373
373
  'background-color': palette.primary.focus
@@ -561,6 +561,121 @@ function generateSectionsThemed(scope, palette) {
561
561
  return rules;
562
562
  }
563
563
 
564
+ function generateAccordionThemed(scope, palette) {
565
+ var rules = {};
566
+ rules[scopeSelector(scope, '.bw-accordion-item')] = {
567
+ 'background-color': '#fff',
568
+ 'border-color': palette.light.border
569
+ };
570
+ rules[scopeSelector(scope, '.bw-accordion-button')] = {
571
+ 'color': palette.dark.base
572
+ };
573
+ rules[scopeSelector(scope, '.bw-accordion-button:hover')] = {
574
+ 'background-color': palette.light.light
575
+ };
576
+ rules[scopeSelector(scope, '.bw-accordion-body')] = {
577
+ 'border-top': '1px solid ' + palette.light.border
578
+ };
579
+ return rules;
580
+ }
581
+
582
+ function generateModalThemed(scope, palette) {
583
+ var rules = {};
584
+ rules[scopeSelector(scope, '.bw-modal-content')] = {
585
+ 'background-color': '#fff',
586
+ 'border-color': palette.light.border,
587
+ 'box-shadow': '0 0.5rem 1rem rgba(0,0,0,0.15)'
588
+ };
589
+ rules[scopeSelector(scope, '.bw-modal-header')] = {
590
+ 'border-bottom-color': palette.light.border
591
+ };
592
+ rules[scopeSelector(scope, '.bw-modal-footer')] = {
593
+ 'border-top-color': palette.light.border
594
+ };
595
+ rules[scopeSelector(scope, '.bw-modal-title')] = {
596
+ 'color': palette.dark.base
597
+ };
598
+ return rules;
599
+ }
600
+
601
+ function generateToastThemed(scope, palette) {
602
+ var rules = {};
603
+ rules[scopeSelector(scope, '.bw-toast')] = {
604
+ 'background-color': '#fff',
605
+ 'border-color': 'rgba(0,0,0,0.1)',
606
+ 'box-shadow': '0 0.5rem 1rem rgba(0,0,0,0.15)'
607
+ };
608
+ rules[scopeSelector(scope, '.bw-toast-header')] = {
609
+ 'border-bottom-color': 'rgba(0,0,0,0.05)'
610
+ };
611
+ var variants = ['primary', 'secondary', 'success', 'danger', 'warning', 'info'];
612
+ variants.forEach(function(v) {
613
+ rules[scopeSelector(scope, '.bw-toast-' + v)] = {
614
+ 'border-left': '4px solid ' + palette[v].base
615
+ };
616
+ });
617
+ return rules;
618
+ }
619
+
620
+ function generateDropdownThemed(scope, palette) {
621
+ var rules = {};
622
+ rules[scopeSelector(scope, '.bw-dropdown-menu')] = {
623
+ 'background-color': '#fff',
624
+ 'border-color': palette.light.border,
625
+ 'box-shadow': '0 0.5rem 1rem rgba(0,0,0,0.15)'
626
+ };
627
+ rules[scopeSelector(scope, '.bw-dropdown-item')] = {
628
+ 'color': palette.dark.base
629
+ };
630
+ rules[scopeSelector(scope, '.bw-dropdown-item:hover')] = {
631
+ 'color': palette.dark.hover,
632
+ 'background-color': palette.light.light
633
+ };
634
+ rules[scopeSelector(scope, '.bw-dropdown-item.disabled')] = {
635
+ 'color': palette.secondary.base
636
+ };
637
+ rules[scopeSelector(scope, '.bw-dropdown-divider')] = {
638
+ 'border-top-color': palette.light.border
639
+ };
640
+ return rules;
641
+ }
642
+
643
+ function generateSwitchThemed(scope, palette) {
644
+ var rules = {};
645
+ rules[scopeSelector(scope, '.bw-form-switch .bw-switch-input')] = {
646
+ 'background-color': palette.secondary.base,
647
+ 'border-color': palette.secondary.base
648
+ };
649
+ rules[scopeSelector(scope, '.bw-form-switch .bw-switch-input:checked')] = {
650
+ 'background-color': palette.primary.base,
651
+ 'border-color': palette.primary.base
652
+ };
653
+ rules[scopeSelector(scope, '.bw-form-switch .bw-switch-input:focus')] = {
654
+ 'box-shadow': '0 0 0 0.25rem ' + palette.primary.focus
655
+ };
656
+ return rules;
657
+ }
658
+
659
+ function generateSkeletonThemed(scope, palette) {
660
+ var rules = {};
661
+ rules[scopeSelector(scope, '.bw-skeleton')] = {
662
+ 'background-color': palette.light.border
663
+ };
664
+ return rules;
665
+ }
666
+
667
+ function generateAvatarThemed(scope, palette) {
668
+ var rules = {};
669
+ var variants = ['primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark'];
670
+ variants.forEach(function(v) {
671
+ rules[scopeSelector(scope, '.bw-avatar-' + v)] = {
672
+ 'background-color': palette[v].base,
673
+ 'color': palette[v].textOn
674
+ };
675
+ });
676
+ return rules;
677
+ }
678
+
564
679
  /**
565
680
  * Generate all themed CSS rules from a palette and layout.
566
681
  * Returns a flat CSS rules object (selector → declarations).
@@ -590,6 +705,13 @@ export function generateThemedCSS(scopeName, palette, layout) {
590
705
  generateSpinnerThemed(scopeName, palette),
591
706
  generateCloseButtonThemed(scopeName, palette),
592
707
  generateSectionsThemed(scopeName, palette),
708
+ generateAccordionThemed(scopeName, palette),
709
+ generateModalThemed(scopeName, palette),
710
+ generateToastThemed(scopeName, palette),
711
+ generateDropdownThemed(scopeName, palette),
712
+ generateSwitchThemed(scopeName, palette),
713
+ generateSkeletonThemed(scopeName, palette),
714
+ generateAvatarThemed(scopeName, palette),
593
715
  generateUtilityColors(scopeName, palette)
594
716
  );
595
717
  }
@@ -1229,7 +1351,7 @@ export const defaultStyles = {
1229
1351
  'background-color': '#fafafa',
1230
1352
  'border-bottom': '1px solid #e5e5e5'
1231
1353
  },
1232
- '.bw-navbar > .container': {
1354
+ '.bw-navbar > .bw-container, .bw-navbar > .container': {
1233
1355
  'display': 'flex',
1234
1356
  'flex-wrap': 'wrap',
1235
1357
  'align-items': 'center',
@@ -1331,10 +1453,10 @@ export const defaultStyles = {
1331
1453
  'background-color': '#f8f8f8'
1332
1454
  },
1333
1455
  '.bw-table-striped > tbody > tr:nth-of-type(odd) > *': {
1334
- 'background-color': 'rgba(0, 0, 0, 0.025)'
1456
+ 'background-color': 'rgba(0, 0, 0, 0.05)'
1335
1457
  },
1336
1458
  '.bw-table-hover > tbody > tr:hover > *': {
1337
- 'background-color': 'rgba(0, 102, 102, 0.05)'
1459
+ 'background-color': 'rgba(0, 102, 102, 0.1)'
1338
1460
  },
1339
1461
  '.bw-table-bordered': {
1340
1462
  'border': '1px solid #e0e0e0'
@@ -1451,10 +1573,10 @@ export const defaultStyles = {
1451
1573
  badges: {
1452
1574
  '.bw-badge': {
1453
1575
  'display': 'inline-block',
1454
- 'padding': '.35em .65em',
1455
- 'font-size': '.75em',
1456
- 'font-weight': '700',
1457
- 'line-height': '1',
1576
+ 'padding': '.4em .75em',
1577
+ 'font-size': '.875em',
1578
+ 'font-weight': '600',
1579
+ 'line-height': '1.3',
1458
1580
  'color': '#fff',
1459
1581
  'text-align': 'center',
1460
1582
  'white-space': 'nowrap',
@@ -1464,6 +1586,14 @@ export const defaultStyles = {
1464
1586
  '.bw-badge:empty': {
1465
1587
  'display': 'none'
1466
1588
  },
1589
+ '.bw-badge-sm': {
1590
+ 'font-size': '.75em',
1591
+ 'padding': '.25em .5em'
1592
+ },
1593
+ '.bw-badge-lg': {
1594
+ 'font-size': '1em',
1595
+ 'padding': '.5em .9em'
1596
+ },
1467
1597
  '.bw-badge-pill': {
1468
1598
  'border-radius': '50rem'
1469
1599
  },
@@ -1814,7 +1944,11 @@ export const defaultStyles = {
1814
1944
  },
1815
1945
  '.bw-hero-title': {
1816
1946
  'font-weight': '300',
1817
- 'letter-spacing': '-0.05rem'
1947
+ 'letter-spacing': '-0.05rem',
1948
+ 'color': 'inherit'
1949
+ },
1950
+ '.bw-hero-subtitle': {
1951
+ 'color': 'inherit'
1818
1952
  },
1819
1953
  '.bw-display-4': {
1820
1954
  'font-size': 'calc(1.475rem + 2.7vw)',
@@ -2171,9 +2305,493 @@ export const defaultStyles = {
2171
2305
  '.bw-copy-btn:hover': {
2172
2306
  'background': 'rgba(255,255,255,0.2)',
2173
2307
  'color': '#fff'
2308
+ },
2309
+ '.bw-code-pre': {
2310
+ 'margin': '0',
2311
+ 'background': '#1e293b',
2312
+ 'border': 'none',
2313
+ 'border-radius': '6px',
2314
+ 'overflow-x': 'auto'
2315
+ },
2316
+ '.bw-code-block': {
2317
+ 'display': 'block',
2318
+ 'padding': '1.25rem',
2319
+ 'font-family': '"SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace',
2320
+ 'font-size': '0.8125rem',
2321
+ 'line-height': '1.6',
2322
+ 'color': '#e2e8f0'
2323
+ },
2324
+ '.bw-code-copy-btn': {
2325
+ 'position': 'absolute',
2326
+ 'top': '0.5rem',
2327
+ 'right': '0.5rem',
2328
+ 'padding': '0.25rem 0.625rem',
2329
+ 'font-size': '0.6875rem',
2330
+ 'background': 'rgba(255,255,255,0.12)',
2331
+ 'color': '#aaa',
2332
+ 'border': '1px solid rgba(255,255,255,0.15)',
2333
+ 'border-radius': '4px',
2334
+ 'cursor': 'pointer',
2335
+ 'font-family': 'inherit',
2336
+ 'transition': 'all 0.15s'
2337
+ }
2338
+ },
2339
+
2340
+ /**
2341
+ * Button group styles
2342
+ */
2343
+ buttonGroup: {
2344
+ '.bw-btn-group, .bw-btn-group-vertical': {
2345
+ 'position': 'relative',
2346
+ 'display': 'inline-flex',
2347
+ 'vertical-align': 'middle'
2348
+ },
2349
+ '.bw-btn-group > .bw-btn, .bw-btn-group-vertical > .bw-btn': {
2350
+ 'position': 'relative',
2351
+ 'flex': '1 1 auto',
2352
+ 'border-radius': '0',
2353
+ 'margin-left': '-1px'
2354
+ },
2355
+ '.bw-btn-group > .bw-btn:first-child': {
2356
+ 'margin-left': '0',
2357
+ 'border-top-left-radius': '6px',
2358
+ 'border-bottom-left-radius': '6px'
2359
+ },
2360
+ '.bw-btn-group > .bw-btn:last-child': {
2361
+ 'border-top-right-radius': '6px',
2362
+ 'border-bottom-right-radius': '6px'
2363
+ },
2364
+ '.bw-btn-group-vertical': {
2365
+ 'flex-direction': 'column',
2366
+ 'align-items': 'flex-start',
2367
+ 'justify-content': 'center'
2368
+ },
2369
+ '.bw-btn-group-vertical > .bw-btn': {
2370
+ 'width': '100%',
2371
+ 'margin-left': '0',
2372
+ 'margin-top': '-1px'
2373
+ },
2374
+ '.bw-btn-group-vertical > .bw-btn:first-child': {
2375
+ 'margin-top': '0',
2376
+ 'border-top-left-radius': '6px',
2377
+ 'border-top-right-radius': '6px',
2378
+ 'border-bottom-left-radius': '0',
2379
+ 'border-bottom-right-radius': '0'
2380
+ },
2381
+ '.bw-btn-group-vertical > .bw-btn:last-child': {
2382
+ 'border-top-left-radius': '0',
2383
+ 'border-top-right-radius': '0',
2384
+ 'border-bottom-left-radius': '6px',
2385
+ 'border-bottom-right-radius': '6px'
2386
+ },
2387
+ '.bw-btn-group-sm > .bw-btn': {
2388
+ 'padding': '0.25rem 0.75rem',
2389
+ 'font-size': '0.8125rem'
2390
+ },
2391
+ '.bw-btn-group-lg > .bw-btn': {
2392
+ 'padding': '0.625rem 1.5rem',
2393
+ 'font-size': '1rem'
2394
+ }
2395
+ },
2396
+
2397
+ /**
2398
+ * Accordion collapse styles
2399
+ */
2400
+ accordion: {
2401
+ '.bw-accordion': {
2402
+ 'border-radius': '8px',
2403
+ 'overflow': 'hidden'
2404
+ },
2405
+ '.bw-accordion-item': {
2406
+ 'background-color': '#fff',
2407
+ 'border': '1px solid #e5e5e5'
2408
+ },
2409
+ '.bw-accordion-item + .bw-accordion-item': {
2410
+ 'border-top': '0'
2411
+ },
2412
+ '.bw-accordion-item:first-child': {
2413
+ 'border-top-left-radius': '8px',
2414
+ 'border-top-right-radius': '8px'
2415
+ },
2416
+ '.bw-accordion-item:last-child': {
2417
+ 'border-bottom-left-radius': '8px',
2418
+ 'border-bottom-right-radius': '8px'
2419
+ },
2420
+ '.bw-accordion-header': {
2421
+ 'margin': '0'
2422
+ },
2423
+ '.bw-accordion-button': {
2424
+ 'position': 'relative',
2425
+ 'display': 'flex',
2426
+ 'align-items': 'center',
2427
+ 'width': '100%',
2428
+ 'padding': '1rem 1.25rem',
2429
+ 'font-size': '1rem',
2430
+ 'font-weight': '500',
2431
+ 'color': '#1a1a1a',
2432
+ 'text-align': 'left',
2433
+ 'background-color': 'transparent',
2434
+ 'border': '0',
2435
+ 'overflow-anchor': 'none',
2436
+ 'cursor': 'pointer',
2437
+ 'font-family': 'inherit',
2438
+ 'transition': 'color 0.15s ease-in-out, background-color 0.15s ease-in-out'
2439
+ },
2440
+ '.bw-accordion-button::after': {
2441
+ 'flex-shrink': '0',
2442
+ 'width': '1.25rem',
2443
+ 'height': '1.25rem',
2444
+ 'margin-left': 'auto',
2445
+ 'content': '""',
2446
+ 'background-image': "url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\")",
2447
+ 'background-repeat': 'no-repeat',
2448
+ 'background-size': '1.25rem',
2449
+ 'transition': 'transform 0.2s ease-in-out'
2450
+ },
2451
+ '.bw-accordion-button:not(.bw-collapsed)::after': {
2452
+ 'transform': 'rotate(-180deg)'
2453
+ },
2454
+ '.bw-accordion-button:hover': {
2455
+ 'background-color': 'rgba(0,0,0,0.03)'
2456
+ },
2457
+ '.bw-accordion-collapse': {
2458
+ 'max-height': '0',
2459
+ 'overflow': 'hidden',
2460
+ 'transition': 'max-height 0.3s ease'
2461
+ },
2462
+ '.bw-accordion-collapse.bw-collapse-show': {
2463
+ 'max-height': 'none'
2464
+ },
2465
+ '.bw-accordion-body': {
2466
+ 'padding': '1rem 1.25rem'
2467
+ }
2468
+ },
2469
+
2470
+ /**
2471
+ * Modal dialog styles
2472
+ */
2473
+ modal: {
2474
+ '.bw-modal': {
2475
+ 'display': 'none',
2476
+ 'position': 'fixed',
2477
+ 'top': '0',
2478
+ 'left': '0',
2479
+ 'width': '100%',
2480
+ 'height': '100%',
2481
+ 'z-index': '1050',
2482
+ 'background-color': 'rgba(0,0,0,0.5)',
2483
+ 'overflow-x': 'hidden',
2484
+ 'overflow-y': 'auto',
2485
+ 'opacity': '0',
2486
+ 'transition': 'opacity 0.15s linear'
2487
+ },
2488
+ '.bw-modal.bw-modal-show': {
2489
+ 'display': 'flex',
2490
+ 'align-items': 'center',
2491
+ 'justify-content': 'center',
2492
+ 'opacity': '1'
2493
+ },
2494
+ '.bw-modal-dialog': {
2495
+ 'position': 'relative',
2496
+ 'width': '100%',
2497
+ 'max-width': '500px',
2498
+ 'margin': '1.75rem auto',
2499
+ 'pointer-events': 'none',
2500
+ 'transform': 'translateY(-20px)',
2501
+ 'transition': 'transform 0.2s ease-out'
2502
+ },
2503
+ '.bw-modal.bw-modal-show .bw-modal-dialog': {
2504
+ 'transform': 'translateY(0)'
2505
+ },
2506
+ '.bw-modal-sm': { 'max-width': '300px' },
2507
+ '.bw-modal-lg': { 'max-width': '800px' },
2508
+ '.bw-modal-xl': { 'max-width': '1140px' },
2509
+ '.bw-modal-content': {
2510
+ 'position': 'relative',
2511
+ 'display': 'flex',
2512
+ 'flex-direction': 'column',
2513
+ 'pointer-events': 'auto',
2514
+ 'background-color': '#fff',
2515
+ 'background-clip': 'padding-box',
2516
+ 'border': '1px solid rgba(0,0,0,0.2)',
2517
+ 'border-radius': '8px',
2518
+ 'box-shadow': '0 0.5rem 1rem rgba(0,0,0,0.15)',
2519
+ 'outline': '0'
2520
+ },
2521
+ '.bw-modal-header': {
2522
+ 'display': 'flex',
2523
+ 'align-items': 'center',
2524
+ 'justify-content': 'space-between',
2525
+ 'padding': '1rem 1.5rem',
2526
+ 'border-bottom': '1px solid #e5e5e5'
2527
+ },
2528
+ '.bw-modal-title': {
2529
+ 'margin': '0',
2530
+ 'font-size': '1.25rem',
2531
+ 'font-weight': '600',
2532
+ 'line-height': '1.3'
2533
+ },
2534
+ '.bw-modal-body': {
2535
+ 'position': 'relative',
2536
+ 'flex': '1 1 auto',
2537
+ 'padding': '1.5rem'
2538
+ },
2539
+ '.bw-modal-footer': {
2540
+ 'display': 'flex',
2541
+ 'flex-wrap': 'wrap',
2542
+ 'align-items': 'center',
2543
+ 'justify-content': 'flex-end',
2544
+ 'padding': '0.75rem 1.5rem',
2545
+ 'border-top': '1px solid #e5e5e5',
2546
+ 'gap': '0.5rem'
2547
+ }
2548
+ },
2549
+
2550
+ /**
2551
+ * Toast notification styles
2552
+ */
2553
+ toast: {
2554
+ '.bw-toast-container': {
2555
+ 'position': 'fixed',
2556
+ 'z-index': '1080',
2557
+ 'pointer-events': 'none',
2558
+ 'display': 'flex',
2559
+ 'flex-direction': 'column',
2560
+ 'gap': '0.5rem',
2561
+ 'padding': '1rem'
2562
+ },
2563
+ '.bw-toast-container.bw-toast-top-right': { 'top': '0', 'right': '0' },
2564
+ '.bw-toast-container.bw-toast-top-left': { 'top': '0', 'left': '0' },
2565
+ '.bw-toast-container.bw-toast-bottom-right': { 'bottom': '0', 'right': '0' },
2566
+ '.bw-toast-container.bw-toast-bottom-left': { 'bottom': '0', 'left': '0' },
2567
+ '.bw-toast-container.bw-toast-top-center': { 'top': '0', 'left': '50%', 'transform': 'translateX(-50%)' },
2568
+ '.bw-toast-container.bw-toast-bottom-center': { 'bottom': '0', 'left': '50%', 'transform': 'translateX(-50%)' },
2569
+ '.bw-toast': {
2570
+ 'pointer-events': 'auto',
2571
+ 'width': '350px',
2572
+ 'max-width': '100%',
2573
+ 'background-color': '#fff',
2574
+ 'background-clip': 'padding-box',
2575
+ 'border': '1px solid rgba(0,0,0,0.1)',
2576
+ 'border-radius': '8px',
2577
+ 'box-shadow': '0 0.5rem 1rem rgba(0,0,0,0.15)',
2578
+ 'opacity': '0',
2579
+ 'transform': 'translateY(-10px)',
2580
+ 'transition': 'opacity 0.3s ease, transform 0.3s ease'
2581
+ },
2582
+ '.bw-toast.bw-toast-show': {
2583
+ 'opacity': '1',
2584
+ 'transform': 'translateY(0)'
2585
+ },
2586
+ '.bw-toast.bw-toast-hiding': {
2587
+ 'opacity': '0',
2588
+ 'transform': 'translateY(-10px)'
2589
+ },
2590
+ '.bw-toast-header': {
2591
+ 'display': 'flex',
2592
+ 'align-items': 'center',
2593
+ 'justify-content': 'space-between',
2594
+ 'padding': '0.5rem 0.75rem',
2595
+ 'border-bottom': '1px solid rgba(0,0,0,0.05)',
2596
+ 'font-size': '0.875rem'
2597
+ },
2598
+ '.bw-toast-body': {
2599
+ 'padding': '0.75rem',
2600
+ 'font-size': '0.9375rem'
2601
+ },
2602
+ '.bw-toast-primary': { 'border-left': '4px solid #006666' },
2603
+ '.bw-toast-secondary': { 'border-left': '4px solid #6c757d' },
2604
+ '.bw-toast-success': { 'border-left': '4px solid #198754' },
2605
+ '.bw-toast-danger': { 'border-left': '4px solid #dc3545' },
2606
+ '.bw-toast-warning': { 'border-left': '4px solid #ffc107' },
2607
+ '.bw-toast-info': { 'border-left': '4px solid #0dcaf0' }
2608
+ },
2609
+
2610
+ /**
2611
+ * Dropdown menu styles
2612
+ */
2613
+ dropdown: {
2614
+ '.bw-dropdown': {
2615
+ 'position': 'relative',
2616
+ 'display': 'inline-block'
2617
+ },
2618
+ '.bw-dropdown-toggle::after': {
2619
+ 'display': 'inline-block',
2620
+ 'margin-left': '0.255em',
2621
+ 'vertical-align': '0.255em',
2622
+ 'content': '""',
2623
+ 'border-top': '0.3em solid',
2624
+ 'border-right': '0.3em solid transparent',
2625
+ 'border-bottom': '0',
2626
+ 'border-left': '0.3em solid transparent'
2627
+ },
2628
+ '.bw-dropdown-menu': {
2629
+ 'position': 'absolute',
2630
+ 'top': '100%',
2631
+ 'left': '0',
2632
+ 'z-index': '1000',
2633
+ 'display': 'none',
2634
+ 'min-width': '10rem',
2635
+ 'padding': '0.5rem 0',
2636
+ 'margin': '0.125rem 0 0',
2637
+ 'background-color': '#fff',
2638
+ 'background-clip': 'padding-box',
2639
+ 'border': '1px solid rgba(0,0,0,0.15)',
2640
+ 'border-radius': '6px',
2641
+ 'box-shadow': '0 0.5rem 1rem rgba(0,0,0,0.15)'
2642
+ },
2643
+ '.bw-dropdown-menu.bw-dropdown-show': {
2644
+ 'display': 'block'
2645
+ },
2646
+ '.bw-dropdown-menu-end': {
2647
+ 'left': 'auto',
2648
+ 'right': '0'
2649
+ },
2650
+ '.bw-dropdown-item': {
2651
+ 'display': 'block',
2652
+ 'width': '100%',
2653
+ 'padding': '0.375rem 1rem',
2654
+ 'clear': 'both',
2655
+ 'font-weight': '400',
2656
+ 'color': '#212529',
2657
+ 'text-align': 'inherit',
2658
+ 'text-decoration': 'none',
2659
+ 'white-space': 'nowrap',
2660
+ 'background-color': 'transparent',
2661
+ 'border': '0',
2662
+ 'font-size': '0.9375rem',
2663
+ 'transition': 'background-color 0.15s, color 0.15s'
2664
+ },
2665
+ '.bw-dropdown-item:hover': {
2666
+ 'color': '#1e2125',
2667
+ 'background-color': '#f8f9fa'
2668
+ },
2669
+ '.bw-dropdown-item.disabled': {
2670
+ 'color': '#adb5bd',
2671
+ 'pointer-events': 'none',
2672
+ 'background-color': 'transparent'
2673
+ },
2674
+ '.bw-dropdown-divider': {
2675
+ 'height': '0',
2676
+ 'margin': '0.5rem 0',
2677
+ 'overflow': 'hidden',
2678
+ 'border-top': '1px solid #e9ecef',
2679
+ 'opacity': '1'
2680
+ }
2681
+ },
2682
+
2683
+ /**
2684
+ * Toggle switch styles
2685
+ */
2686
+ formSwitch: {
2687
+ '.bw-form-switch': {
2688
+ 'padding-left': '2.5em'
2689
+ },
2690
+ '.bw-form-switch .bw-switch-input': {
2691
+ 'width': '2em',
2692
+ 'height': '1.125em',
2693
+ 'margin-left': '-2.5em',
2694
+ 'border-radius': '2em',
2695
+ 'appearance': 'none',
2696
+ 'background-color': '#adb5bd',
2697
+ 'border': '1px solid #adb5bd',
2698
+ 'background-image': "url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba(255,255,255,1)'/%3e%3c/svg%3e\")",
2699
+ 'background-position': 'left center',
2700
+ 'background-repeat': 'no-repeat',
2701
+ 'background-size': 'contain',
2702
+ 'transition': 'background-position 0.15s ease-in-out, background-color 0.15s ease-in-out',
2703
+ 'cursor': 'pointer'
2704
+ },
2705
+ '.bw-form-switch .bw-switch-input:checked': {
2706
+ 'background-color': '#006666',
2707
+ 'border-color': '#006666',
2708
+ 'background-position': 'right center'
2709
+ },
2710
+ '.bw-form-switch .bw-switch-input:focus': {
2711
+ 'box-shadow': '0 0 0 0.25rem rgba(0, 102, 102, 0.25)',
2712
+ 'outline': '0'
2713
+ },
2714
+ '.bw-form-switch .bw-switch-input:disabled': {
2715
+ 'opacity': '0.5',
2716
+ 'cursor': 'not-allowed'
2174
2717
  }
2175
2718
  },
2176
2719
 
2720
+ /**
2721
+ * Skeleton loading placeholder styles
2722
+ */
2723
+ skeleton: {
2724
+ '.bw-skeleton': {
2725
+ 'background-color': '#e9ecef',
2726
+ 'border-radius': '4px',
2727
+ 'animation': 'bw-skeleton-pulse 1.5s ease-in-out infinite'
2728
+ },
2729
+ '.bw-skeleton-text': {
2730
+ 'height': '1em',
2731
+ 'margin-bottom': '0.5rem'
2732
+ },
2733
+ '.bw-skeleton-circle': {
2734
+ 'border-radius': '50%'
2735
+ },
2736
+ '.bw-skeleton-rect': {
2737
+ 'border-radius': '8px'
2738
+ },
2739
+ '.bw-skeleton-group': {
2740
+ 'display': 'flex',
2741
+ 'flex-direction': 'column'
2742
+ },
2743
+ '@keyframes bw-skeleton-pulse': {
2744
+ '0%': { 'opacity': '1' },
2745
+ '50%': { 'opacity': '0.4' },
2746
+ '100%': { 'opacity': '1' }
2747
+ }
2748
+ },
2749
+
2750
+ /**
2751
+ * Avatar styles
2752
+ */
2753
+ avatar: {
2754
+ '.bw-avatar': {
2755
+ 'display': 'inline-flex',
2756
+ 'align-items': 'center',
2757
+ 'justify-content': 'center',
2758
+ 'border-radius': '50%',
2759
+ 'overflow': 'hidden',
2760
+ 'font-weight': '600',
2761
+ 'text-transform': 'uppercase',
2762
+ 'vertical-align': 'middle',
2763
+ 'object-fit': 'cover'
2764
+ },
2765
+ '.bw-avatar-sm': {
2766
+ 'width': '2rem',
2767
+ 'height': '2rem',
2768
+ 'font-size': '0.75rem'
2769
+ },
2770
+ '.bw-avatar-md': {
2771
+ 'width': '3rem',
2772
+ 'height': '3rem',
2773
+ 'font-size': '1rem'
2774
+ },
2775
+ '.bw-avatar-lg': {
2776
+ 'width': '4rem',
2777
+ 'height': '4rem',
2778
+ 'font-size': '1.25rem'
2779
+ },
2780
+ '.bw-avatar-xl': {
2781
+ 'width': '5rem',
2782
+ 'height': '5rem',
2783
+ 'font-size': '1.5rem'
2784
+ },
2785
+ '.bw-avatar-primary': { 'background-color': '#006666', 'color': '#fff' },
2786
+ '.bw-avatar-secondary': { 'background-color': '#6c757d', 'color': '#fff' },
2787
+ '.bw-avatar-success': { 'background-color': '#198754', 'color': '#fff' },
2788
+ '.bw-avatar-danger': { 'background-color': '#dc3545', 'color': '#fff' },
2789
+ '.bw-avatar-warning': { 'background-color': '#ffc107', 'color': '#000' },
2790
+ '.bw-avatar-info': { 'background-color': '#0dcaf0', 'color': '#000' },
2791
+ '.bw-avatar-light': { 'background-color': '#f8f9fa', 'color': '#212529' },
2792
+ '.bw-avatar-dark': { 'background-color': '#212529', 'color': '#fff' }
2793
+ },
2794
+
2177
2795
  /**
2178
2796
  * Utility classes
2179
2797
  */
@@ -2609,7 +3227,7 @@ export function getStructuralStyles() {
2609
3227
  'position': 'relative', 'display': 'flex', 'flex-wrap': 'wrap',
2610
3228
  'align-items': 'center', 'justify-content': 'space-between', 'padding': '0.5rem 1.5rem'
2611
3229
  };
2612
- rules['.bw-navbar > .container'] = { 'display': 'flex', 'flex-wrap': 'wrap', 'align-items': 'center', 'justify-content': 'space-between' };
3230
+ rules['.bw-navbar > .bw-container, .bw-navbar > .container'] = { 'display': 'flex', 'flex-wrap': 'wrap', 'align-items': 'center', 'justify-content': 'space-between' };
2613
3231
  rules['.bw-navbar-brand'] = {
2614
3232
  'display': 'inline-flex', 'align-items': 'center', 'gap': '0.5rem',
2615
3233
  'padding-top': '0.25rem', 'padding-bottom': '0.25rem', 'margin-right': '1.5rem',
@@ -2654,11 +3272,13 @@ export function getStructuralStyles() {
2654
3272
 
2655
3273
  // Badges (structural)
2656
3274
  rules['.bw-badge'] = {
2657
- 'display': 'inline-block', 'padding': '.35em .65em', 'font-size': '.75em',
2658
- 'font-weight': '700', 'line-height': '1', 'text-align': 'center',
3275
+ 'display': 'inline-block', 'padding': '.4em .75em', 'font-size': '.875em',
3276
+ 'font-weight': '600', 'line-height': '1.3', 'text-align': 'center',
2659
3277
  'white-space': 'nowrap', 'vertical-align': 'baseline', 'border-radius': '.375rem'
2660
3278
  };
2661
3279
  rules['.bw-badge:empty'] = { 'display': 'none' };
3280
+ rules['.bw-badge-sm'] = { 'font-size': '.75em', 'padding': '.25em .5em' };
3281
+ rules['.bw-badge-lg'] = { 'font-size': '1em', 'padding': '.5em .9em' };
2662
3282
  rules['.bw-badge-pill'] = { 'border-radius': '50rem' };
2663
3283
 
2664
3284
  // Progress (structural)
@@ -2725,7 +3345,8 @@ export function getStructuralStyles() {
2725
3345
  rules['.bw-hero'] = { 'position': 'relative', 'overflow': 'hidden' };
2726
3346
  rules['.bw-hero-overlay'] = { 'position': 'absolute', 'top': '0', 'left': '0', 'right': '0', 'bottom': '0', 'z-index': '1' };
2727
3347
  rules['.bw-hero-content'] = { 'position': 'relative', 'z-index': '2' };
2728
- rules['.bw-hero-title'] = { 'font-weight': '300', 'letter-spacing': '-0.05rem' };
3348
+ rules['.bw-hero-title'] = { 'font-weight': '300', 'letter-spacing': '-0.05rem', 'color': 'inherit' };
3349
+ rules['.bw-hero-subtitle'] = { 'color': 'inherit' };
2729
3350
  rules['.bw-hero-actions'] = { 'display': 'flex', 'gap': '1rem', 'justify-content': 'center', 'flex-wrap': 'wrap' };
2730
3351
  rules['.bw-display-4'] = { 'font-size': 'calc(1.475rem + 2.7vw)', 'font-weight': '300', 'line-height': '1.2' };
2731
3352
  rules['.bw-lead'] = { 'font-size': '1.25rem', 'font-weight': '300' };
@@ -2798,6 +3419,156 @@ export function getStructuralStyles() {
2798
3419
 
2799
3420
  // Code demo (structural)
2800
3421
  rules['.bw-code-demo'] = { 'margin-bottom': '2rem' };
3422
+ rules['.bw-code-pre'] = { 'margin': '0', 'border': 'none', 'border-radius': '6px', 'overflow-x': 'auto' };
3423
+ rules['.bw-code-block'] = { 'display': 'block', 'padding': '1.25rem', 'font-family': '"SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace', 'font-size': '0.8125rem', 'line-height': '1.6' };
3424
+ rules['.bw-code-copy-btn'] = { 'position': 'absolute', 'top': '0.5rem', 'right': '0.5rem', 'padding': '0.25rem 0.625rem', 'font-size': '0.6875rem', 'border-radius': '4px', 'cursor': 'pointer', 'font-family': 'inherit', 'transition': 'all 0.15s' };
3425
+
3426
+ // Button group (structural)
3427
+ rules['.bw-btn-group, .bw-btn-group-vertical'] = { 'position': 'relative', 'display': 'inline-flex', 'vertical-align': 'middle' };
3428
+ rules['.bw-btn-group > .bw-btn, .bw-btn-group-vertical > .bw-btn'] = { 'position': 'relative', 'flex': '1 1 auto', 'border-radius': '0', 'margin-left': '-1px' };
3429
+ rules['.bw-btn-group > .bw-btn:first-child'] = { 'margin-left': '0', 'border-top-left-radius': '6px', 'border-bottom-left-radius': '6px' };
3430
+ rules['.bw-btn-group > .bw-btn:last-child'] = { 'border-top-right-radius': '6px', 'border-bottom-right-radius': '6px' };
3431
+ rules['.bw-btn-group-vertical'] = { 'flex-direction': 'column', 'align-items': 'flex-start', 'justify-content': 'center' };
3432
+ rules['.bw-btn-group-vertical > .bw-btn'] = { 'width': '100%', 'margin-left': '0', 'margin-top': '-1px' };
3433
+ rules['.bw-btn-group-vertical > .bw-btn:first-child'] = { 'margin-top': '0', 'border-top-left-radius': '6px', 'border-top-right-radius': '6px', 'border-bottom-left-radius': '0', 'border-bottom-right-radius': '0' };
3434
+ rules['.bw-btn-group-vertical > .bw-btn:last-child'] = { 'border-top-left-radius': '0', 'border-top-right-radius': '0', 'border-bottom-left-radius': '6px', 'border-bottom-right-radius': '6px' };
3435
+
3436
+ // Accordion (structural)
3437
+ rules['.bw-accordion'] = { 'border-radius': '8px', 'overflow': 'hidden' };
3438
+ rules['.bw-accordion-item'] = { 'border': '1px solid transparent' };
3439
+ rules['.bw-accordion-item + .bw-accordion-item'] = { 'border-top': '0' };
3440
+ rules['.bw-accordion-header'] = { 'margin': '0' };
3441
+ rules['.bw-accordion-button'] = {
3442
+ 'position': 'relative', 'display': 'flex', 'align-items': 'center', 'width': '100%',
3443
+ 'padding': '1rem 1.25rem', 'font-size': '1rem', 'font-weight': '500', 'text-align': 'left',
3444
+ 'background-color': 'transparent', 'border': '0', 'overflow-anchor': 'none', 'cursor': 'pointer',
3445
+ 'font-family': 'inherit', 'transition': 'color 0.15s ease-in-out, background-color 0.15s ease-in-out'
3446
+ };
3447
+ rules['.bw-accordion-button::after'] = {
3448
+ 'flex-shrink': '0', 'width': '1.25rem', 'height': '1.25rem', 'margin-left': 'auto',
3449
+ 'content': '""', 'background-repeat': 'no-repeat', 'background-size': '1.25rem',
3450
+ 'transition': 'transform 0.2s ease-in-out'
3451
+ };
3452
+ rules['.bw-accordion-button:not(.bw-collapsed)::after'] = { 'transform': 'rotate(-180deg)' };
3453
+ rules['.bw-accordion-collapse'] = { 'max-height': '0', 'overflow': 'hidden', 'transition': 'max-height 0.3s ease' };
3454
+ rules['.bw-accordion-collapse.bw-collapse-show'] = { 'max-height': 'none' };
3455
+ rules['.bw-accordion-body'] = { 'padding': '1rem 1.25rem' };
3456
+
3457
+ // Modal (structural)
3458
+ rules['.bw-modal'] = {
3459
+ 'display': 'none', 'position': 'fixed', 'top': '0', 'left': '0', 'width': '100%', 'height': '100%',
3460
+ 'z-index': '1050', 'overflow-x': 'hidden', 'overflow-y': 'auto', 'opacity': '0', 'transition': 'opacity 0.15s linear'
3461
+ };
3462
+ rules['.bw-modal.bw-modal-show'] = { 'display': 'flex', 'align-items': 'center', 'justify-content': 'center', 'opacity': '1' };
3463
+ rules['.bw-modal-dialog'] = {
3464
+ 'position': 'relative', 'width': '100%', 'max-width': '500px', 'margin': '1.75rem auto',
3465
+ 'pointer-events': 'none', 'transform': 'translateY(-20px)', 'transition': 'transform 0.2s ease-out'
3466
+ };
3467
+ rules['.bw-modal.bw-modal-show .bw-modal-dialog'] = { 'transform': 'translateY(0)' };
3468
+ rules['.bw-modal-sm'] = { 'max-width': '300px' };
3469
+ rules['.bw-modal-lg'] = { 'max-width': '800px' };
3470
+ rules['.bw-modal-xl'] = { 'max-width': '1140px' };
3471
+ rules['.bw-modal-content'] = {
3472
+ 'position': 'relative', 'display': 'flex', 'flex-direction': 'column', 'pointer-events': 'auto',
3473
+ 'background-clip': 'padding-box', 'border': '1px solid transparent', 'border-radius': '8px', 'outline': '0'
3474
+ };
3475
+ rules['.bw-modal-header'] = { 'display': 'flex', 'align-items': 'center', 'justify-content': 'space-between', 'padding': '1rem 1.5rem' };
3476
+ rules['.bw-modal-title'] = { 'margin': '0', 'font-size': '1.25rem', 'font-weight': '600', 'line-height': '1.3' };
3477
+ rules['.bw-modal-body'] = { 'position': 'relative', 'flex': '1 1 auto', 'padding': '1.5rem' };
3478
+ rules['.bw-modal-footer'] = { 'display': 'flex', 'flex-wrap': 'wrap', 'align-items': 'center', 'justify-content': 'flex-end', 'padding': '0.75rem 1.5rem', 'gap': '0.5rem' };
3479
+
3480
+ // Toast (structural)
3481
+ rules['.bw-toast-container'] = {
3482
+ 'position': 'fixed', 'z-index': '1080', 'pointer-events': 'none',
3483
+ 'display': 'flex', 'flex-direction': 'column', 'gap': '0.5rem', 'padding': '1rem'
3484
+ };
3485
+ rules['.bw-toast'] = {
3486
+ 'pointer-events': 'auto', 'width': '350px', 'max-width': '100%', 'background-clip': 'padding-box',
3487
+ 'border-radius': '8px', 'opacity': '0', 'transform': 'translateY(-10px)',
3488
+ 'transition': 'opacity 0.3s ease, transform 0.3s ease'
3489
+ };
3490
+ rules['.bw-toast.bw-toast-show'] = { 'opacity': '1', 'transform': 'translateY(0)' };
3491
+ rules['.bw-toast.bw-toast-hiding'] = { 'opacity': '0', 'transform': 'translateY(-10px)' };
3492
+ rules['.bw-toast-header'] = { 'display': 'flex', 'align-items': 'center', 'justify-content': 'space-between', 'padding': '0.5rem 0.75rem', 'font-size': '0.875rem' };
3493
+ rules['.bw-toast-body'] = { 'padding': '0.75rem', 'font-size': '0.9375rem' };
3494
+
3495
+ // Dropdown (structural)
3496
+ rules['.bw-dropdown'] = { 'position': 'relative', 'display': 'inline-block' };
3497
+ rules['.bw-dropdown-toggle::after'] = {
3498
+ 'display': 'inline-block', 'margin-left': '0.255em', 'vertical-align': '0.255em',
3499
+ 'content': '""', 'border-top': '0.3em solid', 'border-right': '0.3em solid transparent',
3500
+ 'border-bottom': '0', 'border-left': '0.3em solid transparent'
3501
+ };
3502
+ rules['.bw-dropdown-menu'] = {
3503
+ 'position': 'absolute', 'top': '100%', 'left': '0', 'z-index': '1000', 'display': 'none',
3504
+ 'min-width': '10rem', 'padding': '0.5rem 0', 'margin': '0.125rem 0 0',
3505
+ 'background-clip': 'padding-box', 'border-radius': '6px'
3506
+ };
3507
+ rules['.bw-dropdown-menu.bw-dropdown-show'] = { 'display': 'block' };
3508
+ rules['.bw-dropdown-menu-end'] = { 'left': 'auto', 'right': '0' };
3509
+ rules['.bw-dropdown-item'] = {
3510
+ 'display': 'block', 'width': '100%', 'padding': '0.375rem 1rem', 'clear': 'both',
3511
+ 'font-weight': '400', 'text-align': 'inherit', 'text-decoration': 'none', 'white-space': 'nowrap',
3512
+ 'background-color': 'transparent', 'border': '0', 'font-size': '0.9375rem',
3513
+ 'transition': 'background-color 0.15s, color 0.15s'
3514
+ };
3515
+ rules['.bw-dropdown-divider'] = { 'height': '0', 'margin': '0.5rem 0', 'overflow': 'hidden', 'opacity': '1' };
3516
+
3517
+ // Switch (structural)
3518
+ rules['.bw-form-switch'] = { 'padding-left': '2.5em' };
3519
+ rules['.bw-form-switch .bw-switch-input'] = {
3520
+ 'width': '2em', 'height': '1.125em', 'margin-left': '-2.5em', 'border-radius': '2em',
3521
+ 'appearance': 'none', 'background-position': 'left center', 'background-repeat': 'no-repeat',
3522
+ 'background-size': 'contain', 'transition': 'background-position 0.15s ease-in-out, background-color 0.15s ease-in-out',
3523
+ 'cursor': 'pointer'
3524
+ };
3525
+ rules['.bw-form-switch .bw-switch-input:checked'] = { 'background-position': 'right center' };
3526
+ rules['.bw-form-switch .bw-switch-input:disabled'] = { 'opacity': '0.5', 'cursor': 'not-allowed' };
3527
+
3528
+ // Skeleton (structural)
3529
+ rules['.bw-skeleton'] = { 'border-radius': '4px', 'animation': 'bw-skeleton-pulse 1.5s ease-in-out infinite' };
3530
+ rules['.bw-skeleton-text'] = { 'height': '1em', 'margin-bottom': '0.5rem' };
3531
+ rules['.bw-skeleton-circle'] = { 'border-radius': '50%' };
3532
+ rules['.bw-skeleton-rect'] = { 'border-radius': '8px' };
3533
+ rules['.bw-skeleton-group'] = { 'display': 'flex', 'flex-direction': 'column' };
3534
+ rules['@keyframes bw-skeleton-pulse'] = { '0%': { 'opacity': '1' }, '50%': { 'opacity': '0.4' }, '100%': { 'opacity': '1' } };
3535
+
3536
+ // Avatar (structural)
3537
+ rules['.bw-avatar'] = {
3538
+ 'display': 'inline-flex', 'align-items': 'center', 'justify-content': 'center',
3539
+ 'border-radius': '50%', 'overflow': 'hidden', 'font-weight': '600',
3540
+ 'text-transform': 'uppercase', 'vertical-align': 'middle', 'object-fit': 'cover'
3541
+ };
3542
+ rules['.bw-avatar-sm'] = { 'width': '2rem', 'height': '2rem', 'font-size': '0.75rem' };
3543
+ rules['.bw-avatar-md'] = { 'width': '3rem', 'height': '3rem', 'font-size': '1rem' };
3544
+ rules['.bw-avatar-lg'] = { 'width': '4rem', 'height': '4rem', 'font-size': '1.25rem' };
3545
+ rules['.bw-avatar-xl'] = { 'width': '5rem', 'height': '5rem', 'font-size': '1.5rem' };
3546
+
3547
+ // Bar chart (structural)
3548
+ rules['.bw-bar-chart-container'] = {
3549
+ 'padding': '1rem', 'border': '1px solid transparent', 'border-radius': '8px'
3550
+ };
3551
+ rules['.bw-bar-chart'] = {
3552
+ 'display': 'flex', 'align-items': 'flex-end', 'gap': '6px', 'padding': '0 0.5rem'
3553
+ };
3554
+ rules['.bw-bar-group'] = {
3555
+ 'flex': '1', 'display': 'flex', 'flex-direction': 'column',
3556
+ 'align-items': 'center', 'height': '100%', 'justify-content': 'flex-end'
3557
+ };
3558
+ rules['.bw-bar'] = {
3559
+ 'width': '100%', 'border-radius': '3px 3px 0 0',
3560
+ 'transition': 'height 0.5s ease', 'min-height': '4px'
3561
+ };
3562
+ rules['.bw-bar:hover'] = { 'opacity': '0.85' };
3563
+ rules['.bw-bar-value'] = {
3564
+ 'font-size': '0.65rem', 'font-weight': '600', 'margin-bottom': '2px', 'text-align': 'center'
3565
+ };
3566
+ rules['.bw-bar-label'] = {
3567
+ 'font-size': '0.7rem', 'margin-top': '4px', 'text-align': 'center'
3568
+ };
3569
+ rules['.bw-bar-chart-title'] = {
3570
+ 'font-size': '1.1rem', 'font-weight': '600', 'margin': '0 0 0.75rem 0'
3571
+ };
2801
3572
 
2802
3573
  // Spacing utilities (structural)
2803
3574
  var spacingValues = { '0': '0', '1': '.25rem', '2': '.5rem', '3': '1rem', '4': '1.5rem', '5': '3rem' };
@@ -2969,6 +3740,14 @@ export function getAllStyles() {
2969
3740
  defaultStyles.stacks,
2970
3741
  defaultStyles.offsets,
2971
3742
  defaultStyles.codeDemo,
3743
+ defaultStyles.buttonGroup,
3744
+ defaultStyles.accordion,
3745
+ defaultStyles.modal,
3746
+ defaultStyles.toast,
3747
+ defaultStyles.dropdown,
3748
+ defaultStyles.formSwitch,
3749
+ defaultStyles.skeleton,
3750
+ defaultStyles.avatar,
2972
3751
  defaultStyles.utilities,
2973
3752
  defaultStyles.responsive
2974
3753
  );
@@ -3162,6 +3941,56 @@ export function generateDarkModeCSS(palette) {
3162
3941
  '.bw-dark .bw-close': {
3163
3942
  'color': textColor
3164
3943
  },
3944
+ '.bw-dark .bw-accordion-item': {
3945
+ 'background-color': surfaceBg,
3946
+ 'border-color': borderColor
3947
+ },
3948
+ '.bw-dark .bw-accordion-button': {
3949
+ 'color': textColor
3950
+ },
3951
+ '.bw-dark .bw-accordion-button:hover': {
3952
+ 'background-color': bodyBg
3953
+ },
3954
+ '.bw-dark .bw-accordion-body': {
3955
+ 'border-top-color': borderColor
3956
+ },
3957
+ '.bw-dark .bw-modal-content': {
3958
+ 'background-color': surfaceBg,
3959
+ 'border-color': borderColor
3960
+ },
3961
+ '.bw-dark .bw-modal-header': {
3962
+ 'border-bottom-color': borderColor
3963
+ },
3964
+ '.bw-dark .bw-modal-footer': {
3965
+ 'border-top-color': borderColor
3966
+ },
3967
+ '.bw-dark .bw-modal-title': {
3968
+ 'color': textColor
3969
+ },
3970
+ '.bw-dark .bw-toast': {
3971
+ 'background-color': surfaceBg,
3972
+ 'border-color': borderColor
3973
+ },
3974
+ '.bw-dark .bw-toast-header': {
3975
+ 'border-bottom-color': borderColor,
3976
+ 'color': textColor
3977
+ },
3978
+ '.bw-dark .bw-dropdown-menu': {
3979
+ 'background-color': surfaceBg,
3980
+ 'border-color': borderColor
3981
+ },
3982
+ '.bw-dark .bw-dropdown-item': {
3983
+ 'color': textColor
3984
+ },
3985
+ '.bw-dark .bw-dropdown-item:hover': {
3986
+ 'background-color': bodyBg
3987
+ },
3988
+ '.bw-dark .bw-dropdown-divider': {
3989
+ 'border-top-color': borderColor
3990
+ },
3991
+ '.bw-dark .bw-skeleton': {
3992
+ 'background-color': borderColor
3993
+ },
3165
3994
  '.bw-dark h1, .bw-dark h2, .bw-dark h3, .bw-dark h4, .bw-dark h5, .bw-dark h6': {
3166
3995
  'color': textColor
3167
3996
  },