You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.1 KiB
37 lines
1.1 KiB
<script setup lang="ts">
|
|
// scroll-body="false": Prevents body scrolling when modals/dialogs are open.
|
|
// When set to false, the body element's overflow is locked while any modal component
|
|
// (like Dialog, Sheet, etc.) is open, preventing background content from scrolling.
|
|
// This improves UX by keeping focus on the modal content.
|
|
//
|
|
// Bug fix: Without this setting, opening dropdown menus (e.g., the user profile menu
|
|
// when clicking the avatar icon) would cause the body to receive a padding-right of
|
|
// 15px, which shifted the entire page content 15px to the left. This prop prevents
|
|
// that unwanted padding injection and layout shift.
|
|
import { ConfigProvider } from 'reka-ui'
|
|
</script>
|
|
|
|
<template>
|
|
<ConfigProvider :scroll-body="false">
|
|
<div>
|
|
<NuxtPage />
|
|
</div>
|
|
</ConfigProvider>
|
|
</template>
|
|
|
|
<style>
|
|
/* Critical CSS - Loaded immediately to prevent FOUC */
|
|
html {
|
|
background-color: #1e1440;
|
|
/* purple-darkest */
|
|
color: #f8fafc;
|
|
/* white/slate-50 */
|
|
font-family: 'Roboto', system-ui, -apple-system, sans-serif;
|
|
}
|
|
|
|
body {
|
|
margin: 0;
|
|
padding: 0;
|
|
min-height: 100vh;
|
|
}
|
|
</style>
|
|
|