.void-root{--terminal-header:#303f49;--terminal-interior:#1e282e;--terminal-deep:#263740;--terminal-cream:#f5f5ec;--stage-h:max(620px,calc(100svh - clamp(68px,4.77vw,92px) - 48px))}
.void-root #experience{position:relative;display:block;padding:0;min-height:0;height:var(--stage-h);flex:none;isolation:isolate;overflow:visible}
.void-root #experience .login-composition{position:absolute;left:47.3%;top:11%;transform:translateX(-50%);width:20.2%;max-width:none;min-width:260px;z-index:1}
.void-root #experience .artwork{width:100%;height:calc(var(--stage-h)*.3125);margin-bottom:calc(var(--stage-h)*.034375)}
.void-root #experience .field{height:calc(var(--stage-h)*.06875);margin-bottom:calc(var(--stage-h)*.021875);border-radius:8px;padding:0 18px;gap:14px;box-shadow:0 5px 10px #17202512;border-width:1px}
.void-root #experience .field input{font-size:clamp(12px,.85vw,16px)}
.void-root #experience .field>svg{width:18px;height:18px}
.void-root #experience .visibility svg{width:18px;height:18px}
.void-root #experience .visibility{padding:4px;margin-right:-7px}
.void-root #experience .login-button{height:calc(var(--stage-h)*.065625);border-radius:8px;font-size:clamp(12px,.85vw,16px);gap:14px;box-shadow:0 5px 10px #17202517}
.void-root #experience .login-button svg{width:20px;height:18px}
.void-root #experience #form-status{font-size:11px;position:absolute;top:100%;width:100%;margin-top:8px}
.void-root .terminal{position:absolute;left:4.7%;top:6.9%;width:26.4%;height:84.2%;padding:9px;background:transparent;z-index:3;min-width:280px;max-width:520px;box-sizing:border-box}
.void-root .terminal-frame{position:relative;height:100%;border:1px solid #78929f;border-radius:9px;overflow:hidden;display:flex;flex-direction:column;box-sizing:border-box}
.void-root .terminal-frame::after{content:'';position:absolute;inset:0;border:3px solid #b8ffc7;border-radius:8px;pointer-events:none;z-index:100;box-sizing:border-box;opacity:0}
.void-root .terminal.is-drag-active .terminal-frame{border-color:transparent;box-shadow:0 0 10px rgba(184,255,199,.55),0 0 24px rgba(184,255,199,.25)}
.void-root .terminal.is-drag-active .terminal-frame::after{opacity:1}
.void-root .terminal-header:focus-visible{outline:0;box-shadow:inset 0 0 0 2px #9cb4c3}
.void-root .terminal-header{height:38px;flex:none;display:flex;justify-content:space-between;align-items:center;background:var(--terminal-header);padding:0 12px;cursor:grab;touch-action:none;user-select:none}
.void-root .terminal-header:active{cursor:grabbing}
.void-root .terminal-grip{height:100%;flex:1;min-width:30px}
.void-root .terminal-actions{display:flex;gap:5px}
.void-root .terminal-actions button{font-family:Consolas,'Courier New',monospace;font-size:8px;font-weight:400;color:#d6e0e6;border:1px solid #68808d;border-radius:3px;background:transparent;padding:4px 8px;line-height:1.3;cursor:pointer}
.void-root .terminal-actions button:hover{background:#415762}
.void-root .terminal-output{flex:1;min-height:0;padding:11px 12px;background:var(--terminal-interior);color:#c4ced1;font-family:Consolas,'Nirmala UI',Mangal,monospace;font-size:clamp(9px,.7vw,12px);line-height:1.5;overflow-y:scroll;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y;white-space:pre-wrap;overflow-wrap:anywhere}
.void-root .terminal-output::-webkit-scrollbar{width:9px}
.void-root .terminal-output::-webkit-scrollbar-track{background:#e3e5df}
.void-root .terminal-output::-webkit-scrollbar-thumb{background:#8b9498;border:2px solid #e3e5df;border-radius:8px}
.void-root .terminal-output{scrollbar-width:none;padding-right:21px}
.void-root .terminal-output::-webkit-scrollbar{display:none}
.void-root .terminal-scrollbar{position:absolute;right:0;top:38px;bottom:0;width:9px;background:#e3e5df;touch-action:none;cursor:default}
.void-root .terminal-thumb{position:absolute;left:2px;right:2px;top:0;min-height:28px;border-radius:6px;background:#8b9498;pointer-events:none}
.void-root .terminal-line{min-height:1.5em;white-space:pre-wrap}
.void-root .terminal-line.lyric{font-family:'Nirmala UI',Mangal,Consolas,monospace;font-size:clamp(11px,.85vw,14px)}
.void-root .terminal-line.success{color:#b4d2c1}
.void-root .terminal-line.warning{color:#d5c69f}
.void-root .cursor{display:inline-block;margin-top:4px;animation:cursor-blink 1s steps(1) infinite;color:#b3c6ce}
.void-root .terminal-line.success{color:#83ad9c}
.void-root .terminal-line.progress{color:#b4d2c1;font-variant-numeric:tabular-nums}
.void-root .terminal-line.final-progress{border:1px solid #83ad9c;border-radius:4px;padding:8px 5px;margin:7px 0;color:#c2dfd1;background:#83ad9c0d;font-size:1.12em;font-weight:600}
.void-root .terminal-line.final-success{font-weight:700;line-height:1.7}
.void-root .terminal-line.final-void{color:var(--terminal-cream);font-weight:600;margin-top:4px}
@keyframes cursor-blink{50%{opacity:0}}
.void-root .is-dragging{z-index:20!important;cursor:grabbing}
body.void-v3-page.dragging .void-root{user-select:none}
.void-root .lotus-token{position:absolute;left:61.1%;top:52%;width:5.1%;max-width:96px;min-width:64px;aspect-ratio:100 / 97;z-index:4}
.void-root .token-visual{position:relative;width:100%;height:100%;border-radius:6px;box-shadow:none;animation:token-levitate 4s ease-in-out -1s infinite;will-change:transform}
.void-root .lotus-token.is-dragging .token-visual{animation-play-state:paused}
@keyframes token-levitate{0%,100%{transform:translateY(-5px)}50%{transform:translateY(5px)}}
.void-root .token-action{display:block;padding:0;border:0;background:none;width:100%;height:100%;border-radius:6px;cursor:pointer}
.void-root .token-monogram{width:100%;height:100%;display:block;pointer-events:none;overflow:visible}
.void-root .token-frame{fill:#f4f4eb;stroke:#283740;stroke-width:4}
.void-root .token-contours{fill:none;stroke:#283740;stroke-width:3;stroke-linejoin:miter}
.void-root .token-ink{fill:#283740}
.void-root .token-ink-level{transform:translateY(150px);animation:token-fill-drain 6s ease-in-out infinite}
@keyframes token-fill-drain{0%,100%{transform:translateY(150px)}50%{transform:translateY(0)}}
.void-root .token-action:active{filter:none}
@media(prefers-reduced-motion:reduce){.void-root .token-ink-level{animation:none;transform:none}}
.void-root .token-corner{position:absolute;width:16px;height:16px;border:0;padding:0;background:transparent;cursor:grab;touch-action:none;border-radius:3px}
.void-root .token-corner.nw{left:0;top:0}
.void-root .token-corner.ne{right:0;top:0}
.void-root .token-corner.sw{left:0;bottom:0}
.void-root .token-corner.se{right:0;bottom:0}
.void-root .token-corner:focus-visible{background:#a4e3ba45;outline:1px solid #284b39;outline-offset:1px}
.void-root .token-feedback{position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:11px;color:#52616a;background:var(--cream);border-radius:3px}
.void-root .lyrics-marquee{position:absolute;left:36.85%;top:83%;width:21.45%;height:32px;overflow:hidden;z-index:1;color:#697d87;font-family:'Nirmala UI',Mangal,sans-serif;font-weight:600;font-size:clamp(15px,1.25vw,22px);line-height:30px;white-space:nowrap;contain:paint}
.void-root .lyrics-track{display:flex;width:max-content;will-change:transform;animation:lyrics-scroll var(--marquee-duration,160s) linear infinite}
.void-root .lyrics-copy{display:block;flex:none;white-space:pre;line-height:30px}
.void-root .lyrics-marquee:is(:hover,:focus) .lyrics-track{animation-play-state:paused}
@keyframes lyrics-scroll{to{transform:translateX(-50%)}}
.void-root .graffiti{position:absolute;left:47.3%;transform:translateX(-50%);bottom:8px;width:5.5%;height:auto;z-index:1;pointer-events:none}
@media(max-width:1023px){.void-root header{height:calc(57px + env(safe-area-inset-top));border-bottom:0}
.void-root .header-inner{padding:env(safe-area-inset-top) max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left));justify-content:space-between}
.void-root .brand img{width:80px;height:auto}
.void-root .js-menu-toggle{display:flex;flex-direction:column;gap:5px;padding:8px 0;border:0;background:transparent;color:#9daab1}
.void-root .js-menu-toggle span{display:block;width:32px;height:4px;background:currentColor}
.void-root nav{display:none;position:absolute;top:100%;left:0;width:min(85vw,360px);max-height:calc(100svh - 57px - env(safe-area-inset-top));overflow:auto;background:#283740;padding:24px;box-shadow:6px 10px 20px #17202520}
.void-root nav.open{display:block}
.void-root ul.primary{display:flex;flex-direction:column;align-items:stretch;gap:22px}
.void-root .resume-item{margin:0}
.void-root .resume{width:fit-content}
.void-root header ul.primary .lotus-fintech-submenu{position:static;margin-top:12px;background:transparent;border:0;border-left:1px solid #ffffff40;padding:0 0 0 8px}
.void-root header ul.primary .lotus-fintech-submenu li a{display:block;padding:9px 16px}
.void-root #experience{display:flex;flex-direction:column;align-items:center;flex:1;height:auto;min-height:0;padding:18px max(20px,env(safe-area-inset-right)) 12px max(20px,env(safe-area-inset-left))}
.void-root #experience .login-composition{position:relative;left:auto;top:auto;transform:none;width:min(360px,calc(100vw - clamp(64px,22.6vw,96px)));max-width:100%;min-width:0;margin-bottom:60px;flex:none}
.void-root #experience .artwork{height:clamp(190px,52.5vw,225px);margin-bottom:29px;flex:none}
.void-root #experience .field{height:44px;margin-bottom:14px;padding:0 13px;gap:12px;border-radius:6px;border-width:1px}
.void-root #experience .field input{font-size:12px}
.void-root #experience .field>svg,.void-root #experience .visibility svg{width:15px;height:15px}
.void-root #experience .visibility{padding:7px;margin-right:-6px}
.void-root #experience .login-button{height:44px;font-size:12px;border-radius:6px;gap:12px}
.void-root #experience .login-button svg{width:18px;height:16px}
.void-root .terminal,.void-root .lotus-token{display:none!important}
.void-root .token-visual,.void-root .cursor{animation:none!important}
.void-root .lyrics-marquee{position:relative;left:auto;top:auto;width:min(520px,calc(100% - 36px));height:30px;margin-top:auto;font-size:20px;flex:none}
.void-root .graffiti{position:static;transform:none;width:75px;height:auto;margin-top:18px;flex:none}
.void-root footer{height:calc(30px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);font-size:8px}
}
@media(prefers-reduced-motion:reduce){.void-root .lyrics-track,.void-root .cursor,.void-root .token-visual{animation:none!important}
.void-root .lyrics-track,.void-root .token-visual{transform:none}
}
