Spaces:
Sleeping
Sleeping
Create style.css
Browse files- static/style.css +87 -0
static/style.css
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
:root {
|
| 2 |
+
--primary-color: #38b000;
|
| 3 |
+
--secondary-color: #007bff;
|
| 4 |
+
--accent-color: #fb8500;
|
| 5 |
+
--light-bg: #f8f9fa;
|
| 6 |
+
--dark-text: #212529;
|
| 7 |
+
--pest-color: #dc3545;
|
| 8 |
+
--disease-color: #6f42c1;
|
| 9 |
+
}
|
| 10 |
+
|
| 11 |
+
body {
|
| 12 |
+
background-color: var(--light-bg);
|
| 13 |
+
padding: 20px;
|
| 14 |
+
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
.page-header {
|
| 18 |
+
background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
|
| 19 |
+
color: white;
|
| 20 |
+
padding: 2rem 0;
|
| 21 |
+
border-radius: 10px;
|
| 22 |
+
margin-bottom: 2rem;
|
| 23 |
+
box-shadow: 0 4px 12px rgba(0,0,0,0.1);
|
| 24 |
+
}
|
| 25 |
+
|
| 26 |
+
.language-selector select {
|
| 27 |
+
background-color: rgba(255, 255, 255, 0.2);
|
| 28 |
+
color: white;
|
| 29 |
+
border: 1px solid rgba(255, 255, 255, 0.3);
|
| 30 |
+
}
|
| 31 |
+
|
| 32 |
+
.language-selector select option {
|
| 33 |
+
background-color: white;
|
| 34 |
+
color: var(--dark-text);
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
.filter-buttons { margin-bottom: 20px; }
|
| 38 |
+
|
| 39 |
+
.filter-btn {
|
| 40 |
+
margin-right: 10px;
|
| 41 |
+
border-radius: 20px;
|
| 42 |
+
font-weight: 500;
|
| 43 |
+
padding: 8px 16px;
|
| 44 |
+
transition: all 0.3s ease;
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
.filter-btn:hover { transform: translateY(-2px); }
|
| 48 |
+
.filter-btn.active { box-shadow: 0 4px 8px rgba(0,0,0,0.15); }
|
| 49 |
+
|
| 50 |
+
.card { transition: all 0.3s ease; height: 100%; cursor: pointer; border-radius: 10px; border: none; box-shadow: 0 4px 8px rgba(0,0,0,0.05); overflow: hidden; }
|
| 51 |
+
.card:hover { transform: translateY(-8px); box-shadow: 0 12px 24px rgba(0,0,0,0.15); }
|
| 52 |
+
|
| 53 |
+
.card-img-top { height: 200px; object-fit: cover; transition: all 0.5s ease; }
|
| 54 |
+
.card:hover .card-img-top { transform: scale(1.05); }
|
| 55 |
+
|
| 56 |
+
.card-body { padding: 1.5rem; }
|
| 57 |
+
.card-title { font-weight: 600; margin-bottom: 10px; }
|
| 58 |
+
|
| 59 |
+
.modal-body { max-height: 70vh; overflow-y: auto; }
|
| 60 |
+
|
| 61 |
+
.badge.pest { background-color: var(--pest-color); padding: 0.5em 0.8em; font-size: 0.8rem; }
|
| 62 |
+
.badge.disease { background-color: var(--disease-color); padding: 0.5em 0.8em; font-size: 0.8rem; }
|
| 63 |
+
|
| 64 |
+
.modal-content { border-radius: 15px; border: none; box-shadow: 0 10px 30px rgba(0,0,0,0.2); }
|
| 65 |
+
.modal-header { border-bottom: 1px solid rgba(0,0,0,0.1); background-color: var(--light-bg); }
|
| 66 |
+
.modal-title { font-weight: 600; }
|
| 67 |
+
|
| 68 |
+
.section-title {
|
| 69 |
+
margin-top: 1.5rem;
|
| 70 |
+
margin-bottom: 0.75rem;
|
| 71 |
+
font-weight: 600;
|
| 72 |
+
color: var(--dark-text);
|
| 73 |
+
border-bottom: 2px solid var(--primary-color);
|
| 74 |
+
padding-bottom: 0.5rem;
|
| 75 |
+
display: inline-block;
|
| 76 |
+
}
|
| 77 |
+
|
| 78 |
+
#backToTop { position: fixed; bottom: 20px; right: 20px; display: none; background-color: var(--primary-color); color: white; border: none; border-radius: 50%; width: 50px; height: 50px; text-align: center; font-size: 20px; line-height: 50px; cursor: pointer; z-index: 99; box-shadow: 0 4px 10px rgba(0,0,0,0.2); }
|
| 79 |
+
|
| 80 |
+
.crop-badge { background-color: #17a2b8; color: white; font-size: 0.8rem; font-weight: normal; margin-right: 4px; }
|
| 81 |
+
|
| 82 |
+
.no-results { text-align: center; padding: 40px; font-size: 1.2rem; color: #6c757d; }
|
| 83 |
+
|
| 84 |
+
.spinner {
|
| 85 |
+
width: 40px; height: 40px; margin: 20px auto; border: 4px solid rgba(0,0,0,0.1); border-left-color: var(--primary-color); border-radius: 50%; animation: spin 1s linear infinite;
|
| 86 |
+
}
|
| 87 |
+
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
|