luckiest-co 1.0.19 → 1.0.21
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/commands/status.md +10 -0
- package/hooks/hooks.json +11 -1
- package/hooks/update-notice.mjs +56 -0
- package/package.json +1 -1
- package/skills/luckiest-status/SKILL.md +10 -0
- package/skills/luckiest-video-studio/ATTRIBUTION.md +47 -0
- package/skills/luckiest-video-studio/CHANGELOG.md +64 -0
- package/skills/luckiest-video-studio/LICENSE-brag +21 -0
- package/skills/luckiest-video-studio/LICENSE-diagram-design +21 -0
- package/skills/luckiest-video-studio/LICENSE-motion-graphics +25 -0
- package/skills/luckiest-video-studio/LICENSE-student-kit +32 -0
- package/skills/luckiest-video-studio/LICENSE-student-kit-pipeline +15 -0
- package/skills/luckiest-video-studio/SECURITY.md +74 -0
- package/skills/luckiest-video-studio/SKILL.md +257 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-fan-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-fan-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-place-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-place-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-place-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-place-4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-shove-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-shove-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-shove-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-shove-4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-shuffle.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-5.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-6.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-7.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/card-slide-8.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/cards-pack-open-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/cards-pack-open-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chip-lay-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chip-lay-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chip-lay-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-collide-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-collide-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-collide-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-collide-4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-handle-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-handle-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-handle-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-handle-4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-handle-6.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-stack-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-stack-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-stack-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-stack-4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-stack-5.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/chips-stack-6.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-grab-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-grab-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-shake-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-shake-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-shake-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-throw-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-throw-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/dice-throw-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/die-throw-1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/die-throw-2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/die-throw-3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/casino/die-throw-4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_carpet_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_carpet_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_carpet_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_concrete_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_concrete_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_concrete_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_concrete_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_concrete_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_grass_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_grass_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_grass_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_grass_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_grass_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_snow_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_snow_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_snow_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_snow_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_snow_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_wood_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_wood_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_wood_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_wood_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/footstep_wood_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactBell_heavy_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactBell_heavy_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactBell_heavy_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGeneric_light_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGeneric_light_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGeneric_light_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGeneric_light_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGeneric_light_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGlass_heavy_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGlass_light_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGlass_light_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGlass_light_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGlass_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGlass_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactGlass_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_heavy_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_heavy_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_heavy_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_light_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_light_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_medium_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_medium_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMetal_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactMining_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlank_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlank_medium_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlank_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlank_medium_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlank_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_heavy_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_heavy_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_heavy_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_heavy_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_heavy_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_light_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_light_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_light_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_light_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_light_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_medium_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_medium_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPlate_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_heavy_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_heavy_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_heavy_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_heavy_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_heavy_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_medium_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_medium_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactPunch_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_heavy_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_heavy_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_heavy_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_heavy_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_heavy_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_medium_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_medium_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactSoft_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactTin_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactTin_medium_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactTin_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactTin_medium_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactTin_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_heavy_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_heavy_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_heavy_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_heavy_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_heavy_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_light_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_light_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_light_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_light_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_light_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_medium_000.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_medium_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_medium_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_medium_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/impact/impactWood_medium_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/bong_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/click_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/click_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/click_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/click_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/click_005.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/drop_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/drop_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/drop_003.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/error_005.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/error_006.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/glitch_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/glitch_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/select_008.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/switch_001.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/switch_002.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/switch_004.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/switch_005.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/switch_006.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/interface/switch_007.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-001.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-002.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-003.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-004.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-005.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-006.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-007.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-008.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-009.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-010.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-011.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-012.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-013.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-014.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-015.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-016.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-017.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-018.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-019.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-020.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-021.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-022.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-023.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-024.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-025.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-026.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-027.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-028.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-029.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-030.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-031.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/keyboard/keypress-032.wav +0 -0
- package/skills/luckiest-video-studio/assets/sfx/sfx-analysis.json +15584 -0
- package/skills/luckiest-video-studio/assets/sfx/sfx-analysis.md +75 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/click1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/click2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/click3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/click4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/click5.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/mouseclick1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/rollover1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/rollover2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/rollover4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/rollover5.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch1.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch10.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch11.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch12.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch13.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch14.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch15.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch16.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch17.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch18.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch19.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch2.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch20.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch21.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch22.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch23.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch24.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch25.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch26.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch27.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch28.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch29.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch3.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch30.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch31.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch32.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch33.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch34.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch35.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch36.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch37.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch38.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch4.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch5.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch6.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch7.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch8.ogg +0 -0
- package/skills/luckiest-video-studio/assets/sfx/ui/switch9.ogg +0 -0
- package/skills/luckiest-video-studio/references/audio.md +285 -0
- package/skills/luckiest-video-studio/references/brand.md +55 -0
- package/skills/luckiest-video-studio/references/diffusion.md +75 -0
- package/skills/luckiest-video-studio/references/logo-recipes.md +77 -0
- package/skills/luckiest-video-studio/references/openscreen.md +60 -0
- package/skills/luckiest-video-studio/references/step-1-inspect.md +133 -0
- package/skills/luckiest-video-studio/references/step-2-plan.md +234 -0
- package/skills/luckiest-video-studio/references/step-3-compose.md +210 -0
- package/skills/luckiest-video-studio/references/step-4-deliver.md +168 -0
- package/skills/luckiest-video-studio/references/storyboard.md +78 -0
- package/skills/luckiest-video-studio/references/tones.md +231 -0
- package/skills/luckiest-video-studio/scripts/analyze_music_cues.py +309 -0
- package/skills/luckiest-video-studio/scripts/assemble-diffusion.mjs +161 -0
- package/skills/luckiest-video-studio/scripts/assemble-openscreen.mjs +74 -0
- package/skills/luckiest-video-studio/scripts/pyproject.toml +14 -0
- package/skills/luckiest-video-studio/scripts/qa.mjs +313 -0
- package/skills/luckiest-video-studio/scripts/qa.test.mjs +135 -0
- package/skills/luckiest-video-studio/scripts/render-scenes.mjs +125 -0
- package/skills/luckiest-video-studio/scripts/storyboard.schema.json +52 -0
- package/skills/luckiest-video-studio/scripts/uv.lock +819 -0
- package/skills/luckiest-video-studio/templates/diffusion/line-draw.tsx +132 -0
- package/skills/luckiest-video-studio/templates/logo-line-draw.html +38 -0
- package/skills/luckiest-video-studio-ae/ATTRIBUTION.md +9 -0
- package/skills/luckiest-video-studio-ae/CHANGELOG.md +7 -0
- package/skills/luckiest-video-studio-ae/SKILL.md +133 -0
- package/skills/luckiest-video-studio-cards/ATTRIBUTION.md +22 -0
- package/skills/luckiest-video-studio-cards/CHANGELOG.md +8 -0
- package/skills/luckiest-video-studio-cards/SKILL.md +114 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/DESIGN.md +50 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-agenda.html +180 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-bigtype.html +156 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-board.html +238 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-checklist.html +158 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-compare.html +205 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-deck.html +193 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-dossier.html +234 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-filmstrip.html +211 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-grid6.html +157 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-indexset.html +194 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-maplegend.html +243 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-matrix.html +198 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-numlist.html +180 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-outline.html +194 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-phases.html +208 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-quad.html +163 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-roadmap.html +197 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-stepper.html +193 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-toc.html +192 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-overview-vtimeline.html +166 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-bracket.html +88 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-circle.html +103 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-classified.html +112 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-collage.html +93 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-correction.html +93 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-crt.html +111 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-cutout.html +87 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-fullbleed.html +78 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-highlight.html +80 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-indexcard.html +85 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-map.html +96 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-markerbox.html +84 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-numeral.html +74 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-split.html +88 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-stacked.html +94 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-stamp.html +83 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-ticker.html +88 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-section-tornstrip.html +92 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-annotated.html +182 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-arc.html +105 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-axis.html +165 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-bar.html +111 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-bracket.html +124 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-calendar.html +219 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-callout.html +100 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-columns.html +171 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-corner.html +182 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-dots.html +102 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-engraving.html +160 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-footnote.html +125 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-frac.html +101 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-heat.html +179 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-isotype.html +133 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-ledger.html +106 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-left.html +109 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-magnifier.html +199 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-map.html +326 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-meter.html +153 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-multiplier.html +133 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-odo.html +93 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-pack.html +189 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-photo.html +93 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-pie.html +188 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-postage.html +191 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-pricetag.html +189 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-quote.html +113 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-ranking.html +171 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-receipt.html +182 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-ribbon.html +179 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-semi.html +171 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-spotlight.html +263 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-stamp.html +149 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-steps.html +123 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-tape.html +217 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-torn.html +240 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-trend.html +160 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-vs.html +101 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-window.html +191 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat.html +97 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-timeline.html +131 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-label.html +51 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-bracket.html +104 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-caption.html +129 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-circle.html +114 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-definition.html +152 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-footnote.html +113 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-magnify.html +157 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-pin.html +95 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-pullquote.html +135 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-spotlight.html +114 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-sticky.html +95 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-tag.html +129 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lb-underline.html +94 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lower-third.html +66 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-badge.html +133 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-barslab.html +126 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-bracket.html +146 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-clapper.html +144 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-highlight.html +128 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-indextab.html +134 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-rail.html +116 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-ribbon.html +140 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-stacked.html +143 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-stamp.html +133 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-sticky.html +154 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier2/t2-lt-typecard.html +137 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/style.json +4463 -0
- package/skills/luckiest-video-studio-cards/packs/01-paper-collage/tokens.css +81 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/DESIGN.md +51 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-agenda.html +277 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-beforeafter.html +252 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-bento.html +269 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-bigleft.html +221 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-callouts.html +350 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-cardrow5.html +217 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-checklist.html +193 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-cycle.html +312 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-dashboard.html +414 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-deck2.html +223 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-deck3.html +200 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-duallist.html +323 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-featurecompare.html +244 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-featuregrid.html +235 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-flashcards.html +215 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-flow.html +287 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-funnel.html +246 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-gantt.html +290 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-grid6.html +193 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-grid9.html +217 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-iconlist.html +240 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-journey.html +305 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-kpirow.html +275 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-layers.html +199 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-legend.html +258 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-levels.html +199 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-logowall.html +278 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-mappoints.html +303 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-matrix.html +256 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-milestones.html +275 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-mindmap.html +247 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-nested.html +222 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-network.html +353 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-notifs.html +224 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-numlist.html +188 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-orgchart.html +240 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-outline.html +263 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-phases.html +250 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-pipeline.html +250 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-pricing.html +277 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-profiles.html +247 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-proscons.html +283 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-pyramid.html +181 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-quad.html +226 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-quotegrid.html +222 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-ranked.html +257 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-roadmap.html +251 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-spectrum.html +289 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-split3.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-spotlightcard.html +257 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-statgrid.html +252 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-steps.html +251 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-summary.html +231 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-tiercompare.html +295 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-timeline.html +229 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-toc.html +233 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-tree.html +250 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-tricards.html +217 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-venn.html +197 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-overview-vstable.html +273 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-ascend.html +180 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-aurora-bars.html +195 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-beam.html +197 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-boxed.html +172 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-breath.html +151 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-chaptercard.html +180 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-column-light.html +177 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-constellation.html +220 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-countdown.html +195 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-curtain.html +194 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-dawn.html +196 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-depth.html +186 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-divider.html +192 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-drift-grid.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-duotone.html +165 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-eclipse.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-emblem.html +222 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-flare-sweep.html +191 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-glow-rule.html +216 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-gradient-word.html +190 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-gridfloor.html +199 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-halo.html +173 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-horizon.html +217 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-index.html +202 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-kinetic.html +159 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-lensflare.html +231 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-liquid.html +181 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-marquee.html +177 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-mesh.html +225 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-monolith.html +204 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-node-title.html +208 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-numeral.html +174 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-orb.html +146 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-orbit.html +250 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-particles.html +188 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-pill.html +196 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-portal.html +222 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-prism.html +265 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-question.html +169 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-quoteopen.html +171 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-reveal-mask.html +174 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-ribbon.html +204 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-ripple.html +202 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-searchbar.html +208 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-slab.html +179 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-sphere-top.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-split-reveal.html +218 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-splitpanel.html +229 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-spotlight-cone.html +245 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-spotlight.html +179 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-stack.html +173 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-stacked-words.html +178 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-starfield.html +213 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-sweep.html +177 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-tunnel.html +193 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-type-scale.html +170 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-typed.html +177 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-underline-grow.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-waveform.html +242 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-section-wordmark.html +172 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-annot.html +248 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-beforeafter.html +293 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-bigpercent.html +228 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-bracketstat.html +210 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-bubble.html +256 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-cbars.html +313 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-clockface.html +296 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-column.html +382 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-compass.html +305 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-counterpill.html +216 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-curve.html +318 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-delta.html +300 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-dial.html +288 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-donut.html +307 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-dotgrid.html +241 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-figure.html +212 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-fillshape.html +232 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-fraction.html +263 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-funnel.html +285 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-growtharrow.html +242 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-heatcell.html +242 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-isotype.html +248 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-layered.html +198 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-mega.html +217 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-meter.html +263 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-milestone.html +260 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-money.html +253 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-multiplier.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-multiring.html +336 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-needle.html +253 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-nodes.html +259 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-odometer.html +301 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-orbitmoons.html +229 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-orbitstat.html +319 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-pair.html +244 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-percentile.html +287 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-pictobar.html +223 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-polar.html +256 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-quotestat.html +190 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-radialbars.html +387 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-range.html +300 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-rank.html +264 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-ratio.html +264 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-ring.html +274 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-risewall.html +234 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-score.html +273 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-segbar.html +262 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-semigauge.html +327 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-sparkline.html +291 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-spectrum.html +245 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-split.html +242 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-stackedbars.html +304 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-tickerstat.html +310 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-tiles.html +232 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-timer.html +248 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-trendline.html +343 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-underscore.html +236 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-versus.html +315 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-waffle.html +250 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier1/t1-stat-waterfall.html +273 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-badge.html +170 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-brace.html +239 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-bracket.html +195 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-bubble.html +179 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-byline.html +204 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-callout.html +137 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-category.html +178 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-checkmark.html +195 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-chipstat.html +150 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-comparemini.html +202 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-coord.html +271 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-counter.html +168 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-crosshair.html +243 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-dashed.html +168 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-definition.html +165 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-deltachip.html +184 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-eyebrow.html +186 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-fact.html +160 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-flag.html +232 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-formula.html +212 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-hash.html +175 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-highlightbox.html +176 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-iconchip.html +199 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-info.html +186 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-infocard.html +239 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-keycap.html +194 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-keyword.html +140 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-leader.html +201 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-legend.html +212 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-measure.html +201 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-meterchip.html +238 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-metric.html +149 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-micropie.html +233 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-minibar.html +190 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-node.html +225 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-note.html +183 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-numbercallout.html +175 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-percent.html +176 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-pointer.html +173 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-price.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-progress.html +233 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-pulse.html +206 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-qmark.html +164 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-quote.html +150 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-rating.html +252 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-ribbon.html +178 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-ringmark.html +229 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-search.html +174 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-sparkchip.html +243 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-spec.html +229 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-status.html +190 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-step.html +180 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-tag.html +134 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-takeaway.html +154 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-tcode.html +175 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-timestamp.html +185 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-toast.html +206 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-tooltip.html +175 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-underline.html +168 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lb-warning.html +193 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-avatar.html +202 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-badgecard.html +219 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-barslide.html +177 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-bracket.html +177 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-brandbar.html +229 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-bug.html +177 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-capsule.html +193 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-chapterbar.html +196 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-chip.html +162 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-cinemastrip.html +190 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-cite.html +179 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-clockname.html +192 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-coordbar.html +262 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-corner.html +206 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-cornerframe.html +251 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-countbar.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-dividername.html +211 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-dotline.html +209 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-doublecard.html +225 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-dual.html +233 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-edgebar.html +160 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-flipcard.html +198 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-geopin.html +198 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-glasscard.html +152 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-gradient.html +151 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-gradientbar.html +197 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-handlebar.html +192 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-infochips.html +182 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-lensbar.html +213 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-live.html +232 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-location.html +222 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-logolock.html +214 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-micname.html +208 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-minicard.html +176 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-minimal.html +149 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-nameplate3d.html +208 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-neonframe.html +208 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-neonpill.html +222 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-nowplaying.html +257 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-orbitbadge.html +232 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-pill.html +168 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-portraitframe.html +220 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-progressname.html +234 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-quote.html +202 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-ratingname.html +226 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-ribbon.html +198 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-sidebracket.html +195 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-slidetab.html +191 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-social.html +180 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-spotlightname.html +150 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-stacked.html +158 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-statline.html +223 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-tagrow.html +191 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-thinstrip.html +185 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-ticker.html +216 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-titlebar.html +188 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-trust.html +247 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-typedname.html +195 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-underbar.html +189 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/cards/tier2/t2-lt-waveband.html +235 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/style.json +8608 -0
- package/skills/luckiest-video-studio-cards/packs/02-aurora-glass/tokens.css +134 -0
- package/skills/luckiest-video-studio-cards/packs/_blueprint/DESIGN.md +41 -0
- package/skills/luckiest-video-studio-cards/packs/_blueprint/cards/tier1/t1-stat.html +57 -0
- package/skills/luckiest-video-studio-cards/packs/_blueprint/cards/tier2/t2-list.html +58 -0
- package/skills/luckiest-video-studio-cards/packs/_blueprint/style.json +88 -0
- package/skills/luckiest-video-studio-cards/packs/_blueprint/tokens.css +32 -0
- package/skills/luckiest-video-studio-cards/packs/registry.json +7789 -0
- package/skills/luckiest-video-studio-cards/references/card-contract.md +77 -0
- package/skills/luckiest-video-studio-cards/references/palette-leftovers.md +28 -0
- package/skills/luckiest-video-studio-cards/scripts/apply-brand.mjs +90 -0
- package/skills/luckiest-video-studio-cards/scripts/apply-brand.test.mjs +62 -0
- package/skills/luckiest-video-studio-cards/scripts/build-registry.mjs +54 -0
- package/skills/luckiest-video-studio-cards/scripts/new-pack.mjs +42 -0
- package/skills/luckiest-video-studio-cards/scripts/qa-cards.mjs +126 -0
- package/skills/luckiest-video-studio-cards/templates/glass-popout/DESIGN.md +24 -0
- package/skills/luckiest-video-studio-cards/templates/glass-popout/hyperframes.json +8 -0
- package/skills/luckiest-video-studio-cards/templates/glass-popout/index.html +349 -0
- package/skills/luckiest-video-studio-cards/templates/glass-popout/meta.json +8 -0
- package/skills/luckiest-video-studio-cards/templates/graph-paper/DESIGN.md +25 -0
- package/skills/luckiest-video-studio-cards/templates/graph-paper/hyperframes.json +8 -0
- package/skills/luckiest-video-studio-cards/templates/graph-paper/index.html +207 -0
- package/skills/luckiest-video-studio-cards/templates/graph-paper/meta.json +5 -0
- package/skills/luckiest-video-studio-cards/templates/graph-paper/package.json +10 -0
- package/skills/luckiest-video-studio-cuts/ATTRIBUTION.md +19 -0
- package/skills/luckiest-video-studio-cuts/CHANGELOG.md +6 -0
- package/skills/luckiest-video-studio-cuts/SKILL.md +129 -0
- package/skills/luckiest-video-studio-cuts/scripts/apply-cuts.mjs +174 -0
- package/skills/luckiest-video-studio-cuts/scripts/build-edl-review.mjs +114 -0
- package/skills/luckiest-video-studio-cuts/scripts/cut-silences.mjs +300 -0
- package/skills/luckiest-video-studio-cuts/scripts/find-cut-candidates.mjs +182 -0
- package/skills/luckiest-video-studio-reel/ATTRIBUTION.md +21 -0
- package/skills/luckiest-video-studio-reel/CHANGELOG.md +10 -0
- package/skills/luckiest-video-studio-reel/SKILL.md +177 -0
- package/skills/luckiest-video-studio-reel/references/chapters.md +64 -0
- package/skills/luckiest-video-studio-reel/scripts/beatgrid.mjs +39 -0
- package/skills/luckiest-video-studio-reel/scripts/mix.mjs +42 -0
- package/skills/luckiest-video-studio-reel/scripts/splice-music.mjs +38 -0
- package/skills/luckiest-video-studio-reel/templates/reel.html +116 -0
- package/skills/luckiest-video-studio-reference/ATTRIBUTION.md +7 -0
- package/skills/luckiest-video-studio-reference/CHANGELOG.md +8 -0
- package/skills/luckiest-video-studio-reference/SKILL.md +108 -0
- package/skills/luckiest-video-studio-reference/scripts/shots.mjs +58 -0
- package/skills/luckiest-video-studio-talk/ATTRIBUTION.md +19 -0
- package/skills/luckiest-video-studio-talk/CHANGELOG.md +18 -0
- package/skills/luckiest-video-studio-talk/SKILL.md +161 -0
- package/skills/luckiest-video-studio-talk/references/long-form.md +91 -0
- package/skills/luckiest-video-studio-talk/references/plan-schema.md +54 -0
- package/skills/luckiest-video-studio-talk/references/short-form.md +76 -0
- package/skills/luckiest-video-studio-talk/scripts/grab-evidence.mjs +38 -0
- package/skills/luckiest-video-studio-talk/scripts/validate-footage.mjs +25 -0
- package/skills/luckiest-video-studio-talk/scripts/validate-plan.mjs +49 -0
- package/skills/luckiest-video-studio-talk/templates/talk-overlay.html +40 -0
package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-pie.html
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<!--
|
|
3
|
+
PAPER COLLAGE · tier1 · stat · PIE SLICE
|
|
4
|
+
A filled pie via conic-gradient (yellow slice = value, rest kraft/ink).
|
|
5
|
+
One yellow wedge is pulled slightly out (offset a few px from center).
|
|
6
|
+
The big % number sits beside the pie.
|
|
7
|
+
Slots: kicker, stat, label (richtext), source.
|
|
8
|
+
Knob: data-pct on #pie-wrap (0..100, default 73). JS sets the conic angle.
|
|
9
|
+
-->
|
|
10
|
+
<html>
|
|
11
|
+
<head>
|
|
12
|
+
<meta charset="utf-8" />
|
|
13
|
+
<link rel="stylesheet" href="cards/paper-collage/tokens.css" />
|
|
14
|
+
<style>
|
|
15
|
+
html, body { margin: 0; }
|
|
16
|
+
#t1-stat-pie {
|
|
17
|
+
position: absolute; inset: 0; width: 1920px; height: 1080px;
|
|
18
|
+
background: var(--paper); color: var(--ink);
|
|
19
|
+
font-family: var(--font-display); overflow: hidden;
|
|
20
|
+
}
|
|
21
|
+
#t1-stat-pie .grid {
|
|
22
|
+
position: absolute; inset: -2px;
|
|
23
|
+
background-image:
|
|
24
|
+
repeating-linear-gradient(0deg, var(--grid-line) 0 1px, transparent 1px var(--grid-size)),
|
|
25
|
+
repeating-linear-gradient(90deg, var(--grid-line) 0 1px, transparent 1px var(--grid-size));
|
|
26
|
+
}
|
|
27
|
+
#t1-stat-pie .grain {
|
|
28
|
+
position: absolute; inset: -40px; background: var(--tex-grain);
|
|
29
|
+
background-size: 180px 180px; mix-blend-mode: multiply; opacity: 0.4; pointer-events: none; z-index: 6;
|
|
30
|
+
}
|
|
31
|
+
#t1-stat-pie .vignette {
|
|
32
|
+
position: absolute; inset: 0; pointer-events: none; z-index: 5;
|
|
33
|
+
background: radial-gradient(120% 120% at 40% 50%, transparent 52%, rgba(23,19,14,0.2) 100%);
|
|
34
|
+
}
|
|
35
|
+
#t1-stat-pie .kicker {
|
|
36
|
+
position: absolute; left: 130px; top: 100px;
|
|
37
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
38
|
+
font-size: var(--size-label); letter-spacing: var(--track-wide);
|
|
39
|
+
text-transform: uppercase; color: var(--red);
|
|
40
|
+
}
|
|
41
|
+
/* pie lives in the left half */
|
|
42
|
+
#t1-stat-pie .pie-area {
|
|
43
|
+
position: absolute; left: 150px; top: 50%; transform: translateY(-50%);
|
|
44
|
+
width: 560px; height: 560px;
|
|
45
|
+
}
|
|
46
|
+
/* main pie disc */
|
|
47
|
+
#t1-stat-pie .pie-disc {
|
|
48
|
+
position: absolute; inset: 0; border-radius: 50%;
|
|
49
|
+
box-shadow: 0 0 0 5px var(--ink);
|
|
50
|
+
/* conic-gradient set by JS */
|
|
51
|
+
}
|
|
52
|
+
/* pulled-out yellow wedge - a separate absolutely-positioned circle
|
|
53
|
+
clipped to the wedge shape by clip-path polygon, offset from center */
|
|
54
|
+
#t1-stat-pie .wedge-out {
|
|
55
|
+
position: absolute; inset: 0; border-radius: 50%;
|
|
56
|
+
/* clip-path set by JS */
|
|
57
|
+
background: var(--yellow);
|
|
58
|
+
/* offset slightly toward the slice midpoint - set by JS */
|
|
59
|
+
}
|
|
60
|
+
/* thick border ring mimics segment separation */
|
|
61
|
+
#t1-stat-pie .pie-ring {
|
|
62
|
+
position: absolute; inset: 0; border-radius: 50%;
|
|
63
|
+
box-shadow: 0 0 0 5px var(--ink);
|
|
64
|
+
pointer-events: none;
|
|
65
|
+
}
|
|
66
|
+
/* right panel - big stat + label */
|
|
67
|
+
#t1-stat-pie .right {
|
|
68
|
+
position: absolute; left: 800px; right: 130px; top: 50%; transform: translateY(-50%);
|
|
69
|
+
}
|
|
70
|
+
#t1-stat-pie .stat {
|
|
71
|
+
font-weight: var(--wt-black); font-size: 340px; line-height: 0.88;
|
|
72
|
+
letter-spacing: -0.06em; font-variant-numeric: tabular-nums; color: var(--ink);
|
|
73
|
+
display: block;
|
|
74
|
+
}
|
|
75
|
+
#t1-stat-pie .label {
|
|
76
|
+
margin-top: 32px;
|
|
77
|
+
font-weight: var(--wt-thin); font-size: 58px; line-height: 1.06;
|
|
78
|
+
letter-spacing: var(--track-tight); color: var(--ink);
|
|
79
|
+
}
|
|
80
|
+
#t1-stat-pie .label em { font-style: italic; font-weight: var(--wt-black); }
|
|
81
|
+
#t1-stat-pie .source {
|
|
82
|
+
position: absolute; left: 130px; bottom: 88px;
|
|
83
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
84
|
+
font-size: var(--size-tiny); letter-spacing: var(--track-wide);
|
|
85
|
+
text-transform: uppercase; color: var(--muted);
|
|
86
|
+
}
|
|
87
|
+
/* "the rest" label on the dark wedge */
|
|
88
|
+
#t1-stat-pie .rest-label {
|
|
89
|
+
position: absolute; font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
90
|
+
font-size: 22px; letter-spacing: var(--track-wide); text-transform: uppercase;
|
|
91
|
+
color: var(--paper); opacity: 0.72;
|
|
92
|
+
}
|
|
93
|
+
</style>
|
|
94
|
+
</head>
|
|
95
|
+
<body>
|
|
96
|
+
<div id="t1-stat-pie" data-composition-id="t1-stat-pie" data-start="0" data-width="1920" data-height="1080">
|
|
97
|
+
<div class="grid"></div>
|
|
98
|
+
<div class="kicker" data-slot="kicker">SHARE OF REVENUE</div>
|
|
99
|
+
|
|
100
|
+
<div class="pie-area">
|
|
101
|
+
<div class="pie-disc" id="pie-disc" data-pct="73"></div>
|
|
102
|
+
<div class="wedge-out" id="wedge-out"></div>
|
|
103
|
+
<div class="pie-ring"></div>
|
|
104
|
+
<div class="rest-label" id="rest-label">27%</div>
|
|
105
|
+
</div>
|
|
106
|
+
|
|
107
|
+
<div class="right">
|
|
108
|
+
<span class="stat" data-slot="stat">73%</span>
|
|
109
|
+
<div class="label" data-slot="label">of ad spend now captured by <em>short-form video</em></div>
|
|
110
|
+
</div>
|
|
111
|
+
|
|
112
|
+
<div class="source" data-slot="source">SOURCE · AD MARKET REPORT 2026</div>
|
|
113
|
+
<div class="vignette"></div>
|
|
114
|
+
<div class="grain"></div>
|
|
115
|
+
</div>
|
|
116
|
+
|
|
117
|
+
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
|
118
|
+
<script>
|
|
119
|
+
window.__timelines = window.__timelines || {};
|
|
120
|
+
|
|
121
|
+
var disc = document.getElementById("pie-disc");
|
|
122
|
+
var wedge = document.getElementById("wedge-out");
|
|
123
|
+
var restLbl = document.getElementById("rest-label");
|
|
124
|
+
var pct = Math.max(0, Math.min(100, parseInt(disc.getAttribute("data-pct"), 10) || 73));
|
|
125
|
+
var rest = 100 - pct;
|
|
126
|
+
restLbl.textContent = rest + "%";
|
|
127
|
+
|
|
128
|
+
// Conic gradient: yellow from 0deg to pct*3.6deg, then paper-2 (kraft) for the remainder
|
|
129
|
+
var deg = pct * 3.6;
|
|
130
|
+
disc.style.background = "conic-gradient(var(--yellow) 0deg " + deg + "deg, var(--paper-2) " + deg + "deg 360deg)";
|
|
131
|
+
|
|
132
|
+
// Pulled-out wedge: same yellow wedge, offset ~14px toward its visual midpoint
|
|
133
|
+
// Midpoint angle of the yellow slice (starting from 12 o'clock = -90deg)
|
|
134
|
+
var midAngleDeg = (deg / 2) - 90;
|
|
135
|
+
var midAngleRad = midAngleDeg * Math.PI / 180;
|
|
136
|
+
var offsetPx = 16;
|
|
137
|
+
var ox = offsetPx * Math.cos(midAngleRad);
|
|
138
|
+
var oy = offsetPx * Math.sin(midAngleRad);
|
|
139
|
+
// clip-path: sector polygon (center + arc points approx with many vertices)
|
|
140
|
+
var r = 280; // half of 560px
|
|
141
|
+
var cx = 280; var cy = 280;
|
|
142
|
+
var numPts = 48;
|
|
143
|
+
var startAngle = -Math.PI / 2; // 0% at top
|
|
144
|
+
var endAngle = startAngle + (deg * Math.PI / 180);
|
|
145
|
+
var pts = [cx + "px " + cy + "px"];
|
|
146
|
+
for (var i = 0; i <= numPts; i++) {
|
|
147
|
+
var a = startAngle + (endAngle - startAngle) * (i / numPts);
|
|
148
|
+
pts.push((cx + r * Math.cos(a)).toFixed(2) + "px " + (cy + r * Math.sin(a)).toFixed(2) + "px");
|
|
149
|
+
}
|
|
150
|
+
wedge.style.clipPath = "polygon(" + pts.join(", ") + ")";
|
|
151
|
+
wedge.style.transform = "translate(" + ox.toFixed(2) + "px, " + oy.toFixed(2) + "px)";
|
|
152
|
+
|
|
153
|
+
// Position "rest%" label at the center of the remainder arc
|
|
154
|
+
var restMidAngleDeg = deg + (360 - deg) / 2 - 90; // degrees from top
|
|
155
|
+
var restMidRad = restMidAngleDeg * Math.PI / 180;
|
|
156
|
+
var lx = cx + 0.58 * r * Math.cos(restMidRad) - 30;
|
|
157
|
+
var ly = cy + 0.58 * r * Math.sin(restMidRad) - 12;
|
|
158
|
+
restLbl.style.left = lx.toFixed(0) + "px";
|
|
159
|
+
restLbl.style.top = ly.toFixed(0) + "px";
|
|
160
|
+
|
|
161
|
+
var tl = gsap.timeline({ paused: true });
|
|
162
|
+
|
|
163
|
+
tl.fromTo("#t1-stat-pie .grain", { backgroundPosition: "0px 0px" },
|
|
164
|
+
{ backgroundPosition: "150px 130px", duration: 0.5, ease: "steps(4)", repeat: 11, yoyo: true }, 0);
|
|
165
|
+
|
|
166
|
+
tl.from("#t1-stat-pie .kicker", { autoAlpha: 0, x: -20, duration: 0.3, ease: "steps(4)" }, 0.2);
|
|
167
|
+
|
|
168
|
+
// Pie disc grows via scale, stepped
|
|
169
|
+
tl.from("#t1-stat-pie .pie-disc", { scale: 0, transformOrigin: "50% 50%", duration: 0.45, ease: "steps(6)" }, 0.35);
|
|
170
|
+
tl.from("#t1-stat-pie .pie-ring", { scale: 0, transformOrigin: "50% 50%", duration: 0.45, ease: "steps(6)" }, 0.35);
|
|
171
|
+
|
|
172
|
+
// Pulled wedge pops out
|
|
173
|
+
tl.from(wedge, { scale: 0, transformOrigin: "50% 50%", duration: 0.28, ease: "back.out(2.2)" }, 0.65);
|
|
174
|
+
|
|
175
|
+
// Rest label
|
|
176
|
+
tl.from(restLbl, { autoAlpha: 0, duration: 0.25 }, 0.85);
|
|
177
|
+
|
|
178
|
+
// Big stat number
|
|
179
|
+
tl.from("#t1-stat-pie .stat", { autoAlpha: 0, scale: 0.55, transformOrigin: "0% 50%", duration: 0.45, ease: "back.out(2.4)" }, 0.8);
|
|
180
|
+
|
|
181
|
+
tl.from("#t1-stat-pie .label", { autoAlpha: 0, y: 18, duration: 0.38, ease: "power3.out" }, 1.15);
|
|
182
|
+
tl.from("#t1-stat-pie .source", { autoAlpha: 0, duration: 0.28 }, 1.45);
|
|
183
|
+
|
|
184
|
+
tl.set({}, {}, 6);
|
|
185
|
+
window.__timelines["t1-stat-pie"] = tl;
|
|
186
|
+
</script>
|
|
187
|
+
</body>
|
|
188
|
+
</html>
|
package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-postage.html
ADDED
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<!--
|
|
3
|
+
PAPER COLLAGE · tier1 · stat · POSTAGE STAMP
|
|
4
|
+
A perforated postage stamp: notch-dot perforated edge via repeating
|
|
5
|
+
radial-gradient, halftone engraving fill behind the number, big denomination
|
|
6
|
+
center, and a DIAGONAL-BARS cancellation postmark (NOT a circle - bands of
|
|
7
|
+
parallel diagonal lines crossing the stamp). Stamp pops in with a scale snap.
|
|
8
|
+
Slots: kicker, stat, country (small label), label (richtext), source.
|
|
9
|
+
-->
|
|
10
|
+
<html>
|
|
11
|
+
<head>
|
|
12
|
+
<meta charset="utf-8" />
|
|
13
|
+
<link rel="stylesheet" href="cards/paper-collage/tokens.css" />
|
|
14
|
+
<style>
|
|
15
|
+
html, body { margin: 0; }
|
|
16
|
+
#t1-stat-postage {
|
|
17
|
+
position: absolute; inset: 0; width: 1920px; height: 1080px;
|
|
18
|
+
background: var(--paper); color: var(--ink);
|
|
19
|
+
font-family: var(--font-display); overflow: hidden;
|
|
20
|
+
}
|
|
21
|
+
#t1-stat-postage .grid {
|
|
22
|
+
position: absolute; inset: -2px;
|
|
23
|
+
background-image:
|
|
24
|
+
repeating-linear-gradient(0deg, var(--grid-line) 0 1px, transparent 1px var(--grid-size)),
|
|
25
|
+
repeating-linear-gradient(90deg, var(--grid-line) 0 1px, transparent 1px var(--grid-size));
|
|
26
|
+
}
|
|
27
|
+
#t1-stat-postage .grain {
|
|
28
|
+
position: absolute; inset: -40px; background: var(--tex-grain);
|
|
29
|
+
background-size: 180px 180px; mix-blend-mode: multiply; opacity: 0.4;
|
|
30
|
+
pointer-events: none; z-index: 6;
|
|
31
|
+
}
|
|
32
|
+
#t1-stat-postage .vignette {
|
|
33
|
+
position: absolute; inset: 0; pointer-events: none; z-index: 5;
|
|
34
|
+
background: radial-gradient(120% 120% at 50% 50%, transparent 56%, rgba(23,19,14,0.18) 100%);
|
|
35
|
+
}
|
|
36
|
+
#t1-stat-postage .kicker {
|
|
37
|
+
position: absolute; left: 130px; top: 260px;
|
|
38
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
39
|
+
font-size: var(--size-label); letter-spacing: var(--track-wide);
|
|
40
|
+
text-transform: uppercase; color: var(--red);
|
|
41
|
+
}
|
|
42
|
+
/* outer stamp container - positions stamp on canvas */
|
|
43
|
+
#t1-stat-postage .stamp-outer {
|
|
44
|
+
position: absolute; left: 50%; top: 50%;
|
|
45
|
+
}
|
|
46
|
+
/* perforation border: a repeating radial-gradient creates notch dots
|
|
47
|
+
on all four sides. We use a pseudo-element or background technique.
|
|
48
|
+
Approach: outer div has var(--paper) bg + radial-gradient pattern,
|
|
49
|
+
then an inset inner panel is the actual stamp face. */
|
|
50
|
+
#t1-stat-postage .stamp-perf {
|
|
51
|
+
width: 560px; height: 620px;
|
|
52
|
+
background:
|
|
53
|
+
/* top row of notch dots */
|
|
54
|
+
radial-gradient(circle at center, var(--paper) 6px, transparent 6px)
|
|
55
|
+
0px -6px / 22px 22px repeat-x,
|
|
56
|
+
/* bottom row */
|
|
57
|
+
radial-gradient(circle at center, var(--paper) 6px, transparent 6px)
|
|
58
|
+
0px calc(100% + 6px) / 22px 22px repeat-x,
|
|
59
|
+
/* left column */
|
|
60
|
+
radial-gradient(circle at center, var(--paper) 6px, transparent 6px)
|
|
61
|
+
-6px 0px / 22px 22px repeat-y,
|
|
62
|
+
/* right column */
|
|
63
|
+
radial-gradient(circle at center, var(--paper) 6px, transparent 6px)
|
|
64
|
+
calc(100% + 6px) 0px / 22px 22px repeat-y,
|
|
65
|
+
/* stamp face background */
|
|
66
|
+
var(--orange);
|
|
67
|
+
box-shadow: 4px 8px 40px rgba(23,19,14,0.38);
|
|
68
|
+
position: relative;
|
|
69
|
+
padding: 20px;
|
|
70
|
+
}
|
|
71
|
+
/* inner stamp face */
|
|
72
|
+
#t1-stat-postage .stamp-face {
|
|
73
|
+
position: absolute; inset: 20px;
|
|
74
|
+
background: var(--orange);
|
|
75
|
+
overflow: hidden;
|
|
76
|
+
display: flex; flex-direction: column;
|
|
77
|
+
align-items: center; justify-content: center;
|
|
78
|
+
}
|
|
79
|
+
/* halftone engraving layer behind the number */
|
|
80
|
+
#t1-stat-postage .stamp-halftone {
|
|
81
|
+
position: absolute; inset: 0;
|
|
82
|
+
background-image: var(--tex-halftone);
|
|
83
|
+
background-size: var(--tex-halftone-size);
|
|
84
|
+
opacity: 0.22;
|
|
85
|
+
mix-blend-mode: multiply;
|
|
86
|
+
}
|
|
87
|
+
#t1-stat-postage .stamp-country {
|
|
88
|
+
font-family: var(--font-label); font-weight: var(--wt-black);
|
|
89
|
+
font-size: 22px; letter-spacing: 0.22em;
|
|
90
|
+
text-transform: uppercase; color: var(--paper);
|
|
91
|
+
opacity: 0.9; z-index: 2; margin-bottom: 4px;
|
|
92
|
+
}
|
|
93
|
+
#t1-stat-postage .stamp-denom {
|
|
94
|
+
font-family: var(--font-display); font-weight: var(--wt-black);
|
|
95
|
+
font-size: 200px; line-height: 0.88; color: var(--paper);
|
|
96
|
+
font-variant-numeric: tabular-nums; letter-spacing: -0.02em;
|
|
97
|
+
z-index: 2; text-shadow: 0 2px 8px rgba(23,19,14,0.22);
|
|
98
|
+
}
|
|
99
|
+
#t1-stat-postage .stamp-sublabel {
|
|
100
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
101
|
+
font-size: 22px; letter-spacing: 0.12em;
|
|
102
|
+
text-transform: uppercase; color: var(--paper);
|
|
103
|
+
opacity: 0.8; z-index: 2; margin-top: 8px;
|
|
104
|
+
}
|
|
105
|
+
/* cancellation postmark - diagonal bars, NOT a circle */
|
|
106
|
+
#t1-stat-postage .cancel {
|
|
107
|
+
position: absolute; inset: 0; z-index: 3; pointer-events: none;
|
|
108
|
+
/* parallel diagonal bars across the stamp */
|
|
109
|
+
background-image: repeating-linear-gradient(
|
|
110
|
+
-42deg,
|
|
111
|
+
rgba(23,19,14,0.60) 0px,
|
|
112
|
+
rgba(23,19,14,0.60) 6px,
|
|
113
|
+
transparent 6px,
|
|
114
|
+
transparent 22px
|
|
115
|
+
);
|
|
116
|
+
opacity: 0.45;
|
|
117
|
+
}
|
|
118
|
+
/* label below */
|
|
119
|
+
#t1-stat-postage .label {
|
|
120
|
+
position: absolute; left: 130px; right: 130px; bottom: 220px;
|
|
121
|
+
font-weight: var(--wt-thin); font-size: 56px; line-height: 1.1;
|
|
122
|
+
letter-spacing: var(--track-tight); color: var(--ink);
|
|
123
|
+
}
|
|
124
|
+
#t1-stat-postage .label em { font-style: italic; font-weight: var(--wt-black); }
|
|
125
|
+
#t1-stat-postage .source {
|
|
126
|
+
position: absolute; left: 130px; bottom: 96px;
|
|
127
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
128
|
+
font-size: var(--size-tiny); letter-spacing: var(--track-wide);
|
|
129
|
+
text-transform: uppercase; color: var(--muted);
|
|
130
|
+
}
|
|
131
|
+
</style>
|
|
132
|
+
</head>
|
|
133
|
+
<body>
|
|
134
|
+
<div id="t1-stat-postage" data-composition-id="t1-stat-postage" data-start="0" data-width="1920" data-height="1080">
|
|
135
|
+
<div class="grid"></div>
|
|
136
|
+
<div class="kicker" data-slot="kicker">STAMPED · CERTIFIED</div>
|
|
137
|
+
|
|
138
|
+
<div class="stamp-outer">
|
|
139
|
+
<div class="stamp-perf">
|
|
140
|
+
<div class="stamp-face">
|
|
141
|
+
<div class="stamp-halftone"></div>
|
|
142
|
+
<div class="stamp-country" data-slot="country">DATA BUREAU</div>
|
|
143
|
+
<div class="stamp-denom" data-slot="stat">82%</div>
|
|
144
|
+
<div class="stamp-sublabel">of total</div>
|
|
145
|
+
<div class="cancel"></div>
|
|
146
|
+
</div>
|
|
147
|
+
</div>
|
|
148
|
+
</div>
|
|
149
|
+
|
|
150
|
+
<div class="label" data-slot="label"><em>four in five</em> videos never reach the right audience</div>
|
|
151
|
+
<div class="source" data-slot="source">SOURCE · DISTRIBUTION INDEX 2026</div>
|
|
152
|
+
<div class="vignette"></div>
|
|
153
|
+
<div class="grain"></div>
|
|
154
|
+
</div>
|
|
155
|
+
|
|
156
|
+
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
|
157
|
+
<script>
|
|
158
|
+
window.__timelines = window.__timelines || {};
|
|
159
|
+
const tl = gsap.timeline({ paused: true });
|
|
160
|
+
gsap.set("#t1-stat-postage .stamp-outer", { xPercent: -50, yPercent: -50, rotation: 2 }); // was a CSS transform; GSAP owns it now
|
|
161
|
+
// Grain flicker
|
|
162
|
+
tl.fromTo("#t1-stat-postage .grain", { backgroundPosition: "0px 0px" },
|
|
163
|
+
{ backgroundPosition: "150px 130px", duration: 0.5, ease: "steps(4)", repeat: 11, yoyo: true }, 0);
|
|
164
|
+
// Kicker snaps in
|
|
165
|
+
tl.from("#t1-stat-postage .kicker", { autoAlpha: 0, x: -20, duration: 0.28, ease: "steps(4)" }, 0.15)
|
|
166
|
+
// Stamp pops in from slightly above, snaps to position
|
|
167
|
+
.from("#t1-stat-postage .stamp-outer", {
|
|
168
|
+
autoAlpha: 0, scale: 0.55, y: -60,
|
|
169
|
+
transformOrigin: "50% 50%",
|
|
170
|
+
duration: 0.35, ease: "steps(5)"
|
|
171
|
+
}, 0.32)
|
|
172
|
+
// settle with back.out bounce
|
|
173
|
+
.to("#t1-stat-postage .stamp-outer", {
|
|
174
|
+
scale: 1, y: 0,
|
|
175
|
+
duration: 0.28, ease: "back.out(2.2)"
|
|
176
|
+
}, 0.67)
|
|
177
|
+
// denomination number slams in
|
|
178
|
+
.from("#t1-stat-postage .stamp-denom", {
|
|
179
|
+
autoAlpha: 0, scale: 0.6,
|
|
180
|
+
transformOrigin: "50% 50%",
|
|
181
|
+
duration: 0.28, ease: "back.out(2.6)"
|
|
182
|
+
}, 0.82)
|
|
183
|
+
// cancellation bars wipe across
|
|
184
|
+
.from("#t1-stat-postage .cancel", { autoAlpha: 0, duration: 0.22, ease: "steps(3)" }, 1.05)
|
|
185
|
+
.from("#t1-stat-postage .label", { autoAlpha: 0, y: 20, duration: 0.4, ease: "power3.out" }, 1.22)
|
|
186
|
+
.from("#t1-stat-postage .source", { autoAlpha: 0, duration: 0.28 }, 1.5)
|
|
187
|
+
.set({}, {}, 6);
|
|
188
|
+
window.__timelines["t1-stat-postage"] = tl;
|
|
189
|
+
</script>
|
|
190
|
+
</body>
|
|
191
|
+
</html>
|
package/skills/luckiest-video-studio-cards/packs/01-paper-collage/cards/tier1/t1-stat-pricetag.html
ADDED
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<!--
|
|
3
|
+
PAPER COLLAGE · tier1 · stat · PRICE TAG
|
|
4
|
+
An angled price tag (rounded rect with a punched hole circle + a clean
|
|
5
|
+
straight string line to top corner). Big number as the price. Tag swings in
|
|
6
|
+
from a top-pivot via back.out. No scribbles - string is a static SVG line.
|
|
7
|
+
Slots: kicker, stat, unit, label (richtext <em>), source.
|
|
8
|
+
-->
|
|
9
|
+
<html>
|
|
10
|
+
<head>
|
|
11
|
+
<meta charset="utf-8" />
|
|
12
|
+
<link rel="stylesheet" href="cards/paper-collage/tokens.css" />
|
|
13
|
+
<style>
|
|
14
|
+
html, body { margin: 0; }
|
|
15
|
+
#t1-stat-tag {
|
|
16
|
+
position: absolute; inset: 0; width: 1920px; height: 1080px;
|
|
17
|
+
background: var(--paper); color: var(--ink);
|
|
18
|
+
font-family: var(--font-display); overflow: hidden;
|
|
19
|
+
}
|
|
20
|
+
#t1-stat-tag .grid {
|
|
21
|
+
position: absolute; inset: -2px;
|
|
22
|
+
background-image:
|
|
23
|
+
repeating-linear-gradient(0deg, var(--grid-line) 0 1px, transparent 1px var(--grid-size)),
|
|
24
|
+
repeating-linear-gradient(90deg, var(--grid-line) 0 1px, transparent 1px var(--grid-size));
|
|
25
|
+
}
|
|
26
|
+
#t1-stat-tag .grain {
|
|
27
|
+
position: absolute; inset: -40px; background: var(--tex-grain);
|
|
28
|
+
background-size: 180px 180px; mix-blend-mode: multiply; opacity: 0.4;
|
|
29
|
+
pointer-events: none; z-index: 6;
|
|
30
|
+
}
|
|
31
|
+
#t1-stat-tag .vignette {
|
|
32
|
+
position: absolute; inset: 0; pointer-events: none; z-index: 5;
|
|
33
|
+
background: radial-gradient(120% 120% at 50% 50%, transparent 56%, rgba(23,19,14,0.18) 100%);
|
|
34
|
+
}
|
|
35
|
+
#t1-stat-tag .kicker {
|
|
36
|
+
position: absolute; left: 130px; top: 260px;
|
|
37
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
38
|
+
font-size: var(--size-label); letter-spacing: var(--track-wide);
|
|
39
|
+
text-transform: uppercase; color: var(--red);
|
|
40
|
+
}
|
|
41
|
+
/* SVG string - static straight line from tag hole to top-right corner */
|
|
42
|
+
#t1-stat-tag .string-svg {
|
|
43
|
+
position: absolute; left: 0; top: 0;
|
|
44
|
+
width: 1920px; height: 1080px;
|
|
45
|
+
pointer-events: none; z-index: 2;
|
|
46
|
+
}
|
|
47
|
+
/* pivot anchor - the string hangs from here */
|
|
48
|
+
#t1-stat-tag .tag-pivot {
|
|
49
|
+
position: absolute;
|
|
50
|
+
/* pivot point: top of the string, near top-center-right of canvas */
|
|
51
|
+
left: 1050px; top: 150px;
|
|
52
|
+
width: 0; height: 0;
|
|
53
|
+
z-index: 3;
|
|
54
|
+
}
|
|
55
|
+
/* tag wrapper: swings from transform-origin at the top (hole position) */
|
|
56
|
+
#t1-stat-tag .tag-wrap {
|
|
57
|
+
position: absolute;
|
|
58
|
+
left: 900px; top: 190px;
|
|
59
|
+
transform-origin: 108px -80px; /* pivot = hole center relative to tag */
|
|
60
|
+
transform: rotate(16deg);
|
|
61
|
+
z-index: 3;
|
|
62
|
+
}
|
|
63
|
+
#t1-stat-tag .tag {
|
|
64
|
+
width: 520px; background: var(--paper-2);
|
|
65
|
+
border: 5px solid var(--ink);
|
|
66
|
+
border-radius: 18px 18px 18px 18px;
|
|
67
|
+
/* pointed left end via clip-path */
|
|
68
|
+
clip-path: polygon(10% 0%, 100% 0%, 100% 100%, 10% 100%, 0% 50%);
|
|
69
|
+
box-shadow: 6px 10px 32px rgba(23,19,14,0.30);
|
|
70
|
+
padding: 44px 60px 52px 80px;
|
|
71
|
+
position: relative;
|
|
72
|
+
}
|
|
73
|
+
/* punched hole - white circle near the pointed end */
|
|
74
|
+
#t1-stat-tag .hole {
|
|
75
|
+
position: absolute; left: 56px; top: 50%;
|
|
76
|
+
transform: translate(-50%, -50%);
|
|
77
|
+
width: 36px; height: 36px;
|
|
78
|
+
border-radius: 50%;
|
|
79
|
+
background: var(--paper);
|
|
80
|
+
border: 5px solid var(--ink);
|
|
81
|
+
z-index: 2;
|
|
82
|
+
}
|
|
83
|
+
#t1-stat-tag .tag-kicker {
|
|
84
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
85
|
+
font-size: 28px; letter-spacing: 0.18em;
|
|
86
|
+
text-transform: uppercase; color: var(--muted);
|
|
87
|
+
margin-bottom: 10px;
|
|
88
|
+
}
|
|
89
|
+
#t1-stat-tag .tag-price {
|
|
90
|
+
display: flex; align-items: baseline; gap: 12px;
|
|
91
|
+
}
|
|
92
|
+
#t1-stat-tag .tag-stat {
|
|
93
|
+
font-family: var(--font-display); font-weight: var(--wt-black);
|
|
94
|
+
font-size: 200px; line-height: 0.88; color: var(--ink);
|
|
95
|
+
font-variant-numeric: tabular-nums; letter-spacing: -0.02em;
|
|
96
|
+
}
|
|
97
|
+
#t1-stat-tag .tag-unit {
|
|
98
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
99
|
+
font-size: 44px; color: var(--orange); letter-spacing: 0.06em;
|
|
100
|
+
text-transform: uppercase; align-self: flex-end; padding-bottom: 20px;
|
|
101
|
+
}
|
|
102
|
+
#t1-stat-tag .tag-rule {
|
|
103
|
+
height: 3px; background: var(--ink); opacity: 0.25;
|
|
104
|
+
margin: 18px 0 10px;
|
|
105
|
+
}
|
|
106
|
+
#t1-stat-tag .tag-label-inner {
|
|
107
|
+
font-family: var(--font-label); font-size: 24px;
|
|
108
|
+
color: var(--muted); letter-spacing: 0.06em;
|
|
109
|
+
text-transform: uppercase;
|
|
110
|
+
}
|
|
111
|
+
/* main label below the tag area */
|
|
112
|
+
#t1-stat-tag .label {
|
|
113
|
+
position: absolute; left: 130px; right: 130px; bottom: 220px;
|
|
114
|
+
font-weight: var(--wt-thin); font-size: 56px; line-height: 1.1;
|
|
115
|
+
letter-spacing: var(--track-tight); color: var(--ink);
|
|
116
|
+
}
|
|
117
|
+
#t1-stat-tag .label em { font-style: italic; font-weight: var(--wt-black); }
|
|
118
|
+
#t1-stat-tag .source {
|
|
119
|
+
position: absolute; left: 130px; bottom: 96px;
|
|
120
|
+
font-family: var(--font-label); font-weight: var(--wt-bold);
|
|
121
|
+
font-size: var(--size-tiny); letter-spacing: var(--track-wide);
|
|
122
|
+
text-transform: uppercase; color: var(--muted);
|
|
123
|
+
}
|
|
124
|
+
</style>
|
|
125
|
+
</head>
|
|
126
|
+
<body>
|
|
127
|
+
<div id="t1-stat-tag" data-composition-id="t1-stat-tag" data-start="0" data-width="1920" data-height="1080">
|
|
128
|
+
<div class="grid"></div>
|
|
129
|
+
<div class="kicker" data-slot="kicker">MARKET VALUE</div>
|
|
130
|
+
|
|
131
|
+
<!-- Static straight string line: from tag-pivot to hole position on tag -->
|
|
132
|
+
<svg class="string-svg" viewBox="0 0 1920 1080" xmlns="http://www.w3.org/2000/svg">
|
|
133
|
+
<line x1="1008" y1="148" x2="956" y2="342" stroke-width="3" stroke-linecap="round" opacity="0.7" style="stroke:var(--ink)"/>
|
|
134
|
+
</svg>
|
|
135
|
+
|
|
136
|
+
<!-- Pivot dot at string origin -->
|
|
137
|
+
<div class="tag-pivot"></div>
|
|
138
|
+
|
|
139
|
+
<div class="tag-wrap">
|
|
140
|
+
<div class="tag">
|
|
141
|
+
<div class="hole"></div>
|
|
142
|
+
<div class="tag-kicker">retail price</div>
|
|
143
|
+
<div class="tag-price">
|
|
144
|
+
<span class="tag-stat" data-slot="stat">$47</span>
|
|
145
|
+
<span class="tag-unit" data-slot="unit">/ mo</span>
|
|
146
|
+
</div>
|
|
147
|
+
<div class="tag-rule"></div>
|
|
148
|
+
<div class="tag-label-inner">avg. subscription spend</div>
|
|
149
|
+
</div>
|
|
150
|
+
</div>
|
|
151
|
+
|
|
152
|
+
<div class="label" data-slot="label">yet <em>two-thirds</em> of those tools go unused after 30 days</div>
|
|
153
|
+
<div class="source" data-slot="source">SOURCE · SPEND REPORT 2026</div>
|
|
154
|
+
<div class="vignette"></div>
|
|
155
|
+
<div class="grain"></div>
|
|
156
|
+
</div>
|
|
157
|
+
|
|
158
|
+
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
|
159
|
+
<script>
|
|
160
|
+
window.__timelines = window.__timelines || {};
|
|
161
|
+
const tl = gsap.timeline({ paused: true });
|
|
162
|
+
// Grain flicker
|
|
163
|
+
tl.fromTo("#t1-stat-tag .grain", { backgroundPosition: "0px 0px" },
|
|
164
|
+
{ backgroundPosition: "150px 130px", duration: 0.5, ease: "steps(4)", repeat: 11, yoyo: true }, 0);
|
|
165
|
+
// Kicker snaps in
|
|
166
|
+
tl.from("#t1-stat-tag .kicker", { autoAlpha: 0, x: -20, duration: 0.28, ease: "steps(4)" }, 0.15)
|
|
167
|
+
// String fades in first (it's "already there" before tag swings down)
|
|
168
|
+
.from("#t1-stat-tag .string-svg", { autoAlpha: 0, duration: 0.2 }, 0.28)
|
|
169
|
+
// Tag swings in from top pivot - back.out for the pendulum swing
|
|
170
|
+
.from("#t1-stat-tag .tag-wrap", {
|
|
171
|
+
autoAlpha: 0,
|
|
172
|
+
rotation: -65, /* swings from high left to resting angle */
|
|
173
|
+
transformOrigin: "108px -80px",
|
|
174
|
+
duration: 0.52, ease: "back.out(1.6)"
|
|
175
|
+
}, 0.35)
|
|
176
|
+
// Price number pops after swing lands
|
|
177
|
+
.from("#t1-stat-tag .tag-stat", {
|
|
178
|
+
autoAlpha: 0, scale: 0.75,
|
|
179
|
+
transformOrigin: "left bottom",
|
|
180
|
+
duration: 0.3, ease: "back.out(2.4)"
|
|
181
|
+
}, 0.88)
|
|
182
|
+
.from("#t1-stat-tag .tag-unit", { autoAlpha: 0, x: 14, duration: 0.22, ease: "power2.out" }, 0.98)
|
|
183
|
+
.from("#t1-stat-tag .label", { autoAlpha: 0, y: 20, duration: 0.4, ease: "power3.out" }, 1.18)
|
|
184
|
+
.from("#t1-stat-tag .source", { autoAlpha: 0, duration: 0.28 }, 1.45)
|
|
185
|
+
.set({}, {}, 6);
|
|
186
|
+
window.__timelines["t1-stat-tag"] = tl;
|
|
187
|
+
</script>
|
|
188
|
+
</body>
|
|
189
|
+
</html>
|