body {
    font-family: "Plus Jakarta Sans", sans-serif;
}

.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.material-symbols-outlined.fill {
    font-variation-settings: 'FILL' 1;
}

/* Nav Links States */
.nav-link {
    font-size: 0.875rem;
    font-weight: 500;
    transition: color 0.2s ease;
    cursor: pointer;
    color: #1c1b0d;
}

.nav-link:hover {
    color: #b8a800;
}

.nav-link.active {
    font-weight: 800;
    border-bottom: 2px solid #f2df0d;
    padding-bottom: 2px;
}

/* Custom Utilities */
.aspect-video {
    aspect-ratio: 16 / 9;
}

.aspect-square {
    aspect-ratio: 1 / 1;
}

/* Animations */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

#app-content > section {
    animation: fadeIn 0.5s ease-out forwards;
}

/* Form inputs styling override to ensure consistency */
input, select, textarea {
    border: 1px solid #e6e5d8;
    background-color: #f9f9f7;
}

input:focus, select:focus, textarea:focus {
    border-color: #f2df0d;
    ring: 2px solid rgba(242, 223, 13, 0.2);
    outline: none;
}