|
|
* { |
|
|
margin: 0; |
|
|
padding: 0; |
|
|
box-sizing: border-box; |
|
|
} |
|
|
|
|
|
body { |
|
|
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; |
|
|
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); |
|
|
min-height: 100vh; |
|
|
padding: 20px; |
|
|
} |
|
|
|
|
|
.container { |
|
|
max-width: 1400px; |
|
|
margin: 0 auto; |
|
|
} |
|
|
|
|
|
h1 { |
|
|
text-align: center; |
|
|
color: white; |
|
|
margin-bottom: 30px; |
|
|
font-size: 2.5em; |
|
|
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); |
|
|
} |
|
|
|
|
|
.floating-controls { |
|
|
position: fixed; |
|
|
top: 20px; |
|
|
right: 20px; |
|
|
background: rgba(255, 255, 255, 0.65); |
|
|
backdrop-filter: blur(20px); |
|
|
border-radius: 15px; |
|
|
padding: 20px; |
|
|
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15); |
|
|
border: 1px solid rgba(255, 255, 255, 0.3); |
|
|
z-index: 1000; |
|
|
width: 320px; |
|
|
} |
|
|
|
|
|
.controls-title { |
|
|
text-align: center; |
|
|
font-size: 18px; |
|
|
font-weight: bold; |
|
|
margin-bottom: 15px; |
|
|
color: #333; |
|
|
cursor: grab; |
|
|
} |
|
|
|
|
|
.controls-title:active { |
|
|
cursor: grabbing; |
|
|
} |
|
|
|
|
|
.controls-grid { |
|
|
display: grid; |
|
|
grid-template-columns: 1fr; |
|
|
gap: 20px; |
|
|
} |
|
|
|
|
|
.control-group { |
|
|
text-align: center; |
|
|
} |
|
|
|
|
|
.control-label { |
|
|
font-weight: bold; |
|
|
margin-bottom: 5px; |
|
|
font-size: 14px; |
|
|
color: #555; |
|
|
} |
|
|
|
|
|
.slider { |
|
|
width: 100%; |
|
|
} |
|
|
|
|
|
.slider-value { |
|
|
font-weight: bold; |
|
|
color: #333; |
|
|
margin-top: 5px; |
|
|
font-size: 16px; |
|
|
} |
|
|
|
|
|
.charts-container { |
|
|
display: grid; |
|
|
grid-template-columns: 1fr 1fr; |
|
|
gap: 30px; |
|
|
} |
|
|
|
|
|
.chart-card { |
|
|
background: rgba(255, 255, 255, 0.95); |
|
|
border-radius: 15px; |
|
|
padding: 25px; |
|
|
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); |
|
|
} |
|
|
|
|
|
.chart-title { |
|
|
font-size: 18px; |
|
|
font-weight: bold; |
|
|
margin-bottom: 15px; |
|
|
text-align: center; |
|
|
color: #333; |
|
|
} |
|
|
|
|
|
.chart-container { |
|
|
position: relative; |
|
|
height: 300px; |
|
|
margin-bottom: 20px; |
|
|
} |
|
|
|
|
|
.confusion-matrix-layout { |
|
|
position: relative; |
|
|
width: 250px; |
|
|
height: 250px; |
|
|
margin: 0 auto; |
|
|
top: 50%; |
|
|
transform: translateY(-50%); |
|
|
} |
|
|
|
|
|
.matrix-ylabel, |
|
|
.matrix-xlabel { |
|
|
position: absolute; |
|
|
font-weight: bold; |
|
|
color: #555; |
|
|
font-style: italic; |
|
|
white-space: nowrap; |
|
|
} |
|
|
|
|
|
.matrix-ylabel { |
|
|
top: 50%; |
|
|
left: -20px; |
|
|
transform: translateY(-50%) rotate(-90deg); |
|
|
} |
|
|
|
|
|
.matrix-xlabel { |
|
|
bottom: -25px; |
|
|
left: 50%; |
|
|
transform: translateX(-50%); |
|
|
} |
|
|
|
|
|
.matrix-canvas-container { |
|
|
width: 100%; |
|
|
height: 100%; |
|
|
} |
|
|
|
|
|
#matrixChart { |
|
|
max-width: 100%; |
|
|
max-height: 100%; |
|
|
} |
|
|
|
|
|
|
|
|
footer { |
|
|
text-align: center; |
|
|
padding: 20px; |
|
|
margin-top: 40px; |
|
|
} |
|
|
|
|
|
footer a { |
|
|
color: rgba(255, 255, 255, 0.8); |
|
|
text-decoration: none; |
|
|
font-weight: bold; |
|
|
transition: color 0.3s; |
|
|
} |
|
|
|
|
|
footer a:hover { |
|
|
color: white; |
|
|
} |
|
|
|
|
|
@media (max-width: 1200px) { |
|
|
.charts-container { |
|
|
grid-template-columns: 1fr; |
|
|
} |
|
|
|
|
|
.floating-controls { |
|
|
position: static; |
|
|
width: 100%; |
|
|
margin-bottom: 20px; |
|
|
} |
|
|
} |
|
|
|