/* 1. BASE STYLES */
#tulaneSearchPanel {
    /* Hide by default without !important */
    display: none; 
    
    position: fixed !important;
    bottom: 80px !important; 
    right: 20px !important;
    width: 350px !important;
    background: #ffffff !important;
    border: 1px solid #006747 !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.2) !important;
    z-index: 99999 !important;
    padding: 20px !important;
    box-sizing: border-box !important;
}

/* 2. THE "OPEN" STATE */
/* This class will be added/removed by JavaScript */
#tulaneSearchPanel.is-active {
    display: flex !important; /* Flex allows for better internal alignment */
    flex-direction: column;
}

/* 3. MOBILE OVERRIDE */
@media screen and (max-width: 767px) {
    #tulaneSearchPanel.is-active {
        bottom: auto !important;
        right: auto !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: 90vw !important;
        max-width: 360px !important;
        max-height: 85vh !important;
    }
}
