body { 
    margin: 0; 
    background-color: #050505; 
    color: white; 
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; 
    overflow: hidden; 
}

/* Container for UI elements - allows clicking through to the 3D model */
#ui-container { 
    position: absolute; 
    width: 100%; 
    height: 100%; 
    pointer-events: none; 
}

/* 1. TOP CENTER TITLE */
h1 { 
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0; 
    font-size: 2.5rem; 
    text-transform: uppercase;
    letter-spacing: 2px;
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
    pointer-events: auto;
    text-align: center;
    width: 100%;
}

/* 2. VERTICAL LEFT PANEL */
#info-panel { 
    position: absolute;
    top: 10%;
    bottom: 10%; /* Stretches it vertically */
    left: 30px;
    width: 350px; 
    background: rgba(20, 20, 20, 0.85); /* Darker background for readability */
    backdrop-filter: blur(15px); 
    padding: 30px; 
    border-radius: 15px; 
    border-left: 4px solid #ff7fb8; /* Cool accent line */
    pointer-events: auto;
    overflow-y: auto; /* Adds scroll if text is too long */
    box-shadow: 0 0 20px rgba(0,0,0,0.5);
    transition: all 0.3s ease;
}

/* Typography for the panel */
#part-name {
    margin-top: 0;
    font-size: 2rem;
    color: #ff7fb8;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    padding-bottom: 10px;
}

#part-description {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #e0e0e0;
    white-space: pre-wrap; /* Preserves the line breaks in your facts */
}

/* Instructions at the bottom of the panel */
.instruction {
    font-size: 0.85rem;
    color: #888;
    margin-top: 30px;
    border-top: 1px solid #333;
    padding-top: 10px;
    font-style: italic;
}

/* Custom Scrollbar */
#info-panel::-webkit-scrollbar { width: 8px; }
#info-panel::-webkit-scrollbar-track { background: rgba(0,0,0,0.3); }
#info-panel::-webkit-scrollbar-thumb { background: #444; border-radius: 4px; }