body {
    margin: 0;
    padding: 0;
    background-image: url('RoomScene.jpeg');
    background-size: cover; /* Ensure the image covers the entire viewport */
    background-position: center;
    background-repeat: no-repeat;
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}

.title-area {
    text-align: center;
    margin-bottom: 8px; /* Slight spacing */
    margin-top: 0;
    margin-left: 40px;
    margin-right: 40px;
}

.title-area h1 {
    font-family: 'VT323', monospace;
    font-size: 4rem; /* Corrected font size */
    color: #FFD700; /* Gold color */
    text-shadow: 2px 2px 4px #000000; /* Black shadow */
    margin: 0; /* Remove any default margins on h1 */
    line-height: 1.2; /* Slightly more breathing room */
}

.bookcase-hot-area {
    position: absolute;
    top: 0;
    height: 50vh; /* Only top half of the screen */
    width: 30%; /* Adjusted width to cover the bookcase areas */
    cursor: pointer;
    z-index: 10; /* Ensure it's above the background but below the title */
    transition: background-color 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bookcase-hot-area:hover {
    background-color: rgba(255, 255, 255, 0.05); /* Subtle hover effect */
}

.bookcase-tooltip {
    font-family: 'VT323', monospace;
    font-size: 2rem;
    color: #FFD700; /* Gold color to match the title */
    text-shadow: 2px 2px 4px #000000, 0 0 10px rgba(255, 215, 0, 0.5); /* Black shadow with gold glow */
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none; /* Prevent tooltip from interfering with clicks */
    text-align: center;
    white-space: nowrap;
    position: absolute;
    left: 50%;
    transform: translateX(-50%); /* Center horizontally */
    max-width: 90vw; /* Ensure it never exceeds viewport width */
    padding: 0 10px; /* Add padding to prevent edge cutoff */
    box-sizing: border-box;
}

.bookcase-hot-area:hover .bookcase-tooltip {
    opacity: 1;
}

.bookcase-left {
    left: 0;
}

.bookcase-right {
    right: 0;
}

/* TV hot area - positioned over the TV on the right side */
.tv-hot-area {
    position: absolute;
    top: 55vh; /* Start lower to better align with TV */
    right: 8%; /* Move more to the right */
    width: 18%; /* Wider to better cover the TV */
    height: 30vh; /* Taller to better cover the TV area */
    cursor: pointer;
    z-index: 10;
    transition: background-color 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tv-hot-area:hover {
    background-color: rgba(255, 255, 255, 0.05); /* Subtle hover effect */
}

.tv-tooltip {
    font-family: 'VT323', monospace;
    font-size: 2rem;
    color: #FFD700; /* Gold color to match the title */
    text-shadow: 2px 2px 4px #000000, 0 0 10px rgba(255, 215, 0, 0.5); /* Black shadow with gold glow */
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none; /* Prevent tooltip from interfering with clicks */
    text-align: center;
    white-space: nowrap;
    position: absolute;
    left: 50%;
    transform: translateX(-50%) translateY(-70px); /* Center horizontally and move up 70px */
    max-width: 90vw; /* Ensure it never exceeds viewport width */
    padding: 0 10px; /* Add padding to prevent edge cutoff */
    box-sizing: border-box;
}

.tv-hot-area:hover .tv-tooltip {
    opacity: 1;
}

/* Responsive: reduce width on narrow screens */
@media (max-width: 768px) {
    .bookcase-hot-area {
        width: 20%; /* Smaller width on narrow screens */
    }
    
    .bookcase-tooltip {
        font-size: 1.2rem; /* Smaller font on narrow screens */
        padding: 0 8px; /* Padding on narrow screens */
        max-width: 95vw; /* Slightly more width on narrow screens */
    }
    
    .tv-hot-area {
        width: 20%; /* Wider on narrow screens */
        right: 5%;
        height: 25vh; /* Adjust height for narrow screens */
        top: 50vh; /* Adjust top position for narrow screens */
    }
    
    .tv-tooltip {
        font-size: 1.2rem; /* Smaller font on narrow screens */
        padding: 0 8px;
        max-width: 95vw;
    }
}
