|
a |
|
b/web/style.css.new |
|
|
1 |
/* DNA Helix Animation */ |
|
|
2 |
.dna-helix { |
|
|
3 |
position: relative; |
|
|
4 |
width: 200px; |
|
|
5 |
height: 400px; |
|
|
6 |
margin: 0 auto; |
|
|
7 |
perspective: 1200px; |
|
|
8 |
transform-style: preserve-3d; |
|
|
9 |
} |
|
|
10 |
|
|
|
11 |
.base-pair { |
|
|
12 |
position: absolute; |
|
|
13 |
width: 100%; |
|
|
14 |
height: 20px; |
|
|
15 |
animation: rotate 8s linear infinite; |
|
|
16 |
transform-style: preserve-3d; |
|
|
17 |
} |
|
|
18 |
|
|
|
19 |
.base { |
|
|
20 |
position: absolute; |
|
|
21 |
width: 25px; |
|
|
22 |
height: 25px; |
|
|
23 |
border-radius: 50%; |
|
|
24 |
display: flex; |
|
|
25 |
align-items: center; |
|
|
26 |
justify-content: center; |
|
|
27 |
font-weight: bold; |
|
|
28 |
color: white; |
|
|
29 |
text-shadow: 0 0 3px rgba(0,0,0,0.5); |
|
|
30 |
box-shadow: 0 0 15px rgba(0,0,0,0.2); |
|
|
31 |
} |
|
|
32 |
|
|
|
33 |
.left-base { |
|
|
34 |
left: 35px; |
|
|
35 |
background: #FF0066; |
|
|
36 |
animation: pulse 3s ease-in-out infinite; |
|
|
37 |
filter: brightness(1.1); |
|
|
38 |
} |
|
|
39 |
|
|
|
40 |
.right-base { |
|
|
41 |
right: 35px; |
|
|
42 |
background: #00B7FF; |
|
|
43 |
animation: pulse 3s ease-in-out infinite; |
|
|
44 |
filter: brightness(1.1); |
|
|
45 |
} |
|
|
46 |
|
|
|
47 |
.base-connector { |
|
|
48 |
position: absolute; |
|
|
49 |
left: 50%; |
|
|
50 |
width: 90px; |
|
|
51 |
height: 3px; |
|
|
52 |
background: linear-gradient(90deg, |
|
|
53 |
rgba(255, 0, 102, 0.8), |
|
|
54 |
rgba(255, 255, 255, 0.3) 50%, |
|
|
55 |
rgba(0, 183, 255, 0.8) |
|
|
56 |
); |
|
|
57 |
transform: translateX(-50%); |
|
|
58 |
box-shadow: 0 0 8px rgba(0,0,0,0.15); |
|
|
59 |
} |
|
|
60 |
|
|
|
61 |
@keyframes rotate { |
|
|
62 |
0% { transform: rotateY(0deg) translateZ(20px); } |
|
|
63 |
100% { transform: rotateY(360deg) translateZ(20px); } |
|
|
64 |
} |
|
|
65 |
|
|
|
66 |
@keyframes pulse { |
|
|
67 |
0% { transform: scale(1); opacity: 0.9; filter: brightness(1.1); } |
|
|
68 |
50% { transform: scale(1.15); opacity: 1; filter: brightness(1.3); } |
|
|
69 |
100% { transform: scale(1); opacity: 0.9; filter: brightness(1.1); } |
|
|
70 |
} |