
    :root {
        --bg: #f4f7f6; --card: #ffffff; --text: #1a1a1a; --primary: #008f39; 
        --secondary: #4285F4; --border: #e0e0e0;
    }
    @media (prefers-color-scheme: dark) {
        :root {
            --bg: #0e1117; --card: #262730; --text: #fafafa; --border: #30363d;
        }
    }
    body { font-family: "Source Sans Pro", sans-serif; background-color: var(--bg); color: var(--text); margin: 0; padding: 15px; transition: 0.3s; }
    .container { max-width: 800px; margin: auto; }
    h1 { text-align: left; color: var(--text); font-size: 2.2rem; margin-bottom: 20px; }
    
    .filters { background: var(--card); padding: 15px; border-radius: 10px; margin-bottom: 20px;
                display: flex; justify-content: space-between; align-items: center; border: 1px solid var(--border); }
    
    select { padding: 8px; border-radius: 5px; background: var(--bg); color: var(--text); border: 1px solid var(--border); width: 55%; }

    .switch { position: relative; display: inline-block; width: 40px; height: 20px; }
    .switch input { opacity: 0; width: 0; height: 0; }
    .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 20px; }
    .slider:before { position: absolute; content: ""; height: 14px; width: 14px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }
    input:checked + .slider { background-color: var(--primary); }
    input:checked + .slider:before { transform: translateX(20px); }

    #map { height: 350px; border-radius: 10px; margin-bottom: 20px; border: 1px solid var(--border); z-index: 1; }

    .pharmacy-card {
        background-color: var(--card); padding: 20px; border-radius: 10px;
        border-left: 8px solid var(--primary); margin-bottom: 15px;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1); border: 1px solid var(--border);
    }
    .status-badge { float: right; padding: 2px 10px; border-radius: 15px; font-weight: bold; font-size: 0.7em; border: 1px solid; }
    .open-badge { color: #2e7d32; border-color: #2e7d32; background: rgba(46, 125, 50, 0.1); }
    .closed-badge { color: #d32f2f; border-color: #d32f2f; background: rgba(211, 47, 47, 0.1); }
    
    .btn-group { display: flex; gap: 10px; margin-top: 15px; }
    .btn { flex: 1; text-align: center; color: white !important; padding: 10px; border-radius: 5px; font-weight: bold; text-decoration: none; font-size: 0.85em; }
    .btn-call { background-color: var(--primary); }
    .btn-go { background-color: var(--secondary); }

    .map-popup-btn { display: block; text-align: center; color: white !important; padding: 6px; margin-top: 5px; border-radius: 4px; text-decoration: none; font-weight: bold; font-size: 0.8em; }
    