/* === Reset & Full-Viewport Canvas === */
* { box-sizing: border-box; margin: 0; padding: 0; }

html, body {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #000;
    font-family: system-ui, -apple-system, sans-serif;
    color: #e0e0e0;
}

canvas.scene-canvas {
    display: block;
    width: 100vw;
    height: 100vh;
}

/* === Chrome (UI overlay) auto-hide === */
.chrome {
    transition: opacity 0.4s ease;
    z-index: 100;
}

.chrome.chrome-hidden {
    opacity: 0;
    pointer-events: none;
}

.chrome.chrome-visible {
    opacity: 1;
    pointer-events: auto;
}

/* === Gear icon === */
.gear-icon {
    position: fixed;
    top: 12px;
    right: 12px;
    width: 32px;
    height: 32px;
    cursor: pointer;
    fill: #e0e0e0;
    opacity: 0.6;
    transition: opacity 0.2s;
}

.gear-icon:hover {
    opacity: 1;
}

/* === lil-gui theme overrides === */
.lil-gui {
    --background-color: rgba(26, 26, 46, 0.9);
    --widget-color: #2a2a4a;
    --focus-color: #ffd700;
    --hover-color: #3a3a5a;
    --font-family: system-ui, -apple-system, sans-serif;
    --font-size: 11px;
    --input-font-size: 11px;
    --title-background-color: rgba(26, 26, 46, 0.95);
    --title-text-color: #ffd700;
    --number-color: #6db3f2;
    --string-color: #6db3f2;

    position: fixed !important;
    top: 12px;
    right: 12px;
}

/* === Fullscreen info hint (shown briefly on load) === */
.fullscreen-hint {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    padding: 8px 16px;
    background: rgba(26, 26, 46, 0.8);
    border-radius: 4px;
    font-size: 12px;
    color: #888;
    transition: opacity 0.4s ease;
    pointer-events: none;
}
