<template>
  <div class="app-shell" :class="{ 'app-locked': session.locked }">
    <router-view />
    <LockScreenModal v-if="session.locked" />
  </div>
  <!-- TODO: 预留聚合接口页面：/study/{id}/overview /subjects/{id}/detail /sites/{id}/summary -->
</template>

<script setup lang="ts">
import { useSessionStore } from "./store/session";
import { initSessionManager } from "./session/sessionManager";
import LockScreenModal from "./components/LockScreenModal.vue";

initSessionManager();
const session = useSessionStore();
</script>

<style scoped>
.app-shell {
  min-height: 100vh;
  min-height: 100dvh;
}

.app-locked {
  pointer-events: none;
  user-select: none;
}
</style>
