mgbam commited on
Commit
c47c3d9
·
verified ·
1 Parent(s): 81ac787

Update static/style.css

Browse files
Files changed (1) hide show
  1. static/style.css +159 -79
static/style.css CHANGED
@@ -1,132 +1,212 @@
1
- /* style.css */
2
-
3
  :root {
4
- --primary-color: #2563eb;
5
- --secondary-color: #6b7280;
6
- --bg-color: #f9fafb;
7
- --text-color: #111827;
8
- --border-radius: 0.375rem;
9
- --spacing: 1rem;
10
- --font-family: 'Inter', sans-serif;
 
 
 
 
 
 
11
  }
12
 
13
  *,
14
  *::before,
15
  *::after {
16
  box-sizing: border-box;
 
 
17
  }
18
 
19
  html {
20
- font-size: 100%;
21
  scroll-behavior: smooth;
22
  }
23
 
24
  body {
25
- margin: 0;
26
- padding: 0;
27
- background-color: var(--bg-color);
28
- color: var(--text-color);
29
- font-family: var(--font-family);
30
- line-height: 1.5;
31
  }
32
 
33
- .container {
34
- max-width: 800px;
35
- margin: 0 auto;
36
- padding: var(--spacing);
 
 
 
 
 
 
 
 
37
  }
38
 
39
- h1 {
40
- font-size: 2rem;
41
- margin-bottom: calc(var(--spacing) * 1.5);
42
- text-align: center;
43
- color: var(--primary-color);
44
  }
45
 
46
- form {
47
- display: flex;
48
- flex-direction: column;
49
- gap: var(--spacing);
50
- margin-bottom: var(--spacing);
51
  }
52
 
 
 
 
 
53
  label {
 
 
54
  font-weight: 600;
55
- margin-bottom: 0.25rem;
56
  }
57
 
 
58
  select,
59
- input[type="text"],
60
- textarea,
61
- button {
62
- font-size: 1rem;
63
- padding: 0.75rem;
64
- border: 1px solid #d1d5db;
65
- border-radius: var(--border-radius);
66
  width: 100%;
 
 
 
 
 
 
 
67
  }
68
 
69
  select:focus,
70
  input:focus,
71
  textarea:focus {
72
- outline: 2px solid var(--primary-color);
73
- border-color: var(--primary-color);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  }
75
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
  button {
77
- background-color: var(--primary-color);
78
- color: #ffffff;
79
  border: none;
 
 
80
  cursor: pointer;
81
- transition: background-color 0.2s ease;
82
  }
83
-
84
- button:disabled {
85
- opacity: 0.6;
86
- cursor: not-allowed;
87
  }
88
-
89
- button:hover:not(:disabled) {
90
- background-color: #1e40af;
91
  }
92
-
93
- #result {
94
- margin-top: var(--spacing);
95
- padding: var(--spacing);
96
- background-color: #ffffff;
97
- border: 1px solid #e5e7eb;
98
- border-radius: var(--border-radius);
99
- min-height: 3rem;
 
100
  }
101
 
102
- @media (min-width: 640px) {
103
- form {
104
- flex-direction: row;
105
- align-items: flex-end;
106
- }
107
- form > div {
108
- flex: 1;
109
- }
110
- form > button {
111
- width: auto;
112
- flex-shrink: 0;
113
- }
114
  }
115
 
116
- /* Accessibility: High contrast for code labels */
117
- #result[role="alert"] {
118
- border-left: 4px solid var(--primary-color);
 
 
 
119
  }
120
 
121
- /* Visually hidden for screen reader announcements */
122
- .sr-only {
123
  position: absolute;
124
  width: 1px;
125
  height: 1px;
126
- padding: 0;
127
- margin: -1px;
128
  overflow: hidden;
129
- clip: rect(0,0,0,0);
130
  white-space: nowrap;
131
- border: 0;
 
 
 
 
 
 
 
 
 
 
 
 
132
  }
 
1
+ /* ========== Variables & Reset ========== */
 
2
  :root {
3
+ --bg: #0d1117;
4
+ --bg-secondary: #161b22;
5
+ --border: #30363d;
6
+ --text: #c9d1d9;
7
+ --text-muted: #8b949e;
8
+ --accent: #58a6ff;
9
+ --accent-hover: #79c0ff;
10
+ --danger: #f85149;
11
+ --success: #56d364;
12
+ --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
13
+ --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
14
+ --radius: 0.5rem;
15
+ --transition: 0.2s ease;
16
  }
17
 
18
  *,
19
  *::before,
20
  *::after {
21
  box-sizing: border-box;
22
+ margin: 0;
23
+ padding: 0;
24
  }
25
 
26
  html {
27
+ font-size: 16px;
28
  scroll-behavior: smooth;
29
  }
30
 
31
  body {
32
+ font-family: var(--font-sans);
33
+ background-color: var(--bg);
34
+ color: var(--text);
35
+ line-height: 1.6;
36
+ min-height: 100vh;
37
+ padding: 1rem;
38
  }
39
 
