PluginProbe
AI Builder – Generate pages, blocks, images & translate with AI / trunk
AI Builder – Generate pages, blocks, images & translate with AI vtrunk
2.7.9 2.7.8 2.0.8 2.0.9 2.1.0 2.1.1 2.1.10 2.1.11 2.1.12 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.3.10 2.3.11 All 121 releases
ai-builder / assets / css / reset-password.css

reset-password.css in AI Builder – Generate pages, blocks, images & translate with AI trunk, at assets/css/reset-password.css

273 lines 4.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* Reset Password Page Styles */
2 .ai-reset-container {
3 max-width: 400px;
4 margin: 50px auto 0 auto;
5 padding: 40px 20px;
6 background: #fff;
7 border-radius: 12px;
8 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
9 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
10 }
11
12 .ai-reset-header {
13 text-align: center;
14 margin-bottom: 30px;
15 }
16
17 .ai-reset-header h2 {
18 color: #1a1a1a;
19 font-size: 28px;
20 font-weight: 600;
21 margin: 0 0 8px 0;
22 line-height: 1.2;
23 }
24
25 .ai-reset-header p {
26 color: #666;
27 font-size: 16px;
28 margin: 0;
29 line-height: 1.5;
30 }
31
32 .ai-reset-form {
33 margin-bottom: 20px;
34 }
35
36 .ai-form-group {
37 margin-bottom: 20px;
38 }
39
40 .ai-form-group label {
41 display: block;
42 color: #333;
43 font-size: 14px;
44 font-weight: 500;
45 margin-bottom: 8px;
46 line-height: 1.4;
47 }
48
49 .ai-form-group input {
50 width: 100%;
51 padding: 12px 16px;
52 border: 2px solid #e1e5e9;
53 border-radius: 8px;
54 font-size: 16px;
55 transition: all 0.3s ease;
56 box-sizing: border-box;
57 background: #fff;
58 color: #333;
59 }
60
61 .ai-form-group input:focus {
62 outline: none;
63 border-color: #007cba;
64 box-shadow: 0 0 0 3px rgba(0, 124, 186, 0.1);
65 }
66
67 .ai-form-group input:invalid {
68 border-color: #d63638;
69 }
70
71 .ai-submit-btn {
72 width: 100%;
73 padding: 14px 20px;
74 background: linear-gradient(135deg, #007cba 0%, #005a87 100%);
75 color: white;
76 border: none;
77 border-radius: 8px;
78 font-size: 16px;
79 font-weight: 600;
80 cursor: pointer;
81 transition: all 0.3s ease;
82 display: flex;
83 align-items: center;
84 justify-content: center;
85 gap: 8px;
86 position: relative;
87 overflow: hidden;
88 }
89
90 .ai-submit-btn:hover {
91 background: linear-gradient(135deg, #005a87 0%, #004a6f 100%);
92 transform: translateY(-1px);
93 box-shadow: 0 4px 12px rgba(0, 124, 186, 0.3);
94 }
95
96 .ai-submit-btn:active {
97 transform: translateY(0);
98 box-shadow: 0 2px 8px rgba(0, 124, 186, 0.3);
99 }
100
101 .ai-submit-btn:disabled {
102 background: #ccc;
103 cursor: not-allowed;
104 transform: none;
105 box-shadow: none;
106 }
107
108 .ai-loading {
109 width: 16px;
110 height: 16px;
111 border: 2px solid transparent;
112 border-top: 2px solid currentColor;
113 border-radius: 50%;
114 animation: spin 1s linear infinite;
115 }
116
117 @keyframes spin {
118 0% { transform: rotate(0deg); }
119 100% { transform: rotate(360deg); }
120 }
121
122 .ai-back-to-signin {
123 text-align: center;
124 margin-top: 20px;
125 }
126
127 .ai-link {
128 color: #007cba;
129 text-decoration: none;
130 font-size: 14px;
131 font-weight: 500;
132 transition: color 0.3s ease;
133 }
134
135 .ai-link:hover {
136 color: #005a87;
137 text-decoration: underline;
138 }
139
140 .ai-message {
141 padding: 12px 16px;
142 border-radius: 8px;
143 margin: 20px 0;
144 font-size: 14px;
145 font-weight: 500;
146 line-height: 1.4;
147 }
148
149 .ai-message.success {
150 background: #d1f2eb;
151 color: #0f5132;
152 border: 1px solid #a8e6cf;
153 }
154
155 .ai-message.error {
156 background: #f8d7da;
157 color: #721c24;
158 border: 1px solid #f5c6cb;
159 }
160
161 .ai-message.info {
162 background: #d1ecf1;
163 color: #0c5460;
164 border: 1px solid #bee5eb;
165 }
166
167 .ai-message.warning {
168 background: #fff3cd;
169 color: #856404;
170 border: 1px solid #ffeaa7;
171 }
172
173 /* Animation d'apparition */
174 .ai-fade-in {
175 animation: fadeIn 0.5s ease-in-out;
176 }
177
178 @keyframes fadeIn {
179 from {
180 opacity: 0;
181 transform: translateY(20px);
182 }
183 to {
184 opacity: 1;
185 transform: translateY(0);
186 }
187 }
188
189 /* Responsive Design */
190 @media (max-width: 480px) {
191 .ai-reset-container {
192 margin: 20px;
193 padding: 30px 20px;
194 border-radius: 8px;
195 }
196
197 .ai-reset-header h2 {
198 font-size: 24px;
199 }
200
201 .ai-reset-header p {
202 font-size: 14px;
203 }
204
205 .ai-form-group input {
206 padding: 10px 14px;
207 font-size: 16px; /* Évite le zoom sur iOS */
208 }
209
210 .ai-submit-btn {
211 padding: 12px 18px;
212 font-size: 16px;
213 }
214 }
215
216 /* Amélioration de l'accessibilité */
217 .ai-form-group input:focus-visible {
218 outline: 2px solid #007cba;
219 outline-offset: 2px;
220 }
221
222 .ai-submit-btn:focus-visible {
223 outline: 2px solid #007cba;
224 outline-offset: 2px;
225 }
226
227 /* États de chargement */
228 .ai-submit-btn.loading {
229 pointer-events: none;
230 }
231
232 /* Amélioration des contrastes pour l'accessibilité */
233 .ai-form-group label {
234 color: #2c3e50;
235 }
236
237 .ai-form-group input {
238 color: #2c3e50;
239 }
240
241 .ai-reset-header h2 {
242 color: #2c3e50;
243 }
244
245 /* Support pour les thèmes sombres (si nécessaire) */
246 @media (prefers-color-scheme: dark) {
247 .ai-reset-container {
248 background: #2c3e50;
249 color: #ecf0f1;
250 }
251
252 .ai-reset-header h2 {
253 color: #ecf0f1;
254 }
255
256 .ai-reset-header p {
257 color: #bdc3c7;
258 }
259
260 .ai-form-group label {
261 color: #ecf0f1;
262 }
263
264 .ai-form-group input {
265 background: #34495e;
266 border-color: #7f8c8d;
267 color: #ecf0f1;
268 }
269
270 .ai-form-group input:focus {
271 border-color: #3498db;
272 }
273 }