169 lines
3.6 KiB
CSS
169 lines
3.6 KiB
CSS
body {
|
|
margin: 0;
|
|
padding: 0;
|
|
overflow: hidden;
|
|
font-family: Arial, sans-serif;
|
|
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|
}
|
|
|
|
#container {
|
|
width: 100vw;
|
|
height: 100vh;
|
|
position: relative;
|
|
}
|
|
|
|
#info {
|
|
position: absolute;
|
|
top: 20px;
|
|
left: 20px;
|
|
color: white;
|
|
z-index: 100;
|
|
background: rgba(0,0,0,0.5);
|
|
padding: 15px;
|
|
border-radius: 10px;
|
|
-webkit-backdrop-filter: blur(10px);
|
|
backdrop-filter: blur(10px);
|
|
max-width: 300px;
|
|
}
|
|
|
|
/* Mobile and tablet responsive styles - covers both portrait and landscape */
|
|
@media (max-width: 1024px) {
|
|
#info {
|
|
top: 5px;
|
|
left: 5px;
|
|
padding: 4px 6px;
|
|
font-size: 10px;
|
|
max-width: 140px;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
#info h2 {
|
|
font-size: 11px;
|
|
margin: 0 0 3px 0;
|
|
}
|
|
|
|
#info p {
|
|
margin: 1px 0;
|
|
line-height: 1.1;
|
|
}
|
|
|
|
#info hr {
|
|
margin: 3px 0 !important;
|
|
border: 0.5px solid #555;
|
|
}
|
|
|
|
#print-btn {
|
|
font-size: 9px !important;
|
|
padding: 4px 6px !important;
|
|
border-radius: 3px !important;
|
|
}
|
|
}
|
|
|
|
/* Very small screens (phones in portrait) */
|
|
@media (max-width: 480px) {
|
|
#info {
|
|
max-width: 120px;
|
|
font-size: 9px;
|
|
}
|
|
|
|
#info h2 {
|
|
font-size: 10px;
|
|
}
|
|
}
|
|
|
|
#loading {
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translate(-50%, -50%);
|
|
color: white;
|
|
font-size: 24px;
|
|
z-index: 200;
|
|
background: rgba(0,0,0,0.7);
|
|
padding: 20px;
|
|
border-radius: 10px;
|
|
}
|
|
|
|
.loading-spinner {
|
|
border: 3px solid rgba(255, 255, 255, 0.3);
|
|
border-radius: 50%;
|
|
border-top: 3px solid #ffffff;
|
|
width: 30px;
|
|
height: 30px;
|
|
animation: spin 1s linear infinite;
|
|
margin: 0 auto 10px;
|
|
}
|
|
|
|
@keyframes spin {
|
|
0% { transform: rotate(0deg); }
|
|
100% { transform: rotate(360deg); }
|
|
}
|
|
|
|
/* Print styles - make background transparent and model visible */
|
|
@media print {
|
|
* {
|
|
background: white !important;
|
|
background-image: none !important;
|
|
background-color: white !important;
|
|
}
|
|
|
|
body {
|
|
background: white !important;
|
|
background-image: none !important;
|
|
background-color: white !important;
|
|
}
|
|
|
|
html {
|
|
background: white !important;
|
|
background-image: none !important;
|
|
background-color: white !important;
|
|
}
|
|
|
|
#container {
|
|
background: white !important;
|
|
background-image: none !important;
|
|
background-color: white !important;
|
|
}
|
|
|
|
/* Hide info box when printing to focus on the model */
|
|
#info {
|
|
display: none !important;
|
|
}
|
|
|
|
/* Hide print button in print output */
|
|
#print-btn {
|
|
display: none !important;
|
|
}
|
|
|
|
/* Hide loading indicator when printing */
|
|
#loading {
|
|
display: none !important;
|
|
}
|
|
|
|
/* Ensure the canvas is visible and takes full page */
|
|
canvas {
|
|
background: white !important;
|
|
background-image: none !important;
|
|
background-color: white !important;
|
|
width: 100% !important;
|
|
height: 100% !important;
|
|
max-width: none !important;
|
|
max-height: none !important;
|
|
margin: 0 !important;
|
|
padding: 0 !important;
|
|
}
|
|
|
|
/* Remove any WebGL background */
|
|
canvas[data-engine*="three"], canvas[data-engine*="webgl"] {
|
|
background: white !important;
|
|
background-color: white !important;
|
|
}
|
|
|
|
/* Ensure proper print sizing */
|
|
@page {
|
|
margin: 0.5in;
|
|
size: auto;
|
|
background: white;
|
|
}
|
|
}
|