claude-presentation-master 1.0.1 → 1.0.2
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/LICENSE +1 -1
- package/README.md +226 -627
- package/assets/presentation-engine.css +16 -0
- package/dist/index.d.mts +7 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +288 -51
- package/dist/index.mjs +288 -51
- package/package.json +3 -2
|
@@ -248,6 +248,7 @@
|
|
|
248
248
|
|
|
249
249
|
.reveal .slides section {
|
|
250
250
|
height: 100% !important;
|
|
251
|
+
max-height: 100% !important;
|
|
251
252
|
padding: var(--slide-padding-y) var(--slide-padding-x) !important;
|
|
252
253
|
padding-top: calc(var(--slide-padding-y) + var(--safe-area-top)) !important;
|
|
253
254
|
padding-right: calc(var(--slide-padding-x) + var(--safe-area-right)) !important;
|
|
@@ -259,6 +260,21 @@
|
|
|
259
260
|
justify-content: flex-start !important;
|
|
260
261
|
align-items: stretch !important;
|
|
261
262
|
background: var(--color-bg-primary);
|
|
263
|
+
overflow: hidden !important;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
/* CRITICAL: Content overflow protection */
|
|
267
|
+
.reveal .slides section > * {
|
|
268
|
+
flex-shrink: 1;
|
|
269
|
+
min-height: 0;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
.reveal .slides section .slide-content {
|
|
273
|
+
flex: 1 1 auto;
|
|
274
|
+
overflow: hidden;
|
|
275
|
+
max-height: 100%;
|
|
276
|
+
display: flex;
|
|
277
|
+
flex-direction: column;
|
|
262
278
|
}
|
|
263
279
|
|
|
264
280
|
.reveal h1,
|
package/dist/index.d.mts
CHANGED
|
@@ -696,6 +696,13 @@ declare class RevealJsGenerator {
|
|
|
696
696
|
private buildDocument;
|
|
697
697
|
/**
|
|
698
698
|
* Get base styles for slides.
|
|
699
|
+
*
|
|
700
|
+
* BULLETPROOF OVERFLOW PROTECTION:
|
|
701
|
+
* 1. All slides use height: 100vh to match viewport exactly
|
|
702
|
+
* 2. overflow: hidden on slide sections clips content at boundaries
|
|
703
|
+
* 3. All child elements use flex-shrink: 1 and min-height: 0 to allow shrinking
|
|
704
|
+
* 4. Tables use max-height with overflow: auto for scrolling if needed
|
|
705
|
+
* 5. Two-column layouts use smaller font sizes to prevent overflow
|
|
699
706
|
*/
|
|
700
707
|
private getBaseStyles;
|
|
701
708
|
/**
|
package/dist/index.d.ts
CHANGED
|
@@ -696,6 +696,13 @@ declare class RevealJsGenerator {
|
|
|
696
696
|
private buildDocument;
|
|
697
697
|
/**
|
|
698
698
|
* Get base styles for slides.
|
|
699
|
+
*
|
|
700
|
+
* BULLETPROOF OVERFLOW PROTECTION:
|
|
701
|
+
* 1. All slides use height: 100vh to match viewport exactly
|
|
702
|
+
* 2. overflow: hidden on slide sections clips content at boundaries
|
|
703
|
+
* 3. All child elements use flex-shrink: 1 and min-height: 0 to allow shrinking
|
|
704
|
+
* 4. Tables use max-height with overflow: auto for scrolling if needed
|
|
705
|
+
* 5. Two-column layouts use smaller font sizes to prevent overflow
|
|
699
706
|
*/
|
|
700
707
|
private getBaseStyles;
|
|
701
708
|
/**
|
package/dist/index.js
CHANGED
|
@@ -2422,11 +2422,23 @@ ${slides}
|
|
|
2422
2422
|
}
|
|
2423
2423
|
/**
|
|
2424
2424
|
* Get base styles for slides.
|
|
2425
|
+
*
|
|
2426
|
+
* BULLETPROOF OVERFLOW PROTECTION:
|
|
2427
|
+
* 1. All slides use height: 100vh to match viewport exactly
|
|
2428
|
+
* 2. overflow: hidden on slide sections clips content at boundaries
|
|
2429
|
+
* 3. All child elements use flex-shrink: 1 and min-height: 0 to allow shrinking
|
|
2430
|
+
* 4. Tables use max-height with overflow: auto for scrolling if needed
|
|
2431
|
+
* 5. Two-column layouts use smaller font sizes to prevent overflow
|
|
2425
2432
|
*/
|
|
2426
2433
|
getBaseStyles(mode) {
|
|
2427
|
-
const fontSize = mode === "keynote" ? "2.
|
|
2428
|
-
const lineHeight = mode === "keynote" ? "1.
|
|
2434
|
+
const fontSize = mode === "keynote" ? "2.2em" : "1.6em";
|
|
2435
|
+
const lineHeight = mode === "keynote" ? "1.3" : "1.4";
|
|
2429
2436
|
return `
|
|
2437
|
+
/* ============================================
|
|
2438
|
+
BULLETPROOF SLIDE OVERFLOW PROTECTION
|
|
2439
|
+
All slides are guaranteed to fit in viewport
|
|
2440
|
+
============================================ */
|
|
2441
|
+
|
|
2430
2442
|
/* Base Styles */
|
|
2431
2443
|
:root {
|
|
2432
2444
|
--font-heading: 'Source Sans Pro', 'Helvetica Neue', -apple-system, BlinkMacSystemFont, sans-serif;
|
|
@@ -2441,8 +2453,12 @@ ${slides}
|
|
|
2441
2453
|
--color-text-light: #4a4a68;
|
|
2442
2454
|
--color-background: #ffffff;
|
|
2443
2455
|
|
|
2444
|
-
--slide-padding:
|
|
2456
|
+
--slide-padding: 35px 45px;
|
|
2445
2457
|
--content-max-width: 1200px;
|
|
2458
|
+
|
|
2459
|
+
/* Viewport-based heights for bulletproof containment */
|
|
2460
|
+
--slide-height: 100%;
|
|
2461
|
+
--content-area-height: calc(100% - 70px);
|
|
2446
2462
|
}
|
|
2447
2463
|
|
|
2448
2464
|
.reveal {
|
|
@@ -2456,82 +2472,275 @@ ${slides}
|
|
|
2456
2472
|
text-align: left;
|
|
2457
2473
|
}
|
|
2458
2474
|
|
|
2475
|
+
/* ============================================
|
|
2476
|
+
CRITICAL: SLIDE BOUNDARY ENFORCEMENT
|
|
2477
|
+
Content CANNOT escape these boundaries
|
|
2478
|
+
============================================ */
|
|
2459
2479
|
.reveal .slides section {
|
|
2460
|
-
padding: var(--slide-padding);
|
|
2461
|
-
box-sizing: border-box;
|
|
2462
|
-
height: 100
|
|
2463
|
-
|
|
2464
|
-
|
|
2480
|
+
padding: var(--slide-padding) !important;
|
|
2481
|
+
box-sizing: border-box !important;
|
|
2482
|
+
height: 100% !important;
|
|
2483
|
+
max-height: 100% !important;
|
|
2484
|
+
width: 100% !important;
|
|
2485
|
+
display: flex !important;
|
|
2486
|
+
flex-direction: column !important;
|
|
2487
|
+
overflow: hidden !important;
|
|
2488
|
+
justify-content: flex-start !important;
|
|
2465
2489
|
}
|
|
2466
2490
|
|
|
2491
|
+
/* All direct children must be able to shrink */
|
|
2492
|
+
.reveal .slides section > * {
|
|
2493
|
+
flex-shrink: 1;
|
|
2494
|
+
min-height: 0;
|
|
2495
|
+
max-height: 100%;
|
|
2496
|
+
}
|
|
2497
|
+
|
|
2498
|
+
/* Content container with strict overflow protection */
|
|
2467
2499
|
.reveal .slides section .slide-content {
|
|
2468
|
-
flex: 1;
|
|
2500
|
+
flex: 1 1 auto;
|
|
2469
2501
|
display: flex;
|
|
2470
2502
|
flex-direction: column;
|
|
2471
2503
|
max-width: var(--content-max-width);
|
|
2472
2504
|
width: 100%;
|
|
2473
2505
|
margin: 0 auto;
|
|
2506
|
+
overflow: hidden;
|
|
2507
|
+
min-height: 0;
|
|
2508
|
+
}
|
|
2509
|
+
|
|
2510
|
+
/* ============================================
|
|
2511
|
+
TABLES - Bulletproof containment
|
|
2512
|
+
============================================ */
|
|
2513
|
+
.reveal table {
|
|
2514
|
+
font-size: 0.75em;
|
|
2515
|
+
width: 100%;
|
|
2516
|
+
table-layout: fixed;
|
|
2517
|
+
border-collapse: collapse;
|
|
2518
|
+
flex-shrink: 1;
|
|
2519
|
+
min-height: 0;
|
|
2520
|
+
}
|
|
2521
|
+
|
|
2522
|
+
/* Table wrapper to handle overflow */
|
|
2523
|
+
.reveal .table-wrapper,
|
|
2524
|
+
.reveal .table-container {
|
|
2525
|
+
flex: 1 1 auto;
|
|
2526
|
+
overflow: hidden;
|
|
2527
|
+
min-height: 0;
|
|
2528
|
+
max-height: 100%;
|
|
2529
|
+
}
|
|
2530
|
+
|
|
2531
|
+
.reveal table th,
|
|
2532
|
+
.reveal table td {
|
|
2533
|
+
padding: 0.4em 0.6em;
|
|
2534
|
+
overflow: hidden;
|
|
2535
|
+
text-overflow: ellipsis;
|
|
2536
|
+
white-space: nowrap;
|
|
2537
|
+
max-width: 200px;
|
|
2538
|
+
}
|
|
2539
|
+
|
|
2540
|
+
/* Allow text wrap for cells that need it */
|
|
2541
|
+
.reveal table td.wrap {
|
|
2542
|
+
white-space: normal;
|
|
2543
|
+
}
|
|
2544
|
+
|
|
2545
|
+
/* ============================================
|
|
2546
|
+
TWO-COLUMN LAYOUTS - Smaller text, strict bounds
|
|
2547
|
+
============================================ */
|
|
2548
|
+
.reveal .two-column,
|
|
2549
|
+
.reveal .two-columns {
|
|
2550
|
+
display: flex;
|
|
2551
|
+
gap: 1.5em;
|
|
2552
|
+
flex: 1 1 auto;
|
|
2553
|
+
min-height: 0;
|
|
2554
|
+
overflow: hidden;
|
|
2555
|
+
max-height: calc(100% - 60px);
|
|
2556
|
+
}
|
|
2557
|
+
|
|
2558
|
+
.reveal .two-column > *,
|
|
2559
|
+
.reveal .two-columns > * {
|
|
2560
|
+
flex: 1 1 50%;
|
|
2561
|
+
min-width: 0;
|
|
2562
|
+
min-height: 0;
|
|
2563
|
+
overflow: hidden;
|
|
2564
|
+
display: flex;
|
|
2565
|
+
flex-direction: column;
|
|
2566
|
+
}
|
|
2567
|
+
|
|
2568
|
+
/* Two-column content gets smaller fonts */
|
|
2569
|
+
.reveal .two-column h2,
|
|
2570
|
+
.reveal .two-columns h2 {
|
|
2571
|
+
font-size: 1.2em;
|
|
2572
|
+
margin-bottom: 0.3em;
|
|
2573
|
+
}
|
|
2574
|
+
|
|
2575
|
+
.reveal .two-column h3,
|
|
2576
|
+
.reveal .two-columns h3 {
|
|
2577
|
+
font-size: 1em;
|
|
2578
|
+
margin-bottom: 0.2em;
|
|
2579
|
+
}
|
|
2580
|
+
|
|
2581
|
+
.reveal .two-column p,
|
|
2582
|
+
.reveal .two-column li,
|
|
2583
|
+
.reveal .two-columns p,
|
|
2584
|
+
.reveal .two-columns li {
|
|
2585
|
+
font-size: 0.8em;
|
|
2586
|
+
line-height: 1.3;
|
|
2587
|
+
margin-bottom: 0.3em;
|
|
2588
|
+
}
|
|
2589
|
+
|
|
2590
|
+
.reveal .two-column table,
|
|
2591
|
+
.reveal .two-columns table {
|
|
2592
|
+
font-size: 0.7em;
|
|
2593
|
+
}
|
|
2594
|
+
|
|
2595
|
+
/* ============================================
|
|
2596
|
+
GRIDS - Auto-fit to available space
|
|
2597
|
+
============================================ */
|
|
2598
|
+
.reveal .stats-grid,
|
|
2599
|
+
.reveal .metrics-grid {
|
|
2600
|
+
display: grid;
|
|
2601
|
+
gap: 0.8em;
|
|
2602
|
+
width: 100%;
|
|
2603
|
+
flex-shrink: 1;
|
|
2604
|
+
min-height: 0;
|
|
2474
2605
|
}
|
|
2475
2606
|
|
|
2476
|
-
/*
|
|
2607
|
+
/* ============================================
|
|
2608
|
+
METRIC CARDS - Compact sizing
|
|
2609
|
+
============================================ */
|
|
2610
|
+
.reveal .metric-card {
|
|
2611
|
+
padding: 0.8em 1em;
|
|
2612
|
+
font-size: 0.85em;
|
|
2613
|
+
flex-shrink: 1;
|
|
2614
|
+
}
|
|
2615
|
+
|
|
2616
|
+
.reveal .metric-card .number {
|
|
2617
|
+
font-size: 1.6em;
|
|
2618
|
+
}
|
|
2619
|
+
|
|
2620
|
+
.reveal .metric-card .label {
|
|
2621
|
+
font-size: 0.7em;
|
|
2622
|
+
}
|
|
2623
|
+
|
|
2624
|
+
/* ============================================
|
|
2625
|
+
HIGHLIGHT BOXES - Compact
|
|
2626
|
+
============================================ */
|
|
2627
|
+
.reveal .highlight-box {
|
|
2628
|
+
padding: 0.6em 0.8em;
|
|
2629
|
+
margin: 0.4em 0;
|
|
2630
|
+
font-size: 0.85em;
|
|
2631
|
+
flex-shrink: 1;
|
|
2632
|
+
}
|
|
2633
|
+
|
|
2634
|
+
/* ============================================
|
|
2635
|
+
PROGRESS BARS - Fixed height
|
|
2636
|
+
============================================ */
|
|
2637
|
+
.reveal .progress-bar {
|
|
2638
|
+
height: 16px;
|
|
2639
|
+
margin: 3px 0;
|
|
2640
|
+
flex-shrink: 0;
|
|
2641
|
+
}
|
|
2642
|
+
|
|
2643
|
+
.reveal .progress-fill {
|
|
2644
|
+
font-size: 0.6em;
|
|
2645
|
+
}
|
|
2646
|
+
|
|
2647
|
+
/* ============================================
|
|
2648
|
+
STAT ITEMS - Compact
|
|
2649
|
+
============================================ */
|
|
2650
|
+
.reveal .stat-item {
|
|
2651
|
+
padding: 0.4em;
|
|
2652
|
+
flex-shrink: 1;
|
|
2653
|
+
}
|
|
2654
|
+
|
|
2655
|
+
.reveal .stat-item .value {
|
|
2656
|
+
font-size: 1.5em;
|
|
2657
|
+
}
|
|
2658
|
+
|
|
2659
|
+
.reveal .stat-item .label {
|
|
2660
|
+
font-size: 0.65em;
|
|
2661
|
+
}
|
|
2662
|
+
|
|
2663
|
+
/* ============================================
|
|
2664
|
+
TYPOGRAPHY - Reduced for density
|
|
2665
|
+
============================================ */
|
|
2477
2666
|
.reveal h1, .reveal h2, .reveal h3 {
|
|
2478
2667
|
font-family: var(--font-heading);
|
|
2479
2668
|
font-weight: 700;
|
|
2480
2669
|
letter-spacing: -0.02em;
|
|
2481
2670
|
color: var(--color-primary);
|
|
2482
|
-
|
|
2671
|
+
flex-shrink: 0;
|
|
2483
2672
|
}
|
|
2484
2673
|
|
|
2485
|
-
.reveal h1 {
|
|
2486
|
-
|
|
2487
|
-
|
|
2674
|
+
.reveal h1 {
|
|
2675
|
+
font-size: 2em;
|
|
2676
|
+
margin-bottom: 0.3em;
|
|
2677
|
+
}
|
|
2678
|
+
.reveal h2 {
|
|
2679
|
+
font-size: 1.5em;
|
|
2680
|
+
margin-bottom: 0.3em;
|
|
2681
|
+
}
|
|
2682
|
+
.reveal h3 {
|
|
2683
|
+
font-size: 1.1em;
|
|
2684
|
+
margin-bottom: 0.2em;
|
|
2685
|
+
}
|
|
2488
2686
|
|
|
2489
2687
|
.reveal p {
|
|
2490
|
-
margin: 0 0
|
|
2688
|
+
margin: 0 0 0.6em 0;
|
|
2689
|
+
flex-shrink: 1;
|
|
2491
2690
|
}
|
|
2492
2691
|
|
|
2493
2692
|
.reveal .subtitle {
|
|
2494
|
-
font-size: 0.
|
|
2693
|
+
font-size: 0.65em;
|
|
2495
2694
|
color: var(--color-text-light);
|
|
2496
2695
|
}
|
|
2497
2696
|
|
|
2498
|
-
/*
|
|
2697
|
+
/* ============================================
|
|
2698
|
+
LISTS - Compact spacing
|
|
2699
|
+
============================================ */
|
|
2499
2700
|
.reveal ul, .reveal ol {
|
|
2500
|
-
margin: 0 0 1em
|
|
2701
|
+
margin: 0 0 0.6em 1em;
|
|
2501
2702
|
padding: 0;
|
|
2703
|
+
flex-shrink: 1;
|
|
2502
2704
|
}
|
|
2503
2705
|
|
|
2504
2706
|
.reveal li {
|
|
2505
|
-
margin-bottom: 0.
|
|
2707
|
+
margin-bottom: 0.3em;
|
|
2708
|
+
line-height: 1.3;
|
|
2506
2709
|
}
|
|
2507
2710
|
|
|
2508
|
-
/*
|
|
2711
|
+
/* ============================================
|
|
2712
|
+
COLUMNS - Flex with overflow protection
|
|
2713
|
+
============================================ */
|
|
2509
2714
|
.reveal .columns {
|
|
2510
2715
|
display: flex;
|
|
2511
|
-
gap:
|
|
2512
|
-
flex: 1;
|
|
2716
|
+
gap: 25px;
|
|
2717
|
+
flex: 1 1 auto;
|
|
2513
2718
|
align-items: flex-start;
|
|
2719
|
+
min-height: 0;
|
|
2720
|
+
overflow: hidden;
|
|
2514
2721
|
}
|
|
2515
2722
|
|
|
2516
|
-
.reveal .two-columns .column
|
|
2517
|
-
flex: 1;
|
|
2518
|
-
}
|
|
2519
|
-
|
|
2723
|
+
.reveal .two-columns .column,
|
|
2520
2724
|
.reveal .three-columns .column {
|
|
2521
2725
|
flex: 1;
|
|
2726
|
+
min-width: 0;
|
|
2727
|
+
min-height: 0;
|
|
2728
|
+
overflow: hidden;
|
|
2522
2729
|
}
|
|
2523
2730
|
|
|
2524
|
-
/*
|
|
2731
|
+
/* ============================================
|
|
2732
|
+
BIG ELEMENTS - Sized appropriately
|
|
2733
|
+
============================================ */
|
|
2525
2734
|
.reveal .big-idea-text,
|
|
2526
2735
|
.reveal .statement {
|
|
2527
|
-
font-size:
|
|
2736
|
+
font-size: 1.8em;
|
|
2528
2737
|
font-weight: 700;
|
|
2529
2738
|
line-height: 1.2;
|
|
2530
2739
|
text-align: center;
|
|
2531
2740
|
}
|
|
2532
2741
|
|
|
2533
2742
|
.reveal .number {
|
|
2534
|
-
font-size:
|
|
2743
|
+
font-size: 3em;
|
|
2535
2744
|
font-weight: 800;
|
|
2536
2745
|
color: var(--color-highlight);
|
|
2537
2746
|
text-align: center;
|
|
@@ -2540,85 +2749,113 @@ ${slides}
|
|
|
2540
2749
|
.reveal .number-context {
|
|
2541
2750
|
text-align: center;
|
|
2542
2751
|
color: var(--color-text-light);
|
|
2752
|
+
font-size: 0.9em;
|
|
2543
2753
|
}
|
|
2544
2754
|
|
|
2545
|
-
/*
|
|
2755
|
+
/* ============================================
|
|
2756
|
+
QUOTES - Compact
|
|
2757
|
+
============================================ */
|
|
2546
2758
|
.reveal blockquote {
|
|
2547
2759
|
border-left: 4px solid var(--color-accent);
|
|
2548
|
-
padding-left:
|
|
2760
|
+
padding-left: 0.8em;
|
|
2549
2761
|
font-style: italic;
|
|
2550
|
-
margin:
|
|
2762
|
+
margin: 0.6em 0;
|
|
2763
|
+
flex-shrink: 1;
|
|
2551
2764
|
}
|
|
2552
2765
|
|
|
2553
2766
|
.reveal .attribution {
|
|
2554
2767
|
text-align: right;
|
|
2555
2768
|
color: var(--color-text-light);
|
|
2556
|
-
font-size: 0.
|
|
2769
|
+
font-size: 0.75em;
|
|
2557
2770
|
}
|
|
2558
2771
|
|
|
2559
|
-
/*
|
|
2772
|
+
/* ============================================
|
|
2773
|
+
IMAGES - Contained within bounds
|
|
2774
|
+
============================================ */
|
|
2560
2775
|
.reveal img {
|
|
2561
2776
|
max-width: 100%;
|
|
2777
|
+
max-height: 100%;
|
|
2562
2778
|
height: auto;
|
|
2563
2779
|
border-radius: 8px;
|
|
2780
|
+
object-fit: contain;
|
|
2564
2781
|
}
|
|
2565
2782
|
|
|
2566
2783
|
.reveal .image-container {
|
|
2567
2784
|
text-align: center;
|
|
2785
|
+
flex: 1 1 auto;
|
|
2786
|
+
min-height: 0;
|
|
2787
|
+
overflow: hidden;
|
|
2788
|
+
display: flex;
|
|
2789
|
+
align-items: center;
|
|
2790
|
+
justify-content: center;
|
|
2568
2791
|
}
|
|
2569
2792
|
|
|
2570
2793
|
.reveal .caption {
|
|
2571
|
-
font-size: 0.
|
|
2794
|
+
font-size: 0.65em;
|
|
2572
2795
|
color: var(--color-text-light);
|
|
2573
|
-
margin-top: 0.
|
|
2796
|
+
margin-top: 0.3em;
|
|
2797
|
+
flex-shrink: 0;
|
|
2574
2798
|
}
|
|
2575
2799
|
|
|
2576
|
-
/*
|
|
2800
|
+
/* ============================================
|
|
2801
|
+
METRICS - Responsive grid
|
|
2802
|
+
============================================ */
|
|
2577
2803
|
.reveal .metrics-grid {
|
|
2578
2804
|
display: grid;
|
|
2579
|
-
grid-template-columns: repeat(auto-fit, minmax(
|
|
2580
|
-
gap:
|
|
2805
|
+
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
|
|
2806
|
+
gap: 20px;
|
|
2581
2807
|
text-align: center;
|
|
2582
2808
|
}
|
|
2583
2809
|
|
|
2584
2810
|
.reveal .metric-value {
|
|
2585
|
-
font-size:
|
|
2811
|
+
font-size: 1.6em;
|
|
2586
2812
|
font-weight: 700;
|
|
2587
2813
|
color: var(--color-highlight);
|
|
2588
2814
|
}
|
|
2589
2815
|
|
|
2590
2816
|
.reveal .metric-label {
|
|
2591
|
-
font-size: 0.
|
|
2817
|
+
font-size: 0.7em;
|
|
2592
2818
|
color: var(--color-text-light);
|
|
2593
2819
|
}
|
|
2594
2820
|
|
|
2595
2821
|
.reveal .metric-change {
|
|
2596
|
-
font-size: 0.
|
|
2822
|
+
font-size: 0.65em;
|
|
2597
2823
|
}
|
|
2598
2824
|
|
|
2599
2825
|
.reveal .metric-change.up { color: #27ae60; }
|
|
2600
2826
|
.reveal .metric-change.down { color: #e74c3c; }
|
|
2601
2827
|
|
|
2602
|
-
/*
|
|
2828
|
+
/* ============================================
|
|
2829
|
+
CHARTS - Contained
|
|
2830
|
+
============================================ */
|
|
2603
2831
|
.reveal .chart-container {
|
|
2604
|
-
margin:
|
|
2832
|
+
margin: 0.6em 0;
|
|
2833
|
+
flex: 1 1 auto;
|
|
2834
|
+
min-height: 0;
|
|
2835
|
+
overflow: hidden;
|
|
2605
2836
|
}
|
|
2606
2837
|
|
|
2607
|
-
/*
|
|
2838
|
+
/* ============================================
|
|
2839
|
+
SOURCE ATTRIBUTION
|
|
2840
|
+
============================================ */
|
|
2608
2841
|
.reveal .source {
|
|
2609
2842
|
position: absolute;
|
|
2610
|
-
bottom:
|
|
2843
|
+
bottom: 15px;
|
|
2611
2844
|
right: 20px;
|
|
2612
|
-
font-size: 0.
|
|
2845
|
+
font-size: 0.45em;
|
|
2613
2846
|
color: var(--color-text-light);
|
|
2614
2847
|
}
|
|
2615
2848
|
|
|
2616
|
-
/*
|
|
2849
|
+
/* ============================================
|
|
2850
|
+
SPEAKER NOTES
|
|
2851
|
+
============================================ */
|
|
2617
2852
|
.reveal aside.notes {
|
|
2618
2853
|
display: none;
|
|
2619
2854
|
}
|
|
2620
2855
|
|
|
2621
|
-
/*
|
|
2856
|
+
/* ============================================
|
|
2857
|
+
SLIDE TYPE SPECIFIC LAYOUTS
|
|
2858
|
+
============================================ */
|
|
2622
2859
|
.reveal .slide-title .slide-content {
|
|
2623
2860
|
justify-content: center;
|
|
2624
2861
|
text-align: center;
|
|
@@ -2652,12 +2889,12 @@ ${slides}
|
|
|
2652
2889
|
|
|
2653
2890
|
.reveal .cta-button {
|
|
2654
2891
|
display: inline-block;
|
|
2655
|
-
padding: 0.
|
|
2892
|
+
padding: 0.4em 1.2em;
|
|
2656
2893
|
background: var(--color-highlight);
|
|
2657
2894
|
color: white;
|
|
2658
2895
|
border-radius: 4px;
|
|
2659
2896
|
font-weight: 600;
|
|
2660
|
-
margin-top:
|
|
2897
|
+
margin-top: 0.8em;
|
|
2661
2898
|
}
|
|
2662
2899
|
`;
|
|
2663
2900
|
}
|