:root {
            --bg-dark: #121212;
            --panel-bg: rgba(25, 25, 25, 0.95);
            --accent: #e63946;
            --text-light: #f1faee;
            --success: #a8dadc;
        }

        body, html {
            margin: 0;
            padding: 0;
            height: 100%;
            font-family: 'Public Sans', sans-serif;
            font-weight: 400;
            background-color: var(--bg-dark);
            color: var(--text-light);
            overflow: hidden;
        }

        #intro-screen {
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background: linear-gradient(135deg, #1a1a2e, #16213e);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            z-index: 1000;
        }

        #intro-box {
            background: var(--panel-bg);
            padding: 40px;
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.5);
            text-align: center;
            max-width: 400px;
            border: 1px solid #333;
        }

        #intro-box h1 { 
            margin-top: 0; 
            color: var(--accent); 
            letter-spacing: 2px; 
            font-family: 'DSans', sans-serif;
            font-weight: 700;
        }
        
        button {
            background: var(--accent);
            color: white;
            border: none;
            padding: 12px 24px;
            font-size: 16px;
            font-weight: 650;
            border-radius: 6px;
            cursor: pointer;
            transition: all 0.2s;
            width: 100%;
            font-family: 'Public Sans', sans-serif;
        }

        button:hover { background: #d62828; transform: translateY(-1px); }
        button:active { transform: translateY(0); }
        button:disabled { background: #555; cursor: not-allowed; }

        .btn-secondary {
            background: transparent;
            border: 2px solid #444;
            margin-top: 10px;
        }

        #game-container {
            display: none;
            width: 100%;
            height: 100%;
            position: relative;
        }

        #pano {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0; left: 0;
            z-index: 1;
        }

        #hud {
            position: absolute;
            top: 0; left: 0; width: 100%;
            background: linear-gradient(to bottom, rgba(0,0,0,0.8), transparent);
            padding: 20px;
            display: flex;
            justify-content: space-between;
            box-sizing: border-box;
            z-index: 10;
            pointer-events: none;
        }

        .hud-stat {
            background: var(--panel-bg);
            padding: 10px 20px;
            border-radius: 8px;
            font-weight: 700;
            font-size: 18px;
            box-shadow: 0 4px 6px rgba(0,0,0,0.3);
            pointer-events: auto;
            border: 1px solid #333;
        }

        #score-ui, #round-ui {
            font-family: 'DSans Code', monospace;
            font-weight: 700;
        }

        #map-panel {
            position: absolute;
            bottom: 20px;
            right: 20px;
            width: 350px;
            background: var(--panel-bg);
            padding: 10px;
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.5);
            z-index: 10;
            transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), width 0.3s, height 0.3s;
            border: 1px solid #333;
        }

        /* Desktop Map Size Increase */
        @media (min-width: 1024px) {
            #map-panel {
                width: 500px; /* or 550? */
            }
            #guess-map {
                height: 350px !important;
            }
        }

        #map-panel.fullscreen {
            width: 100% !important;
            height: 100% !important;
            bottom: 0;
            right: 0;
            padding: 0;
            border: none;
            border-radius: 0;
            z-index: 50;
        }

        #guess-map {
            width: 100%;
            height: 250px;
            border-radius: 8px;
            background: #222;
        }

        .overlay {
            display: none;
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background: rgba(0,0,0,0.6);
            backdrop-filter: blur(4px);
            z-index: 100;
            justify-content: center;
            align-items: flex-end;
            padding-bottom: 40px;
            box-sizing: border-box;
        }

        .modal-box {
            background: var(--panel-bg);
            padding: 40px;
            border-radius: 16px;
            text-align: center;
            max-width: 500px;
            width: 90%;
            border: 1px solid #444;
            box-shadow: 0 20px 50px rgba(0,0,0,0.8);
        }

        .modal-box h2 { 
            margin-top: 0; 
            font-size: 32px; 
            color: var(--success); 
            font-family: 'DSans', sans-serif;
            font-weight: 550; 
        }

        .score-big { 
            font-size: 56px; 
            color: var(--accent); 
            margin: 10px 0; 
            font-family: 'DSans Code', monospace;
            font-weight: 725; 
        }

        .dist-info { font-size: 18px; color: #ccc; margin-bottom: 20px; font-weight: 500; }

        #share-preview {
            background: #111;
            padding: 15px;
            border-radius: 8px;
            margin: 15px 0;
            font-family: 'DSans Code', monospace;
            font-size: 14px;
            text-align: left;
            border-left: 4px solid var(--accent);
        }

#mobile,#mobile-notice {
    display: flex;
    flex-direction: column;
    font-family: "Public Sans", 'Segoe UI', Roboto, Helvetica, -system-ui, Arial, sans-serif;
    align-items: center;
    text-align: center;
    justify-content: center;
    z-index: 99999;
}

/*@media (max-width: 600px) {
            . { display: flex;
  justify-content: center; 
  height: 100vh;       }}*/
