.noto-sans-malayalam {
  font-family: "Noto Sans Malayalam", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
        
        .rasi-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            grid-template-rows: repeat(4, 100px);
            width: 100%;
            max-width: 400px;
            margin: 0 auto;
            gap: 1px;
             border: 1px solid #d1d5db;
            background-color: #e5e7eb;
        }
        
        @media (max-width: 640px) {
            .rasi-grid {
                grid-template-rows: repeat(4, 80px);
                max-width: 350px;
            }
        }
        
        .rasi-box {
            background: white;
           
            position: relative;
            padding: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            font-size: 16px;
            word-break: break-word;
        }
        
        .rasi-center {
            grid-column: 2 / span 2;
            grid-row: 2 / span 2;
            background-color: #f8fafc;
            font-weight: bold;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
          
        }
        
        .rasi-number {
            position: absolute;
            top: 2px;
            right: 5px;
            font-size: 12px;
            color: #ef4444;
            font-weight: bold;
        }
        
        .progress-bar {
            transition: width 0.6s ease;
        }
        .custom-select-wrapper,
.custom-place-dropdown {
    position: relative;
}

.rotate-180 {
    transform: rotate(180deg);
}

.custom-select-options,
.place-options-list {
    scrollbar-width: thin;
    scrollbar-color: #cbd5e0 #f7fafc;
}

.custom-select-options::-webkit-scrollbar,
.place-options-list::-webkit-scrollbar {
    width: 6px;
}

.custom-select-options::-webkit-scrollbar-track,
.place-options-list::-webkit-scrollbar-track {
    background: #f7fafc;
    border-radius: 3px;
}

.custom-select-options::-webkit-scrollbar-thumb,
.place-options-list::-webkit-scrollbar-thumb {
    background-color: #cbd5e0;
    border-radius: 3px;
}

.custom-option,
.place-option {
    transition: all 0.2s ease;
}

.custom-option:focus,
.place-option:focus {
    background-color: #ebf8ff;
    outline: none;
}

.custom-option:hover,
.place-option:hover {
    background-color: #f0f9ff;
}

.loading-place {
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

.dropdown-toggle {
    transition: transform 0.2s ease;
}