*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;overflow:hidden;background:#000}body{font-family:"Noto Serif SC","Source Han Serif SC",STSong,SimSun,serif;color:#e8e4da;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;cursor:default}button{font-family:inherit;cursor:pointer}.stage{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;overflow:hidden}.letterbox:before,.letterbox:after{content:"";position:fixed;left:0;right:0;height:6.5vh;background:#000;z-index:60;transition:transform .9s cubic-bezier(.7,0,.3,1);pointer-events:none}.letterbox:before{top:0}.letterbox:after{bottom:0}.letterbox.lb-off:before{transform:translateY(-100%)}.letterbox.lb-off:after{transform:translateY(100%)}.grain{position:fixed;top:-100px;right:-100px;bottom:-100px;left:-100px;z-index:55;pointer-events:none;opacity:.07;animation:grainShift .9s steps(4) infinite}@keyframes grainShift{0%{transform:translate(0)}25%{transform:translate(-40px,30px)}50%{transform:translate(30px,-25px)}75%{transform:translate(-25px,-40px)}to{transform:translate(0)}}.vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none;background:radial-gradient(ellipse 90% 80% at 50% 48%,transparent 55%,rgba(0,0,0,.62))}.scene{position:absolute;top:0;right:0;bottom:0;left:0}.scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;background:linear-gradient(180deg,rgba(2,3,6,.38) 0%,transparent 20%,transparent 52%,rgba(2,3,6,.34) 74%,rgba(2,3,6,.68) 100%)}.parallax-wrap{position:absolute;top:0;right:0;bottom:0;left:0;will-change:transform;transition:transform .55s cubic-bezier(.2,.6,.3,1)}.scene-still{position:absolute;top:-3.5%;right:-3.5%;bottom:-3.5%;left:-3.5%;background-size:cover;background-position:center;will-change:transform,filter;animation:kenburns 26s ease-in-out infinite alternate;transition:filter 1.4s ease}@keyframes kenburns{0%{transform:scale(1.012) translate(.4%,.25%)}to{transform:scale(1.06) translate(-.5%,-.35%)}}.scene-still.consequence{filter:saturate(.55) brightness(.72) contrast(1.08)}.scene-video{object-fit:cover;width:107%;height:107%}.scene-fade{animation:sceneIn 1.6s ease both}@keyframes sceneIn{0%{opacity:0}to{opacity:1}}.scene.scene-out{animation:sceneOut .9s ease both}@keyframes sceneOut{0%{opacity:1}to{opacity:0}}.light-sweep{position:absolute;top:0;right:0;bottom:0;left:0;z-index:14;pointer-events:none;overflow:hidden}.light-sweep:before{content:"";position:absolute;top:-50%;bottom:-50%;width:36%;left:-60%;transform:rotate(12deg);filter:blur(14px);background:linear-gradient(90deg,transparent,rgba(255,240,205,.13) 35%,rgba(255,255,255,.22) 50%,rgba(255,240,205,.13) 65%,transparent);animation:sweepAcross 1.1s cubic-bezier(.5,.1,.4,1) .15s both}@keyframes sweepAcross{0%{left:-60%;opacity:0}15%{opacity:1}85%{opacity:1}to{left:130%;opacity:0}}.dust-field{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:2}.dust{position:absolute;bottom:-12px;border-radius:50%;background:radial-gradient(circle,#f0dfae,#c9a86a88);box-shadow:0 0 6px #e8cf96cc;opacity:0;animation-name:dustFloat;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes dustFloat{0%{transform:translateY(0) translate(0);opacity:0}8%{opacity:.55}85%{opacity:.12}to{transform:translateY(-88vh) translate(var(--drift, 0px));opacity:0}}.title-streak{position:absolute;left:0;right:0;top:50%;height:1px;z-index:0;background:linear-gradient(90deg,transparent,rgba(216,184,120,0) 20%,rgba(232,207,150,.9) 50%,transparent 80%);filter:blur(.4px) drop-shadow(0 0 12px rgba(216,184,120,.6));transform:translate(-100%);animation:streakPass 1.8s cubic-bezier(.6,0,.2,1) .4s both}@keyframes streakPass{to{transform:translate(100%)}}.scene-tag{position:absolute;top:9.5vh;left:4.5vw;z-index:20;font-size:13px;letter-spacing:.55em;color:#fff9;border-left:2px solid #c9a86a;padding-left:14px;animation:fadeSlideIn 1.2s .4s ease both}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}.subtitle-zone{position:absolute;left:0;right:0;bottom:12vh;z-index:20;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 10vw;text-align:center}.subtitle{font-size:clamp(18px,2.1vw,30px);line-height:1.9;letter-spacing:.14em;color:#f2ede2;text-shadow:0 2px 18px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,.8)}.subtitle .caret{display:inline-block;width:2px;height:1em;background:#c9a86a;vertical-align:-.12em;margin-left:4px;animation:blink .85s steps(1) infinite}@keyframes blink{50%{opacity:0}}.subtitle-hint{font-size:16px;font-weight:700;letter-spacing:.4em;color:#fff5;margin-top:8px;animation:pulseSoft 2.2s ease-in-out infinite}@keyframes pulseSoft{50%{opacity:.35}}.choice-zone{position:absolute;left:0;right:0;bottom:10vh;z-index:25;display:flex;justify-content:center;align-items:flex-end;gap:2.2vw;padding:0 6vw;flex-wrap:wrap;row-gap:2vh}.choice-prompt{position:absolute;bottom:34vh;left:0;right:0;text-align:center;font-size:clamp(16px,1.6vw,24px);letter-spacing:.3em;color:#e8dcc0;text-shadow:0 2px 16px #000;animation:fadeSlideUp .8s ease both}.choice-card{min-width:220px;max-width:320px;padding:22px 26px 18px;background:linear-gradient(160deg,#14161ec7,#08090ed9);border:1px solid rgba(201,168,106,.32);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#ece7db;text-align:center;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;animation:fadeSlideUp .7s ease both}.choice-card:nth-child(2){animation-delay:.12s}.choice-card:nth-child(3){animation-delay:.24s}.choice-card:nth-child(4){animation-delay:.36s}.choice-card:hover{transform:translateY(-8px);border-color:#d8b878;background:linear-gradient(160deg,#2e281cd9,#0e0c08e6);box-shadow:0 12px 42px #c9a86a38,inset 0 0 24px #c9a86a14}.choice-card .t{font-size:clamp(16px,1.5vw,21px);letter-spacing:.12em;line-height:1.6}.choice-card .s{font-size:12px;letter-spacing:.2em;color:#b8ac90;margin-top:8px}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}.subtitle.echo{color:#e8d8ac;text-shadow:0 0 24px rgba(216,184,120,.35),0 2px 18px rgba(0,0,0,.9)}.hold-card{position:relative;overflow:hidden;touch-action:none}.hold-card .hold-fill{position:absolute;left:0;right:0;bottom:0;pointer-events:none;height:calc(var(--hold, 0) * 100%);background:linear-gradient(180deg,#d8b8781f,#d8b8786b);transition:height .05s linear}.hold-card .t,.hold-card .s{position:relative}.hold-badge{position:absolute;top:8px;right:10px;font-size:10px;letter-spacing:.28em;color:#e8cf96;border:1px solid rgba(216,184,120,.5);padding:3px 7px 3px 9px;animation:pulseSoft 2s ease-in-out infinite}.hold-card.hold-hint{animation:holdShake .4s ease;border-color:#e8cf96}@keyframes holdShake{20%{transform:translate(-7px)}45%{transform:translate(6px)}70%{transform:translate(-4px)}90%{transform:translate(2px)}}.hold-hint-text{position:relative;margin-top:10px;font-size:11.5px;letter-spacing:.18em;color:#f0d8a0;animation:fadeSlideUp .3s ease both}.qte-ring{position:absolute;bottom:42vh;left:50%;transform:translate(-50%);z-index:26;width:84px;height:84px}.qte-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.qte-ring .bg{stroke:#ffffff1f}.qte-ring .fg{stroke:#d8b878;stroke-linecap:round;transition:stroke .3s}.qte-ring.urgent .fg{stroke:#e05c4a}.qte-num{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:26px;color:#f0e8d4;letter-spacing:0}.qte-ring.urgent .qte-num{color:#ff8a76;animation:qteShake .4s ease infinite}@keyframes qteShake{25%{transform:translate(1px,-1px)}75%{transform:translate(-1px,1px)}}.title-card{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px}.title-card .ch{font-size:13px;letter-spacing:.8em;color:#c9a86a;text-indent:.8em;animation:fadeSlideUp 1s .2s ease both}.title-card .big{font-size:clamp(38px,6vw,84px);letter-spacing:.35em;text-indent:.35em;font-weight:600;color:#f2ede2;animation:titleIn 1.6s .5s cubic-bezier(.2,.8,.2,1) both}.title-card .line{width:0;height:1px;background:linear-gradient(90deg,transparent,#c9a86a,transparent);animation:lineGrow 1.4s .9s ease both}@keyframes titleIn{0%{opacity:0;letter-spacing:.8em;filter:blur(10px)}to{opacity:1;letter-spacing:.35em;filter:blur(0)}}@keyframes lineGrow{to{width:320px}}.attract{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4vh;background:radial-gradient(ellipse 70% 60% at 50% 42%,#1f1811,#060402 75%)}.attract .kicker{font-size:13px;letter-spacing:.9em;text-indent:.9em;color:#8fa8c8aa;animation:pulseSoft 3s ease-in-out infinite}.attract .logo{font-size:clamp(26px,2.6vw,34px);letter-spacing:.3em;text-indent:.3em;font-weight:600;background:linear-gradient(180deg,#fdfaf2,#b8c4d8 60%,#67748e);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 40px rgba(140,170,220,.25))}.attract .sub{font-size:clamp(44px,7.5vw,110px);letter-spacing:.2em;text-indent:.2em;color:#c9b896}.attract .entry-slot{display:grid;grid-template-columns:1fr;justify-items:center;align-items:center;margin-top:4vh;min-height:clamp(74px,8.5vw,104px)}.attract .entry-slot>*{grid-column:1;grid-row:1}.attract .gender-pick{display:flex;gap:4.5vw;transition:opacity .45s ease,transform .45s ease}.attract .gender-pick.gone{opacity:0;transform:scale(.9) translateY(-6px);pointer-events:none}.attract .gender-btn{width:clamp(74px,8.5vw,104px);height:clamp(74px,8.5vw,104px);display:flex;align-items:center;justify-content:center;background:none;border:1px solid rgba(255,255,255,.22);border-radius:50%;color:#c9d4e6;transition:all .3s;animation:pulseSoft 3s ease-in-out infinite}.attract .gender-btn svg,.attract .gender-btn .gender-icon{width:66%;height:66%;object-fit:contain}.attract .gender-btn[data-testid=gender-male] .gender-icon{transform:translate(-5px,5px)}.attract .gender-btn:hover{border-color:#d8b878;color:#f0e0b8;box-shadow:0 0 40px #d8b87840}@keyframes genderIn{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}.attract .cta{font-size:15px;letter-spacing:.5em;text-indent:.5em;color:#fff;padding:18px 54px;background:none;border:1px solid rgba(255,255,255,.35);transition:all .3s;animation:genderIn .5s ease both,pulseSoft 2.4s ease-in-out .5s infinite}.attract .cta:hover{border-color:#d8b878;color:#f0e0b8;box-shadow:0 0 40px #d8b87840}.attract .rtx{position:absolute;bottom:4vh;font-size:11px;letter-spacing:.45em;color:#fff4}.attract .offline-badge{position:absolute;bottom:8.5vh;font-size:11px;letter-spacing:.3em;color:#76ff9e;border:1px solid #76ff9e55;padding:6px 14px;border-radius:2px;animation:offlinePulse 2.4s ease-in-out infinite}@keyframes offlinePulse{0%,to{opacity:.55}50%{opacity:1}}.prologue{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5vh;background:radial-gradient(ellipse 60% 55% at 50% 45%,#0c1018,#010204 80%)}.mirror{width:min(30vw,34vh);aspect-ratio:3/4.4;position:relative;cursor:pointer;border-radius:46%/38%;background:linear-gradient(165deg,#7896c81a,#141a2880);border:1px solid rgba(180,200,235,.28);box-shadow:inset 0 0 60px #648cc81f,0 0 80px #5078be14;transition:box-shadow 1.2s ease,border-color 1.2s ease}.mirror:after{content:"";position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:inherit;background:linear-gradient(155deg,rgba(255,255,255,.09) 8%,transparent 30%)}.mirror:hover{border-color:#d8b87880;box-shadow:inset 0 0 80px #a0b4e633,0 0 120px #8caae62e}.mirror.lit{border-color:#e8d8ac;box-shadow:inset 0 0 120px #e8d8ac80,0 0 200px #d8b87873;animation:mirrorFlare 1.6s ease both}@keyframes mirrorFlare{40%{filter:brightness(3)}to{filter:brightness(1.4)}}.prologue .words{text-align:center;font-size:clamp(17px,1.8vw,26px);letter-spacing:.3em;line-height:2.4;color:#d8d2c4;text-shadow:0 2px 20px #000}.prologue .hint{font-size:12px;letter-spacing:.5em;color:#fff5;animation:pulseSoft 2.2s infinite}.flowchart{position:absolute;top:0;right:0;bottom:0;left:0;z-index:35;background:#020306eb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3vh;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:sceneIn .6s ease both}.flowchart h3{font-size:14px;letter-spacing:.7em;text-indent:.7em;color:#c9a86a;font-weight:400}.flowchart svg{width:min(84vw,1240px);max-height:62vh;height:auto}.flowchart .skip{position:absolute;bottom:6vh;font-size:12px;letter-spacing:.4em;color:#fff6;background:none;border:none;padding:10px 20px}.flowchart .skip:hover{color:#fff}.fc-node-label{font-size:13px;letter-spacing:.12em;fill:#d8d2c4}.fc-node-label.locked{fill:#5a5f6e}.fc-choice-label{font-size:11px;fill:#9a937f;letter-spacing:.08em}.career-intro-copy{position:absolute;top:0;right:0;bottom:0;left:0;z-index:22;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:14vh;gap:3vh}.career-name{font-size:clamp(30px,4.4vw,62px);letter-spacing:.5em;text-indent:.5em;color:#f4efe4;text-shadow:0 0 44px rgba(216,184,120,.4),0 2px 20px #000;animation:titleIn 1.4s .3s ease both}.game-hint{font-size:13px;letter-spacing:.3em;color:#cbbf9f;text-shadow:0 2px 10px #000}.go-btn{font-size:15px;letter-spacing:.5em;text-indent:.5em;color:#14100a;padding:16px 52px;border:none;background:linear-gradient(120deg,#e8cf96,#c9a86a);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:filter .25s,transform .25s;animation:fadeSlideUp .8s .8s ease both}.go-btn:hover{filter:brightness(1.15);transform:translateY(-3px)}.game-shell{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:#000}.game-hud{position:absolute;top:8.5vh;left:0;right:0;z-index:30;display:flex;justify-content:center;gap:6vw;font-size:15px;letter-spacing:.3em;color:#f0ead8;text-shadow:0 2px 12px #000;pointer-events:none}.game-hud b{color:#e8cf96;font-weight:600}.game-overlay-msg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:32;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3vh;background:#000000a8}.game-overlay-msg .big{font-size:clamp(26px,3.4vw,48px);letter-spacing:.4em;text-indent:.4em}.skip-game{margin-top:1vh;font-size:12px;letter-spacing:.4em;color:#fff6;background:none;border:1px solid rgba(255,255,255,.25);padding:10px 26px;transition:all .25s}.skip-game:hover{color:#f0e0b8;border-color:#d8b878}.graffiti-tools{position:absolute;bottom:8.5vh;left:0;right:0;z-index:30;display:flex;justify-content:center;align-items:center;gap:14px}.paint-dot{width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.25);transition:transform .2s,border-color .2s}.paint-dot:hover{transform:scale(1.15)}.paint-dot.on{border-color:#fff;transform:scale(1.25);box-shadow:0 0 18px currentColor}.brush-size{display:flex;gap:8px;margin-left:18px}.brush-size button{background:none;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center}.brush-size button.on{border-color:#e8cf96;color:#e8cf96}.done-btn{margin-left:22px;font-size:13px;letter-spacing:.3em;color:#14100a;padding:10px 26px;border:none;background:linear-gradient(120deg,#e8cf96,#c9a86a)}.touch-zones{position:absolute;bottom:8.5vh;left:0;right:0;z-index:30;display:flex;justify-content:center;gap:14vw;pointer-events:none}.touch-zones span{font-size:12px;letter-spacing:.4em;color:#ffffff3d;padding:8px 18px;border:1px solid #ffffff1f;transition:all .2s}.touch-zones span.on{color:#e8cf96;border-color:#d8b87888;box-shadow:0 0 22px #d8b87840;background:#d8b87814}.surge-banner{position:absolute;top:18vh;left:0;right:0;z-index:31;text-align:center;font-size:clamp(15px,1.6vw,22px);letter-spacing:.5em;color:#ff9a80;text-shadow:0 0 24px rgba(224,92,74,.55),0 2px 12px #000;pointer-events:none;animation:surgeIn .5s ease both,pulseSoft 1.1s ease-in-out .5s infinite}@keyframes surgeIn{0%{opacity:0;transform:translateY(-14px);letter-spacing:.9em}to{opacity:1;transform:none;letter-spacing:.5em}}.crosshair{position:absolute;top:50%;left:50%;z-index:28;width:26px;height:26px;transform:translate(-50%,-50%);pointer-events:none}.crosshair:before,.crosshair:after{content:"";position:absolute;background:#f0ead8cc}.crosshair:before{left:50%;top:0;bottom:0;width:1.5px;transform:translate(-50%)}.crosshair:after{top:50%;left:0;right:0;height:1.5px;transform:translateY(-50%)}.rank-splash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:34;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.6vh;background:#000000b8;animation:sceneIn .4s ease both}.rank-splash .verdict{font-size:clamp(22px,2.6vw,38px);letter-spacing:.5em;text-indent:.5em;color:#f0ead8;animation:fadeSlideUp .6s .1s ease both}.rank-splash .grade{font-size:clamp(90px,14vw,200px);font-weight:700;line-height:1;animation:rankPop .7s .45s cubic-bezier(.2,2.2,.4,1) both;text-shadow:0 0 60px currentColor}.rank-splash .grade.S{color:#ffd86a}.rank-splash .grade.A{color:#8fd8ff}.rank-splash .grade.B{color:#b8c0cc}.rank-splash .sub{font-size:14px;letter-spacing:.35em;color:#cbbf9f;animation:fadeSlideUp .6s .8s ease both}@keyframes rankPop{0%{opacity:0;transform:scale(2.6) rotate(-6deg);filter:blur(14px)}to{opacity:1;transform:scale(1) rotate(0);filter:blur(0)}}.hall-wall{position:absolute;right:4vw;top:50%;transform:translateY(-50%);width:min(300px,24vw);max-height:62vh;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent)}.hall-wall h4{font-size:11px;letter-spacing:.55em;color:#c9a86a99;font-weight:400;margin-bottom:14px;text-align:center}.hall-list{display:flex;flex-direction:column;gap:10px;animation:hallScroll 26s linear infinite}.hall-item{border:1px solid rgba(255,255,255,.1);padding:10px 16px;background:#0c0e1680;display:flex;justify-content:space-between;align-items:baseline}.hall-item .ht{font-size:13px;letter-spacing:.1em;color:#e0d6c0}.hall-item .hr{font-size:11px;letter-spacing:.15em;color:#8fa8c8}.hall-item .hr b{color:#ffd86a;font-weight:600}@keyframes hallScroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.hall-empty{font-size:12px;line-height:2.1;letter-spacing:.18em;color:#8a94a8;text-align:center;border:1px dashed rgba(255,255,255,.14);padding:22px 14px}.debug-note{font-size:11px;letter-spacing:.4em;color:#5a5f6e;border:1px dashed rgba(255,255,255,.15);padding:14px 20px}.axes-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(34vw,560px)}.axis-card{border:1px solid rgba(255,255,255,.12);padding:12px 14px 10px;background:#0c0e168c}.axis-card .ax-name{font-size:11px;letter-spacing:.3em;color:#c9a86a;margin-bottom:8px}.axis-card .ax-ends{display:flex;justify-content:space-between;font-size:13px;color:#6a7186;margin-bottom:6px}.axis-card .ax-ends .dom{color:#f0dfb2;font-weight:700;font-size:15px;text-shadow:0 0 10px rgba(216,184,120,.45)}.axis-card .ax-bar{height:6px;background:#ffffff1f;overflow:hidden}.axis-card .ax-fill{height:100%;background:linear-gradient(90deg,#e8cf96,#c9a86a);transition:width 1.2s cubic-bezier(.2,.8,.2,1)}.axis-card .ax-fill.right{margin-left:auto;background:linear-gradient(270deg,#e8cf96,#c9a86a)}.axis-card .ax-pct{font-size:10.5px;color:#8a94a8;margin-top:6px;letter-spacing:.12em}.axis-card .ax-pct .dom{color:#d8b878;font-weight:700}.alt-lives{width:min(34vw,560px);border-left:2px solid #c9a86a55;padding:4px 0 4px 14px}.alt-lives .al-title{font-size:11px;letter-spacing:.35em;color:#c9a86a;margin-bottom:8px}.alt-lives .al-item{font-size:12.5px;line-height:1.9;color:#b8ac90;letter-spacing:.06em}.alt-lives .al-item b{color:#e0d6c0;font-weight:600}.report-card .slogan{font-size:13px;letter-spacing:.12em;color:#9aa4b8;margin-bottom:6px;font-style:italic}.report-card .imprint{font-size:12px;letter-spacing:.14em;color:#c9a86a;margin-bottom:14px}.report{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;overflow:hidden;background:radial-gradient(ellipse 70% 60% at 50% 40%,#0d121e,#020306 78%);display:flex;align-items:center;justify-content:center;gap:clamp(2vw,3vw,4vw);padding:clamp(1.5vh,2.5vh,4vh) clamp(2vw,3vw,4vw)}.report-card{width:min(560px,44vw);max-height:76vh;overflow:auto;padding:44px 46px;background:linear-gradient(165deg,#161a24e6,#080a10f0);border:1px solid rgba(201,168,106,.35);position:relative;clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px);animation:fadeSlideUp 1s .3s ease both;scrollbar-width:thin}.report-card .rk{font-size:11px;letter-spacing:.6em;color:#c9a86a;margin-bottom:14px}.report-card h2{font-size:clamp(24px,2.4vw,34px);letter-spacing:.18em;color:#f4efe4;font-weight:600;margin-bottom:6px}.report-card .honor{font-size:13px;letter-spacing:.3em;color:#d8b878;margin-bottom:22px}.report-card p{font-size:14.5px;line-height:2.15;letter-spacing:.1em;color:#cfc9bb;margin-bottom:16px;text-align:justify}.report-card .final-word{border-left:2px solid #c9a86a;padding-left:16px;color:#ece0c4;font-size:15px}.report-card .ai-tag{position:absolute;top:20px;right:22px;font-size:10px;letter-spacing:.3em;color:#5f88b8;border:1px solid #35507288;padding:5px 10px}.report-card .ai-stats{position:absolute;top:52px;right:22px;font-size:10px;letter-spacing:.08em;color:#4a6a92}.report-card .ai-stats b{color:#76ff9e;font-weight:600}.report-side{display:flex;flex-direction:column;justify-content:space-between;align-self:stretch;gap:clamp(1vh,1.8vh,2.5vh);align-items:center;max-width:34vw;padding:1vh 0;position:relative}.report-actions{display:flex;gap:clamp(6px,.8vw,12px);flex-wrap:nowrap;justify-content:center}.report-actions button{font-size:clamp(10px,.72vw,12px);letter-spacing:.06em;padding:clamp(8px,1vh,11px) clamp(10px,1vw,16px);white-space:nowrap;background:none;border:1px solid rgba(255,255,255,.3);color:#e8e4da;transition:all .25s}.report-actions button:hover{border-color:#d8b878;color:#f0e0b8}.report-actions button.primary{background:linear-gradient(120deg,#e8cf96,#c9a86a);color:#14100a;border:none}.qr-card{display:flex;align-items:center;gap:16px;padding:12px 18px 12px 12px;border:1px solid rgba(216,184,120,.5);background:#d8b8780f}.qr-card canvas{width:clamp(108px,12vw,150px);height:clamp(108px,12vw,150px);display:block}.qr-card .qr-text{display:flex;flex-direction:column;gap:8px;text-align:left}.qr-card .qr-text b{font-size:14px;letter-spacing:.25em;color:#f0e0b8;font-weight:600}.qr-card .qr-text span{font-size:11px;letter-spacing:.2em;color:#b8ac90}.report-loading{font-size:13px;letter-spacing:.4em;color:#8fa8c8;animation:pulseSoft 1.6s infinite}.report-stream{font-size:14.5px;line-height:2.15;letter-spacing:.1em;color:#cfc9bb;white-space:pre-wrap;text-align:justify}.report-stream:after{content:"";display:inline-block;width:2px;height:1em;background:#c9a86a;vertical-align:-.12em;margin-left:4px;animation:blink .85s steps(1) infinite}.life-timeline{margin-top:26px;padding-top:16px;border-top:1px solid rgba(201,168,106,.22)}.lt-title{font-size:10.5px;letter-spacing:.5em;color:#c9a86a;margin-bottom:14px}.lt-axis{display:flex;position:relative}.lt-axis:before{content:"";position:absolute;left:3%;right:3%;top:133px;height:1px;background:linear-gradient(90deg,transparent,rgba(216,184,120,.55) 12%,rgba(216,184,120,.55) 88%,transparent)}.lt-item{flex:1;min-width:0;text-align:center}.lt-choice{writing-mode:vertical-rl;height:118px;margin:0 auto 6px;font-size:10.5px;line-height:1.2;color:#cfc4a8;letter-spacing:.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lt-choice.high{color:#cfc4a8}.lt-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#d8b878;box-shadow:0 0 8px #d8b87880}.lt-place{font-size:10px;color:#8a94a8;margin-top:7px;letter-spacing:.12em}.report-flow{width:min(34vw,560px)}.report-flow svg{width:100%;height:auto;display:block}.share-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.4vh;background:#000000db;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;animation:sceneIn .35s ease both}.share-overlay img{max-height:78vh;max-width:86vw;border:1px solid rgba(201,168,106,.45);box-shadow:0 24px 80px #000000b3,0 0 60px #d8b8781f}.share-tip{font-size:12px;letter-spacing:.35em;color:#cbbf9f}.fade-in{animation:sceneIn 1s ease both}.top-bar{position:fixed;top:0;left:0;right:0;z-index:65;display:flex;justify-content:space-between;align-items:center;padding:2.1vh 3vw 0;pointer-events:none}.top-bar span{font-size:11px;letter-spacing:.35em;color:#ffffff59}.top-bar button{pointer-events:auto;font-size:10px;letter-spacing:.25em;color:#fff8;background:none;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 14px;transition:all .25s}.top-bar button:hover{border-color:#fff;color:#fff}.print-sheet,.print-card{position:fixed;left:-9999px;top:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-sheet{width:210mm;padding:16mm 18mm 12mm;background:#0a0d16;color:#cfc9bb}.print-sheet .ps-frame{position:absolute;top:6mm;right:6mm;bottom:6mm;left:6mm;border:.5mm solid rgba(216,184,120,.7);outline:.15mm solid rgba(216,184,120,.7);outline-offset:1.6mm;pointer-events:none}.ps-head{text-align:center;margin-bottom:8mm}.ps-brand{font-size:9pt;letter-spacing:.5em;text-indent:.5em;color:#c9a86a;margin-bottom:6mm}.ps-type{font-size:8pt;letter-spacing:.4em;color:#8fa8c8;margin-bottom:4mm}.ps-title{font-size:26pt;letter-spacing:.12em;color:#f4efe4;font-weight:600;margin-bottom:3.5mm}.ps-sub{font-size:10.5pt;letter-spacing:.18em;color:#d8b878}.ps-rank{margin-left:4mm;padding:.6mm 2.4mm;border:.35mm solid #d8b878;font-size:9pt}.ps-hero{margin:0 0 5mm;border:.3mm solid rgba(216,184,120,.5);break-inside:avoid}.ps-hero img{width:100%;max-height:120mm;object-fit:cover;display:block}.ps-hero figcaption{padding:3.5mm 5mm;text-align:center;background:#d8b87812}.ps-flavor{font-size:9pt;font-style:italic;color:#d8c9a8;margin-bottom:1.6mm}.ps-slogan{font-size:10.5pt;letter-spacing:.1em;color:#f2ede2;font-style:italic}.ps-aitag{font-size:8pt;letter-spacing:.2em;color:#5f88b8;text-align:center;margin-bottom:6mm}.ps-body p{font-size:10.5pt;line-height:2.05;letter-spacing:.08em;margin-bottom:4mm;text-align:justify}.ps-final{border-left:.6mm solid #c9a86a;padding-left:4mm;color:#ece0c4;font-size:11pt;font-style:italic}.ps-section{margin-top:7mm;break-inside:avoid}.ps-section h2{font-size:9.5pt;letter-spacing:.45em;text-indent:.45em;color:#c9a86a;font-weight:400;border-top:.2mm solid rgba(201,168,106,.35);padding-top:4.5mm;margin-bottom:4.5mm}.ps-timeline{list-style:none}.ps-timeline li{display:flex;align-items:baseline;gap:4mm;padding:1.8mm 0;border-bottom:.15mm dashed rgba(255,255,255,.16);break-inside:avoid}.ps-timeline li:last-child{border-bottom:none}.ps-tl-place{flex:0 0 32mm;font-size:8.5pt;letter-spacing:.1em;color:#8a94a8}.ps-tl-choice{font-size:10pt;color:#e0d6c0}.ps-axes{display:grid;grid-template-columns:1fr 1fr;gap:4.5mm 7mm}.ps-axis{break-inside:avoid}.ps-axis .ps-ax-name{font-size:8pt;letter-spacing:.3em;color:#c9a86a;margin-bottom:2mm}.ps-ax-row{display:flex;align-items:center;gap:2.5mm;font-size:9pt;color:#6a7186}.ps-ax-row .dom{color:#f0dfb2;font-weight:700;font-size:10.5pt}.ps-ax-bar{flex:1;height:1.8mm;background:#ffffff26}.ps-ax-bar div{height:100%;background:linear-gradient(90deg,#e8cf96,#c9a86a)}.ps-ax-pct{font-size:7.5pt;color:#8a94a8;margin-top:1.4mm;letter-spacing:.1em}.ps-ax-pct .dom{color:#d8b878;font-weight:700}.ps-alt{font-size:9.5pt;line-height:2.1;color:#b8ac90;letter-spacing:.05em}.ps-alt b{color:#e0d6c0;font-weight:600}.ps-qr{display:flex;align-items:center;gap:5mm;margin-top:7mm;padding:4mm;border:.3mm solid rgba(216,184,120,.5);background:#d8b8780f;break-inside:avoid}.ps-qr canvas{width:30mm;height:30mm;display:block}.ps-qr-text b{display:block;font-size:10.5pt;letter-spacing:.22em;color:#f0e0b8;font-weight:600;margin-bottom:2mm}.ps-qr-text span{font-size:8.5pt;letter-spacing:.16em;color:#b8ac90}.ps-foot{margin-top:8mm;padding-top:4mm;border-top:.2mm solid rgba(201,168,106,.35);display:flex;justify-content:space-between;align-items:baseline;break-inside:avoid}.ps-foot div{font-size:9.5pt;letter-spacing:.3em;color:#c9a86a}.ps-foot span{font-size:7pt;letter-spacing:.08em;color:#fff6}.print-card{width:210mm;height:297mm;background:#0a0d16;display:flex;align-items:center;justify-content:center}.print-card img{width:210mm;display:block}@media print{html,body{height:auto!important;overflow:visible!important;background:#0a0d16!important}#root{display:none!important}.print-sheet,.print-card{display:none}html[data-print=report] .print-sheet{display:block;position:relative;left:0;top:0}html[data-print=card] .print-card{display:flex;position:relative;left:0;top:0}}.closeup-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8vh 4vw 7vh}.closeup-scene .kicker{font-size:12px;letter-spacing:.9em;text-indent:.9em;color:#8fa8c8aa;animation:pulseSoft 3s ease-in-out infinite}.cu-hero{display:flex;flex-direction:column;align-items:center;gap:clamp(12px,1.8vh,20px)}.cu-title{font-size:clamp(24px,3.4vw,42px);letter-spacing:.35em;text-indent:.35em;font-weight:600;color:#f2ede2;animation:cuTitleIn 1.4s .2s cubic-bezier(.2,.8,.2,1) both}@keyframes cuTitleIn{0%{opacity:0;letter-spacing:.8em;filter:blur(10px)}to{opacity:1;letter-spacing:.35em;filter:blur(0)}}.cu-tagline{font-size:clamp(11px,1.2vw,14px);letter-spacing:.42em;text-indent:.42em;color:#b8ac90;animation:fadeSlideUp 1s .7s ease both}.cu-panel{width:min(700px,92vw);padding:clamp(24px,3.6vh,38px) clamp(24px,3.4vw,42px);background:linear-gradient(165deg,#161a24e6,#080a10f0);border:1px solid rgba(201,168,106,.35);clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px);animation:fadeSlideUp .9s .3s ease both}.cu-rk{font-size:10px;letter-spacing:.6em;color:#c9a86a;margin-bottom:8px;text-align:center}.cu-panel h2{font-size:clamp(17px,2vw,24px);letter-spacing:.18em;color:#f4efe4;font-weight:600;margin-bottom:16px;text-align:center}.cu-honor{font-size:11.5px;letter-spacing:.28em;color:#d8b878;margin:-10px 0 16px;text-align:center}.cu-drop{padding:clamp(22px,3.4vh,34px) 20px;text-align:center;border:1px dashed rgba(201,168,106,.4);background:#0203066b;transition:border-color .3s,background .3s,box-shadow .3s}.cu-drop.drag{border-color:#e8cf96;background:#c9a86a12;box-shadow:inset 0 0 40px #c9a86a14}.cu-lens{width:52px;height:52px;margin:0 auto 12px;display:block;color:#c9a86a;animation:pulseSoft 3s ease-in-out infinite}.cu-d-title{font-size:15px;letter-spacing:.22em;color:#ece7db;margin-bottom:8px}.cu-d-hint{font-size:12px;letter-spacing:.12em;color:#8a94a8;line-height:1.9}.cu-actions{display:flex;gap:14px;justify-content:center;margin-top:20px;flex-wrap:wrap}.cu-btn{font-size:14px;letter-spacing:.42em;text-indent:.42em;color:#14100a;padding:12px 34px;border:none;cursor:pointer;font-family:inherit;background:linear-gradient(120deg,#e8cf96,#c9a86a);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);transition:filter .25s,transform .25s,box-shadow .25s}.cu-btn:hover{filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 12px 42px #c9a86a47}.cu-btn:active{transform:translateY(0)}.cu-btn.dim{opacity:.55}.cu-btn-ghost{font-size:12.5px;letter-spacing:.2em;padding:11px 24px;cursor:pointer;background:none;border:1px solid rgba(255,255,255,.3);color:#e8e4da;font-family:inherit;transition:all .25s}.cu-btn-ghost:hover{border-color:#d8b878;color:#f0e0b8}.cu-cam-wrap{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid rgba(201,168,106,.35);background:#04060c;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}.cu-cam-wrap video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.cu-cam-frame{position:absolute;top:14px;right:14px;bottom:14px;left:14px;pointer-events:none}.cu-cam-frame:before,.cu-cam-frame:after,.cu-cam-frame>i:first-child,.cu-cam-frame>i:last-child{content:"";position:absolute;width:22px;height:22px;border:2px solid rgba(232,207,150,.7)}.cu-cam-frame:before{top:0;left:0;border-right:none;border-bottom:none}.cu-cam-frame:after{top:0;right:0;border-left:none;border-bottom:none}.cu-cam-frame>i:first-child{bottom:0;left:0;border-right:none;border-top:none;display:block}.cu-cam-frame>i:last-child{bottom:0;right:0;border-left:none;border-top:none;display:block}.cu-cam-cross{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.cu-cam-cross:before,.cu-cam-cross:after{content:"";position:absolute;background:#e8cf968c}.cu-cam-cross:before{left:50%;top:-13px;bottom:-13px;width:1px;transform:translate(-50%)}.cu-cam-cross:after{top:50%;left:-13px;right:-13px;height:1px;transform:translateY(-50%)}.cu-toast{margin-top:14px;text-align:center;font-size:12px;letter-spacing:.22em;color:#e8b878;min-height:16px;opacity:0;transition:opacity .3s}.cu-toast.show{opacity:1;animation:cuShake .4s ease}@keyframes cuShake{20%{transform:translate(-7px)}45%{transform:translate(6px)}70%{transform:translate(-4px)}90%{transform:translate(2px)}}.cu-read{width:min(1120px,95vw);animation:fadeSlideUp .8s ease both}.cu-read-head{text-align:center;margin-bottom:clamp(12px,1.8vh,20px)}.cu-lk{font-size:10px;letter-spacing:.6em;color:#c9a86a;margin-bottom:7px}.cu-read-head h2{font-size:clamp(20px,2.4vw,28px);letter-spacing:.18em;color:#f4efe4;font-weight:600;margin-bottom:6px}.cu-lh{font-size:12px;letter-spacing:.2em;color:#b8ac90}.cu-read-body{display:grid;grid-template-columns:minmax(240px,.8fr) 1.2fr;gap:clamp(18px,2.4vw,34px);align-items:start}.cu-dh-col{display:flex;flex-direction:column;gap:10px}.cu-dh-stage{position:relative;width:100%;aspect-ratio:3/4;max-height:62vh;overflow:hidden;background:radial-gradient(ellipse 70% 60% at 50% 42%,#0c1424,#04060e 80%);border:1px solid rgba(201,168,106,.45);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);box-shadow:0 18px 54px #0000008c}.cu-dh-stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(4,6,14,.3) 0%,transparent 22%,transparent 52%,rgba(4,6,14,.82) 100%)}.cu-hud{position:absolute;width:22px;height:22px;border:2px solid rgba(232,207,150,.7);z-index:3}.cu-hud.tl{top:12px;left:12px;border-right:none;border-bottom:none}.cu-hud.tr{top:12px;right:12px;border-left:none;border-bottom:none}.cu-hud.bl{bottom:12px;left:12px;border-right:none;border-top:none}.cu-hud.br{bottom:12px;right:12px;border-left:none;border-top:none}.cu-dh-tag{position:absolute;top:14px;left:0;right:0;z-index:3;text-align:center;font-size:10px;letter-spacing:.34em;color:#e8cf96}.cu-dh-photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1;filter:contrast(1.05) saturate(.92) brightness(.9)}.cu-dh-beam{position:absolute;left:0;right:0;height:26%;top:-28%;z-index:4;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(232,207,150,.16) 45%,rgba(255,255,255,.32) 52%,rgba(232,207,150,.16) 60%,transparent);filter:blur(2px);opacity:0}.cu-dh-stage.scanning .cu-dh-beam{animation:cuBeam 1.7s cubic-bezier(.45,0,.55,1) infinite}@keyframes cuBeam{0%{top:-28%;opacity:0}12%{opacity:1}88%{opacity:1}to{top:108%;opacity:0}}.cu-dh-progress{position:absolute;left:22%;right:22%;bottom:34px;height:2px;z-index:3;background:#c9a86a38}.cu-dh-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#e8cf96,#c9a86a);box-shadow:0 0 8px #d8b87899;transition:width 1.8s cubic-bezier(.4,0,.2,1)}.cu-dh-stage.scanning .cu-dh-progress i,.cu-dh-stage.done .cu-dh-progress i{width:100%}.cu-dh-status{position:absolute;left:0;right:0;bottom:12px;z-index:3;text-align:center;font-size:11px;letter-spacing:.28em;color:#e8cf96}.dots:after{content:"";animation:cuDots 1.3s steps(1) infinite}@keyframes cuDots{0%{content:""}25%{content:"·"}50%{content:"··"}75%,to{content:"···"}}.cu-dh-cap{text-align:center;font-size:14px;letter-spacing:.18em;color:#cfc9bb;line-height:1.5}.cu-dh-cap b{color:#d8b878;font-weight:600}.cu-ai-stats{font-size:11px;color:#8a94a8;letter-spacing:.1em}.cu-read-col{position:relative;min-height:50vh}.cu-think{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;animation:fadeSlideUp .6s ease both}.cu-think-orb{width:46px;height:46px;border-radius:50%;border:2px solid rgba(201,168,106,.28);border-top-color:#e8cf96;animation:cuSpin 1s linear infinite}@keyframes cuSpin{to{transform:rotate(360deg)}}.cu-think-txt{font-size:14px;letter-spacing:.24em;color:#b8ac90}.cu-sections{display:flex;flex-direction:column;gap:clamp(10px,1.5vh,16px);max-height:62vh;overflow-y:auto;padding-right:8px}.cu-sections::-webkit-scrollbar{width:5px}.cu-sections::-webkit-scrollbar-thumb{background:#c9a86a59}.cu-sec{border-top:1px solid rgba(201,168,106,.18);padding-top:clamp(10px,1.5vh,15px);opacity:0;transform:translateY(14px)}.cu-sec.in{animation:fadeSlideUp .7s ease both}.cu-sec-head{display:flex;align-items:baseline;gap:10px;margin-bottom:5px}.cu-sec-idx{font-size:10.5px;letter-spacing:.1em;color:#6a7588}.cu-sec-key{font-size:clamp(14px,1.5vw,17px);letter-spacing:.24em;color:#c9a86a;font-weight:600}.cu-sec-en{font-size:10.5px;letter-spacing:.22em;color:#6a7588;margin-left:auto}.cu-sec-sub{font-size:13px;letter-spacing:.14em;color:#d8b878;font-style:italic;margin:3px 0 9px}.cu-pts{display:flex;flex-direction:column;gap:8px}.cu-pt{font-size:clamp(13px,1.3vw,15.5px);line-height:1.95;letter-spacing:.05em;color:#cfc9bb;text-align:justify}.cu-pt-label{color:#d8b878;font-weight:600;margin-right:8px}.cu-pt strong{color:#ece0c4;font-weight:600}.cu-sec.summary{border-top:1px solid rgba(201,168,106,.4);margin-top:4px;padding-top:clamp(12px,1.6vh,16px)}.cu-sec.summary .cu-pt{border-left:2px solid #c9a86a;padding-left:14px;color:#ece0c4;font-size:clamp(13.5px,1.35vw,16px)}.cu-read-actions{display:flex;gap:12px;justify-content:center;margin-top:clamp(14px,2vh,20px);padding-top:clamp(12px,1.6vh,16px);border-top:1px solid rgba(201,168,106,.18)}@media (max-width: 860px){.cu-read-body{grid-template-columns:1fr}.cu-dh-stage{aspect-ratio:16/10;max-height:42vh}.cu-dh-col{max-width:min(560px,92vw);margin:0 auto;width:100%}.cu-read-col{min-height:auto}.cu-sections{max-height:none}}
