/* 页面切换动画容器 */
.page-view {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /* 默认隐藏，JS 控制显隐 */
    opacity: 0; 
    pointer-events: none;
    transition: opacity 0.8s ease, transform 0.8s ease;
    padding: 0 var(--page-padding);
}

.page-view.active {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
}

/* 进场动画：从下方轻微浮起 */
.page-view.enter {
    transform: translateY(20px);
}

/* 首页特定样式 */
.home-layout {
    text-align: center;
}

.home-quote {
    font-size: 3rem;
    margin-bottom: 2rem;
    position: relative;
    display: inline-block;
}

/* 竖排支持 */
.vertical-text {
    writing-mode: vertical-rl;
    text-orientation: upright;
    letter-spacing: 0.3em;
    height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* 英文状态下强制横排 */
body[data-lang="en"] .vertical-text {
    writing-mode: horizontal-tb;
    height: auto;
}

/* 独白页样式 */
.script-layout {
    max-width: 600px;
    text-align: left;
}
.script-line {
    margin-bottom: 2rem;
    opacity: 0; /* 逐行显现 */
    transform: translateX(-10px);
    transition: all 0.5s ease;
}
.script-line.visible {
    opacity: 1;
    transform: translateX(0);
}
.character-name {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--accent);
    margin-bottom: 0.5rem;
    display: block;
}

/* 出口页样式 */
.exit-door {
    width: 200px;
    height: 300px;
    border: 2px solid var(--text-primary);
    position: relative;
    cursor: pointer;
    transition: all 0.5s;
    background: rgba(0,0,0,0.8); /* 模拟黑暗 */
}
/* 门被打开的状态 */
.exit-door.opened {
    background: #fff; /* 模拟光亮 */
    box-shadow: 0 0 50px rgba(255,255,255,0.8);
    border-color: transparent;
}
.exit-door-text {
    position: absolute;
    bottom: -3rem;
    width: 100%;
    text-align: center;
    font-size: 0.9rem;
    letter-spacing: 2px;
}