166166 --duration-fast : 250ms ;
167167 --duration-base : 300ms ;
168168 --duration-medium : 350ms ;
169- --duration-slow : 400ms ;
170-
171- /* Animation Colors */
172- --color-success-pulse : rgb (34 197 94 / 40% );
173- --color-success-pulse-fade : rgb (34 197 94 / 0% );
174169
175170 /* Z-Index Scale */
176171 --z-fixed : 300 ;
@@ -355,123 +350,15 @@ pre {
355350 color : var (--color-text-primary );
356351}
357352
358- /* Copied state - success animation with pulse */
353+ /* Copied state - subtle green checkmark */
359354.copy-code-button .copied {
360355 background : var (--color-success-bg );
361356 border-color : var (--color-green-500 );
362357 opacity : 1 ;
363- animation : copy-success-pulse var (--duration-slow ) ease-out;
364358}
365359
366360.copy-code-button .copied svg {
367361 color : var (--color-green-600 );
368- animation : copy-checkmark-pop var (--duration-base ) ease-out;
369- }
370-
371- @keyframes copy-success-pulse {
372- 0% {
373- transform : scale (1 );
374- box-shadow : 0 0 0 0 var (--color-success-pulse );
375- }
376-
377- 50% {
378- transform : scale (1.08 );
379- box-shadow : 0 0 0 8px var (--color-success-pulse-fade );
380- }
381-
382- 100% {
383- transform : scale (1 );
384- box-shadow : 0 0 0 0 var (--color-success-pulse-fade );
385- }
386- }
387-
388- @keyframes copy-checkmark-pop {
389- 0% {
390- transform : scale (0.5 );
391- opacity : 0 ;
392- }
393-
394- 50% {
395- transform : scale (1.2 );
396- }
397-
398- 100% {
399- transform : scale (1 );
400- opacity : 1 ;
401- }
402- }
403-
404- /* Tooltip for copy button - positioned below to avoid Source button overlap */
405- .copy-code-button ::after {
406- content : attr (data-tooltip);
407- position : absolute;
408- top : calc (100% + 6px );
409- left : 50% ;
410- transform : translateX (-50% ) translateY (-4px );
411- padding : var (--space-1 ) var (--space-2 );
412- background : var (--color-neutral-800 );
413- color : var (--color-neutral-50 );
414- font-size : var (--font-size-xs );
415- font-family : var (--font-primary );
416- white-space : nowrap;
417- border-radius : var (--radius-sm );
418- opacity : 0 ;
419- visibility : hidden;
420- transition : opacity var (--transition-fast ), transform var (--transition-fast ), visibility var (--transition-fast );
421- pointer-events : none;
422- z-index : 20 ;
423- }
424-
425- .copy-code-button ::before {
426- content : '' ;
427- position : absolute;
428- top : calc (100% + 2px );
429- left : 50% ;
430- transform : translateX (-50% );
431- border : 4px solid transparent;
432- border-bottom-color : var (--color-neutral-800 );
433- opacity : 0 ;
434- visibility : hidden;
435- transition : opacity var (--transition-fast ), visibility var (--transition-fast );
436- pointer-events : none;
437- z-index : 20 ;
438- }
439-
440- .copy-code-button [data-tooltip ]: hover ::after ,
441- .copy-code-button [data-tooltip ]: focus ::after {
442- opacity : 1 ;
443- visibility : visible;
444- transform : translateX (-50% ) translateY (0 );
445- }
446-
447- .copy-code-button [data-tooltip ]: hover ::before ,
448- .copy-code-button [data-tooltip ]: focus ::before {
449- opacity : 1 ;
450- visibility : visible;
451- }
452-
453- /* Copied tooltip state */
454- .copy-code-button .copied ::after {
455- content : 'Copied!' ;
456- background : var (--color-green-600 );
457- opacity : 1 ;
458- visibility : visible;
459- transform : translateX (-50% ) translateY (0 );
460- }
461-
462- .copy-code-button .copied ::before {
463- border-bottom-color : var (--color-green-600 );
464- opacity : 1 ;
465- visibility : visible;
466- }
467-
468- [data-theme = "dark" ] .copy-code-button ::after {
469- background : var (--color-neutral-100 );
470- color : var (--color-neutral-900 );
471- }
472-
473- [data-theme = "dark" ] .copy-code-button ::before {
474- border-bottom-color : var (--color-neutral-100 );
475362}
476363
477364[data-theme = "dark" ] .copy-code-button .copied {
@@ -482,15 +369,6 @@ pre {
482369 color : var (--color-green-400 );
483370}
484371
485- [data-theme = "dark" ] .copy-code-button .copied ::after {
486- background : var (--color-green-500 );
487- color : white;
488- }
489-
490- [data-theme = "dark" ] .copy-code-button .copied ::before {
491- border-bottom-color : var (--color-green-500 );
492- }
493-
494372/* Mobile adjustments */
495373@media (hover : none) {
496374 .copy-code-button {
0 commit comments