geomap_2 / static /css /style.css
AdityaAdaki
Fix css js
cf1f925
/* General Styles */
body {
background-color: #f8f9fa;
color: #333;
font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}
.container {
max-width: 1000px;
}
/* Header Styles */
h1 {
color: #2c3e50;
font-weight: 600;
margin-bottom: 2rem;
position: relative;
padding-bottom: 1rem;
}
h1:after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
width: 100px;
height: 4px;
background: linear-gradient(to right, #007bff, #00d2ff);
border-radius: 2px;
}
/* Card Styles */
.card {
border: none;
border-radius: 12px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
transition: transform 0.2s, box-shadow 0.2s;
margin-bottom: 2rem;
}
.card:hover {
transform: translateY(-5px);
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
.card-body {
padding: 2rem;
}
/* Form Styles */
.form-control {
border-radius: 8px;
padding: 0.75rem 1rem;
border: 2px solid #e9ecef;
transition: border-color 0.2s;
}
.form-control:focus {
border-color: #007bff;
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.15);
}
/* Button Styles */
.btn {
padding: 0.75rem 1.5rem;
border-radius: 8px;
font-weight: 500;
transition: all 0.2s;
}
.btn-primary {
background: linear-gradient(45deg, #007bff, #00d2ff);
border: none;
}
.btn-primary:hover {
background: linear-gradient(45deg, #0056b3, #00a6cc);
transform: translateY(-2px);
}
.btn-success {
background: linear-gradient(45deg, #28a745, #20c997);
border: none;
}
.btn-success:hover {
background: linear-gradient(45deg, #218838, #1aa179);
transform: translateY(-2px);
}
/* Map Container Styles */
#map {
width: 100% !important;
height: 500px !important;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
#map iframe {
width: 100% !important;
height: 500px !important;
}
/* Screenshot Styles */
#capturedImage {
max-width: 100%;
border-radius: 12px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Analysis Page Styles */
.analysis-container {
background: white;
border-radius: 12px;
padding: 2rem;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.image-container {
margin-bottom: 2rem;
}
.image-container img {
border-radius: 12px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.results-container {
background: #f8f9fa;
padding: 2rem;
border-radius: 12px;
}
.results-list li {
background: white;
padding: 1rem;
margin-bottom: 1rem;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.progress {
height: 12px;
border-radius: 6px;
background-color: #e9ecef;
}
.progress-bar {
background: linear-gradient(45deg, #007bff, #00d2ff);
border-radius: 6px;
}
.percentage {
font-weight: 600;
color: #007bff;
}
/* Loading States */
.btn:disabled {
opacity: 0.8;
cursor: wait;
}
/* Alert Styles */
.alert {
border-radius: 8px;
border: none;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.alert-info {
background: linear-gradient(45deg, #17a2b8, #20c997);
color: white;
}
/* Responsive Adjustments */
@media (max-width: 768px) {
.card-body {
padding: 1.5rem;
}
#map, #map iframe {
height: 400px !important;
}
.btn {
width: 100%;
margin-bottom: 0.5rem;
}
}
/* Analysis Layout Styles */
.analysis-container {
background: white;
border-radius: 12px;
padding: 2rem;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.section-title {
font-size: 1.5rem;
color: #2c3e50;
margin-bottom: 1.5rem;
padding-bottom: 1rem;
border-bottom: 2px solid #e9ecef;
}
/* Image Section Styles */
.image-section {
height: 100%;
display: flex;
flex-direction: column;
}
.image-wrapper {
flex-grow: 1;
background: #f8f9fa;
border-radius: 12px;
padding: 1rem;
display: flex;
align-items: center;
justify-content: center;
}
.analyzed-image {
max-width: 100%;
height: auto;
border-radius: 8px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Results Section Styles */
.results-section {
height: 100%;
display: flex;
flex-direction: column;
}
.results-list-wrapper {
flex-grow: 1;
background: #f8f9fa;
border-radius: 12px;
padding: 1.5rem;
max-height: 600px;
overflow-y: auto;
}
.results-list {
list-style: none;
padding: 0;
margin: 0;
}
.results-list li {
background: white;
padding: 1rem;
margin-bottom: 1rem;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.results-list li:last-child {
margin-bottom: 0;
}
.element-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 0.5rem;
}
.class-name {
font-weight: 600;
color: #2c3e50;
}
.percentage {
font-weight: 600;
color: #007bff;
background: rgba(0, 123, 255, 0.1);
padding: 0.25rem 0.75rem;
border-radius: 20px;
}
.progress {
height: 8px;
border-radius: 4px;
background-color: #e9ecef;
margin-top: 0.5rem;
}
.progress-bar {
background: linear-gradient(45deg, #007bff, #00d2ff);
border-radius: 4px;
}
/* Scrollbar Styles */
.results-list-wrapper::-webkit-scrollbar {
width: 8px;
}
.results-list-wrapper::-webkit-scrollbar-track {
background: #f1f1f1;
border-radius: 4px;
}
.results-list-wrapper::-webkit-scrollbar-thumb {
background: #888;
border-radius: 4px;
}
.results-list-wrapper::-webkit-scrollbar-thumb:hover {
background: #555;
}
/* Alert Styles Update */
.alert-info {
background: linear-gradient(45deg, #17a2b8, #20c997);
color: white;
border: none;
padding: 1rem;
}
/* Responsive Adjustments */
@media (max-width: 992px) {
.image-section {
margin-bottom: 2rem;
}
.results-list-wrapper {
max-height: 400px;
}
}
/* Masks Section Styles */
.masks-section {
margin-top: 2rem;
padding: 2rem;
background: white;
border-radius: 12px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.masks-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 1.5rem;
margin-top: 1.5rem;
}
.mask-item {
background: #f8f9fa;
padding: 1rem;
border-radius: 8px;
}
.mask-wrapper {
background: white;
padding: 0.5rem;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.mask-image {
width: 100%;
height: auto;
border-radius: 4px;
}
.mask-item h4 {
margin: 0 0 1rem 0;
color: #2c3e50;
text-align: center;
}
/* Add these new styles */
.feature-item {
background: white;
padding: 1.25rem;
border-radius: 10px;
margin-bottom: 1rem;
box-shadow: 0 2px 4px rgba(0,0,0,0.05);
transition: transform 0.2s;
}
.feature-item:hover {
transform: translateY(-2px);
}
.feature-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 0.75rem;
}
.feature-name {
font-weight: 600;
color: #2c3e50;
}
.feature-percentage {
background: #f8f9fa;
padding: 0.25rem 0.75rem;
border-radius: 20px;
font-weight: 600;
color: #2c3e50;
}
.progress {
height: 8px;
background-color: #f8f9fa;
border-radius: 4px;
}
/* Feature-specific progress bar colors */
.feature-vegetation { background-color: #28a745; }
.feature-water { background-color: #007bff; }
.feature-building { background-color: #6c757d; }
.feature-terrain { background-color: #8B4513; }
.feature-other { background-color: #adb5bd; }
.masks-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 1.5rem;
}
.mask-title {
font-size: 1.1rem;
color: #2c3e50;
margin-bottom: 1rem;
text-align: center;
}
.image-wrapper {
background: #f8f9fa;
padding: 1rem;
border-radius: 10px;
margin-top: 1rem;
}
.analyzed-image {
width: 100%;
height: auto;
border-radius: 6px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
/* Responsive adjustments */
@media (max-width: 768px) {
.masks-grid {
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
}