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; } } /* 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 { body { background: white !important; background-image: none !important; } #container { background: white !important; } /* Hide info box when printing to focus on the model */ #info { 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; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; margin: 0 !important; padding: 0 !important; } /* Ensure proper print sizing */ @page { margin: 0.5in; size: auto; } }