The first thing you need to know is, you can't declare a html head inside any place, neither in yours tamplate, neither in yours components, neither in yours pages, neither in nowhere.
Keep in mind that you can't use a html tags for this, you will use a json schema.
Now about you doubt if you want to import the CSS as globally, the correct place is inside your nuxt.config.js, inside this file, you have a property called head, and inside the head we will configure all the imports.
Nuxt2
https://v2.nuxt.com/docs/configuration-glossary/configuration-css/
So, inside nuxt.config.js find your head session, and then create new property called css, some thing like this:
...
head: {
css: [
'~/assets/style/app.styl',
'~/assets/style/main.css'
],
}
...
In Nuxt2, you will need a CSS loader installed in your application too, so have sure you had installed a "stylus" and "stylus-loader" in your app.
[edit] add nuxt3
Nuxt3
https://nuxt.com/docs/getting-started/styling#the-css-property
In nuxt3 you can import inside the nuxt-config.ts outside of head property, directly in css property:
export default defineNuxtConfig({
...
css: [`assets/styles/main.scss`],
...
})
In Nuxt3 with SCSS, you will need "sass" and "sass-loader" pakages, so have sure you have it installed before.
npm i D sass sass-loader
Import inside components
Another way, is import your css/scss directly inside your component or pages. This will work in both versions Nuxt2 and Nuxt3. For this you can do some thing like this:
<style lang="scss" scoped>
@import "./myCustomCss.css";
</style>
OR
<style scoped src="./myCustomCss.css">
</style>
headelement per page. It cannot reside in thebody. Aside from that, it would maybe work, but the CSS does not exist at that specified path.