Spaces:
Running
Running
* { | |
box-sizing: border-box; | |
margin: 0; | |
padding: 0; | |
} | |
body { | |
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; | |
line-height: 1.6; | |
color: #333; | |
background-color: #f5f5f5; | |
} | |
.container { | |
max-width: 1000px; | |
margin: 0 auto; | |
padding: 20px; | |
} | |
h1 { | |
text-align: center; | |
margin-bottom: 30px; | |
color: #2c3e50; | |
} | |
.benchmark-stats { | |
display: flex; | |
justify-content: center; | |
gap: 30px; | |
margin-bottom: 30px; | |
padding: 15px; | |
background-color: #fff; | |
border-radius: 8px; | |
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); | |
} | |
.benchmark-stats span { | |
font-weight: 600; | |
} | |
.puzzle-container { | |
display: flex; | |
flex-direction: column; | |
gap: 20px; | |
background-color: white; | |
padding: 20px; | |
border-radius: 8px; | |
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); | |
} | |
.puzzle-image-wrapper { | |
display: flex; | |
justify-content: center; | |
width: 100%; | |
} | |
.puzzle-image-container { | |
text-align: center; | |
position: relative; | |
display: inline-block; | |
margin: 0 auto 15px auto; | |
max-width: 100%; | |
} | |
#puzzle-image { | |
max-width: 100%; | |
max-height: 500px; | |
border-radius: 4px; | |
display: block; | |
} | |
#puzzle-image.clickable { | |
cursor: pointer; | |
border: 2px solid #3498db; | |
} | |
.puzzle-question { | |
text-align: center; | |
} | |
.puzzle-question h3 { | |
margin-bottom: 15px; | |
color: #2c3e50; | |
font-size: 18px; | |
} | |
.input-group { | |
display: flex; | |
justify-content: center; | |
gap: 10px; | |
margin-bottom: 15px; | |
} | |
#user-answer { | |
padding: 10px; | |
border: 1px solid #ddd; | |
border-radius: 4px; | |
font-size: 16px; | |
width: 200px; | |
} | |
#submit-answer { | |
padding: 10px 20px; | |
background-color: #2ecc71; | |
color: white; | |
border: none; | |
border-radius: 4px; | |
cursor: pointer; | |
font-size: 16px; | |
transition: background-color 0.3s; | |
} | |
#submit-answer:hover { | |
background-color: #27ae60; | |
} | |
#submit-answer:disabled { | |
background-color: #95a5a6; | |
cursor: not-allowed; | |
} | |
.result-message { | |
font-weight: 600; | |
margin-top: 10px; | |
min-height: 24px; | |
} | |
.result-message.correct { | |
color: #2ecc71; | |
} | |
.result-message.incorrect { | |
color: #e74c3c; | |
} | |
.result-message.instruction { | |
color: #3498db; | |
} | |
/* Click marker styles */ | |
.click-marker { | |
position: absolute; | |
width: 20px; | |
height: 20px; | |
border-radius: 50%; | |
background-color: rgba(231, 76, 60, 0.7); | |
border: 2px solid #e74c3c; | |
transform: translate(-50%, -50%); | |
pointer-events: none; | |
/* Add animation */ | |
animation: pulse 1s infinite alternate; | |
z-index: 10; | |
} | |
@keyframes pulse { | |
from { | |
transform: translate(-50%, -50%) scale(1); | |
box-shadow: 0 0 0 0 rgba(231, 76, 60, 0.4); | |
} | |
to { | |
transform: translate(-50%, -50%) scale(1.2); | |
box-shadow: 0 0 0 10px rgba(231, 76, 60, 0); | |
} | |
} | |
@media (max-width: 768px) { | |
.benchmark-stats { | |
flex-direction: column; | |
align-items: center; | |
gap: 10px; | |
} | |
} | |
/* Rotation CAPTCHA styles */ | |
.rotation-layout { | |
display: flex; | |
justify-content: space-around; | |
align-items: center; | |
width: 100%; | |
margin-bottom: 15px; | |
} | |
.reference-image-container, | |
.object-image-container { | |
flex: 0 0 45%; | |
text-align: center; | |
position: relative; | |
} | |
.reference-image-container::before, | |
.object-image-container::before { | |
content: attr(data-label); | |
display: block; | |
font-size: 0.8rem; | |
color: #666; | |
margin-bottom: 5px; | |
} | |
.reference-image-container::before { | |
content: "Reference"; | |
} | |
.object-image-container::before { | |
content: "Rotate to match"; | |
} | |
#reference-image, | |
#object-image { | |
max-width: 100%; | |
max-height: 200px; | |
object-fit: contain; | |
} | |
/* Rotation controls */ | |
.rotation-controls { | |
display: flex; | |
justify-content: center; | |
margin-top: 15px; | |
gap: 20px; | |
} | |
.rotate-left, | |
.rotate-right { | |
width: 40px; | |
height: 40px; | |
border-radius: 50%; | |
background-color: #2980b9; | |
color: white; | |
font-size: 20px; | |
border: none; | |
cursor: pointer; | |
display: flex; | |
align-items: center; | |
justify-content: center; | |
transition: background-color 0.2s; | |
} | |
.rotate-left:hover, | |
.rotate-right:hover { | |
background-color: #3498db; | |
} | |
.rotate-left:active, | |
.rotate-right:active { | |
background-color: #1c638d; | |
} | |
/* Submit button for rotation puzzles */ | |
.rotation-submit { | |
text-align: center; | |
margin-top: 15px; | |
} | |
.submit-rotation { | |
background-color: #27ae60; | |
color: white; | |
border: none; | |
border-radius: 4px; | |
padding: 8px 16px; | |
font-size: 16px; | |
cursor: pointer; | |
transition: background-color 0.2s; | |
} | |
.submit-rotation:hover { | |
background-color: #2ecc71; | |
} | |
.submit-rotation:active { | |
background-color: #219653; | |
} | |
/* Ensure the puzzle container properly displays rotation puzzles */ | |
.puzzle-image-wrapper { | |
width: 100%; | |
max-width: 600px; | |
margin: 0 auto; | |
} | |
/* Responsive adjustments */ | |
@media (max-width: 768px) { | |
.rotation-layout { | |
flex-direction: column; | |
gap: 20px; | |
} | |
.reference-image-container, | |
.object-image-container { | |
flex: 0 0 100%; | |
} | |
} | |
/* Slider Puzzle Styles */ | |
.background-container { | |
position: relative; | |
width: 100%; | |
max-width: 500px; | |
margin: 0 auto; | |
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); | |
} | |
.slider-component { | |
position: absolute; | |
cursor: move; | |
user-select: none; | |
touch-action: none; | |
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); | |
transition: box-shadow 0.2s ease; | |
} | |
.slider-component:hover { | |
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4); | |
} | |
.slider-component:active { | |
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5); | |
} | |
.slider-submit { | |
margin-top: 15px; | |
text-align: center; | |
} | |
.submit-slider { | |
background-color: #4CAF50; | |
color: white; | |
border: none; | |
padding: 8px 20px; | |
font-size: 16px; | |
cursor: pointer; | |
border-radius: 4px; | |
transition: background-color 0.3s ease; | |
} | |
.submit-slider:hover { | |
background-color: #45a049; | |
} | |
.submit-slider:disabled { | |
background-color: #cccccc; | |
cursor: not-allowed; | |
} | |
/* Hover instructions for the slider */ | |
.background-container::before { | |
content: "Drag the puzzle piece to the correct position"; | |
position: absolute; | |
top: -30px; | |
left: 50%; | |
transform: translateX(-50%); | |
padding: 5px 10px; | |
background-color: rgba(0, 0, 0, 0.7); | |
color: white; | |
border-radius: 4px; | |
font-size: 12px; | |
opacity: 0; | |
transition: opacity 0.3s ease; | |
pointer-events: none; | |
white-space: nowrap; | |
} | |
.background-container:hover::before { | |
opacity: 1; | |
} | |
/* Add responsive styles for smaller screens */ | |
@media (max-width: 600px) { | |
.background-container { | |
max-width: 100%; | |
} | |
.slider-component img { | |
max-width: 100%; | |
} | |
} | |
/* Target area marker for slider puzzle debug */ | |
.target-area { | |
position: absolute; | |
border-radius: 50%; | |
border: 2px dashed #00cc00; | |
background-color: rgba(0, 204, 0, 0.2); | |
pointer-events: none; | |
z-index: 5; | |
animation: pulse-green 1.5s infinite alternate; | |
} | |
@keyframes pulse-green { | |
from { | |
box-shadow: 0 0 0 0 rgba(0, 204, 0, 0.4); | |
background-color: rgba(0, 204, 0, 0.2); | |
} | |
to { | |
box-shadow: 0 0 0 10px rgba(0, 204, 0, 0); | |
background-color: rgba(0, 204, 0, 0.3); | |
} | |
} | |
/* Debugging coordinates label */ | |
.coords-label { | |
position: absolute; | |
background-color: rgba(0, 0, 0, 0.7); | |
color: white; | |
padding: 2px 5px; | |
font-size: 10px; | |
border-radius: 3px; | |
white-space: nowrap; | |
z-index: 20; | |
} | |
/* Unusual Detection Grid Styles */ | |
.unusual-detection-grid { | |
display: grid; | |
max-width: 600px; | |
margin: 0 auto; | |
background-color: #fff; | |
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); | |
} | |
.grid-cell { | |
position: relative; | |
cursor: pointer; | |
border: 2px solid #333; | |
overflow: hidden; | |
transition: transform 0.2s ease; | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
min-height: 80px; | |
} | |
.grid-cell:hover { | |
transform: scale(0.98); | |
} | |
.cell-image { | |
width: 100%; | |
height: 100%; | |
object-fit: cover; | |
display: block; | |
} | |
.cell-overlay { | |
position: absolute; | |
top: 0; | |
left: 0; | |
width: 100%; | |
height: 100%; | |
background-color: rgba(0, 120, 255, 0.5); | |
opacity: 0; | |
transition: opacity 0.2s ease; | |
pointer-events: none; | |
z-index: 2; | |
} | |
.checkmark { | |
position: absolute; | |
top: 50%; | |
left: 50%; | |
transform: translate(-50%, -50%); | |
color: white; | |
font-size: 32px; | |
font-weight: bold; | |
opacity: 0; | |
transition: opacity 0.2s ease; | |
pointer-events: none; | |
z-index: 3; | |
text-shadow: 1px 1px 3px rgba(0,0,0,0.7); | |
} | |
.submit-unusual { | |
margin-top: 15px; | |
padding: 10px 20px; | |
background-color: #4CAF50; | |
color: white; | |
border: none; | |
border-radius: 4px; | |
cursor: pointer; | |
font-size: 16px; | |
} | |
.submit-unusual:hover { | |
background-color: #45a049; | |
} | |
.submit-unusual:disabled { | |
background-color: #cccccc; | |
cursor: not-allowed; | |
} | |
/* End Unusual Detection Styles */ | |
/* Image Matching Styles */ | |
.matching-layout { | |
display: flex; | |
justify-content: space-around; | |
align-items: center; | |
width: 100%; | |
margin-bottom: 15px; | |
} | |
.option-image-container { | |
flex: 0 0 45%; | |
text-align: center; | |
position: relative; | |
} | |
.option-image-container::before { | |
content: "Match This"; | |
} | |
#option-image { | |
max-width: 100%; | |
max-height: 200px; | |
object-fit: contain; | |
} | |
/* Navigation controls */ | |
.image-matching-controls { | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
margin-top: 15px; | |
gap: 20px; | |
} | |
.navigate-left, | |
.navigate-right { | |
width: 40px; | |
height: 40px; | |
border-radius: 50%; | |
background-color: #2980b9; | |
color: white; | |
font-size: 20px; | |
border: none; | |
cursor: pointer; | |
display: flex; | |
align-items: center; | |
justify-content: center; | |
transition: background-color 0.2s; | |
} | |
.navigate-left:hover, | |
.navigate-right:hover { | |
background-color: #3498db; | |
} | |
.navigate-left:active, | |
.navigate-right:active { | |
background-color: #1c638d; | |
} | |
/* Indicator dots */ | |
.indicator-dots { | |
display: flex; | |
gap: 5px; | |
} | |
.dot { | |
width: 10px; | |
height: 10px; | |
border-radius: 50%; | |
background-color: #bdc3c7; | |
transition: background-color 0.2s; | |
} | |
.dot.active { | |
background-color: #2980b9; | |
} | |
/* Submit button for image matching */ | |
.image-matching-submit { | |
text-align: center; | |
margin-top: 15px; | |
} | |
.submit-image-matching { | |
background-color: #27ae60; | |
color: white; | |
border: none; | |
border-radius: 4px; | |
padding: 8px 16px; | |
font-size: 16px; | |
cursor: pointer; | |
transition: background-color 0.2s; | |
} | |
.submit-image-matching:hover { | |
background-color: #2ecc71; | |
} | |
.submit-image-matching:active { | |
background-color: #219653; | |
} | |
/* Responsive adjustments */ | |
@media (max-width: 768px) { | |
.matching-layout { | |
flex-direction: column; | |
gap: 20px; | |
} | |
.reference-image-container, | |
.option-image-container { | |
flex: 0 0 100%; | |
} | |
} | |
/* Add styles for Patch Select grid */ | |
.patch-select-grid { | |
width: 100%; | |
max-width: 500px; | |
margin: 0 auto; | |
border: 2px solid #ccc; | |
overflow: hidden; | |
position: relative; | |
height: 450px; /* Set a fixed height */ | |
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); | |
} | |
.patch-select-image-container { | |
position: absolute; | |
top: 0; | |
left: 0; | |
width: 100%; | |
height: 100%; | |
z-index: 0; | |
} | |
.patch-select-image-container img { | |
object-fit: cover; | |
width: 100%; | |
height: 100%; | |
} | |
.patch-select-cell { | |
position: relative; | |
z-index: 1; | |
min-height: 80px; /* Increase minimum height */ | |
cursor: pointer; | |
transition: all 0.2s ease; | |
border: 2px solid rgba(255, 255, 255, 0.5); | |
} | |
.patch-select-cell:hover { | |
background-color: rgba(0, 123, 255, 0.2); | |
border: 3px solid rgba(0, 123, 255, 0.7); | |
} | |
.patch-select-cell.selected { | |
background-color: rgba(0, 123, 255, 0.3); | |
border: 3px solid rgba(0, 123, 255, 0.8); | |
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.5); | |
} | |
/* Object Match Styles */ | |
.object-match-container { | |
display: flex; | |
flex-direction: column; | |
align-items: center; | |
gap: 15px; | |
margin-bottom: 20px; | |
} | |
.object-match-horizontal-layout { | |
display: flex; | |
flex-direction: row; | |
justify-content: center; | |
align-items: center; | |
gap: 30px; | |
width: 100%; | |
} | |
.object-match-reference, | |
.object-match-options { | |
display: flex; | |
flex-direction: column; | |
align-items: center; | |
background-color: #f5f5f5; | |
border-radius: 8px; | |
padding: 15px; | |
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); | |
width: 300px; | |
position: relative; | |
} | |
.object-match-reference-img, | |
.object-match-option-img { | |
max-width: 100%; | |
height: auto; | |
border-radius: 4px; | |
margin-bottom: 10px; | |
max-height: 200px; | |
object-fit: contain; | |
} | |
.object-match-caption { | |
font-weight: bold; | |
font-size: 16px; | |
margin-top: 5px; | |
} | |
.object-match-controls { | |
display: flex; | |
justify-content: space-between; | |
width: 100%; | |
margin-top: 10px; | |
} | |
.object-match-arrow { | |
background-color: #4CAF50; | |
color: white; | |
border: none; | |
border-radius: 50%; | |
width: 40px; | |
height: 40px; | |
font-size: 18px; | |
cursor: pointer; | |
display: flex; | |
align-items: center; | |
justify-content: center; | |
} | |
.object-match-arrow:hover { | |
background-color: #45a049; | |
} | |
.object-match-indicators { | |
display: flex; | |
justify-content: center; | |
gap: 8px; | |
margin-top: 15px; | |
} | |
.object-match-dot { | |
width: 10px; | |
height: 10px; | |
background-color: #ddd; | |
border-radius: 50%; | |
cursor: pointer; | |
} | |
.object-match-dot.active { | |
background-color: #4CAF50; | |
} | |
.object-match-submit { | |
padding: 10px 20px; | |
background-color: #4CAF50; | |
border: none; | |
color: white; | |
border-radius: 4px; | |
cursor: pointer; | |
font-size: 16px; | |
margin-top: 15px; | |
} | |
.object-match-submit:hover { | |
background-color: #45a049; | |
} | |
/* Responsive adjustments for Object Match */ | |
@media (max-width: 768px) { | |
.object-match-horizontal-layout { | |
flex-direction: column; | |
gap: 20px; | |
} | |
.object-match-reference, | |
.object-match-options { | |
width: 100%; | |
} | |
} | |
/* Dart Count Styles */ | |
.dart-count-container { | |
display: flex; | |
flex-direction: column; | |
align-items: center; | |
gap: 15px; | |
margin-bottom: 20px; | |
} | |
.dart-count-horizontal-layout { | |
display: flex; | |
flex-direction: row; | |
justify-content: center; | |
align-items: center; | |
gap: 30px; | |
width: 100%; | |
} | |
.dart-count-reference, | |
.dart-count-options { | |
display: flex; | |
flex-direction: column; | |
align-items: center; | |
background-color: #f5f5f5; | |
border-radius: 8px; | |
padding: 15px; | |
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); | |
width: 300px; | |
position: relative; | |
} | |
.dart-count-reference-img, | |
.dart-count-option-img { | |
max-width: 100%; | |
height: auto; | |
border-radius: 4px; | |
margin-bottom: 10px; | |
max-height: 200px; | |
object-fit: contain; | |
} | |
.dart-count-caption { | |
font-weight: bold; | |
font-size: 16px; | |
margin-top: 5px; | |
} | |
.dart-count-controls { | |
display: flex; | |
justify-content: space-between; | |
width: 100%; | |
margin-top: 10px; | |
} | |
.dart-count-arrow { | |
background-color: #4CAF50; | |
color: white; | |
border: none; | |
border-radius: 50%; | |
width: 40px; | |
height: 40px; | |
font-size: 18px; | |
cursor: pointer; | |
display: flex; | |
align-items: center; | |
justify-content: center; | |
} | |
.dart-count-arrow:hover { | |
background-color: #45a049; | |
} | |
.dart-count-indicators { | |
display: flex; | |
justify-content: center; | |
gap: 8px; | |
margin-top: 15px; | |
} | |
.dart-count-dot { | |
width: 10px; | |
height: 10px; | |
background-color: #ddd; | |
border-radius: 50%; | |
cursor: pointer; | |
} | |
.dart-count-dot.active { | |
background-color: #4CAF50; | |
} | |
.dart-count-submit { | |
padding: 10px 20px; | |
background-color: #4CAF50; | |
border: none; | |
color: white; | |
border-radius: 4px; | |
cursor: pointer; | |
font-size: 16px; | |
margin-top: 15px; | |
} | |
.dart-count-submit:hover { | |
background-color: #45a049; | |
} | |
/* Responsive adjustments for Dart Count */ | |
@media (max-width: 768px) { | |
.dart-count-horizontal-layout { | |
flex-direction: column; | |
gap: 20px; | |
} | |
.dart-count-reference, | |
.dart-count-options { | |
width: 100%; | |
} | |
} | |
/* Difficulty stars styling */ | |
.difficulty-stars { | |
display: inline-block; | |
margin-left: 10px; | |
margin-bottom: 5px; | |
} | |
.difficulty-stars .star { | |
color: #FFD700; /* Yellow color for stars */ | |
font-size: 24px; /* Increased size */ | |
margin-right: 5px; /* Increased spacing */ | |
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3); /* Added shadow for better visibility */ | |
} | |
.puzzle-difficulty { | |
display: flex; | |
align-items: center; | |
justify-content: center; | |
margin-top: 5px; | |
margin-bottom: 15px; | |
font-size: 16px; /* Increased text size */ | |
font-weight: bold; /* Made text bold */ | |
color: #333; | |
background-color: #f8f8f8; /* Light background */ | |
padding: 10px; | |
border-radius: 5px; | |
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | |
max-width: 300px; | |
margin-left: auto; | |
margin-right: auto; | |
} | |
.puzzle-difficulty span { | |
margin-right: 5px; | |
} | |
/* === Special Effects for Answer Results === */ | |
/* Fireworks container */ | |
.fireworks-container { | |
position: fixed; | |
top: 0; | |
left: 0; | |
width: 100%; | |
height: 100%; | |
pointer-events: none; | |
z-index: 9999; | |
overflow: hidden; | |
} | |
/* Individual firework particles */ | |
.firework { | |
position: absolute; | |
width: 8px; | |
height: 8px; | |
border-radius: 50%; | |
animation: explode 1.5s forwards; | |
opacity: 0; | |
box-shadow: 0 0 10px 2px rgba(255, 255, 255, 0.7); | |
} | |
@keyframes explode { | |
0% { | |
transform: translateY(0) scale(0.1); | |
opacity: 0; | |
} | |
25% { | |
opacity: 1; | |
} | |
50% { | |
opacity: 0.8; | |
} | |
100% { | |
transform: translateY(-250px) scale(1.2); | |
opacity: 0; | |
} | |
} | |
/* Happy face animation */ | |
.happy-face-container { | |
position: fixed; | |
top: 50%; | |
left: 50%; | |
transform: translate(-50%, -50%); | |
z-index: 9999; | |
pointer-events: none; | |
font-size: 180px; | |
animation: happy-face-animation 2.5s forwards; | |
opacity: 0; | |
text-shadow: 0 0 20px rgba(255, 215, 0, 0.8); | |
} | |
@keyframes happy-face-animation { | |
0% { | |
opacity: 0; | |
transform: translate(-50%, -50%) scale(0.1) rotate(-20deg); | |
} | |
20% { | |
opacity: 1; | |
transform: translate(-50%, -50%) scale(1.3) rotate(10deg); | |
} | |
50% { | |
transform: translate(-50%, -50%) scale(1.2) rotate(-5deg); | |
} | |
80% { | |
opacity: 1; | |
transform: translate(-50%, -50%) scale(1.3) rotate(0deg); | |
} | |
100% { | |
opacity: 0; | |
transform: translate(-50%, -50%) scale(0.8); | |
} | |
} | |
/* Sad face animation */ | |
.sad-face-container { | |
position: fixed; | |
top: 50%; | |
left: 50%; | |
transform: translate(-50%, -50%); | |
z-index: 9999; | |
pointer-events: none; | |
font-size: 150px; | |
animation: sad-face-animation 2s forwards; | |
opacity: 0; | |
} | |
@keyframes sad-face-animation { | |
0% { | |
opacity: 0; | |
transform: translate(-50%, -50%) scale(0.1); | |
} | |
50% { | |
opacity: 1; | |
transform: translate(-50%, -50%) scale(1.2); | |
} | |
100% { | |
opacity: 0; | |
transform: translate(-50%, -50%) scale(0.8); | |
} | |
} | |
/* Bounce animation for correct message */ | |
.result-message.correct { | |
color: #2ecc71; | |
animation: bounce 0.5s; | |
font-size: 1.5em; | |
text-shadow: 0 0 5px rgba(46, 204, 113, 0.5); | |
} | |
@keyframes bounce { | |
0%, 20%, 50%, 80%, 100% { | |
transform: translateY(0); | |
} | |
40% { | |
transform: translateY(-20px); | |
} | |
60% { | |
transform: translateY(-10px); | |
} | |
} | |
/* Shake animation for incorrect message */ | |
.result-message.incorrect { | |
color: #e74c3c; | |
animation: shake 0.5s; | |
font-size: 1.5em; | |
text-shadow: 0 0 5px rgba(231, 76, 60, 0.5); | |
} | |
@keyframes shake { | |
0%, 100% { | |
transform: translateX(0); | |
} | |
10%, 30%, 50%, 70%, 90% { | |
transform: translateX(-5px); | |
} | |
20%, 40%, 60%, 80% { | |
transform: translateX(5px); | |
} | |
} |