@lemoncat7/dsh-partner 2.8.0 → 2.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/THIRD_PARTY_LICENSES.md +10 -0
- package/docs/blocked-delivery-recovery.md +7 -0
- package/docs/concern-attention.md +19 -0
- package/docs/observation-contract.md +11 -0
- package/docs/releases/2.8.1.md +11 -0
- package/docs/releases/2.8.2.md +7 -0
- package/lib/agent-runtime.d.ts +7 -0
- package/lib/agent-runtime.d.ts.map +1 -1
- package/lib/agent-runtime.js +110 -32
- package/lib/agent-runtime.js.map +1 -1
- package/lib/api.js +28 -6
- package/lib/api.js.map +1 -1
- package/lib/autonomy.d.ts.map +1 -1
- package/lib/autonomy.js +5 -0
- package/lib/autonomy.js.map +1 -1
- package/lib/channel-message.d.ts +2 -0
- package/lib/channel-message.d.ts.map +1 -1
- package/lib/channel-message.js.map +1 -1
- package/lib/channels/manager.d.ts.map +1 -1
- package/lib/channels/manager.js +4 -3
- package/lib/channels/manager.js.map +1 -1
- package/lib/channels/notification-delivery.d.ts.map +1 -1
- package/lib/channels/notification-delivery.js +10 -0
- package/lib/channels/notification-delivery.js.map +1 -1
- package/lib/channels/weixin/connect.d.ts.map +1 -1
- package/lib/client-api.d.ts +7 -2
- package/lib/client-api.d.ts.map +1 -1
- package/lib/client-api.js +8 -1
- package/lib/client-api.js.map +1 -1
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +2115 -1884
- package/lib/client.js.map +4 -4
- package/lib/collaboration/composition.js +1 -1
- package/lib/collaboration/composition.js.map +1 -1
- package/lib/concern-attention.d.ts +19 -0
- package/lib/concern-attention.d.ts.map +1 -0
- package/lib/concern-attention.js +36 -0
- package/lib/concern-attention.js.map +1 -0
- package/lib/concern-domain.d.ts +7 -1
- package/lib/concern-domain.d.ts.map +1 -1
- package/lib/concern-domain.js +4 -0
- package/lib/concern-domain.js.map +1 -1
- package/lib/concern-execution-notes.d.ts +18 -0
- package/lib/concern-execution-notes.d.ts.map +1 -0
- package/lib/concern-execution-notes.js +41 -0
- package/lib/concern-execution-notes.js.map +1 -0
- package/lib/concern-execution-receipt.d.ts +4 -0
- package/lib/concern-execution-receipt.d.ts.map +1 -0
- package/lib/concern-execution-receipt.js +28 -0
- package/lib/concern-execution-receipt.js.map +1 -0
- package/lib/concern-execution.d.ts +30 -0
- package/lib/concern-execution.d.ts.map +1 -0
- package/lib/concern-execution.js +86 -0
- package/lib/concern-execution.js.map +1 -0
- package/lib/concern-management-tool.d.ts.map +1 -1
- package/lib/concern-management-tool.js +21 -19
- package/lib/concern-management-tool.js.map +1 -1
- package/lib/concern-note-source.d.ts +7 -0
- package/lib/concern-note-source.d.ts.map +1 -0
- package/lib/concern-note-source.js +25 -0
- package/lib/concern-note-source.js.map +1 -0
- package/lib/concern-resources.d.ts +27 -0
- package/lib/concern-resources.d.ts.map +1 -0
- package/lib/concern-resources.js +36 -0
- package/lib/concern-resources.js.map +1 -0
- package/lib/concern-sources.d.ts +1 -1
- package/lib/concern-sources.d.ts.map +1 -1
- package/lib/concern-store.d.ts +9 -1
- package/lib/concern-store.d.ts.map +1 -1
- package/lib/concern-store.js +111 -34
- package/lib/concern-store.js.map +1 -1
- package/lib/concern-tool.d.ts +1 -0
- package/lib/concern-tool.d.ts.map +1 -1
- package/lib/concern-tool.js +8 -4
- package/lib/concern-tool.js.map +1 -1
- package/lib/decision/conversation.d.ts +11 -0
- package/lib/decision/conversation.d.ts.map +1 -0
- package/lib/decision/conversation.js +52 -0
- package/lib/decision/conversation.js.map +1 -0
- package/lib/decision/events.d.ts +16 -0
- package/lib/decision/events.d.ts.map +1 -0
- package/lib/decision/events.js +9 -0
- package/lib/decision/events.js.map +1 -0
- package/lib/domain.d.ts +2 -0
- package/lib/domain.d.ts.map +1 -1
- package/lib/domain.js.map +1 -1
- package/lib/heartbeat.d.ts +12 -10
- package/lib/heartbeat.d.ts.map +1 -1
- package/lib/heartbeat.js +54 -26
- package/lib/heartbeat.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/memory-prompt-context.js +1 -0
- package/lib/memory-prompt-context.js.map +1 -1
- package/lib/memory-reflection.js +1 -1
- package/lib/observation-contract.d.ts +9 -0
- package/lib/observation-contract.d.ts.map +1 -0
- package/lib/observation-contract.js +19 -0
- package/lib/observation-contract.js.map +1 -0
- package/lib/observation-executor.d.ts +5 -0
- package/lib/observation-executor.d.ts.map +1 -1
- package/lib/observation-executor.js +17 -1
- package/lib/observation-executor.js.map +1 -1
- package/lib/observation-loop.d.ts +5 -0
- package/lib/observation-loop.d.ts.map +1 -1
- package/lib/observation-loop.js +36 -3
- package/lib/observation-loop.js.map +1 -1
- package/lib/observation-sources.d.ts +14 -0
- package/lib/observation-sources.d.ts.map +1 -0
- package/lib/observation-sources.js +12 -0
- package/lib/observation-sources.js.map +1 -0
- package/lib/requirements/service.d.ts.map +1 -1
- package/lib/requirements/service.js +2 -0
- package/lib/requirements/service.js.map +1 -1
- package/lib/requirements/worker.d.ts.map +1 -1
- package/lib/requirements/worker.js +1 -0
- package/lib/requirements/worker.js.map +1 -1
- package/lib/scheduler/continuations.d.ts.map +1 -1
- package/lib/scheduler/continuations.js +17 -3
- package/lib/scheduler/continuations.js.map +1 -1
- package/lib/skills/builtin.d.ts.map +1 -1
- package/lib/skills/builtin.js +2 -0
- package/lib/skills/builtin.js.map +1 -1
- package/lib/skills/drama-builtin.d.ts.map +1 -1
- package/lib/skills/drama-builtin.js +13 -1
- package/lib/skills/drama-builtin.js.map +1 -1
- package/lib/skills/story-builtins.d.ts +3 -0
- package/lib/skills/story-builtins.d.ts.map +1 -0
- package/lib/skills/story-builtins.js +72 -0
- package/lib/skills/story-builtins.js.map +1 -0
- package/lib/skills/viora-canvas-builtin.d.ts.map +1 -1
- package/lib/skills/viora-canvas-builtin.js +12 -1
- package/lib/skills/viora-canvas-builtin.js.map +1 -1
- package/lib/snapshot-cache.d.ts +7 -0
- package/lib/snapshot-cache.d.ts.map +1 -0
- package/lib/snapshot-cache.js +26 -0
- package/lib/snapshot-cache.js.map +1 -0
- package/lib/tasks/result.js +1 -1
- package/lib/tasks/result.js.map +1 -1
- package/lib/ui/memory/concern-board.d.ts +1 -1
- package/lib/ui/memory/concern-board.d.ts.map +1 -1
- package/lib/ui/memory/concern-board.js +12 -6
- package/lib/ui/memory/concern-board.js.map +1 -1
- package/lib/ui/memory/concern-deletion.d.ts.map +1 -1
- package/lib/ui/memory/concern-deletion.js +2 -1
- package/lib/ui/memory/concern-deletion.js.map +1 -1
- package/lib/ui/memory/concern-editor.d.ts.map +1 -1
- package/lib/ui/memory/concern-editor.js +5 -3
- package/lib/ui/memory/concern-editor.js.map +1 -1
- package/lib/ui/memory/concern-execution-fields.d.ts +7 -0
- package/lib/ui/memory/concern-execution-fields.d.ts.map +1 -0
- package/lib/ui/memory/concern-execution-fields.js +8 -0
- package/lib/ui/memory/concern-execution-fields.js.map +1 -0
- package/lib/ui/memory/concern-feedback.d.ts +15 -0
- package/lib/ui/memory/concern-feedback.d.ts.map +1 -0
- package/lib/ui/memory/concern-feedback.js +13 -0
- package/lib/ui/memory/concern-feedback.js.map +1 -0
- package/lib/ui/memory/concern-panel.d.ts.map +1 -1
- package/lib/ui/memory/concern-panel.js +11 -3
- package/lib/ui/memory/concern-panel.js.map +1 -1
- package/package.json +6 -1
- package/resources/skills/novel-game-creation/manifest.json +393 -0
- package/resources/skills/novel-game-creation/upstream/LICENSE +21 -0
- package/resources/skills/novel-game-creation/upstream/README.md +420 -0
- package/resources/skills/novel-game-creation/upstream/README_ZH.md +421 -0
- package/resources/skills/novel-game-creation/upstream/VERSION +1 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/BUILD_BRIEF.md +219 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/.vercelignore +3 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/RUN.md +138 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/bg/compound_new_guofeng.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/finale/fate_coda.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/finale/meng.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/finale/pan.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/finale/pinger.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/finale/xuee.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/finale/yue.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/group/inner_court_accord_five.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/group/inner_court_afterglow_five.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/group/inner_court_alliance.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/group/public_day10.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/group/public_day15.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/group/public_day5.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/group/title_new_guofeng.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/joint/pan_pinger.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/joint/pan_xuee.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/joint/yue_meng.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/joint/yue_pan.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/joint/yue_pinger.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/meng/explicit.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/meng/prelude.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/milestone/meng.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/milestone/pan.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/milestone/pinger.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/milestone/xuee.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/milestone/yue.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/pan/explicit.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/pan/prelude.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/pinger/explicit.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/pinger/prelude.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/xuee/explicit.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/xuee/prelude.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/yue/explicit.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/cg/yue/prelude.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/heroine/meng/night.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/heroine/pan/night.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/heroine/pinger/night.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/heroine/xuee/night.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/heroine/yue/night.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/household/li_jiaoer.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/assets/scene/gate_collector.webp +0 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/css/new-guofeng.css +1494 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/css/style.css +2508 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/index.html +18 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/js/assets.js +147 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/js/audio.js +332 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/js/data.js +7470 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/js/engine.js +13066 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/js/main.js +3051 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/js/text.js +32 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/package.json +11 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/vercel.json +23 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/art/generated-art.json +161 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/example.json +12 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/qa/README.md +26 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/qa/playable-model.json +99 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/qa/verification.json +41 -0
- package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/qa/verify_playable_model.mjs +152 -0
- package/resources/skills/novel-game-creation/upstream/manifest.json +498 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-art-direction/SKILL.md +47 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-art-direction/agents/openai.yaml +4 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-art-direction/references/art-direction-method.md +40 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-build/SKILL.md +66 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-build/agents/openai.yaml +4 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-build/references/blender-asset-workflow.md +24 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-build/references/build-brief-contract.md +72 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-build/references/generative-media-pipeline.md +25 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-build/references/playable-model-contract.md +46 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-build/references/tts-production-contract.md +23 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-concept/SKILL.md +54 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-concept/agents/openai.yaml +4 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-concept/references/concept-method.md +47 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-qa/SKILL.md +39 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-qa/agents/openai.yaml +4 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-qa/references/qa-contract.md +66 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-qa/references/test-design-method.md +49 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-world-design/SKILL.md +50 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-world-design/agents/openai.yaml +4 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-world-design/references/narrative-design-method.md +35 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-world-design/references/numeric-design-method.md +22 -0
- package/resources/skills/novel-game-creation/upstream/skills/game-world-design/references/world-design-method.md +57 -0
- package/resources/skills/novel-game-creation/upstream/skills/novel-game-analyze/SKILL.md +68 -0
- package/resources/skills/novel-game-creation/upstream/skills/novel-game-analyze/agents/openai.yaml +4 -0
- package/resources/skills/novel-game-creation/upstream/skills/novel-game-analyze/references/gameability-protocol.md +65 -0
- package/resources/skills/novel-game-creation/upstream/skills/novel-to-game/SKILL.md +54 -0
- package/resources/skills/novel-game-creation/upstream/skills/novel-to-game/agents/openai.yaml +4 -0
- package/resources/skills/novel-game-creation/upstream/skills/novel-to-game/references/intake-method.md +50 -0
- package/resources/skills/novel-game-creation/upstream/skills/novel-to-game/references/pipeline-contract.md +60 -0
- package/resources/skills/story-creation/manifest.json +1477 -0
- package/resources/skills/story-creation/upstream/LICENSE.upstream +21 -0
- package/resources/skills/story-creation/upstream/manifest.json +1861 -0
- package/resources/skills/story-creation/upstream/roles/chapter-extractor.md +254 -0
- package/resources/skills/story-creation/upstream/roles/character-designer.md +168 -0
- package/resources/skills/story-creation/upstream/roles/consistency-checker.md +192 -0
- package/resources/skills/story-creation/upstream/roles/narrative-writer.md +105 -0
- package/resources/skills/story-creation/upstream/roles/story-architect.md +139 -0
- package/resources/skills/story-creation/upstream/roles/story-explorer.md +262 -0
- package/resources/skills/story-creation/upstream/roles/story-researcher.md +303 -0
- package/resources/skills/story-creation/upstream/skills/browser-cdp/SKILL.md +175 -0
- package/resources/skills/story-creation/upstream/skills/story/SKILL.md +129 -0
- package/resources/skills/story-creation/upstream/skills/story/VERSION +1 -0
- package/resources/skills/story-creation/upstream/skills/story/references/author-memory-maintenance.md +75 -0
- package/resources/skills/story-creation/upstream/skills/story/references/author-memory.md +117 -0
- package/resources/skills/story-creation/upstream/skills/story/scripts/author_memory_commit.py +1635 -0
- package/resources/skills/story-creation/upstream/skills/story-cover/SKILL.md +336 -0
- package/resources/skills/story-creation/upstream/skills/story-cover/references/cover-styles.md +210 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/SKILL.md +274 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/references/agent-calls.md +5 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/references/anti-ai-writing.md +556 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/references/author-memory-maintenance.md +75 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/references/author-memory.md +117 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/references/banned-words.md +151 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/references/deslop-gates.md +171 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/references/style-resolution.md +27 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/scripts/author_memory_commit.py +1635 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/scripts/check-ai-patterns.js +1586 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/scripts/check-degeneration.js +349 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/scripts/normalize-punctuation.js +415 -0
- package/resources/skills/story-creation/upstream/skills/story-deslop/scripts/style-whitelist.js +39 -0
- package/resources/skills/story-creation/upstream/skills/story-import/SKILL.md +127 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/character-state-reverse.md +82 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/deep-analysis.md +47 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/format-and-structure.md +168 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/import-report.md +64 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/import-special-cases.md +34 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/import-tracking.md +95 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/length-routing.md +134 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/outline-reverse-rules.md +79 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/outline-reverse.md +24 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/state-tracking.md +43 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/structure-mapping-long.md +448 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/structure-mapping-short.md +187 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/tracking-initialization.md +31 -0
- package/resources/skills/story-creation/upstream/skills/story-import/references/tracking-transaction.md +146 -0
- package/resources/skills/story-creation/upstream/skills/story-import/scripts/build_outline_brief.py +332 -0
- package/resources/skills/story-creation/upstream/skills/story-import/scripts/check-outline-contract.js +520 -0
- package/resources/skills/story-creation/upstream/skills/story-import/scripts/tracking_commit.py +1691 -0
- package/resources/skills/story-creation/upstream/skills/story-import/scripts/wordcount_core.py +405 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/SKILL.md +140 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/author-facing.md +252 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/deconstruction-notes.md +270 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/final-checks.md +19 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/index-rebuild.md +11 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/inspiration-library.md +105 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/pipeline-ops.md +154 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/semantic-acceptance-fixtures.md +84 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/stage1-golden-chapters.md +128 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/stage2-extraction.md +229 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/stage3-plot-rhythm.md +480 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/stage4-characters-settings.md +195 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/stage5-report.md +33 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/style-profile-generator.md +76 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/style-profile-protocol.md +133 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/references/synthesis-inputs.md +39 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/scripts/build_chapter_index.py +466 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/scripts/inspect_existing_assets.py +702 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/scripts/inspiration_index.py +864 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/scripts/manage_analysis_run.py +1145 -0
- package/resources/skills/story-creation/upstream/skills/story-long-analyze/scripts/render_relation_chart.py +425 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/SKILL.md +193 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/genre-trends.md +197 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/platform-ciweimao.md +19 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/platform-fanqie.md +45 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/platform-jjwxc.md +28 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/platform-qidian.md +35 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/platform-qimao.md +27 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/publishing-guide.md +114 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/reader-profiling.md +105 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/references/topic-decision.md +82 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/scripts/aggregate-rank.js +682 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/scripts/cdp-utils.js +242 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/scripts/ciweimao-rank-scraper.js +240 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/scripts/fanqie-rank-scraper.js +658 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/scripts/jjwxc-rank-scraper.js +400 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/scripts/qidian-rank-scraper.js +592 -0
- package/resources/skills/story-creation/upstream/skills/story-long-scan/scripts/qimao-rank-scraper.js +435 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/SKILL.md +136 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/agent-calls.md +47 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/anti-ai-writing.md +556 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/artifact-protocols.md +183 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/author-memory-maintenance.md +75 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/author-memory.md +117 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/banned-words.md +151 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/benchmark-recall.md +16 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/character-basics.md +445 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/character-design-methods.md +428 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/character-relations.md +433 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/commercial-core-methods.md +502 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/cross-book-recall.md +88 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/deslop-gates.md +171 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/dialogue-mastery.md +288 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/emotion-on-page.md +116 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/emotional-arc-design.md +313 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/emotional-methods.md +209 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/female-audience-writing.md +188 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-prose-cards.md +91 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/genre-readers.md +235 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/long-chapter-hooks.md +225 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/long-chapter-quality.md +177 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/long-format.md +36 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/long-genre-catalog.md +394 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/long-genre-mechanics.md +415 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/long-reversal.md +335 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/long-suspense.md +352 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/opening-design.md +349 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/outline-conflict.md +457 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/outline-methods.md +287 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/outline-rhythm.md +389 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/outline-structure-theory.md +273 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/plot-core-methods.md +522 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/plot-emotion-system.md +354 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/plot-frameworks.md +711 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/plot-special-topics.md +622 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/project-files.md +114 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/reader-contract-and-progression.md +117 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/reference-index.md +86 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/stop-and-fix.md +9 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/style-combat-face.md +352 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/style-craft.md +327 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/style-genre-modules.md +510 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/style-resolution.md +27 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/tracking-initialization.md +31 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/tracking-transaction.md +146 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/workflow-chapter.md +104 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/workflow-daily.md +75 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/workflow-outline.md +157 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/workflow-revision.md +89 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/workflow-setup.md +170 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/workflow-volume.md +142 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/writer-prompt-fallback.md +24 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/references/writing-craft.md +442 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/author_memory_commit.py +1635 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/build_architect_brief.py +260 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/build_writer_prompt.py +611 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/check-ai-patterns.js +1586 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/check-degeneration.js +349 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/check-outline-contract.js +520 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/check-outline-copy.js +313 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/normalize-punctuation.js +415 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/outline_view.py +286 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/storyctl.py +561 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/style-whitelist.js +39 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/tracking_commit.py +1691 -0
- package/resources/skills/story-creation/upstream/skills/story-long-write/scripts/wordcount_core.py +405 -0
- package/resources/skills/story-creation/upstream/skills/story-review/SKILL.md +231 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/agent-prompts.md +184 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/anti-ai-writing.md +556 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/author-memory-maintenance.md +75 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/author-memory.md +117 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/banned-words.md +151 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/batch-review.md +19 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/character-relations.md +433 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/dialogue-mastery.md +288 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/plot-core-methods.md +522 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/quality-rubric.md +55 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/review-quality.md +246 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/review-tracking.md +10 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/rubrics/fanqie.md +18 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/rubrics/qidian.md +19 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/rubrics/zhihu.md +20 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/solo.md +52 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/style-resolution.md +27 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/tracking-initialization.md +31 -0
- package/resources/skills/story-creation/upstream/skills/story-review/references/tracking-transaction.md +146 -0
- package/resources/skills/story-creation/upstream/skills/story-review/scripts/author_memory_commit.py +1635 -0
- package/resources/skills/story-creation/upstream/skills/story-review/scripts/check-ai-patterns.js +1586 -0
- package/resources/skills/story-creation/upstream/skills/story-review/scripts/check-degeneration.js +349 -0
- package/resources/skills/story-creation/upstream/skills/story-review/scripts/normalize-punctuation.js +415 -0
- package/resources/skills/story-creation/upstream/skills/story-review/scripts/style-whitelist.js +39 -0
- package/resources/skills/story-creation/upstream/skills/story-review/scripts/tracking_commit.py +1691 -0
- package/resources/skills/story-creation/upstream/skills/story-review/scripts/wordcount_core.py +405 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/SKILL.md +165 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/agent-quality.md +72 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/agent-reference-profiles.md +55 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/anti-ai-writing.md +556 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/banned-words.md +151 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/benchmark-style-load.md +107 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/character-basics.md +445 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/character-design-methods.md +428 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/character-relations.md +433 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/deslop-gates.md +171 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/dialogue-mastery.md +288 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/emotion-on-page.md +116 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/emotional-arc-design.md +313 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/format-and-structure.md +168 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +53 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +51 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-prose-cards.md +91 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/genre-readers.md +235 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/long-chapter-hooks.md +225 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/long-emotional-methods.md +209 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/long-genre-catalog.md +394 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/long-genre-mechanics.md +415 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/long-quality.md +42 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/long-reversal.md +335 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/long-suspense.md +352 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/opening-design.md +349 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/outline-conflict.md +457 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/outline-methods.md +287 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/outline-rhythm.md +389 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/plot-core-methods.md +522 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/short-chapter-hooks.md +225 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/short-emotional-methods.md +179 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/short-genre-formulas.md +417 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/short-paragraph-hooks.md +146 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/short-quality.md +39 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/short-reversal.md +355 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/short-suspense.md +352 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/style-combat-face.md +352 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/style-genre-modules.md +510 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/style-resolution.md +27 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/agent-references/writing-craft.md +442 -0
- package/resources/skills/story-creation/upstream/skills/story-setup/references/diagnostics.md +38 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/SKILL.md +224 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-character-basics.md +453 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-character-design.md +438 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-character-relations.md +395 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-method.md +42 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-paragraph-hooks.md +146 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-reader-profile.md +245 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-report-style.md +45 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-short-genres.md +65 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-short-hooks.md +77 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-short-mechanics.md +82 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-short-patterns.md +50 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-short-suspense.md +98 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/analysis-writing-techniques.md +477 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/deconstruction-examples.md +79 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/optional-modules.md +97 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/output-contract.md +127 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/quality-checklist.md +80 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/real-market-data.md +90 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/source-story-quality.md +221 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/stage2-3-structure-emotion.md +308 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/stage4-6-reversal-summary.md +611 -0
- package/resources/skills/story-creation/upstream/skills/story-short-analyze/references/zhihu-style.md +54 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/SKILL.md +182 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/references/manual-rank-input.md +36 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/references/platform-dianzhong.md +24 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/references/platform-heiyan.md +21 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/references/real-market-data.md +90 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/references/topic-match.md +38 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/scripts/aggregate-rank.js +682 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/scripts/cdp-utils.js +242 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/scripts/dz-browse-scraper.js +232 -0
- package/resources/skills/story-creation/upstream/skills/story-short-scan/scripts/heiyan-booklist-scraper.js +345 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/SKILL.md +136 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/agent-calls.md +13 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/author-memory-maintenance.md +75 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/author-memory.md +117 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/banned-words.md +151 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/benchmark-recall.md +40 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/cross-book-recall.md +62 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/dialogue-mastery.md +288 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/emotional-methods.md +179 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//344/270/226/346/203/205/346/211/223/350/204/270.md +159 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//345/217/214/347/224/267/344/270/273.md +156 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//345/244/215/344/273/207/346/211/223/350/204/270.md +163 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//345/256/205/346/226/227/345/256/253/346/226/227.md +167 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//346/200/273/350/243/201/350/261/252/351/227/250.md +178 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//346/202/254/347/226/221.md +166 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//346/260/221/344/277/227/346/200/252/350/260/210.md +159 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//346/262/231/351/233/225/350/204/221/346/264/236.md +151 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//347/224/234/345/256/240.md +153 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-styles//350/277/275/345/246/273/347/201/253/350/221/254/345/234/272.md +210 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-writing-formulas.md +417 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/genre-writing-techniques.md +490 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/hooks-chapter.md +225 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/hooks-paragraph.md +146 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/output-contract.md +127 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/reference-index.md +23 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/scene-craft.md +40 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/short-craft.md +147 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/short-deslop.md +133 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/short-format.md +199 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/short-prose-quality.md +224 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/short-reversal.md +355 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/short-suspense.md +352 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/style-resolution.md +27 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/submission-craft.md +35 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/villain-and-reveal.md +153 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/workflow-design.md +85 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/workflow-draft.md +116 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/workflow-revision.md +99 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/references/writing-workflow.md +50 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/author_memory_commit.py +1635 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/check-ai-patterns.js +1586 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/check-degeneration.js +349 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/check-delivery-contract.js +241 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/check-outline-copy.js +313 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/check-phase2-contract.js +363 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/normalize-punctuation.js +415 -0
- package/resources/skills/story-creation/upstream/skills/story-short-write/scripts/style-whitelist.js +39 -0
- package/resources/skills/video-recap-production/manifest.json +673 -0
- package/resources/skills/video-recap-production/upstream/CHANGELOG.md +371 -0
- package/resources/skills/video-recap-production/upstream/LICENSE +21 -0
- package/resources/skills/video-recap-production/upstream/README.en.md +468 -0
- package/resources/skills/video-recap-production/upstream/README.md +459 -0
- package/resources/skills/video-recap-production/upstream/manifest.json +839 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/SKILL.md +112 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/audio-modes.md +63 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/explicit-audio-mix.md +75 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/foreground-compose.md +118 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/LICENSE.duo-video +21 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/SOURCE.md +15 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_draft_meta_info.json +69 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_combination_segment.json +84 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_combination_video_material.json +98 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_draft.json +204 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_material_video.json +83 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_meta_material_value.json +23 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_project_info.json +133 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_segment.json +70 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_jy_text_styles.json +30 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_yj_material_audio.json +41 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/jianying/empty_yj_material_text.json +109 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/narration-adoption.md +103 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/packaging.md +45 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/pair-media.md +74 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/source-score.md +147 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/references/subtitle-track.md +202 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/adoption/__init__.py +1 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/adoption/audio_mix_binding.py +279 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/adoption/frozen_audio.py +187 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/adoption/narration_binding.py +323 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/adoption/strict_inputs.py +109 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/adoption/strict_publish.py +130 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/artifacts.py +47 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/assemble.py +591 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/assemble_constants.py +51 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/assembly_contract.py +318 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/assembly_settings.py +138 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/audio_automation.py +195 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/audio_mix.py +465 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/compose_foreground.py +293 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/export_jianying.py +254 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/__init__.py +1 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/builders.py +718 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/model.py +105 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/optional.py +23 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/schema.py +53 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/templates.py +37 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/timeline_contract.py +223 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/tracks.py +72 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/jianying/writer.py +383 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/lib.py +218 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/media.py +190 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/narration_audio.py +413 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/packaging.py +122 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/pair_media.py +216 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/render_preflight.py +33 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/source_score.py +469 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/source_subtitles.py +423 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/subtitles/__init__.py +1 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/subtitles/core.py +330 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/subtitles/render.py +82 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/subtitles/track.py +324 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/subtitles/track_binding.py +200 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/timeline.py +217 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/timeline_emit.py +167 -0
- package/resources/skills/video-recap-production/upstream/skills/video-assemble/scripts/visual_render.py +448 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/SKILL.md +108 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/references/shot-review.md +50 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/cut.py +41 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/cut_cli.py +308 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/cut_contract.py +424 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/cut_render.py +304 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/lib.py +114 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/media_geometry.py +238 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/narration_mapping.py +71 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/narrative_selection.py +244 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/sentence_boundaries.py +585 -0
- package/resources/skills/video-recap-production/upstream/skills/video-cut/scripts/shot_review.py +357 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/SKILL.md +260 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/references/audio-routing.md +126 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/references/config-playbook.md +65 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/references/data-schema.md +545 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/references/resource-library.md +151 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/references/shift-left-qc-schema.md +23 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/doctor.py +556 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/final_qc.py +527 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/lib.py +220 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/library.py +509 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/materials.py +406 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/mimo_qc.py +33 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/project_binding.py +286 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/__init__.py +1 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/mimo_client.py +13 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/mimo_contract.py +9 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/mimo_evidence.py +287 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/mimo_observations.py +175 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/mimo_payload.py +206 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/mimo_report.py +318 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc/mimo_runner.py +130 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/qc_contract.py +320 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap.py +9 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_cli.py +209 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_inspect.py +452 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_review.py +70 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_runner.py +696 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_runtime.py +260 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_source.py +278 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_stage_qc.py +160 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/recap_timeline.py +621 -0
- package/resources/skills/video-recap-production/upstream/skills/video-recap/scripts/resource_lock.py +162 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/SKILL.md +251 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/references/creative-editing-playbook.md +229 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/references/promotional-copy.md +68 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/references/research-guide.md +75 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/agent_text.py +301 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/deslop_qc.py +211 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/evidence_bundle.py +440 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/lib.py +254 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/narration_lint.py +707 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/review.py +40 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/review_grounding.py +238 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/review_response.py +669 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/review_runner.py +186 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/speech_ownership.py +143 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/timeline_fusion.py +108 -0
- package/resources/skills/video-recap-production/upstream/skills/video-script/scripts/validate.py +175 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/SKILL.md +77 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/references/data-schema.md +193 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/references/prompt-templates.md +37 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/references/research-guide.md +74 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/agent_text.py +301 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/asr.py +279 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/asr_timing_evidence.py +270 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/brief.py +9 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/briefing/__init__.py +1 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/briefing/builder.py +402 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/briefing/context.py +317 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/briefing/inputs.py +268 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/briefing/timeline.py +326 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/consolidate.py +596 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/deslop_qc.py +211 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/detect.py +504 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/extract.py +62 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/lib.py +419 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/narration_lint.py +707 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/speech_ownership.py +143 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/storyboard.py +445 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/timeline_fusion.py +108 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/understand.py +9 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/understanding_brief.py +190 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/understanding_cache.py +345 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/understanding_runner.py +387 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/understanding_storyboard.py +167 -0
- package/resources/skills/video-recap-production/upstream/skills/video-understanding/scripts/vlm.py +674 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/SKILL.md +91 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/references/index-tts.md +31 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/approved_text_policy.py +123 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/dub.py +623 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/lib.py +352 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/providers/__init__.py +1 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/providers/fish_audio.py +91 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/providers/index_tts.py +184 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/tts_audio.py +102 -0
- package/resources/skills/video-recap-production/upstream/skills/video-voiceover/scripts/voiceover.py +771 -0
- package/resources/skills/viora-canvas-production/manifest.json +5 -1
- package/resources/skills/viora-canvas-production/references/story-handoff.md +49 -0
package/resources/skills/novel-game-creation/upstream/examples/jin-ping-mei/build/app/css/style.css
ADDED
|
@@ -0,0 +1,2508 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--paper: #e7dcc2;
|
|
3
|
+
--paper-light: #f3ead8;
|
|
4
|
+
--paper-dark: #cbb991;
|
|
5
|
+
--ink: #201914;
|
|
6
|
+
--ink-soft: #53463a;
|
|
7
|
+
--night: #17110e;
|
|
8
|
+
--night-soft: #2a1d18;
|
|
9
|
+
--gold: #c39a55;
|
|
10
|
+
--gold-bright: #e4bc74;
|
|
11
|
+
--cinnabar: #9d2d25;
|
|
12
|
+
--jade: #274641;
|
|
13
|
+
--honey: #9a7338;
|
|
14
|
+
--line: rgba(46, 35, 26, 0.34);
|
|
15
|
+
--serif: "Songti SC", "STSong", "Noto Serif CJK SC", "SimSun", serif;
|
|
16
|
+
--sans: "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", sans-serif;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/* 第一桩联院差事走出院门后,外部经手人可拿具体副契反向援例。 */
|
|
20
|
+
.portable-precedent-stage { align-items: stretch; }
|
|
21
|
+
.portable-precedent-panel { max-width: 760px; }
|
|
22
|
+
.precedent-cast { display: flex; gap: .75rem; align-items: end; position: absolute; left: 2rem; bottom: 2rem; z-index: 2; }
|
|
23
|
+
.precedent-cast figure { width: 116px; margin: 0; opacity: .58; filter: saturate(.6); transition: opacity .2s ease, transform .2s ease; }
|
|
24
|
+
.precedent-cast figure.speaking { opacity: 1; filter: none; transform: translateY(-8px); }
|
|
25
|
+
.precedent-cast img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border: 1px solid rgba(191, 151, 86, .5); }
|
|
26
|
+
.precedent-cast figcaption { display: grid; gap: .15rem; padding: .45rem; background: rgba(22, 15, 12, .9); color: var(--paper); }
|
|
27
|
+
.precedent-cast figcaption i { color: var(--gold); font-style: normal; }
|
|
28
|
+
.precedent-cast figcaption span { font-size: .72rem; color: var(--paper-dark); }
|
|
29
|
+
.precedent-object, .precedent-scope, .precedent-boundary article { padding: .85rem 1rem; border: 1px solid rgba(151, 99, 57, .35); color: var(--ink); background: rgba(246, 237, 215, .92); }
|
|
30
|
+
.precedent-object p { margin: 0 0 .35rem; }
|
|
31
|
+
.precedent-reply { margin: 1rem 0; padding: 1rem; border-left: 3px solid var(--gold); color: var(--ink); background: rgba(246, 237, 215, .9); }
|
|
32
|
+
.precedent-reply span { display: block; margin-bottom: .45rem; color: var(--cinnabar); font-weight: 700; }
|
|
33
|
+
.precedent-reasons, .precedent-steps { display: grid; gap: .55rem; padding-left: 1.25rem; }
|
|
34
|
+
.precedent-boundary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
|
|
35
|
+
.precedent-boundary article { display: grid; gap: .35rem; }
|
|
36
|
+
.precedent-boundary span, .precedent-scope > span { color: var(--cinnabar); font-size: .78rem; letter-spacing: .08em; }
|
|
37
|
+
.precedent-scope { display: grid; gap: .35rem; margin: 1rem 0; }
|
|
38
|
+
|
|
39
|
+
@media (max-width: 900px) {
|
|
40
|
+
.precedent-cast { position: static; order: -1; padding: .75rem 1rem 0; }
|
|
41
|
+
.portable-precedent-stage { display: flex; flex-direction: column; }
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
@media (max-width: 560px) {
|
|
45
|
+
.precedent-boundary { grid-template-columns: 1fr; }
|
|
46
|
+
.precedent-cast figure { width: 92px; }
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/* 第十九日《五封私价》:重点是五份分开的所有权,不做成又一张同声群像卡。 */
|
|
50
|
+
.five-private-prices-panel{max-width:1080px}
|
|
51
|
+
.private-price-offers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0}
|
|
52
|
+
.private-price-offers article{display:grid;grid-template-rows:84px 1fr;overflow:hidden;border:1px solid color-mix(in srgb,var(--ink) 28%,transparent);color:var(--ink);background:color-mix(in srgb,var(--paper) 90%,transparent)}
|
|
53
|
+
.private-price-offers img{width:100%;height:84px;object-fit:cover;object-position:50% 28%;filter:saturate(.78)}
|
|
54
|
+
.private-price-offers div{padding:10px}.private-price-offers span,.private-price-reply span,.private-price-counter span{font-size:.72rem;letter-spacing:.08em;color:var(--ink-soft)}
|
|
55
|
+
.private-price-offers b{display:block;margin:.25rem 0}.private-price-offers p{font-size:.82rem;line-height:1.55;margin:0}
|
|
56
|
+
.private-price-rule{padding:.75rem 1rem;border-left:3px solid var(--gold);color:var(--ink);background:color-mix(in srgb,var(--paper) 82%,transparent)}
|
|
57
|
+
.private-price-reply{display:grid;grid-template-columns:minmax(180px,30%) 1fr;gap:18px;align-items:stretch;margin:18px 0}
|
|
58
|
+
.private-price-reply figure{margin:0;min-height:330px}.private-price-reply figure img{width:100%;height:100%;object-fit:cover}.private-price-reply figcaption{margin-top:-2rem;padding:.45rem .7rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.75));position:relative}
|
|
59
|
+
.private-price-reply article{padding:18px;border:1px solid color-mix(in srgb,var(--ink) 26%,transparent);color:var(--ink);background:color-mix(in srgb,var(--paper) 92%,transparent)}
|
|
60
|
+
.private-price-reply blockquote{margin:1rem 0;padding:.8rem 1rem;border-left:3px solid var(--cinnabar);font-size:1.12rem;line-height:1.65}
|
|
61
|
+
.private-price-reply dl{margin:1rem 0}.private-price-reply dt{font-weight:700}.private-price-reply dd{margin:.35rem 0;padding-left:1rem}.private-price-reply dd::before{content:'·';margin-right:.45rem;color:var(--cinnabar)}
|
|
62
|
+
.private-price-counter{margin:18px 0;padding:18px;border:1px solid color-mix(in srgb,var(--cinnabar) 42%,transparent);color:var(--ink);background:color-mix(in srgb,var(--paper) 88%,transparent)}
|
|
63
|
+
.private-price-coalition>div,.private-price-ledger{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:18px 0}
|
|
64
|
+
.private-price-coalition figure,.private-price-ledger article{margin:0;padding:8px;border:1px solid color-mix(in srgb,var(--ink) 24%,transparent);color:var(--ink);background:color-mix(in srgb,var(--paper) 88%,transparent)}
|
|
65
|
+
.private-price-coalition figure.self-held{opacity:.68}.private-price-coalition img,.private-price-ledger img{width:100%;height:78px;object-fit:cover;object-position:50% 25%}
|
|
66
|
+
.private-price-coalition figcaption,.private-price-ledger span,.private-price-ledger b,.private-price-ledger small{display:block;margin-top:.25rem}.private-price-ledger small{font-size:.7rem;color:var(--ink-soft)}
|
|
67
|
+
@media(max-width:900px){.private-price-offers,.private-price-coalition>div,.private-price-ledger{grid-template-columns:repeat(2,minmax(0,1fr))}.private-price-reply{grid-template-columns:1fr}.private-price-reply figure{min-height:220px;max-height:320px}}
|
|
68
|
+
|
|
69
|
+
* { box-sizing: border-box; }
|
|
70
|
+
.sr-only { position: fixed !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
|
|
71
|
+
html, body { margin: 0; width: 100%; height: 100%; background: #100d0b; }
|
|
72
|
+
body {
|
|
73
|
+
min-width: 0;
|
|
74
|
+
overflow: hidden;
|
|
75
|
+
color: var(--ink);
|
|
76
|
+
font-family: var(--serif);
|
|
77
|
+
user-select: none;
|
|
78
|
+
}
|
|
79
|
+
button, input { font: inherit; }
|
|
80
|
+
button { color: inherit; }
|
|
81
|
+
button:focus-visible { outline: 2px solid var(--gold-bright); outline-offset: 2px; }
|
|
82
|
+
#app { width: 100vw; height: 100vh; position: relative; overflow: hidden; }
|
|
83
|
+
|
|
84
|
+
#app::after {
|
|
85
|
+
content: "";
|
|
86
|
+
position: fixed;
|
|
87
|
+
inset: 0;
|
|
88
|
+
pointer-events: none;
|
|
89
|
+
z-index: 1000;
|
|
90
|
+
opacity: .06;
|
|
91
|
+
background-image:
|
|
92
|
+
repeating-linear-gradient(0deg, rgba(56, 41, 28, .06) 0, rgba(56, 41, 28, .06) 1px, transparent 1px, transparent 4px),
|
|
93
|
+
radial-gradient(circle at 12% 20%, rgba(255,255,255,.16), transparent 22%),
|
|
94
|
+
radial-gradient(circle at 80% 76%, rgba(30,15,8,.15), transparent 30%);
|
|
95
|
+
mix-blend-mode: multiply;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.loading, .fatal-card {
|
|
99
|
+
position: absolute;
|
|
100
|
+
inset: 0;
|
|
101
|
+
display: grid;
|
|
102
|
+
place-content: center;
|
|
103
|
+
text-align: center;
|
|
104
|
+
background: var(--paper);
|
|
105
|
+
padding: 3rem;
|
|
106
|
+
}
|
|
107
|
+
.fatal-card h1 { font-size: 2.2rem; }
|
|
108
|
+
.fatal-card p { max-width: 46rem; line-height: 1.8; }
|
|
109
|
+
|
|
110
|
+
.eyebrow {
|
|
111
|
+
margin: 0 0 .55rem;
|
|
112
|
+
color: var(--gold-bright);
|
|
113
|
+
font-family: var(--sans);
|
|
114
|
+
font-size: .72rem;
|
|
115
|
+
font-weight: 700;
|
|
116
|
+
letter-spacing: .18em;
|
|
117
|
+
text-transform: uppercase;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/* 年龄门 */
|
|
121
|
+
.age-gate {
|
|
122
|
+
--age-safe-inline: min(36rem, 64vw);
|
|
123
|
+
width: 100%;
|
|
124
|
+
height: 100%;
|
|
125
|
+
display: flex;
|
|
126
|
+
flex-direction: column;
|
|
127
|
+
align-items: center;
|
|
128
|
+
justify-content: center;
|
|
129
|
+
padding: 4rem;
|
|
130
|
+
color: #eee3ce;
|
|
131
|
+
text-align: center;
|
|
132
|
+
background:
|
|
133
|
+
linear-gradient(rgba(22,16,13,.82), rgba(22,16,13,.92)),
|
|
134
|
+
url('../assets/bg/compound_new_guofeng.webp') center/cover;
|
|
135
|
+
}
|
|
136
|
+
.age-gate::before {
|
|
137
|
+
content: "";
|
|
138
|
+
position: absolute;
|
|
139
|
+
top: 50%;
|
|
140
|
+
left: 50%;
|
|
141
|
+
width: min(82vw, 72rem);
|
|
142
|
+
height: min(84vh, 44rem);
|
|
143
|
+
transform: translate(-50%, -50%);
|
|
144
|
+
pointer-events: none;
|
|
145
|
+
border: 1px solid rgba(215,181,113,.28);
|
|
146
|
+
box-shadow: inset 0 0 0 10px rgba(16,12,10,.55), inset 0 0 0 11px rgba(215,181,113,.16);
|
|
147
|
+
}
|
|
148
|
+
.age-gate > * {
|
|
149
|
+
position: relative;
|
|
150
|
+
z-index: 1;
|
|
151
|
+
max-inline-size: var(--age-safe-inline);
|
|
152
|
+
}
|
|
153
|
+
.age-gate h1 { margin: .4rem 0 .8rem; font-size: clamp(2rem, 4vw, 4rem); letter-spacing: .15em; }
|
|
154
|
+
.age-gate p:not(.eyebrow) {
|
|
155
|
+
inline-size: var(--age-safe-inline);
|
|
156
|
+
min-inline-size: 0;
|
|
157
|
+
margin: 0 0 1.6rem;
|
|
158
|
+
font-family: var(--sans);
|
|
159
|
+
line-height: 1.9;
|
|
160
|
+
color: #cdbfa8;
|
|
161
|
+
overflow-wrap: anywhere;
|
|
162
|
+
text-wrap: pretty;
|
|
163
|
+
}
|
|
164
|
+
.age-seal {
|
|
165
|
+
width: 78px;
|
|
166
|
+
height: 78px;
|
|
167
|
+
/* 唯一可压缩的 flex 子项:不锁死会在 200% 文字缩放下被压扁成矩形来换取"不溢出"。 */
|
|
168
|
+
flex: none;
|
|
169
|
+
display: grid;
|
|
170
|
+
place-content: center;
|
|
171
|
+
margin-bottom: 1.4rem;
|
|
172
|
+
border: 3px double #bd493c;
|
|
173
|
+
color: #d45b4c;
|
|
174
|
+
font: 800 1.35rem/1 var(--sans);
|
|
175
|
+
transform: rotate(-4deg);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/* 通用按钮 */
|
|
179
|
+
.button-row, .title-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
|
|
180
|
+
.ink-button {
|
|
181
|
+
min-width: 9rem;
|
|
182
|
+
border: 1px solid rgba(210,181,124,.55);
|
|
183
|
+
background: rgba(30,23,19,.64);
|
|
184
|
+
color: #e9dcc3;
|
|
185
|
+
padding: .78rem 1.35rem;
|
|
186
|
+
letter-spacing: .12em;
|
|
187
|
+
cursor: pointer;
|
|
188
|
+
transition: background .18s, transform .18s, border-color .18s;
|
|
189
|
+
}
|
|
190
|
+
.ink-button:hover:not(:disabled) { background: rgba(157,45,37,.65); border-color: #d28c74; transform: translateY(-2px); }
|
|
191
|
+
.ink-button.primary { background: var(--cinnabar); border-color: #ce7a67; box-shadow: 0 10px 28px rgba(80,16,12,.28); }
|
|
192
|
+
.ink-button.story-continue { min-width: 0; padding: .6rem .1rem .28rem; border: 0; color: #d9bc87; background: transparent; box-shadow: none; }
|
|
193
|
+
.ink-button.story-continue::after { content: " →"; color: #9e7650; }
|
|
194
|
+
.ink-button.story-continue:hover:not(:disabled) { color: #f0d7a4; background: transparent; transform: translateX(3px); }
|
|
195
|
+
.ink-button:disabled, .choice-button:disabled, .choice-button[aria-disabled="true"] { cursor: not-allowed; filter: grayscale(.85); opacity: .48; }
|
|
196
|
+
.plain-button {
|
|
197
|
+
border: 1px solid rgba(225,206,167,.3);
|
|
198
|
+
background: rgba(22,17,14,.62);
|
|
199
|
+
color: #decfb4;
|
|
200
|
+
padding: .46rem .7rem;
|
|
201
|
+
cursor: pointer;
|
|
202
|
+
}
|
|
203
|
+
.plain-button:hover { border-color: var(--gold); color: #fff0ce; }
|
|
204
|
+
|
|
205
|
+
/* 标题 */
|
|
206
|
+
/* 标题屏与 visit/night/morning 用同一条规矩:整版单图 + 斜向 scrim,
|
|
207
|
+
不做 59%/41% 的对接分栏——那正是 P0-1 那条贯穿全屏的硬边。
|
|
208
|
+
标题图右三分之一本身就是漆黑的,题字栏落在它上面。 */
|
|
209
|
+
.title-screen { position: relative; width: 100%; height: 100%; display: grid; grid-template-columns: 56% 44%; background: var(--night); color: #eee3d0; }
|
|
210
|
+
.title-art {
|
|
211
|
+
position: absolute;
|
|
212
|
+
inset: 0;
|
|
213
|
+
background-size: cover;
|
|
214
|
+
background-position: 50% center;
|
|
215
|
+
filter: saturate(.82) contrast(1.06);
|
|
216
|
+
}
|
|
217
|
+
.title-art::after {
|
|
218
|
+
content: "";
|
|
219
|
+
position: absolute;
|
|
220
|
+
inset: 0;
|
|
221
|
+
background: linear-gradient(100deg, transparent 38%, rgba(12,8,7,.72) 62%, var(--night) 84%), linear-gradient(0deg, rgba(12,8,7,.45), transparent 50%);
|
|
222
|
+
}
|
|
223
|
+
.title-copy {
|
|
224
|
+
position: relative;
|
|
225
|
+
grid-column: 2;
|
|
226
|
+
display: flex;
|
|
227
|
+
flex-direction: column;
|
|
228
|
+
justify-content: center;
|
|
229
|
+
padding: 7vh 5vw 6vh 3.6vw;
|
|
230
|
+
background: radial-gradient(circle at 15% 45%, rgba(113,56,37,.2), transparent 38%);
|
|
231
|
+
}
|
|
232
|
+
.title-copy::before {
|
|
233
|
+
content: "风\A月\A总\A账";
|
|
234
|
+
white-space: pre;
|
|
235
|
+
position: absolute;
|
|
236
|
+
right: 3.2vw;
|
|
237
|
+
top: 5vh;
|
|
238
|
+
color: rgba(208,178,116,.08);
|
|
239
|
+
font-size: 8vh;
|
|
240
|
+
line-height: 1.04;
|
|
241
|
+
letter-spacing: .03em;
|
|
242
|
+
}
|
|
243
|
+
.title-copy h1 { margin: 0 0 .7rem; font-size: clamp(2.6rem, 4.1vw, 5.3rem); font-weight: 700; letter-spacing: .08em; line-height: 1.08; }
|
|
244
|
+
.title-subtitle { margin: 0 0 1.5rem; color: var(--gold-bright); font-size: clamp(1.05rem, 1.35vw, 1.55rem); line-height: 1.6; }
|
|
245
|
+
.identity-line { max-width: 34rem; margin: 0 0 2rem; padding-left: 1rem; border-left: 3px solid var(--cinnabar); color: #d7c8ad; font: 1rem/1.9 var(--sans); }
|
|
246
|
+
.title-actions { margin-bottom: 1.5rem; }
|
|
247
|
+
.title-actions .ink-button { min-width: 7.5rem; }
|
|
248
|
+
.rating-line { color: #ba8b7a; font: .78rem/1.6 var(--sans); letter-spacing: .06em; }
|
|
249
|
+
.save-note { color: #796f62; font: .72rem/1.6 var(--sans); }
|
|
250
|
+
|
|
251
|
+
/* 游戏框架 */
|
|
252
|
+
.game-shell { width: 100%; height: 100%; display: grid; grid-template-rows: 60px 1fr; background: var(--night); }
|
|
253
|
+
.topbar {
|
|
254
|
+
position: relative;
|
|
255
|
+
z-index: 50;
|
|
256
|
+
display: grid;
|
|
257
|
+
grid-template-columns: minmax(180px,auto) 1fr auto;
|
|
258
|
+
align-items: stretch;
|
|
259
|
+
border-bottom: 1px solid rgba(209,177,113,.35);
|
|
260
|
+
color: #e9dcc6;
|
|
261
|
+
background: linear-gradient(90deg, #17110e, #2a1c17 55%, #17110e);
|
|
262
|
+
box-shadow: 0 7px 28px rgba(0,0,0,.32);
|
|
263
|
+
}
|
|
264
|
+
.day-mark { display: flex; flex-direction: column; justify-content: center; padding: 0 1.15rem; border-right: 1px solid rgba(209,177,113,.2); }
|
|
265
|
+
.day-mark b { color: var(--gold-bright); letter-spacing: .13em; }
|
|
266
|
+
.day-mark span { margin-top: .22rem; color: #9f907d; font: .72rem var(--sans); }
|
|
267
|
+
.resource-chip { display: flex; align-items: center; gap: .36rem; min-width: 62px; font-family: var(--sans); }
|
|
268
|
+
.resource-chip span { width: 25px; height: 25px; display: grid; place-content: center; border: 1px solid currentColor; transform: rotate(-2deg); font-size: .7rem; }
|
|
269
|
+
.resource-chip b { font-size: .8rem; white-space: nowrap; }
|
|
270
|
+
.resource-chip.silver, .resource-chip.repute { color: #d4b06c; }
|
|
271
|
+
.resource-chip.power, .resource-chip.house { color: #8db2a5; }
|
|
272
|
+
.resource-chip.exposure, .resource-chip.strain { color: #c46e60; }
|
|
273
|
+
.hud-notice { align-self: center; justify-self: center; margin: 0; padding: .34rem .7rem; border-left: 2px solid rgba(202,169,107,.42); color: #9d8f7c; font: .7rem var(--sans); letter-spacing: .08em; }
|
|
274
|
+
.hud-notice:empty { visibility: hidden; }
|
|
275
|
+
.hud-notice.watch { border-color: #9c7655; color: #c3a27e; }
|
|
276
|
+
.hud-notice.urgent { border-color: #ad4e42; color: #d79280; background: rgba(115,43,34,.14); }
|
|
277
|
+
.top-actions { display: flex; align-items: center; gap: .4rem; padding: 0 .85rem; }
|
|
278
|
+
.roster-button { display: inline-block; }
|
|
279
|
+
.top-actions #btn-mute { padding-inline: .38rem; border-color: transparent; color: #837665; background: transparent; }
|
|
280
|
+
.play-area { min-height: 0; display: grid; grid-template-columns: minmax(0,1fr); }
|
|
281
|
+
|
|
282
|
+
/* 人物账 */
|
|
283
|
+
.relation-rail {
|
|
284
|
+
position: relative;
|
|
285
|
+
z-index: 20;
|
|
286
|
+
display: flex;
|
|
287
|
+
flex-direction: column;
|
|
288
|
+
gap: .38rem;
|
|
289
|
+
min-height: 0;
|
|
290
|
+
padding: .62rem .68rem;
|
|
291
|
+
border-right: 1px solid rgba(216,181,111,.24);
|
|
292
|
+
color: #e7dbc7;
|
|
293
|
+
background: linear-gradient(180deg, #211713, #160f0d);
|
|
294
|
+
}
|
|
295
|
+
.relation-card { position: relative; padding: .46rem .58rem .44rem; border: 1px solid rgba(224,202,162,.22); background: rgba(236,222,194,.055); overflow: hidden; }
|
|
296
|
+
.relation-card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--gold); }
|
|
297
|
+
.relation-pan_jinlian::before { background: #aa3d30; }
|
|
298
|
+
.relation-li_pinger::before { background: #c59e57; }
|
|
299
|
+
.relation-meng_yulou::before { background: #6f9b8c; }
|
|
300
|
+
.relation-sun_xuee::before { background: #a56c42; }
|
|
301
|
+
.relation-name { display: flex; align-items: center; gap: .62rem; }
|
|
302
|
+
.shape-mark { width: 28px; height: 28px; display: grid; place-content: center; border: 1px solid rgba(231,208,163,.55); color: var(--gold-bright); font-size: .72rem; font-weight: 700; }
|
|
303
|
+
.relation-pan_jinlian .shape-mark { clip-path: polygon(14% 0,100% 0,86% 100%,0 100%); }
|
|
304
|
+
.relation-li_pinger .shape-mark { border-radius: 45%; }
|
|
305
|
+
.relation-meng_yulou .shape-mark { transform: rotate(45deg); }
|
|
306
|
+
.relation-meng_yulou .shape-mark::first-letter { transform: rotate(-45deg); }
|
|
307
|
+
.relation-sun_xuee .shape-mark { border-radius: 3px 3px 50% 50%; }
|
|
308
|
+
.relation-name b { display: block; letter-spacing: .08em; }
|
|
309
|
+
.relation-name small { display: block; margin-top: .15rem; color: #8e806f; font: .66rem var(--sans); }
|
|
310
|
+
.relation-tiers { display: grid; grid-template-columns: repeat(3,1fr); gap: .2rem; margin: .34rem 0 .28rem; }
|
|
311
|
+
.relation-tiers span { position: relative; display: flex; flex-direction: column; color: #807463; font: .62rem var(--sans); }
|
|
312
|
+
.relation-tiers b { margin-top: .12rem; color: #d8c6a8; font-size: .75rem; }
|
|
313
|
+
/* 刚跨档的那一格:700ms 微亮 + 一枚朱印,一次性提示。
|
|
314
|
+
任意一帧都必须能读清字——不用 blur,起始不透明度不低于 .75。
|
|
315
|
+
prefers-reduced-motion 下全局规则关掉动画,只留朱印。 */
|
|
316
|
+
.relation-tiers span[data-changed] b { animation: tier-ink .7s ease-out; }
|
|
317
|
+
/* 朱印贴在被改那格的档位字右侧,不再绝对定位到格缘——
|
|
318
|
+
贴右缘会看上去像标在右边那一格上。 */
|
|
319
|
+
.relation-tiers span[data-changed] b::after {
|
|
320
|
+
content: "";
|
|
321
|
+
display: inline-block;
|
|
322
|
+
width: .52em;
|
|
323
|
+
height: .52em;
|
|
324
|
+
margin-left: .38em;
|
|
325
|
+
background: var(--cinnabar);
|
|
326
|
+
box-shadow: 0 0 0 1px rgba(216,90,72,.45), 0 1px 3px rgba(0,0,0,.4);
|
|
327
|
+
transform: rotate(-4deg);
|
|
328
|
+
}
|
|
329
|
+
@keyframes tier-ink {
|
|
330
|
+
from { opacity: .78; color: #f0dfba; text-shadow: 0 0 10px rgba(228,188,116,.9); }
|
|
331
|
+
to { opacity: 1; color: #d8c6a8; text-shadow: none; }
|
|
332
|
+
}
|
|
333
|
+
.relation-card p { display: -webkit-box; margin: 0; min-height: 0; overflow: hidden; color: #948776; font: .63rem/1.4 var(--sans); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
|
|
334
|
+
.relation-habit { display: block; margin: .26rem 0 .22rem; overflow: hidden; color: #887d6e; font: .56rem/1.25 var(--sans); text-overflow: ellipsis; white-space: nowrap; }
|
|
335
|
+
.relation-habit.settled { color: #c2a56f; }
|
|
336
|
+
.bond-board { padding: .48rem .58rem; border: 1px solid rgba(111,155,140,.22); background: rgba(39,70,65,.12); font-family: var(--sans); }
|
|
337
|
+
.bond-board header { display: flex; justify-content: space-between; gap: .4rem; margin-bottom: .28rem; color: #9fbcb2; font-size: .62rem; }
|
|
338
|
+
.bond-board header span { color: #756f63; font-size: .56rem; }
|
|
339
|
+
.bond-board > div { display: grid; grid-template-columns: 1fr auto; gap: .35rem; align-items: center; min-height: 18px; color: #9a8d7a; font-size: .57rem; }
|
|
340
|
+
.bond-board > div b { color: #d1c2a8; font-weight: 500; }
|
|
341
|
+
.harem-outlook { padding: .65rem .72rem; border: 1px solid rgba(206,161,91,.34); background: linear-gradient(135deg,rgba(113,54,43,.18),rgba(46,78,68,.15)); font-family: var(--sans); }
|
|
342
|
+
.harem-outlook header { display: flex; justify-content: space-between; gap: .6rem; color: #d2ad70; font-size: .7rem; }
|
|
343
|
+
.harem-outlook header span { color: #9f927f; font-size: .62rem; }
|
|
344
|
+
.harem-outlook p { margin: .45rem 0 0; color: #d8cbb7; font: .75rem/1.5 var(--sans); }
|
|
345
|
+
.obligation-board { display:grid; gap:.38rem; padding:.65rem .72rem; border:1px solid rgba(190,123,82,.36); background:linear-gradient(135deg,rgba(91,35,25,.2),rgba(41,29,22,.2)); font-family:var(--sans); }
|
|
346
|
+
.obligation-board > header { display:flex; justify-content:space-between; gap:.6rem; color:#dbac87; font-size:.7rem; }
|
|
347
|
+
.obligation-board > header span { color:#a68b77; font-size:.62rem; }
|
|
348
|
+
.obligation-board article { display:grid; gap:.22rem; padding:.5rem .58rem; border-left:2px solid #a88559; background:rgba(0,0,0,.18); }
|
|
349
|
+
.obligation-board article[data-obligation-type="favor"] { border-left-color:#c66f53; }
|
|
350
|
+
.obligation-board article[data-obligation-type="cooldown"] { border-left-color:#a74239; }
|
|
351
|
+
.obligation-board article[data-obligation-status="due"],.obligation-board article[data-obligation-status="overdue"] { box-shadow:inset 0 0 0 1px rgba(194,75,57,.22); }
|
|
352
|
+
.obligation-board article > div { display:flex; justify-content:space-between; gap:.5rem; color:#a8957d; font-size:.59rem; }
|
|
353
|
+
.obligation-board article > div em { color:#c88f72; font-style:normal; }
|
|
354
|
+
.obligation-board article > b { color:#e0ccb0; font-size:.76rem; font-weight:600; }
|
|
355
|
+
.obligation-board article > p,.obligation-board.empty > p { margin:0; color:#a99a84; font:.66rem/1.5 var(--sans); }
|
|
356
|
+
.obligation-board > small { color:#897b68; font:.56rem var(--sans); text-align:right; }
|
|
357
|
+
.obligation-board.compact { gap:.24rem; padding:.42rem .5rem; }
|
|
358
|
+
.obligation-board.compact > header { font-size:.62rem; }
|
|
359
|
+
.obligation-board.compact > header span { font-size:.55rem; }
|
|
360
|
+
.obligation-board.compact article { gap:.1rem; padding:.3rem .4rem; }
|
|
361
|
+
.obligation-board.compact article > div { font-size:.53rem; }
|
|
362
|
+
.obligation-board.compact article > b { overflow:hidden; font-size:.62rem; text-overflow:ellipsis; white-space:nowrap; }
|
|
363
|
+
.bond-board.all-pairs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .18rem .8rem; }
|
|
364
|
+
.bond-board.all-pairs header { grid-column: 1/-1; }
|
|
365
|
+
.household-roster { padding: .65rem .7rem .55rem; border-top: 1px solid rgba(216,181,111,.2); background: rgba(0,0,0,.12); }
|
|
366
|
+
.household-roster > p { margin: 0 0 .42rem; color: #897d6b; font: .64rem var(--sans); letter-spacing: .18em; }
|
|
367
|
+
.household-row { display: grid; grid-template-columns: 24px 54px 1fr; align-items: center; min-height: 28px; color: #b8aa93; font: .66rem var(--sans); }
|
|
368
|
+
.household-row > span { width: 20px; height: 20px; display: grid; place-content: center; border: 1px solid rgba(209,177,113,.32); color: #cdb37f; font-size: .58rem; }
|
|
369
|
+
.household-row b { color: #d4c5ad; font-weight: 500; }
|
|
370
|
+
.household-row small { color: #7f7464; font-size: .62rem; text-align: right; }
|
|
371
|
+
|
|
372
|
+
/* 账簿页:人物账与宅中人之间的中段,state.history 最近 4 条竖排墨字,新条目渗入。 */
|
|
373
|
+
.ledger-book {
|
|
374
|
+
flex: 1;
|
|
375
|
+
min-height: 3.2rem;
|
|
376
|
+
display: flex;
|
|
377
|
+
justify-content: flex-end;
|
|
378
|
+
gap: 1rem;
|
|
379
|
+
padding: .7rem .4rem;
|
|
380
|
+
border-top: 1px solid rgba(216,181,111,.16);
|
|
381
|
+
border-bottom: 1px solid rgba(216,181,111,.12);
|
|
382
|
+
overflow: hidden;
|
|
383
|
+
}
|
|
384
|
+
.ledger-line {
|
|
385
|
+
writing-mode: vertical-rl;
|
|
386
|
+
margin: 0;
|
|
387
|
+
max-height: 100%;
|
|
388
|
+
overflow: hidden;
|
|
389
|
+
color: #9d8f78;
|
|
390
|
+
font: .7rem/1.6 var(--serif);
|
|
391
|
+
letter-spacing: .08em;
|
|
392
|
+
}
|
|
393
|
+
.ledger-line b { color: #c8a75f; font-weight: 700; }
|
|
394
|
+
.ledger-line[data-fresh] { color: #e6d6b6; animation: ledger-ink .9s ease-out; }
|
|
395
|
+
.ledger-empty { margin: auto; writing-mode: vertical-rl; color: #5f564a; font: .68rem var(--sans); letter-spacing: .2em; }
|
|
396
|
+
@keyframes ledger-ink {
|
|
397
|
+
from { opacity: .78; transform: translateY(-5px); }
|
|
398
|
+
to { opacity: 1; transform: none; }
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
.phase-stage { position: relative; min-width: 0; min-height: 0; overflow: hidden; background: #2c251d; }
|
|
402
|
+
.visual-stage { position: absolute; inset: 0; overflow: hidden; }
|
|
403
|
+
.visual-stage::before { content: ""; position: absolute; inset: 0; background-image: var(--scene-bg); background-position: center; background-size: cover; filter: saturate(.88) contrast(1.03); }
|
|
404
|
+
.visual-stage::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(18,12,9,.14), rgba(18,12,9,.32)); }
|
|
405
|
+
.phase-header { position: relative; }
|
|
406
|
+
.phase-header h2 { margin: 0 0 .65rem; color: #f0e4cf; font-size: clamp(1.45rem, 2.3vw, 2.5rem); letter-spacing: .08em; }
|
|
407
|
+
.phase-header > p:last-child { max-width: 32rem; margin: 0; color: #c9baa3; font: .9rem/1.75 var(--sans); text-wrap: pretty; }
|
|
408
|
+
.phase-lead { margin: .8rem 0; color: #d9c49c; font: .78rem/1.6 var(--sans); }
|
|
409
|
+
/* 晨间结转报条:用度、催账都落在这行现场画面上,墨边一杠与正文分开。 */
|
|
410
|
+
.morning-note { margin: .55rem 0 0; padding-left: .6rem; border-left: 2px solid rgba(224,198,146,.42); color: #d9c49c; font: .8rem/1.6 var(--sans); }
|
|
411
|
+
/* 催账的早晨:门前画面压在报条上方,取院门那一带的横条,人在门外站着。 */
|
|
412
|
+
.morning-scene { margin: .7rem 0 .1rem; height: 6.2rem; border: 1px solid rgba(224,198,146,.3); background-position: center 38%; background-size: 118%; background-repeat: no-repeat; filter: saturate(.92); }
|
|
413
|
+
.decision-panel { position: absolute; z-index: 5; border: 1px solid rgba(224,198,146,.32); color: #eee1cc; background: linear-gradient(150deg, rgba(25,18,15,.94), rgba(42,27,22,.91)); box-shadow: 0 18px 45px rgba(0,0,0,.3); }
|
|
414
|
+
|
|
415
|
+
/* 开场 */
|
|
416
|
+
.opening-scene::before { background-position: center; filter: saturate(.78) brightness(.76); }
|
|
417
|
+
.opening-scene::after { background: linear-gradient(90deg, rgba(18,10,8,.1), transparent 48%, rgba(18,10,8,.35)), linear-gradient(0deg, rgba(16,10,8,.76), transparent 64%); }
|
|
418
|
+
.opening-panel { left: 50%; bottom: 3.5%; width: min(780px, 70%); transform: translateX(-50%); padding: 1.35rem 1.55rem; }
|
|
419
|
+
.speaker-line { margin: .7rem 0 1rem; color: #bda98c; font: .8rem var(--sans); }
|
|
420
|
+
.opening-aftermath-stage { overflow:hidden; background:radial-gradient(circle at 76% 24%,#49352c,#140d0b 72%); }
|
|
421
|
+
.opening-aftermath-stage::after { background:linear-gradient(90deg,rgba(14,9,8,.99) 0%,rgba(14,9,8,.9) 50%,rgba(14,9,8,.12) 79%),linear-gradient(0deg,rgba(59,34,22,.28),transparent 64%); }
|
|
422
|
+
.opening-aftermath-panel { z-index:5; left:3.5%; top:50%; bottom:auto; width:50%; max-height:92%; padding:1.2rem 1.3rem; overflow:clip; border-color:rgba(203,164,103,.55); transform:translateY(-50%); }
|
|
423
|
+
.opening-aftermath-cast { position:absolute; z-index:3; inset:3% 2% 3% 55%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(3,minmax(0,1fr)); gap:.36rem; }
|
|
424
|
+
.opening-aftermath-cast figure { position:relative; min-width:0; min-height:0; margin:0; overflow:hidden; border:1px solid rgba(195,160,102,.24); background:#17100d; transition:filter .3s ease,transform .3s ease,opacity .3s ease; }
|
|
425
|
+
.opening-aftermath-cast figure:last-child { grid-column:1/-1; }
|
|
426
|
+
.opening-aftermath-cast figure.listening { opacity:.58; filter:saturate(.5); transform:translateY(1.5%); }
|
|
427
|
+
.opening-aftermath-cast figure.speaking { z-index:2; border-color:rgba(214,176,111,.68); box-shadow:0 12px 35px rgba(0,0,0,.35); }
|
|
428
|
+
.opening-aftermath-cast img { width:100%; height:100%; object-fit:cover; object-position:50% 15%; filter:saturate(.7) brightness(.66); }
|
|
429
|
+
.opening-aftermath-cast figure.speaking img { filter:saturate(.95) brightness(.82); }
|
|
430
|
+
.opening-aftermath-cast figcaption { position:absolute; inset:auto 0 0; padding:1.7rem .48rem .4rem; color:#d9c39d; background:linear-gradient(transparent,rgba(12,8,7,.96) 48%); }
|
|
431
|
+
.opening-aftermath-cast i,.opening-aftermath-cast b,.opening-aftermath-cast small { display:block; }
|
|
432
|
+
.opening-aftermath-cast i { color:#a38458; font:.55rem var(--sans); }
|
|
433
|
+
.opening-aftermath-cast b { margin-top:.08rem; font-size:.72rem; }
|
|
434
|
+
.opening-aftermath-cast small { margin-top:.12rem; color:#958671; font:.5rem/1.35 var(--sans); }
|
|
435
|
+
.opening-origin { display:grid; gap:.16rem; margin:.58rem 0; padding:.52rem .62rem; border-left:2px solid var(--gold); background:rgba(0,0,0,.2); }
|
|
436
|
+
.opening-origin span { color:#8f7c61; font:.55rem var(--sans); letter-spacing:.1em; }
|
|
437
|
+
.opening-origin b { color:#dbc08f; font-size:.7rem; }
|
|
438
|
+
.opening-origin small { color:#a99a84; font:.59rem/1.42 var(--sans); }
|
|
439
|
+
.opening-aftermath-voices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.35rem; margin:.55rem 0; }
|
|
440
|
+
.opening-aftermath-voices blockquote { min-width:0; margin:0; padding:.52rem .58rem; border-left:2px solid rgba(197,151,87,.72); color:#cbb99b; background:rgba(45,29,20,.34); }
|
|
441
|
+
.opening-aftermath-voices span,.opening-aftermath-voices b { display:block; }
|
|
442
|
+
.opening-aftermath-voices span { color:#8c7659; font:.51rem var(--sans); letter-spacing:.08em; }
|
|
443
|
+
.opening-aftermath-voices b { margin-top:.12rem; color:#dfc69d; font-size:.62rem; }
|
|
444
|
+
.opening-aftermath-voices p { margin:.22rem 0 0; font:.58rem/1.45 var(--sans); }
|
|
445
|
+
.opening-aftermath-transcript { display:grid; gap:.26rem; margin:.45rem 0; padding:0; list-style:none; }
|
|
446
|
+
.opening-aftermath-transcript li { display:grid; grid-template-columns:1.15rem 1fr; gap:.38rem; padding:.35rem .42rem; color:#978b78; background:rgba(0,0,0,.17); }
|
|
447
|
+
.opening-aftermath-transcript li > span { display:grid; place-items:center; width:1.05rem; height:1.05rem; border:1px solid rgba(180,145,91,.38); color:#aa8759; font:.5rem var(--sans); }
|
|
448
|
+
.opening-aftermath-transcript b { display:block; color:#c3aa80; font-size:.58rem; }
|
|
449
|
+
.opening-aftermath-transcript p { display:-webkit-box; margin:.12rem 0 0; overflow:hidden; color:#8f8371; font:.52rem/1.38 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
450
|
+
.opening-aftermath-continue { width:100%; margin-top:.35rem; }
|
|
451
|
+
.opening-memory-slip,.opening-public-echo { margin:.55rem 0; padding:.56rem .66rem; border:1px solid rgba(190,149,87,.32); border-left:2px solid #b68a52; background:linear-gradient(110deg,rgba(72,47,25,.24),rgba(0,0,0,.16)); }
|
|
452
|
+
.opening-memory-slip span,.opening-memory-slip b,.opening-public-echo span,.opening-public-echo b { display:block; }
|
|
453
|
+
.opening-memory-slip span,.opening-public-echo span { color:#967850; font:.54rem var(--sans); letter-spacing:.09em; }
|
|
454
|
+
.opening-memory-slip b,.opening-public-echo b { margin-top:.14rem; color:#d8bd8e; font:.67rem/1.35 var(--serif); }
|
|
455
|
+
.opening-memory-slip p,.opening-public-echo p { display:-webkit-box; margin:.2rem 0 0; overflow:hidden; color:#a9967b; font:.57rem/1.42 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
456
|
+
.choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
|
|
457
|
+
|
|
458
|
+
/* 白日 hub */
|
|
459
|
+
.hub-stage::before { transform: scale(1.02); }
|
|
460
|
+
.hub-stage::after { background: linear-gradient(90deg, rgba(16,12,8,.08), rgba(16,12,8,.02) 55%, rgba(16,12,8,.16)), linear-gradient(0deg, rgba(16,12,8,.42), transparent 56%); }
|
|
461
|
+
.hub-stage.evening::after { background: linear-gradient(180deg, rgba(25,12,13,.18), rgba(25,12,13,.34) 48%, rgba(10,7,6,.62)); }
|
|
462
|
+
.day-panel { left: 4%; right: auto; bottom: 4%; width: min(960px,66vw); max-height: 88%; padding: 1.2rem 1.35rem; overflow: clip; }
|
|
463
|
+
.day-context-details, .evidence-board, .joint-offers { border: 0; border-left: 2px solid rgba(194,151,86,.42); background: rgba(8,6,5,.18); font-family: var(--sans); }
|
|
464
|
+
.day-context-details { margin: .65rem 0; }
|
|
465
|
+
.day-context-details > summary, .evidence-board > summary, .joint-offers > summary { display: flex; align-items: center; gap: .75rem; padding: .44rem .58rem; color: #cbb790; cursor: pointer; list-style: none; font-size: .68rem; }
|
|
466
|
+
.day-context-details > summary::-webkit-details-marker, .evidence-board > summary::-webkit-details-marker, .joint-offers > summary::-webkit-details-marker { display: none; }
|
|
467
|
+
.day-context-details > summary::after, .evidence-board > summary::after, .joint-offers > summary::after { content: "展开"; flex: none; margin-left: auto; color: #94836d; font-size: .62rem; letter-spacing: .08em; }
|
|
468
|
+
.day-context-details[open] > summary::after, .evidence-board[open] > summary::after, .joint-offers[open] > summary::after { content: "收起"; }
|
|
469
|
+
.day-context-details > summary span, .evidence-board > summary span, .joint-offers > summary span { min-width: 0; color: #938777; font-size: .64rem; }
|
|
470
|
+
.day-context-details > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .4rem; max-height: min(34vh,300px); padding: 0 .58rem .58rem; overflow-y: auto; }
|
|
471
|
+
.day-context-details > div > aside { min-width: 0; margin: 0; }
|
|
472
|
+
.supporting-context { margin: .55rem 0; border: 0; border-left: 2px solid rgba(194,151,86,.38); color: #d6c19b; background: rgba(8,6,5,.2); font-family: var(--sans); }
|
|
473
|
+
.supporting-context > summary { display: flex; align-items: center; gap: .65rem; padding: .44rem .58rem; cursor: pointer; list-style: none; font-size: .68rem; }
|
|
474
|
+
.supporting-context > summary::-webkit-details-marker { display: none; }
|
|
475
|
+
.supporting-context > summary::after { content: "展开"; flex: none; margin-left: auto; color: #94836d; font-size: .62rem; letter-spacing: .08em; }
|
|
476
|
+
.supporting-context[open] > summary::after { content: "收起"; }
|
|
477
|
+
.supporting-context > summary span { min-width: 0; color: #938574; font-size: .64rem; }
|
|
478
|
+
.supporting-context-pages { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .4rem; max-height: min(56vh,520px); padding: 0 .55rem .55rem; overflow-y: auto; }
|
|
479
|
+
.supporting-context-pages > * { min-width: 0; margin: 0; }
|
|
480
|
+
.decision-panel:has(> .supporting-context) { overflow: clip; }
|
|
481
|
+
.decision-panel:has(> .supporting-context[open]) > :not(.phase-header):not(.supporting-context):not(.favor-progress):not(.memory-progress) { display: none; }
|
|
482
|
+
.evidence-board { margin: -.15rem 0 .6rem; border-color: rgba(101,145,132,.26); background: rgba(28,58,52,.18); }
|
|
483
|
+
.evidence-board > summary { color: #aac2b8; }
|
|
484
|
+
.evidence-board > div { display: flex; gap: .4rem; max-height: min(38vh,320px); padding: 0 .55rem .5rem; overflow: auto; }
|
|
485
|
+
.evidence-slip { flex: 0 0 min(188px,42vw); display: grid; gap: .12rem; padding: .42rem .5rem; border: 1px solid rgba(121,166,151,.3); color: #d8ccba; text-align: left; background: rgba(8,18,16,.38); cursor: pointer; }
|
|
486
|
+
.evidence-slip b { font-size: .68rem; }
|
|
487
|
+
.evidence-slip span, .evidence-slip em { color: #8f9b91; font-size: .56rem; font-style: normal; }
|
|
488
|
+
.evidence-slip.selected { border-color: #d5ae65; background: rgba(113,77,31,.28); box-shadow: inset 3px 0 #b43b31; }
|
|
489
|
+
.evidence-slip:disabled { opacity: .42; cursor: not-allowed; }
|
|
490
|
+
.evidence-pay { margin-top: .35rem; padding: .28rem .45rem; border: 0; color: #bda886; background: transparent; font: .58rem var(--sans); text-decoration: underline; cursor: pointer; }
|
|
491
|
+
.evidence-board.empty { padding-block: .3rem; }
|
|
492
|
+
.day-aftermath-stage { overflow: hidden; background: #160e0c; }
|
|
493
|
+
.day-aftermath-stage::after { background: linear-gradient(90deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.9) 48%,rgba(13,9,8,.08) 78%),linear-gradient(0deg,rgba(82,36,24,.24),transparent 62%); }
|
|
494
|
+
.day-aftermath-lead { position: absolute; z-index: 1; inset: 0 0 0 37%; background-position: center 14%; background-size: cover; filter: saturate(.78) brightness(.72) contrast(1.06); mask-image: linear-gradient(90deg,transparent 0%,#000 20%,#000 100%); }
|
|
495
|
+
.day-aftermath-panel { z-index: 6; left: 3.5%; top: 50%; bottom: auto; width: 49%; max-height: 88%; padding: 1.35rem; overflow: clip; border-color: rgba(204,152,91,.58); transform: translateY(-50%); }
|
|
496
|
+
.story-progress { display: grid; grid-template-columns: auto minmax(3rem,1fr) auto; align-items: center; gap: .55rem; margin: .8rem 0; color: #b99b6e; font: .62rem var(--sans); }
|
|
497
|
+
.story-progress i { height: 1px; background: linear-gradient(90deg,#a45039,rgba(207,169,102,.18)); }
|
|
498
|
+
.story-progress b { color: #d8c29b; font-weight: 500; letter-spacing: .1em; }
|
|
499
|
+
.day-speaker { margin: .65rem 0; padding: .72rem .82rem; border-left: 2px solid #b85f47; color: #d7c4a5; background: rgba(76,33,25,.22); font: .73rem/1.65 var(--sans); }
|
|
500
|
+
.day-speaker span { display: block; margin-bottom: .25rem; color: #d49b74; font-size: .61rem; letter-spacing: .12em; }
|
|
501
|
+
.day-aftermath-continue { margin-top: .85rem; }
|
|
502
|
+
.day-aftermath-reactions { position: absolute; z-index: 4; inset: 4% 3% 4% 54%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; align-items: stretch; }
|
|
503
|
+
.day-aftermath-reactions figure { position: relative; min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(220,188,127,.28); background: #1c1411; }
|
|
504
|
+
.day-aftermath-reactions figure:only-child { grid-column: 1 / -1; width: 58%; justify-self: end; }
|
|
505
|
+
.day-aftermath-reactions figure.accepts { border-color: rgba(107,161,139,.58); }
|
|
506
|
+
.day-aftermath-reactions figure.resists { border-color: rgba(184,87,67,.58); }
|
|
507
|
+
.day-aftermath-reactions img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 13%; filter: saturate(.68) brightness(.64); }
|
|
508
|
+
.day-aftermath-reactions figure.accepts img { filter: saturate(.82) brightness(.75); }
|
|
509
|
+
.day-aftermath-reactions figcaption { position: absolute; inset: auto 0 0; padding: 4.5rem .75rem .85rem; background: linear-gradient(transparent,rgba(13,9,8,.97) 43%); }
|
|
510
|
+
.day-aftermath-reactions span, .day-aftermath-reactions b { display: block; }
|
|
511
|
+
.day-aftermath-reactions span { color: #98b8aa; font: .58rem var(--sans); letter-spacing: .1em; }
|
|
512
|
+
.day-aftermath-reactions .resists span { color: #cf8976; }
|
|
513
|
+
.day-aftermath-reactions b { margin-top: .18rem; color: #ead8b9; font-size: .92rem; }
|
|
514
|
+
.day-aftermath-reactions p { margin: .42rem 0 0; color: #c3b294; font: .68rem/1.55 var(--sans); }
|
|
515
|
+
.day-aftermath-stage.beat-network .day-aftermath-lead { opacity: .2; filter: saturate(.45) brightness(.42); }
|
|
516
|
+
.day-aftermath-stage.beat-consequence .day-aftermath-lead { filter: saturate(.55) brightness(.5) contrast(1.12); }
|
|
517
|
+
.day-consequence { margin: .65rem 0; padding: .72rem .82rem; border: 1px solid rgba(220,188,127,.22); background: rgba(0,0,0,.24); }
|
|
518
|
+
.day-consequence span, .day-consequence b { display: block; }
|
|
519
|
+
.day-consequence span { color: #b98655; font: .6rem var(--sans); letter-spacing: .12em; }
|
|
520
|
+
.day-consequence b { margin-top: .28rem; color: #d7c6aa; font: 500 .72rem/1.55 var(--sans); }
|
|
521
|
+
.day-consequence.resolved { border-color: rgba(100,157,135,.42); background: rgba(36,77,65,.2); }
|
|
522
|
+
.day-consequence.resolved span { color: #8fbaa8; }
|
|
523
|
+
.day-consequence.missed { border-color: rgba(183,75,58,.44); background: rgba(91,30,23,.2); }
|
|
524
|
+
.day-consequence.missed span { color: #d18470; }
|
|
525
|
+
.day-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .48rem; }
|
|
526
|
+
.joint-offers { margin-top: .75rem; }
|
|
527
|
+
.joint-offers > summary { color: #d6bd8e; letter-spacing: .08em; }
|
|
528
|
+
.joint-offers > summary span { color: #8f8271; letter-spacing: .04em; }
|
|
529
|
+
.joint-offers > p { margin: .25rem 0 0; color: #9b8e7b; font: .7rem/1.45 var(--sans); }
|
|
530
|
+
.joint-offers.locked, .joint-offers.complete { padding: .65rem .72rem; border: 1px solid rgba(220,188,127,.16); background: rgba(22,17,14,.35); }
|
|
531
|
+
.joint-offers.complete { border-color: rgba(103,151,131,.28); background: rgba(38,75,66,.13); }
|
|
532
|
+
.joint-actions { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .5rem; }
|
|
533
|
+
.joint-offers > .joint-actions { max-height: min(48vh,380px); padding: 0 .55rem .55rem; overflow-y: auto; }
|
|
534
|
+
.joint-actions .choice-button { min-height: 62px; }
|
|
535
|
+
|
|
536
|
+
/* 前情是参考页,不把正在作的决定从玩家眼前拿走;证据与联院差事仍是独立操作层。 */
|
|
537
|
+
.day-panel:has(.day-context-details[open]) .evidence-board,
|
|
538
|
+
.day-panel:has(.day-context-details[open]) .joint-offers,
|
|
539
|
+
.day-panel:has(.evidence-board[open]) .day-context-details,
|
|
540
|
+
.day-panel:has(.evidence-board[open]) .day-actions,
|
|
541
|
+
.day-panel:has(.evidence-board[open]) .joint-offers,
|
|
542
|
+
.day-panel:has(.joint-offers[open]) .day-context-details,
|
|
543
|
+
.day-panel:has(.joint-offers[open]) .evidence-board,
|
|
544
|
+
.day-panel:has(.joint-offers[open]) .day-actions { display: none; }
|
|
545
|
+
|
|
546
|
+
/* 双人合办结果:先让人物在同一画面完成一件事,再回到原有白日流转。 */
|
|
547
|
+
.joint-result-stage::before { background-position: center; filter: saturate(.82) brightness(.86) contrast(1.03); }
|
|
548
|
+
.joint-result-stage::after { background: linear-gradient(0deg, rgba(12,8,7,.94), rgba(12,8,7,.12) 76%); }
|
|
549
|
+
.joint-result-panel { left: 4%; right: 4%; bottom: 4%; padding: 1.1rem 1.35rem; }
|
|
550
|
+
.joint-result-panel .phase-header > p:last-child { max-width: 64rem; }
|
|
551
|
+
.joint-story-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: .7rem 0; }
|
|
552
|
+
.joint-pair-voices { display: flex; gap: .35rem; }
|
|
553
|
+
.joint-pair-voices span { display: inline-flex; align-items: center; gap: .32rem; padding: .3rem .48rem; border: 1px solid rgba(220,188,127,.2); color: #8f8373; font: .63rem var(--sans); background: rgba(0,0,0,.22); }
|
|
554
|
+
.joint-pair-voices span.speaking { border-color: rgba(210,151,86,.68); color: #ead2ab; background: rgba(116,53,35,.26); box-shadow: inset 3px 0 #a94838; }
|
|
555
|
+
.joint-pair-voices i { display: grid; width: 1.25rem; height: 1.25rem; place-items: center; border: 1px solid currentColor; font-style: normal; }
|
|
556
|
+
.joint-story-row .joint-payoff { margin: 0; color: #b49f80; text-align: right; font: .65rem/1.5 var(--sans); }
|
|
557
|
+
.joint-result-stage.joint-beat-1::after { background: linear-gradient(90deg,rgba(12,8,7,.18),rgba(12,8,7,.04)),linear-gradient(0deg,rgba(12,8,7,.95),rgba(12,8,7,.08) 78%); }
|
|
558
|
+
.joint-result-stage.joint-beat-2::after { background: linear-gradient(270deg,rgba(80,28,22,.18),transparent 58%),linear-gradient(0deg,rgba(12,8,7,.95),rgba(12,8,7,.08) 78%); }
|
|
559
|
+
.joint-result-stage.joint-beat-3::after { background: linear-gradient(0deg,rgba(18,34,29,.94),rgba(12,8,7,.08) 78%); }
|
|
560
|
+
.joint-payoff { display: inline-block; margin: .75rem 1rem .75rem 0; padding: .45rem .65rem; border-left: 2px solid var(--gold); color: #c8b38f; font: .72rem var(--sans); }
|
|
561
|
+
|
|
562
|
+
/* 宅中短线 */
|
|
563
|
+
.household-stage::before { background-position: center; filter: saturate(.72) brightness(.78); }
|
|
564
|
+
.household-stage::after { background: linear-gradient(90deg, rgba(16,11,9,.92) 0%, rgba(16,11,9,.34) 48%, rgba(16,11,9,.03) 76%); }
|
|
565
|
+
.household-panel { left: 4%; top: 8%; width: min(620px, 51%); padding: 1.45rem; }
|
|
566
|
+
.household-panel .choice-grid { margin-top: .9rem; }
|
|
567
|
+
.household-voice { margin: .7rem 0 .6rem; color: #a99a85; font: .76rem/1.7 var(--sans); }
|
|
568
|
+
.household-standing { display: inline-block; padding: .3rem .55rem; border: 1px solid rgba(211,178,111,.28); color: #d1b677; font: .68rem var(--sans); }
|
|
569
|
+
.household-memory { margin: .7rem 0; padding: .75rem .85rem; border-left: 2px solid #b98748; color: #d4bea0; font: .74rem/1.65 var(--sans); background: rgba(83,48,24,.2); }
|
|
570
|
+
.household-memory span { display: block; margin-bottom: .28rem; color: #bd8f55; font-size: .61rem; letter-spacing: .12em; }
|
|
571
|
+
.household-sun_xuee .household-panel { border-color: rgba(150,131,96,.58); }
|
|
572
|
+
.household-li_jiaoer .household-panel { border-color: rgba(149,91,91,.6); }
|
|
573
|
+
|
|
574
|
+
/* 娇儿跨幕交易:一次报价之后仍有见证、追问和第二次真实落字。 */
|
|
575
|
+
.jiaoer-aftermath-stage::before { background-position: 68% center; filter: saturate(.72) brightness(.5) contrast(1.08); }
|
|
576
|
+
.jiaoer-aftermath-stage::after { background: linear-gradient(90deg,rgba(15,9,8,.98) 0%,rgba(15,9,8,.92) 46%,rgba(15,9,8,.18) 72%,rgba(15,9,8,.55) 100%); }
|
|
577
|
+
.jiaoer-aftermath-panel { left: 3.5%; top: 5%; bottom: 5%; width: min(650px,53%); padding: 1.25rem 1.35rem; overflow: clip; }
|
|
578
|
+
.jiaoer-aftermath-panel .phase-header > p:last-child { max-width: 43rem; }
|
|
579
|
+
.jiaoer-aftermath-cast { position: absolute; z-index: 2; inset: 6% 2.5% 6% 57%; display: flex; align-items: stretch; gap: .45rem; pointer-events: none; }
|
|
580
|
+
.jiaoer-aftermath-cast figure { position: relative; flex: 1 1 0; min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(200,163,111,.2); background: #17100e; opacity: .52; filter: grayscale(.34) saturate(.7); transform: translateY(.65rem); transition: flex .25s,opacity .25s,transform .25s,filter .25s; }
|
|
581
|
+
.jiaoer-aftermath-cast figure.speaking { flex: 1.22 1 0; opacity: 1; filter: none; transform: translateY(0); border-color: rgba(207,157,91,.72); box-shadow: 0 0 0 1px rgba(122,55,41,.5),0 16px 34px rgba(0,0,0,.42); }
|
|
582
|
+
.jiaoer-aftermath-cast img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
|
|
583
|
+
.jiaoer-aftermath-cast figure::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(12,8,7,.94),transparent 58%); }
|
|
584
|
+
.jiaoer-aftermath-cast figcaption { position:absolute; z-index:1; left:0; right:0; bottom:0; display:flex; align-items:center; gap:.32rem; padding:2.4rem .48rem .55rem; color:#d7c4a5; font:.67rem var(--sans); }
|
|
585
|
+
.jiaoer-aftermath-cast figcaption i { display:grid; place-items:center; width:1.25rem; height:1.25rem; border:1px solid currentColor; font-style:normal; color:#d6aa68; }
|
|
586
|
+
.jiaoer-aftermath-ledger { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; margin:.75rem 0 .55rem; }
|
|
587
|
+
.jiaoer-aftermath-ledger span { min-width:0; padding:.5rem .58rem; border:1px solid rgba(205,160,102,.22); border-top-color:rgba(205,160,102,.55); background:rgba(83,48,24,.18); }
|
|
588
|
+
.jiaoer-aftermath-ledger small,.jiaoer-aftermath-ledger b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
|
|
589
|
+
.jiaoer-aftermath-ledger small { color:#927c63; font:.58rem var(--sans); letter-spacing:.1em; }
|
|
590
|
+
.jiaoer-aftermath-ledger b { margin-top:.22rem; color:#d8bb87; font:.68rem var(--sans); }
|
|
591
|
+
.jiaoer-aftermath-speaker { margin:.55rem 0; padding:.45rem .6rem; border-left:2px solid #a95b48; color:#cdb89a; background:rgba(86,36,28,.2); font:.68rem/1.5 var(--sans); }
|
|
592
|
+
.jiaoer-aftermath-choices { grid-template-columns:repeat(2,minmax(0,1fr)); }
|
|
593
|
+
.jiaoer-aftermath-beat-4 .jiaoer-aftermath-panel { border-color:rgba(197,153,84,.66); }
|
|
594
|
+
.jiaoer-aftermath-beat-4 .jiaoer-aftermath-speaker { border-color:#78a08c; background:rgba(38,71,58,.22); }
|
|
595
|
+
|
|
596
|
+
.choice-button {
|
|
597
|
+
position: relative;
|
|
598
|
+
display: flex;
|
|
599
|
+
flex-direction: column;
|
|
600
|
+
align-items: flex-start;
|
|
601
|
+
min-height: 72px;
|
|
602
|
+
padding: .76rem .88rem;
|
|
603
|
+
border: 0;
|
|
604
|
+
border-left: 3px solid rgba(190,150,91,.58);
|
|
605
|
+
color: #e9dcc5;
|
|
606
|
+
text-align: left;
|
|
607
|
+
background: rgba(236,218,182,.05);
|
|
608
|
+
cursor: pointer;
|
|
609
|
+
transition: transform .16s, background .16s, border-color .16s;
|
|
610
|
+
}
|
|
611
|
+
.choice-button b { font-size: .95rem; letter-spacing: .06em; }
|
|
612
|
+
.choice-button span { margin-top: .32rem; color: #b4a48e; font: .74rem/1.5 var(--sans); }
|
|
613
|
+
.choice-button:hover:not(:disabled):not([aria-disabled="true"]) { transform: translateX(3px); border-color: rgba(226,171,104,.9); background: rgba(157,45,37,.17); }
|
|
614
|
+
.choice-button:focus-visible { outline: 0; background: rgba(157,45,37,.13); box-shadow: inset 3px 0 var(--gold-bright); }
|
|
615
|
+
.choice-button[aria-disabled="true"]:focus-visible { opacity: .72; outline: 2px solid #cfaa67; outline-offset: 3px; }
|
|
616
|
+
|
|
617
|
+
/* 拜访 hub:五条院约常驻可见;第二十夜的共同入口不藏在数字阈值后面。 */
|
|
618
|
+
.visit-prompt { position: absolute; z-index: 4; top: 3%; left: 4%; right: 4%; display: grid; grid-template-columns: minmax(0,1.1fr) minmax(350px,.9fr); gap: 1rem; padding: .85rem 1rem; color: #efe2cb; background: rgba(24,16,13,.88); border-left: 3px solid var(--cinnabar); }
|
|
619
|
+
.accord-panel { min-width: 0; padding-left: 1rem; border-left: 1px solid rgba(220,188,127,.24); }
|
|
620
|
+
.accord-heading { display: flex; align-items: center; justify-content: space-between; color: #ddc79f; font: .72rem var(--sans); letter-spacing: .12em; }
|
|
621
|
+
.accord-heading span { color: var(--gold-bright); }
|
|
622
|
+
.accord-seals { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .32rem; margin-top: .45rem; }
|
|
623
|
+
.accord-seal { display: flex; align-items: center; gap: .35rem; min-width: 0; padding: .38rem .45rem; border: 1px solid rgba(220,188,127,.2); color: #817668; font: .64rem var(--sans); background: rgba(9,7,6,.34); }
|
|
624
|
+
.accord-seal i { flex: none; display: grid; place-content: center; width: 1.25rem; height: 1.25rem; border: 1px solid currentColor; color: #766a5b; font-style: normal; }
|
|
625
|
+
.accord-seal.complete { border-color: rgba(207,72,57,.55); color: #dec39a; background: rgba(117,31,24,.18); }
|
|
626
|
+
.accord-seal.complete i { color: #d75c4d; transform: rotate(-3deg); }
|
|
627
|
+
.accord-panel > small { display: block; margin-top: .45rem; color: #908373; font: .65rem/1.4 var(--sans); }
|
|
628
|
+
.shared-invite { display: flex; width: 100%; flex-direction: column; align-items: flex-start; margin-top: .5rem; padding: .5rem .65rem; border: 1px solid rgba(216,172,95,.5); color: #ead7b7; text-align: left; background: rgba(128,43,31,.3); cursor: pointer; }
|
|
629
|
+
.shared-invite b { font-size: .78rem; letter-spacing: .1em; }
|
|
630
|
+
.shared-invite span { margin-top: .18rem; color: #b8a58a; font: .62rem/1.35 var(--sans); }
|
|
631
|
+
.shared-invite:disabled { cursor: not-allowed; border-color: rgba(216,172,95,.2); color: #8e8273; background: rgba(34,25,21,.45); }
|
|
632
|
+
.alliance-invite { border-color: rgba(91,151,137,.52); background: rgba(29,83,72,.28); }
|
|
633
|
+
.alliance-invite:not(:disabled):hover { border-color: rgba(132,193,177,.8); background: rgba(35,105,88,.36); }
|
|
634
|
+
.heroine-doors { position: absolute; z-index: 4; inset: 25% 3% 4%; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .55rem; }
|
|
635
|
+
.evening.has-shared .heroine-doors { top: 31%; }
|
|
636
|
+
.door-card { position: relative; overflow: hidden; border: 1px solid rgba(229,205,163,.44); color: #f0e2ca; text-align: left; background: linear-gradient(180deg, rgba(27,18,14,.08), rgba(21,14,12,.93)); cursor: pointer; }
|
|
637
|
+
.door-card::before { content: ""; position: absolute; inset: 7px; border: 1px solid rgba(240,214,169,.14); z-index: 2; pointer-events: none; }
|
|
638
|
+
.door-card > span { position: absolute; z-index: 3; top: .75rem; left: .8rem; padding: .3rem .5rem; background: rgba(24,16,13,.82); color: #dbc397; font-size: .72rem; letter-spacing: .12em; }
|
|
639
|
+
.door-card img { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 68% center; filter: saturate(.78) brightness(.8); transition: transform .25s, filter .25s; }
|
|
640
|
+
.door-card > div { position: absolute; z-index: 3; inset: auto 0 0; padding: 3.2rem .68rem .68rem; background: linear-gradient(transparent, rgba(16,10,8,.96) 50%); }
|
|
641
|
+
.door-card b, .door-card small, .door-card em { display: block; }
|
|
642
|
+
.door-card b { font-size: .92rem; letter-spacing: .05em; }
|
|
643
|
+
.door-card small { margin-top: .3rem; color: #b6a68d; font: .68rem/1.5 var(--sans); }
|
|
644
|
+
.door-card em { margin-top: .55rem; color: #d7b36b; font: normal .68rem var(--sans); }
|
|
645
|
+
/* 门卡上的拜访次数:让「按她的第几次走」在界面上看得见。 */
|
|
646
|
+
.door-knock { display: block; margin-top: .28rem; color: #9c8b70; font: normal .64rem var(--sans); font-style: normal; letter-spacing: .08em; }
|
|
647
|
+
.door-forecast { display:grid; gap:.16rem; margin:.34rem 0 0; padding-top:.3rem; border-top:1px solid rgba(216,181,111,.18); font-family:var(--sans); }
|
|
648
|
+
.door-forecast > div { display:grid; grid-template-columns:2.2rem minmax(0,1fr); gap:.25rem; align-items:baseline; }
|
|
649
|
+
.door-forecast dt { color:#8d7a63; font-size:.55rem; letter-spacing:.08em; }
|
|
650
|
+
.door-forecast dd { min-width:0; margin:0; overflow:hidden; color:#c8b89d; font-size:.58rem; text-overflow:ellipsis; white-space:nowrap; }
|
|
651
|
+
.door-due { display:block; margin-top:.3rem; padding:.2rem .28rem; overflow:hidden; color:#d29579; background:rgba(117,44,32,.24); font:normal .56rem var(--sans); text-overflow:ellipsis; white-space:nowrap; }
|
|
652
|
+
.door-card:hover img { transform: scale(1.035); filter: saturate(.92) brightness(.92); }
|
|
653
|
+
.door-pan_jinlian { background-color: rgba(100,26,22,.2); }
|
|
654
|
+
.door-li_pinger { background-color: rgba(132,98,44,.16); }
|
|
655
|
+
.door-meng_yulou { background-color: rgba(67,106,92,.18); }
|
|
656
|
+
.door-sun_xuee { background-color: rgba(120,69,38,.2); }
|
|
657
|
+
.door-card.complete { opacity: .58; filter: grayscale(.45); cursor: default; }
|
|
658
|
+
.door-card.cooling { opacity: .66; filter: grayscale(.35) sepia(.18); cursor: not-allowed; }
|
|
659
|
+
.door-card.cooling > span { color: #b66d60; }
|
|
660
|
+
|
|
661
|
+
/* 对话近景 */
|
|
662
|
+
.dialogue-stage { background: #211712; }
|
|
663
|
+
/* 单张整版之后,舞台级 scrim 与 CG 上的 100° 斜向 scrim 必然打架,统一撤掉。 */
|
|
664
|
+
.dialogue-stage::after, .morning-stage::after { background: none; }
|
|
665
|
+
.dialogue-panel { left: 3.5%; top: 6%; bottom: 5%; width: 40%; padding: 1.5rem; overflow: clip; }
|
|
666
|
+
.want-line { margin: .75rem 0 1rem; padding: .7rem; border-left: 2px solid var(--gold); color: #a99982; font: .74rem/1.65 var(--sans); }
|
|
667
|
+
.want-line b { color: #d8c29b; }
|
|
668
|
+
.route-branch-memory { margin: -.25rem 0 .85rem; padding: .72rem .78rem; border: 1px solid rgba(106,154,137,.34); border-left: 3px solid #6f9d8c; background: linear-gradient(100deg,rgba(38,78,66,.3),rgba(21,17,14,.2)); }
|
|
669
|
+
.route-branch-memory span,.route-branch-memory b { display: block; }
|
|
670
|
+
.route-branch-memory span { color: #91b8a8; font: .58rem/1.4 var(--sans); letter-spacing: .1em; }
|
|
671
|
+
.route-branch-memory b { margin-top: .28rem; color: #dfcfb2; font: 500 .76rem/1.45 var(--serif); }
|
|
672
|
+
.route-branch-memory p { margin: .35rem 0 0; color: #b7a992; font: .68rem/1.55 var(--sans); }
|
|
673
|
+
.route-branch-memory.branch-private { border-color: rgba(178,100,78,.4); border-left-color: #ad654e; background: linear-gradient(100deg,rgba(91,38,30,.3),rgba(21,17,14,.2)); }
|
|
674
|
+
.route-branch-memory.branch-private span { color: #d08a75; }
|
|
675
|
+
.choice-stack { display: flex; flex-direction: column; gap: .6rem; }
|
|
676
|
+
.choice-stack .choice-button { min-height: 62px; width: 100%; }
|
|
677
|
+
.consent-note { margin: .75rem 0 0; color: #9b8c78; font: .75rem/1.55 var(--sans); }
|
|
678
|
+
.night-talk-stage { overflow: hidden; background: #1a100e; }
|
|
679
|
+
.night-talk-stage::after { background: linear-gradient(96deg,rgba(13,8,7,.97) 0%,rgba(13,8,7,.9) 43%,rgba(13,8,7,.14) 68%), linear-gradient(0deg,rgba(76,35,24,.25),transparent 62%); }
|
|
680
|
+
.night-talk-cg { filter: saturate(.78) brightness(.76) contrast(1.08); transition: filter .4s ease, transform .4s ease; }
|
|
681
|
+
.night-talk-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 50%; padding: 1.35rem; overflow: clip; border-color: rgba(204,149,92,.58); }
|
|
682
|
+
.night-talk-prop { position: absolute; z-index: 4; right: 4%; bottom: 5%; width: min(180px,17vw); aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(222,184,117,.4); border-radius: 50%; color: #d5b47b; background: radial-gradient(circle,rgba(82,48,31,.92),rgba(24,15,12,.94) 68%); box-shadow: 0 20px 55px rgba(0,0,0,.55), inset 0 0 0 8px rgba(218,178,105,.04); transform: rotate(-7deg); }
|
|
683
|
+
.night-talk-prop::before { content: ""; position: absolute; inset: 12%; border: 1px solid rgba(222,184,117,.22); border-radius: 50%; }
|
|
684
|
+
.night-talk-prop span { position: relative; max-width: 5em; text-align: center; font: 1rem/1.45 var(--serif); letter-spacing: .16em; }
|
|
685
|
+
.night-talk-voice { margin: .85rem 0; padding: .78rem .9rem; border-left: 3px solid rgba(196,119,78,.72); color: #d8c5a8; background: rgba(79,40,28,.24); }
|
|
686
|
+
.night-talk-voice span, .night-talk-voice b { display: block; }
|
|
687
|
+
.night-talk-voice span { color: #b98b6f; font: .58rem var(--sans); letter-spacing: .14em; }
|
|
688
|
+
.night-talk-voice b { margin-top: .15rem; color: #efddc0; font-size: .95rem; }
|
|
689
|
+
.night-talk-voice p { margin: .45rem 0 0; font: .8rem/1.75 var(--sans); }
|
|
690
|
+
.night-talk-question { margin: .6rem 0; color: #c9ad83; font: .7rem/1.6 var(--sans); }
|
|
691
|
+
.night-talk-memory { margin: .7rem 0; padding: .65rem .75rem; border: 1px solid rgba(148,174,162,.26); background: rgba(48,70,65,.22); }
|
|
692
|
+
.night-talk-memory span { display: block; color: #9fbcaf; font: .58rem var(--sans); letter-spacing: .15em; }
|
|
693
|
+
.night-talk-memory p { margin: .35rem 0 0; color: #d4d8c9; font: .69rem/1.62 var(--sans); }
|
|
694
|
+
.night-talk-continuity { margin: .7rem 0; padding: .65rem .75rem; border-left: 3px solid #a88655; background: rgba(130,89,46,.14); }
|
|
695
|
+
.night-talk-continuity b { display: block; color: #e0c08a; font: .76rem/1.4 var(--serif); }
|
|
696
|
+
.night-talk-continuity p { margin: .3rem 0 0; color: #cbbca5; font: .66rem/1.55 var(--sans); }
|
|
697
|
+
.night-talk-continuity.continuity-reframed { border-left-color: #779e91; background: rgba(55,91,80,.18); }
|
|
698
|
+
.night-talk-continuity.continuity-reframed b { color: #add0c2; }
|
|
699
|
+
.night-talk-continuity.continuity-kept { border-left-color: #b8654d; background: rgba(111,50,39,.18); }
|
|
700
|
+
.night-talk-continue { width: 100%; }
|
|
701
|
+
.night-talk-result::after { background: linear-gradient(96deg,rgba(13,8,7,.98) 0%,rgba(13,8,7,.91) 46%,rgba(98,61,31,.12) 72%), linear-gradient(0deg,rgba(64,36,20,.3),transparent 62%); }
|
|
702
|
+
.night-talk-result-panel { border-color: rgba(218,177,103,.74); }
|
|
703
|
+
.night-result-origin { display:flex; gap:.55rem; align-items:baseline; margin:.58rem 0; padding:.42rem .55rem; border-left:2px solid #a76447; background:rgba(83,42,28,.2); }
|
|
704
|
+
.night-result-origin span { color:#9b755f; font:.56rem var(--sans); letter-spacing:.08em; }
|
|
705
|
+
.night-result-origin b { color:#dcb783; font:.7rem/1.35 var(--serif); }
|
|
706
|
+
.night-result-transcript { display:grid; gap:.36rem; margin:.58rem 0; padding:0; list-style:none; }
|
|
707
|
+
.night-result-transcript li { display:grid; grid-template-columns:1.45rem 1fr; gap:.48rem; align-items:start; padding:.46rem .54rem; border-left:1px solid rgba(185,132,76,.44); background:rgba(55,31,22,.22); }
|
|
708
|
+
.night-result-transcript li > span { display:grid; place-items:center; width:1.28rem; height:1.28rem; border:1px solid rgba(195,143,87,.36); border-radius:50%; color:#ae7659; font:.56rem var(--sans); }
|
|
709
|
+
.night-result-transcript b { display:block; color:#d0b18a; font:.65rem/1.35 var(--serif); }
|
|
710
|
+
.night-result-transcript p { display:-webkit-box; margin:.17rem 0 0; overflow:hidden; color:#9d8a75; font:.58rem/1.45 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
711
|
+
.night-talk-consequence { margin: .85rem 0; padding: .62rem .72rem; border-top: 1px solid rgba(222,184,117,.25); border-bottom: 1px solid rgba(222,184,117,.25); color: #dfbd83; text-align: center; font: .7rem/1.5 var(--sans); letter-spacing: .08em; }
|
|
712
|
+
.ordinary-night-coda::after { background: linear-gradient(96deg,rgba(13,8,7,.98) 0%,rgba(13,8,7,.9) 48%,rgba(88,52,35,.12) 76%),radial-gradient(48% 72% at 80% 18%,rgba(185,112,64,.16),transparent 72%); }
|
|
713
|
+
.ordinary-night-coda-panel { border-color: rgba(205,151,92,.7); }
|
|
714
|
+
.night-coda-context { display: grid; grid-template-columns: auto 1fr; gap: .65rem; align-items: start; margin: .8rem 0; padding: .68rem .75rem; border-left: 2px solid rgba(196,119,78,.78); color: #bfae96; background: rgba(83,43,29,.22); font: .67rem/1.58 var(--sans); }
|
|
715
|
+
.night-coda-context b { color: #e2bd84; white-space: nowrap; font: .72rem/1.45 var(--serif); }
|
|
716
|
+
.night-coda-context span { min-width: 0; }
|
|
717
|
+
.night-coda-transcript { display:grid; gap:.38rem; margin:.65rem 0; padding:0; list-style:none; }
|
|
718
|
+
.night-coda-transcript li { display:grid; grid-template-columns:1.5rem 1fr; gap:.48rem; align-items:start; padding:.48rem .55rem; border-left:1px solid rgba(188,129,82,.42); background:rgba(52,29,21,.2); }
|
|
719
|
+
.night-coda-transcript li > span { display:grid; place-items:center; width:1.35rem; height:1.35rem; border:1px solid rgba(194,143,91,.38); border-radius:50%; color:#a87759; font:.58rem var(--sans); }
|
|
720
|
+
.night-coda-transcript b { display:block; color:#c9aa86; font:.66rem/1.35 var(--serif); }
|
|
721
|
+
.night-coda-transcript p { display:-webkit-box; margin:.18rem 0 0; overflow:hidden; color:#9f8e7d; font:.58rem/1.46 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
722
|
+
.intimacy-memory { margin:.65rem 0; padding:.62rem .68rem; border:1px solid rgba(105,157,134,.34); background:linear-gradient(120deg,rgba(38,74,61,.22),rgba(0,0,0,.18)); }
|
|
723
|
+
.intimacy-memory header { display:flex; justify-content:space-between; gap:.6rem; margin-bottom:.42rem; color:#a8cabc; font:.62rem var(--sans); }
|
|
724
|
+
.intimacy-memory header span { color:#7f9b90; }
|
|
725
|
+
.intimacy-memory > div { padding:.42rem .48rem; border-left:2px solid #6f9d8b; background:rgba(0,0,0,.17); }
|
|
726
|
+
.intimacy-memory > div + div { margin-top:.32rem; }
|
|
727
|
+
.intimacy-memory small,.intimacy-memory b { display:block; }
|
|
728
|
+
.intimacy-memory small { color:#78978b; font:.55rem var(--sans); letter-spacing:.08em; }
|
|
729
|
+
.intimacy-memory b { margin-top:.16rem; color:#d4e0d8; font:.7rem/1.35 var(--serif); }
|
|
730
|
+
.intimacy-memory p { display:-webkit-box; margin:.25rem 0 0; overflow:hidden; color:#a9b9b0; font:.62rem/1.48 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
731
|
+
.intimacy-memory em { display:-webkit-box; margin:.25rem 0 0; overflow:hidden; color:#8fa59b; font:normal .58rem/1.48 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
732
|
+
.ordinary-night-memory { margin:.55rem 0; padding:.58rem .65rem; border:1px solid rgba(177,126,75,.3); border-left:2px solid #a96748; background:linear-gradient(110deg,rgba(91,48,31,.22),rgba(0,0,0,.14)); }
|
|
733
|
+
.ordinary-night-memory small,.ordinary-night-memory b { display:block; }
|
|
734
|
+
.ordinary-night-memory small { color:#a37960; font:.55rem var(--sans); letter-spacing:.08em; }
|
|
735
|
+
.ordinary-night-memory b { margin-top:.16rem; color:#e0c5a3; font:.7rem/1.35 var(--serif); }
|
|
736
|
+
.ordinary-night-memory p { display:-webkit-box; margin:.24rem 0 0; overflow:hidden; color:#bca992; font:.61rem/1.48 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
737
|
+
.night-conversation-life-memory { margin:.55rem 0; padding:.62rem .68rem; border:1px solid rgba(112,155,139,.3); border-left:2px solid #6f9b8b; background:linear-gradient(110deg,rgba(45,75,66,.24),rgba(0,0,0,.14)); }
|
|
738
|
+
.night-conversation-life-memory small,.night-conversation-life-memory b,.night-conversation-life-memory em,.night-conversation-life-memory .stake { display:block; }
|
|
739
|
+
.night-conversation-life-memory small { color:#88aa9d; font:.55rem var(--sans); letter-spacing:.08em; }
|
|
740
|
+
.night-conversation-life-memory b { margin-top:.17rem; color:#cae0d3; font:.7rem/1.35 var(--serif); }
|
|
741
|
+
.night-conversation-life-memory .stake { margin-top:.22rem; color:#c5aa78; font:.56rem/1.4 var(--sans); }
|
|
742
|
+
.night-conversation-life-memory p { display:-webkit-box; margin:.25rem 0 0; overflow:hidden; color:#adc0b6; font:.61rem/1.48 var(--sans); -webkit-line-clamp:3; -webkit-box-orient:vertical; }
|
|
743
|
+
.night-conversation-life-memory em { margin-top:.3rem; color:#86a99b; font:.56rem/1.45 var(--sans); font-style:normal; }
|
|
744
|
+
.night-talk-observer-reaction { margin:.6rem 0; padding:.58rem .68rem; border:1px solid rgba(112,155,139,.32); border-left:3px solid #6f9b8b; background:rgba(45,75,66,.22); }
|
|
745
|
+
.night-talk-observer-reaction span,.night-talk-observer-reaction b { display:block; }
|
|
746
|
+
.night-talk-observer-reaction span { color:#83a496; font:.56rem var(--sans); letter-spacing:.09em; }
|
|
747
|
+
.night-talk-observer-reaction b { margin-top:.2rem; color:#cae0d3; font:.75rem var(--serif); }
|
|
748
|
+
.night-talk-observer-reaction p { margin:.28rem 0 0; color:#adbbb3; font:.63rem/1.5 var(--sans); }
|
|
749
|
+
.night-talk-stake { margin:.58rem 0; padding:.58rem .68rem; border:1px solid rgba(197,170,120,.3); border-left:3px solid #b58d52; background:linear-gradient(110deg,rgba(92,65,31,.24),rgba(0,0,0,.15)); }
|
|
750
|
+
.night-talk-stake span,.night-talk-stake b { display:block; }
|
|
751
|
+
.night-talk-stake span { color:#a88c61; font:.56rem var(--sans); letter-spacing:.1em; }
|
|
752
|
+
.night-talk-stake b { margin-top:.2rem; color:#e2c995; font:.72rem/1.38 var(--serif); }
|
|
753
|
+
.night-talk-stake p { margin:.28rem 0 0; color:#bfae8f; font:.63rem/1.5 var(--sans); }
|
|
754
|
+
.pair-interlude-memory { margin:.55rem 0; padding:.58rem .65rem; border:1px solid rgba(111,151,131,.34); border-left:2px solid #6f9883; background:linear-gradient(110deg,rgba(35,72,58,.22),rgba(0,0,0,.14)); }
|
|
755
|
+
.pair-interlude-memory small,.pair-interlude-memory b { display:block; }
|
|
756
|
+
.pair-interlude-memory small { color:#78998a; font:.55rem var(--sans); letter-spacing:.08em; }
|
|
757
|
+
.pair-interlude-memory b { margin-top:.16rem; color:#cee0d6; font:.7rem/1.35 var(--serif); }
|
|
758
|
+
.pair-interlude-memory p { display:-webkit-box; margin:.24rem 0 0; overflow:hidden; color:#a9bcb2; font:.61rem/1.48 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
759
|
+
.aftermath-pair-memory { margin:.45rem 0; padding:.48rem .58rem; border-left:2px solid #6f9883; color:#a5baaf; font:.6rem/1.4 var(--sans); background:rgba(35,72,58,.2); }
|
|
760
|
+
.aftermath-pair-memory span,.aftermath-pair-memory b,.aftermath-pair-memory small { display:block; }
|
|
761
|
+
.aftermath-pair-memory span { color:#78998a; letter-spacing:.08em; }
|
|
762
|
+
.aftermath-pair-memory b { margin-top:.15rem; color:#cee0d6; font-size:.68rem; }
|
|
763
|
+
.aftermath-pair-memory small { margin-top:.16rem; color:#a7b9b0; line-height:1.45; }
|
|
764
|
+
.aftermath-stage { overflow: hidden; background: radial-gradient(circle at 70% 20%, #4a3025, #17100d 72%); }
|
|
765
|
+
.aftermath-stage::after { background: linear-gradient(90deg, rgba(15,10,8,.96) 0%, rgba(15,10,8,.82) 39%, rgba(15,10,8,.18) 56%, transparent 72%); }
|
|
766
|
+
.aftermath-main { position: absolute; z-index: 1; inset: 0 0 0 38%; background-position: center 14%; background-size: cover; filter: saturate(.94) brightness(.94) contrast(1.02); }
|
|
767
|
+
.aftermath-observer { position: absolute; z-index: 4; top: auto; right: 2.5%; bottom: 4%; width: min(150px,12vw); margin: 0; color: #e5d4b8; opacity: .68; }
|
|
768
|
+
.aftermath-observer img { display: block; width: 100%; aspect-ratio: 4/5; object-fit: cover; object-position: 50% 15%; filter: saturate(.86) brightness(.9); mask-image: linear-gradient(0deg,transparent 0%,#000 22%,#000 100%); }
|
|
769
|
+
.aftermath-observer figcaption { display: flex; align-items: baseline; gap: .35rem; margin-top: .18rem; }
|
|
770
|
+
.aftermath-observer figcaption span, .aftermath-observer figcaption b { display: inline; }
|
|
771
|
+
.aftermath-observer figcaption span { color: #aa936e; font: .64rem var(--sans); letter-spacing: .08em; }
|
|
772
|
+
.aftermath-observer figcaption b { font-size: .82rem; }
|
|
773
|
+
.aftermath-panel { z-index: 5; left: 3.5%; top: 50%; bottom: auto; width: min(42%,640px); max-height: 88%; padding: 1.35rem; overflow: clip; transform: translateY(-50%); }
|
|
774
|
+
.aftermath-echo { margin: .7rem 0; padding: .62rem .7rem; border-left: 2px solid var(--cinnabar); background: rgba(0,0,0,.22); }
|
|
775
|
+
.aftermath-echo span, .aftermath-echo b, .aftermath-echo small { display: block; }
|
|
776
|
+
.aftermath-echo span { color: #a59172; font: .6rem var(--sans); letter-spacing: .12em; }
|
|
777
|
+
.aftermath-echo b { margin-top: .22rem; color: #dfc69d; font-size: .78rem; }
|
|
778
|
+
.aftermath-echo small { display: -webkit-box; overflow: hidden; margin-top: .25rem; color: #9e8e78; font: .67rem/1.5 var(--sans); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
|
|
779
|
+
.aftermath-route-stake { margin: .6rem 0; padding: .6rem .7rem; border: 1px solid rgba(190,155,93,.3); border-left: 3px solid #b58d52; background: linear-gradient(110deg,rgba(91,63,28,.22),rgba(0,0,0,.15)); }
|
|
780
|
+
.aftermath-route-stake span, .aftermath-route-stake b { display: block; }
|
|
781
|
+
.aftermath-route-stake span { color: #a78a60; font: .56rem var(--sans); letter-spacing: .1em; }
|
|
782
|
+
.aftermath-route-stake b { margin-top: .2rem; color: #e1c58f; font: .72rem/1.4 var(--serif); }
|
|
783
|
+
.aftermath-route-stake p { margin: .28rem 0 0; color: #bca98a; font: .63rem/1.5 var(--sans); }
|
|
784
|
+
.aftermath-question { margin: .55rem 0; color: #c7b594; font: .72rem/1.55 var(--sans); }
|
|
785
|
+
.aftermath-story .aftermath-main { filter: saturate(.94) brightness(.94) contrast(1.02); animation: scene-enter .42s ease both; }
|
|
786
|
+
.aftermath-stage.milestone-chapter .aftermath-main { inset: 0 0 0 34%; background-position: center; mask-image: none; filter: saturate(.92) brightness(.9) contrast(1.03); }
|
|
787
|
+
.aftermath-stage.milestone-chapter::after { background: linear-gradient(90deg,rgba(13,9,8,.96) 0%,rgba(13,9,8,.82) 42%,rgba(13,9,8,.14) 61%,transparent 76%); }
|
|
788
|
+
.aftermath-stage.milestone-chapter .aftermath-panel { border-color: rgba(210,160,92,.58); box-shadow: 0 22px 70px rgba(0,0,0,.56); }
|
|
789
|
+
.aftermath-story-panel { display: flex; flex-direction: column; }
|
|
790
|
+
.aftermath-story-quote { margin: .8rem 0; padding: .82rem .95rem; border: 0; border-left: 3px solid var(--cinnabar); background: linear-gradient(110deg,rgba(99,42,31,.18),rgba(0,0,0,.16)); }
|
|
791
|
+
.aftermath-story-quote span, .aftermath-story-quote b { display: block; }
|
|
792
|
+
.aftermath-story-quote span { color: #a28e70; font: .62rem var(--sans); letter-spacing: .12em; }
|
|
793
|
+
.aftermath-story-quote b { margin-top: .25rem; color: #efd5a8; font-size: .92rem; }
|
|
794
|
+
.aftermath-story-quote p { margin: .55rem 0 0; color: #dfcdb0; font: .88rem/1.78 var(--sans); }
|
|
795
|
+
.aftermath-resolution .aftermath-main { filter:saturate(.94) brightness(.92) contrast(1.03); animation:scene-enter .42s ease both; }
|
|
796
|
+
.aftermath-resolution-panel { display:flex; flex-direction:column; border-color:rgba(185,132,79,.66); }
|
|
797
|
+
.route-resolution-transcript { display:grid; gap:.36rem; margin:.58rem 0; padding:0; list-style:none; }
|
|
798
|
+
.route-resolution-transcript li { display:grid; grid-template-columns:1.45rem 1fr; gap:.5rem; align-items:start; padding:.48rem .56rem; border-left:1px solid rgba(166,126,83,.48); background:rgba(48,30,22,.24); }
|
|
799
|
+
.route-resolution-transcript li > span { display:grid; place-items:center; width:1.28rem; height:1.28rem; border:1px solid rgba(190,145,92,.38); border-radius:50%; color:#b68461; font:.57rem var(--sans); }
|
|
800
|
+
.route-resolution-transcript b { display:block; color:#ceb793; font:.65rem/1.35 var(--serif); }
|
|
801
|
+
.route-resolution-transcript p { display:-webkit-box; margin:.17rem 0 0; overflow:hidden; color:#a79984; font:.58rem/1.45 var(--sans); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
|
|
802
|
+
.route-resolution-quote { border-left-color:#ba7b4f; background:linear-gradient(110deg,rgba(89,48,34,.28),rgba(0,0,0,.24)); }
|
|
803
|
+
.aftermath-continue { align-self: flex-start; margin-top: .85rem; }
|
|
804
|
+
|
|
805
|
+
/* 个人亲密后的余夜:主画面从册页 CG 回到她的近景,右上保留刚才那页作为记忆。 */
|
|
806
|
+
.personal-afterglow-stage { overflow: hidden; background: radial-gradient(circle at 72% 26%,#5a372c,#170f0c 70%); }
|
|
807
|
+
.personal-afterglow-stage::after { background: linear-gradient(90deg,rgba(14,9,7,.98) 0%,rgba(14,9,7,.8) 44%,rgba(14,9,7,.1) 76%); }
|
|
808
|
+
.afterglow-close { position: absolute; z-index: 1; inset: 0 0 0 34%; background-position: center 16%; background-size: cover; filter: saturate(.82) brightness(.68); mask-image: linear-gradient(90deg,transparent,#000 23%); }
|
|
809
|
+
.afterglow-memory { position: absolute; z-index: 4; top: 5%; right: 3%; width: min(240px,20vw); margin: 0; padding: .5rem; border: 1px solid rgba(222,188,123,.46); color: #c9b493; background: rgba(20,13,11,.9); box-shadow: 0 18px 50px rgba(0,0,0,.5); }
|
|
810
|
+
.afterglow-memory img { width: 100%; aspect-ratio: 16/10; object-fit: cover; filter: saturate(.72) brightness(.78); }
|
|
811
|
+
.afterglow-memory figcaption { margin-top: .4rem; font: .64rem/1.4 var(--sans); }
|
|
812
|
+
.personal-afterglow-panel { z-index: 5; left: 3.5%; top: 4%; bottom: 4%; width: 46%; padding: 1.3rem; overflow: clip; }
|
|
813
|
+
.afterglow-lead { margin: .7rem 0; padding: .65rem .75rem; border-left: 2px solid var(--gold); color: #b7a58b; font: .72rem/1.65 var(--sans); background: rgba(0,0,0,.2); }
|
|
814
|
+
|
|
815
|
+
/* 个人亲密的第二章:不再“一选就天亮”,把亲近怎样进入共同生活写成三拍余夜后章。 */
|
|
816
|
+
.personal-afterglow-aftermath-stage { overflow:hidden; background:radial-gradient(circle at 75% 20%,#59392f,#160e0c 72%); }
|
|
817
|
+
.personal-afterglow-aftermath-stage::after { background:linear-gradient(90deg,rgba(13,8,7,.99) 0%,rgba(13,8,7,.88) 48%,rgba(13,8,7,.12) 78%),linear-gradient(0deg,rgba(70,35,23,.3),transparent 62%); }
|
|
818
|
+
.personal-afterglow-aftermath-close { position:absolute; z-index:1; inset:0 0 0 31%; background-position:center 15%; background-size:cover; filter:saturate(.78) brightness(.66) contrast(1.04); mask-image:linear-gradient(90deg,transparent,#000 22%); }
|
|
819
|
+
.personal-afterglow-aftermath-memory { position:absolute; z-index:4; top:4%; right:3%; width:min(230px,19vw); margin:0; padding:.45rem; border:1px solid rgba(220,184,116,.45); background:rgba(20,13,11,.92); box-shadow:0 18px 52px rgba(0,0,0,.55); }
|
|
820
|
+
.personal-afterglow-aftermath-memory img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; filter:saturate(.7) brightness(.76); }
|
|
821
|
+
.personal-afterglow-aftermath-memory figcaption span,.personal-afterglow-aftermath-memory figcaption b { display:block; }
|
|
822
|
+
.personal-afterglow-aftermath-memory figcaption span { margin-top:.4rem; color:#99876e; font:.56rem var(--sans); letter-spacing:.12em; }
|
|
823
|
+
.personal-afterglow-aftermath-memory figcaption b { margin-top:.16rem; color:#d9c29e; font:.72rem/1.35 var(--serif); }
|
|
824
|
+
.personal-afterglow-aftermath-panel { z-index:5; left:3.5%; top:4%; bottom:4%; width:49%; padding:1.2rem 1.3rem; overflow:clip; border-color:rgba(209,159,93,.5); }
|
|
825
|
+
.personal-afterglow-aftermath-ledger { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; margin:.75rem 0; }
|
|
826
|
+
.personal-afterglow-aftermath-ledger span { min-width:0; padding:.65rem .7rem; border:1px solid rgba(218,181,117,.22); background:rgba(0,0,0,.23); }
|
|
827
|
+
.personal-afterglow-aftermath-ledger span.current { border-color:rgba(191,74,56,.58); background:rgba(103,38,29,.2); }
|
|
828
|
+
.personal-afterglow-aftermath-ledger span.settled { border-color:rgba(102,157,130,.55); background:rgba(43,83,68,.2); }
|
|
829
|
+
.personal-afterglow-aftermath-ledger small,.personal-afterglow-aftermath-ledger b,.personal-afterglow-aftermath-ledger em { display:block; }
|
|
830
|
+
.personal-afterglow-aftermath-ledger small { color:#9f8b6d; font:.55rem var(--sans); letter-spacing:.1em; }
|
|
831
|
+
.personal-afterglow-aftermath-ledger b { margin-top:.24rem; color:#e3c79c; font:.72rem/1.4 var(--serif); }
|
|
832
|
+
.personal-afterglow-aftermath-ledger em { margin-top:.28rem; color:#9f907b; font:.6rem/1.45 var(--sans); font-style:normal; }
|
|
833
|
+
.afterglow-aftermath-question { margin:.65rem 0; padding:.62rem .72rem; border-left:2px solid var(--cinnabar); color:#c5b293; font:.7rem/1.6 var(--sans); background:rgba(0,0,0,.2); }
|
|
834
|
+
.personal-afterglow-aftermath-choices { display:grid; grid-template-columns:1fr; gap:.45rem; }
|
|
835
|
+
.personal-afterglow-aftermath-continue { width:100%; }
|
|
836
|
+
.personal-afterglow-aftermath-stage.is-resolved .personal-afterglow-aftermath-panel { border-color:rgba(105,164,135,.56); }
|
|
837
|
+
|
|
838
|
+
/* 连续失手后的可恢复崩盘。三人不是装饰头像,当前最可能救局的一对会被点亮。 */
|
|
839
|
+
.house-crisis-stage { overflow: hidden; background: #120c0a; }
|
|
840
|
+
.house-crisis-stage::after { background: linear-gradient(90deg,rgba(12,8,7,.98) 0%,rgba(12,8,7,.86) 49%,rgba(12,8,7,.18) 80%), linear-gradient(0deg,rgba(49,16,12,.52),transparent 65%); }
|
|
841
|
+
.house-crisis-panel { z-index: 5; left: 3.5%; top: 4%; bottom: 4%; width: 49%; padding: 1.3rem; overflow: clip; border-color: rgba(195,69,55,.55); }
|
|
842
|
+
.crisis-cast { position: absolute; z-index: 4; right: 3%; top: 7%; bottom: 7%; width: 42%; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem; align-items: center; }
|
|
843
|
+
.crisis-cast figure { position: relative; height: 68%; min-height: 300px; margin: 0; overflow: hidden; border: 1px solid rgba(220,188,127,.22); background: rgba(18,12,10,.82); filter: saturate(.62) brightness(.72); }
|
|
844
|
+
.crisis-cast figure.rescue-ready { border-color: rgba(224,184,104,.68); filter: saturate(.9) brightness(.92); transform: translateY(-1rem); box-shadow: 0 16px 48px rgba(0,0,0,.5); }
|
|
845
|
+
.crisis-cast figure.answering { border-color: rgba(224,184,104,.88); filter: none; transform: translateY(-1rem); box-shadow: 0 16px 48px rgba(0,0,0,.58); }
|
|
846
|
+
.crisis-cast img { width: 100%; height: 100%; object-fit: cover; }
|
|
847
|
+
.crisis-cast figcaption { position: absolute; inset: auto 0 0; padding: 2.8rem .55rem .65rem; background: linear-gradient(transparent,rgba(13,9,8,.97) 48%); }
|
|
848
|
+
.crisis-cast b, .crisis-cast small { display: block; }
|
|
849
|
+
.crisis-cast b { color: #ecd8b7; font-size: .82rem; }
|
|
850
|
+
.crisis-cast small { margin-top: .25rem; color: #aa987d; font: .62rem/1.35 var(--sans); }
|
|
851
|
+
.crisis-ledger { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .35rem; margin: .7rem 0; }
|
|
852
|
+
.crisis-ledger span { padding: .5rem; border: 1px solid rgba(202,82,65,.25); color: #9e8973; font: .62rem var(--sans); background: rgba(54,14,12,.18); }
|
|
853
|
+
.crisis-ledger b { display: block; margin-top: .2rem; color: #e1b58e; font-size: .72rem; }
|
|
854
|
+
.crisis-rule { margin: .6rem 0; padding: .65rem .75rem; border-left: 2px solid var(--cinnabar); color: #b9a287; font: .7rem/1.55 var(--sans); background: rgba(0,0,0,.24); }
|
|
855
|
+
.crisis-reply-ledger { display:grid; gap:.35rem; margin:.65rem 0; padding:0; list-style:none; }
|
|
856
|
+
.crisis-reply-ledger li { display:grid; grid-template-columns:1.45rem 1fr; gap:.45rem; padding:.5rem .58rem; border:1px solid rgba(199,151,91,.25); background:rgba(32,22,17,.58); }
|
|
857
|
+
.crisis-reply-ledger li > span { display:grid; width:1.35rem; height:1.35rem; place-items:center; border:1px solid rgba(204,163,101,.48); color:#d0ad76; font:.62rem var(--sans); }
|
|
858
|
+
.crisis-reply-ledger b,.crisis-reply-ledger p,.crisis-reply-ledger small { display:block; }
|
|
859
|
+
.crisis-reply-ledger b { color:#dbc19b; font:.68rem/1.4 var(--serif); }
|
|
860
|
+
.crisis-reply-ledger p { margin:.18rem 0; color:#bba98e; font:.62rem/1.45 var(--sans); }
|
|
861
|
+
.crisis-reply-ledger small { color:#877866; font:.56rem/1.45 var(--sans); }
|
|
862
|
+
.crisis-current-reply { margin:.7rem 0 0; padding:.75rem; border:1px solid rgba(206,151,82,.48); background:linear-gradient(135deg,rgba(73,45,25,.4),rgba(20,13,11,.82)); }
|
|
863
|
+
.crisis-current-reply header span,.crisis-current-reply header b { display:block; }
|
|
864
|
+
.crisis-current-reply header span { color:#a98e69; font:.58rem var(--sans); letter-spacing:.08em; }
|
|
865
|
+
.crisis-current-reply header b { margin-top:.25rem; color:#ecd3aa; font:.86rem/1.35 var(--serif); }
|
|
866
|
+
.crisis-current-reply blockquote { margin:.55rem 0; padding:.55rem .65rem; border-left:2px solid #c67b51; color:#dcc8aa; font:.7rem/1.6 var(--serif); background:rgba(0,0,0,.22); }
|
|
867
|
+
.crisis-current-reply dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem; margin:0; }
|
|
868
|
+
.crisis-current-reply dl div { padding:.5rem; border:1px solid rgba(190,142,82,.2); background:rgba(12,8,7,.3); }
|
|
869
|
+
.crisis-current-reply dt { color:#927d63; font:.55rem var(--sans); }
|
|
870
|
+
.crisis-current-reply dd { margin:.2rem 0 0; color:#cdb695; font:.62rem/1.45 var(--sans); }
|
|
871
|
+
.crisis-current-reply > p { margin:.55rem 0; color:#a8977f; font:.62rem/1.5 var(--sans); }
|
|
872
|
+
.crisis-reply-continue { width:100%; }
|
|
873
|
+
.crisis-structure-choices { margin-top:.65rem; }
|
|
874
|
+
|
|
875
|
+
/* 危机止血后的四拍制度收尾:三个人持续在场,临时救法必须接受追问。 */
|
|
876
|
+
.crisis-aftermath-stage { overflow:hidden; background:#110b09; }
|
|
877
|
+
.crisis-aftermath-stage::before { background-position:center; filter:saturate(.58) brightness(.36) contrast(1.1); }
|
|
878
|
+
.crisis-aftermath-stage::after { background:linear-gradient(90deg,rgba(12,8,7,.99) 0%,rgba(12,8,7,.94) 47%,rgba(12,8,7,.16) 75%,rgba(12,8,7,.48) 100%),linear-gradient(0deg,rgba(62,18,14,.4),transparent 68%); }
|
|
879
|
+
.crisis-aftermath-panel { z-index:5; left:3.5%; top:4%; bottom:4%; width:51%; padding:1.25rem 1.35rem; overflow:clip; border-color:rgba(182,70,54,.58); }
|
|
880
|
+
.crisis-aftermath-cast { position:absolute; z-index:3; inset:6% 2.5% 6% 58%; display:flex; gap:.45rem; align-items:stretch; }
|
|
881
|
+
.crisis-aftermath-cast figure { position:relative; flex:1 1 0; min-width:0; margin:0; overflow:hidden; border:1px solid rgba(206,174,119,.2); background:#17100e; opacity:.48; filter:grayscale(.32) saturate(.62); transform:translateY(.7rem); transition:flex .25s,opacity .25s,filter .25s,transform .25s; }
|
|
882
|
+
.crisis-aftermath-cast figure.rescue-pair { border-color:rgba(205,146,83,.38); }
|
|
883
|
+
.crisis-aftermath-cast figure.speaking { flex:1.24 1 0; opacity:1; filter:none; transform:translateY(0); border-color:rgba(220,166,89,.78); box-shadow:0 14px 40px rgba(0,0,0,.52); }
|
|
884
|
+
.crisis-aftermath-cast img { width:100%; height:100%; object-fit:cover; object-position:center top; }
|
|
885
|
+
.crisis-aftermath-cast figure::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(12,8,7,.96),transparent 58%); }
|
|
886
|
+
.crisis-aftermath-cast figcaption { position:absolute; z-index:1; inset:auto 0 0; padding:2.5rem .48rem .55rem; }
|
|
887
|
+
.crisis-aftermath-cast figcaption i { display:grid; width:1.25rem; height:1.25rem; place-items:center; margin-bottom:.3rem; border:1px solid #cba66d; color:#d5b27b; font-style:normal; }
|
|
888
|
+
.crisis-aftermath-cast figcaption b,.crisis-aftermath-cast figcaption small { display:block; }
|
|
889
|
+
.crisis-aftermath-cast figcaption b { color:#e6d1af; font-size:.72rem; }
|
|
890
|
+
.crisis-aftermath-cast figcaption small { margin-top:.2rem; color:#9d8c75; font:.58rem var(--sans); }
|
|
891
|
+
.crisis-aftermath-ledger { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.35rem; margin:.7rem 0 .5rem; }
|
|
892
|
+
.crisis-aftermath-ledger span { min-width:0; padding:.48rem .55rem; border:1px solid rgba(192,91,67,.24); background:rgba(61,19,15,.18); }
|
|
893
|
+
.crisis-aftermath-ledger small,.crisis-aftermath-ledger b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
|
|
894
|
+
.crisis-aftermath-ledger small { color:#8d7764; font:.56rem var(--sans); letter-spacing:.08em; }
|
|
895
|
+
.crisis-aftermath-ledger b { margin-top:.2rem; color:#d9b68d; font:.68rem var(--sans); }
|
|
896
|
+
.crisis-aftermath-rule { margin:.55rem 0; padding:.55rem .65rem; border-left:2px solid #a74438; color:#b7a18a; background:rgba(0,0,0,.22); font:.67rem/1.52 var(--sans); }
|
|
897
|
+
.crisis-aftermath-choices { grid-template-columns:repeat(2,minmax(0,1fr)); }
|
|
898
|
+
.crisis-aftermath-beat-4 .crisis-aftermath-panel { border-color:rgba(108,151,126,.62); }
|
|
899
|
+
.crisis-aftermath-beat-4 .crisis-aftermath-rule { border-color:#6e9c83; background:rgba(36,70,55,.18); }
|
|
900
|
+
|
|
901
|
+
/* 双院关系事件:两个人各占半幅,不再把她们画成围绕玩家排列的门卡。 */
|
|
902
|
+
.pair-interlude-stage { overflow: hidden; background: radial-gradient(circle at 72% 30%,#4b3328,#150e0c 72%); }
|
|
903
|
+
.pair-interlude-stage::after { background: linear-gradient(90deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.88) 46%,rgba(13,9,8,.16) 76%); }
|
|
904
|
+
.pair-interlude-panel { z-index: 5; left: 3.5%; top: 4%; bottom: 4%; width: 47%; padding: 1.3rem; overflow: clip; }
|
|
905
|
+
.pair-portraits { position: absolute; z-index: 2; inset: 0 0 0 43%; display: grid; grid-template-columns: 1fr 1fr; }
|
|
906
|
+
.pair-portraits figure { position: relative; min-width: 0; margin: 0; overflow: hidden; }
|
|
907
|
+
.pair-portraits figure:first-child { border-right: 1px solid rgba(220,188,127,.3); }
|
|
908
|
+
.pair-portraits img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; filter: saturate(.48) brightness(.48); transition: filter .28s ease, transform .28s ease; }
|
|
909
|
+
.pair-portraits figure.speaking img { filter: saturate(.88) brightness(.78); transform: scale(1.018); }
|
|
910
|
+
.pair-portraits figure.waiting figcaption { opacity: .66; }
|
|
911
|
+
.pair-portraits figcaption { position: absolute; inset: auto .7rem 4% .7rem; padding: 2.4rem .75rem .8rem; color: #ead8b9; background: linear-gradient(transparent,rgba(12,8,7,.94) 45%); }
|
|
912
|
+
.pair-portraits span, .pair-portraits b { display: block; }
|
|
913
|
+
.pair-portraits span { color: #ae9670; font: .62rem var(--sans); letter-spacing: .12em; }
|
|
914
|
+
.pair-portraits b { margin-top: .2rem; font-size: 1rem; }
|
|
915
|
+
.pair-portraits p { margin: .45rem 0 0; color: #c1ad8e; font: .7rem/1.55 var(--sans); }
|
|
916
|
+
.pair-trust { display: flex; justify-content: space-between; gap: .8rem; margin: .7rem 0; padding: .65rem .75rem; border: 1px solid rgba(220,188,127,.24); color: #a18e73; font: .68rem var(--sans); background: rgba(0,0,0,.2); }
|
|
917
|
+
.pair-trust b { color: #dec28f; }
|
|
918
|
+
.pair-rule { margin: .55rem 0; color: #b5a184; font: .7rem/1.55 var(--sans); }
|
|
919
|
+
.pair-progress { margin: .65rem 0; color: #c8ad7b; font: .66rem var(--sans); letter-spacing: .08em; }
|
|
920
|
+
.pair-current-line { margin: .65rem 0; padding: .8rem .9rem; border-left: 2px solid var(--cinnabar); color: #dbc6a7; font: .78rem/1.7 var(--sans); background: rgba(0,0,0,.22); }
|
|
921
|
+
.pair-current-line span { display: block; margin-bottom: .28rem; color: #d7aa69; font-size: .63rem; letter-spacing: .12em; }
|
|
922
|
+
.pair-joint-line { margin: .65rem 0; padding: .75rem .85rem; border-left: 2px solid #7e9d8d; color: #c6d8cc; font: .75rem/1.65 var(--sans); background: rgba(49,78,67,.18); }
|
|
923
|
+
.pair-joint-line span { display: block; margin-bottom: .28rem; color: #87aa99; font-size: .6rem; letter-spacing: .12em; }
|
|
924
|
+
.pair-aftermath-stage { background:radial-gradient(circle at 77% 26%,#355248,#16110e 72%); }
|
|
925
|
+
.pair-aftermath-stage::before { content:""; position:absolute; z-index:3; inset:0; pointer-events:none; opacity:.28; background:repeating-linear-gradient(104deg,transparent 0 84px,rgba(121,166,144,.14) 85px,transparent 87px); }
|
|
926
|
+
.pair-aftermath-cast { inset:0 13% 0 43%; }
|
|
927
|
+
.pair-aftermath-cast figure.settled img { filter:saturate(.62) brightness(.63); }
|
|
928
|
+
.pair-aftermath-witness { position:absolute; z-index:4; top:4%; right:2%; width:min(170px,14vw); margin:0; padding:.42rem; border:1px solid rgba(124,170,147,.45); color:#d8e5dc; background:rgba(18,31,26,.9); box-shadow:0 18px 44px rgba(0,0,0,.45); transition:filter .28s ease,transform .28s ease; }
|
|
929
|
+
.pair-aftermath-witness.waiting { filter:saturate(.52) brightness(.68); transform:translateY(2%); }
|
|
930
|
+
.pair-aftermath-witness.speaking { border-color:rgba(148,201,174,.72); transform:translateY(0); }
|
|
931
|
+
.pair-aftermath-witness.settled { border-color:rgba(194,153,97,.56); filter:saturate(.72) brightness(.8); transform:translateY(0); }
|
|
932
|
+
.pair-aftermath-witness img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:50% 14%; filter:saturate(.78) brightness(.82); }
|
|
933
|
+
.pair-aftermath-witness span,.pair-aftermath-witness b,.pair-aftermath-witness small { display:block; }
|
|
934
|
+
.pair-aftermath-witness span { margin-top:.32rem; color:#7fa38f; font:.55rem var(--sans); letter-spacing:.1em; }
|
|
935
|
+
.pair-aftermath-witness b { margin-top:.1rem; font-size:.76rem; }
|
|
936
|
+
.pair-aftermath-witness small { margin-top:.22rem; color:#9fb5aa; font:.55rem/1.42 var(--sans); }
|
|
937
|
+
.pair-aftermath-panel { border-color:rgba(111,157,134,.52); }
|
|
938
|
+
.pair-aftermath-origin { display:grid; gap:.18rem; margin:.6rem 0; padding:.58rem .65rem; border-left:2px solid #7caa92; background:rgba(31,65,52,.22); }
|
|
939
|
+
.pair-aftermath-origin span { color:#769481; font:.57rem var(--sans); letter-spacing:.08em; }
|
|
940
|
+
.pair-aftermath-origin b { color:#d2e2d8; font-size:.72rem; }
|
|
941
|
+
.pair-aftermath-origin small { color:#a9bcb1; font:.61rem/1.45 var(--sans); }
|
|
942
|
+
.pair-aftermath-current { margin:.62rem 0; padding:.7rem .78rem; border-left:2px solid #78a68d; color:#c7d9cf; background:rgba(23,48,39,.26); }
|
|
943
|
+
.pair-aftermath-current span,.pair-aftermath-current b { display:block; }
|
|
944
|
+
.pair-aftermath-current span { color:#759480; font:.56rem var(--sans); letter-spacing:.1em; }
|
|
945
|
+
.pair-aftermath-current b { margin-top:.18rem; color:#d8e7df; font-size:.76rem; }
|
|
946
|
+
.pair-aftermath-current p { margin:.3rem 0 0; font:.68rem/1.58 var(--sans); }
|
|
947
|
+
.pair-aftermath-current.witness-line { border-color:#c29961; background:rgba(82,54,27,.2); }
|
|
948
|
+
.pair-aftermath-transcript { display:grid; gap:.3rem; margin:.55rem 0; padding:0; list-style:none; }
|
|
949
|
+
.pair-aftermath-transcript li { display:grid; grid-template-columns:1.25rem 1fr; gap:.42rem; align-items:start; color:#9fb4aa; }
|
|
950
|
+
.pair-aftermath-transcript li > span { display:grid; place-items:center; width:1.15rem; height:1.15rem; border:1px solid rgba(119,164,141,.45); color:#7fa38f; font:.52rem var(--sans); }
|
|
951
|
+
.pair-aftermath-transcript b { display:block; color:#bdd2c7; font-size:.62rem; }
|
|
952
|
+
.pair-aftermath-transcript p { margin:.16rem 0 0; font:.58rem/1.42 var(--sans); }
|
|
953
|
+
|
|
954
|
+
/* 延迟回响:画面像一张被两日前墨迹穿透的新账页,强调这不是新随机事件,
|
|
955
|
+
而是玩家亲口选择的处理方式终于落到具体的人与代价上。 */
|
|
956
|
+
.memory-reckoning-stage { overflow: hidden; background: radial-gradient(circle at 73% 28%,#514130,#16100d 70%); }
|
|
957
|
+
.memory-reckoning-stage::before { content: ""; position: absolute; z-index: 2; inset: 0; opacity: .34; pointer-events: none; background: repeating-linear-gradient(104deg,transparent 0 72px,rgba(222,190,126,.16) 73px,transparent 75px); }
|
|
958
|
+
.memory-reckoning-stage::after { background: linear-gradient(90deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.9) 48%,rgba(13,9,8,.13) 78%), linear-gradient(0deg,rgba(67,38,18,.28),transparent 56%); }
|
|
959
|
+
.memory-reckoning-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 48%; padding: 1.3rem; overflow: clip; border-color: rgba(213,177,108,.48); }
|
|
960
|
+
.memory-cast { position: absolute; z-index: 3; inset: 0 0 0 45%; display: grid; grid-template-columns: 1.08fr .92fr; }
|
|
961
|
+
.memory-cast figure { position: relative; min-width: 0; height: 100%; margin: 0; overflow: hidden; }
|
|
962
|
+
.memory-cast figure:not(.memory-lead) { transform: translateY(5%); filter: sepia(.12); }
|
|
963
|
+
.memory-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 12%; filter: saturate(.72) brightness(.67); }
|
|
964
|
+
.memory-cast .memory-lead img { filter: saturate(.86) brightness(.76); }
|
|
965
|
+
.memory-cast figure,.memory-cast img { transition:filter .32s ease,opacity .32s ease,transform .32s ease; }
|
|
966
|
+
.memory-cast figure.speaking { z-index:2; transform:translateY(0); filter:none; }
|
|
967
|
+
.memory-cast figure.speaking img { filter:saturate(.96) brightness(.84); transform:scale(1.015); }
|
|
968
|
+
.memory-cast figure.listening { opacity:.58; filter:sepia(.34); }
|
|
969
|
+
.memory-cast figure.listening img { filter:saturate(.43) brightness(.54); }
|
|
970
|
+
.memory-cast figure.weighing { opacity:.82; transform:translateY(1.5%); }
|
|
971
|
+
.memory-cast figure.settled { opacity:.94; transform:translateY(0); filter:none; }
|
|
972
|
+
.memory-step-3 .memory-reckoning-panel { border-color:rgba(220,190,126,.68); box-shadow:0 0 34px rgba(159,121,54,.16); }
|
|
973
|
+
.memory-cast figcaption { position: absolute; inset: auto .6rem 3%; padding: 2.7rem .75rem .8rem; color: #ead8b9; background: linear-gradient(transparent,rgba(12,8,7,.96) 46%); }
|
|
974
|
+
.memory-cast span, .memory-cast b { display: block; }
|
|
975
|
+
.memory-cast span { color: #a99069; font: .6rem var(--sans); letter-spacing: .12em; }
|
|
976
|
+
.memory-cast b { margin-top: .2rem; font-size: .95rem; }
|
|
977
|
+
.memory-cast p { margin: .45rem 0 0; color: #c5b08f; font: .68rem/1.55 var(--sans); }
|
|
978
|
+
.memory-thread { position: relative; display: grid; gap: .25rem; margin: .72rem 0; padding: .7rem .8rem .7rem 1rem; border-left: 2px solid #c7a15f; background: rgba(0,0,0,.24); }
|
|
979
|
+
.memory-thread::before { content: "旧"; position: absolute; right: .55rem; top: .45rem; width: 1.55rem; height: 1.55rem; display: grid; place-items: center; border: 1px solid rgba(164,55,41,.62); color: rgba(199,84,63,.78); font: .72rem serif; transform: rotate(-8deg); }
|
|
980
|
+
.memory-thread span { color: #9f8a6b; font: .6rem var(--sans); letter-spacing: .1em; }
|
|
981
|
+
.memory-thread b { max-width: calc(100% - 2.2rem); color: #e0c48f; font-size: .78rem; }
|
|
982
|
+
.memory-thread strong { margin-top: .15rem; color: #d2ae6f; font: 600 .64rem/1.45 var(--sans); }
|
|
983
|
+
.memory-thread small { color: #b39f80; font: .65rem/1.45 var(--sans); }
|
|
984
|
+
.memory-thread em { color: #d6c5a8; font: normal .66rem/1.5 var(--sans); }
|
|
985
|
+
.memory-progress { display:grid; grid-template-columns:repeat(4,1fr); gap:.35rem; margin:0 0 .7rem; }
|
|
986
|
+
.memory-progress span { position:relative; padding:.3rem .2rem; border-bottom:1px solid rgba(183,151,91,.22); color:#776b58; text-align:center; font:.58rem var(--sans); letter-spacing:.1em; }
|
|
987
|
+
.memory-progress span.done { border-color:#c7a15f; color:#dfc58f; }
|
|
988
|
+
.memory-progress span.done::before { content:""; position:absolute; left:50%; bottom:-2px; width:4px; height:4px; border-radius:50%; background:#d5ad66; box-shadow:0 0 10px rgba(213,173,102,.72); }
|
|
989
|
+
.memory-verdict-note { margin:.6rem 0; padding:.58rem .68rem; border:1px solid rgba(190,154,87,.35); color:#d4c2a0; background:rgba(57,43,20,.28); font:.66rem/1.55 var(--sans); }
|
|
990
|
+
.memory-story-continue { width:100%; margin-top:.55rem; }
|
|
991
|
+
|
|
992
|
+
/* 人情解追账:沿用旧账页的双人构图,但用更红的封印与欠字把“另一条可行解”
|
|
993
|
+
明确表现为延迟成本,而不是隐藏的第二个正确答案。 */
|
|
994
|
+
.favor-reckoning-stage { overflow:hidden; background:radial-gradient(circle at 73% 27%,#5b3c31,#160d0b 71%); }
|
|
995
|
+
.favor-reckoning-stage::before { content:""; position:absolute; z-index:2; inset:0; opacity:.32; pointer-events:none; background:repeating-linear-gradient(102deg,transparent 0 68px,rgba(202,121,82,.15) 69px,transparent 72px); }
|
|
996
|
+
.favor-reckoning-stage::after { background:linear-gradient(90deg,rgba(14,8,7,.99) 0%,rgba(14,8,7,.92) 48%,rgba(44,14,10,.14) 78%),linear-gradient(0deg,rgba(129,50,34,.26),transparent 58%); }
|
|
997
|
+
.favor-reckoning-panel { z-index:6; left:3.5%; top:4%; bottom:4%; width:49%; padding:1.3rem; overflow:clip; border-color:rgba(210,125,85,.55); }
|
|
998
|
+
.favor-cast { position:absolute; z-index:3; inset:0 0 0 45%; display:grid; grid-template-columns:1.08fr .92fr; }
|
|
999
|
+
.favor-cast figure { position:relative; min-width:0; height:100%; margin:0; overflow:hidden; }
|
|
1000
|
+
.favor-cast figure:not(.favor-lead) { transform:translateY(5%); filter:sepia(.18); }
|
|
1001
|
+
.favor-cast img { width:100%; height:100%; object-fit:cover; object-position:50% 12%; filter:saturate(.7) brightness(.65); }
|
|
1002
|
+
.favor-cast .favor-lead img { filter:saturate(.9) brightness(.76); }
|
|
1003
|
+
.favor-cast figure,.favor-cast img { transition:filter .32s ease,opacity .32s ease,transform .32s ease; }
|
|
1004
|
+
.favor-cast figure.speaking { z-index:2; transform:translateY(0); filter:none; }
|
|
1005
|
+
.favor-cast figure.speaking img { filter:saturate(.98) brightness(.84); transform:scale(1.015); }
|
|
1006
|
+
.favor-cast figure.listening { opacity:.58; filter:sepia(.36); }
|
|
1007
|
+
.favor-cast figure.listening img { filter:saturate(.42) brightness(.53); }
|
|
1008
|
+
.favor-cast figure.weighing { opacity:.82; transform:translateY(1.5%); }
|
|
1009
|
+
.favor-cast figure.settled { opacity:.94; transform:translateY(0); filter:none; }
|
|
1010
|
+
.favor-step-3 .favor-reckoning-panel { border-color:rgba(221,168,98,.7); box-shadow:0 0 34px rgba(154,72,42,.18); }
|
|
1011
|
+
.favor-cast figcaption { position:absolute; inset:auto .6rem 3%; padding:2.7rem .75rem .8rem; color:#ead5bc; background:linear-gradient(transparent,rgba(12,7,6,.97) 46%); }
|
|
1012
|
+
.favor-cast span,.favor-cast b { display:block; }
|
|
1013
|
+
.favor-cast span { color:#bd896f; font:.6rem var(--sans); letter-spacing:.1em; }
|
|
1014
|
+
.favor-cast b { margin-top:.2rem; font-size:.95rem; }
|
|
1015
|
+
.favor-cast p { margin:.45rem 0 0; color:#ceb19d; font:.68rem/1.55 var(--sans); }
|
|
1016
|
+
.favor-thread { position:relative; display:grid; gap:.25rem; margin:.72rem 0; padding:.7rem .8rem .7rem 1rem; border-left:2px solid #c97b57; background:rgba(43,10,7,.24); }
|
|
1017
|
+
.favor-thread::before { content:"欠"; position:absolute; right:.55rem; top:.45rem; width:1.55rem; height:1.55rem; display:grid; place-items:center; border:1px solid rgba(187,57,40,.72); color:rgba(222,91,68,.86); font:.72rem serif; transform:rotate(-8deg); }
|
|
1018
|
+
.favor-thread span { color:#b68d79; font:.6rem var(--sans); letter-spacing:.1em; }
|
|
1019
|
+
.favor-thread b { max-width:calc(100% - 2.2rem); color:#e2b99f; font-size:.78rem; }
|
|
1020
|
+
.favor-thread small { color:#bfa291; font:.65rem/1.45 var(--sans); }
|
|
1021
|
+
.favor-thread em { color:#d8c1b1; font:normal .66rem/1.5 var(--sans); }
|
|
1022
|
+
.favor-progress { display:grid; grid-template-columns:repeat(4,1fr); gap:.35rem; margin:0 0 .7rem; }
|
|
1023
|
+
.favor-progress span { position:relative; padding:.3rem .2rem; border-bottom:1px solid rgba(184,111,78,.22); color:#806a5f; text-align:center; font:.58rem var(--sans); letter-spacing:.1em; }
|
|
1024
|
+
.favor-progress span.done { border-color:#cc805c; color:#e1b59d; }
|
|
1025
|
+
.favor-progress span.done::before { content:""; position:absolute; left:50%; bottom:-2px; width:4px; height:4px; border-radius:50%; background:#dc8e68; box-shadow:0 0 10px rgba(220,142,104,.8); }
|
|
1026
|
+
.favor-verdict-note { margin:.6rem 0; padding:.58rem .68rem; border:1px solid rgba(196,111,76,.38); color:#d7baa9; background:rgba(76,23,15,.3); font:.66rem/1.55 var(--sans); }
|
|
1027
|
+
.favor-story-continue { width:100%; margin-top:.55rem; }
|
|
1028
|
+
|
|
1029
|
+
/* 主动邀约:主角不再从五张门卡中被动挑人。她本人占据画面,旁院只作为
|
|
1030
|
+
见证者留在侧边,清楚区分“她想见你”与“系统派给她一场事件”。 */
|
|
1031
|
+
.dusk-invitation-stage { overflow: hidden; background: radial-gradient(circle at 75% 25%,#563529,#150d0b 72%); }
|
|
1032
|
+
.dusk-invitation-stage::after { background: linear-gradient(90deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.9) 47%,rgba(13,9,8,.08) 76%), linear-gradient(0deg,rgba(123,48,34,.2),transparent 62%); }
|
|
1033
|
+
.dusk-invitation-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 49%; padding: 1.25rem; overflow: clip; border-color: rgba(201,111,83,.5); }
|
|
1034
|
+
.dusk-invite-cast { position: absolute; z-index: 3; inset: 0 0 0 44%; }
|
|
1035
|
+
.dusk-invite-cast figure { margin: 0; }
|
|
1036
|
+
.dusk-invite-cast .invite-lead { position: absolute; inset: 0 0 0 0; overflow: hidden; }
|
|
1037
|
+
.dusk-invite-cast .invite-lead img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 12%; filter: saturate(.82) brightness(.7); }
|
|
1038
|
+
.dusk-invite-cast .invite-lead figcaption { position: absolute; inset: auto 1rem 4%; padding: 2.5rem .75rem .65rem; background: linear-gradient(transparent,rgba(12,8,7,.94) 48%); }
|
|
1039
|
+
.dusk-invite-cast .invite-witness { position: absolute; top: 4%; left: 18%; width: min(175px,16vw); padding: .45rem; border: 1px solid rgba(221,187,126,.38); color: #ddcdb2; background: rgba(22,14,12,.9); box-shadow: 0 18px 48px rgba(0,0,0,.5); }
|
|
1040
|
+
.dusk-invite-cast .invite-witness img { width: 100%; aspect-ratio: 4/5; object-fit: cover; object-position: 50% 13%; filter: saturate(.68) brightness(.78); }
|
|
1041
|
+
.dusk-invite-cast figcaption span, .dusk-invite-cast figcaption b { display: block; }
|
|
1042
|
+
.dusk-invite-cast figcaption span { color: #bd8d72; font: .58rem var(--sans); letter-spacing: .12em; }
|
|
1043
|
+
.dusk-invite-cast figcaption b { margin-top: .18rem; color: #ead8ba; font-size: .9rem; }
|
|
1044
|
+
.dusk-invite-voices { display: grid; gap: .35rem; margin: .62rem 0; }
|
|
1045
|
+
.dusk-invite-voices p { margin: 0; padding: .52rem .62rem; border-left: 2px solid rgba(201,111,83,.65); color: #cbb99e; background: rgba(61,22,17,.22); font: .68rem/1.52 var(--sans); }
|
|
1046
|
+
.dusk-invite-voices b { margin-right: .5rem; color: #dda987; }
|
|
1047
|
+
.dusk-invite-rule { margin: .55rem 0; color: #a99478; font: .66rem/1.5 var(--sans); }
|
|
1048
|
+
|
|
1049
|
+
/* 主动邀约后续:第一次答复只决定去不去;第二组画面让邀约者与旁院把
|
|
1050
|
+
钥匙、记录、退出权和劳动后果说到底,第三拍才交回玩家。 */
|
|
1051
|
+
.invitation-aftermath-stage { overflow:hidden; background:radial-gradient(circle at 76% 24%,#51342d,#130c0a 72%); }
|
|
1052
|
+
.invitation-aftermath-stage::after { background:linear-gradient(90deg,rgba(12,8,7,.99) 0%,rgba(12,8,7,.93) 49%,rgba(12,8,7,.18) 72%),linear-gradient(0deg,rgba(137,56,39,.2),transparent 62%); }
|
|
1053
|
+
.invitation-aftermath-stage.resolved::after { background:linear-gradient(90deg,rgba(10,15,12,.99) 0%,rgba(10,15,12,.92) 49%,rgba(18,52,37,.16) 74%),linear-gradient(0deg,rgba(49,112,77,.15),transparent 64%); }
|
|
1054
|
+
.invitation-aftermath-cast { position:absolute; z-index:3; inset:3% 2% 3% 50%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }
|
|
1055
|
+
.invitation-aftermath-cast figure { position:relative; min-width:0; height:100%; margin:0; overflow:hidden; border:1px solid rgba(218,181,120,.2); background:#17100e; filter:saturate(.55) brightness(.68); transform:translateY(2.5%); transition:filter .25s ease,transform .25s ease,border-color .25s ease; }
|
|
1056
|
+
.invitation-aftermath-cast figure.speaking { z-index:2; filter:saturate(.9) brightness(.92); transform:translateY(-1%); border-color:rgba(224,172,103,.72); box-shadow:0 18px 44px rgba(0,0,0,.46); }
|
|
1057
|
+
.invitation-aftermath-stage.resolved .invitation-aftermath-cast figure.speaking { border-color:rgba(91,169,117,.72); }
|
|
1058
|
+
.invitation-aftermath-cast img { width:100%; height:100%; object-fit:cover; object-position:50% 14%; }
|
|
1059
|
+
.invitation-aftermath-cast figcaption { position:absolute; inset:auto 0 0; padding:3rem .65rem .72rem; color:#dfceb0; background:linear-gradient(transparent,rgba(10,7,6,.97) 48%); }
|
|
1060
|
+
.invitation-aftermath-cast figcaption span,.invitation-aftermath-cast figcaption b,.invitation-aftermath-cast figcaption small { display:block; }
|
|
1061
|
+
.invitation-aftermath-cast figcaption span { color:#bd8e73; font:.56rem var(--sans); letter-spacing:.1em; }
|
|
1062
|
+
.invitation-aftermath-cast figcaption b { margin-top:.16rem; font-size:.9rem; }
|
|
1063
|
+
.invitation-aftermath-cast figcaption small { margin-top:.25rem; color:#aa9a82; font:.58rem/1.42 var(--sans); }
|
|
1064
|
+
.invitation-aftermath-panel { z-index:6; left:3%; top:4%; bottom:4%; width:51%; padding:1.12rem; overflow:clip; border-color:rgba(198,102,73,.5); }
|
|
1065
|
+
.invitation-aftermath-stage.resolved .invitation-aftermath-panel { border-color:rgba(80,151,102,.6); }
|
|
1066
|
+
.invitation-aftermath-ledger { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.35rem; margin:.68rem 0; }
|
|
1067
|
+
.invitation-aftermath-ledger span { min-width:0; padding:.48rem .55rem; border:1px solid rgba(205,156,94,.2); background:rgba(29,18,14,.64); }
|
|
1068
|
+
.invitation-aftermath-ledger small,.invitation-aftermath-ledger b { display:block; }
|
|
1069
|
+
.invitation-aftermath-ledger small { color:#9f826b; font:.54rem var(--sans); letter-spacing:.08em; }
|
|
1070
|
+
.invitation-aftermath-ledger b { margin-top:.2rem; color:#d8c39f; font:.64rem/1.38 var(--sans); }
|
|
1071
|
+
.invitation-aftermath-rule { margin:.55rem 0 .68rem; padding:.58rem .68rem; border-left:2px solid rgba(196,94,69,.64); color:#b9a58a; background:rgba(68,25,18,.2); font:.64rem/1.5 var(--sans); }
|
|
1072
|
+
.invitation-aftermath-stage.resolved .invitation-aftermath-rule { border-color:rgba(82,156,105,.68); background:rgba(24,67,43,.18); }
|
|
1073
|
+
.invitation-aftermath-choices { grid-template-columns:repeat(2,minmax(0,1fr)); }
|
|
1074
|
+
.invitation-aftermath-panel > .ink-button { min-width:12rem; }
|
|
1075
|
+
.morning-panel { left: 4%; top: 8%; width: 47%; padding: 1.45rem; }
|
|
1076
|
+
.tone-jealous .morning-panel { border-color: rgba(188,73,61,.72); }
|
|
1077
|
+
.tone-backing .morning-panel { border-color: rgba(126,167,149,.65); }
|
|
1078
|
+
.rivalry-stage::after { background: linear-gradient(90deg,rgba(13,8,7,.97) 0%,rgba(13,8,7,.88) 46%,rgba(76,21,18,.15) 72%), linear-gradient(0deg,rgba(13,8,7,.62),transparent 58%); }
|
|
1079
|
+
.rivalry-cg { transition: background-image .38s ease, filter .38s ease; filter: brightness(.82) saturate(.82) contrast(1.06); }
|
|
1080
|
+
.rivalry-panel { top: 4%; bottom: 4%; width: 51%; overflow: clip; border-color: rgba(190,83,65,.68); }
|
|
1081
|
+
.rivalry-listener { position: absolute; z-index: 4; top: 4%; right: 3%; width: min(178px,17vw); margin: 0; padding: .45rem; border: 1px solid rgba(224,190,128,.48); color: #ead8bb; background: rgba(22,13,11,.91); box-shadow: 0 18px 48px rgba(0,0,0,.55); }
|
|
1082
|
+
.rivalry-listener img { display: block; width: 100%; aspect-ratio: 4/5; object-fit: cover; object-position: 50% 14%; filter: saturate(.72) brightness(.84); }
|
|
1083
|
+
.rivalry-listener figcaption { padding: .48rem .25rem .18rem; }
|
|
1084
|
+
.rivalry-listener span, .rivalry-listener b, .rivalry-listener small { display: block; }
|
|
1085
|
+
.rivalry-listener span { color: #bd8d72; font: .58rem var(--sans); letter-spacing: .12em; }
|
|
1086
|
+
.rivalry-listener b { margin-top: .16rem; font-size: .92rem; }
|
|
1087
|
+
.rivalry-listener small { margin-top: .22rem; color: #aa9980; font: .6rem/1.45 var(--sans); }
|
|
1088
|
+
.rivalry-voice { margin: .8rem 0; padding: .75rem .85rem; border-left: 3px solid rgba(194,75,59,.75); background: rgba(79,25,20,.22); }
|
|
1089
|
+
.rivalry-voice span, .rivalry-voice b { display: block; }
|
|
1090
|
+
.rivalry-voice span { color: #c28d73; font: .58rem var(--sans); letter-spacing: .14em; }
|
|
1091
|
+
.rivalry-voice b { margin-top: .14rem; color: #f0ddbf; font-size: .92rem; }
|
|
1092
|
+
.rivalry-voice p { margin: .42rem 0 0; color: #d8c4a6; font: .78rem/1.72 var(--sans); }
|
|
1093
|
+
.rivalry-question { margin: .65rem 0; color: #d9bd91; font: .72rem/1.58 var(--sans); }
|
|
1094
|
+
.rivalry-continue { width: 100%; }
|
|
1095
|
+
.rivalry-resolved::after { background: linear-gradient(90deg,rgba(13,8,7,.98) 0%,rgba(13,8,7,.9) 48%,rgba(113,68,35,.12) 76%), linear-gradient(0deg,rgba(13,8,7,.64),transparent 62%); }
|
|
1096
|
+
.rivalry-result-panel { border-color: rgba(207,164,91,.72); }
|
|
1097
|
+
.rivalry-consequence { margin: .8rem 0; padding: .55rem .7rem; border-top: 1px solid rgba(224,190,128,.24); border-bottom: 1px solid rgba(224,190,128,.24); color: #e0c38e; text-align: center; font: .7rem/1.5 var(--sans); letter-spacing: .08em; }
|
|
1098
|
+
.rivalry-result-cast { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: .5rem; margin: .65rem 0 .85rem; }
|
|
1099
|
+
.rivalry-result-cast span { padding: .5rem; border: 1px solid rgba(224,190,128,.28); color: #ead8bb; text-align: center; background: rgba(78,46,29,.32); font: .78rem var(--serif); }
|
|
1100
|
+
.rivalry-result-cast i { color: #be765d; font-style: normal; }
|
|
1101
|
+
|
|
1102
|
+
/* 宴席 */
|
|
1103
|
+
/* 选择前不铺群像:宅院界画压暗加暖灯,把「中秋夜宴」的光先给到,群像留给选择之后。 */
|
|
1104
|
+
.banquet-stage::before { background-position: center 38%; filter: saturate(.66) brightness(.68) sepia(.3) contrast(1.05); }
|
|
1105
|
+
.banquet-stage::after { background: radial-gradient(80% 62% at 50% 32%, rgba(206,132,58,.24), transparent 62%), linear-gradient(0deg, rgba(13,9,7,.92) 0%, rgba(13,9,7,.05) 70%); }
|
|
1106
|
+
.council-stage::before { background-position: center 42%; filter: saturate(.56) brightness(.58) contrast(1.08); }
|
|
1107
|
+
.council-stage::after { background: radial-gradient(68% 56% at 50% 24%, rgba(176,111,64,.18), transparent 68%), linear-gradient(0deg, rgba(11,8,7,.96), rgba(11,8,7,.22) 74%); }
|
|
1108
|
+
.council-panel { width: min(980px,92%); }
|
|
1109
|
+
.council-cast { display: flex; justify-content: center; gap: .55rem; margin: .65rem 0 .35rem; }
|
|
1110
|
+
.council-cast figure { width: 72px; margin: 0; text-align: center; }
|
|
1111
|
+
.council-cast img { width: 52px; height: 52px; object-fit: cover; object-position: 50% 18%; border: 1px solid rgba(218,180,112,.45); border-radius: 50%; filter: saturate(.78); }
|
|
1112
|
+
.council-cast figcaption { margin-top: .2rem; color: #d7c09b; font: .66rem var(--sans); letter-spacing: .12em; }
|
|
1113
|
+
.council-note { margin: .3rem auto .7rem; color: #aa9b86; text-align: center; font: .74rem/1.45 var(--sans); }
|
|
1114
|
+
.council-panel .choice-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
1115
|
+
.council-aftermath-stage { overflow: hidden; background: #140d0b; }
|
|
1116
|
+
.council-aftermath-stage::after { background: linear-gradient(90deg,rgba(12,8,7,.98) 0%,rgba(12,8,7,.9) 47%,rgba(12,8,7,.12) 76%),linear-gradient(0deg,rgba(84,48,26,.25),transparent 68%); }
|
|
1117
|
+
.council-resolution-cast { position: absolute; z-index: 3; inset: 3% 2.5% 3% 49%; display: flex; gap: .35rem; align-items: stretch; }
|
|
1118
|
+
.council-resolution-cast figure { position: relative; flex: 1 1 0; min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(220,188,127,.2); background: #1a120f; filter: saturate(.5) brightness(.6); transition: filter .25s ease, transform .25s ease; }
|
|
1119
|
+
.council-resolution-cast figure.speaking { z-index: 2; border-color: rgba(218,157,91,.72); filter: saturate(.9) brightness(.84); transform: translateY(-.7rem); box-shadow: 0 20px 55px rgba(0,0,0,.48); }
|
|
1120
|
+
.council-resolution-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 13%; }
|
|
1121
|
+
.council-resolution-cast figcaption { position: absolute; inset: auto 0 0; padding: 3.6rem .55rem .65rem; background: linear-gradient(transparent,rgba(12,8,7,.97) 46%); }
|
|
1122
|
+
.council-resolution-cast b { display: block; color: #e7d2b2; font-size: .8rem; }
|
|
1123
|
+
.council-aftermath-panel { z-index: 5; left: 3.5%; top: 50%; bottom: auto; width: 48%; max-height: 88%; padding: 1.3rem; overflow: clip; border-color: rgba(205,150,83,.55); transform: translateY(-50%); }
|
|
1124
|
+
.council-rule-slip { margin: .75rem 0; padding: .7rem .8rem; border-left: 2px solid #a94d3d; color: #c8b696; background: rgba(70,30,23,.2); }
|
|
1125
|
+
.council-rule-slip span, .council-rule-slip b { display: block; }
|
|
1126
|
+
.council-rule-slip span { color: #d49e72; font: .58rem var(--sans); letter-spacing: .12em; }
|
|
1127
|
+
.council-rule-slip b { margin-top: .3rem; font: 500 .68rem/1.55 var(--sans); }
|
|
1128
|
+
.public-followup-stage::before { background-position: center 34%; filter: saturate(.48) brightness(.42) contrast(1.08); }
|
|
1129
|
+
.public-followup-stage::after { background: linear-gradient(0deg, rgba(12,8,7,.98) 0%, rgba(12,8,7,.72) 52%, rgba(12,8,7,.18) 100%); }
|
|
1130
|
+
.public-followup-panel { left: 3%; right: 3%; bottom: 3%; max-height: 94%; padding: 1rem 1.25rem; overflow: clip; }
|
|
1131
|
+
.public-followup-panel .phase-header > p:last-child { max-width: 62rem; }
|
|
1132
|
+
.public-followup-cast { display: flex; gap: .5rem; margin: .65rem 0 .35rem; }
|
|
1133
|
+
.public-followup-cast figure { display: flex; align-items: center; gap: .35rem; margin: 0; padding: .25rem .45rem; border: 1px solid rgba(220,188,127,.22); background: rgba(0,0,0,.22); }
|
|
1134
|
+
.public-followup-cast img { width: 34px; height: 34px; object-fit: cover; object-position: 50% 14%; border-radius: 50%; filter: saturate(.72); }
|
|
1135
|
+
.public-followup-cast figcaption { color: #d4bc94; font: .64rem var(--sans); }
|
|
1136
|
+
.public-followup-note { margin: .45rem 0 .7rem; padding-left: .65rem; border-left: 2px solid var(--cinnabar); color: #b1a18a; font: .7rem/1.55 var(--sans); }
|
|
1137
|
+
.public-followup-panel .choice-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
1138
|
+
|
|
1139
|
+
.public-evidence-stage { overflow: hidden; background: #100b09; }
|
|
1140
|
+
.public-evidence-stage::before { background-position: center 34%; filter: saturate(.48) brightness(.3) contrast(1.12); }
|
|
1141
|
+
.public-evidence-stage::after { background: linear-gradient(90deg,rgba(9,6,5,.98),rgba(9,6,5,.82) 58%,rgba(9,6,5,.28)),linear-gradient(0deg,rgba(114,74,27,.22),transparent 70%); }
|
|
1142
|
+
.public-evidence-panel { left: 3%; right: 3%; top: 50%; bottom: auto; max-height: 94%; padding: 1rem 1.2rem; overflow: clip; border-color: rgba(181,145,72,.68); transform: translateY(-50%); }
|
|
1143
|
+
.public-evidence-panel .phase-header > p:last-child { max-width: 68rem; }
|
|
1144
|
+
.external-witnesses { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; margin: .7rem 0; }
|
|
1145
|
+
.external-witnesses article { padding: .52rem .62rem; border: 1px solid rgba(190,155,87,.25); background: rgba(26,18,13,.8); }
|
|
1146
|
+
.external-witnesses small,.external-witnesses b { display: block; }
|
|
1147
|
+
.external-witnesses small { color: #af8c54; font: .72rem var(--sans); letter-spacing: .06em; }
|
|
1148
|
+
.external-witnesses b { margin: .12rem 0 .18rem; color: #e0c796; font-size: .8rem; }
|
|
1149
|
+
.external-witnesses p { margin: 0; color: #b4a792; font: .72rem/1.45 var(--serif); }
|
|
1150
|
+
.evidence-chain-slots { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .45rem; margin: .65rem 0; padding: 0; list-style: none; }
|
|
1151
|
+
.evidence-chain-slots li { min-height: 58px; display: grid; grid-template-columns: 1.4rem 1fr; grid-template-rows: auto auto; align-content: center; column-gap: .38rem; padding: .48rem .55rem; border: 1px dashed rgba(194,161,101,.25); background: rgba(9,7,6,.58); color: #73695d; }
|
|
1152
|
+
.evidence-chain-slots i { grid-row: 1 / 3; align-self: center; width: 1.25rem; height: 1.25rem; display: grid; place-items: center; border: 1px solid currentColor; border-radius: 50%; font: normal .72rem var(--sans); }
|
|
1153
|
+
.evidence-chain-slots span,.evidence-chain-slots b { display: block; }
|
|
1154
|
+
.evidence-chain-slots span { color: #b4a690; font: .72rem/1.3 var(--serif); }
|
|
1155
|
+
.evidence-chain-slots b { margin-top: .12rem; color: #8f806c; font: .72rem var(--sans); letter-spacing: .04em; }
|
|
1156
|
+
.evidence-chain-slots li.filled { border-style: solid; border-color: rgba(194,161,101,.48); color: #c6a15e; }
|
|
1157
|
+
.evidence-chain-slots li.strength-2 { box-shadow: inset 0 0 0 1px rgba(171,120,49,.16); background: rgba(82,57,24,.2); }
|
|
1158
|
+
.evidence-chain-slots li.strength-2 b { color: #c9ad75; }
|
|
1159
|
+
.evidence-chain-slots li.strength-0 { border-color: rgba(150,58,42,.62); color: #b85c49; }
|
|
1160
|
+
.evidence-chain-slots li.strength-0 b { color: #c87866; }
|
|
1161
|
+
.evidence-resistance,.public-evidence-echo { margin: .55rem 0; padding: .52rem .65rem; border-left: 2px solid #9f4e3e; background: rgba(90,32,24,.18); }
|
|
1162
|
+
.evidence-resistance span,.public-evidence-echo span { display: block; margin-bottom: .16rem; color: #d08067; font: .72rem var(--sans); letter-spacing: .06em; }
|
|
1163
|
+
.evidence-resistance p,.public-evidence-echo p { margin: 0; color: #c0ad97; font: .72rem/1.5 var(--serif); }
|
|
1164
|
+
.public-evidence-rule { margin: .5rem 0; color: #b8a68e; font: .72rem/1.5 var(--serif); }
|
|
1165
|
+
.public-evidence-choices { grid-template-columns: repeat(4,minmax(0,1fr)); }
|
|
1166
|
+
.public-evidence-choices .choice-button { min-height: 76px; }
|
|
1167
|
+
.evidence-verdict { margin-top: .65rem; padding: .7rem .78rem; border: 1px solid rgba(190,155,87,.44); background: rgba(34,23,13,.88); }
|
|
1168
|
+
.evidence-verdict small { color: #c39c55; font: .72rem var(--sans); letter-spacing: .06em; }
|
|
1169
|
+
.evidence-verdict h3 { margin: .18rem 0 .28rem; color: #ead5a6; font-size: 1.05rem; }
|
|
1170
|
+
.evidence-verdict p { margin: 0 0 .6rem; color: #c9b9a3; font: .72rem/1.55 var(--serif); }
|
|
1171
|
+
.evidence-verdict .ink-button { min-width: 18rem; }
|
|
1172
|
+
.result-broken .evidence-verdict { border-color: rgba(156,61,45,.66); background: rgba(62,24,19,.88); }
|
|
1173
|
+
.public-evidence-echo { border-left-color: #aa7c36; background: rgba(104,73,27,.16); }
|
|
1174
|
+
.public-evidence-echo span { color: #d0aa64; }
|
|
1175
|
+
.public-evidence-echo b { display: block; margin-bottom: .2rem; color: #d8c29b; font: .62rem/1.35 var(--serif); }
|
|
1176
|
+
|
|
1177
|
+
.public-aftermath-stage { overflow: hidden; background: #120b0a; }
|
|
1178
|
+
.public-aftermath-stage::before { background-position: center 32%; filter: saturate(.52) brightness(.38) contrast(1.08); }
|
|
1179
|
+
.public-aftermath-stage::after { background: linear-gradient(90deg,rgba(11,7,6,.98) 0%,rgba(11,7,6,.91) 48%,rgba(11,7,6,.16) 78%),linear-gradient(0deg,rgba(93,38,25,.28),transparent 68%); }
|
|
1180
|
+
.public-aftermath-cast { position: absolute; z-index: 3; inset: 3% 2.2% 3% 50%; display: flex; gap: .3rem; align-items: stretch; }
|
|
1181
|
+
.public-aftermath-cast figure { position: relative; flex: 1 1 0; min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(220,188,127,.16); background: #160e0d; filter: saturate(.38) brightness(.48); transition: filter .25s ease, transform .25s ease, flex .25s ease; }
|
|
1182
|
+
.public-aftermath-cast figure.speaking { z-index: 2; flex-grow: 1.28; border-color: rgba(203,126,75,.82); filter: saturate(.92) brightness(.86); transform: translateY(-.65rem); box-shadow: 0 22px 58px rgba(0,0,0,.52); }
|
|
1183
|
+
.public-aftermath-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; }
|
|
1184
|
+
.public-aftermath-cast figcaption { position: absolute; inset: auto 0 0; padding: 4.2rem .48rem .62rem; background: linear-gradient(transparent,rgba(10,6,6,.98) 50%); }
|
|
1185
|
+
.public-aftermath-cast b { display: block; color: #ddc8a9; font-size: .72rem; }
|
|
1186
|
+
.public-aftermath-panel { z-index: 5; left: 3.5%; top: 50%; bottom: auto; width: 49%; max-height: 89%; padding: 1.25rem 1.35rem; overflow: clip; border-color: rgba(188,101,58,.64); transform: translateY(-50%); }
|
|
1187
|
+
.public-aftermath-panel .phase-header > p:last-child { max-width: 42rem; }
|
|
1188
|
+
.public-aftermath-ledger { margin: .75rem 0 .9rem; padding: .65rem .75rem; border-left: 2px solid #a64831; background: linear-gradient(90deg,rgba(119,45,30,.2),transparent); }
|
|
1189
|
+
.public-aftermath-ledger span, .public-aftermath-ledger b { display: block; }
|
|
1190
|
+
.public-aftermath-ledger span { margin-bottom: .24rem; color: #d69c6c; font: .58rem var(--sans); letter-spacing: .1em; }
|
|
1191
|
+
.public-aftermath-ledger b { color: #c9b89e; font: 400 .7rem/1.52 var(--serif); }
|
|
1192
|
+
.public-aftermath-panel > .ink-button { min-width: 14rem; }
|
|
1193
|
+
.public-day-10 .public-aftermath-panel { border-color: rgba(91,150,138,.62); }
|
|
1194
|
+
.public-day-10 .public-aftermath-ledger { border-left-color: #527f78; background: linear-gradient(90deg,rgba(43,103,93,.2),transparent); }
|
|
1195
|
+
.public-day-10 .public-aftermath-ledger span { color: #8ab8ae; }
|
|
1196
|
+
.public-day-15 .public-aftermath-panel { border-color: rgba(181,145,72,.68); }
|
|
1197
|
+
.public-day-15 .public-aftermath-ledger { border-left-color: #a57c34; background: linear-gradient(90deg,rgba(124,91,34,.2),transparent); }
|
|
1198
|
+
.public-day-15 .public-aftermath-ledger span { color: #d1ad64; }
|
|
1199
|
+
.act-transition-stage::before { background-position: center 30%; filter: saturate(.42) brightness(.38) contrast(1.12); }
|
|
1200
|
+
.act-transition-stage::after { background: radial-gradient(62% 70% at 72% 20%, rgba(164,70,43,.2), transparent 70%), linear-gradient(90deg, rgba(12,8,7,.98) 0%, rgba(12,8,7,.82) 55%, rgba(12,8,7,.22) 100%); }
|
|
1201
|
+
.act-transition-3::after { background: radial-gradient(60% 70% at 74% 18%, rgba(64,108,102,.2), transparent 70%), linear-gradient(90deg, rgba(10,10,9,.98), rgba(12,15,14,.78) 58%, rgba(10,12,11,.2)); }
|
|
1202
|
+
.act-transition-4::after { background: radial-gradient(60% 70% at 74% 18%, rgba(140,36,28,.25), transparent 70%), linear-gradient(90deg, rgba(12,7,6,.99), rgba(27,10,8,.8) 58%, rgba(10,7,6,.18)); }
|
|
1203
|
+
.act-transition-panel { z-index: 5; left: 3.5%; top: 4%; bottom: 4%; width: min(760px,58%); padding: 1.25rem; overflow: clip; }
|
|
1204
|
+
.act-transition-panel .choice-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
1205
|
+
.act-reveal { margin: .75rem 0; padding: .65rem .8rem; border: 1px solid rgba(215,173,100,.32); border-left: 3px solid var(--cinnabar); color: #dbc7a6; font: .78rem/1.65 var(--serif); background: rgba(0,0,0,.24); }
|
|
1206
|
+
.act-reveal span { display: block; margin-bottom: .2rem; color: #b18d5e; font: .6rem var(--sans); letter-spacing: .14em; }
|
|
1207
|
+
.act-source-echo { margin: .65rem 0; padding: .58rem .7rem; border: 1px solid rgba(180,132,78,.24); background: rgba(31,24,19,.7); }
|
|
1208
|
+
.act-source-echo span, .act-source-echo b { display: block; }
|
|
1209
|
+
.act-source-echo span { color: #b89568; font: .54rem var(--sans); letter-spacing: .09em; }
|
|
1210
|
+
.act-source-echo b { margin: .18rem 0; color: #e0c499; font: .69rem var(--serif); }
|
|
1211
|
+
.act-source-echo p { margin: 0; color: #aa9a84; font: .61rem/1.55 var(--sans); }
|
|
1212
|
+
|
|
1213
|
+
.act-aftermath-stage { overflow: hidden; background: #110c0a; }
|
|
1214
|
+
.act-aftermath-stage::before { background-position: center 31%; filter: saturate(.45) brightness(.35) contrast(1.1); }
|
|
1215
|
+
.act-aftermath-stage::after { background: linear-gradient(90deg,rgba(11,8,7,.98) 0%,rgba(11,8,7,.92) 49%,rgba(11,8,7,.15) 80%),radial-gradient(58% 72% at 78% 22%,rgba(154,69,43,.22),transparent 72%); }
|
|
1216
|
+
.act-aftermath-cast { position: absolute; z-index: 3; inset: 3% 2.2% 3% 50%; display: flex; gap: .3rem; align-items: stretch; }
|
|
1217
|
+
.act-aftermath-cast figure { position: relative; flex: 1 1 0; min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(220,188,127,.16); background: #160f0d; filter: saturate(.38) brightness(.49); transition: filter .25s ease, transform .25s ease, flex .25s ease; }
|
|
1218
|
+
.act-aftermath-cast figure.speaking { z-index: 2; flex-grow: 1.28; border-color: rgba(202,142,76,.78); filter: saturate(.92) brightness(.86); transform: translateY(-.65rem); box-shadow: 0 22px 58px rgba(0,0,0,.52); }
|
|
1219
|
+
.act-aftermath-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; }
|
|
1220
|
+
.act-aftermath-cast figcaption { position: absolute; inset: auto 0 0; padding: 4.1rem .48rem .62rem; background: linear-gradient(transparent,rgba(10,7,6,.98) 50%); }
|
|
1221
|
+
.act-aftermath-cast b { display: block; color: #ddc8a9; font-size: .72rem; }
|
|
1222
|
+
.act-aftermath-panel { z-index: 5; left: 3.5%; top: 50%; bottom: auto; width: 49%; max-height: 89%; padding: 1.25rem 1.35rem; overflow: clip; border-color: rgba(188,117,57,.6); transform: translateY(-50%); }
|
|
1223
|
+
.act-aftermath-rule { margin: .75rem 0 .9rem; padding: .65rem .75rem; border-left: 2px solid #a86e36; background: linear-gradient(90deg,rgba(122,74,31,.2),transparent); }
|
|
1224
|
+
.act-aftermath-rule span, .act-aftermath-rule b { display: block; }
|
|
1225
|
+
.act-aftermath-rule span { margin-bottom: .24rem; color: #d0a05d; font: .58rem var(--sans); letter-spacing: .1em; }
|
|
1226
|
+
.act-aftermath-rule b { color: #c9b89e; font: 400 .7rem/1.52 var(--serif); }
|
|
1227
|
+
.act-aftermath-panel > .ink-button { min-width: 14rem; }
|
|
1228
|
+
.act-aftermath-3 .act-aftermath-panel { border-color: rgba(79,145,134,.62); }
|
|
1229
|
+
.act-aftermath-3 .act-aftermath-rule { border-left-color: #4f8078; background: linear-gradient(90deg,rgba(44,101,91,.2),transparent); }
|
|
1230
|
+
.act-aftermath-3 .act-aftermath-rule span { color: #88b8ae; }
|
|
1231
|
+
.act-aftermath-4 .act-aftermath-panel { border-color: rgba(172,119,79,.7); }
|
|
1232
|
+
.act-aftermath-4 .act-aftermath-rule { border-left-color: #985d43; background: linear-gradient(90deg,rgba(116,57,42,.22),transparent); }
|
|
1233
|
+
.act-aftermath-4 .act-aftermath-rule span { color: #d39474; }
|
|
1234
|
+
.act-internal-practice { margin: .65rem 0; padding: .58rem .68rem; border: 1px solid rgba(190,145,84,.2); background: rgba(55,34,23,.3); }
|
|
1235
|
+
.act-internal-practice span, .act-internal-practice b, .act-internal-practice p { display: block; }
|
|
1236
|
+
.act-internal-practice span { color: #b68c5e; font: .54rem var(--sans); letter-spacing: .08em; }
|
|
1237
|
+
.act-internal-practice b { margin: .18rem 0; color: #ddc29b; font: .68rem var(--serif); }
|
|
1238
|
+
.act-internal-practice p { margin: 0; color: #aa9a83; font: .61rem/1.5 var(--sans); }
|
|
1239
|
+
.external-rebuttal { margin-top: .7rem; }
|
|
1240
|
+
.external-rebuttal-context { margin-top: 0; }
|
|
1241
|
+
.external-rebuttal-context-pages { min-width: 0; }
|
|
1242
|
+
.external-rebuttal-context-pages > header { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .3rem; }
|
|
1243
|
+
.external-rebuttal-context-pages > header div { min-width: 0; padding: .42rem .48rem; border: 1px solid rgba(201,144,81,.24); background: rgba(16,9,7,.58); }
|
|
1244
|
+
.external-rebuttal-context-pages > header small, .external-rebuttal-context-pages > header b { display: block; }
|
|
1245
|
+
.external-rebuttal-context-pages > header small { color: #8f7b67; font: .49rem var(--sans); }
|
|
1246
|
+
.external-rebuttal-context-pages > header b { overflow: hidden; margin-top: .12rem; color: #d6b27b; font: .58rem var(--serif); text-overflow: ellipsis; white-space: nowrap; }
|
|
1247
|
+
.external-rebuttal-voices { display: grid; gap: .3rem; margin: .5rem 0; padding: 0; list-style: none; }
|
|
1248
|
+
.external-rebuttal-voices li { display: grid; grid-template-columns: 22px minmax(0,1fr); gap: .45rem; padding: .46rem .52rem; border-left: 2px solid #8d4d37; background: linear-gradient(90deg,rgba(104,48,35,.22),rgba(0,0,0,.12)); }
|
|
1249
|
+
.external-rebuttal-voices i { display: grid; place-items: center; width: 20px; height: 20px; border: 1px solid rgba(214,153,91,.42); border-radius: 50%; color: #d3a260; font: .54rem var(--sans); }
|
|
1250
|
+
.external-rebuttal-voices span, .external-rebuttal-voices b { display: block; }
|
|
1251
|
+
.external-rebuttal-voices span { color: #9e8a79; font: .72rem/1.3 var(--sans); }
|
|
1252
|
+
.external-rebuttal-voices b { margin: .08rem 0 .15rem; color: #dfc39a; font: .78rem var(--serif); }
|
|
1253
|
+
.external-rebuttal-voices p { margin: 0; color: #c2b099; font: .72rem/1.5 var(--sans); }
|
|
1254
|
+
.external-rebuttal-question { margin: .45rem 0 .55rem; color: #e4c9a5; font: .76rem/1.55 var(--serif); }
|
|
1255
|
+
.external-rebuttal-choices { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
1256
|
+
.external-rebuttal-result { margin: .7rem 0; padding: .68rem .75rem; border: 1px solid rgba(190,124,76,.38); border-left: 3px solid #a7553c; background: linear-gradient(90deg,rgba(109,48,34,.25),rgba(0,0,0,.12)); }
|
|
1257
|
+
.external-rebuttal-result span, .external-rebuttal-result b { display: block; }
|
|
1258
|
+
.external-rebuttal-result span { color: #d38d68; font: .72rem var(--sans); letter-spacing: .06em; }
|
|
1259
|
+
.external-rebuttal-result b { margin: .22rem 0; color: #ebcba5; font: .82rem var(--serif); }
|
|
1260
|
+
.external-rebuttal-result p { margin: 0; color: #c8b79d; font: .72rem/1.55 var(--sans); }
|
|
1261
|
+
.council-external-echo { margin: .55rem 0; padding: .52rem .65rem; border-left: 2px solid #a4573e; background: linear-gradient(90deg,rgba(111,48,35,.2),transparent); }
|
|
1262
|
+
.council-external-echo span, .council-external-echo b { display: block; }
|
|
1263
|
+
.council-external-echo span { color: #c48162; font: .52rem var(--sans); letter-spacing: .08em; }
|
|
1264
|
+
.council-external-echo b { margin: .16rem 0; color: #ddc19a; font: .67rem var(--serif); }
|
|
1265
|
+
.council-external-echo p { margin: 0; color: #a99982; font: .6rem/1.5 var(--sans); }
|
|
1266
|
+
.act-transition-cast { position: absolute; z-index: 4; top: 7%; right: 3.5%; display: grid; grid-template-columns: repeat(2,92px); gap: .55rem; }
|
|
1267
|
+
.act-transition-cast figure { position: relative; overflow: hidden; width: 92px; height: 122px; margin: 0; border: 1px solid rgba(220,188,127,.3); background: #1c1310; }
|
|
1268
|
+
.act-transition-cast figure:last-child { grid-column: 1 / -1; justify-self: center; }
|
|
1269
|
+
.act-transition-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; filter: saturate(.62) brightness(.72); }
|
|
1270
|
+
.act-transition-cast figcaption { position: absolute; inset: auto 0 0; padding: .25rem; color: #dac39b; text-align: center; font: .62rem var(--sans); background: rgba(12,8,7,.82); }
|
|
1271
|
+
.final-reckoning-stage::before { background-position: center 34%; filter: saturate(.35) brightness(.32) contrast(1.15); }
|
|
1272
|
+
.final-reckoning-stage::after { background: radial-gradient(60% 90% at 84% 12%, rgba(150,37,28,.22), transparent 72%), linear-gradient(90deg, rgba(10,7,6,.99) 0%, rgba(19,10,8,.88) 57%, rgba(10,7,6,.3) 100%); }
|
|
1273
|
+
.final-reckoning-panel { z-index: 5; left: 3%; right: 3%; bottom: 3%; max-height: 94%; padding: 1rem 1.2rem; overflow: clip; }
|
|
1274
|
+
.final-reckoning-panel .phase-header > p:last-child { max-width: 64rem; }
|
|
1275
|
+
.final-reckoning-panel .choice-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
1276
|
+
.final-reckoning-cast { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .45rem; margin: .65rem 0; }
|
|
1277
|
+
.final-reckoning-cast figure { display: flex; align-items: center; gap: .45rem; min-width: 0; margin: 0; padding: .38rem; border: 1px solid rgba(220,188,127,.22); background: rgba(0,0,0,.25); }
|
|
1278
|
+
.final-reckoning-cast img { flex: 0 0 42px; width: 42px; height: 50px; object-fit: cover; object-position: 50% 14%; filter: saturate(.66); }
|
|
1279
|
+
.final-reckoning-cast figcaption { min-width: 0; color: #dfc89e; font: .68rem var(--sans); }
|
|
1280
|
+
.final-reckoning-cast small { display: -webkit-box; overflow: hidden; margin-top: .18rem; color: #938571; font: .58rem/1.35 var(--sans); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
|
|
1281
|
+
.reckoning-note { margin: .45rem 0 .7rem; padding: .55rem .7rem; border-left: 2px solid var(--gold); color: #c2ae8d; font: .7rem/1.55 var(--sans); background: rgba(0,0,0,.2); }
|
|
1282
|
+
.reckoning-ledgers { position: absolute; z-index: 4; top: 4%; right: 4%; display: flex; gap: .7rem; transform: rotate(4deg); }
|
|
1283
|
+
.reckoning-ledgers i { display: grid; place-items: center; width: 74px; height: 112px; border: 1px solid rgba(216,171,94,.5); color: #d7b573; font: 1.25rem var(--serif); background: linear-gradient(110deg,#3b2018,#170e0b); box-shadow: 0 14px 30px rgba(0,0,0,.5); }
|
|
1284
|
+
|
|
1285
|
+
.final-aftermath-stage { overflow: hidden; background: #0d0908; }
|
|
1286
|
+
.final-aftermath-stage::before { background-position: center 35%; filter: saturate(.38) brightness(.3) contrast(1.15); }
|
|
1287
|
+
.final-aftermath-stage::after { background: linear-gradient(90deg,rgba(9,6,5,.99) 0%,rgba(14,8,7,.94) 49%,rgba(9,6,5,.16) 81%),radial-gradient(58% 75% at 82% 18%,rgba(157,43,31,.25),transparent 72%); }
|
|
1288
|
+
.final-aftermath-cast { position: absolute; z-index: 3; inset: 3% 2.1% 3% 50%; display: flex; gap: .28rem; align-items: stretch; }
|
|
1289
|
+
.final-aftermath-cast figure { position: relative; flex: 1 1 0; min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(221,183,112,.14); background: #150d0c; filter: saturate(.34) brightness(.44); transition: filter .25s ease, transform .25s ease, flex .25s ease; }
|
|
1290
|
+
.final-aftermath-cast figure.speaking { z-index: 2; flex-grow: 1.32; border-color: rgba(204,119,72,.86); filter: saturate(.92) brightness(.84); transform: translateY(-.7rem); box-shadow: 0 24px 64px rgba(0,0,0,.56); }
|
|
1291
|
+
.final-aftermath-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; }
|
|
1292
|
+
.final-aftermath-cast figcaption { position: absolute; inset: auto 0 0; padding: 4.2rem .46rem .62rem; background: linear-gradient(transparent,rgba(9,6,5,.99) 51%); }
|
|
1293
|
+
.final-aftermath-cast b { display: block; color: #e2ccb0; font-size: .72rem; }
|
|
1294
|
+
.final-aftermath-panel { z-index: 6; left: 3.4%; top: 50%; bottom: auto; width: 49%; max-height: 91%; padding: 1.25rem 1.35rem; overflow: clip; border-color: rgba(184,79,55,.7); transform: translateY(-50%); }
|
|
1295
|
+
.final-custody-rule { margin: .75rem 0 .9rem; padding: .68rem .78rem; border: 1px solid rgba(209,150,91,.18); border-left: 2px solid #a84f38; background: linear-gradient(90deg,rgba(124,42,31,.22),transparent); }
|
|
1296
|
+
.final-custody-rule span, .final-custody-rule b { display: block; }
|
|
1297
|
+
.final-custody-rule span { margin-bottom: .24rem; color: #df966b; font: .58rem var(--sans); letter-spacing: .1em; }
|
|
1298
|
+
.final-custody-rule b { color: #cdbb9f; font: 400 .7rem/1.52 var(--serif); }
|
|
1299
|
+
.final-aftermath-choices { grid-template-columns: repeat(2,minmax(0,1fr)); }
|
|
1300
|
+
.final-aftermath-panel > .ink-button { min-width: 15rem; }
|
|
1301
|
+
.final-aftermath-ledgers { position: absolute; z-index: 5; top: 3%; right: 2.8%; display: flex; gap: .35rem; transform: rotate(3deg); pointer-events: none; }
|
|
1302
|
+
.final-aftermath-ledgers i { display: grid; place-items: center; width: 42px; height: 64px; border: 1px solid rgba(216,151,89,.44); color: #d3a064; font: .82rem var(--serif); background: linear-gradient(115deg,#351a15,#120b09); box-shadow: 0 10px 26px rgba(0,0,0,.52); }
|
|
1303
|
+
.final-approach-final_pay_receipt .final-custody-rule { border-left-color: #a9853e; background: linear-gradient(90deg,rgba(115,86,31,.22),transparent); }
|
|
1304
|
+
.final-approach-final_pay_receipt .final-custody-rule span { color: #d5b56f; }
|
|
1305
|
+
.final-approach-final_five_custody .final-custody-rule { border-left-color: #4f8178; background: linear-gradient(90deg,rgba(39,98,88,.22),transparent); }
|
|
1306
|
+
.final-approach-final_five_custody .final-custody-rule span { color: #8ebcb2; }
|
|
1307
|
+
.banquet-panel { left: 3%; right: 3%; bottom: 3%; padding: 1rem 1.25rem; }
|
|
1308
|
+
.banquet-panel .phase-header > p:last-child { max-width: 58rem; }
|
|
1309
|
+
.banquet-panel .choice-grid { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: .8rem; }
|
|
1310
|
+
.banquet-panel .choice-button { min-height: 68px; }
|
|
1311
|
+
|
|
1312
|
+
/* 第二十夜共同议事:选择前仍不泄露奖励 CG,五人立绘与宅院只说明“都到了”。 */
|
|
1313
|
+
.shared-stage::before { filter: saturate(.55) brightness(.58) sepia(.22); }
|
|
1314
|
+
.shared-stage::after { background: radial-gradient(65% 75% at 50% 24%, rgba(196,123,54,.2), transparent 65%), linear-gradient(0deg, rgba(12,8,7,.95), rgba(12,8,7,.12) 78%); }
|
|
1315
|
+
.shared-panel { left: 3%; right: 3%; bottom: 3%; padding: 1rem 1.25rem; }
|
|
1316
|
+
.shared-panel .phase-header > p:last-child { max-width: 58rem; }
|
|
1317
|
+
.shared-panel .shared-seals { max-width: 42rem; margin: .65rem 0; }
|
|
1318
|
+
.shared-proof { margin: -.2rem 0 .65rem; color: #c8b38f; font: .68rem var(--sans); }
|
|
1319
|
+
.shared-panel .choice-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
1320
|
+
.shared-panel .choice-button { min-height: 68px; }
|
|
1321
|
+
|
|
1322
|
+
/* 一院结局也要走完三拍:主角占据画面,另外四院仍作为有权利的人留在构图里。 */
|
|
1323
|
+
.personal-finale-stage { overflow: hidden; background: #130e0c; }
|
|
1324
|
+
.personal-finale-stage::after { background: linear-gradient(90deg,rgba(13,9,8,.99) 0%,rgba(13,9,8,.91) 48%,rgba(13,9,8,.15) 76%), linear-gradient(0deg,rgba(95,38,24,.24),transparent 60%); }
|
|
1325
|
+
.personal-finale-main { position: absolute; z-index: 1; inset: 0; background-size: cover; background-position: center; filter: saturate(.76) brightness(.69) contrast(1.04); }
|
|
1326
|
+
.personal-finale-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 50%; padding: 1.3rem; overflow: clip; border-color: rgba(195,141,89,.48); }
|
|
1327
|
+
.personal-finale-panel .choice-grid { grid-template-columns: 1fr 1fr; }
|
|
1328
|
+
.personal-finale-voice { margin: .65rem 0; padding: .65rem .78rem; border-left: 2px solid var(--cinnabar); background: rgba(99,38,28,.18); }
|
|
1329
|
+
.personal-finale-voice b { color: #deb780; font: .72rem var(--serif); letter-spacing: .08em; }
|
|
1330
|
+
.personal-finale-voice p { margin: .22rem 0 0; color: #decdb4; font: .72rem/1.65 var(--serif); }
|
|
1331
|
+
.personal-finale-last { margin: .6rem 0; padding: .62rem .72rem; border-left: 2px solid rgba(201,156,92,.55); color: #cbbca6; background: rgba(0,0,0,.25); font: .67rem/1.58 var(--sans); }
|
|
1332
|
+
.personal-finale-last span { display: block; margin-bottom: .2rem; color: #b78d58; font-size: .57rem; letter-spacing: .11em; }
|
|
1333
|
+
.personal-finale-others { position: absolute; z-index: 4; right: 1.8%; bottom: 2%; display: flex; gap: .35rem; }
|
|
1334
|
+
.personal-finale-others figure { position: relative; width: 64px; height: 86px; margin: 0; overflow: hidden; border: 1px solid rgba(219,187,129,.28); background: #17110f; opacity: .82; }
|
|
1335
|
+
.personal-finale-others img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; filter: grayscale(.35) saturate(.55) brightness(.65); }
|
|
1336
|
+
.personal-finale-others figcaption { position: absolute; inset: auto 0 0; padding: 1.1rem .2rem .2rem; color: #d8c09a; text-align: center; font: .55rem var(--sans); background: linear-gradient(transparent,rgba(12,8,7,.94) 56%); }
|
|
1337
|
+
.personal-finale-others small { display: none; }
|
|
1338
|
+
.personal-finale-result-stage { overflow: hidden; background: #100e0b; }
|
|
1339
|
+
.personal-finale-result-stage::after { background: radial-gradient(54% 72% at 68% 26%,rgba(179,125,67,.18),transparent 68%),linear-gradient(90deg,rgba(10,9,8,.99) 0%,rgba(10,9,8,.92) 51%,rgba(10,9,8,.18) 78%),linear-gradient(0deg,rgba(45,82,65,.22),transparent 62%); }
|
|
1340
|
+
.personal-finale-result-main { background-position: 58% 18%; filter: saturate(.88) brightness(.76) contrast(1.06); transform: scale(1.035); }
|
|
1341
|
+
.personal-finale-result-panel { border-color: rgba(111,174,144,.55); background: linear-gradient(145deg,rgba(19,25,21,.97),rgba(18,13,11,.94)); }
|
|
1342
|
+
.personal-finale-response { margin: .68rem 0; padding: .7rem .82rem; border: 1px solid rgba(111,174,144,.23); border-left: 3px solid #639985; background: linear-gradient(90deg,rgba(39,89,72,.24),rgba(22,18,15,.08)); }
|
|
1343
|
+
.personal-finale-response b,.personal-finale-response p { display: block; }
|
|
1344
|
+
.personal-finale-response b { color: #9ec3b2; font: .68rem var(--sans); letter-spacing: .1em; }
|
|
1345
|
+
.personal-finale-response p { margin: .28rem 0 0; color: #e2d2b9; font: .78rem/1.72 var(--serif); }
|
|
1346
|
+
.personal-finale-agreements { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .42rem; margin: .65rem 0; }
|
|
1347
|
+
.personal-finale-agreements header { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; color: #9e8a69; font: .58rem var(--sans); letter-spacing: .08em; }
|
|
1348
|
+
.personal-finale-agreements header b { color: #c8aa77; font-weight: 600; }
|
|
1349
|
+
.personal-finale-agreements > div { min-width: 0; padding: .55rem .62rem; border: 1px solid rgba(205,164,101,.2); background: rgba(82,55,30,.13); }
|
|
1350
|
+
.personal-finale-agreements small,.personal-finale-agreements b,.personal-finale-agreements p { display: block; }
|
|
1351
|
+
.personal-finale-agreements small { color: #9d7c52; font: .52rem var(--sans); }
|
|
1352
|
+
.personal-finale-agreements b { margin-top: .18rem; color: #d9bd8d; font: .66rem var(--serif); }
|
|
1353
|
+
.personal-finale-agreements p { margin: .25rem 0 0; color: #bfb09a; font: .59rem/1.5 var(--sans); }
|
|
1354
|
+
.personal-finale-no-agreement { margin: .65rem 0; padding: .52rem .62rem; border-left: 2px solid rgba(174,141,92,.42); color: #aa9b87; background: rgba(0,0,0,.18); font: .61rem/1.5 var(--sans); }
|
|
1355
|
+
.personal-finale-result-ledger { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .18rem .55rem; align-items: baseline; margin: .68rem 0; padding: .58rem .66rem; border-top: 1px solid rgba(111,174,144,.2); border-bottom: 1px solid rgba(111,174,144,.2); }
|
|
1356
|
+
.personal-finale-result-ledger span { color: #76a48f; font: .56rem var(--sans); letter-spacing: .1em; }
|
|
1357
|
+
.personal-finale-result-ledger b { color: #d9c29a; font: .7rem var(--serif); }
|
|
1358
|
+
.personal-finale-result-ledger em { grid-column: 2; color: #948775; font: normal .56rem var(--sans); }
|
|
1359
|
+
.personal-finale-result-continue { min-width: 14rem; border-color: rgba(111,174,144,.54); }
|
|
1360
|
+
.result-witnesses { opacity: .66; }
|
|
1361
|
+
.result-witnesses figure { transition: opacity .18s ease, transform .18s ease, border-color .18s ease; }
|
|
1362
|
+
.result-witnesses figure.is-responding { opacity: 1; transform: translateY(-.28rem); border-color: rgba(220,180,109,.72); box-shadow: 0 .45rem 1.4rem rgba(0,0,0,.36); }
|
|
1363
|
+
.result-witnesses figure.is-responding figcaption { color: #ead2a5; }
|
|
1364
|
+
.personal-departure-stage .personal-finale-result-panel { border-color: rgba(205,164,101,.58); background: linear-gradient(145deg,rgba(29,25,18,.97),rgba(17,17,14,.95)); }
|
|
1365
|
+
.personal-departure-reasons { margin: .62rem 0; padding: .62rem .7rem; border: 1px solid rgba(205,164,101,.22); background: rgba(72,53,30,.14); }
|
|
1366
|
+
.personal-departure-reasons header { display: flex; justify-content: space-between; gap: .6rem; color: #a68d68; font: .56rem var(--sans); letter-spacing: .06em; }
|
|
1367
|
+
.personal-departure-reasons header b { color: #d3b780; font-weight: 600; }
|
|
1368
|
+
.personal-departure-reasons ol { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .34rem .75rem; margin: .5rem 0 0; padding: 0; list-style: none; counter-reset: departure-reason; }
|
|
1369
|
+
.personal-departure-reasons li { position: relative; padding-left: 1.15rem; color: #bfb3a0; font: .57rem/1.55 var(--sans); counter-increment: departure-reason; }
|
|
1370
|
+
.personal-departure-reasons li::before { content: counter(departure-reason); position: absolute; left: 0; top: .04rem; width: .82rem; height: .82rem; border: 1px solid rgba(205,164,101,.35); border-radius: 50%; color: #c4a36e; font: .46rem/.78rem var(--sans); text-align: center; }
|
|
1371
|
+
|
|
1372
|
+
/* 逐院问灯:第十九夜只给候选权,第二十夜由本人逐一决定是否落席。 */
|
|
1373
|
+
.alliance-assembly-stage { overflow: hidden; background: radial-gradient(circle at 74% 22%,#4a4234,#120e0c 72%); }
|
|
1374
|
+
.alliance-assembly-stage::after { background: linear-gradient(90deg,rgba(13,9,7,.985) 0%,rgba(13,9,7,.91) 51%,rgba(13,9,7,.12) 81%),linear-gradient(0deg,rgba(103,71,36,.18),transparent 60%); }
|
|
1375
|
+
.alliance-assembly-panel { z-index:6; left:3.5%; top:4%; bottom:4%; width:49%; padding:1.2rem; overflow:clip; border-color:rgba(205,164,101,.45); }
|
|
1376
|
+
.alliance-assembly-cast { position:absolute; z-index:3; inset:0 0 0 48%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:minmax(0,1fr); }
|
|
1377
|
+
.alliance-assembly-cast.alliance-count-2 { grid-template-rows:1fr; }
|
|
1378
|
+
.alliance-assembly-cast.alliance-count-3 { grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:1fr; }
|
|
1379
|
+
.alliance-assembly-cast figure { position:relative; min-width:0; min-height:0; margin:0; overflow:hidden; border:1px solid rgba(205,164,101,.12); opacity:.5; }
|
|
1380
|
+
.alliance-assembly-cast figure.is-responding,.alliance-assembly-cast figure[class*="outcome-"] { opacity:1; }
|
|
1381
|
+
.alliance-assembly-cast figure.is-responding { border-color:rgba(225,188,115,.72); box-shadow:inset 0 0 0 2px rgba(225,188,115,.18); }
|
|
1382
|
+
.alliance-assembly-cast figure.outcome-withdraw { opacity:.72; filter:saturate(.58); }
|
|
1383
|
+
.alliance-assembly-cast img { width:100%; height:100%; object-fit:cover; object-position:50% 16%; filter:saturate(.76) brightness(.68); }
|
|
1384
|
+
.alliance-assembly-cast figcaption { position:absolute; inset:auto 0 0; padding:2.5rem .6rem .55rem; color:#ead7b6; background:linear-gradient(transparent,rgba(11,8,6,.96) 48%); }
|
|
1385
|
+
.alliance-assembly-cast span,.alliance-assembly-cast b,.alliance-assembly-cast small,.alliance-assembly-cast em { display:block; }
|
|
1386
|
+
.alliance-assembly-cast span { color:#a58a64; font:.52rem var(--sans); }
|
|
1387
|
+
.alliance-assembly-cast b { margin:.12rem 0; font-size:.78rem; }
|
|
1388
|
+
.alliance-assembly-cast small { color:#c9b18a; font:.55rem var(--sans); }
|
|
1389
|
+
.alliance-assembly-cast em { margin-top:.16rem; color:#9d917f; font:normal .5rem/1.35 var(--sans); }
|
|
1390
|
+
.alliance-assembly-answer { margin:.62rem 0; padding:.68rem .75rem; border-left:2px solid #c49a5b; background:rgba(92,63,27,.18); }
|
|
1391
|
+
.alliance-assembly-answer span,.alliance-assembly-answer b,.alliance-assembly-answer em { display:block; }
|
|
1392
|
+
.alliance-assembly-answer span { color:#a98755; font:.55rem var(--sans); letter-spacing:.06em; }
|
|
1393
|
+
.alliance-assembly-answer b { margin:.24rem 0; color:#e0c28d; }
|
|
1394
|
+
.alliance-assembly-answer p { margin:.26rem 0; color:#e1d1b7; font:.73rem/1.6 var(--serif); }
|
|
1395
|
+
.alliance-assembly-answer em { color:#aca08d; font:normal .57rem/1.45 var(--sans); }
|
|
1396
|
+
.alliance-assembly-reasons { display:grid; gap:.3rem; margin:.55rem 0; }
|
|
1397
|
+
.alliance-assembly-reasons p { margin:0; padding:.42rem .52rem; border-left:1px solid rgba(205,164,101,.42); color:#b8ad9a; background:rgba(62,45,25,.12); font:.56rem/1.5 var(--sans); }
|
|
1398
|
+
.alliance-assembly-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.35rem; margin:.58rem 0; }
|
|
1399
|
+
.alliance-assembly-summary p { margin:0; padding:.48rem .55rem; border:1px solid rgba(205,164,101,.2); background:rgba(57,39,19,.16); }
|
|
1400
|
+
.alliance-assembly-summary b,.alliance-assembly-summary span,.alliance-assembly-summary em { display:block; }
|
|
1401
|
+
.alliance-assembly-summary b { color:#d6b879; font:.62rem var(--serif); }
|
|
1402
|
+
.alliance-assembly-summary span { margin:.16rem 0; color:#c8baa3; font:.55rem/1.4 var(--sans); }
|
|
1403
|
+
.alliance-assembly-summary em { color:#928879; font:normal .5rem/1.35 var(--sans); }
|
|
1404
|
+
.alliance-assembly-chain { margin:.45rem 0; padding:.42rem .52rem; border-left:2px solid rgba(111,174,157,.55); color:#9eb5aa; background:rgba(16,49,42,.17); font:.56rem/1.45 var(--sans); }
|
|
1405
|
+
.alliance-assembly-chain b { display:block; margin-bottom:.22rem; color:#d6b879; font:.62rem var(--serif); }
|
|
1406
|
+
.alliance-assembly-chain span { display:flex; align-items:baseline; justify-content:space-between; gap:.55rem; padding:.12rem 0; border-top:1px solid rgba(214,184,121,.09); }
|
|
1407
|
+
.alliance-assembly-chain em { color:#948a7d; font:normal .5rem/1.35 var(--sans); text-align:right; }
|
|
1408
|
+
|
|
1409
|
+
/* 双院/三院/四院终章:成员并排占据画面,不把她们缩成五院终章的缺席头像。 */
|
|
1410
|
+
.alliance-night-stage { overflow: hidden; background: radial-gradient(circle at 72% 28%,#3f493d,#130f0d 72%); }
|
|
1411
|
+
.alliance-night-stage::after { background: linear-gradient(90deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.9) 48%,rgba(13,9,8,.1) 78%), linear-gradient(0deg,rgba(26,77,65,.24),transparent 62%); }
|
|
1412
|
+
.alliance-night-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 48%; padding: 1.3rem; overflow: clip; border-color: rgba(111,174,157,.48); }
|
|
1413
|
+
.alliance-night-panel .choice-grid { grid-template-columns: 1fr 1fr; }
|
|
1414
|
+
.alliance-cast { position: absolute; z-index: 3; inset: 0 0 0 45%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
|
|
1415
|
+
.alliance-size-3 .alliance-cast { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
1416
|
+
.alliance-size-4 .alliance-cast { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(0,1fr)); }
|
|
1417
|
+
.alliance-size-4 .alliance-cast figure:nth-child(even) { transform:none; }
|
|
1418
|
+
.alliance-cast figure { position: relative; min-width: 0; height: 100%; margin: 0; overflow: hidden; border-left: 1px solid rgba(218,190,136,.2); }
|
|
1419
|
+
.alliance-cast figure:nth-child(even) { transform: translateY(3.5%); }
|
|
1420
|
+
.alliance-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 12%; filter: saturate(.75) brightness(.67); }
|
|
1421
|
+
.alliance-cast figcaption { position: absolute; inset: auto .45rem 3%; padding: 2.8rem .65rem .7rem; color: #ead8b9; background: linear-gradient(transparent,rgba(11,8,7,.96) 45%); }
|
|
1422
|
+
.alliance-cast span, .alliance-cast b { display: block; }
|
|
1423
|
+
.alliance-cast span { color: #86a99c; font: .58rem var(--sans); letter-spacing: .11em; }
|
|
1424
|
+
.alliance-cast b { margin-top: .18rem; font-size: .9rem; }
|
|
1425
|
+
.alliance-cast p { display: none; }
|
|
1426
|
+
.alliance-voices-inline { display: grid; gap: .38rem; margin: .65rem 0; }
|
|
1427
|
+
.alliance-voices-inline p { margin: 0; padding: .52rem .62rem; border-left: 2px solid rgba(111,174,157,.6); color: #c6b79f; background: rgba(16,45,39,.2); font: .67rem/1.5 var(--sans); }
|
|
1428
|
+
.alliance-voices-inline b { margin-right: .55rem; color: #9cc1b6; font-size: .7rem; }
|
|
1429
|
+
.alliance-last-result { margin: .65rem 0; padding: .65rem .75rem; border-left: 2px solid #6d9e90; color: #cbbda7; background: rgba(16,49,42,.22); font: .68rem/1.55 var(--sans); }
|
|
1430
|
+
.alliance-last-result span { display: block; margin-bottom: .22rem; color: #82a99c; font-size: .58rem; letter-spacing: .1em; }
|
|
1431
|
+
.alliance-night-result-stage::after { background: radial-gradient(55% 78% at 73% 28%,rgba(74,126,103,.24),transparent 68%),linear-gradient(90deg,rgba(11,13,11,.99) 0%,rgba(11,13,11,.92) 50%,rgba(11,13,11,.12) 80%); }
|
|
1432
|
+
.alliance-result-cast figure { filter: none; }
|
|
1433
|
+
.alliance-result-cast img { filter: saturate(.86) brightness(.76) contrast(1.04); }
|
|
1434
|
+
.alliance-result-panel { border-color: rgba(109,166,139,.62); background: linear-gradient(145deg,rgba(15,26,21,.98),rgba(17,13,11,.95)); }
|
|
1435
|
+
.alliance-result-voices { display: grid; gap: .38rem; margin: .62rem 0; }
|
|
1436
|
+
.alliance-result-voices blockquote { margin: 0; padding: .52rem .62rem; border-left: 2px solid rgba(109,166,139,.64); background: rgba(27,72,56,.18); }
|
|
1437
|
+
.alliance-result-voices b,.alliance-result-voices p { display: block; }
|
|
1438
|
+
.alliance-result-voices b { color: #9ac1ae; font: .62rem var(--sans); letter-spacing: .08em; }
|
|
1439
|
+
.alliance-result-voices p { margin: .18rem 0 0; color: #d6c6ad; font: .66rem/1.55 var(--serif); }
|
|
1440
|
+
.alliance-result-ledger { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .15rem .5rem; margin: .62rem 0; padding: .55rem .62rem; border: 1px solid rgba(197,158,96,.2); background: rgba(78,50,27,.12); }
|
|
1441
|
+
.alliance-result-ledger span { color: #9b8058; font: .55rem var(--sans); letter-spacing: .08em; }
|
|
1442
|
+
.alliance-result-ledger b { color: #d5b982; font: .68rem var(--serif); }
|
|
1443
|
+
.alliance-result-ledger em { grid-column: 2; color: #a89b87; font: normal .57rem/1.45 var(--sans); }
|
|
1444
|
+
.alliance-result-bonds { display: flex; flex-wrap: wrap; gap: .28rem; margin: .5rem 0 .65rem; }
|
|
1445
|
+
.alliance-result-bonds span { padding: .3rem .42rem; border: 1px solid rgba(109,166,139,.24); color: #9dafa2; font: .54rem var(--sans); }
|
|
1446
|
+
.alliance-result-bonds b { margin-left: .35rem; color: #92c0a9; }
|
|
1447
|
+
.alliance-result-continue { min-width: 15rem; border-color: rgba(109,166,139,.58); }
|
|
1448
|
+
|
|
1449
|
+
/* 五院尾章:共同办事之后保留三拍夜话与一拍次晨,避免按钮后直接结算。 */
|
|
1450
|
+
.afterglow-stage::before { background-position: center; filter: saturate(.68) brightness(.58) blur(1px); transform: scale(1.02); }
|
|
1451
|
+
.afterglow-stage::after { background: radial-gradient(60% 70% at 65% 30%, rgba(174,83,45,.18), transparent 70%), linear-gradient(90deg, rgba(13,8,7,.94), rgba(13,8,7,.28) 64%, rgba(13,8,7,.5)); }
|
|
1452
|
+
.afterglow-panel { left: 4%; top: 10%; width: min(680px, 52%); max-height: 78%; padding: 1.45rem; overflow: clip; }
|
|
1453
|
+
.afterglow-panel .choice-grid, .shared-dawn-panel .choice-grid { grid-template-columns: 1fr; margin-top: 1rem; }
|
|
1454
|
+
.afterglow-panel .choice-button, .shared-dawn-panel .choice-button { min-height: 64px; }
|
|
1455
|
+
.shared-afterglow-result-stage::before { background-position: 55% center; filter: saturate(.62) brightness(.56) blur(1px); transform: scale(1.02); }
|
|
1456
|
+
.shared-afterglow-result-stage::after { background: radial-gradient(52% 72% at 76% 28%,rgba(77,133,107,.2),transparent 68%),linear-gradient(90deg,rgba(12,13,11,.99) 0%,rgba(12,13,11,.94) 53%,rgba(12,13,11,.24) 82%); }
|
|
1457
|
+
.shared-result-cast { position: absolute; z-index: 3; inset: 3% 2.5% 3% 57%; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .22rem; }
|
|
1458
|
+
.shared-result-cast figure { position: relative; min-width: 0; height: 100%; margin: 0; overflow: hidden; border: 1px solid rgba(214,181,121,.2); background: #130f0d; }
|
|
1459
|
+
.shared-result-cast figure:nth-child(even) { transform: translateY(2.5%); }
|
|
1460
|
+
.shared-result-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 75% 12%; filter: saturate(.72) brightness(.7); }
|
|
1461
|
+
.shared-result-cast figcaption { position: absolute; inset: auto 0 0; padding: 3.8rem .25rem .55rem; text-align: center; background: linear-gradient(transparent,rgba(10,8,7,.96) 55%); }
|
|
1462
|
+
.shared-result-cast b,.shared-result-cast span { display: block; }
|
|
1463
|
+
.shared-result-cast b { color: #dfc99f; font: .68rem var(--serif); }
|
|
1464
|
+
.shared-result-cast span { margin-top: .15rem; color: #8ca89a; font: .49rem var(--sans); }
|
|
1465
|
+
.shared-afterglow-result-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 53%; padding: 1.15rem 1.25rem; overflow: clip; border-color: rgba(109,166,139,.58); background: linear-gradient(145deg,rgba(15,25,20,.98),rgba(18,13,11,.95)); }
|
|
1466
|
+
.shared-result-voices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .36rem; margin: .62rem 0; }
|
|
1467
|
+
.shared-result-voices blockquote { margin: 0; padding: .48rem .56rem; border-left: 2px solid rgba(109,166,139,.56); background: rgba(25,72,55,.17); }
|
|
1468
|
+
.shared-result-voices blockquote:last-child { grid-column: 1 / -1; }
|
|
1469
|
+
.shared-result-voices b { color: #93bca8; font: .59rem var(--sans); letter-spacing: .08em; }
|
|
1470
|
+
.shared-result-voices p { margin: .18rem 0 0; color: #d2c2aa; font: .61rem/1.5 var(--serif); }
|
|
1471
|
+
.shared-result-choice { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .15rem .5rem; margin: .58rem 0; padding: .5rem .58rem; border-top: 1px solid rgba(205,168,105,.19); border-bottom: 1px solid rgba(205,168,105,.19); }
|
|
1472
|
+
.shared-result-choice span { color: #8fae9f; font: .54rem var(--sans); letter-spacing: .08em; }
|
|
1473
|
+
.shared-result-choice b { color: #d7bc86; font: .66rem var(--serif); }
|
|
1474
|
+
.shared-result-choice em { grid-column: 2; color: #9d907f; font: normal .56rem/1.42 var(--sans); }
|
|
1475
|
+
.shared-result-continue { min-width: 15rem; border-color: rgba(109,166,139,.58); }
|
|
1476
|
+
.shared-dawn-stage::before { background-position: 58% center; filter: saturate(.52) brightness(.72) sepia(.18); }
|
|
1477
|
+
.shared-dawn-stage::after { background: linear-gradient(90deg, rgba(20,14,12,.95) 0%, rgba(20,14,12,.48) 52%, rgba(223,185,127,.08)); }
|
|
1478
|
+
.shared-dawn-panel { left: 4%; top: 10%; width: min(700px, 54%); max-height: 78%; padding: 1.45rem; overflow: clip; }
|
|
1479
|
+
.shared-dawn-result-stage::before { background-position: 58% center; filter: saturate(.48) brightness(.78) sepia(.2); }
|
|
1480
|
+
.shared-dawn-result-stage::after { background: radial-gradient(52% 74% at 76% 24%,rgba(224,184,115,.18),transparent 68%),linear-gradient(90deg,rgba(18,13,10,.99) 0%,rgba(18,13,10,.93) 55%,rgba(52,39,25,.2) 83%); }
|
|
1481
|
+
.shared-dawn-result-cast { position: absolute; z-index: 3; inset: 3% 2.5% 3% 59%; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .2rem; }
|
|
1482
|
+
.shared-dawn-result-cast figure { position: relative; min-width: 0; height: 100%; margin: 0; overflow: hidden; border: 1px solid rgba(218,181,116,.23); background: #15110d; }
|
|
1483
|
+
.shared-dawn-result-cast figure:nth-child(even) { transform: translateY(2%); }
|
|
1484
|
+
.shared-dawn-result-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 75% 12%; filter: saturate(.68) brightness(.76) sepia(.08); }
|
|
1485
|
+
.shared-dawn-result-cast figcaption { position: absolute; inset: auto 0 0; padding: 3.2rem .2rem .55rem; text-align: center; background: linear-gradient(transparent,rgba(12,9,7,.96) 56%); }
|
|
1486
|
+
.shared-dawn-result-cast b,.shared-dawn-result-cast span { display: block; }
|
|
1487
|
+
.shared-dawn-result-cast b { color: #e3c99a; font: .65rem var(--serif); }
|
|
1488
|
+
.shared-dawn-result-cast span { margin-top: .15rem; color: #a78e68; font: .48rem var(--sans); }
|
|
1489
|
+
.shared-dawn-result-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 55%; padding: 1.15rem 1.25rem; overflow: clip; border-color: rgba(205,164,92,.52); background: linear-gradient(145deg,rgba(27,22,15,.985),rgba(16,12,9,.97)); }
|
|
1490
|
+
.shared-dawn-result-voices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .34rem; margin: .58rem 0; }
|
|
1491
|
+
.shared-dawn-result-voices blockquote { margin: 0; padding: .46rem .54rem; border-left: 2px solid rgba(206,166,96,.52); background: rgba(103,78,35,.15); }
|
|
1492
|
+
.shared-dawn-result-voices blockquote:last-child { grid-column: 1 / -1; }
|
|
1493
|
+
.shared-dawn-result-voices b { color: #c9a96f; font: .58rem var(--sans); letter-spacing: .08em; }
|
|
1494
|
+
.shared-dawn-result-voices p { margin: .18rem 0 0; color: #d5c4a8; font: .6rem/1.5 var(--serif); }
|
|
1495
|
+
.shared-dawn-result-ledger { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .16rem .5rem; margin: .58rem 0; padding: .52rem .58rem; border-top: 1px solid rgba(205,164,92,.22); border-bottom: 1px solid rgba(205,164,92,.22); }
|
|
1496
|
+
.shared-dawn-result-ledger span { color: #a98a57; font: .55rem var(--sans); letter-spacing: .09em; }
|
|
1497
|
+
.shared-dawn-result-ledger b { color: #dfc28f; font: .68rem var(--serif); }
|
|
1498
|
+
.shared-dawn-result-ledger em { grid-column: 2; color: #a99a83; font: normal .57rem/1.48 var(--sans); }
|
|
1499
|
+
.shared-dawn-result-continue { min-width: 15rem; border-color: rgba(205,164,92,.58); }
|
|
1500
|
+
|
|
1501
|
+
/* 破局终章:坏结局也要经过三拍因果、一次取舍与五人回应。 */
|
|
1502
|
+
.collapse-finale-stage::before,.collapse-result-stage::before { background-position: center; filter: saturate(.35) brightness(.38) sepia(.28); transform: scale(1.03); }
|
|
1503
|
+
.collapse-finale-stage::after,.collapse-result-stage::after { background: radial-gradient(48% 68% at 76% 25%,rgba(139,54,42,.2),transparent 68%),linear-gradient(90deg,rgba(12,8,7,.995) 0%,rgba(19,11,9,.94) 56%,rgba(32,15,12,.32) 84%); }
|
|
1504
|
+
.collapse-cast,.collapse-result-cast { position: absolute; z-index: 3; inset: 3% 2.5% 3% 59%; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .2rem; }
|
|
1505
|
+
.collapse-cast figure,.collapse-result-cast figure { position: relative; min-width: 0; height: 100%; margin: 0; overflow: hidden; border: 1px solid rgba(186,107,81,.19); background: #120c0a; transition: opacity .2s,border-color .2s,transform .2s; }
|
|
1506
|
+
.collapse-cast figure:not(.speaking) { opacity: .46; transform: translateY(2%); }
|
|
1507
|
+
.collapse-cast figure.speaking { z-index: 2; border-color: rgba(211,135,101,.72); box-shadow: 0 0 0 1px rgba(211,135,101,.16),0 0 32px rgba(101,40,29,.28); }
|
|
1508
|
+
.collapse-result-cast figure:not(.speaking) { opacity:.38; transform:translateY(2%); }
|
|
1509
|
+
.collapse-result-cast figure.heard { opacity:.58; }
|
|
1510
|
+
.collapse-result-cast figure.speaking { z-index:2; opacity:1; transform:none; border-color:rgba(211,135,101,.78); box-shadow:0 0 0 1px rgba(211,135,101,.18),0 0 34px rgba(101,40,29,.32); }
|
|
1511
|
+
.collapse-cast img,.collapse-result-cast img { width: 100%; height: 100%; object-fit: cover; object-position: 75% 12%; filter: saturate(.52) brightness(.62) contrast(1.06); }
|
|
1512
|
+
.collapse-cast figure.speaking img { filter: saturate(.74) brightness(.76) contrast(1.03); }
|
|
1513
|
+
.collapse-result-cast figure.speaking img { filter:saturate(.76) brightness(.78) contrast(1.03); }
|
|
1514
|
+
.collapse-cast figcaption,.collapse-result-cast figcaption { position: absolute; inset: auto 0 0; padding: 3rem .25rem .55rem; text-align: center; background: linear-gradient(transparent,rgba(10,7,6,.97) 55%); }
|
|
1515
|
+
.collapse-cast b,.collapse-cast span,.collapse-result-cast b,.collapse-result-cast span { display: block; }
|
|
1516
|
+
.collapse-cast b,.collapse-result-cast b { color: #d7b398; font: .65rem var(--serif); }
|
|
1517
|
+
.collapse-cast span,.collapse-result-cast span { margin-top: .16rem; color: #9b7569; font: .48rem/1.35 var(--sans); }
|
|
1518
|
+
.collapse-finale-panel,.collapse-result-panel { z-index: 6; left: 3.5%; top: 4%; bottom: 4%; width: 55%; padding: 1.15rem 1.25rem; overflow: clip; border-color: rgba(177,88,64,.54); background: linear-gradient(145deg,rgba(27,15,12,.985),rgba(15,10,9,.97)); }
|
|
1519
|
+
.collapse-current-voice { margin: .75rem 0; padding: .72rem .78rem; border-left: 3px solid rgba(200,107,78,.68); background: rgba(92,37,27,.2); }
|
|
1520
|
+
.collapse-current-voice b { color: #d89575; font: .66rem var(--sans); letter-spacing: .1em; }
|
|
1521
|
+
.collapse-current-voice p { margin: .28rem 0 0; color: #ddc7b5; font: .76rem/1.68 var(--serif); }
|
|
1522
|
+
.collapse-cause-ledger,.collapse-result-ledger { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .18rem .55rem; margin: .65rem 0; padding: .58rem .64rem; border-top: 1px solid rgba(191,105,76,.23); border-bottom: 1px solid rgba(191,105,76,.23); }
|
|
1523
|
+
.collapse-cause-ledger span,.collapse-result-ledger span { color: #a86b57; font: .55rem var(--sans); letter-spacing: .09em; }
|
|
1524
|
+
.collapse-cause-ledger b,.collapse-result-ledger b { color: #d9af8f; font: .68rem var(--serif); }
|
|
1525
|
+
.collapse-cause-ledger em,.collapse-result-ledger em { grid-column: 2; color: #a89080; font: normal .57rem/1.48 var(--sans); }
|
|
1526
|
+
.collapse-final-question { margin: .7rem 0; padding: .7rem .78rem; border: 1px solid rgba(201,117,85,.28); background: rgba(113,42,29,.14); }
|
|
1527
|
+
.collapse-final-question span,.collapse-final-question b { display: block; }
|
|
1528
|
+
.collapse-final-question span { color: #a66c59; font: .56rem var(--sans); letter-spacing: .12em; }
|
|
1529
|
+
.collapse-final-question b { margin-top: .24rem; color: #dfbea2; font: .76rem var(--serif); }
|
|
1530
|
+
.collapse-final-question p { margin: .3rem 0 0; color: #ae9988; font: .6rem/1.5 var(--sans); }
|
|
1531
|
+
.collapse-final-choices { grid-template-columns: 1fr 1fr; }
|
|
1532
|
+
.collapse-continue,.collapse-result-continue { min-width: 15rem; border-color: rgba(198,103,75,.58); }
|
|
1533
|
+
.collapse-result-current-voice { margin:.62rem 0; padding:.72rem .78rem; border-left:3px solid rgba(202,108,78,.72); background:rgba(96,38,27,.22); }
|
|
1534
|
+
.collapse-result-current-voice b { color:#dc9271; font:.62rem var(--sans); letter-spacing:.1em; }
|
|
1535
|
+
.collapse-result-current-voice p { margin:.3rem 0 0; color:#e0cbbb; font:.74rem/1.66 var(--serif); }
|
|
1536
|
+
.collapse-result-transcript { display:grid; gap:.3rem; margin:.58rem 0; padding:0; list-style:none; }
|
|
1537
|
+
.collapse-result-transcript li { display:grid; grid-template-columns:1.35rem 1fr; gap:.42rem; padding:.42rem .5rem; border:1px solid rgba(181,103,75,.2); background:rgba(65,27,21,.14); }
|
|
1538
|
+
.collapse-result-transcript li > span { display:grid; width:1.2rem; height:1.2rem; place-items:center; border:1px solid rgba(192,111,80,.42); color:#bd7f68; font:.52rem var(--sans); }
|
|
1539
|
+
.collapse-result-transcript b { color:#c98e75; font:.57rem var(--sans); }
|
|
1540
|
+
.collapse-result-transcript p { margin:.16rem 0 0; color:#aa988b; font:.56rem/1.45 var(--serif); }
|
|
1541
|
+
.collapse-current-memory > div { margin-top:.5rem; padding:.52rem .58rem; border-left:2px solid rgba(199,139,88,.48); background:rgba(42,27,19,.34); }
|
|
1542
|
+
.collapse-current-memory > div b,.collapse-current-memory > div p,.collapse-current-memory > div em { display:block; }
|
|
1543
|
+
.collapse-current-memory > div b { color:#d0ad80; font:.62rem/1.4 var(--serif); }
|
|
1544
|
+
.collapse-current-memory > div p { margin:.28rem 0; color:#b9aa96; font:.58rem/1.52 var(--sans); }
|
|
1545
|
+
.collapse-current-memory > div em { color:#937f6d; font:normal .55rem/1.48 var(--sans); }
|
|
1546
|
+
|
|
1547
|
+
/* 五张身份母版的人物都站在画面右半。窄卡若按几何中心裁切,会把正脸推到卡缝上。 */
|
|
1548
|
+
img[alt="吴月娘"] { --heroine-focus-x: 72%; }
|
|
1549
|
+
img[alt="潘金莲"] { --heroine-focus-x: 73%; }
|
|
1550
|
+
img[alt="李瓶儿"] { --heroine-focus-x: 69%; }
|
|
1551
|
+
img[alt="孟玉楼"] { --heroine-focus-x: 71%; }
|
|
1552
|
+
img[alt="孙雪娥"] { --heroine-focus-x: 68%; }
|
|
1553
|
+
.dialogue-wu_yueniang { --heroine-focus-x: 72%; }
|
|
1554
|
+
.dialogue-pan_jinlian { --heroine-focus-x: 73%; }
|
|
1555
|
+
.dialogue-li_pinger { --heroine-focus-x: 69%; }
|
|
1556
|
+
.dialogue-meng_yulou { --heroine-focus-x: 71%; }
|
|
1557
|
+
.dialogue-sun_xuee { --heroine-focus-x: 68%; }
|
|
1558
|
+
:is(
|
|
1559
|
+
.precedent-cast,
|
|
1560
|
+
.private-price-offers,
|
|
1561
|
+
.private-price-coalition,
|
|
1562
|
+
.private-price-ledger,
|
|
1563
|
+
.opening-aftermath-cast,
|
|
1564
|
+
.day-aftermath-reactions,
|
|
1565
|
+
.aftermath-observer,
|
|
1566
|
+
.crisis-cast,
|
|
1567
|
+
.crisis-aftermath-cast,
|
|
1568
|
+
.pair-portraits,
|
|
1569
|
+
.pair-aftermath-witness,
|
|
1570
|
+
.memory-cast,
|
|
1571
|
+
.favor-cast,
|
|
1572
|
+
.dusk-invite-cast,
|
|
1573
|
+
.invitation-aftermath-cast,
|
|
1574
|
+
.rivalry-listener,
|
|
1575
|
+
.council-cast,
|
|
1576
|
+
.council-resolution-cast,
|
|
1577
|
+
.public-followup-cast,
|
|
1578
|
+
.public-aftermath-cast,
|
|
1579
|
+
.act-aftermath-cast,
|
|
1580
|
+
.act-transition-cast,
|
|
1581
|
+
.final-reckoning-cast,
|
|
1582
|
+
.final-aftermath-cast,
|
|
1583
|
+
.personal-finale-others,
|
|
1584
|
+
.alliance-assembly-cast,
|
|
1585
|
+
.alliance-cast,
|
|
1586
|
+
.shared-result-cast,
|
|
1587
|
+
.shared-dawn-result-cast,
|
|
1588
|
+
.collapse-cast,
|
|
1589
|
+
.collapse-result-cast,
|
|
1590
|
+
.alliance-tableau-members,
|
|
1591
|
+
.alliance-tableau-actions
|
|
1592
|
+
) img { object-position: var(--heroine-focus-x,50%) 14%; }
|
|
1593
|
+
|
|
1594
|
+
/* 亲密与尾章进入专注模式:经营账暂时收起,画面和对白拿回舞台。 */
|
|
1595
|
+
.game-shell:is([data-phase="scene"], [data-phase="personal_finale"], [data-phase="personal_finale_result"], [data-phase="alliance_night_result"], [data-phase="shared_afterglow"], [data-phase="shared_afterglow_result"], [data-phase="shared_dawn"], [data-phase="shared_dawn_result"], [data-phase="collapse_finale"], [data-phase="collapse_finale_result"]) { grid-template-rows: 48px 1fr; }
|
|
1596
|
+
.game-shell:is([data-phase="scene"], [data-phase="personal_finale"], [data-phase="personal_finale_result"], [data-phase="alliance_night_result"], [data-phase="shared_afterglow"], [data-phase="shared_afterglow_result"], [data-phase="shared_dawn"], [data-phase="shared_dawn_result"], [data-phase="collapse_finale"], [data-phase="collapse_finale_result"]) .topbar { opacity: .72; }
|
|
1597
|
+
.game-shell:is([data-phase="scene"], [data-phase="personal_finale"], [data-phase="personal_finale_result"], [data-phase="alliance_night_result"], [data-phase="shared_afterglow"], [data-phase="shared_afterglow_result"], [data-phase="shared_dawn"], [data-phase="shared_dawn_result"], [data-phase="collapse_finale"], [data-phase="collapse_finale_result"]) .play-area { grid-template-columns: 1fr; }
|
|
1598
|
+
.game-shell:is([data-phase="scene"], [data-phase="personal_finale"], [data-phase="personal_finale_result"], [data-phase="alliance_night_result"], [data-phase="shared_afterglow"], [data-phase="shared_afterglow_result"], [data-phase="shared_dawn"], [data-phase="shared_dawn_result"], [data-phase="collapse_finale"], [data-phase="collapse_finale_result"]) .relation-rail { display: none; }
|
|
1599
|
+
|
|
1600
|
+
/* 场景 CG */
|
|
1601
|
+
.scene-view { position: absolute; inset: 0; background: #100d0b; overflow: hidden; }
|
|
1602
|
+
.scene-view > img { --scene-scale: 1; width: 100%; height: 100%; object-fit: cover; object-position: center; animation: scene-enter .55s ease both; }
|
|
1603
|
+
.scene-view:is([data-scene-tier="prelude"], [data-scene-tier="explicit"])[data-scene-beat="1"] > img { --scene-scale: 1.035; object-position: 54% center; }
|
|
1604
|
+
.scene-view:is([data-scene-tier="prelude"], [data-scene-tier="explicit"])[data-scene-beat="2"] > img { --scene-scale: 1.07; object-position: 60% center; }
|
|
1605
|
+
.scene-scrim { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(12,8,7,.92) 0%, rgba(12,8,7,.38) 42%, transparent 72%), linear-gradient(0deg, rgba(12,8,7,.45), transparent 58%); }
|
|
1606
|
+
.scene-caption { position: absolute; z-index: 2; left: 4.5%; bottom: 7%; width: min(430px, 38%); color: #eee1cb; }
|
|
1607
|
+
.scene-caption h2 { margin: 0 0 .75rem; font-size: clamp(2rem, 3.6vw, 4rem); letter-spacing: .1em; }
|
|
1608
|
+
.scene-chapter-kicker { margin: -.35rem 0 .45rem; color: #d3a85e !important; font: .66rem/1.4 var(--sans) !important; letter-spacing: .08em; }
|
|
1609
|
+
.scene-caption > p:not(.eyebrow) { color: #d5c4aa; font: .9rem/1.9 var(--sans); }
|
|
1610
|
+
.scene-meta { display: flex; gap: 1rem; margin: 1rem 0; color: #ad9878; font: .68rem var(--sans); }
|
|
1611
|
+
.scene-meta span { padding: .3rem .5rem; border: 1px solid rgba(213,182,122,.32); }
|
|
1612
|
+
/* 起始不透明度 .38、时长 .55s:任何时刻截图都不会拍到接近全黑的半淡入帧。 */
|
|
1613
|
+
@keyframes scene-enter { from { opacity: .38; transform: scale(calc(var(--scene-scale) + .018)); filter: saturate(.7); } to { opacity: 1; transform: scale(var(--scene-scale)); filter: saturate(.9); } }
|
|
1614
|
+
|
|
1615
|
+
/* 结算 */
|
|
1616
|
+
.ending-view { position: absolute; inset: 0; display: grid; grid-template-columns: 55% 45%; background: #130e0c; color: #eee1cc; }
|
|
1617
|
+
.ending-art { background-size: cover; background-position: center; }
|
|
1618
|
+
/* 四个结局四盏灯:专一暖、群像原色、权谋冷灰、不稳熄火。 */
|
|
1619
|
+
.ending-view[data-ending="exclusive"] .ending-art { background-position: 50% 10%; filter: saturate(.95) brightness(.92); }
|
|
1620
|
+
.ending-view[data-ending="intrigue"] .ending-art { filter: saturate(.5) brightness(.58) contrast(1.08); }
|
|
1621
|
+
.ending-view[data-ending="unstable"] .ending-art { filter: saturate(.42) brightness(.62); }
|
|
1622
|
+
.ending-copy { display: flex; min-height: 0; flex-direction: column; justify-content: flex-start; padding: 4.5vh 5vw 4vh 3.5vw; overflow-y: auto; }
|
|
1623
|
+
.ending-copy h1 { margin: 0 0 .3rem; font-size: clamp(2.5rem, 4vw, 4.8rem); letter-spacing: .13em; }
|
|
1624
|
+
.ending-tag { color: var(--gold-bright); font-size: 1.1rem; }
|
|
1625
|
+
.ending-copy > p:not(.eyebrow):not(.ending-tag):not(.ending-note) { color: #cbbba4; font: .9rem/1.9 var(--sans); }
|
|
1626
|
+
.ending-ledger { display: grid; grid-template-columns: repeat(2,1fr); gap: .55rem; margin: 1rem 0; }
|
|
1627
|
+
.ending-ledger span { display: flex; flex-direction: column; padding: .7rem; border: 1px solid rgba(214,180,113,.24); color: #948674; font: .75rem var(--sans); }
|
|
1628
|
+
.ending-ledger b { margin-top: .2rem; color: #d8c5a3; font-size: .8rem; }
|
|
1629
|
+
.ending-habits { margin: 0 0 .8rem; padding: .65rem .72rem; border: 1px solid rgba(214,180,113,.22); background: rgba(0,0,0,.16); }
|
|
1630
|
+
.ending-habits > header { display: flex; justify-content: space-between; gap: .8rem; color: #9d8b72; font: .63rem var(--sans); }
|
|
1631
|
+
.ending-habits > header b { color: #d7bc89; font-size: .7rem; }
|
|
1632
|
+
.ending-habits > div { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .35rem; margin-top: .5rem; }
|
|
1633
|
+
.ending-habits article { min-width: 0; padding: .4rem .45rem; border-left: 2px solid rgba(171,116,63,.62); background: rgba(92,58,34,.14); }
|
|
1634
|
+
.ending-habits article.unformed { border-left-color: rgba(140,130,114,.28); opacity: .68; }
|
|
1635
|
+
.ending-habits article span, .ending-habits article b, .ending-habits article small { display: block; }
|
|
1636
|
+
.ending-habits article span { color: #8d7f6d; font: .54rem var(--sans); }
|
|
1637
|
+
.ending-habits article b { margin-top: .12rem; color: #d8c39b; font: .66rem var(--serif); }
|
|
1638
|
+
.ending-habits article small { display: -webkit-box; margin-top: .2rem; overflow: hidden; color: #93836f; font: .54rem/1.35 var(--sans); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
|
|
1639
|
+
.ending-note { color: #918473; font: .8rem/1.6 var(--sans); }
|
|
1640
|
+
.household-ending { display: grid; grid-template-columns: 1fr; gap: .4rem; margin: 0 0 .75rem; }
|
|
1641
|
+
.household-ending span { display: flex; flex-direction: column; padding: .5rem .6rem; border-left: 2px solid rgba(210,174,107,.42); color: #8f8271; font: .67rem/1.45 var(--sans); }
|
|
1642
|
+
.household-ending b { color: #cdbb9e; font-size: .72rem; }
|
|
1643
|
+
.household-ending small { margin-top: .2rem; color: #8f8271; font: .62rem/1.45 var(--sans); }
|
|
1644
|
+
|
|
1645
|
+
/* 结局后日谈:不是统一胜利字幕,而是五个人各自继续生活的六页短章。 */
|
|
1646
|
+
.epilogue-overlay { position: fixed; z-index: 560; inset: 0; display: grid; place-items: center; padding: 3vh 3vw; background: rgba(9,6,5,.91); backdrop-filter: blur(10px); }
|
|
1647
|
+
.epilogue-book { width: min(1080px,94vw); height: min(720px,92vh); display: grid; grid-template-columns: minmax(0,46%) minmax(0,54%); overflow: hidden; border: 1px solid rgba(222,188,123,.58); color: #eadcc5; background: #120d0b; box-shadow: 0 34px 100px rgba(0,0,0,.78); }
|
|
1648
|
+
.epilogue-art { position: relative; min-width: 0; overflow: hidden; background: #0d0908; }
|
|
1649
|
+
.epilogue-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 55%, rgba(18,13,11,.86)), linear-gradient(0deg, rgba(18,13,11,.7), transparent 48%); }
|
|
1650
|
+
.epilogue-art img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.04); }
|
|
1651
|
+
.epilogue-art > span { position: absolute; z-index: 1; left: 1.2rem; bottom: .7rem; color: rgba(235,209,160,.32); font: 5rem/1 var(--serif); }
|
|
1652
|
+
.epilogue-copy { min-width: 0; min-height: 0; display: grid; grid-template-rows: auto minmax(0,1fr) auto; overflow: hidden; padding: 1.2rem 1.45rem 1.35rem; background: radial-gradient(circle at 30% 20%,rgba(129,82,40,.14),transparent 38%), linear-gradient(145deg,#211713,#120d0b 68%); }
|
|
1653
|
+
.epilogue-copy > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding-bottom: .75rem; border-bottom: 1px solid rgba(220,188,127,.2); }
|
|
1654
|
+
.epilogue-copy > header p { margin: .25rem 0 0; }
|
|
1655
|
+
.epilogue-scroll { min-height: 0; padding: clamp(1.2rem,3vh,2.25rem) .35rem 1rem; overflow-y: auto; }
|
|
1656
|
+
.epilogue-progress { margin: 0 0 .65rem; color: #ad956f; font: .7rem var(--sans); letter-spacing: .12em; }
|
|
1657
|
+
.epilogue-copy h2 { margin: 0 0 1rem; color: #f0dfbf; font-size: clamp(1.8rem,3vw,3.2rem); line-height: 1.2; letter-spacing: .08em; }
|
|
1658
|
+
.epilogue-body { margin: 0; color: #d3c1a6; font: .92rem/2 var(--sans); }
|
|
1659
|
+
.epilogue-relations { display: flex; gap: .5rem; margin: 1.1rem 0 0; }
|
|
1660
|
+
.epilogue-relations span { flex: 1; padding: .5rem .6rem; border: 1px solid rgba(220,188,127,.2); color: #94836e; font: .68rem var(--sans); }
|
|
1661
|
+
.epilogue-relations b { display: block; margin-top: .2rem; color: #d6bc8c; font-size: .76rem; }
|
|
1662
|
+
.epilogue-route-note { margin: 1.1rem 0 0; padding: .85rem 1rem; border-left: 2px solid var(--cinnabar); color: #a99578; font: .77rem/1.75 var(--sans); background: rgba(0,0,0,.2); }
|
|
1663
|
+
.epilogue-habit { margin: 1.05rem 0 0; padding: .75rem .85rem; border: 1px solid rgba(112,155,139,.3); background: rgba(45,75,66,.18); }
|
|
1664
|
+
.epilogue-habit span, .epilogue-habit b { display: block; }
|
|
1665
|
+
.epilogue-habit span { color: #8fafa2; font: .62rem var(--sans); letter-spacing: .1em; }
|
|
1666
|
+
.epilogue-habit b { margin-top: .28rem; color: #cae0d3; font: .9rem var(--serif); }
|
|
1667
|
+
.epilogue-habit p { margin: .35rem 0 0; color: #aebdb2; font: .7rem/1.55 var(--sans); }
|
|
1668
|
+
.epilogue-night-conversations { margin: .8rem 0 0; padding: .75rem .85rem; border: 1px solid rgba(177,126,75,.28); background: rgba(91,48,31,.16); }
|
|
1669
|
+
.epilogue-night-conversations header span,.epilogue-night-conversations header b { display:block; }
|
|
1670
|
+
.epilogue-night-conversations header span { color:#a88468; font:.58rem var(--sans); letter-spacing:.1em; }
|
|
1671
|
+
.epilogue-night-conversations header b { margin-top:.24rem; color:#ddc3a4; font:.78rem var(--serif); }
|
|
1672
|
+
.epilogue-night-conversations ol { display:grid; gap:.58rem; margin:.65rem 0 0; padding:0; list-style:none; }
|
|
1673
|
+
.epilogue-night-conversations li { padding:.55rem .62rem; border-left:2px solid rgba(177,126,75,.55); background:rgba(0,0,0,.13); }
|
|
1674
|
+
.epilogue-night-conversations li small,.epilogue-night-conversations li b,.epilogue-night-conversations li .stake { display:block; }
|
|
1675
|
+
.epilogue-night-conversations li small { color:#997b65; font:.55rem var(--sans); }
|
|
1676
|
+
.epilogue-night-conversations li b { margin-top:.16rem; color:#d4b898; font:.68rem var(--serif); }
|
|
1677
|
+
.epilogue-night-conversations li .stake { margin-top:.2rem; color:#c6a573; font:.56rem/1.45 var(--sans); }
|
|
1678
|
+
.epilogue-night-conversations li p { margin:.24rem 0 0; color:#b5a590; font:.63rem/1.52 var(--sans); }
|
|
1679
|
+
.epilogue-night-conversations li em { display:block; margin-top:.34rem; padding-top:.3rem; border-top:1px solid rgba(177,126,75,.16); color:#88a89b; font:.57rem/1.48 var(--sans); font-style:normal; }
|
|
1680
|
+
.epilogue-copy > footer { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .8rem; padding-top: .9rem; border-top: 1px solid rgba(220,188,127,.2); }
|
|
1681
|
+
.epilogue-copy > footer > span { display: flex; justify-content: center; gap: .35rem; }
|
|
1682
|
+
.epilogue-copy > footer i { width: 5px; height: 5px; border-radius: 50%; background: rgba(219,186,122,.24); }
|
|
1683
|
+
.epilogue-copy > footer i.current { background: var(--gold-bright); box-shadow: 0 0 0 3px rgba(219,186,122,.1); }
|
|
1684
|
+
|
|
1685
|
+
/* 原著命数三页:不把固定死亡做成奖励页。空宅横幅始终在场,选择只改变
|
|
1686
|
+
谁能带走名字、私契、证物与做法,不提供“数值够高便救回”的按钮。 */
|
|
1687
|
+
.fate-coda-overlay { position: fixed; z-index: 570; inset: 0; display: grid; place-items: center; padding: 2.5vh 2.5vw; background: rgba(5,7,8,.94); backdrop-filter: blur(12px); }
|
|
1688
|
+
.fate-coda-book { position: relative; width: min(1220px,95vw); height: min(760px,94vh); overflow: hidden; border: 1px solid rgba(180,190,182,.34); color: #e4e0d7; background: #090d0e; box-shadow: 0 38px 110px rgba(0,0,0,.85); }
|
|
1689
|
+
.fate-coda-art { position: absolute; inset: 0; background-position: center; background-size: cover; filter: saturate(.7) brightness(.78) contrast(1.06); }
|
|
1690
|
+
.fate-coda-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(7,11,12,.98) 0%,rgba(7,11,12,.94) 28%,rgba(7,11,12,.58) 48%,rgba(7,11,12,.08) 72%), linear-gradient(0deg,rgba(7,10,11,.6),transparent 42%); }
|
|
1691
|
+
.fate-coda-copy { position: absolute; inset: 0 46% 0 0; display: grid; grid-template-rows: auto minmax(0,1fr) auto; padding: 1.25rem 1.6rem 1.35rem; background: linear-gradient(90deg,rgba(11,15,16,.98),rgba(11,15,16,.84) 72%,transparent); }
|
|
1692
|
+
.fate-coda-copy > header { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; padding-bottom: .8rem; border-bottom: 1px solid rgba(198,204,195,.18); }
|
|
1693
|
+
.fate-coda-copy > header p { margin: .15rem 0 0; color: #949b93; font: .68rem/1.5 var(--sans); }
|
|
1694
|
+
.fate-coda-copy > header .eyebrow { margin: 0; color: #b2ad98; }
|
|
1695
|
+
.fate-coda-scroll { min-height: 0; padding: clamp(1rem,3vh,2.1rem) .3rem 1rem 0; overflow-y: auto; scrollbar-color: rgba(190,185,158,.38) transparent; }
|
|
1696
|
+
.fate-coda-progress { display: flex; gap: .4rem; margin-bottom: .9rem; }
|
|
1697
|
+
.fate-coda-progress i { display: grid; place-items: center; width: 1.55rem; height: 1.55rem; border: 1px solid rgba(174,180,171,.24); border-radius: 50%; color: #70766f; font: .58rem var(--sans); }
|
|
1698
|
+
.fate-coda-progress i.past { border-color: rgba(154,165,155,.42); color: #a8afa6; background: rgba(89,105,96,.16); }
|
|
1699
|
+
.fate-coda-progress i.current { border-color: rgba(202,186,143,.72); color: #e0ca99; box-shadow: 0 0 0 4px rgba(184,153,96,.08); }
|
|
1700
|
+
.fate-coda-progress i span { font-style: normal; }
|
|
1701
|
+
.fate-coda-variants { margin: 0 0 1rem; padding: .65rem .7rem; border: 1px solid rgba(184,178,155,.18); background: rgba(18,22,20,.45); }
|
|
1702
|
+
.fate-coda-variants > span { display: block; margin-bottom: .45rem; color: #a49d87; font: .6rem var(--sans); letter-spacing: .08em; }
|
|
1703
|
+
.fate-coda-variants > div { display: flex; gap: .35rem; overflow-x: auto; padding-bottom: .1rem; }
|
|
1704
|
+
.fate-coda-variants button { display: grid; grid-template-columns: 1.25rem minmax(8rem,1fr); align-items: center; gap: .35rem; flex: 0 0 auto; max-width: 14rem; padding: .38rem .48rem; border: 1px solid rgba(171,164,139,.22); color: #aaa89d; text-align: left; background: rgba(5,8,8,.48); cursor: pointer; }
|
|
1705
|
+
.fate-coda-variants button.current { border-color: rgba(202,186,143,.72); color: #e0ca99; background: rgba(113,91,54,.22); }
|
|
1706
|
+
.fate-coda-variants button b { display: grid; place-items: center; width: 1.15rem; height: 1.15rem; border-radius: 50%; background: rgba(196,174,128,.12); font: .58rem var(--sans); }
|
|
1707
|
+
.fate-coda-variants button small { overflow: hidden; font: .58rem/1.35 var(--sans); text-overflow: ellipsis; white-space: nowrap; }
|
|
1708
|
+
.fate-coda-copy h2 { margin: 0 0 .9rem; color: #eee4ce; font-size: clamp(2rem,3.5vw,3.8rem); line-height: 1.18; letter-spacing: .08em; }
|
|
1709
|
+
.fate-coda-body { margin: 0; color: #c8c7bd; font: .9rem/1.95 var(--sans); white-space: pre-line; }
|
|
1710
|
+
.fate-coda-sections { display: grid; gap: .85rem; margin-top: 1.15rem; }
|
|
1711
|
+
.fate-coda-ledger-section { padding: .85rem; border: 1px solid rgba(184,178,155,.18); background: rgba(18,22,20,.45); }
|
|
1712
|
+
.fate-coda-ledger-section > header span,.fate-coda-ledger-section article > span { color: #878f88; font: .6rem var(--sans); letter-spacing: .12em; }
|
|
1713
|
+
.fate-coda-ledger-section > header h3 { margin: .22rem 0 .68rem; color: #dfca9e; font: 1rem/1.45 var(--serif); }
|
|
1714
|
+
.fate-coda-ledger-section > div { display: grid; gap: .58rem; }
|
|
1715
|
+
.fate-coda-ledger-section article { padding: .62rem .72rem; border-left: 2px solid rgba(154,128,96,.68); background: rgba(45,48,44,.48); }
|
|
1716
|
+
.fate-coda-ledger-section article > span,.fate-coda-ledger-section article > b { display: block; }
|
|
1717
|
+
.fate-coda-ledger-section article > b { margin-top: .2rem; color: #d7c7a7; font: .78rem/1.5 var(--serif); }
|
|
1718
|
+
.fate-coda-ledger-section article > p { margin: .32rem 0 0; color: #b7bab2; font: .72rem/1.72 var(--sans); }
|
|
1719
|
+
.fate-coda-decision { margin-top: 1.1rem; padding-top: .9rem; border-top: 1px solid rgba(188,194,185,.17); }
|
|
1720
|
+
.fate-coda-decision > p { margin: 0 0 .7rem; color: #ddd1b8; font: .8rem/1.7 var(--sans); }
|
|
1721
|
+
.fate-coda-decision .choice-stack { grid-template-columns: 1fr; gap: .45rem; }
|
|
1722
|
+
.fate-coda-decision .choice-button { min-height: 58px; border-color: rgba(172,178,169,.26); background: linear-gradient(90deg,rgba(73,82,77,.2),rgba(17,22,22,.62)); }
|
|
1723
|
+
.fate-coda-decision .choice-button:hover { border-color: rgba(214,192,145,.58); transform: translateX(3px); }
|
|
1724
|
+
.fate-coda-result { margin-top: 1.15rem; padding: .85rem 1rem; border-left: 2px solid #9a8060; background: rgba(36,39,36,.68); }
|
|
1725
|
+
.fate-coda-result span,.fate-coda-result b { display: block; }
|
|
1726
|
+
.fate-coda-result span { color: #8d948d; font: .62rem var(--sans); letter-spacing: .12em; }
|
|
1727
|
+
.fate-coda-result b { margin-top: .28rem; color: #dfca9e; font: .92rem var(--serif); }
|
|
1728
|
+
.fate-coda-result p { margin: .42rem 0 0; color: #bcbdb5; font: .75rem/1.75 var(--sans); }
|
|
1729
|
+
.fate-coda-combination { margin-top: .78rem; padding-top: .7rem; border-top: 1px solid rgba(190,183,157,.2); }
|
|
1730
|
+
.fate-coda-combination > span,.fate-coda-combination > b { display: block; }
|
|
1731
|
+
.fate-coda-combination > span { color: #a49d87; }
|
|
1732
|
+
.fate-coda-combination > b { color: #ead6a9; }
|
|
1733
|
+
.fate-coda-combination > p { color: #c5c7be; }
|
|
1734
|
+
.fate-coda-copy > footer { display: flex; justify-content: flex-end; align-items: center; gap: .55rem; min-height: 3.3rem; padding-top: .8rem; border-top: 1px solid rgba(198,204,195,.18); }
|
|
1735
|
+
.fate-coda-copy > footer > span { color: #777f79; font: .65rem var(--sans); letter-spacing: .04em; }
|
|
1736
|
+
.fate-coda-copy > footer .ink-button { border-color: rgba(181,169,133,.46); }
|
|
1737
|
+
|
|
1738
|
+
/* 场景册 */
|
|
1739
|
+
.gallery-overlay { position: fixed; z-index: 500; inset: 0; display: grid; place-items: center; padding: 3vh 3vw; background: rgba(10,7,6,.88); backdrop-filter: blur(8px); }
|
|
1740
|
+
.gallery-book { width: min(1180px, 92vw); height: min(780px, 91vh); display: grid; grid-template-rows: auto auto 1fr; overflow: hidden; border: 1px solid rgba(220,188,127,.48); color: #e8dac1; background: linear-gradient(120deg, #211713, #120d0b); box-shadow: 0 30px 80px rgba(0,0,0,.65); }
|
|
1741
|
+
.gallery-book > header { display: flex; align-items: center; justify-content: space-between; padding: 1.2rem 1.45rem; border-bottom: 1px solid rgba(220,188,127,.25); }
|
|
1742
|
+
.gallery-book h2 { margin: 0; font-size: 1.8rem; letter-spacing: .1em; }
|
|
1743
|
+
.gallery-book header p:last-child { margin: .35rem 0 0; color: #948674; font: .75rem var(--sans); }
|
|
1744
|
+
.ending-archive { display: grid; gap: .7rem; padding: .8rem 1.35rem; border-bottom: 1px solid rgba(220,188,127,.2); background: rgba(238,221,188,.025); }
|
|
1745
|
+
.ending-goals { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: .45rem; }
|
|
1746
|
+
.ending-goal { display: flex; align-items: flex-start; gap: .45rem; min-width: 0; padding: .48rem; border: 1px solid rgba(220,188,127,.16); color: #847869; background: rgba(0,0,0,.12); }
|
|
1747
|
+
.ending-goal i { display: grid; place-items: center; flex: 0 0 1.45rem; height: 1.45rem; border: 1px solid rgba(220,188,127,.25); border-radius: 50%; font: .64rem var(--sans); }
|
|
1748
|
+
.ending-goal b, .ending-goal small { display: block; }
|
|
1749
|
+
.ending-goal b { color: #a99a83; font-size: .75rem; }
|
|
1750
|
+
.ending-goal small { margin-top: .18rem; font: .62rem/1.35 var(--sans); }
|
|
1751
|
+
.ending-goal.complete { border-color: rgba(202,164,91,.5); color: #b9aa90; background: rgba(151,103,45,.13); }
|
|
1752
|
+
.ending-goal.complete i, .ending-goal.complete b { color: #e1c991; border-color: rgba(220,188,127,.62); }
|
|
1753
|
+
.ending-records { display: flex; gap: .55rem; min-height: 5.2rem; overflow-x: auto; padding-bottom: .15rem; }
|
|
1754
|
+
.ending-records > p { margin: auto 0; color: #978975; font: .76rem/1.6 var(--sans); }
|
|
1755
|
+
.ending-record { flex: 0 0 min(280px,75vw); padding: .55rem .65rem; border: 0; border-left: 2px solid #9c743d; color: inherit; text-align: left; font: inherit; background: rgba(0,0,0,.2); }
|
|
1756
|
+
.ending-record p { display: flex; justify-content: space-between; gap: .5rem; margin: 0; color: #a89473; font: .65rem var(--sans); }
|
|
1757
|
+
.ending-record h3 { display: flex; align-items: baseline; gap: .45rem; margin: .3rem 0 .2rem; color: #ead7b6; font-size: .9rem; }
|
|
1758
|
+
.ending-record h3 em { color: #b7a17d; font: .66rem var(--sans); }
|
|
1759
|
+
.ending-record > b, .ending-record > small { display: block; }
|
|
1760
|
+
.ending-record > b { color: #cfb682; font: .68rem var(--sans); }
|
|
1761
|
+
.ending-record > small { display: -webkit-box; overflow: hidden; margin-top: .28rem; color: #998b77; font: .66rem/1.45 var(--sans); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
|
|
1762
|
+
.ending-record-actions { display: flex; flex-wrap: wrap; gap: .32rem; margin-top: .5rem; }
|
|
1763
|
+
.ending-record-actions button { flex: 1 1 9rem; min-height: 2rem; padding: .35rem .45rem; border: 1px solid rgba(192,159,101,.28); color: #d2b478; text-align: left; background: rgba(116,74,30,.13); font: .61rem/1.35 var(--sans); letter-spacing: .025em; cursor: pointer; }
|
|
1764
|
+
.ending-record-actions button:hover,.ending-record-actions button:focus-visible { border-color: rgba(225,189,120,.72); color: #eed39b; background: rgba(138,91,41,.24); }
|
|
1765
|
+
.gallery-grid { min-height: 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; padding: 1rem 1.35rem 1.4rem; overflow-y: auto; }
|
|
1766
|
+
.gallery-grid section h3 { margin: 0 0 .6rem; color: #b79f76; font-size: .9rem; letter-spacing: .12em; }
|
|
1767
|
+
.gallery-grid section > div { display: flex; flex-direction: column; gap: .75rem; }
|
|
1768
|
+
.gallery-card { overflow: hidden; padding: 0; border: 1px solid rgba(220,188,127,.22); color: inherit; text-align: left; font: inherit; background: rgba(238,221,188,.045); cursor: pointer; }
|
|
1769
|
+
.gallery-card:disabled { opacity: 1; cursor: default; }
|
|
1770
|
+
.gallery-card.unlocked:hover, .gallery-card.unlocked:focus-visible { border-color: rgba(226,191,124,.72); background: rgba(238,221,188,.09); transform: translateY(-2px); }
|
|
1771
|
+
.gallery-card img, .locked-art { width: 100%; aspect-ratio: 16/10; display: block; object-fit: cover; }
|
|
1772
|
+
.gallery-card img { filter: saturate(.72); }
|
|
1773
|
+
.locked-art { display: grid; place-content: center; color: rgba(229,204,158,.22); font-size: 4rem; background: repeating-linear-gradient(135deg, rgba(224,197,145,.045) 0 2px, transparent 2px 9px); }
|
|
1774
|
+
.gallery-card > div:last-child { padding: .68rem; }
|
|
1775
|
+
.gallery-card b, .gallery-card small { display: block; }
|
|
1776
|
+
.gallery-card small { margin-top: .28rem; color: #918474; font: .75rem var(--sans); }
|
|
1777
|
+
.gallery-card.locked { filter: grayscale(.7); }
|
|
1778
|
+
.gallery-replay { position: absolute; z-index: 2; inset: 3vh 3vw; display: grid; grid-template-columns: minmax(0,1fr) minmax(330px,38%); overflow: hidden; border: 1px solid rgba(226,191,124,.68); color: #eadcc4; background: #110d0b; box-shadow: 0 30px 90px rgba(0,0,0,.8); }
|
|
1779
|
+
.gallery-replay > img { width: 100%; height: 100%; object-fit: cover; }
|
|
1780
|
+
.gallery-replay-copy { min-height: 0; display: flex; flex-direction: column; justify-content: flex-start; padding: clamp(1.5rem,3vw,3.5rem); overflow-y: auto; background: linear-gradient(135deg,#211713,#120d0b); }
|
|
1781
|
+
.gallery-replay-copy h2 { margin: .2rem 0 .8rem; font-size: clamp(2rem,3vw,3.5rem); letter-spacing: .1em; }
|
|
1782
|
+
.gallery-replay-copy > p:not(.eyebrow) { color: #cfbea5; font: .9rem/1.85 var(--sans); }
|
|
1783
|
+
.gallery-archive-summary { margin: 0 0 1rem; }
|
|
1784
|
+
.gallery-variant-nav { display: flex; flex-wrap: wrap; gap: .45rem; margin: 0 0 1rem; padding: .65rem 0; border-block: 1px solid rgba(220,188,127,.2); }
|
|
1785
|
+
.gallery-variant-nav .plain-button { padding: .4rem .58rem; color: #9e907c; font-size: .68rem; }
|
|
1786
|
+
.gallery-variant-nav .plain-button.active { border-color: rgba(226,191,124,.72); color: #ead09b; background: rgba(169,112,48,.2); }
|
|
1787
|
+
.gallery-archive-pages { display: flex; flex-direction: column; gap: .8rem; }
|
|
1788
|
+
.gallery-archive-page { padding: .85rem .9rem; border: 1px solid rgba(220,188,127,.2); border-left: 3px solid rgba(181,128,61,.7); background: rgba(0,0,0,.16); }
|
|
1789
|
+
.gallery-archive-page .gallery-archive-kicker { margin: 0; color: #aa9067; font: .62rem/1.45 var(--sans); letter-spacing: .06em; }
|
|
1790
|
+
.gallery-archive-page h3 { margin: .24rem 0 .5rem; color: #ead7b6; font-size: 1.05rem; }
|
|
1791
|
+
.gallery-archive-page > p:not(.gallery-archive-kicker) { margin: 0; color: #c9b9a1; font: .78rem/1.72 var(--sans); }
|
|
1792
|
+
.gallery-archive-details { display: grid; gap: .36rem; margin: .65rem 0 0; padding: .65rem .7rem .65rem 1.65rem; color: #ad9d87; background: rgba(229,208,169,.035); font: .68rem/1.62 var(--sans); }
|
|
1793
|
+
.gallery-archive-actions, .gallery-archive-nonmembers { margin-top: .7rem; padding-top: .65rem; border-top: 1px solid rgba(220,188,127,.16); }
|
|
1794
|
+
.gallery-archive-actions h4, .gallery-archive-nonmembers h4 { margin: 0 0 .45rem; color: #ba9e72; font: .65rem var(--sans); letter-spacing: .08em; }
|
|
1795
|
+
.gallery-archive-actions p, .gallery-archive-nonmembers p { display: grid; grid-template-columns: minmax(6.2rem,auto) 1fr; gap: .55rem; margin: .32rem 0; color: #a99a85; font: .66rem/1.55 var(--sans); }
|
|
1796
|
+
.gallery-archive-actions b, .gallery-archive-nonmembers b { color: #d2b985; font-weight: 600; }
|
|
1797
|
+
.gallery-archive-nonmembers { border-color: rgba(148,73,64,.32); }
|
|
1798
|
+
.gallery-archive-nonmembers b { color: #c58f82; }
|
|
1799
|
+
.gallery-replay-copy .replay-note { margin: 1rem 0; padding-top: .8rem; border-top: 1px solid rgba(220,188,127,.22); color: #9c8d78; font-size: .78rem; }
|
|
1800
|
+
.gallery-replay-copy .ink-button { align-self: flex-start; }
|
|
1801
|
+
|
|
1802
|
+
.toast { position: fixed; z-index: 900; left: 50%; bottom: 4vh; transform: translate(-50%, 20px); opacity: 0; pointer-events: none; padding: .72rem 1rem; border: 1px solid #a9473a; color: #f4dfca; background: rgba(75,24,20,.94); font: .78rem var(--sans); transition: opacity .2s, transform .2s; }
|
|
1803
|
+
.toast.show { opacity: 1; transform: translate(-50%,0); }
|
|
1804
|
+
|
|
1805
|
+
/* 选择回响留在下一幕上,但不再抢焦点、锁背景、逼玩家每步按一次“接下去”。 */
|
|
1806
|
+
.result-feedback { position: fixed; z-index: 420; right: 2.4vw; bottom: 2.5vh; width: min(650px, calc(100vw - 4.8vw)); pointer-events: none; }
|
|
1807
|
+
.result-card { position: relative; padding: .78rem 3.4rem .8rem 1rem; border: 1px solid rgba(226,191,124,.5); color: #eadcc4; background: linear-gradient(135deg, rgba(35,23,18,.96), rgba(18,13,11,.96)); box-shadow: 0 16px 45px rgba(0,0,0,.58), inset 3px 0 #a43a31; }
|
|
1808
|
+
.result-card .eyebrow { margin-bottom: .15rem; font-size: .55rem; }
|
|
1809
|
+
.result-card h2 { margin: 0 0 .25rem; font-size: 1rem; letter-spacing: .08em; }
|
|
1810
|
+
.result-card > p:not(.eyebrow) { margin: 0; max-height: 4.8em; overflow: auto; color: #d5c4aa; font: .72rem/1.6 var(--sans); }
|
|
1811
|
+
.result-card #btn-result-dismiss { position: absolute; top: .6rem; right: .65rem; pointer-events: auto; }
|
|
1812
|
+
|
|
1813
|
+
.confirm-overlay { position: fixed; z-index: 650; inset: 0; display: grid; place-items: center; padding: 5vw; background: rgba(8,5,4,.88); backdrop-filter: blur(8px); }
|
|
1814
|
+
.confirm-card { width: min(580px,92vw); padding: 1.5rem; border: 1px solid rgba(226,191,124,.6); color: #e9dcc5; background: linear-gradient(145deg,#2a1c17,#120d0b); box-shadow: 0 28px 80px rgba(0,0,0,.72); }
|
|
1815
|
+
.confirm-card h2 { margin: .1rem 0 .65rem; font-size: 1.8rem; }
|
|
1816
|
+
.confirm-card > p:not(.eyebrow) { color: #cbbba4; font: .9rem/1.8 var(--sans); }
|
|
1817
|
+
.roster-overlay { position: fixed; z-index: 610; inset: 0; display: grid; place-items: center; padding: 3vh 3vw; background: rgba(8,5,4,.9); backdrop-filter: blur(8px); }
|
|
1818
|
+
.roster-sheet { width: min(760px,94vw); max-height: 92vh; display: grid; grid-template-rows: auto minmax(0,1fr); overflow: hidden; border: 1px solid rgba(226,191,124,.55); color: #eadcc4; background: linear-gradient(145deg,#2a1c17,#120d0b); }
|
|
1819
|
+
.roster-sheet > header { display: flex; align-items: center; justify-content: space-between; padding: 1rem; border-bottom: 1px solid rgba(226,191,124,.2); }
|
|
1820
|
+
.roster-sheet h2 { margin: 0; }
|
|
1821
|
+
.roster-scroll { min-height: 0; display: flex; flex-direction: column; gap: .45rem; padding: .8rem; overflow-y: auto; }
|
|
1822
|
+
.ledger-status { padding: .68rem .72rem; border: 1px solid rgba(205,168,104,.28); background: rgba(81,54,32,.16); }
|
|
1823
|
+
.ledger-status > header { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; color: #d5b67e; font: .7rem var(--sans); }
|
|
1824
|
+
.ledger-status > header span { color: #8f806d; font-size: .58rem; }
|
|
1825
|
+
.ledger-resources { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: .42rem; margin-top: .58rem; }
|
|
1826
|
+
.ledger-resources .resource-chip { justify-content: center; min-width: 0; padding: .42rem .28rem; border-top: 1px solid currentColor; background: rgba(0,0,0,.16); }
|
|
1827
|
+
.roster-relations { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .45rem; }
|
|
1828
|
+
.roster-relations .relation-card:last-child { grid-column: 1 / -1; }
|
|
1829
|
+
|
|
1830
|
+
/* 四幕不仅换题签:同一宅院在偏宠、证据合流、总账危机里逐幕改色。 */
|
|
1831
|
+
.game-shell .visual-stage::after { transition: box-shadow .55s ease, background-color .55s ease; }
|
|
1832
|
+
.game-shell[data-act="2"] .visual-stage::after { box-shadow: inset 0 0 0 100vmax rgba(104,42,35,.055); }
|
|
1833
|
+
.game-shell[data-act="3"] .visual-stage::after { box-shadow: inset 0 0 0 100vmax rgba(30,65,60,.075); }
|
|
1834
|
+
.game-shell[data-act="4"] .visual-stage::after { box-shadow: inset 0 0 0 100vmax rgba(50,25,42,.11); }
|
|
1835
|
+
|
|
1836
|
+
@media (max-width: 900px) {
|
|
1837
|
+
.result-feedback { right: .75rem; bottom: .75rem; width: calc(100vw - 1.5rem); }
|
|
1838
|
+
.result-card { padding: .65rem 3rem .65rem .8rem; }
|
|
1839
|
+
html, body { min-width: 0; width: 100%; height: 100%; overflow: hidden; }
|
|
1840
|
+
body { min-width: 0; }
|
|
1841
|
+
#app { width: 100%; height: 100svh; overflow: hidden; }
|
|
1842
|
+
|
|
1843
|
+
.age-gate { padding: 1.35rem; }
|
|
1844
|
+
.age-gate::before { width: calc(100vw - 1.2rem); height: calc(100svh - 1.2rem); }
|
|
1845
|
+
.age-gate { --age-safe-inline: min(32rem, calc(100vw - 2.7rem)); }
|
|
1846
|
+
.age-gate h1 { font-size: clamp(1.75rem,9vw,3rem); }
|
|
1847
|
+
.age-gate p:not(.eyebrow) { line-height: 1.65; }
|
|
1848
|
+
|
|
1849
|
+
.title-screen { display: block; }
|
|
1850
|
+
.title-art { background-position: 42% center; }
|
|
1851
|
+
.title-art::after { background: linear-gradient(0deg, rgba(12,8,7,.98) 0%, rgba(12,8,7,.78) 54%, rgba(12,8,7,.2) 100%); }
|
|
1852
|
+
.title-copy { position: absolute; inset: 0; display: flex; justify-content: flex-end; padding: 1.4rem 1.15rem 1.6rem; background: none; overflow-y: auto; }
|
|
1853
|
+
.title-copy::before { display: none; }
|
|
1854
|
+
.title-copy h1 { white-space: normal; font-size: clamp(2.15rem,11vw,3.4rem); }
|
|
1855
|
+
.title-subtitle { margin-bottom: .65rem; font-size: .95rem; }
|
|
1856
|
+
.identity-line { margin-bottom: .85rem; font-size: .82rem; line-height: 1.65; }
|
|
1857
|
+
.title-actions { margin-bottom: .7rem; }
|
|
1858
|
+
.title-actions .ink-button { flex: 1 1 8rem; min-width: 0; }
|
|
1859
|
+
.rating-line, .save-note { margin: .25rem 0; font-size: .68rem; }
|
|
1860
|
+
|
|
1861
|
+
.game-shell { grid-template-rows: 58px minmax(0,1fr); }
|
|
1862
|
+
.topbar { grid-template-columns: minmax(0,1fr) auto; grid-template-rows: 58px; }
|
|
1863
|
+
.day-mark { min-width: 0; padding: 0 .65rem; border-right: 0; }
|
|
1864
|
+
.day-mark b { font-size: .78rem; }
|
|
1865
|
+
.day-mark span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .6rem; }
|
|
1866
|
+
.hud-notice { display: none; }
|
|
1867
|
+
.top-actions { padding: 0 .45rem; gap: .25rem; }
|
|
1868
|
+
.top-actions .plain-button { padding: .38rem .48rem; font-size: .66rem; }
|
|
1869
|
+
.play-area { grid-template-columns: minmax(0,1fr); }
|
|
1870
|
+
.relation-rail { display: none; }
|
|
1871
|
+
.phase-stage { min-width: 0; min-height: 0; }
|
|
1872
|
+
.phase-header h2 { font-size: 1.42rem; }
|
|
1873
|
+
.phase-header > p:last-child { max-width: 30rem; font-size: .8rem; line-height: 1.58; }
|
|
1874
|
+
.opening-panel, .act-transition-panel, .day-panel, .joint-result-panel, .banquet-panel, .public-evidence-panel, .public-followup-panel, .final-reckoning-panel, .personal-finale-panel, .alliance-assembly-panel, .alliance-night-panel, .shared-afterglow-result-panel, .shared-dawn-result-panel, .collapse-finale-panel, .collapse-result-panel, .shared-panel { left: 2.5%; right: 2.5%; top: auto; width: auto; bottom: 2%; max-height: 94%; padding: .8rem; overflow: clip; transform: none; }
|
|
1875
|
+
.opening-panel { left: 3%; right: 3%; width: auto; }
|
|
1876
|
+
.opening-aftermath-stage::after { background:linear-gradient(0deg,rgba(13,8,7,.995) 0%,rgba(13,8,7,.86) 66%,rgba(13,8,7,.08) 93%); }
|
|
1877
|
+
.opening-aftermath-cast { inset:1% 2% auto; height:27%; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); grid-template-rows:1fr; gap:.18rem; }
|
|
1878
|
+
.opening-aftermath-cast figure:last-child { grid-column:auto; }
|
|
1879
|
+
.opening-aftermath-cast figcaption { padding:1.1rem .18rem .2rem; text-align:center; }
|
|
1880
|
+
.opening-aftermath-cast figcaption i,.opening-aftermath-cast figcaption small { display:none; }
|
|
1881
|
+
.opening-aftermath-cast figcaption b { font-size:.52rem; }
|
|
1882
|
+
.opening-aftermath-panel { left:3%; right:3%; top:auto; bottom:2%; width:auto; max-height:72%; padding:.82rem; overflow:clip; transform:none; }
|
|
1883
|
+
.opening-aftermath-panel .phase-header h2 { margin-bottom:.34rem; font-size:1.24rem; }
|
|
1884
|
+
.opening-aftermath-panel .phase-header > p:last-child { font-size:.69rem; line-height:1.42; }
|
|
1885
|
+
.opening-origin { gap:.08rem; margin:.34rem 0; padding:.34rem .46rem; }
|
|
1886
|
+
.opening-origin small { display:none; }
|
|
1887
|
+
.opening-aftermath-transcript { gap:.18rem; margin:.3rem 0; }
|
|
1888
|
+
.opening-aftermath-transcript li { padding:.28rem .34rem; }
|
|
1889
|
+
.opening-aftermath-transcript p { display:none; }
|
|
1890
|
+
.opening-aftermath-voices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.24rem; margin:.38rem 0; }
|
|
1891
|
+
.opening-aftermath-voices blockquote { padding:.32rem .4rem; }
|
|
1892
|
+
.opening-aftermath-voices p { margin-top:.12rem; font-size:.54rem; line-height:1.32; }
|
|
1893
|
+
.opening-aftermath-continue { min-height:44px; padding:.55rem .65rem; }
|
|
1894
|
+
.choice-grid { grid-template-columns: 1fr; }
|
|
1895
|
+
.day-panel { overflow: clip; }
|
|
1896
|
+
.day-context-details { margin: .42rem 0; }
|
|
1897
|
+
.day-context-details > summary, .evidence-board > summary, .joint-offers > summary { gap: .35rem; padding: .36rem .44rem; }
|
|
1898
|
+
.day-context-details > summary span, .evidence-board > summary span, .joint-offers > summary span { display: none; }
|
|
1899
|
+
.day-context-details > div { grid-template-columns: 1fr; max-height: 30svh; padding: 0 .42rem .42rem; }
|
|
1900
|
+
.evidence-board > div, .joint-offers > .joint-actions { max-height: 54svh; padding: 0 .42rem .42rem; }
|
|
1901
|
+
.supporting-context { margin: .42rem 0; }
|
|
1902
|
+
.supporting-context > summary { padding: .36rem .44rem; }
|
|
1903
|
+
.supporting-context > summary span { display: none; }
|
|
1904
|
+
.supporting-context-pages { grid-template-columns: 1fr; max-height: 54svh; padding: 0 .42rem .42rem; }
|
|
1905
|
+
.day-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
|
|
1906
|
+
.day-actions .choice-button { min-height: 78px; }
|
|
1907
|
+
.joint-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
|
|
1908
|
+
.joint-actions .choice-button { min-height: 70px; }
|
|
1909
|
+
.choice-button { min-height: 68px; }
|
|
1910
|
+
.choice-button b { font-size: .8rem; }
|
|
1911
|
+
.choice-button span { font-size: .72rem; }
|
|
1912
|
+
.route-branch-memory { margin-bottom: .55rem; padding: .55rem .62rem; }
|
|
1913
|
+
.route-branch-memory b { font-size: .7rem; }
|
|
1914
|
+
.route-branch-memory p { font-size: .62rem; line-height: 1.48; }
|
|
1915
|
+
|
|
1916
|
+
.visit-prompt { top: 1.5%; left: 2.5%; right: 2.5%; display: block; max-height: 30%; padding: .65rem .7rem; overflow-y: auto; }
|
|
1917
|
+
.visit-prompt .phase-header h2 { font-size: 1.2rem; }
|
|
1918
|
+
.visit-prompt .phase-header > p:last-child { font-size: .7rem; }
|
|
1919
|
+
.accord-panel { margin-top: .45rem; padding: .45rem 0 0; border-left: 0; border-top: 1px solid rgba(220,188,127,.24); }
|
|
1920
|
+
.accord-heading { align-items: flex-start; gap: .3rem; font-size: .62rem; }
|
|
1921
|
+
.accord-heading span { text-align: right; }
|
|
1922
|
+
.accord-seals { gap: .18rem; }
|
|
1923
|
+
.accord-seal { justify-content: center; padding: .22rem .15rem; font-size: .56rem; }
|
|
1924
|
+
.accord-seal i { display: none; }
|
|
1925
|
+
.heroine-doors, .evening.has-shared .heroine-doors { inset: 32% 2.5% 2%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: minmax(220px,38vh); gap: .45rem; overflow-y: auto; padding-right: .15rem; }
|
|
1926
|
+
.door-card > div { padding: 2.8rem .55rem .55rem; }
|
|
1927
|
+
.door-card b { font-size: .78rem; }
|
|
1928
|
+
.door-card small, .door-card em, .door-knock { font-size: .6rem; }
|
|
1929
|
+
.door-forecast dt,.door-due { font-size:.53rem; }
|
|
1930
|
+
.door-forecast dd { font-size:.56rem; }
|
|
1931
|
+
|
|
1932
|
+
.dialogue-panel, .night-talk-panel, .aftermath-panel, .personal-afterglow-panel, .personal-afterglow-aftermath-panel, .house-crisis-panel, .pair-interlude-panel, .favor-reckoning-panel, .memory-reckoning-panel, .dusk-invitation-panel, .morning-panel, .household-panel, .afterglow-panel, .shared-dawn-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 94%; padding: .9rem; overflow: clip; }
|
|
1933
|
+
.dialogue-panel { max-height: 94%; }
|
|
1934
|
+
.dialogue-panel > .choice-stack { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .5rem; margin-top: .65rem; }
|
|
1935
|
+
.dialogue-panel > .choice-stack .choice-button { min-height: 88px; padding: .62rem .68rem; }
|
|
1936
|
+
.dialogue-panel .consent-note { margin-top: .55rem; }
|
|
1937
|
+
.night-talk-prop { top: 1.5%; right: 2.5%; bottom: auto; width: min(112px,29vw); }
|
|
1938
|
+
.night-talk-prop span { font-size: .76rem; }
|
|
1939
|
+
.night-talk-stage::after { background: linear-gradient(0deg,rgba(13,8,7,.99) 0%,rgba(13,8,7,.82) 54%,rgba(13,8,7,.05) 84%); }
|
|
1940
|
+
.night-talk-voice { margin: .55rem 0; padding: .58rem .65rem; }
|
|
1941
|
+
.night-talk-voice p { font-size: .7rem; line-height: 1.58; }
|
|
1942
|
+
.night-talk-memory, .night-talk-continuity { margin: .5rem 0; padding: .52rem .58rem; }
|
|
1943
|
+
.night-talk-memory p, .night-talk-continuity p { font-size: .62rem; line-height: 1.48; }
|
|
1944
|
+
.night-talk-result-panel { max-height: 74%; }
|
|
1945
|
+
.night-talk-panel .intimacy-memory { margin: .4rem 0; padding: .46rem .5rem; }
|
|
1946
|
+
.night-talk-panel .intimacy-memory header { margin-bottom: .28rem; }
|
|
1947
|
+
.night-talk-panel .intimacy-memory > div { padding: .34rem .4rem; }
|
|
1948
|
+
.night-talk-panel .intimacy-memory small,
|
|
1949
|
+
.night-talk-panel .intimacy-memory p,
|
|
1950
|
+
.night-talk-panel .intimacy-memory em,
|
|
1951
|
+
.night-talk-result-panel .night-talk-stake p { display: none; }
|
|
1952
|
+
.rivalry-panel { max-height: 94%; }
|
|
1953
|
+
.rivalry-listener { top: 1.5%; right: 2.5%; width: min(122px,31vw); padding: .3rem; }
|
|
1954
|
+
.rivalry-listener figcaption { padding: .28rem .15rem .08rem; }
|
|
1955
|
+
.rivalry-listener figcaption small { display: none; }
|
|
1956
|
+
.rivalry-stage::after { background: linear-gradient(0deg,rgba(13,8,7,.99) 0%,rgba(13,8,7,.84) 52%,rgba(76,21,18,.08) 83%); }
|
|
1957
|
+
.rivalry-voice { margin: .55rem 0; padding: .58rem .65rem; }
|
|
1958
|
+
.rivalry-voice p { font-size: .7rem; line-height: 1.58; }
|
|
1959
|
+
.aftermath-main { inset: 0 0 auto; height: 56%; background-position: var(--heroine-focus-x,68%) 10%; mask-image: linear-gradient(0deg,transparent 0%,#000 18%,#000 100%); }
|
|
1960
|
+
.aftermath-observer { top: 2%; left: 2.5%; right: auto; bottom: auto; width: min(94px,24vw); opacity: .58; }
|
|
1961
|
+
.aftermath-observer figcaption { display: block; margin-top: .08rem; }
|
|
1962
|
+
.aftermath-observer figcaption span, .aftermath-observer figcaption b { display: block; }
|
|
1963
|
+
.aftermath-observer figcaption span { font-size: .58rem; }
|
|
1964
|
+
.aftermath-observer figcaption b { margin-top: .06rem; font-size: .72rem; }
|
|
1965
|
+
.aftermath-panel { max-height: 72%; overflow: clip; transform: none; }
|
|
1966
|
+
.aftermath-stage::after { background: linear-gradient(0deg, rgba(14,9,7,.98) 0%, rgba(14,9,7,.8) 48%, rgba(14,9,7,.08) 82%); }
|
|
1967
|
+
.aftermath-stage.milestone-chapter .aftermath-main { inset: 0 0 auto; background-position: 70% 8%; }
|
|
1968
|
+
.aftermath-stage.milestone-chapter::after { background: linear-gradient(0deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.8) 49%,rgba(13,9,8,.05) 84%); }
|
|
1969
|
+
.aftermath-story-panel { max-height: 72%; }
|
|
1970
|
+
.public-evidence-panel { max-height: 96%; }
|
|
1971
|
+
.personal-afterglow-stage::after { background: linear-gradient(0deg,rgba(14,9,7,.98) 0%,rgba(14,9,7,.77) 58%,rgba(14,9,7,.08) 86%); }
|
|
1972
|
+
.afterglow-close { inset: 0; mask-image: linear-gradient(0deg,transparent 0%,#000 24%,#000 100%); }
|
|
1973
|
+
.afterglow-memory { top: 1.5%; right: 2.5%; width: min(150px,38vw); padding: .35rem; }
|
|
1974
|
+
.personal-afterglow-aftermath-stage::after { background:linear-gradient(0deg,rgba(13,8,7,.99) 0%,rgba(13,8,7,.82) 61%,rgba(13,8,7,.06) 89%); }
|
|
1975
|
+
.personal-afterglow-aftermath-close { inset:0; mask-image:linear-gradient(0deg,transparent 0%,#000 24%,#000 100%); }
|
|
1976
|
+
.personal-afterglow-aftermath-memory { top:1.5%; right:2.5%; width:min(145px,37vw); padding:.32rem; }
|
|
1977
|
+
.personal-afterglow-aftermath-ledger { grid-template-columns:1fr; gap:.3rem; }
|
|
1978
|
+
.personal-afterglow-aftermath-ledger span { padding:.48rem .55rem; }
|
|
1979
|
+
.personal-afterglow-aftermath-ledger em { display:none; }
|
|
1980
|
+
.house-crisis-stage::after { background: linear-gradient(0deg,rgba(12,8,7,.98) 0%,rgba(12,8,7,.79) 58%,rgba(12,8,7,.08) 88%); }
|
|
1981
|
+
.crisis-cast { right: 2%; top: 1%; bottom: auto; width: 96%; height: 34%; align-items: stretch; }
|
|
1982
|
+
.crisis-cast figure, .crisis-cast figure.rescue-ready { height: 100%; min-height: 0; transform: none; }
|
|
1983
|
+
.crisis-cast figcaption small { display: none; }
|
|
1984
|
+
.crisis-ledger { grid-template-columns: repeat(2,minmax(0,1fr)); }
|
|
1985
|
+
.crisis-aftermath-stage::after { background:linear-gradient(0deg,rgba(12,8,7,.995) 0%,rgba(12,8,7,.88) 64%,rgba(12,8,7,.08) 92%); }
|
|
1986
|
+
.crisis-aftermath-cast { inset:1.5% 2.5% auto; height:34%; gap:.22rem; }
|
|
1987
|
+
.crisis-aftermath-cast figure,.crisis-aftermath-cast figure.speaking { min-height:0; transform:none; }
|
|
1988
|
+
.crisis-aftermath-cast figcaption { padding:1.75rem .25rem .3rem; }
|
|
1989
|
+
.crisis-aftermath-cast figcaption i,.crisis-aftermath-cast figcaption small { display:none; }
|
|
1990
|
+
.crisis-aftermath-cast figcaption b { font-size:.58rem; }
|
|
1991
|
+
.crisis-aftermath-panel { left:3%; right:3%; top:auto; bottom:2%; width:auto; max-height:72%; padding:.86rem; transform:none; }
|
|
1992
|
+
.crisis-aftermath-ledger { gap:.2rem; }
|
|
1993
|
+
.crisis-aftermath-ledger span { padding:.38rem .3rem; }
|
|
1994
|
+
.crisis-aftermath-ledger small { font-size:.5rem; }
|
|
1995
|
+
.crisis-aftermath-ledger b { font-size:.57rem; }
|
|
1996
|
+
.crisis-aftermath-choices { grid-template-columns:1fr; }
|
|
1997
|
+
.crisis-aftermath-panel > .ink-button { width:100%; }
|
|
1998
|
+
.pair-interlude-stage::after { background: linear-gradient(0deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.78) 58%,rgba(13,9,8,.05) 88%); }
|
|
1999
|
+
.pair-portraits { inset: 0 0 auto; height: 35%; }
|
|
2000
|
+
.pair-portraits figcaption { inset: auto .25rem 0; padding: 1.8rem .45rem .4rem; }
|
|
2001
|
+
.pair-portraits p { display: none; }
|
|
2002
|
+
.pair-interlude-panel { max-height: 94%; }
|
|
2003
|
+
.pair-trust { display: grid; gap: .25rem; }
|
|
2004
|
+
.pair-aftermath-cast { inset:0 0 auto; height:34%; padding-right:27%; }
|
|
2005
|
+
.pair-aftermath-witness { top:1%; right:2%; width:min(112px,27vw); padding:.28rem; }
|
|
2006
|
+
.pair-aftermath-witness small { display:none; }
|
|
2007
|
+
.pair-aftermath-panel { max-height:94%; }
|
|
2008
|
+
.personal-finale-stage::after { background: linear-gradient(0deg,rgba(13,9,8,.99) 0%,rgba(13,9,8,.83) 60%,rgba(13,9,8,.06) 89%); }
|
|
2009
|
+
.personal-finale-main { inset: 0; background-position: 70% 10%; }
|
|
2010
|
+
.personal-finale-panel { top: auto; max-height: 69%; }
|
|
2011
|
+
.personal-finale-panel .choice-grid { grid-template-columns: 1fr; }
|
|
2012
|
+
.personal-finale-others { top: 1.5%; right: 2%; bottom: auto; }
|
|
2013
|
+
.personal-finale-others figure { width: 46px; height: 62px; }
|
|
2014
|
+
.personal-finale-others figcaption { padding-top: .8rem; font-size: .48rem; }
|
|
2015
|
+
.personal-finale-result-stage::after { background: linear-gradient(0deg,rgba(10,9,8,.995) 0%,rgba(10,9,8,.86) 63%,rgba(29,67,55,.08) 91%); }
|
|
2016
|
+
.personal-finale-result-main { background-position: 68% 10%; transform: scale(1.02); }
|
|
2017
|
+
.personal-finale-result-panel { top: auto; max-height: 72%; }
|
|
2018
|
+
.personal-finale-agreements { grid-template-columns: 1fr; gap: .3rem; }
|
|
2019
|
+
.personal-finale-agreements > div { padding: .46rem .52rem; }
|
|
2020
|
+
.personal-finale-agreements p { font-size: .57rem; }
|
|
2021
|
+
.personal-finale-result-ledger { margin: .52rem 0; padding: .48rem .52rem; }
|
|
2022
|
+
.personal-finale-result-continue { width: 100%; min-width: 0; }
|
|
2023
|
+
.result-witnesses { opacity: .48; }
|
|
2024
|
+
.personal-departure-reasons ol { grid-template-columns: 1fr; }
|
|
2025
|
+
.alliance-assembly-stage::after { background:linear-gradient(0deg,rgba(13,9,7,.99) 0%,rgba(13,9,7,.84) 62%,rgba(13,9,7,.06) 91%); }
|
|
2026
|
+
.alliance-assembly-cast { inset:0 0 auto; height:34%; grid-template-columns:repeat(4,minmax(0,1fr)); grid-template-rows:1fr; }
|
|
2027
|
+
.alliance-assembly-cast.alliance-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
|
|
2028
|
+
.alliance-assembly-cast.alliance-count-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
|
|
2029
|
+
.alliance-assembly-cast figcaption { padding:1.65rem .22rem .3rem; }
|
|
2030
|
+
.alliance-assembly-cast figcaption span,.alliance-assembly-cast figcaption em { display:none; }
|
|
2031
|
+
.alliance-assembly-cast figcaption b { font-size:.55rem; }
|
|
2032
|
+
.alliance-assembly-cast figcaption small { font-size:.45rem; }
|
|
2033
|
+
.alliance-assembly-panel { top:auto; max-height:70%; }
|
|
2034
|
+
.alliance-assembly-summary { grid-template-columns:1fr; }
|
|
2035
|
+
.alliance-night-stage::after { background: linear-gradient(0deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.81) 58%,rgba(13,9,8,.06) 88%); }
|
|
2036
|
+
.alliance-cast { inset: 0 0 auto; height: 38%; }
|
|
2037
|
+
.alliance-cast figure:nth-child(even) { transform: none; }
|
|
2038
|
+
.alliance-cast figcaption { inset: auto .2rem 0; padding: 1.7rem .35rem .35rem; }
|
|
2039
|
+
.alliance-night-panel { top: auto; max-height: 67%; }
|
|
2040
|
+
.alliance-night-panel .choice-grid { grid-template-columns: 1fr; }
|
|
2041
|
+
.alliance-night-result-stage::after { background: linear-gradient(0deg,rgba(11,13,11,.99) 0%,rgba(11,13,11,.84) 62%,rgba(32,76,58,.08) 90%); }
|
|
2042
|
+
.alliance-result-cast { height: 34%; }
|
|
2043
|
+
.alliance-result-panel { top: auto; max-height: 72%; }
|
|
2044
|
+
.alliance-result-voices { gap: .28rem; }
|
|
2045
|
+
.alliance-result-voices blockquote { padding: .44rem .5rem; }
|
|
2046
|
+
.alliance-result-bonds { gap: .2rem; }
|
|
2047
|
+
.alliance-result-continue { width: 100%; min-width: 0; }
|
|
2048
|
+
.shared-afterglow-result-stage::after { background: linear-gradient(0deg,rgba(12,13,11,.995) 0%,rgba(12,13,11,.87) 66%,rgba(36,78,61,.08) 92%); }
|
|
2049
|
+
.shared-result-cast { inset: 0 0 auto; height: 31%; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .1rem; }
|
|
2050
|
+
.shared-result-cast figure:nth-child(even) { transform: none; }
|
|
2051
|
+
.shared-result-cast figcaption { padding: 1.6rem .1rem .28rem; }
|
|
2052
|
+
.shared-result-cast b { font-size: .55rem; }
|
|
2053
|
+
.shared-result-cast span { display: none; }
|
|
2054
|
+
.shared-afterglow-result-panel { top: auto; max-height: 75%; }
|
|
2055
|
+
.shared-result-voices { grid-template-columns: 1fr; gap: .26rem; }
|
|
2056
|
+
.shared-result-voices blockquote:last-child { grid-column: auto; }
|
|
2057
|
+
.shared-result-voices blockquote { padding: .42rem .48rem; }
|
|
2058
|
+
.shared-result-choice { margin: .45rem 0; padding: .42rem .48rem; }
|
|
2059
|
+
.shared-result-continue { width: 100%; min-width: 0; }
|
|
2060
|
+
.shared-dawn-result-stage::after { background: linear-gradient(0deg,rgba(17,12,8,.995) 0%,rgba(24,18,11,.86) 65%,rgba(211,169,91,.08) 92%); }
|
|
2061
|
+
.shared-dawn-result-cast { inset: 0 0 auto; height: 31%; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .1rem; }
|
|
2062
|
+
.shared-dawn-result-cast figure:nth-child(even) { transform: none; }
|
|
2063
|
+
.shared-dawn-result-cast figcaption { padding: 1.55rem .1rem .28rem; }
|
|
2064
|
+
.shared-dawn-result-cast b { font-size: .54rem; }
|
|
2065
|
+
.shared-dawn-result-cast span { display: none; }
|
|
2066
|
+
.shared-dawn-result-panel { top: auto; max-height: 75%; }
|
|
2067
|
+
.shared-dawn-result-voices { grid-template-columns: 1fr; gap: .26rem; }
|
|
2068
|
+
.shared-dawn-result-voices blockquote:last-child { grid-column: auto; }
|
|
2069
|
+
.shared-dawn-result-voices blockquote { padding: .42rem .48rem; }
|
|
2070
|
+
.shared-dawn-result-ledger { margin: .45rem 0; padding: .42rem .48rem; }
|
|
2071
|
+
.shared-dawn-result-continue { width: 100%; min-width: 0; }
|
|
2072
|
+
.collapse-finale-stage::after,.collapse-result-stage::after { background: linear-gradient(0deg,rgba(13,8,7,.995) 0%,rgba(18,10,8,.88) 66%,rgba(111,45,31,.08) 92%); }
|
|
2073
|
+
.collapse-cast,.collapse-result-cast { inset: 0 0 auto; height: 31%; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .1rem; }
|
|
2074
|
+
.collapse-cast figure:not(.speaking) { transform: none; }
|
|
2075
|
+
.collapse-cast figcaption,.collapse-result-cast figcaption { padding: 1.55rem .1rem .28rem; }
|
|
2076
|
+
.collapse-cast b,.collapse-result-cast b { font-size: .54rem; }
|
|
2077
|
+
.collapse-cast span,.collapse-result-cast span { display: none; }
|
|
2078
|
+
.collapse-finale-panel,.collapse-result-panel { top: auto; max-height: 94%; }
|
|
2079
|
+
.collapse-final-choices,.collapse-result-voices { grid-template-columns: 1fr; gap: .26rem; }
|
|
2080
|
+
.collapse-current-voice { padding: .55rem .62rem; }
|
|
2081
|
+
.collapse-cause-ledger,.collapse-result-ledger { margin: .45rem 0; padding: .42rem .48rem; }
|
|
2082
|
+
.collapse-continue,.collapse-result-continue { width: 100%; min-width: 0; }
|
|
2083
|
+
.memory-reckoning-stage::after { background: linear-gradient(0deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.8) 58%,rgba(13,9,8,.06) 88%); }
|
|
2084
|
+
.memory-cast { inset: 0 0 auto; height: 39%; }
|
|
2085
|
+
.memory-cast figure:not(.memory-lead) { transform: none; }
|
|
2086
|
+
.memory-cast figcaption { inset: auto .25rem 0; padding: 1.8rem .45rem .4rem; }
|
|
2087
|
+
.memory-cast p { display: none; }
|
|
2088
|
+
.favor-reckoning-stage::after { background:linear-gradient(0deg,rgba(13,8,7,.99) 0%,rgba(13,8,7,.82) 58%,rgba(48,13,9,.08) 88%); }
|
|
2089
|
+
.favor-cast { inset:0 0 auto; height:39%; }
|
|
2090
|
+
.favor-cast figure:not(.favor-lead) { transform:none; }
|
|
2091
|
+
.favor-cast figcaption { inset:auto .25rem 0; padding:1.8rem .45rem .4rem; }
|
|
2092
|
+
.favor-cast p { display:none; }
|
|
2093
|
+
.dusk-invitation-stage::after { background: linear-gradient(0deg,rgba(13,9,8,.98) 0%,rgba(13,9,8,.79) 58%,rgba(13,9,8,.05) 88%); }
|
|
2094
|
+
.dusk-invite-cast { inset: 0 0 auto; height: 39%; }
|
|
2095
|
+
.dusk-invite-cast .invite-witness { top: 3%; left: 3%; width: min(98px,28vw); padding: .25rem; }
|
|
2096
|
+
.dusk-invite-cast .invite-witness figcaption span { display: none; }
|
|
2097
|
+
.dusk-invite-cast .invite-lead figcaption { inset: auto .4rem 0; padding: 1.8rem .45rem .4rem; }
|
|
2098
|
+
.dusk-invite-rule { display: none; }
|
|
2099
|
+
.close-cg::after, .morning-cg::after { background: linear-gradient(0deg, rgba(14,9,7,.98) 0%, rgba(14,9,7,.82) 46%, rgba(14,9,7,.06) 76%); }
|
|
2100
|
+
.morning-scene { height: 5rem; }
|
|
2101
|
+
.act-transition-panel .choice-grid, .banquet-panel .choice-grid, .public-evidence-panel .choice-grid, .public-followup-panel .choice-grid, .final-reckoning-panel .choice-grid, .council-panel .choice-grid, .shared-panel .choice-grid { grid-template-columns: 1fr; }
|
|
2102
|
+
.external-witnesses { grid-template-columns: 1fr; gap: .25rem; }
|
|
2103
|
+
.external-witnesses article { display: grid; grid-template-columns: auto auto 1fr; align-items: baseline; gap: .35rem; padding: .38rem .45rem; }
|
|
2104
|
+
.external-witnesses b { margin: 0; }
|
|
2105
|
+
.external-witnesses p { font-size: .72rem; }
|
|
2106
|
+
.evidence-chain-slots { gap: .2rem; }
|
|
2107
|
+
.evidence-chain-slots li { min-height: 48px; grid-template-columns: 1fr; padding: .34rem .28rem; text-align: center; }
|
|
2108
|
+
.evidence-chain-slots i { display: none; }
|
|
2109
|
+
.evidence-chain-slots span, .evidence-chain-slots b { font-size: .72rem; }
|
|
2110
|
+
.evidence-verdict .ink-button { width: 100%; min-width: 0; }
|
|
2111
|
+
.final-reckoning-cast { grid-template-columns: 1fr; max-height: 122px; overflow-y: auto; }
|
|
2112
|
+
.final-reckoning-cast figure { min-height: 54px; }
|
|
2113
|
+
.reckoning-ledgers { top: 1.5%; right: 2.5%; gap: .3rem; }
|
|
2114
|
+
.reckoning-ledgers i { width: 42px; height: 58px; font-size: .78rem; }
|
|
2115
|
+
.act-transition-cast { top: 1.5%; right: 2.5%; display: flex; gap: .25rem; }
|
|
2116
|
+
.act-transition-cast figure { width: 46px; height: 58px; }
|
|
2117
|
+
.act-transition-cast figure:last-child { grid-column: auto; }
|
|
2118
|
+
.public-followup-cast { overflow-x: auto; }
|
|
2119
|
+
.public-followup-cast figure { flex: 0 0 auto; }
|
|
2120
|
+
.council-cast figure { width: 54px; }
|
|
2121
|
+
.council-cast img { width: 42px; height: 42px; }
|
|
2122
|
+
|
|
2123
|
+
.scene-caption, .scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption { left: 3%; right: 3%; bottom: 2%; width: auto; max-height: 58%; display: block; padding: .9rem; overflow-y: auto; border-left: 2px solid var(--cinnabar); background: rgba(12,8,6,.9); }
|
|
2124
|
+
.scene-caption h2, .scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption h2 { font-size: 1.55rem; }
|
|
2125
|
+
.scene-caption > p:not(.eyebrow) { font-size: .76rem; line-height: 1.65; }
|
|
2126
|
+
.scene-meta { flex-wrap: wrap; gap: .35rem; }
|
|
2127
|
+
|
|
2128
|
+
.ending-view { display: block; overflow-y: auto; }
|
|
2129
|
+
.ending-art { position: absolute; inset: 0; opacity: .55; }
|
|
2130
|
+
.ending-copy { position: relative; min-height: 100%; justify-content: flex-start; padding: 3rem 1.15rem 1.5rem; background: linear-gradient(0deg, rgba(18,12,10,.98) 0%, rgba(18,12,10,.86) 62%, rgba(18,12,10,.15) 100%); }
|
|
2131
|
+
.ending-copy h1 { font-size: 2.45rem; }
|
|
2132
|
+
.ending-ledger { grid-template-columns: 1fr 1fr; }
|
|
2133
|
+
.ending-habits > header { align-items: flex-start; flex-direction: column; gap: .2rem; }
|
|
2134
|
+
.ending-habits > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
|
|
2135
|
+
.ending-habits article:last-child { grid-column: 1 / -1; }
|
|
2136
|
+
.ending-habits article small { -webkit-line-clamp: 1; }
|
|
2137
|
+
|
|
2138
|
+
.epilogue-overlay { padding: 0; }
|
|
2139
|
+
.epilogue-book { width: 100vw; height: 100svh; grid-template-columns: 1fr; grid-template-rows: minmax(220px,38svh) minmax(0,1fr); border: 0; }
|
|
2140
|
+
.epilogue-art::after { background: linear-gradient(0deg,rgba(18,13,11,.9),transparent 62%); }
|
|
2141
|
+
.epilogue-art > span { font-size: 3.5rem; }
|
|
2142
|
+
.epilogue-copy { padding: .8rem; }
|
|
2143
|
+
.epilogue-copy > header { padding-bottom: .55rem; }
|
|
2144
|
+
.epilogue-scroll { padding: .9rem .15rem .7rem; }
|
|
2145
|
+
.epilogue-copy h2 { font-size: 1.75rem; }
|
|
2146
|
+
.epilogue-body { font-size: .8rem; line-height: 1.75; }
|
|
2147
|
+
.epilogue-route-note { font-size: .7rem; line-height: 1.55; }
|
|
2148
|
+
.epilogue-habit { margin-top: .8rem; padding: .65rem .72rem; }
|
|
2149
|
+
.epilogue-copy > footer { gap: .4rem; }
|
|
2150
|
+
|
|
2151
|
+
.gallery-overlay { padding: 0; }
|
|
2152
|
+
.gallery-book { width: 100vw; height: 100svh; border: 0; }
|
|
2153
|
+
.gallery-book > header { padding: .8rem; }
|
|
2154
|
+
.gallery-book h2 { font-size: 1.35rem; }
|
|
2155
|
+
.ending-archive { padding: .65rem .8rem; }
|
|
2156
|
+
.ending-goals { grid-template-columns: repeat(3,minmax(0,1fr)); }
|
|
2157
|
+
.ending-goal small { display: none; }
|
|
2158
|
+
.ending-records { min-height: 4.7rem; }
|
|
2159
|
+
.gallery-grid { grid-template-columns: 1fr; padding: .8rem; }
|
|
2160
|
+
.gallery-replay { inset: 0; grid-template-columns: 1fr; grid-template-rows: 42svh minmax(0,1fr); }
|
|
2161
|
+
.gallery-replay-copy { justify-content: flex-start; padding: 1rem; overflow-y: auto; }
|
|
2162
|
+
.gallery-replay-copy h2 { font-size: 1.8rem; }
|
|
2163
|
+
.gallery-archive-actions p, .gallery-archive-nonmembers p { grid-template-columns: 1fr; gap: .15rem; }
|
|
2164
|
+
.result-card { width: 100%; max-height: 74svh; padding: 1rem; overflow-y: auto; }
|
|
2165
|
+
.confirm-overlay { padding: .8rem; }
|
|
2166
|
+
.confirm-card { width: 100%; }
|
|
2167
|
+
.roster-overlay { padding: 0; }
|
|
2168
|
+
.roster-sheet { width: 100vw; height: 100svh; max-height: none; border: 0; }
|
|
2169
|
+
.ledger-status > header { align-items: flex-start; flex-direction: column; gap: .18rem; }
|
|
2170
|
+
.ledger-resources { grid-template-columns: repeat(3,minmax(0,1fr)); gap: .28rem; }
|
|
2171
|
+
.roster-relations { grid-template-columns: 1fr; }
|
|
2172
|
+
.roster-relations .relation-card:last-child { grid-column: auto; }
|
|
2173
|
+
}
|
|
2174
|
+
|
|
2175
|
+
@media (max-height: 830px) {
|
|
2176
|
+
.game-shell { grid-template-rows: 60px 1fr; }
|
|
2177
|
+
.play-area { grid-template-columns: minmax(0,1fr); }
|
|
2178
|
+
.relation-rail { gap: .25rem; padding: .42rem .55rem; }
|
|
2179
|
+
.relation-card { padding: .38rem .52rem; }
|
|
2180
|
+
.relation-card p { min-height: 0; font-size: .6rem; }
|
|
2181
|
+
.relation-tiers { margin: .45rem 0; }
|
|
2182
|
+
.day-panel { padding: .8rem 1rem; }
|
|
2183
|
+
.phase-header h2 { font-size: 1.55rem; margin-bottom: .35rem; }
|
|
2184
|
+
.phase-header > p:last-child { font-size: .88rem; line-height: 1.55; }
|
|
2185
|
+
.choice-button { min-height: 58px; padding: .58rem .68rem; }
|
|
2186
|
+
.choice-button b { font-size: .82rem; }
|
|
2187
|
+
.joint-offers { margin-top: .5rem; padding-top: .45rem; }
|
|
2188
|
+
.joint-actions .choice-button { min-height: 52px; padding: .5rem; }
|
|
2189
|
+
.joint-actions .choice-button span { font-size: .6rem; }
|
|
2190
|
+
.joint-result-panel { padding: .8rem 1rem; }
|
|
2191
|
+
.dialogue-panel { top: 3%; bottom: 3%; padding: 1.1rem; }
|
|
2192
|
+
.heroine-doors { top: 23%; }
|
|
2193
|
+
.evening.has-shared .heroine-doors { top: 34%; }
|
|
2194
|
+
.visit-prompt { padding: .65rem .8rem; }
|
|
2195
|
+
.accord-seal { padding: .28rem .35rem; }
|
|
2196
|
+
}
|
|
2197
|
+
|
|
2198
|
+
@media (min-width: 901px) and (max-height: 830px) {
|
|
2199
|
+
.opening-aftermath-panel { padding:.88rem 1rem; }
|
|
2200
|
+
.opening-aftermath-panel .phase-header h2 { margin-bottom:.3rem; font-size:1.42rem; }
|
|
2201
|
+
.opening-aftermath-panel .phase-header > p:last-child { font-size:.76rem; line-height:1.45; }
|
|
2202
|
+
.opening-origin { gap:.08rem; margin:.35rem 0; padding:.38rem .48rem; }
|
|
2203
|
+
.opening-origin small { display:none; }
|
|
2204
|
+
.opening-aftermath-transcript { gap:.18rem; margin:.3rem 0; }
|
|
2205
|
+
.opening-aftermath-transcript li { padding:.28rem .34rem; }
|
|
2206
|
+
.opening-aftermath-transcript p { display:none; }
|
|
2207
|
+
.opening-aftermath-voices { gap:.24rem; margin:.35rem 0; }
|
|
2208
|
+
.opening-aftermath-voices blockquote { padding:.34rem .42rem; }
|
|
2209
|
+
.opening-aftermath-voices p { margin-top:.12rem; font-size:.54rem; line-height:1.32; }
|
|
2210
|
+
.opening-aftermath-continue { min-height:44px; padding:.55rem .65rem; }
|
|
2211
|
+
.aftermath-panel { width:49%; padding:.9rem 1rem; }
|
|
2212
|
+
.aftermath-story-quote { margin:.5rem 0; padding:.65rem .75rem; }
|
|
2213
|
+
.aftermath-story-quote p { margin-top:.35rem; font-size:.72rem; line-height:1.6; }
|
|
2214
|
+
.day-aftermath-panel { padding:.9rem 1rem; }
|
|
2215
|
+
.day-speaker { margin:.45rem 0; padding:.52rem .62rem; font-size:.66rem; line-height:1.5; }
|
|
2216
|
+
.collapse-result-panel { padding:.8rem 1rem; }
|
|
2217
|
+
.collapse-result-current-voice { margin:.4rem 0; padding:.52rem .6rem; }
|
|
2218
|
+
}
|
|
2219
|
+
|
|
2220
|
+
@media (min-width: 1800px) and (min-height: 1000px) {
|
|
2221
|
+
.play-area { grid-template-columns: minmax(0,1fr); }
|
|
2222
|
+
.relation-rail { padding: 1.4rem 1rem; gap: 1rem; }
|
|
2223
|
+
.relation-card { padding: 1rem; }
|
|
2224
|
+
.relation-card p { font-size: .76rem; }
|
|
2225
|
+
.dialogue-panel { width: 37%; padding: 2rem; }
|
|
2226
|
+
.choice-button { min-height: 80px; }
|
|
2227
|
+
}
|
|
2228
|
+
|
|
2229
|
+
@media (prefers-reduced-motion: reduce) {
|
|
2230
|
+
*, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
|
|
2231
|
+
}
|
|
2232
|
+
|
|
2233
|
+
/* 关系场景使用专属近景册页;完整奖励在解锁时全屏展开。 */
|
|
2234
|
+
/* 单张整版:一张图、一次曝光、一条 100° 斜向 scrim(光从右上斜入,对齐 CG 里的灯笼),
|
|
2235
|
+
不再左右对接两张图。 */
|
|
2236
|
+
.close-cg, .morning-cg {
|
|
2237
|
+
position: absolute;
|
|
2238
|
+
z-index: 1;
|
|
2239
|
+
inset: 0;
|
|
2240
|
+
background-size: cover;
|
|
2241
|
+
/* 夜间立绘是 1280×853 完整构图(人物在右 55–70%,左三是留给面板的暗部),
|
|
2242
|
+
不是人物切片;用 center 保住整版构图,第一批的 50% 12% 会把头切掉。 */
|
|
2243
|
+
background-position: center;
|
|
2244
|
+
filter: saturate(.82) brightness(.86) contrast(1.04);
|
|
2245
|
+
}
|
|
2246
|
+
.close-cg::after, .morning-cg::after {
|
|
2247
|
+
content: "";
|
|
2248
|
+
position: absolute;
|
|
2249
|
+
inset: 0;
|
|
2250
|
+
background:
|
|
2251
|
+
linear-gradient(100deg, rgba(14,9,7,.95) 0%, rgba(14,9,7,.90) 24%, rgba(14,9,7,.52) 42%, rgba(14,9,7,.08) 60%, rgba(14,9,7,.30) 100%),
|
|
2252
|
+
radial-gradient(115% 88% at 70% 42%, transparent 38%, rgba(10,7,6,.58) 100%);
|
|
2253
|
+
}
|
|
2254
|
+
.close-cg.closer { filter: saturate(.9) brightness(.8) contrast(1.06); transform: scale(1.025); transform-origin: center; }
|
|
2255
|
+
/* 次晨沿用同一整版构图,只叠一层晨光;亮度别压过灯焰,夜灯要还活着。 */
|
|
2256
|
+
.morning-cg { filter: brightness(1.1) sepia(.12) saturate(.88) contrast(1.0); }
|
|
2257
|
+
.title-copy h1 { font-size: clamp(2.35rem, 3.35vw, 4.5rem); white-space: nowrap; }
|
|
2258
|
+
|
|
2259
|
+
/* 视觉裁决 iteration 2:群像曝光、次晨角色一致性、人物账可读性。 */
|
|
2260
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-scrim {
|
|
2261
|
+
background: linear-gradient(0deg, rgba(12,8,7,.82) 0%, rgba(12,8,7,.14) 44%, rgba(12,8,7,.03) 72%);
|
|
2262
|
+
}
|
|
2263
|
+
/* 整宽底栏:说明文字退出 x 34–70%, y 60–84% 的保护区(账簿、两把钥匙、月娘的手),
|
|
2264
|
+
任何截图都不会再盖住这一帧的因果器物。 */
|
|
2265
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption {
|
|
2266
|
+
left: 0;
|
|
2267
|
+
right: 0;
|
|
2268
|
+
bottom: 0;
|
|
2269
|
+
width: auto;
|
|
2270
|
+
padding: 3.4rem 6% 2rem;
|
|
2271
|
+
border-left: 0;
|
|
2272
|
+
background: linear-gradient(0deg, rgba(12,8,6,.96) 0%, rgba(12,8,6,.86) 42%, transparent 100%);
|
|
2273
|
+
backdrop-filter: none;
|
|
2274
|
+
display: grid;
|
|
2275
|
+
grid-template-columns: 1fr auto;
|
|
2276
|
+
align-items: end;
|
|
2277
|
+
gap: .3rem 1.5rem;
|
|
2278
|
+
}
|
|
2279
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption .eyebrow,
|
|
2280
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption h2,
|
|
2281
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption > p { grid-column: 1; }
|
|
2282
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption h2 { margin-bottom: .5rem; font-size: clamp(1.7rem, 2.8vw, 2.9rem); }
|
|
2283
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption .scene-meta { grid-column: 2; grid-row: 1 / span 2; margin: 0; justify-content: flex-end; }
|
|
2284
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption .ink-button { grid-column: 2; }
|
|
2285
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) > img { filter: saturate(.92) brightness(1.08); }
|
|
2286
|
+
.scene-view[data-scene-id="inner_court_accord"] .scene-caption { max-height: 76%; overflow-y: auto; }
|
|
2287
|
+
.shared-night-accord-overview,.shared-night-accord-entry { grid-column: 1 / -1; margin-top: .45rem; padding: .58rem .68rem; border: 1px solid rgba(211,173,104,.28); background: rgba(15,10,8,.54); }
|
|
2288
|
+
.shared-night-accord-overview header,.shared-night-accord-entry > header { display: flex; justify-content: space-between; gap: .75rem; color: #a58c68; font: .56rem var(--sans); letter-spacing: .06em; }
|
|
2289
|
+
.shared-night-accord-overview header b,.shared-night-accord-entry > header b { color: #dfbf84; font-weight: 600; }
|
|
2290
|
+
.shared-night-accord-overview > div { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .32rem; margin-top: .48rem; }
|
|
2291
|
+
.shared-night-accord-overview > div > span { min-width: 0; padding: .42rem .46rem; border-left: 2px solid rgba(205,164,101,.52); background: rgba(69,48,27,.24); }
|
|
2292
|
+
.shared-night-accord-overview b,.shared-night-accord-overview em,.shared-night-accord-overview small { display: block; }
|
|
2293
|
+
.shared-night-accord-overview b { color: #ead5af; font: .64rem var(--serif); }
|
|
2294
|
+
.shared-night-accord-overview em { margin-top: .12rem; color: #c9a66e; font: normal .54rem var(--sans); }
|
|
2295
|
+
.shared-night-accord-overview small { margin-top: .12rem; color: #a99a84; font: .49rem/1.35 var(--sans); }
|
|
2296
|
+
.shared-night-accord-ledger { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .38rem; margin-top: .48rem; }
|
|
2297
|
+
.shared-night-accord-ledger article { min-width: 0; padding: .5rem .55rem; border-top: 1px solid rgba(205,164,101,.25); background: rgba(54,39,25,.18); }
|
|
2298
|
+
.shared-night-accord-ledger small,.shared-night-accord-ledger b,.shared-night-accord-ledger p { display: block; }
|
|
2299
|
+
.shared-night-accord-ledger small { color: #9f8259; font: .5rem var(--sans); letter-spacing: .06em; }
|
|
2300
|
+
.shared-night-accord-ledger b { margin-top: .14rem; color: #ddc397; font: .6rem/1.4 var(--serif); }
|
|
2301
|
+
.shared-night-accord-ledger blockquote { margin: .28rem 0; padding-left: .42rem; border-left: 2px solid rgba(184,130,73,.62); color: #ddcdb4; font: .58rem/1.45 var(--serif); }
|
|
2302
|
+
.shared-night-accord-ledger p,.shared-night-accord-conclusion { color: #b7aa97; font: .53rem/1.48 var(--sans); }
|
|
2303
|
+
.shared-night-accord-ledger p { margin: .22rem 0 0; }
|
|
2304
|
+
.shared-night-accord-conclusion { margin: .48rem 0 0; padding: .42rem .5rem; border-left: 2px solid rgba(104,159,132,.58); background: rgba(33,73,57,.14); }
|
|
2305
|
+
.scene-view[data-scene-id="inner_court_alliance"] > img { filter: saturate(.7) brightness(.62) contrast(1.08); }
|
|
2306
|
+
.scene-view[data-scene-id="inner_court_alliance"] .scene-caption { left: 2.5%; bottom: 2.5%; width: min(940px,78%); max-height: 92%; padding: 1rem 1.1rem; overflow-y: auto; border-left: 2px solid rgba(164,118,78,.72); background: linear-gradient(135deg,rgba(18,14,11,.97),rgba(36,27,20,.9)); }
|
|
2307
|
+
.alliance-tableau-overview,.alliance-tableau-entry { margin-top: .5rem; padding: .62rem .7rem; border: 1px solid rgba(185,145,94,.3); background: rgba(58,42,25,.22); }
|
|
2308
|
+
.alliance-tableau-overview > header,.alliance-tableau-entry > header { display: flex; justify-content: space-between; gap: .8rem; color: #ad9270; font: .57rem var(--sans); letter-spacing: .05em; }
|
|
2309
|
+
.alliance-tableau-overview > header b,.alliance-tableau-entry > header b { color: #e0bd85; font-weight: 600; }
|
|
2310
|
+
.alliance-tableau-overview > p,.alliance-tableau-entry > p { margin: .42rem 0; color: #d7c4a8; font: .59rem/1.52 var(--sans); }
|
|
2311
|
+
.alliance-tableau-members { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .34rem; }
|
|
2312
|
+
.alliance-tableau-members figure { position: relative; min-width: 0; min-height: 3.5rem; margin: 0; overflow: hidden; border-bottom: 1px solid rgba(197,154,93,.35); background: rgba(22,16,11,.48); }
|
|
2313
|
+
.alliance-tableau-members img { position: absolute; inset: 0 auto 0 0; width: 42%; height: 100%; object-fit: cover; object-position: top center; filter: saturate(.72) brightness(.78); }
|
|
2314
|
+
.alliance-tableau-members figcaption { position: relative; z-index: 1; min-height: 3.5rem; padding: .65rem .4rem .4rem 44%; background: linear-gradient(90deg,transparent,rgba(20,14,10,.94) 42%); }
|
|
2315
|
+
.alliance-tableau-members b,.alliance-tableau-members span { display: block; }
|
|
2316
|
+
.alliance-tableau-members b { color: #dfbe8c; font: .61rem var(--serif); }
|
|
2317
|
+
.alliance-tableau-members span { margin-top: .12rem; color: #9f8a70; font: .48rem var(--sans); }
|
|
2318
|
+
.alliance-tableau-path { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .34rem; margin-top: .42rem; }
|
|
2319
|
+
.alliance-tableau-path > span { min-width: 0; padding: .42rem .46rem; border-left: 2px solid rgba(181,133,76,.5); background: rgba(25,18,12,.38); }
|
|
2320
|
+
.alliance-tableau-path small,.alliance-tableau-path b,.alliance-tableau-path em { display: block; }
|
|
2321
|
+
.alliance-tableau-path small { color: #8f7b65; font: .48rem var(--sans); }
|
|
2322
|
+
.alliance-tableau-path b { margin-top: .12rem; color: #d9b984; font: .59rem var(--serif); }
|
|
2323
|
+
.alliance-tableau-path em { margin-top: .12rem; color: #b7a486; font: normal .49rem/1.35 var(--sans); }
|
|
2324
|
+
.alliance-tableau-nonmembers { margin-top: .42rem; padding: .42rem .5rem; border-top: 1px solid rgba(130,151,127,.25); background: rgba(28,48,38,.14); }
|
|
2325
|
+
.alliance-tableau-nonmembers > b { display: block; color: #a8bca7; font: .53rem var(--sans); }
|
|
2326
|
+
.alliance-tableau-nonmembers p { display: grid; grid-template-columns: 7.5rem 1fr; gap: .45rem; margin: .28rem 0 0; color: #9dac9d; font: .49rem/1.4 var(--sans); }
|
|
2327
|
+
.alliance-tableau-nonmembers strong { color: #c2d0be; font-weight: 600; }
|
|
2328
|
+
.alliance-tableau-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .34rem; }
|
|
2329
|
+
.alliance-tableau-actions article { display: grid; grid-template-columns: 2.8rem 1fr; gap: .45rem; min-width: 0; padding: .4rem .46rem; background: rgba(21,15,10,.42); }
|
|
2330
|
+
.alliance-tableau-actions img { width: 2.8rem; height: 3.4rem; object-fit: cover; object-position: top center; filter: saturate(.68) brightness(.75); }
|
|
2331
|
+
.alliance-tableau-actions b { display: block; color: #dcb77f; font: .56rem var(--serif); }
|
|
2332
|
+
.alliance-tableau-actions p { margin: .13rem 0 0; color: #bcae99; font: .5rem/1.42 var(--sans); }
|
|
2333
|
+
.alliance-tableau-entry > blockquote { margin: .48rem 0 0; padding: .42rem .5rem; border-left: 2px solid rgba(102,147,124,.58); color: #b9c9ba; background: rgba(30,57,44,.14); font: .53rem/1.46 var(--sans); }
|
|
2334
|
+
.scene-view[data-scene-id="inner_court_afterglow"] .scene-caption { left: 3%; bottom: 3%; width: min(760px,62%); max-height: 88%; padding: 1rem 1.1rem; overflow-y: auto; border-left: 2px solid rgba(191,137,116,.68); background: linear-gradient(135deg,rgba(21,13,14,.96),rgba(36,21,24,.88)); }
|
|
2335
|
+
.shared-afterglow-tableau-overview,.shared-afterglow-tableau-entry { margin-top: .5rem; padding: .62rem .7rem; border: 1px solid rgba(201,151,126,.28); background: rgba(61,32,38,.18); }
|
|
2336
|
+
.shared-afterglow-tableau-overview header,.shared-afterglow-tableau-entry > header { display: flex; justify-content: space-between; gap: .75rem; color: #b58d83; font: .57rem var(--sans); letter-spacing: .06em; }
|
|
2337
|
+
.shared-afterglow-tableau-overview header b,.shared-afterglow-tableau-entry > header b { color: #e1baaa; font-weight: 600; }
|
|
2338
|
+
.shared-afterglow-tableau-overview > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .36rem; margin-top: .48rem; }
|
|
2339
|
+
.shared-afterglow-tableau-overview > div > span { min-width: 0; padding: .46rem .5rem; border-top: 1px solid rgba(209,160,134,.3); background: rgba(31,18,21,.34); }
|
|
2340
|
+
.shared-afterglow-tableau-overview small,.shared-afterglow-tableau-overview b,.shared-afterglow-tableau-overview em { display: block; }
|
|
2341
|
+
.shared-afterglow-tableau-overview small { color: #9e7b73; font: .49rem var(--sans); }
|
|
2342
|
+
.shared-afterglow-tableau-overview b { margin-top: .12rem; color: #e0c2b6; font: .62rem var(--serif); }
|
|
2343
|
+
.shared-afterglow-tableau-overview em { margin-top: .16rem; color: #b49b91; font: normal .51rem/1.35 var(--sans); }
|
|
2344
|
+
.shared-afterglow-tableau-entry > p { margin: .42rem 0; color: #d7c1b7; font: .61rem/1.55 var(--sans); }
|
|
2345
|
+
.shared-afterglow-tableau-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .34rem; }
|
|
2346
|
+
.shared-afterglow-tableau-actions article { min-width: 0; padding: .42rem .48rem; border-left: 2px solid rgba(187,125,110,.5); background: rgba(20,13,15,.35); }
|
|
2347
|
+
.shared-afterglow-tableau-actions article:last-child { grid-column: 1 / -1; }
|
|
2348
|
+
.shared-afterglow-tableau-actions b { display: block; color: #d8aa9b; font: .56rem var(--serif); }
|
|
2349
|
+
.shared-afterglow-tableau-actions p { margin: .16rem 0 0; color: #bfa9a1; font: .52rem/1.42 var(--sans); }
|
|
2350
|
+
.shared-afterglow-tableau-entry > blockquote { margin: .48rem 0 0; padding: .42rem .5rem; border-left: 2px solid rgba(118,165,145,.55); color: #b9cfc4; background: rgba(31,68,54,.14); font: .54rem/1.48 var(--sans); }
|
|
2351
|
+
.relation-card p { color: #b9ac99; font-size: .75rem; }
|
|
2352
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-scrim {
|
|
2353
|
+
background: linear-gradient(0deg, rgba(12,8,7,.54) 0%, rgba(12,8,7,0) 36%);
|
|
2354
|
+
}
|
|
2355
|
+
|
|
2356
|
+
.fast .scene-view > img { animation: none; filter: saturate(.92) brightness(1.06); }
|
|
2357
|
+
|
|
2358
|
+
/* 必须置于视觉裁决覆盖之后,避免桌面整版规则重新把窄屏文字挤出画面。 */
|
|
2359
|
+
@media (max-width: 900px) {
|
|
2360
|
+
.title-copy h1 { white-space: normal; font-size: clamp(2.15rem,11vw,3.4rem); }
|
|
2361
|
+
.fate-coda-overlay { padding: 0; }
|
|
2362
|
+
.fate-coda-book { width: 100vw; height: 100svh; border: 0; }
|
|
2363
|
+
.fate-coda-art { background-position: 64% top; }
|
|
2364
|
+
.fate-coda-art::after { background: linear-gradient(0deg,rgba(7,11,12,.99) 0%,rgba(7,11,12,.95) 62%,rgba(7,11,12,.18) 90%), linear-gradient(90deg,rgba(7,11,12,.35),transparent 75%); }
|
|
2365
|
+
.fate-coda-copy { inset: 28svh 0 0; padding: .78rem .85rem .9rem; background: linear-gradient(0deg,rgba(10,14,15,.995),rgba(10,14,15,.94) 78%,transparent); }
|
|
2366
|
+
.fate-coda-copy > header { padding-bottom: .55rem; }
|
|
2367
|
+
.fate-coda-copy > header p:not(.eyebrow) { display: none; }
|
|
2368
|
+
.fate-coda-scroll { padding: .75rem .05rem .65rem 0; }
|
|
2369
|
+
.fate-coda-progress { margin-bottom: .55rem; }
|
|
2370
|
+
.fate-coda-progress i { width: 1.35rem; height: 1.35rem; }
|
|
2371
|
+
.fate-coda-copy h2 { margin-bottom: .55rem; font-size: clamp(1.65rem,8.5vw,2.25rem); }
|
|
2372
|
+
.fate-coda-body { font-size: .76rem; line-height: 1.7; }
|
|
2373
|
+
.fate-coda-sections { gap: .62rem; margin-top: .8rem; }
|
|
2374
|
+
.fate-coda-ledger-section { padding: .65rem; }
|
|
2375
|
+
.fate-coda-ledger-section > header h3 { margin-bottom: .5rem; font-size: .86rem; }
|
|
2376
|
+
.fate-coda-ledger-section article { padding: .52rem .58rem; }
|
|
2377
|
+
.fate-coda-ledger-section article > p { font-size: .66rem; line-height: 1.6; }
|
|
2378
|
+
.fate-coda-decision { margin-top: .7rem; padding-top: .65rem; }
|
|
2379
|
+
.fate-coda-decision > p { margin-bottom: .5rem; font-size: .72rem; line-height: 1.55; }
|
|
2380
|
+
.fate-coda-decision .choice-button { min-height: 50px; padding: .5rem .6rem; }
|
|
2381
|
+
.fate-coda-result { margin-top: .7rem; padding: .65rem .72rem; }
|
|
2382
|
+
.fate-coda-result p { font-size: .68rem; line-height: 1.55; }
|
|
2383
|
+
.fate-coda-copy > footer { min-height: 2.8rem; padding-top: .55rem; }
|
|
2384
|
+
.close-cg::after, .morning-cg::after { background: linear-gradient(0deg, rgba(14,9,7,.98) 0%, rgba(14,9,7,.82) 46%, rgba(14,9,7,.06) 76%); }
|
|
2385
|
+
.day-aftermath-stage::after { background: linear-gradient(0deg,rgba(13,9,8,.99) 0%,rgba(13,9,8,.84) 57%,rgba(13,9,8,.05) 88%); }
|
|
2386
|
+
.day-aftermath-lead { inset: 0; background-position: 60% 10%; mask-image: linear-gradient(0deg,transparent 0%,#000 24%,#000 100%); }
|
|
2387
|
+
.day-aftermath-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 94%; padding: .9rem; transform: none; }
|
|
2388
|
+
.day-aftermath-reactions { inset: 1.5% 2.5% auto; height: 35%; gap: .4rem; }
|
|
2389
|
+
.day-aftermath-reactions figure:only-child { width: 48%; }
|
|
2390
|
+
.day-aftermath-reactions figcaption { padding: 2.1rem .45rem .45rem; }
|
|
2391
|
+
.day-aftermath-reactions p { display: -webkit-box; overflow: hidden; font-size: .6rem; line-height: 1.42; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
|
|
2392
|
+
.day-speaker, .day-consequence { margin: .45rem 0; padding: .52rem .6rem; }
|
|
2393
|
+
.story-progress { margin: .45rem 0; }
|
|
2394
|
+
.joint-story-row { align-items: flex-start; flex-direction: column; gap: .4rem; }
|
|
2395
|
+
.joint-story-row .joint-payoff { text-align: left; }
|
|
2396
|
+
.council-aftermath-stage::after { background: linear-gradient(0deg,rgba(12,8,7,.99) 0%,rgba(12,8,7,.82) 58%,rgba(12,8,7,.06) 89%); }
|
|
2397
|
+
.council-resolution-cast { inset: 1.5% 2% auto; height: 37%; gap: .2rem; }
|
|
2398
|
+
.council-resolution-cast figure.speaking { transform: translateY(-.25rem); }
|
|
2399
|
+
.council-resolution-cast figcaption { padding: 1.8rem .25rem .35rem; }
|
|
2400
|
+
.council-resolution-cast figcaption span { display: none; }
|
|
2401
|
+
.council-resolution-cast b { font-size: .62rem; }
|
|
2402
|
+
.council-aftermath-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 67%; padding: .9rem; transform: none; }
|
|
2403
|
+
.public-aftermath-stage::after { background: linear-gradient(0deg,rgba(11,7,6,.99) 0%,rgba(11,7,6,.84) 61%,rgba(11,7,6,.08) 91%); }
|
|
2404
|
+
.public-aftermath-cast { inset: 1.5% 2% auto; height: 34%; gap: .18rem; }
|
|
2405
|
+
.public-aftermath-cast figure.speaking { transform: translateY(-.22rem); }
|
|
2406
|
+
.public-aftermath-cast figcaption { padding: 1.8rem .2rem .3rem; }
|
|
2407
|
+
.public-aftermath-cast figcaption span { display: none; }
|
|
2408
|
+
.public-aftermath-cast b { font-size: .56rem; }
|
|
2409
|
+
.public-aftermath-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 94%; padding: .88rem; transform: none; }
|
|
2410
|
+
.public-aftermath-panel > .ink-button { min-width: 0; width: 100%; }
|
|
2411
|
+
.act-aftermath-stage::after { background: linear-gradient(0deg,rgba(11,8,7,.99) 0%,rgba(11,8,7,.84) 61%,rgba(11,8,7,.08) 91%); }
|
|
2412
|
+
.act-aftermath-cast { inset: 1.5% 2% auto; height: 34%; gap: .18rem; }
|
|
2413
|
+
.act-aftermath-cast figure.speaking { transform: translateY(-.22rem); }
|
|
2414
|
+
.act-aftermath-cast figcaption { padding: 1.8rem .2rem .3rem; }
|
|
2415
|
+
.act-aftermath-cast figcaption span { display: none; }
|
|
2416
|
+
.act-aftermath-cast b { font-size: .56rem; }
|
|
2417
|
+
.act-aftermath-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 94%; padding: .88rem; transform: none; }
|
|
2418
|
+
.act-aftermath-panel > .ink-button { min-width: 0; width: 100%; }
|
|
2419
|
+
.external-rebuttal-context-pages > header { grid-template-columns: 1fr; }
|
|
2420
|
+
.external-rebuttal-context-pages > header div { display: grid; grid-template-columns: 7rem minmax(0,1fr); align-items: baseline; gap: .35rem; padding: .3rem .4rem; }
|
|
2421
|
+
.external-rebuttal-context-pages > header b { margin: 0; white-space: normal; }
|
|
2422
|
+
.external-rebuttal-voices li { padding: .34rem .4rem; }
|
|
2423
|
+
.external-rebuttal-voices p { font-size: .72rem; }
|
|
2424
|
+
.external-rebuttal-choices { grid-template-columns: 1fr; }
|
|
2425
|
+
.final-aftermath-stage::after { background: linear-gradient(0deg,rgba(9,6,5,.995) 0%,rgba(9,6,5,.86) 63%,rgba(9,6,5,.08) 92%); }
|
|
2426
|
+
.final-aftermath-cast { inset: 1.5% 2% auto; height: 33%; gap: .16rem; }
|
|
2427
|
+
.final-aftermath-cast figure.speaking { transform: translateY(-.2rem); }
|
|
2428
|
+
.final-aftermath-cast figcaption { padding: 1.7rem .18rem .28rem; }
|
|
2429
|
+
.final-aftermath-cast figcaption span { display: none; }
|
|
2430
|
+
.final-aftermath-cast b { font-size: .55rem; }
|
|
2431
|
+
.final-aftermath-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 94%; padding: .86rem; transform: none; }
|
|
2432
|
+
.final-aftermath-choices { grid-template-columns: 1fr; }
|
|
2433
|
+
.final-aftermath-panel > .ink-button { min-width: 0; width: 100%; }
|
|
2434
|
+
.final-aftermath-ledgers { top: 1%; right: 2%; gap: .15rem; }
|
|
2435
|
+
.final-aftermath-ledgers i { width: 28px; height: 38px; font-size: .58rem; }
|
|
2436
|
+
.jiaoer-aftermath-stage::after { background: linear-gradient(0deg,rgba(12,8,7,.995) 0%,rgba(12,8,7,.88) 64%,rgba(12,8,7,.08) 92%); }
|
|
2437
|
+
.jiaoer-aftermath-cast { inset: 1.5% 2.5% auto; height: 34%; gap: .22rem; }
|
|
2438
|
+
.jiaoer-aftermath-cast figure,.jiaoer-aftermath-cast figure.speaking { min-height:0; transform:none; }
|
|
2439
|
+
.jiaoer-aftermath-cast figcaption { padding:1.75rem .25rem .3rem; font-size:.57rem; }
|
|
2440
|
+
.jiaoer-aftermath-cast figcaption i { display:none; }
|
|
2441
|
+
.jiaoer-aftermath-panel { left:3%; right:3%; top:auto; bottom:2%; width:auto; max-height:94%; padding:.86rem; transform:none; }
|
|
2442
|
+
.jiaoer-aftermath-ledger { grid-template-columns:repeat(3,minmax(0,1fr)); gap:.2rem; }
|
|
2443
|
+
.jiaoer-aftermath-ledger span { padding:.38rem .32rem; }
|
|
2444
|
+
.jiaoer-aftermath-ledger small { font-size:.52rem; }
|
|
2445
|
+
.jiaoer-aftermath-ledger b { font-size:.57rem; }
|
|
2446
|
+
.jiaoer-aftermath-choices { grid-template-columns:1fr; }
|
|
2447
|
+
.jiaoer-aftermath-panel > .ink-button { width:100%; }
|
|
2448
|
+
.invitation-aftermath-stage::after { background:linear-gradient(0deg,rgba(12,8,7,.995) 0%,rgba(12,8,7,.88) 63%,rgba(12,8,7,.07) 91%); }
|
|
2449
|
+
.invitation-aftermath-cast { inset:1.5% 2.5% auto; height:36%; gap:.3rem; }
|
|
2450
|
+
.invitation-aftermath-cast figure,.invitation-aftermath-cast figure.speaking { min-height:0; transform:none; }
|
|
2451
|
+
.invitation-aftermath-cast figcaption { padding:1.9rem .35rem .35rem; }
|
|
2452
|
+
.invitation-aftermath-cast figcaption small { display:none; }
|
|
2453
|
+
.invitation-aftermath-cast figcaption b { font-size:.66rem; }
|
|
2454
|
+
.invitation-aftermath-panel { left:3%; right:3%; top:auto; bottom:2%; width:auto; max-height:94%; padding:.86rem; transform:none; }
|
|
2455
|
+
.invitation-aftermath-ledger { gap:.2rem; }
|
|
2456
|
+
.invitation-aftermath-ledger span { padding:.35rem .3rem; }
|
|
2457
|
+
.invitation-aftermath-ledger small { font-size:.48rem; }
|
|
2458
|
+
.invitation-aftermath-ledger b { font-size:.55rem; }
|
|
2459
|
+
.invitation-aftermath-rule { margin:.42rem 0 .55rem; padding:.48rem .55rem; font-size:.58rem; }
|
|
2460
|
+
.invitation-aftermath-choices { grid-template-columns:1fr; }
|
|
2461
|
+
.invitation-aftermath-panel > .ink-button { width:100%; min-width:0; }
|
|
2462
|
+
.council-rule-slip { margin: .45rem 0; padding: .52rem .6rem; }
|
|
2463
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption {
|
|
2464
|
+
left: 3%; right: 3%; bottom: 2%; width: auto; max-height: 58%; display: block;
|
|
2465
|
+
padding: .9rem; overflow-y: auto; border-left: 2px solid var(--cinnabar); background: rgba(12,8,6,.9);
|
|
2466
|
+
}
|
|
2467
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption h2 { font-size: 1.55rem; }
|
|
2468
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption .scene-meta,
|
|
2469
|
+
.scene-view:is([data-scene-tier="public"], [data-scene-tier="ensemble"]) .scene-caption .ink-button { display: flex; margin: .55rem 0 0; }
|
|
2470
|
+
.scene-view[data-scene-id="inner_court_accord"] .scene-caption { max-height: 68%; }
|
|
2471
|
+
.shared-night-accord-overview > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
|
|
2472
|
+
.shared-night-accord-ledger { grid-template-columns: 1fr; }
|
|
2473
|
+
.scene-view[data-scene-id="inner_court_alliance"] .scene-caption { left: 3%; right: 3%; bottom: 2%; width: auto; max-height: 76%; padding: .85rem; }
|
|
2474
|
+
.alliance-tableau-members,.alliance-tableau-path,.alliance-tableau-actions { grid-template-columns: 1fr; }
|
|
2475
|
+
.alliance-tableau-nonmembers p { grid-template-columns: 1fr; gap: .12rem; }
|
|
2476
|
+
.scene-view[data-scene-id="inner_court_afterglow"] .scene-caption { left: 3%; right: 3%; bottom: 2%; width: auto; max-height: 72%; padding: .85rem; }
|
|
2477
|
+
.shared-afterglow-tableau-overview > div,.shared-afterglow-tableau-actions { grid-template-columns: 1fr; }
|
|
2478
|
+
.shared-afterglow-tableau-actions article:last-child { grid-column: auto; }
|
|
2479
|
+
}
|
|
2480
|
+
|
|
2481
|
+
/* 侧栏仍在的窄桌面实际只给舞台留下约七百像素,沿用横向双栏会像坏掉的裁图。 */
|
|
2482
|
+
@media (min-width: 901px) and (max-width: 1100px) {
|
|
2483
|
+
.day-aftermath-stage::after,
|
|
2484
|
+
.pair-interlude-stage::after { background: linear-gradient(0deg,rgba(13,9,8,.99) 0%,rgba(13,9,8,.84) 57%,rgba(13,9,8,.05) 88%); }
|
|
2485
|
+
.day-aftermath-lead { inset: 0; background-position: 68% 10%; mask-image: linear-gradient(0deg,transparent 0%,#000 24%,#000 100%); }
|
|
2486
|
+
.day-aftermath-reactions { inset: 1.5% 2.5% auto; height: 35%; gap: .4rem; }
|
|
2487
|
+
.day-aftermath-reactions figure:only-child { width: 48%; }
|
|
2488
|
+
.day-aftermath-reactions figcaption { padding: 2.1rem .45rem .45rem; }
|
|
2489
|
+
.day-aftermath-reactions p { display: -webkit-box; overflow: hidden; font-size: .6rem; line-height: 1.42; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
|
|
2490
|
+
.day-aftermath-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 94%; padding: .9rem; transform: none; }
|
|
2491
|
+
.pair-portraits { inset: 0 0 auto; height: 35%; }
|
|
2492
|
+
.pair-portraits figcaption { inset: auto .25rem 0; padding: 1.8rem .45rem .4rem; }
|
|
2493
|
+
.pair-portraits p { display: none; }
|
|
2494
|
+
.pair-interlude-panel { left: 3%; right: 3%; top: auto; bottom: 2%; width: auto; max-height: 80%; padding: .9rem; overflow: clip; }
|
|
2495
|
+
.pair-aftermath-cast { inset: 0 0 auto; height: 34%; padding-right: 27%; }
|
|
2496
|
+
.pair-aftermath-panel { max-height: 63%; }
|
|
2497
|
+
}
|
|
2498
|
+
|
|
2499
|
+
@media (max-width: 900px) {
|
|
2500
|
+
:is(
|
|
2501
|
+
.dialogue-stage .close-cg,
|
|
2502
|
+
.night-talk-stage .close-cg,
|
|
2503
|
+
.aftermath-stage .aftermath-main,
|
|
2504
|
+
.personal-afterglow-stage .afterglow-close,
|
|
2505
|
+
.personal-afterglow-aftermath-stage .personal-afterglow-aftermath-close,
|
|
2506
|
+
.day-aftermath-stage .day-aftermath-lead
|
|
2507
|
+
) { background-position: var(--heroine-focus-x,68%) 12%; }
|
|
2508
|
+
}
|