@@ -378,26 +378,46 @@ button:disabled,
378378
379379/* Rotating symbol animation */
380380@keyframes rotate-symbol {
381- 0% { content : "◐" ; }
382- 25% { content : "◓" ; }
383- 50% { content : "◑" ; }
384- 75% { content : "◒" ; }
385- 100% { content : "◐" ; }
381+ 0% { content : "◐" ; transform : scale (1 ); }
382+ 25% { content : "◓" ; transform : scale (10 ); }
383+ 50% { content : "◑" ; transform : scale (1 ); }
384+ 75% { content : "◒" ; transform : scale (10 ); }
385+ 100% { content : "◐" ; transform : scale (1 ); }
386+ }
387+
388+ @keyframes fade-in {
389+ from {
390+ opacity : 0 ;
391+ transform : scale (0.8 );
392+ }
393+ to {
394+ opacity : 1 ;
395+ transform : scale (1 );
396+ }
386397}
387398
388399.rotating-symbol {
389400 display : inline-block;
390401 vertical-align : text-bottom;
391402 line-height : 1 ;
403+ animation : fade-in 0.2s ease-out;
404+ font-weight : normal;
392405}
393406
394407.rotating-symbol ::before {
395408 content : "◐" ;
396- animation : rotate-symbol 2 s linear infinite;
409+ animation : rotate-symbol 1.6 s steps ( 4 , end) infinite;
397410 display : inline-block;
398411 font-size : inherit;
399- line-height : inherit ;
412+ line-height : 1 ;
400413 vertical-align : baseline;
414+ transform-origin : center;
415+ }
416+
417+ /* Make the rotating symbol more prominent at larger sizes */
418+ .rotating-symbol .text-xl ::before ,
419+ .rotating-symbol .text-2xl ::before {
420+ font-weight : 900 ;
401421}
402422
403423/* Shimmer hover effect */
@@ -559,4 +579,41 @@ code::-webkit-scrollbar-thumb:hover,
559579
560580.animate-scanlines {
561581 animation : scanlines 8s linear infinite;
582+ }
583+
584+ /* Screenshot Shutter Animation */
585+ @keyframes shutterFlash {
586+ 0% {
587+ opacity : 0 ;
588+ }
589+ 50% {
590+ opacity : 1 ;
591+ }
592+ 100% {
593+ opacity : 0 ;
594+ }
595+ }
596+
597+ .shutter-flash {
598+ animation : shutterFlash 0.5s ease-in-out;
599+ }
600+
601+ /* Image Move to Input Animation */
602+ @keyframes moveToInput {
603+ 0% {
604+ transform : scale (1 ) translateY (0 );
605+ opacity : 1 ;
606+ }
607+ 50% {
608+ transform : scale (0.3 ) translateY (50% );
609+ opacity : 0.8 ;
610+ }
611+ 100% {
612+ transform : scale (0.1 ) translateY (100vh );
613+ opacity : 0 ;
614+ }
615+ }
616+
617+ .image-move-to-input {
618+ animation : moveToInput 0.8s ease-in-out forwards;
562619}
0 commit comments