
        body {
            background-color: #06080f;
            background-image:
                radial-gradient(at 0% 0%, rgba(59,130,246,0.12) 0px, transparent 50%),
                radial-gradient(at 100% 100%, rgba(16,185,129,0.08) 0px, transparent 50%),
                radial-gradient(at 100% 0%, rgba(6,182,212,0.06) 0px, transparent 50%);
            color: #f8fafc;
            overflow-x: hidden;
            font-family: 'Cairo', sans-serif;
            line-height: 1.6;
        }

        /* Glass Panel */
        .glass-panel {
            background: rgba(17, 24, 39, 0.7);
            backdrop-filter: blur(12px) saturate(110%);
            -webkit-backdrop-filter: blur(12px) saturate(110%);
            border: 1px solid rgba(148, 163, 184, 0.2);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
            transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
        }
        .glass-panel:hover {
            transform: translateY(-2px);
            box-shadow: 0 16px 40px rgba(0,0,0,0.5);
            border-color: rgba(148, 163, 184, 0.35);
        }

        /* Smooth appear for visible blocks */
        .glass-panel, #resultsArea:not(.hidden), #paymentDetails:not(.hidden), #adminDashboard:not(.hidden) {
            animation: fadeIn .25s ease-out;
        }
        @keyframes fadeIn { from { opacity: 0; transform: translateY(4px);} to { opacity: 1; transform: translateY(0);} }

        /* Inputs */
        .custom-input {
            background-color: #0b1220 !important;
            border: 1px solid #2a3648;
            color: #e5e7eb;
            z-index: 50; /* Ensure clickable */
            position: relative;
            border-radius: 12px;
            transition: border-color .2s ease, box-shadow .2s ease;
        }
        .custom-input::placeholder { color: #94a3b8; opacity: .75; }
        .custom-input:focus {
            border-color: #06b6d4;
            box-shadow: 0 0 0 4px rgba(6, 182, 212, 0.12);
            outline: none;
        }
        .custom-input.invalid { border-color: #f87171 !important; }
        .error-text { color: #f87171; font-size: 12px; margin-top: 4px; }

        /* Dropdown Options */
        select.custom-input {
            cursor: pointer;
            z-index: 100 !important;
        }
        select.custom-input option {
            background-color: #0b1220;
            color: #f1f5f9;
            padding: 10px;
        }
        select.custom-input:focus { z-index: 100 !important; }
        
        /* Ensure dropdown is visible */
        #countrySelect { z-index: 100 !important; position: relative; }

        /* Buttons */
        button { transition: transform .15s ease, box-shadow .2s ease, background-color .2s ease, opacity .2s ease; }
        button:hover { transform: translateY(-1px); }
        button:active { transform: translateY(0px) scale(0.99); }
        button:disabled { opacity: .6; cursor: not-allowed; }

        /* Payment Options */
        .pay-option {
            transition: all 0.2s ease;
            border: 1px solid #334155;
            background: linear-gradient(180deg, rgba(2,6,23,0.8), rgba(2,6,23,0.6));
        }
        .pay-option:hover { border-color: #7c8798; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05); }
        .pay-option.selected {
            border-color: #06b6d4;
            background: linear-gradient(180deg, rgba(6,182,212,0.12), rgba(6,182,212,0.06));
            box-shadow: 0 8px 24px rgba(6,182,212,0.12);
        }

        /* Badges */
        .badge { display: inline-flex; align-items: center; gap: 6px; padding: 2px 8px; border-radius: 8px; font-size: 10px; font-weight: 700; letter-spacing: .3px; border: 1px solid rgba(148,163,184,0.3); }
        .badge-green { background: rgba(34,197,94,0.1); color: #34d399; border-color: rgba(34,197,94,0.35); }
        .badge-yellow { background: rgba(234,179,8,0.08); color: #facc15; border-color: rgba(234,179,8,0.3); }
        .badge-red { background: rgba(239,68,68,0.1); color: #f87171; border-color: rgba(239,68,68,0.35); }

        /* File Upload (kept but visually subdued) */
        .file-drop-area {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            padding: 16px;
            border: 2px dashed #334155;
            border-radius: 12px;
            transition: 0.2s;
            background: #0b1220;
            cursor: pointer;
        }
        .file-drop-area:hover { border-color: #06b6d4; }
        .file-input {
            position: absolute; left: 0; top: 0; height: 100%; width: 100%; cursor: pointer; opacity: 0; z-index: 100;
        }

        /* Code/Key block */
        #paymentDetails code {
            border: 1px solid rgba(148,163,184,0.25);
            background: linear-gradient(180deg, rgba(2,6,23,0.75), rgba(2,6,23,0.55));
        }

        /* Map */
        #map { height: 100%; width: 100%; z-index: 1; }
        .leaflet-bottom { z-index: 10; } /* Fix leaflet attribution z-index */
    