40
+ /* ========== Layout ========== */
41
+ header {
42
+ text-align: center;
43
+ margin-bottom: 2rem;
44
+ }
45
+ header h1 {
46
+ font-size: 2.5rem;
47
+ margin-bottom: 0.25rem;
48
+ }
49
+ header p {
50
+ color: var(--text-muted);
51
+ font-size: 1.1rem;
52
  }
53
 
54
+ main {
55
+ max-width: 900px;
56
+ margin: 0 auto;
57
+ display: grid;
58
+ gap: 2rem;
59
  }
60
 
61
+ section {
62
+ background-color: var(--bg-secondary);
63
+ border: 1px solid var(--border);
64
+ border-radius: var(--radius);
65
+ padding: 1.5rem;
66
  }
67
 
68
+ h2 {
69
+ font-size: 1.25rem;
70
+ margin-bottom: 1rem;
71
+ }
72
  label {
73
+ display: block;
74
+ margin-bottom: 0.5rem;
75
  font-weight: 600;
 
76
  }
77
 
78
+ /* ========== Form Elements ========== */
79
  select,
80
+ input[type="file"],
81
+ input[type="url"],
82
+ textarea {
 
 
 
 
83
  width: 100%;
84
+ padding: 0.75rem;
85
+ border: 1px solid var(--border);
86
+ border-radius: var(--radius);
87
+ background: var(--bg);
88
+ color: var(--text);
89
+ font-size: 1rem;
90
+ transition: border-color var(--transition);
91
  }
92
 
93
  select:focus,
94
  input:focus,
95
  textarea:focus {
96
+ outline: none;
97
+ border-color: var(--accent);
98
+ }
99
+
100
+ textarea {
101
+ font-family: var(--font-mono);
102
+ resize: vertical;
103
+ min-height: 120px;
104
+ }
105
+
106
+ /* ========== Tabs ========== */
107
+ .tabs {
108
+ display: flex;
109
+ gap: 0.5rem;
110
+ margin-bottom: 1rem;
111
+ overflow-x: auto;
112
+ }
113
+ .tabs button {
114
+ flex: none;
115
+ background: transparent;
116
+ border: 1px solid var(--border);
117
+ border-radius: var(--radius);
118
+ padding: 0.5rem 1rem;
119
+ color: var(--text-muted);
120
+ cursor: pointer;
121
+ transition: background-color var(--transition), color var(--transition);
122
+ }
123
+ .tabs button[aria-selected="true"] {
124
+ background: var(--accent);
125
+ color: var(--bg);
126
+ border-color: var(--accent);
127
+ }
128
+ .tabs button:hover:not([aria-selected="true"]) {
129
+ background: var(--border);
130
+ color: var(--text);
131
  }
132
 
133
+ /* ========== Actions ========== */
134
+ .search-toggle {
135
+ display: flex;
136
+ align-items: center;
137
+ gap: 0.5rem;
138
+ margin-top: 1rem;
139
+ }
140
+ .actions {
141
+ display: flex;
142
+ gap: 1rem;
143
+ justify-content: flex-end;
144
+ flex-wrap: wrap;
145
+ }
146
  button {
147
+ padding: 0.75rem 1.5rem;
 
148
  border: none;
149
+ border-radius: var(--radius);
150
+ font-size: 1rem;
151
  cursor: pointer;
152
+ transition: background-color var(--transition), transform var(--transition);
153
  }
154
+ button:hover {
155
+ transform: translateY(-2px);
 
 
156
  }
157
+ #clear {
158
+ background: var(--border);
159
+ color: var(--text);
160
  }
161
+ #clear:hover {
162
+ background: var(--text-muted);
163
+ }
164
+ #generate {
165
+ background: var(--accent);
166
+ color: var(--bg);
167
+ }
168
+ #generate:hover {
169
+ background: var(--accent-hover);
170
  }
171
 
172
+ /* ========== Outputs ========== */
173
+ pre, code {
174
+ background: var(--bg);
175
+ border: 1px solid var(--border);
176
+ border-radius: var(--radius);
177
+ padding: 1rem;
178
+ overflow-x: auto;
179
+ font-family: var(--font-mono);
180
+ font-size: 0.9rem;
 
 
 
181
  }
182
 
183
+ iframe {
184
+ width: 100%;
185
+ height: 400px;
186
+ border: 1px solid var(--border);
187
+ border-radius: var(--radius);
188
+ background: #fff;
189
  }
190
 
191
+ /* ========== Utility ========== */
192
+ .visually-hidden {
193
  position: absolute;
194
  width: 1px;
195
  height: 1px;
 
 
196
  overflow: hidden;
197
+ clip: rect(0 0 0 0);
198
  white-space: nowrap;
199
+ }
200
+
201
+ /* ========== Responsive ========== */
202
+ @media (max-width: 600px) {
203
+ body {
204
+ padding: 0.5rem;
205
+ }
206
+ header h1 {
207
+ font-size: 2rem;
208
+ }
209
+ .actions {
210
+ justify-content: center;
211
+ }
212
  }