@charset "UTF-8";
/* Original cinematic connection scene. Local procedural geometry, no stock 3D assets. */
.living-intro{position:relative;isolation:isolate}
.stage-site .living-intro .signal-hero.hero{min-height:790px;display:block;position:relative;overflow:hidden;padding:110px var(--pad) 120px;background:radial-gradient(ellipse at 72% 45%,#12377455,transparent 53%),#050b15}
.living-hero:before{background-size:100px 100px;opacity:.3}
.living-scene{position:absolute;inset:0;z-index:0;overflow:hidden;isolation:isolate}
.living-scene canvas.signal-field{position:absolute;inset:0;width:100%;height:100%;opacity:1;mask-image:none;z-index:1}
.scene-light{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 56%,#235bb533,transparent 48%);pointer-events:none}
.scene-fallback{position:absolute;right:-7%;top:2%;height:90%;width:75%;opacity:.9;pointer-events:none}
.living-webgl .scene-fallback{display:none}
.scene-watermark{position:absolute;right:6%;top:8%;font:700 clamp(60px,9vw,155px)/.83 Arial,sans-serif;letter-spacing:-.07em;color:#a4d1ff04;-webkit-text-stroke:1px #7eaeeb12;z-index:0;pointer-events:none;transform:translateY(calc(var(--scene-progress,0)*-40px))}
.scene-hotspots{position:absolute;inset:0;z-index:4;pointer-events:none}
.scene-node{position:absolute;left:var(--node-x,68%);top:var(--node-y,55%);transform:translate(-50%,-50%);display:flex;align-items:center;gap:9px;pointer-events:auto;color:#c3dcff;padding:10px 13px;background:#07152cbb;backdrop-filter:blur(12px);border:1px solid #77afff50;border-radius:5px;box-shadow:0 8px 25px #0004;white-space:nowrap;transition:background .2s,border-color .2s,box-shadow .2s;opacity:var(--node-opacity,1)}
.scene-node:hover,.scene-node:focus-visible{background:#133365ec;border-color:#a1cdff;box-shadow:0 0 30px #3b83ff25}
.scene-node b{font:500 11px/1.5 ui-monospace,monospace;letter-spacing:.02em;display:block;color:#e1efff}
.scene-node small{font-size:8px;line-height:1.5;color:#739ad1;display:block;margin-top:1px}
.scene-node-dot{height:4px;width:4px;background:#79c7ff;box-shadow:0 0 12px #6cbfff;align-self:flex-start;margin-top:6px}
.scene-node[data-scene-node="derp"]{--node-x:49%;--node-y:69%}
.scene-node[data-scene-node="pve"]{--node-x:88%;--node-y:72%}
.scene-node[data-scene-node="openlist"]{--node-x:90%;--node-y:38%}
.scene-node[data-scene-node="ai"]{--node-x:55%;--node-y:34%}
.living-hero .hero-copy{position:relative;width:36%;padding-top:70px;z-index:5}
.living-hero .hero-intro{font-size:9px;margin-bottom:27px;color:#90afd8;letter-spacing:.12em}
.living-hero h1{font-size:clamp(42px,4.7vw,74px);line-height:1.25;font-weight:600;letter-spacing:-.06em;white-space:normal}
.living-hero .hero-lead{font-size:13px;line-height:1.95;margin-top:25px;color:#7f98bc;max-width:350px}
.living-hero .hero-actions{gap:20px;row-gap:16px;margin-top:30px;align-items:center}
.living-hero .hero-actions .button{font-size:11px;padding:12px 17px;gap:19px;min-height:45px}
.living-hero .hero-actions .text-link{font-size:11px}
.living-hero .hero-resume-link{display:block;width:100%;font-size:10px}
.living-hero .hero-footnote{font-size:8px;margin-top:23px;color:#5c789f}
.living-hero .hero-stage{position:relative;max-width:600px;margin:100px auto 0;z-index:6}
.living-chapter{display:none}
.scene-caption{position:absolute;left:var(--pad);right:var(--pad);bottom:65px;display:flex;justify-content:space-between;gap:20px;z-index:5;pointer-events:none;color:#5578a7;font:8px ui-monospace,monospace;letter-spacing:.09em}
.scene-chapter-index{color:#94b9ec;font-size:9px}
.scene-open{position:absolute;right:var(--pad);bottom:22px;z-index:9;display:none;align-items:center;gap:26px;padding:10px 0;background:none;border:0;border-bottom:1px solid #9fcaff55;border-radius:0;font-size:10px;color:#b3d3ff}
.living-ready .scene-open{display:flex}
.scene-open span{font-size:18px;line-height:1;color:#8cbcff;transition:transform .3s}
.scene-open:hover span{transform:translate(3px,3px)}
.living-hero .hero-bottom{right:auto;bottom:22px;max-width:36%;padding:10px 0;border:0;z-index:8}
.living-hero .hero-bottom>span{display:none}
.living-hero .hero-bottom a{font-size:9px;gap:15px;color:#7195c8}
.living-hero .stage-topline{z-index:8;pointer-events:none;top:25px;border-color:#6793ca26}
.living-ready .living-intro{height:195svh}
.living-ready .living-intro .signal-hero.hero{position:sticky;top:var(--living-nav-height,77px);height:calc(100svh - var(--living-nav-height,77px));min-height:0;max-height:none;padding:0 var(--pad);overflow:hidden;transform:none}
.living-ready .living-hero .hero-copy{position:absolute;left:var(--pad);top:clamp(100px,19%,165px);padding:0;margin:0;opacity:var(--living-copy-opacity,1);transform:translateY(var(--living-copy-y,0px));will-change:transform,opacity}
.living-ready .living-hero .hero-stage{position:absolute;left:51%;right:var(--pad);top:50%;width:calc(49% - var(--pad));max-width:650px;justify-self:stretch;margin:0;padding:0;transform:translateY(-48%) scale(var(--living-stage-scale,.76));opacity:var(--living-stage-opacity,0);visibility:hidden;pointer-events:none;will-change:transform,opacity}
.living-ready .living-hero[data-chapter="practice"] .hero-stage{visibility:visible;pointer-events:auto}
.living-ready .living-hero .hero-stage:before,.living-ready .living-hero .hero-stage:after{display:none}
.living-ready .living-hero .hero-stage .bench-window,.living-ready .living-hero .hero-stage:not(.stage-flat) .bench-window{transform:perspective(1400px) rotateY(var(--living-bench-y,-8deg)) rotateX(2deg) rotateZ(var(--living-bench-z,-3deg));transition:transform .2s linear;box-shadow:1px 1px #f6fbff,3px 4px #b0c5dd,6px 8px #506b90,0 25px 75px #0009}
.living-ready .living-hero .hero-stage .bench-content [role="tabpanel"]{min-height:310px}
.living-ready .living-hero .hero-stage .bench-diagram{height:175px}
.living-ready .living-hero .stage-controls{position:absolute;left:0;right:auto;bottom:-27px;margin:0;justify-content:flex-start}
.living-ready .living-hero .stage-backword{display:none}
.living-ready .living-chapter{display:block;position:absolute;left:var(--pad);top:31%;width:34%;z-index:5;opacity:var(--living-chapter-opacity,0);transform:translateY(var(--living-chapter-y,25px));pointer-events:none;visibility:hidden}
.living-ready .living-hero[data-chapter="practice"] .living-chapter{visibility:visible;pointer-events:auto}
.living-chapter h2{font-size:clamp(29px,3.4vw,53px);line-height:1.3;margin-top:25px;color:#d7eaff;letter-spacing:-.055em}
.living-chapter h2>span{color:#89b7f4}
.living-chapter p{font-size:12px;line-height:1.9;color:#698bb9;margin-top:22px}
.living-chapter .text-link{margin-top:25px;color:#99bff3;font-size:11px}
.living-ready .living-scene canvas{opacity:var(--living-scene-opacity,1);transform:scale(var(--living-canvas-scale,1));transform-origin:70% 54%;transition:none}
.living-ready .scene-hotspots{opacity:var(--living-hotspot-opacity,1)}
.living-ready .living-hero[data-chapter="practice"] .scene-hotspots{visibility:hidden;pointer-events:none}
.living-ready .living-hero[data-chapter="practice"] .scene-watermark{opacity:.4}
.living-ready .living-hero[data-chapter="practice"] .scene-caption>span:last-child{display:none}
.living-hero .scene-chapter-index:after{content:"";display:inline-block;width:50px;height:1px;background:linear-gradient(90deg,#679fef,transparent);vertical-align:middle;margin-left:13px}
.living-hero[data-renderer="fallback"] .scene-fallback{display:block}
.living-hero[data-renderer="fallback"] canvas{display:none}
.living-hero[data-renderer="fallback"] .scene-fallback{opacity:var(--living-scene-opacity,1);transform:translateY(calc(var(--scene-progress,0)*-25px))}
.living-ready .living-hero[data-renderer="fallback"] .scene-node{animation:node-idle 5s ease-in-out infinite}
.living-ready .living-hero[data-renderer="fallback"] .scene-node:nth-child(2){animation-delay:-1.4s}.living-ready .living-hero[data-renderer="fallback"] .scene-node:nth-child(3){animation-delay:-2.8s}
@keyframes node-idle{50%{translate:0 -7px}}
.page-hidden .living-hero *,.living-hero.scene-paused *{animation-play-state:paused!important}
@media(min-width:1600px){.living-ready .living-hero .hero-copy{top:23%;width:31%}.living-ready .living-hero .hero-stage{left:52%;right:8%;max-width:720px}.living-hero h1{font-size:76px}.living-ready .living-hero .hero-stage .bench-content [role="tabpanel"]{min-height:350px}.living-ready .living-hero .hero-stage .bench-diagram{height:210px}}
@media(max-width:1100px) and (min-width:961px){.living-hero h1{font-size:4.8vw}.living-hero .hero-copy{width:37%}.living-hero .hero-lead{font-size:12px;max-width:285px}.living-hero .hero-actions{gap:16px}.living-hero .hero-actions .button{font-size:10px;padding:11px 13px;gap:14px}.living-ready .living-hero .hero-stage{left:48%;right:var(--pad)}.living-ready .living-hero .hero-stage .bench-content [role="tabpanel"]{min-height:310px}.living-ready .living-hero .hero-stage .bench-diagram{height:160px}.living-chapter h2{font-size:3.4vw}.scene-node{padding:9px 10px}.scene-node b{font-size:9px}.scene-node small{font-size:7px}}
@media(max-width:960px){
 .stage-site .living-intro .signal-hero.hero{min-height:1100px;padding:90px var(--pad) 110px}
 .living-hero .hero-copy{width:100%;padding-top:10px}
 .living-hero h1{font-size:clamp(36px,9.1vw,56px);line-height:1.23;letter-spacing:-.055em}
 .living-hero .hero-intro{font-size:8px;margin-bottom:17px}.living-hero .tiny-star{font-size:16px}
 .living-hero .hero-lead{font-size:11px;line-height:1.9;max-width:290px;margin-top:15px}
 .living-hero .hero-lead br{display:none}
 .living-hero .hero-actions{gap:18px;row-gap:10px;margin-top:20px}.living-hero .hero-actions .button{min-height:40px;padding:9px 13px;font-size:10px;gap:15px}.living-hero .hero-actions .button>span{height:24px;width:24px;font-size:15px}.living-hero .hero-actions .text-link{font-size:10px}.living-hero .hero-resume-link{display:none}
 .living-hero .hero-footnote{display:none}
 .living-hero .stage-topline{font-size:6px;top:18px;padding-bottom:10px}.living-hero .stage-topline>span:last-child{font-size:5px}
 .scene-watermark{right:1%;top:43%;font-size:15vw;line-height:.85;opacity:.6}
 .scene-node{padding:7px 9px;gap:6px;border-radius:4px;background:#07152ccb}.scene-node b{font-size:8px}.scene-node small{font-size:6px;margin-top:1px}.scene-node-dot{width:3px;height:3px;margin-top:4px}
 .scene-node[data-scene-node="ai"]{display:none}
 .scene-node[data-scene-node="derp"]{--node-x:24%;--node-y:74%}.scene-node[data-scene-node="pve"]{--node-x:77%;--node-y:80%}.scene-node[data-scene-node="openlist"]{--node-x:78%;--node-y:57%}
 .scene-fallback{top:33%;right:-19%;width:138%;height:57%}
 .scene-caption{bottom:59px;gap:10px;font-size:6px;line-height:1.5}.scene-chapter-index{font-size:7px;white-space:nowrap}.living-hero .scene-chapter-index:after{width:15px;margin-left:6px}
 .scene-open{bottom:20px;font-size:8px;gap:14px;padding:8px 0}.scene-open span{font-size:15px}
 .living-hero .hero-bottom{bottom:20px;max-width:39%;padding:8px 0}.living-hero .hero-bottom a{font-size:7px;gap:9px}
 .living-ready .living-intro{height:190svh}
 .living-ready .living-intro .signal-hero.hero{min-height:0;height:calc(100svh - var(--living-nav-height,100px));padding:0 var(--pad)}
 .living-ready .living-hero .hero-copy{top:69px;width:calc(100% - var(--pad)*2);padding:0;left:var(--pad)}
 .living-ready .living-hero .hero-stage{left:var(--pad);right:var(--pad);width:calc(100% - var(--pad)*2);max-width:480px;top:47%;padding:0;transform:translateY(-47%) scale(var(--living-stage-scale,.76));margin-inline:auto}
 .living-ready .living-hero .hero-stage .bench-content{padding:15px 17px}.living-ready .living-hero .hero-stage .bench-content [role="tabpanel"]{min-height:320px}.living-ready .living-hero .hero-stage .bench-diagram{height:165px}.living-ready .living-hero .hero-stage .bench-content h2{font-size:20px}.living-ready .living-hero .hero-stage .bench-content p{font-size:10px}.living-ready .living-hero .hero-stage .bench-content a{font-size:10px;margin-top:12px;padding-top:11px}.living-ready .living-hero .hero-stage .bench-category{font-size:8px}
 .living-ready .living-hero .hero-stage .bench-titlebar{padding:10px 14px;font-size:9px}.living-ready .living-hero .hero-stage .bench-titlebar>span:last-child{font-size:6px}.living-ready .living-hero .hero-stage .bench-tabs{padding:6px 10px}.living-ready .living-hero .hero-stage .bench-tabs button{padding:6px 9px;font-size:9px}.living-ready .living-hero .hero-stage .bench-footer{font-size:7px;padding:8px 17px}.living-ready .living-hero .hero-stage .transfer-controls{margin:10px 0 15px}.living-ready .living-hero .hero-stage .stage-controls{margin-top:11px}
 .living-ready .living-chapter{display:none}
 .living-ready .living-hero[data-chapter="practice"] .scene-caption>span:last-child{font-size:0}.living-ready .living-hero[data-chapter="practice"] .scene-caption>span:last-child:after{content:"切换上方主题，了解具体实践";font-size:6px}
 .living-ready .living-scene canvas{transform-origin:50% 69%}
}
@media(max-width:380px){.living-hero h1{font-size:9.1vw}.living-hero .hero-intro{font-size:7px}.living-hero .hero-lead{font-size:10px}.living-ready .living-hero .hero-copy{top:61px}.living-hero .hero-actions{gap:14px;margin-top:17px}.living-hero .hero-actions .button{font-size:9px;padding:9px 11px}.scene-node{padding:6px 7px}.scene-node b{font-size:7px}.scene-node small{font-size:5px}.scene-caption{font-size:5px}.scene-chapter-index{font-size:6px}.scene-open{font-size:7px}.living-ready .living-hero .hero-stage .bench-content{padding-inline:13px}.living-ready .living-hero .hero-stage .bench-content [role="tabpanel"]{min-height:320px}.living-ready .living-hero .hero-stage .bench-content h2{font-size:18px}.living-ready .living-hero .hero-stage .bench-diagram{height:151px}}
@media(max-height:720px) and (min-width:961px){.living-ready .living-hero .hero-copy{top:90px}.living-hero h1{font-size:clamp(40px,4.4vw,64px)}.living-hero .hero-intro{margin-bottom:21px}.living-hero .hero-lead{margin-top:20px}.living-hero .hero-actions{margin-top:23px}.living-ready .living-hero .hero-stage{top:49%;transform:translateY(-49%) scale(calc(var(--living-stage-scale,.76)*.91))}.living-ready .living-chapter{top:27%}}
@media(max-height:740px) and (max-width:960px){.living-ready .living-hero .hero-copy{top:58px}.living-hero h1{font-size:clamp(31px,8vw,43px)}.living-hero .hero-intro{margin-bottom:12px}.living-hero .hero-lead{font-size:10px;margin-top:12px}.living-hero .hero-actions{margin-top:13px}.living-ready .living-hero .hero-stage{top:46%;transform:translateY(-46%) scale(calc(var(--living-stage-scale,.76)*.87))}.scene-caption{bottom:50px}.scene-open,.living-hero .hero-bottom{bottom:14px}}
@media(prefers-reduced-motion:reduce){.living-hero *{animation:none!important;transition:none!important}.living-hero .hero-copy,.living-hero .hero-stage,.living-chapter{will-change:auto}}
.motion-off .living-hero *{animation:none!important;transition:none!important}
