body {
    font-family: 'Poppins', sans-serif;
    -webkit-tap-highlight-color: transparent;
    background-color: #121212;
}
.app-container {
    background-color: #121212;
    color: #E0E0E0;
}
.card {
    background-color: #1E1E1E;
}
.main-view {
    display: none;
}
.main-view.active {
    display: flex;
}
.loader {
    border: 4px solid #444;
    border-radius: 50%;
    border-top: 4px solid #4ade80; /* green-400 */
    width: 60px;
    height: 60px;
    animation: spin 1.2s linear infinite;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
.carousel-item {
    display: none;
    min-width: 100%;
    transition: opacity 0.5s ease-in-out;
}
.carousel-item.active {
    display: block;
}
.dot {
    transition: all 0.3s ease;
}
.error-toast {
    transition: transform 0.3s ease, opacity 0.3s ease;
}
#image-preview {
    width: 100%;
    height: 100%;
    object-fit: cover;
    padding: 20px;
}
.modal-backdrop {
    transition: opacity 0.3s ease-in-out;
}
.weather-slider {
    scroll-snap-type: x mandatory;
}
.weather-slider > div {
    scroll-snap-align: start;
}
.weather-slider::-webkit-scrollbar {
    display: none;
}
.weather-slider {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

#weather-card{
    background: transparent;
}
.bg-green-500 {
    --tw-bg-opacity: 1;
    background-color: rgb(41 97 62) !important;
}
.last-weather{
    margin-right: 1.5rem !important;
}
.bot-logo{
    height: 60px;
    width: auto;
    margin-bottom: 15px;
}
.bot-logo-green{
    height: 30px;
    width: auto;
}
.bot-logo-about{
    height: 70px;
    width: auto;
}
.img-thumbnail{
    width: 100px;
    height: 100px;
    border-radius: 50%;
}
.pb-60{
    padding-bottom: 60px;
}