blob: 00fb5d7082eb2faa3ecb4bb3ba3e8f48f109c3d2 [file] [log] [blame]
Krishya34493be2025-06-09 22:45:46 +08001.auth-container {
Krishya57cc17b2025-05-26 16:43:34 +08002 display: flex;
3 align-items: center;
Krishya34493be2025-06-09 22:45:46 +08004 justify-content: space-between;
Krishya57cc17b2025-05-26 16:43:34 +08005 min-height: 100vh;
Krishya34493be2025-06-09 22:45:46 +08006 font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
7 /* background: linear-gradient(135deg, #be8e9d 0%, #c48d74 100%); */
8 background: url('a.jpg') no-repeat center center fixed;
9 background-size: cover;
10 padding: 0 5%;
11 position: relative;
12 overflow: hidden;
Krishya57cc17b2025-05-26 16:43:34 +080013}
Krishya7096ab12025-06-05 17:15:46 +080014
Krishya34493be2025-06-09 22:45:46 +080015.auth-container::before {
16 content: '';
17 position: absolute;
18 top: -50%;
19 left: -50%;
20 width: 200%;
21 height: 200%;
22 background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 70%);
23 transform: rotate(30deg);
24}
Krishya7096ab12025-06-05 17:15:46 +080025
Krishya34493be2025-06-09 22:45:46 +080026.logo-container {
27 flex: 1;
28 display: flex;
29 justify-content: center;
30 align-items: center;
31 padding: 2rem;
32 z-index: 1;
33}
34
35.site-logo {
36 width: 350px;
37 margin-left: -15%;
38 height: auto;
39 filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.3));
40}
41
42.glass-card {
43 width: 35%;
44 margin-right: 10%;
45 background: rgba(255, 255, 255, 0.15);
46 backdrop-filter: blur(12px);
47 -webkit-backdrop-filter: blur(12px);
48 border-radius: 16px;
49 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
50 border: 1px solid rgba(255, 255, 255, 0.18);
51 overflow: hidden;
52 z-index: 2;
53 transition: all 0.3s ease;
54}
55
56.glass-card:hover {
57 transform: translateY(-5px);
58 box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
59}
60
61.auth-header {
62 display: flex;
63 background: rgba(255, 255, 255, 0.1);
64}
65
66.auth-tab {
67 flex: 1;
68 padding: 20px;
69 text-align: center;
70 font-size: 18px;
71 font-weight: 500;
72 cursor: pointer;
73 transition: all 0.3s ease;
74 color: rgba(255, 255, 255, 0.7);
75 position: relative;
76}
77
78.auth-tab.active {
79 color: white;
80 font-weight: 600;
81}
82
83.auth-tab.active::after {
84 content: '';
85 position: absolute;
86 bottom: 0;
87 left: 50%;
88 transform: translateX(-50%);
89 width: 60%;
90 height: 3px;
91 background: white;
92 border-radius: 3px;
93}
94
95.auth-tab:not(.active):hover {
96 background: rgba(255, 255, 255, 0.05);
97}
98
99.auth-content {
100 padding: 30px;
101}
102
103.auth-form {
104 display: flex;
105 flex-direction: column;
106 gap: 20px;
107}
108
109.form-group {
110 display: flex;
111 flex-direction: column;
112 gap: 8px;
113}
114
115.form-group label {
116 font-weight: 500;
117 color: rgba(255, 255, 255, 0.9);
118 text-align: left;
119 align-self: flex-start;
120}
121
122.form-group input[type="text"],
123.form-group input[type="email"],
124.form-group input[type="password"] {
125 padding: 14px 16px;
126 background: rgba(255, 255, 255, 0.1);
127 border: 1px solid rgba(255, 255, 255, 0.2);
128 border-radius: 8px;
129 font-size: 16px;
130 color: white;
131 transition: all 0.3s ease;
132}
133
134.form-group input::placeholder {
135 color: rgba(255, 255, 255, 0.5);
136}
137
138.form-group input:focus {
139 background: rgba(255, 255, 255, 0.2);
140 border-color: rgba(255, 255, 255, 0.4);
141 outline: none;
142 box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.1);
143}
144
145.auth-button {
146 background: rgba(255, 255, 255, 0.2);
147 color: white;
148 border: none;
149 border-radius: 8px;
150 padding: 16px;
151 font-size: 16px;
152 font-weight: 500;
153 cursor: pointer;
154 transition: all 0.3s ease;
155 margin-top: 10px;
156 backdrop-filter: blur(5px);
157 border: 1px solid rgba(255, 255, 255, 0.2);
158}
159
160.auth-button:hover {
161 background: rgba(255, 255, 255, 0.3);
162 transform: translateY(-2px);
163}
164
165.forgot-password {
166 color: rgba(255, 255, 255, 0.7);
167 text-decoration: none;
168 font-size: 14px;
169 transition: all 0.3s ease;
170}
171
172.forgot-password:hover {
173 color: white;
174 text-decoration: underline;
175}
176
177.error-message {
178 color: #ff6b6b;
179 font-size: 14px;
180 margin-top: 4px;
181 text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
182}
183
184/* 响应式调整 */
185@media (max-width: 768px) {
186 .auth-container {
187 flex-direction: column;
188 padding: 40px 20px;
189 justify-content: flex-start;
Krishya7096ab12025-06-05 17:15:46 +0800190 }
Krishya57cc17b2025-05-26 16:43:34 +0800191
Krishya34493be2025-06-09 22:45:46 +0800192 .logo-container {
193 margin-bottom: 40px;
Krishya57cc17b2025-05-26 16:43:34 +0800194 }
195
Krishya34493be2025-06-09 22:45:46 +0800196 .glass-card {
197 max-width: 100%;
198 }
199}
200
201@media (max-width: 480px) {
202 .auth-content {
203 padding: 20px;
Krishya57cc17b2025-05-26 16:43:34 +0800204 }
205
206 .auth-tab {
Krishya57cc17b2025-05-26 16:43:34 +0800207 padding: 16px;
Krishya57cc17b2025-05-26 16:43:34 +0800208 font-size: 16px;
Krishya57cc17b2025-05-26 16:43:34 +0800209 }
Krishya34493be2025-06-09 22:45:46 +0800210}