/* 三主线声影系统：仅由 dual 页面加载。 */
.page-dual{--im-gold:#d2af77;--im-ink:#090f12;--im-paper:#eee0c6;--im-scene:url('immersive/imperial-desktop.webp');background:var(--im-ink)}
.page-dual .tl12{background:radial-gradient(ellipse at 85% 32%,#24211655,transparent 45%),#090f12;color:var(--im-paper)}
.page-dual :is(button,a,select,input):focus-visible{outline:2px solid #f2d6a0;outline-offset:5px}
.page-dual button,.page-dual a{ -webkit-tap-highlight-color:transparent }
.page-dual :is(.tl12,.site-header,.site-footer,.im-toolbar,.cin-intro) button,.page-dual .cin-intro a{min-height:44px}
.page-dual :is(button,.tl12 a,.site-header a,.site-footer a){transition:transform 180ms ease,border-color 180ms ease,background-color 180ms ease,color 180ms ease,box-shadow 180ms ease}
.page-dual button:not(:disabled):active,.page-dual .tl12 a:active{transform:translateY(2px) scale(.985)}
.page-dual button:disabled{cursor:not-allowed}
.page-dual .tl12-hero{min-height:min(930px,calc(100svh - 75px));background:#11171a;isolation:isolate}
.page-dual .tl12-hero-art{inset:-3%;background-image:linear-gradient(90deg,#060c10ed, #060c1075 55%,#060c1015),linear-gradient(0deg,#090f12,transparent 40%),var(--im-scene);background-position:center;background-size:cover;opacity:1;filter:saturate(.8);transform:translate3d(var(--im-x,0px),var(--im-y,0px),0) scale(1.04);transition:transform 900ms ease-out}
.page-dual .tl12-hero-wrap{width:min(calc(100% - 112px),1440px);margin:90px auto 100px}
.page-dual .tl12-hero h1{font-size:clamp(45px,6.1vw,108px);line-height:1.35;letter-spacing:.055em;text-shadow:0 4px 40px #0007}
.page-dual .tl12-overline{display:flex;align-items:center;gap:14px;color:#dfbf88}
.page-dual .tl12-overline:before{content:'';width:32px;height:1px;background:currentColor}
.page-dual .tl12-hero-lead{max-width:680px;color:#dfd8cc;font-size:17px;line-height:2.05}
.page-dual .tl12-hero-link{position:relative;overflow:hidden;padding:21px 29px;border:1px solid #e0c18b;box-shadow:0 7px 35px #0005}
.page-dual .tl12-hero-link:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#fff8 50%,transparent 75%);transform:translateX(-140%);transition:transform 650ms ease}
.page-dual .tl12-hero-link:hover:after{transform:translateX(140%)}
.page-dual .tl12-replay-intro{margin:14px 0 0 24px;background:transparent;border:0;border-bottom:1px solid #aa885477;padding:12px 4px;color:#dfbf88}
.im-hero-coordinate{position:absolute;right:40px;bottom:46px;font-size:11px;letter-spacing:.3em;color:#d2bd9577;writing-mode:vertical-rl}
.im-atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;opacity:.45}
.im-atmosphere:before{content:'';position:absolute;inset:35% -15% -20%;background:radial-gradient(ellipse,#ceb89115,transparent 65%);animation:im-mist 22s ease-in-out infinite alternate}
.im-atmosphere i{position:absolute;left:65%;top:40%;width:3px;height:3px;border-radius:50%;background:#edd5a5;box-shadow:60px 120px #ddc59f77,-70px 35px #ddc59f55,150px -70px #ddc59f66,230px 130px #ddc59f88,-220px -60px #ddc59f33;animation:im-dust 14s ease-in-out infinite}
.im-atmosphere i:nth-child(2){left:35%;top:65%;animation-delay:-7s;opacity:.35}.im-atmosphere i:nth-child(3){left:85%;top:75%;animation-delay:-4s;opacity:.5}
.im-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:12px max(18px,calc((100% - 1380px)/2));background:#0c1317;border-block:1px solid #b3925433;color:#d7c4a3;font-size:12px}
.im-toolbar[hidden]{display:none}.im-toolbar>span{margin-right:auto;letter-spacing:.2em}.im-toolbar button{border:1px solid #95774666;background:#141c20;color:#e1c99e;padding:8px 14px}.im-toolbar label{display:flex;align-items:center;gap:8px}.im-toolbar input{width:80px;min-height:44px;accent-color:#ccab73}
html.intro-no-scroll .im-toolbar{position:fixed;bottom:0;left:0;right:0;z-index:2147483001;background:#090e12ed;padding:8px 20px}
html.intro-no-scroll .cin-intro-foot{margin-bottom:70px}
.page-dual .tl12-play{padding-top:85px;--tlg:var(--im-gold)}
.page-dual .tl12-route-tabs{gap:12px;border:0;margin:36px 0 16px}
.page-dual .tl12-route-tabs button{position:relative;overflow:hidden;min-height:134px;border:1px solid #bba06b44;padding:23px 26px;background:linear-gradient(90deg,#091014d9,#09101499),url('immersive/imperial-desktop.webp') center/cover}
.page-dual .tl12-route-tabs [data-tl-route=prince]{background-image:linear-gradient(90deg,#091014d9,#09101499),var(--im-prince-scene,none)}
.page-dual .tl12-route-tabs [data-tl-route=rebel]{background-image:linear-gradient(90deg,#091014d9,#09101499),var(--im-rebel-scene,none)}
.page-dual .tl12-route-tabs button:hover{border-color:#dbc08a;transform:translateY(-3px)}
.page-dual .tl12-route-tabs button.is-current{box-shadow:inset 0 -3px var(--im-gold),0 10px 28px #0004;border-color:var(--im-gold)}
.page-dual .tl12-identity{background:#11191c;flex-wrap:wrap;border-color:#bba06b33;padding:18px 22px}.page-dual .tl12-identity .tl12-replay-identity{margin-left:auto;background:transparent;color:#dec69c;border:0;border-bottom:1px solid #bba06b66}
.im-route-scene{position:relative;height:240px;margin-top:20px;overflow:hidden;background:#141c20;border:1px solid #bba06b44}
.im-route-scene>div{position:absolute;inset:0;opacity:0;background:linear-gradient(0deg,#080e12bb,transparent 65%),var(--im-scene) center 47%/cover;transition:opacity 600ms ease,transform 700ms ease;transform:scale(1.04)}
.im-route-scene [data-im-scene=prince]{--im-scene:var(--im-prince-scene,none)}.im-route-scene [data-im-scene=rebel]{--im-scene:var(--im-rebel-scene,none)}
.tl12[data-identity=emperor] [data-im-scene=emperor],.tl12[data-identity=prince] [data-im-scene=prince],.tl12:is([data-identity=leader],[data-identity=general],[data-identity=founder]) [data-im-scene=rebel]{opacity:1;transform:scale(1)}
.tl12[data-identity=prince]{--im-gold:#a9c5d2}.tl12:is([data-identity=leader],[data-identity=general],[data-identity=founder]){--im-gold:#d4a17d}
.tl12[data-identity=general] .im-route-scene>div{background-position:center 70%}.tl12[data-identity=founder] .im-route-scene>div{background-position:80% 50%;filter:brightness(.8)}
.im-route-scene>span{position:absolute;bottom:22px;left:28px;color:#ead9b8;letter-spacing:.22em;font-size:12px}
.page-dual .tl12-desk{gap:22px;margin-top:22px;align-items:start}
.page-dual .tl12-story{position:relative;background:radial-gradient(ellipse at 0 0,#c1a3730c,transparent 70%),linear-gradient(120deg,#172023,#10171b);border-color:#bda37344;box-shadow:0 22px 60px #0003}
.page-dual .tl12-story:before{content:'';position:absolute;top:0;left:0;width:70px;height:2px;background:var(--im-gold)}
.page-dual .tl12-sidebar{background:#10171a;border-color:#bda37333;padding:28px}.page-dual .tl12-persona{position:relative}.page-dual .tl12-persona:after{content:'籍';position:absolute;right:0;top:4px;writing-mode:vertical-rl;border:1px solid #b7986f77;padding:10px;color:#b7986f88;font:22px serif}
.page-dual .tl12-dialogue{border-left-color:var(--im-gold);background:linear-gradient(90deg,#bda37312,transparent);font-family:'Songti SC',serif}
.page-dual .tl12-intel{position:relative;border:1px solid #aa947155;border-left:3px solid #ac9169;background:repeating-linear-gradient(0deg,transparent,transparent 27px,#bda37305 28px),#181d1b;padding:22px;color:#e0d7c7}
.page-dual .tl12-intel:before{content:'公文 · 官署呈报';display:block;font-size:11px;letter-spacing:.16em;margin-bottom:10px;color:#bca782}
.page-dual .tl12[data-source=private] .tl12-intel{border-left-color:#a96651;background-color:#211c1b}.page-dual .tl12[data-source=private] .tl12-intel:before{content:'密信 · 来源待辨';color:#d1a58c}
.page-dual .tl12[data-source=rumour] .tl12-intel{border-style:dashed;background-color:#181f23}.page-dual .tl12[data-source=rumour] .tl12-intel:before{content:'流言 · 尚未核实';color:#b1c2ce}
.page-dual .tl12-choices button,.page-dual .council-action{background:linear-gradient(100deg,#bca2730c,transparent),#111b1f;border-color:#bda37344;position:relative;overflow:hidden}
.page-dual .tl12-choices button:hover:not(:disabled),.page-dual .council-action:hover:not(:disabled){border-color:var(--im-gold);box-shadow:inset 3px 0 var(--im-gold),0 5px 20px #0003;transform:translateY(-2px)}
.page-dual .tl12-result{position:relative;padding:28px;background:radial-gradient(ellipse at 100% 0,#b9925328,transparent 70%),#1b211f;border-color:var(--im-gold)}
.page-dual .tl12-result:after{content:'已定';position:absolute;right:20px;top:16px;border:2px solid #b06145;color:#cd8b70;padding:7px;font:16px serif;transform:rotate(-8deg);opacity:.7}
.page-dual .tl12-result strong{display:block;padding-right:60px}.page-dual .tl12-ending{padding:38px;background:linear-gradient(120deg,#32281b,#111b20);border-color:#cab17d}
.im-delta{display:inline-block;font-size:12px;font-style:normal;margin-left:10px;color:#bcd5bb;font-variant-numeric:tabular-nums}.im-delta.is-negative{color:#ecb09b}.im-delta.is-neutral{color:#bfb8a9}
.page-dual .tl12-stats b,.page-dual .council-stats strong{font-variant-numeric:tabular-nums}
.page-dual .tl12-world{position:relative;background:linear-gradient(90deg,#080f13e8,#080f13c9),var(--im-prince-scene,none) center/cover;padding-block:110px}
.page-dual .tl12-world-laws div{background:#111b1f88;padding:24px;border:1px solid #bda37333;border-top-color:#bda373aa}
.page-dual .tl12-continuation{background:radial-gradient(ellipse at 100% 0,#ba95641c,transparent 40%),#0e161a;border-color:#bda37355}
.page-dual .council-intro{padding:28px;border:1px solid #bda37344;background:linear-gradient(110deg,#0c1418ec,#0c1418c9),var(--im-scene) center/cover;max-width:none}
.page-dual .council-stats{background:#171e1e}.page-dual .council-desk{gap:28px}.page-dual .council-desk>aside{padding:22px;background:#131c20;border:1px solid #bda37333}
.page-dual .council-intel,.page-dual .council-offer{background:linear-gradient(110deg,#bda3730e,transparent),#192124;padding:20px}.page-dual .council-negotiation select{font-size:16px}
.page-dual .council-records li{padding:12px 8px}.page-dual .council-notice{border-left:2px solid #b89a65;padding-left:14px}
.im-confirm{width:min(490px,calc(100% - 32px));color:#eee0c6;background:linear-gradient(130deg,#25241e,#101b20);border:1px solid #c5a677;padding:30px;box-shadow:0 30px 100px #0008}.im-confirm::backdrop{background:#03090bba;backdrop-filter:blur(6px)}.im-confirm span{color:#c7ac7d;font-size:12px;letter-spacing:.12em}.im-confirm h2{font:30px/1.5 'Songti SC',serif}.im-confirm p{font-size:14px;line-height:1.9}.im-confirm form>div{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.im-confirm button{min-height:44px;padding:10px 20px;color:#e0c9a4;background:#172126;border:1px solid #bda37377}.im-confirm button[value=confirm]{background:#d4b37e;color:#1b1710}
.page-dual .site-footer{background:linear-gradient(#10191d,#060c10);border-top:1px solid #bda37344}.page-dual .back-to-top{min-width:44px;min-height:44px}.im-noscript{padding:20px;color:#ddc69f}
.page-dual .cin-intro[data-mode=identity] .cin-identity-visual:before{background-image:linear-gradient(90deg,#03090bd9,#03090b22),var(--im-scene);opacity:1;filter:none}
.page-dual .cin-intro[data-identity=prince]{--im-scene:url('immersive/prince-desktop.webp')}.page-dual .cin-intro:is([data-identity=leader],[data-identity=general],[data-identity=founder]){--im-scene:url('immersive/rebel-desktop.webp')}
.page-dual .cin-intro[data-identity=general] .cin-identity-visual:before{background-position:70% 70%;filter:brightness(.85)}.page-dual .cin-intro[data-identity=founder] .cin-identity-visual:before{background-position:85% center;filter:brightness(.7)}
.page-dual .cin-role-horizon,.page-dual .cin-role-silhouette{opacity:0!important}.page-dual .cin-role-standard{opacity:.25!important}.page-dual .cin-intro-title span{animation:im-caption 1100ms ease both!important}.page-dual .cin-intro-title span:nth-child(2){animation-delay:240ms!important}
.page-dual .cin-intro-copy{max-width:100%}.page-dual .cin-intro-description{line-height:1.85}
.im-offscreen .im-atmosphere *,.im-offscreen .im-atmosphere:before{animation-play-state:paused}.im-background *,.im-background *:before,.im-background *:after{animation-play-state:paused!important}
.im-simple *,.im-simple *:before,.im-simple *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.im-simple .im-atmosphere{display:none}.im-simple .tl12-hero-art{transform:none!important}
@keyframes im-mist{to{transform:translate3d(7%,3%,0) scale(1.1)}}@keyframes im-dust{0%,100%{transform:translate3d(0,0,0);opacity:.2}50%{transform:translate3d(-25px,-50px,0);opacity:.8}}@keyframes im-caption{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:900px){.page-dual .tl12-hero-wrap{width:calc(100% - 56px)}.page-dual .tl12-desk{gap:16px}.page-dual .tl12-sidebar{gap:26px}.im-route-scene{height:210px}}
@media(max-width:600px){.page-dual{--im-scene:url('immersive/imperial-mobile.webp')}.page-dual .tl12-hero{min-height:740px}.page-dual .tl12-hero-wrap{width:calc(100% - 40px);margin:95px auto 75px}.page-dual .tl12-hero h1{font-size:clamp(36px,9vw,54px);letter-spacing:.035em;line-height:1.5}.page-dual .tl12-hero-lead{font-size:15px}.page-dual .tl12-overline{font-size:10px;letter-spacing:.09em}.page-dual .tl12-overline:before{width:15px}.page-dual .tl12-hero-link{padding:18px 20px}.page-dual .tl12-replay-intro{margin-left:0;display:block}.im-hero-coordinate{right:15px;bottom:25px;font-size:9px}.im-toolbar{justify-content:flex-start;padding:12px;gap:8px}.im-toolbar>span{width:100%;margin:0}.im-toolbar button{padding:8px 10px}.im-toolbar label{gap:4px}.im-toolbar input{width:55px}.page-dual .tl12-play{padding-top:55px}.page-dual .tl12-route-tabs{gap:6px;margin-top:25px}.page-dual .tl12-route-tabs button{padding:16px 8px;min-height:118px}.page-dual .tl12-route-tabs strong{font-size:20px}.page-dual .tl12-identity{padding:16px}.page-dual .tl12-identity .tl12-replay-identity{margin:14px 0 0}.im-route-scene{height:180px}.im-route-scene [data-im-scene=emperor]{--im-scene:url('immersive/imperial-mobile.webp')}.im-route-scene [data-im-scene=prince]{--im-scene:var(--im-prince-mobile,none)}.im-route-scene [data-im-scene=rebel]{--im-scene:var(--im-rebel-mobile,none)}.page-dual .tl12-story{padding:25px 18px}.page-dual .tl12-sidebar{padding:22px}.page-dual .tl12-result,.page-dual .tl12-ending{padding:22px 16px}.page-dual .tl12-world{padding:70px 20px}.page-dual .council-intro{padding:20px 14px}.page-dual .council-desk>aside{padding:18px 14px}.page-dual .council-stats>div{padding:14px 8px}.page-dual .im-delta{margin-left:5px;font-size:11px}.page-dual .cin-intro[data-identity=prince]{--im-scene:url('immersive/prince-mobile.webp')}.page-dual .cin-intro:is([data-identity=leader],[data-identity=general],[data-identity=founder]){--im-scene:url('immersive/rebel-mobile.webp')}.page-dual .cin-intro-title,.page-dual .cin-intro[data-mode=identity] .cin-intro-title{font-size:clamp(26px,7.8vw,43px)}html.intro-no-scroll .im-toolbar{padding:8px 12px;padding-bottom:max(8px,env(safe-area-inset-bottom))}html.intro-no-scroll .im-toolbar>span{display:none}html.intro-no-scroll .cin-intro-foot{margin-bottom:90px}}
@media(prefers-reduced-motion:reduce){.page-dual *,.page-dual *:before,.page-dual *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.im-atmosphere{display:none}.page-dual .tl12-hero-art{transform:none!important}}
html.intro-pending body>.im-toolbar{visibility:visible!important}
.page-dual .im-hero-coordinate{pointer-events:none}
.page-dual .nav-more-panel a,.page-dual .mobile-nav a,.page-dual .site-footer a{min-height:44px;display:inline-flex;align-items:center}
.im-toolbar{scroll-margin-top:110px}.im-toolbar button{scroll-margin-top:110px}

.im-scenes-ready{--im-prince-scene:url('immersive/prince-desktop.webp');--im-rebel-scene:url('immersive/rebel-desktop.webp');--im-prince-mobile:url('immersive/prince-mobile.webp');--im-rebel-mobile:url('immersive/rebel-mobile.webp')}
.im-ending-veil{position:fixed;inset:0;z-index:200;pointer-events:none;display:grid;place-items:center;color:#edd8b4;font:clamp(22px,4vw,52px)/1.5 "Songti SC",serif;letter-spacing:.2em;background:radial-gradient(ellipse,#182022a8,#060c10e8);opacity:0}.im-ending-veil[hidden]{display:none}

.page-dual .site-footer a:hover{color:#f4d8a2;transform:translateX(3px)}
.page-dual .nav-more-panel{transform-origin:top center}.page-dual .mobile-nav{box-shadow:0 24px 55px #0009}
@media(max-width:600px){.im-confirm{padding:24px 20px}.page-dual .tl12-result button,.page-dual .tl12-ending :is(a,button){max-width:100%;white-space:normal;text-align:left}}
.page-dual [data-tl-title],.page-dual [data-tl-result],.page-dual [data-tl-ending]{scroll-margin-top:110px}
.page-dual [data-council][data-identity=prince]{--im-scene:url('immersive/prince-desktop.webp');--im-gold:#a9c5d2}.page-dual [data-council]:is([data-identity=leader],[data-identity=general],[data-identity=founder]){--im-scene:url('immersive/rebel-desktop.webp');--im-gold:#d4a17d}
@media(max-width:600px){.page-dual [data-council][data-identity=prince]{--im-scene:url('immersive/prince-mobile.webp')}.page-dual [data-council]:is([data-identity=leader],[data-identity=general],[data-identity=founder]){--im-scene:url('immersive/rebel-mobile.webp')}}
