Spaces:
Sleeping
Sleeping
Upload static/css/style.css with huggingface_hub
Browse files- static/css/style.css +122 -0
static/css/style.css
ADDED
@@ -0,0 +1,122 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
body { font-family: 'Segoe UI', Arial, sans-serif; background: linear-gradient(135deg, #e3e9f6 0%, #f6f8fa 100%); margin: 0; }
|
2 |
+
|
3 |
+
.card, .container {
|
4 |
+
background: #fff;
|
5 |
+
border-radius: 16px;
|
6 |
+
box-shadow: 0 4px 24px rgba(25,118,210,0.09), 0 1.5px 7px rgba(44,62,80,0.05);
|
7 |
+
padding: 2.2em 2em;
|
8 |
+
margin: 40px auto;
|
9 |
+
max-width: 820px;
|
10 |
+
transition: box-shadow 0.2s;
|
11 |
+
}
|
12 |
+
.card:hover, .container:hover {
|
13 |
+
box-shadow: 0 8px 32px rgba(25,118,210,0.13), 0 2px 10px rgba(44,62,80,0.08);
|
14 |
+
}
|
15 |
+
|
16 |
+
h1, h3 { text-align: center; color: #1976d2; letter-spacing: 0.01em; }
|
17 |
+
|
18 |
+
form label { display: block; margin-top: 1.2em; color: #34495e; font-weight: 500; }
|
19 |
+
form input, form button, form select {
|
20 |
+
width: 100%; padding: 0.55em; margin-top: 0.2em;
|
21 |
+
border: 1px solid #bfc9db; border-radius: 6px;
|
22 |
+
font-size: 1em; background: #f9fbff;
|
23 |
+
transition: border 0.18s, box-shadow 0.18s;
|
24 |
+
}
|
25 |
+
form input:focus, form select:focus {
|
26 |
+
border: 1.5px solid #1976d2;
|
27 |
+
outline: none;
|
28 |
+
box-shadow: 0 0 0 2px #e3e9f6;
|
29 |
+
}
|
30 |
+
form button {
|
31 |
+
background: linear-gradient(90deg, #1976d2 70%, #42a5f5 100%);
|
32 |
+
color: #fff;
|
33 |
+
font-weight: bold;
|
34 |
+
border: none;
|
35 |
+
cursor: pointer;
|
36 |
+
margin-top: 1.5em;
|
37 |
+
box-shadow: 0 2px 8px rgba(25,118,210,0.09);
|
38 |
+
transition: background 0.18s, box-shadow 0.18s, transform 0.12s;
|
39 |
+
letter-spacing: 0.03em;
|
40 |
+
}
|
41 |
+
form button:hover {
|
42 |
+
background: linear-gradient(90deg, #1565c0 70%, #64b5f6 100%);
|
43 |
+
transform: translateY(-2px) scale(1.03);
|
44 |
+
box-shadow: 0 4px 16px rgba(25,118,210,0.13);
|
45 |
+
}
|
46 |
+
#results, #predictionResults, #exportsCountryResults, #importsCountryResults, #exportsProductResults, #importsProductResults, #rankingsResults, #bilateralResults, #dataDownloadStatus {
|
47 |
+
margin-top: 2em;
|
48 |
+
font-size: 1.08em;
|
49 |
+
}
|
50 |
+
.alert { padding: 1em; border-radius: 8px; margin-bottom: 1em; font-weight: bold; }
|
51 |
+
.alert-danger { background: #ffe5e5; color: #c0392b; border: 1px solid #e74c3c; }
|
52 |
+
.alert-success { background: #e5ffe5; color: #27ae60; border: 1px solid #2ecc71; }
|
53 |
+
.spinner {
|
54 |
+
border: 6px solid #f3f3f3;
|
55 |
+
border-top: 6px solid #1976d2;
|
56 |
+
border-radius: 50%;
|
57 |
+
width: 44px;
|
58 |
+
height: 44px;
|
59 |
+
animation: spin 1s linear infinite;
|
60 |
+
margin: 2em auto;
|
61 |
+
display: block;
|
62 |
+
}
|
63 |
+
@keyframes spin {
|
64 |
+
0% { transform: rotate(0deg); }
|
65 |
+
100% { transform: rotate(360deg); }
|
66 |
+
}
|
67 |
+
table {
|
68 |
+
width: 100%; border-collapse: separate; border-spacing: 0;
|
69 |
+
margin-top: 2em; min-width: 600px;
|
70 |
+
background: #fff; border-radius: 10px;
|
71 |
+
overflow: hidden;
|
72 |
+
box-shadow: 0 2px 10px rgba(25,118,210,0.07);
|
73 |
+
font-size: 1.07em;
|
74 |
+
}
|
75 |
+
thead {
|
76 |
+
background: linear-gradient(90deg, #1976d2 70%, #42a5f5 100%);
|
77 |
+
color: #fff;
|
78 |
+
}
|
79 |
+
th, td {
|
80 |
+
padding: 0.65em 0.6em;
|
81 |
+
border: 1px solid #e3e9f6;
|
82 |
+
text-align: left;
|
83 |
+
}
|
84 |
+
tr:nth-child(even) { background: #f6f8fa; }
|
85 |
+
tr:hover { background: #e3e9f6; transition: background 0.18s; }
|
86 |
+
#tradeChart, #predictionChart, #exportsCountryChart, #importsCountryChart, #exportsProductChart, #importsProductChart, #rankingsChart, #bilateralChart {
|
87 |
+
max-width: 100%; margin-top: 2em; background: #fff; border-radius: 10px; box-shadow: 0 2px 10px rgba(25,118,210,0.07);
|
88 |
+
}
|
89 |
+
@media (max-width: 900px) {
|
90 |
+
.container, .card { max-width: 98vw; padding: 1.2em 0.5em; }
|
91 |
+
table { min-width: 350px; font-size: 0.97em; }
|
92 |
+
}
|
93 |
+
.container { max-width: 700px; margin: 40px auto; background: #fff; padding: 2em; border-radius: 10px; box-shadow: 0 2px 8px rgba(0,0,0,0.08); }
|
94 |
+
h1 { text-align: center; color: #2c3e50; }
|
95 |
+
form label { display: block; margin-top: 1em; color: #34495e; }
|
96 |
+
form input, form button, form select { width: 100%; padding: 0.5em; margin-top: 0.2em; border: 1px solid #ccc; border-radius: 4px; }
|
97 |
+
form button { background: #3498db; color: #fff; font-weight: bold; border: none; cursor: pointer; margin-top: 1em; }
|
98 |
+
form button:hover { background: #217dbb; }
|
99 |
+
#results { margin-top: 2em; }
|
100 |
+
.alert { padding: 1em; border-radius: 5px; margin-bottom: 1em; font-weight: bold; }
|
101 |
+
.alert-danger { background: #ffe5e5; color: #c0392b; border: 1px solid #e74c3c; }
|
102 |
+
.alert-success { background: #e5ffe5; color: #27ae60; border: 1px solid #2ecc71; }
|
103 |
+
.spinner {
|
104 |
+
border: 6px solid #f3f3f3;
|
105 |
+
border-top: 6px solid #3498db;
|
106 |
+
border-radius: 50%;
|
107 |
+
width: 40px;
|
108 |
+
height: 40px;
|
109 |
+
animation: spin 1s linear infinite;
|
110 |
+
margin: 2em auto;
|
111 |
+
display: block;
|
112 |
+
}
|
113 |
+
@keyframes spin {
|
114 |
+
0% { transform: rotate(0deg); }
|
115 |
+
100% { transform: rotate(360deg); }
|
116 |
+
}
|
117 |
+
table { width: 100%; border-collapse: collapse; margin-top: 2em; min-width: 600px; }
|
118 |
+
thead { background: #3498db; color: #fff; }
|
119 |
+
th, td { padding: 0.5em; border: 1px solid #ddd; text-align: left; }
|
120 |
+
tr:nth-child(even) { background: #f2f2f2; }
|
121 |
+
#results { margin-top: 2em; }
|
122 |
+
#tradeChart { max-width: 100%; margin-top: 2em; }
|