/* Grade Calculator Custom Styling */

.apple-glass {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.dark .apple-glass {
    background: rgba(18, 18, 20, 0.45);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.4);
}

.text-glow {
    text-shadow: 0 0 25px rgba(99, 102, 241, 0.25);
}

.dark .text-glow {
    text-shadow: 0 0 35px rgba(99, 102, 241, 0.4);
}

/* Mode Tab Buttons Styling */
.mode-tab-btn {
    background-color: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #a1a1aa;
    transition: all 0.2s ease-in-out;
}

html:not(.dark) .mode-tab-btn {
    background-color: #f4f4f5;
    border: 1px solid #e4e4e7;
    color: #475569;
}

.mode-tab-btn:hover {
    color: #ffffff;
    border-color: rgba(99, 102, 241, 0.3);
}

html:not(.dark) .mode-tab-btn:hover {
    color: #4f46e5;
    background-color: rgba(99, 102, 241, 0.08);
    border-color: rgba(99, 102, 241, 0.3);
}

.mode-tab-btn.active {
    background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%) !important;
    border-color: rgba(99, 102, 241, 0.5) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 15px rgba(99, 102, 241, 0.35);
}

.mode-tab-btn.active i {
    color: #ffffff !important;
}

/* Form input focus styling in light theme */
html:not(.dark) input[type="number"],
html:not(.dark) input[type="text"],
html:not(.dark) select {
    background-color: #ffffff !important;
    border-color: rgba(0, 0, 0, 0.15) !important;
    color: #0f172a !important;
}

html:not(.dark) .apple-glass {
    background-color: rgba(255, 255, 255, 0.85) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
}

/* Desktop Sticky Container Alignment */
@media (min-width: 1024px) {
    .lg\:sticky {
        top: 6rem;
    }
}
