@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--void:#04050c;--void-2:#070a17;--void-3:#0b1024;--surface:#0c1124b8;--surface-strong:#0e142aeb;--surface-faint:#7891dc0d;--line:#8ca5e624;--line-strong:#96aff047;--ink:#e9ecff;--ink-dim:#9aa5cb;--ink-faint:#64708f;--sol:#ffc46b;--cyan:#56d8ff;--violet:#9b7bff;--emerald:#4fe0b0;--rose:#ff7ba8;--accent:var(--cyan);--accent-soft:#56d8ff24;--font-display:"Space Grotesk Variable", "Space Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--step--1:clamp(.78rem, .76rem + .1vw, .84rem);--step-0:clamp(.95rem, .92rem + .15vw, 1.05rem);--step-1:clamp(1.15rem, 1.08rem + .35vw, 1.4rem);--step-2:clamp(1.5rem, 1.35rem + .75vw, 2.1rem);--step-3:clamp(2rem, 1.6rem + 2vw, 3.4rem);--step-4:clamp(2.6rem, 1.7rem + 4.4vw, 6rem);--gutter:clamp(1.25rem, 4vw, 3rem);--measure:62ch;--shell:1220px;--radius:14px;--radius-lg:22px;--shadow-panel:0 24px 70px -30px #000000e6;--shadow-glow:0 0 60px -14px var(--accent);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-contrast:more){:root{--ink-dim:#c3cbe8;--ink-faint:#8e9ac0;--line:#a0b9f54d}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--void);min-height:100svh;color:var(--ink);font-family:var(--font-display);font-size:var(--step-0);font-synthesis-weight:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}img,svg,canvas{max-width:100%;display:block}button,input,select{font:inherit;color:inherit}h1,h2,h3,h4{letter-spacing:-.025em;text-wrap:balance;font-weight:600;line-height:1.08}p{text-wrap:pretty}a{color:var(--accent);text-underline-offset:.22em;text-decoration-color:#ffffff40;transition:color .16s}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--accent);color:var(--void)}.shell{width:min(100% - var(--gutter) * 2, var(--shell));margin-inline:auto}.mono{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.04em}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3)}.skip-link{z-index:100;background:var(--void-3);border:1px solid var(--accent);color:var(--ink);border-radius:10px;padding:.6rem 1rem;text-decoration:none;transition:transform .18s;position:fixed;top:.6rem;left:.6rem;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.ai-assistant-root[data-v-3a2933d9]{z-index:80;position:fixed;bottom:1.5rem;right:1.5rem}.ai-trigger-btn[data-v-3a2933d9]{background:color-mix(in srgb, var(--void) 88%, var(--surface-dim));border:1px solid color-mix(in srgb, var(--cyan) 50%, var(--line-strong));color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);perspective:600px;border-radius:999px;align-items:center;gap:.85rem;padding:.65rem 1.35rem .65rem .85rem;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),border-color .28s,background .28s;animation:4.2s ease-in-out infinite alternate cosmic-idle-float-3a2933d9;display:inline-flex;position:relative;box-shadow:0 10px 30px #000000b3,0 0 25px #56d8ff40}@keyframes cosmic-idle-float-3a2933d9{0%{transform:translateY(0)rotate(0);box-shadow:0 10px 25px #000000b3,0 0 20px #56d8ff33}50%{transform:translateY(-8px)rotate(1deg);box-shadow:0 16px 36px #000000bf,0 0 30px #56d8ff59}to{transform:translateY(-2px)rotate(-.5deg);box-shadow:0 12px 28px #000000b3,0 0 22px #56d8ff40}}.sonar-wave[data-v-3a2933d9]{border:1px solid var(--cyan);pointer-events:none;opacity:0;border-radius:50%;width:2.8rem;height:2.8rem;position:absolute;top:50%;left:1.85rem;transform:translate(-50%,-50%)scale(.6)}.sonar-wave.wave-1[data-v-3a2933d9]{animation:3.6s cubic-bezier(.1,.8,.3,1) infinite sonar-ripple-3a2933d9}.sonar-wave.wave-2[data-v-3a2933d9]{animation:3.6s cubic-bezier(.1,.8,.3,1) 1.8s infinite sonar-ripple-3a2933d9}@keyframes sonar-ripple-3a2933d9{0%{opacity:.8;border-color:var(--cyan);transform:translate(-50%,-50%)scale(.6)}60%{opacity:.35;border-color:color-mix(in srgb, var(--cyan) 60%, var(--sol))}to{opacity:0;border-color:var(--sol);transform:translate(-50%,-50%)scale(2.4)}}.planet-system[data-v-3a2933d9]{perspective:500px;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;display:flex;position:relative}.planet-ring[data-v-3a2933d9]{border:2px solid #0000;border-top-color:var(--cyan);border-right-color:color-mix(in srgb, var(--cyan) 70%, var(--sol));border-bottom-color:color-mix(in srgb, var(--sol) 80%, transparent);width:3.2rem;height:3.2rem;box-shadow:0 0 8px color-mix(in srgb, var(--cyan) 80%, transparent);transform-style:preserve-3d;pointer-events:none;z-index:2;border-radius:50%;animation:4s linear infinite spin-orbital-ring-3a2933d9;position:absolute;top:50%;left:50%}.planet-ring-glow[data-v-3a2933d9]{border:1px dashed color-mix(in srgb, var(--cyan) 40%, transparent);pointer-events:none;z-index:1;border-radius:50%;width:3.4rem;height:3.4rem;animation:12s linear infinite reverse spin-orbital-ring-3a2933d9;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotateX(68deg)rotateY(15deg)}@keyframes spin-orbital-ring-3a2933d9{0%{transform:translate(-50%,-50%)rotateX(68deg)rotateY(15deg)rotate(0)}to{transform:translate(-50%,-50%)rotateX(68deg)rotateY(15deg)rotate(360deg)}}.moon-satellite[data-v-3a2933d9]{width:5px;height:5px;box-shadow:0 0 8px #fff, 0 0 14px var(--cyan);background:#fff;border-radius:50%;position:absolute;top:-3px;left:50%;transform:translate(-50%)}.planet-core[data-v-3a2933d9]{width:2rem;height:2rem;box-shadow:inset -2px -3px 6px #000000b3, inset 2px 2px 5px #ffffff80, 0 0 16px color-mix(in srgb, var(--cyan) 60%, transparent);z-index:3;background:radial-gradient(circle at 35% 30%,#b8f2ff 0%,#38bdf8 30%,#0284c7 60%,#082f49 90%,#020b18 100%);border-radius:50%;justify-content:center;align-items:center;transition:all .28s;animation:3s ease-in-out infinite alternate planet-pulse-core-3a2933d9;display:flex;position:relative}@keyframes planet-pulse-core-3a2933d9{0%{box-shadow:inset -2px -3px 6px #000000b3, 0 0 14px color-mix(in srgb, var(--cyan) 50%, transparent)}to{box-shadow:inset -2px -3px 6px #000000b3, 0 0 22px color-mix(in srgb, var(--cyan) 80%, transparent), 0 0 35px color-mix(in srgb, var(--sol) 30%, transparent)}}.planet-specular[data-v-3a2933d9]{filter:blur(.5px);background:#ffffffd9;border-radius:50%;width:6px;height:4px;position:absolute;top:3px;left:4px;transform:rotate(-30deg)}.sparkle[data-v-3a2933d9]{filter:drop-shadow(0 0 5px #fff);z-index:4;font-size:.85rem;animation:2.5s ease-in-out infinite alternate sparkle-twinkle-3a2933d9}@keyframes sparkle-twinkle-3a2933d9{0%{opacity:.85;transform:scale(.9)rotate(0)}50%{opacity:1;transform:scale(1.15)rotate(15deg)}to{opacity:.9;transform:scale(.95)rotate(-10deg)}}.ai-trigger-label[data-v-3a2933d9]{font-size:var(--step--1);letter-spacing:.02em;align-items:center;gap:.55rem;display:flex}.trigger-name[data-v-3a2933d9]{color:var(--ink);transition:color .2s}.status-live-beacon[data-v-3a2933d9]{justify-content:center;align-items:center;width:.6rem;height:.6rem;display:flex;position:relative}.beacon-dot[data-v-3a2933d9]{z-index:2;background:#10b981;border-radius:50%;width:.45rem;height:.45rem;box-shadow:0 0 8px #10b981}.beacon-pulse[data-v-3a2933d9]{z-index:1;background:#10b981;border-radius:50%;width:100%;height:100%;animation:1.8s cubic-bezier(0,0,.2,1) infinite beacon-ping-3a2933d9;position:absolute}@keyframes beacon-ping-3a2933d9{0%{opacity:.8;transform:scale(1)}75%,to{opacity:0;transform:scale(2.4)}}.ai-trigger-btn[data-v-3a2933d9]:hover{border-color:var(--cyan);background:color-mix(in srgb, var(--void) 75%, var(--surface-dim));box-shadow:0 20px 45px #000000d9, 0 0 40px #56d8ff99, 0 0 60px color-mix(in srgb, var(--sol) 30%, transparent);animation-play-state:paused;transform:translateY(-10px)scale(1.08)}.ai-trigger-btn:hover .trigger-name[data-v-3a2933d9]{color:#fff;text-shadow:0 0 10px var(--cyan)}.ai-trigger-btn:hover .planet-ring[data-v-3a2933d9]{border-top-color:#fff;border-right-color:var(--cyan);box-shadow:0 0 16px var(--cyan), 0 0 25px var(--sol);animation-duration:1.4s}.ai-trigger-btn:hover .planet-core[data-v-3a2933d9]{box-shadow:inset -2px -3px 6px #000000b3, 0 0 28px var(--cyan), 0 0 45px var(--sol);transform:scale(1.08)}.ai-trigger-btn:hover .sparkle[data-v-3a2933d9]{filter:drop-shadow(0 0 8px #fff) drop-shadow(0 0 12px var(--sol));transform:scale(1.3)rotate(30deg)}.ai-trigger-btn.is-active[data-v-3a2933d9]{border-color:var(--sol);box-shadow:0 0 30px color-mix(in srgb, var(--sol) 50%, transparent)}.ai-chat-window[data-v-3a2933d9]{border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#080b18f0;border-radius:20px;flex-direction:column;width:min(400px,100vw - 2rem);height:520px;max-height:calc(100vh - 7rem);display:flex;position:absolute;bottom:calc(100% + .8rem);right:0;overflow:hidden;box-shadow:0 20px 50px #000c,0 0 30px #56d8ff26}.ai-header[data-v-3a2933d9]{border-bottom:1px solid var(--line);background:#0e1326e6;justify-content:space-between;align-items:center;padding:.9rem 1.1rem;display:flex}.ai-header-profile[data-v-3a2933d9]{align-items:center;gap:.75rem;display:flex}.ai-avatar[data-v-3a2933d9]{background:linear-gradient(135deg, var(--cyan), var(--surface-dim));border:1px solid var(--cyan);border-radius:50%;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;display:flex;position:relative}.avatar-text[data-v-3a2933d9]{font-family:var(--font-mono);color:var(--void);font-size:.78rem;font-weight:700}.online-dot[data-v-3a2933d9]{border:2px solid var(--void);background:#10b981;border-radius:50%;width:.55rem;height:.55rem;position:absolute;bottom:-1px;right:-1px}.ai-profile-info[data-v-3a2933d9]{flex-direction:column;display:flex}.ai-name[data-v-3a2933d9]{align-items:center;gap:.4rem;font-size:.92rem;display:flex}.badge-ai[data-v-3a2933d9]{background:color-mix(in srgb, var(--cyan) 20%, transparent);border:1px solid color-mix(in srgb, var(--cyan) 40%, transparent);color:var(--cyan);border-radius:4px;padding:.1rem .35rem;font-size:.65rem}.close-btn[data-v-3a2933d9]{color:var(--ink-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.3rem;transition:all .15s;display:flex}.close-btn[data-v-3a2933d9]:hover{color:var(--ink);background:var(--surface-dim)}.ai-messages[data-v-3a2933d9]{flex-direction:column;flex:1;gap:.85rem;padding:1.1rem;display:flex;overflow-y:auto}.message-row[data-v-3a2933d9]{display:flex}.message-row.is-user[data-v-3a2933d9]{justify-content:flex-end}.message-row.is-model[data-v-3a2933d9]{justify-content:flex-start}.message-bubble[data-v-3a2933d9]{word-break:break-word;border-radius:14px;max-width:86%;padding:.75rem .95rem;font-size:.86rem;line-height:1.5}.message-row.is-user .message-bubble[data-v-3a2933d9]{background:color-mix(in srgb, var(--cyan) 18%, var(--surface-dim));border:1px solid color-mix(in srgb, var(--cyan) 40%, transparent);color:var(--ink);border-bottom-right-radius:2px}.message-row.is-model .message-bubble[data-v-3a2933d9]{border:1px solid var(--line);color:var(--ink-dim);background:#121830d9;border-bottom-left-radius:2px}.message-time[data-v-3a2933d9]{color:var(--ink-faint);text-align:right;margin-top:.4rem;font-size:.65rem;display:block}[data-v-3a2933d9] .md-p{margin:0 0 .6rem;line-height:1.55}[data-v-3a2933d9] .md-p:last-child{margin-bottom:0}[data-v-3a2933d9] .md-bold{color:#fff;font-weight:600}[data-v-3a2933d9] .md-em{color:var(--ink);font-style:italic}[data-v-3a2933d9] .md-h4{color:var(--cyan);margin:.7rem 0 .3rem;font-size:.92rem;font-weight:700}[data-v-3a2933d9] .md-h5{color:var(--sol);margin:.5rem 0 .25rem;font-size:.88rem;font-weight:600}[data-v-3a2933d9] .md-code{font-family:var(--font-mono);border:1px solid var(--line);color:var(--cyan);background:#00000073;border-radius:4px;padding:.15rem .4rem;font-size:.78rem}[data-v-3a2933d9] .md-link{color:var(--cyan);text-underline-offset:2px;text-decoration:underline}[data-v-3a2933d9] .md-ul,[data-v-3a2933d9] .md-ol{gap:.3rem;margin:.4rem 0 .6rem;padding-left:1.2rem;display:grid}[data-v-3a2933d9] .md-li{line-height:1.5}[data-v-3a2933d9] .md-li-num{margin-left:-1.2rem;line-height:1.5;list-style:none}[data-v-3a2933d9] .num-badge{color:var(--cyan);margin-right:.3rem;font-weight:700;display:inline-block}.typing-bubble[data-v-3a2933d9]{align-items:center;gap:.35rem;padding:.7rem 1rem;display:flex}.typing-bubble .dot[data-v-3a2933d9]{background:var(--cyan);opacity:.4;border-radius:50%;width:.45rem;height:.45rem;animation:1.2s ease-in-out infinite typing-dot-3a2933d9}.typing-bubble .dot[data-v-3a2933d9]:nth-child(2){animation-delay:.2s}.typing-bubble .dot[data-v-3a2933d9]:nth-child(3){animation-delay:.4s}@keyframes typing-dot-3a2933d9{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.error-banner[data-v-3a2933d9]{color:#fca5a5;background:#ef444426;border:1px solid #ef444459;border-radius:8px;align-items:center;gap:.5rem;padding:.6rem .8rem;font-size:.75rem;display:flex}.ai-suggestions[data-v-3a2933d9]{padding:0 1rem .8rem}.suggestions-title[data-v-3a2933d9]{color:var(--ink-faint);margin-bottom:.45rem;font-size:.7rem}.suggestions-chips[data-v-3a2933d9]{flex-wrap:wrap;gap:.35rem;display:flex}.suggestion-chip[data-v-3a2933d9]{background:var(--surface-dim);border:1px solid var(--line);color:var(--ink-dim);cursor:pointer;text-align:left;border-radius:999px;padding:.35rem .65rem;font-size:.75rem;transition:all .16s}.suggestion-chip[data-v-3a2933d9]:hover{border-color:var(--cyan);color:var(--cyan);background:color-mix(in srgb, var(--cyan) 10%, transparent)}.ai-input-bar[data-v-3a2933d9]{border-top:1px solid var(--line);background:#0c1022f2;align-items:center;gap:.5rem;padding:.8rem 1rem;display:flex}.chat-input[data-v-3a2933d9]{background:var(--surface-dim);border:1px solid var(--line);color:var(--ink);border-radius:999px;outline:none;flex:1;padding:.6rem .85rem;font-size:.84rem;transition:border-color .15s}.chat-input[data-v-3a2933d9]:focus{border-color:var(--cyan)}.send-btn[data-v-3a2933d9]{background:var(--cyan);border:1px solid var(--cyan);width:2.2rem;height:2.2rem;color:var(--void);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .18s;display:flex}.send-btn[data-v-3a2933d9]:hover:not(:disabled){background:var(--sol);border-color:var(--sol);transform:scale(1.05)}.send-btn[data-v-3a2933d9]:disabled{opacity:.4;cursor:not-allowed}.chat-slide-enter-active[data-v-3a2933d9],.chat-slide-leave-active[data-v-3a2933d9]{transition:all .26s cubic-bezier(.16,1,.3,1)}.chat-slide-enter-from[data-v-3a2933d9],.chat-slide-leave-to[data-v-3a2933d9]{opacity:0;transform:translateY(16px)scale(.96)}@media (width<=600px){.ai-assistant-root[data-v-3a2933d9]{bottom:1rem;right:1rem}.ai-chat-window[data-v-3a2933d9]{width:calc(100vw - 2rem);height:70vh}}code[data-v-6cb9c4a9]{border:1px solid var(--line);background:var(--surface-faint);color:var(--ink);font-family:var(--font-mono);white-space:nowrap;border-radius:5px;padding:.1em .38em .16em;font-size:.88em}.head[data-v-929e031c]{max-width:var(--measure);margin-bottom:clamp(2rem,5vw,3.5rem)}h2[data-v-929e031c]{font-size:var(--step-3);margin-top:.7rem}.lede[data-v-929e031c]{color:var(--ink-dim);font-size:var(--step-1);margin-top:1rem;line-height:1.5}.contact[data-v-cb2167bf]{border-top:1px solid var(--line);background:radial-gradient(90% 60% at 50% 100%,#ffc46b12,#0000 60%);padding-block:clamp(5rem,12vh,9rem)}.layout[data-v-cb2167bf]{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}.line[data-v-cb2167bf]{max-width:54ch;color:var(--ink-dim);font-size:var(--step-1);line-height:1.6}.line+.line[data-v-cb2167bf]{margin-top:1.2rem}.links[data-v-cb2167bf]{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.copy[data-v-cb2167bf]{border:1px solid var(--line-strong);background:var(--surface-faint);min-height:44px;color:var(--ink);cursor:pointer;border-radius:9px;margin-top:.8rem;padding:0 1rem;transition:border-color .16s,transform .16s}.copy[data-v-cb2167bf]:hover{border-color:var(--sol);transform:translateY(-1px)}.links a[data-v-cb2167bf],.link-btn[data-v-cb2167bf]{background:var(--void);width:100%;color:var(--ink);font-family:inherit;font-size:inherit;text-align:left;cursor:pointer;border:none;grid-template-columns:8rem minmax(0,1fr) auto;align-items:baseline;gap:1rem;padding:1.05rem 1.2rem;text-decoration:none;transition:background .16s;display:grid}.links a[data-v-cb2167bf]:hover,.link-btn[data-v-cb2167bf]:hover{background:var(--surface-faint)}.label[data-v-cb2167bf]{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.16em}.value[data-v-cb2167bf]{text-overflow:ellipsis;overflow:hidden}.arrow[data-v-cb2167bf]{color:var(--sol)}@media (width<=860px){.layout[data-v-cb2167bf]{grid-template-columns:1fr}.links a[data-v-cb2167bf]{grid-template-columns:6.5rem minmax(0,1fr) auto}}.cv-overlay[data-v-faf04da8]{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#04050ce0;justify-content:center;padding:80px 1.5rem 4rem;display:flex;position:fixed;inset:0;overflow-y:auto}.cv-toolbar[data-v-faf04da8]{z-index:110;border-bottom:1px solid var(--line-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0b0f1eeb;justify-content:space-between;align-items:center;padding:.8rem 2rem;display:flex;position:fixed;top:0;left:0;right:0}.cv-toolbar-title[data-v-faf04da8]{color:var(--sol);letter-spacing:.1em;text-transform:uppercase;font-size:.85rem}.cv-toolbar-actions[data-v-faf04da8]{gap:.75rem;display:flex}.cv-btn[data-v-faf04da8]{font-family:var(--font-mono);color:var(--ink);background:var(--surface-dim);border:1px solid var(--line-strong);cursor:pointer;border-radius:999px;align-items:center;gap:.5rem;padding:.45rem 1rem;font-size:.8rem;transition:all .18s;display:inline-flex}.cv-btn[data-v-faf04da8]:hover{background:var(--surface-hover);border-color:var(--cyan);color:var(--cyan)}.cv-btn.primary[data-v-faf04da8]{background:var(--cyan);color:var(--void);border-color:var(--cyan);font-weight:600}.cv-btn.primary[data-v-faf04da8]:hover{background:var(--sol);border-color:var(--sol)}.cv-container[data-v-faf04da8]{width:100%;max-width:1020px}.cv-sheet[data-v-faf04da8]{color:#1a202c;background:#fff;border-radius:16px;padding:2.5rem;font-size:.92rem;line-height:1.6;overflow:hidden;box-shadow:0 25px 80px -15px #0009}.cv-header[data-v-faf04da8]{color:#f8fafc;border-bottom:4px solid var(--sol);background:#0d1322;justify-content:space-between;gap:2rem;margin:-2.5rem -2.5rem 2rem;padding:2.5rem;display:flex}.cv-kicker[data-v-faf04da8]{color:var(--sol);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.4rem;font-size:.75rem}.cv-name[data-v-faf04da8]{letter-spacing:-.03em;color:#fff;margin:0;font-size:clamp(2rem,3.5vw,2.8rem);line-height:1.1}.cv-role[data-v-faf04da8]{color:var(--cyan);margin:.4rem 0 .2rem;font-size:1.15rem;font-weight:600}.cv-subline[data-v-faf04da8]{color:#94a3b8;max-width:50ch;font-size:.85rem}.cv-contact[data-v-faf04da8]{color:#cbd5e1;flex-direction:column;align-items:flex-end;gap:.35rem;font-size:.8rem;font-style:normal;display:flex}.cv-contact a[data-v-faf04da8]{color:#93c5fd;text-decoration:none}.cv-contact a[data-v-faf04da8]:hover{text-decoration:underline}.cv-section[data-v-faf04da8]{margin-bottom:2rem}.cv-section h2[data-v-faf04da8]{letter-spacing:.16em;text-transform:uppercase;color:#64748b;border-bottom:2px solid #e2e8f0;align-items:baseline;gap:.6rem;margin-bottom:1rem;padding-bottom:.4rem;font-size:.82rem;display:flex}.cv-section h2 span[data-v-faf04da8]{color:var(--sol);font-weight:700}.cv-profile .cv-prose p[data-v-faf04da8]{color:#334155;margin-bottom:.6rem}.cv-grid[data-v-faf04da8]{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:2.5rem;display:grid}.cv-timeline[data-v-faf04da8]{gap:1.5rem;display:grid}.cv-entry-head h3[data-v-faf04da8]{color:#0f172a;margin:0;font-size:1.05rem}.cv-meta[data-v-faf04da8]{color:#64748b;margin:.2rem 0 .5rem;font-size:.78rem}.cv-bullets[data-v-faf04da8]{color:#334155;margin:0;padding-left:1.2rem}.cv-bullets li[data-v-faf04da8]{margin-bottom:.35rem}.cv-stack[data-v-faf04da8]{color:#0284c7;margin-top:.5rem;font-size:.78rem}.cv-quote[data-v-faf04da8]{border-left:3px solid var(--sol);color:#475569;background:#f8fafc;margin:.6rem 0 0;padding:.5rem .8rem;font-size:.84rem;font-style:italic}.cv-quote cite[data-v-faf04da8]{color:#64748b;margin-top:.2rem;font-size:.75rem;font-style:normal;display:block}.cv-projects[data-v-faf04da8]{gap:1.1rem;display:grid}.cv-project-card[data-v-faf04da8]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.9rem}.cv-proj-header[data-v-faf04da8]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.4rem;display:flex}.cv-proj-name[data-v-faf04da8]{margin:0;font-size:.95rem}.cv-proj-name a[data-v-faf04da8]{color:#0284c7;font-weight:600;text-decoration:none}.cv-proj-name a[data-v-faf04da8]:hover{text-decoration:underline}.cv-proj-stack[data-v-faf04da8]{color:#64748b;font-size:.72rem}.cv-proj-desc[data-v-faf04da8]{color:#334155;margin:0;font-size:.84rem;line-height:1.45}.cv-education[data-v-faf04da8]{gap:1.2rem;margin:0;padding:0;list-style:none;display:grid}.cv-education h3[data-v-faf04da8]{color:#0f172a;margin:0;font-size:.95rem}.cv-school[data-v-faf04da8]{color:#0284c7;margin:.15rem 0;font-size:.8rem}.cv-detail[data-v-faf04da8]{color:#475569;margin:0;font-size:.82rem}.cv-skills[data-v-faf04da8]{gap:.8rem;display:grid}.cv-skill-group h4[data-v-faf04da8]{color:#0f172a;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .2rem;font-size:.78rem}.cv-skill-group p[data-v-faf04da8]{color:#64748b;margin:0;font-size:.8rem}.cv-languages[data-v-faf04da8]{color:#334155;gap:.4rem;margin:0;padding:0;font-size:.82rem;list-style:none;display:grid}.cv-facts[data-v-faf04da8]{color:#334155;margin:0 0 .8rem;padding-left:1.2rem;font-size:.84rem}.cv-facts li[data-v-faf04da8]{margin-bottom:.35rem}.cv-travels[data-v-faf04da8]{color:#64748b;font-size:.78rem;line-height:1.5}@media (width<=860px){.cv-grid[data-v-faf04da8]{grid-template-columns:1fr}.cv-header[data-v-faf04da8]{flex-direction:column;align-items:flex-start}.cv-contact[data-v-faf04da8]{align-items:flex-start}}@media print{.cv-overlay[data-v-faf04da8]{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;padding:0;position:static;overflow:visible}.cv-toolbar[data-v-faf04da8]{display:none!important}.cv-container[data-v-faf04da8]{max-width:100%}.cv-sheet[data-v-faf04da8]{box-shadow:none;border-radius:0;padding:0}.cv-header[data-v-faf04da8]{-webkit-print-color-adjust:exact;print-color-adjust:exact;margin:0 0 1.5rem;padding:1.5rem;background:#0f172a!important}}.hero[data-v-7c09a0f0]{z-index:1;pointer-events:none;align-items:center;min-height:100svh;padding-block:clamp(6rem,14vh,10rem) 8rem;display:flex;position:relative}.scrim[data-v-7c09a0f0]{background:radial-gradient(88% 85% at 27%,#04050cf5 0%,#04050ce6 30%,#04050c8c 55%,#04050c00 76%);position:absolute;inset:-8% -6% -14%;-webkit-mask-image:linear-gradient(#000 0% 60%,#0000 95%);mask-image:linear-gradient(#000 0% 60%,#0000 95%)}.inner[data-v-7c09a0f0]{max-width:44rem;position:relative}h1[data-v-7c09a0f0]{font-size:var(--step-4);letter-spacing:-.045em;margin:1.1rem 0 0;line-height:1.04}.line[data-v-7c09a0f0]{display:block}.accent[data-v-7c09a0f0]{background:linear-gradient(96deg, var(--sol), var(--cyan) 62%, var(--violet));color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:-.16em;padding-bottom:.16em}.intro[data-v-7c09a0f0]{max-width:37ch;color:var(--ink-dim);font-size:var(--step-1);margin-top:1.6rem;line-height:1.55}.actions[data-v-7c09a0f0]{pointer-events:auto;flex-wrap:wrap;gap:.7rem;margin-top:2.4rem;display:flex}.button[data-v-7c09a0f0]{border:1px solid var(--line-strong);color:var(--ink);font-size:var(--step--1);letter-spacing:.02em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;background:#090d1cb3;border-radius:999px;padding:.72rem 1.25rem;text-decoration:none;transition:border-color .18s,background .18s,transform .18s,color .18s}.button[data-v-7c09a0f0]:hover{border-color:var(--cyan);color:var(--cyan);background:#090d1ce6;transform:translateY(-1px)}.cue[data-v-7c09a0f0]{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.24em;pointer-events:auto;flex-direction:column;align-items:center;gap:.6rem;text-decoration:none;display:flex;position:absolute;bottom:2.2rem;left:50%;transform:translate(-50%)}.cue-line[data-v-7c09a0f0]{background:linear-gradient(to bottom, var(--ink-faint), transparent);transform-origin:top;width:1px;height:3rem;animation:2.6s ease-in-out infinite drop-7c09a0f0}@keyframes drop-7c09a0f0{0%,to{opacity:.4;transform:scaleY(.35)}50%{opacity:1;transform:scaleY(1)}}@media (width<=720px){.hero[data-v-7c09a0f0]{align-items:flex-end}.cue[data-v-7c09a0f0]{display:none}}.journey[data-v-13bd4974]{border-top:1px solid var(--line);padding-block:clamp(5rem,12vh,9rem)}.cv-grid[data-v-13bd4974]{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:clamp(1.5rem,3vw,2.5rem);margin-top:2rem;display:grid}.cv-column[data-v-13bd4974]{flex-direction:column;padding:clamp(1.4rem,2.6vw,2rem);display:flex}.cv-column-header[data-v-13bd4974]{border-bottom:1px solid var(--line);align-items:center;gap:.9rem;margin-bottom:1.6rem;padding-bottom:1.2rem;display:flex}.icon-bubble[data-v-13bd4974]{border-radius:50%;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;display:flex}.icon-bubble.cyan[data-v-13bd4974]{background:color-mix(in srgb, var(--cyan) 18%, transparent);color:var(--cyan);border:1px solid color-mix(in srgb, var(--cyan) 40%, transparent)}.icon-bubble.sol[data-v-13bd4974]{background:color-mix(in srgb, var(--sol) 18%, transparent);color:var(--sol);border:1px solid color-mix(in srgb, var(--sol) 40%, transparent)}.cv-column-header h3[data-v-13bd4974]{font-size:var(--step-1);letter-spacing:-.02em}.cv-entries[data-v-13bd4974]{gap:1.8rem;display:grid}.cv-entry[data-v-13bd4974]{border-bottom:1px dashed var(--line);padding-bottom:1.4rem;position:relative}.cv-entry[data-v-13bd4974]:last-child{border-bottom:none;padding-bottom:0}.entry-header[data-v-13bd4974]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.entry-title-wrap h4[data-v-13bd4974]{font-size:var(--step-0);color:var(--ink)}.company[data-v-13bd4974]{font-size:var(--step--1);color:var(--cyan);margin-top:.2rem}.period-badge[data-v-13bd4974]{background:var(--surface-dim);border:1px solid var(--line);color:var(--ink-dim);white-space:nowrap;border-radius:999px;padding:.2rem .55rem;font-size:.78rem}.points[data-v-13bd4974]{color:var(--ink-dim);font-size:var(--step--1);margin:.8rem 0 0;padding-left:1.2rem;line-height:1.6}.points li+li[data-v-13bd4974]{margin-top:.35rem}.detail[data-v-13bd4974]{color:var(--ink-dim);font-size:var(--step--1);margin-top:.6rem;line-height:1.6}.stack-pills[data-v-13bd4974]{flex-wrap:wrap;gap:.4rem;margin-top:.8rem;display:flex}.stack-pill[data-v-13bd4974]{background:var(--surface-dim);border:1px solid var(--line);color:var(--ink-faint);border-radius:6px;padding:.15rem .45rem;font-size:.74rem}.quote[data-v-13bd4974]{border-left:2px solid var(--sol);font-size:var(--step--1);color:var(--ink-dim);background:#ffc46b0f;border-radius:0 8px 8px 0;margin:.9rem 0 0;padding:.6rem .85rem;font-style:italic}.quote cite[data-v-13bd4974]{color:var(--sol);margin-top:.3rem;font-size:.76rem;font-style:normal;display:block}.extras-section[data-v-13bd4974]{margin-top:clamp(2.5rem,5vw,4rem)}.extras-title[data-v-13bd4974]{font-size:var(--step-0);color:var(--ink-dim);text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-mono);margin-bottom:1.2rem}.extras-grid[data-v-13bd4974]{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.5vw,1.8rem);display:grid}.extra-card[data-v-13bd4974]{flex-direction:column;gap:.6rem;padding:1.4rem;transition:transform .2s,border-color .2s;display:flex}.extra-card[data-v-13bd4974]:hover{border-color:var(--line-strong);transform:translateY(-2px)}.extra-card.is-featured[data-v-13bd4974]{border-color:color-mix(in srgb, var(--cyan) 40%, var(--line));background:radial-gradient(120% 120% at 50% 0,#56d8ff14,#0000);box-shadow:0 0 25px #56d8ff0f}.extra-card-top[data-v-13bd4974]{justify-content:space-between;align-items:center;display:flex}.featured-badge[data-v-13bd4974]{background:color-mix(in srgb, var(--cyan) 15%, transparent);border:1px solid color-mix(in srgb, var(--cyan) 35%, transparent);color:var(--cyan);letter-spacing:.04em;border-radius:999px;padding:.15rem .55rem;font-size:.72rem}.extra-icon[data-v-13bd4974]{font-size:1.4rem;line-height:1}.extra-card h4[data-v-13bd4974]{font-size:var(--step-0);color:var(--ink)}.extra-card p[data-v-13bd4974]{color:var(--ink-dim);font-size:var(--step--1);margin:0;line-height:1.6}.extra-sub[data-v-13bd4974]{border-top:1px dashed var(--line);padding-top:.6rem;color:var(--ink-faint)!important;margin-top:.4rem!important;font-size:.78rem!important}.cv-footer[data-v-13bd4974]{justify-content:center;margin-top:clamp(2rem,4vw,3rem);display:flex}.btn-cv-full[data-v-13bd4974]{color:var(--void);background:var(--cyan);border:1px solid var(--cyan);font-size:var(--step--1);cursor:pointer;box-shadow:0 0 20px color-mix(in srgb, var(--cyan) 28%, transparent);border-radius:999px;align-items:center;gap:.7rem;padding:.8rem 1.6rem;font-weight:600;transition:all .18s;display:inline-flex}.btn-cv-full[data-v-13bd4974]:hover{background:var(--sol);border-color:var(--sol);box-shadow:0 0 25px color-mix(in srgb, var(--sol) 40%, transparent);transform:translateY(-2px)}@media (width<=900px){.cv-grid[data-v-13bd4974],.extras-grid[data-v-13bd4974]{grid-template-columns:1fr}}.pill[data-v-7a7070df]{border:1px solid var(--line);color:var(--ink-dim);white-space:nowrap;border-radius:999px;align-items:center;gap:.45em;padding:.2em .7em .24em;display:inline-flex}.dot[data-v-7a7070df]{background:currentColor;border-radius:50%;width:.42em;height:.42em}.is-live[data-v-7a7070df]{color:var(--emerald);border-color:#4fe0b052}.is-live .dot[data-v-7a7070df]{animation:2.2s ease-in-out infinite pulse-dot-7a7070df;box-shadow:0 0 0 .28em #4fe0b02e}@keyframes pulse-dot-7a7070df{0%,to{transform:scale(1);box-shadow:0 0 0 .15em #4fe0b040,0 0 8px #4fe0b066}50%{transform:scale(1.15);box-shadow:0 0 0 .35em #4fe0b01a,0 0 14px #4fe0b0a6}}.is-prive[data-v-7a7070df]{color:var(--sol);border-color:#ffc46b4d}.is-interne[data-v-7a7070df]{color:var(--ink-faint)}.tags[data-v-831cc5b3]{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.tag[data-v-831cc5b3]{border:1px solid var(--line);background:var(--surface-faint);color:var(--ink-dim);white-space:nowrap;border-radius:7px;padding:.24rem .62rem .3rem}.dossier[data-v-1a8e9525]{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(170deg, color-mix(in srgb, var(--accent) 7%, transparent), #080b188c 42%);opacity:0;padding:clamp(1.5rem,3.4vw,2.8rem);scroll-margin-top:6rem;transition:opacity .7s,transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(18px)}.dossier.is-shown[data-v-1a8e9525]{opacity:1;transform:none}.head[data-v-1a8e9525]{border-bottom:1px solid var(--line);padding-bottom:1.6rem}.rank[data-v-1a8e9525]{background:var(--accent);color:var(--void);border-radius:5px;margin-right:.5rem;padding:.1em .45em;font-weight:700;display:inline-block}h3[data-v-1a8e9525]{font-size:var(--step-3);margin-top:.9rem}.tagline[data-v-1a8e9525]{max-width:58ch;color:var(--ink-dim);font-size:var(--step-1);margin-top:.7rem;line-height:1.5}.facts[data-v-1a8e9525]{flex-wrap:wrap;gap:.5rem 2.4rem;margin:1.5rem 0 0;display:flex}.facts dt[data-v-1a8e9525]{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.14em}.facts dd[data-v-1a8e9525]{font-size:var(--step--1);color:var(--ink-dim);margin:.3rem 0 0}.links[data-v-1a8e9525]{flex-wrap:wrap;gap:1.2rem;margin-top:1.3rem;display:flex}.links a[data-v-1a8e9525]{color:var(--accent);border-bottom:1px solid color-mix(in srgb, var(--accent) 35%, transparent);text-decoration:none}.links a[data-v-1a8e9525]:hover{border-bottom-color:currentColor}.columns[data-v-1a8e9525]{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:clamp(1.6rem,3vw,3rem);padding-block:1.8rem;display:grid}.column-title[data-v-1a8e9525]{border-bottom:1px solid var(--line);color:var(--accent);text-transform:uppercase;letter-spacing:.18em;padding-bottom:.7rem}.notes[data-v-1a8e9525]{gap:.9rem;margin:1.1rem 0 0;padding:0;list-style:none;display:grid}.notes li[data-v-1a8e9525]{color:var(--ink-dim);padding-left:1.2rem;line-height:1.6;position:relative}.notes li[data-v-1a8e9525]:before{content:"";background:var(--accent);width:.42rem;height:1px;position:absolute;top:.62em;left:0}.technical li[data-v-1a8e9525]{font-size:var(--step--1);line-height:1.65}.foot[data-v-1a8e9525]{border-top:1px solid var(--line);gap:1.4rem;padding-top:1.6rem;display:grid}.metrics[data-v-1a8e9525]{flex-wrap:wrap;gap:2rem;margin:0;padding:0;list-style:none;display:flex}.metric-value[data-v-1a8e9525]{color:var(--accent);font-size:var(--step-2);font-variant-numeric:tabular-nums;letter-spacing:-.02em;display:block}.metric-label[data-v-1a8e9525]{color:var(--ink-faint)}.projects[data-v-4b634d36]{padding-block:clamp(5rem,12vh,9rem)}.project-tools[data-v-4b634d36]{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(110deg, var(--surface-faint), transparent);align-items:end;gap:.8rem;margin:-1rem 0 2.5rem;padding:1rem;display:flex}.project-tools label[data-v-4b634d36]{color:var(--ink-faint);flex:1;gap:.4rem;display:grid}.project-tools input[data-v-4b634d36]{border:1px solid var(--line-strong);background:var(--void);min-height:44px;color:var(--ink);font:inherit;border-radius:9px;padding:0 .9rem}.filter-pills[data-v-4b634d36]{gap:.35rem;display:flex}.filter-pills button[data-v-4b634d36],.empty button[data-v-4b634d36]{border:1px solid var(--line);min-height:44px;color:var(--ink-dim);cursor:pointer;background:0 0;border-radius:999px;padding:0 .9rem}.filter-pills button.active[data-v-4b634d36]{border-color:var(--cyan);color:var(--void);background:var(--cyan)}.result-count[data-v-4b634d36]{color:var(--ink-faint);padding-bottom:.7rem}.empty[data-v-4b634d36]{color:var(--ink-dim);padding:2rem}.layout[data-v-4b634d36]{grid-template-columns:15rem minmax(0,1fr);align-items:start;gap:clamp(2rem,4vw,4rem);display:grid}.index[data-v-4b634d36]{position:sticky;top:5.5rem}.index ol[data-v-4b634d36]{counter-reset:none;gap:.1rem;margin:0;padding:0;list-style:none;display:grid}.index a[data-v-4b634d36]{color:var(--ink-faint);font-size:var(--step--1);border-radius:9px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:.6rem;padding:.42rem .6rem;text-decoration:none;transition:background .16s,color .16s;display:grid}.index a[data-v-4b634d36]:hover{color:var(--ink);background:var(--surface-faint)}.index a.is-current[data-v-4b634d36]{color:var(--ink);background:color-mix(in srgb, var(--accent) 12%, transparent)}.dot[data-v-4b634d36]{background:var(--accent);opacity:.45;border-radius:50%;width:.4rem;height:.4rem;transition:opacity .16s}.index a.is-current .dot[data-v-4b634d36]{opacity:1;box-shadow:0 0 0 .2rem color-mix(in srgb, var(--accent) 22%, transparent)}.rank[data-v-4b634d36]{color:var(--ink-faint)}.name[data-v-4b634d36]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stack[data-v-4b634d36]{gap:clamp(1.5rem,3vw,2.5rem);display:grid}@media (width<=940px){.project-tools[data-v-4b634d36]{flex-direction:column;align-items:stretch}.result-count[data-v-4b634d36]{padding:0}.layout[data-v-4b634d36]{grid-template-columns:1fr}.index[data-v-4b634d36]{border-bottom:1px solid var(--line);margin-bottom:.5rem;padding-bottom:1.5rem;position:static;overflow-x:auto}.index ol[data-v-4b634d36]{grid-auto-columns:max-content;grid-auto-flow:column;gap:.35rem}.index .name[data-v-4b634d36]{max-width:9rem}}.foot[data-v-2bf64e21]{border-top:1px solid var(--line);color:var(--ink-faint);padding-block:2.4rem 3rem}.row[data-v-2bf64e21]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;display:flex}.note[data-v-2bf64e21]{flex:22rem;min-width:0}.top[data-v-2bf64e21]{color:var(--ink-dim);text-decoration:none}.top[data-v-2bf64e21]:hover{color:var(--cyan)}.bar[data-v-41fea1e8]{z-index:20;border-bottom:1px solid #0000;padding-block:.9rem;transition:background .26s,border-color .26s,padding .26s;position:fixed;top:0;left:0;right:0}.bar.is-compact[data-v-41fea1e8]{border-bottom-color:var(--line);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);background:#04050cd1;padding-block:.55rem}.row[data-v-41fea1e8]{justify-content:space-between;align-items:center;gap:1.4rem;display:flex}.brand[data-v-41fea1e8]{color:var(--ink);white-space:nowrap;align-items:baseline;gap:.6rem;text-decoration:none;display:flex}.mark[data-v-41fea1e8]{background:var(--sol);border-radius:50%;align-self:center;width:.55rem;height:.55rem;box-shadow:0 0 .7rem .1rem #ffc46b8c}.brand-name[data-v-41fea1e8]{letter-spacing:-.02em;font-weight:600}.brand-role[data-v-41fea1e8]{color:var(--ink-faint)}nav ul[data-v-41fea1e8]{gap:1.3rem;margin:0;padding:0;list-style:none;display:flex}nav a[data-v-41fea1e8]{color:var(--ink-dim);text-decoration:none;transition:color .16s}nav a[data-v-41fea1e8]:hover{color:var(--ink)}.actions[data-v-41fea1e8]{align-items:center;gap:.8rem;display:flex}.audio-toggle[data-v-41fea1e8]{border:1px solid var(--line-strong);background:var(--surface-faint);color:var(--ink-dim);font-size:var(--step--1);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .75rem;transition:all .18s;display:inline-flex}.audio-toggle[data-v-41fea1e8]:hover{color:var(--ink);border-color:var(--cyan);background:var(--surface-dim)}.audio-toggle.is-active[data-v-41fea1e8]{border-color:var(--cyan);color:var(--cyan);background:color-mix(in srgb, var(--cyan) 12%, transparent);box-shadow:0 0 10px color-mix(in srgb, var(--cyan) 25%, transparent)}.audio-icon[data-v-41fea1e8]{font-size:.9em}.ai-nav-btn[data-v-41fea1e8]{background:color-mix(in srgb, var(--cyan) 16%, var(--surface-dim));border:1px solid color-mix(in srgb, var(--cyan) 45%, transparent);color:var(--cyan);cursor:pointer;box-shadow:0 0 12px color-mix(in srgb, var(--cyan) 20%, transparent);border-radius:999px;align-items:center;gap:.35rem;padding:.42rem .85rem;transition:all .18s;display:inline-flex}.ai-nav-btn[data-v-41fea1e8]:hover{background:var(--cyan);border-color:var(--cyan);color:var(--void);box-shadow:0 0 18px color-mix(in srgb, var(--cyan) 45%, transparent);transform:translateY(-1px)}.cv[data-v-41fea1e8]{color:var(--void);white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #fff;border-radius:999px;padding:.42rem .95rem;font-weight:600;text-decoration:none;transition:all .18s;box-shadow:0 0 14px #fff3}.cv[data-v-41fea1e8]:hover{background:var(--cyan);border-color:var(--cyan);color:var(--void);box-shadow:0 0 16px color-mix(in srgb, var(--cyan) 40%, transparent);transform:translateY(-1px)}@media (width<=1080px){.brand-role[data-v-41fea1e8]{display:none}}@media (width<=860px){nav[data-v-41fea1e8],.audio-label[data-v-41fea1e8]{display:none}}.skills[data-v-d0083133]{border-top:1px solid var(--line);padding-block:clamp(5rem,12vh,9rem)}.grid[data-v-d0083133]{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--void);grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr));gap:1px;display:grid;overflow:hidden}.group[data-v-d0083133]{background:var(--void);height:100%;box-shadow:0 0 0 1px var(--line);padding:clamp(1.4rem,2.6vw,2rem)}.group h3[data-v-d0083133]{font-size:var(--step-1)}.note[data-v-d0083133]{color:var(--ink-dim);font-size:var(--step--1);margin:.8rem 0 1.3rem;line-height:1.65}.stage[data-v-499eeabd]{position:relative}.viewport[data-v-499eeabd]{z-index:0;position:fixed;inset:0}.is-failed .viewport[data-v-499eeabd]{display:none}.canvas[data-v-499eeabd]{width:100%;height:100%;display:block}.markers[data-v-499eeabd]{pointer-events:none;position:absolute;inset:0}.marker[data-v-499eeabd]{color:var(--ink-dim);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);will-change:transform, opacity;background:#0609148c;border:1px solid #0000;border-radius:999px;align-items:center;gap:.5rem;padding:.3rem .7rem .34rem .5rem;transition:color .18s,border-color .18s,background .18s;display:flex;position:absolute;top:0;left:0}.marker[data-v-499eeabd]:hover,.marker.is-hover[data-v-499eeabd]{color:var(--ink);border-color:color-mix(in srgb, var(--marker-accent) 45%, transparent)}.marker.is-active[data-v-499eeabd]{color:var(--void);background:var(--marker-accent);border-color:var(--marker-accent)}.marker-dot[data-v-499eeabd]{background:var(--marker-accent);width:.45rem;height:.45rem;box-shadow:0 0 0 .22rem color-mix(in srgb, var(--marker-accent) 22%, transparent);border-radius:50%}.marker.is-active .marker-dot[data-v-499eeabd]{background:var(--void);box-shadow:none}.marker-code[data-v-499eeabd]{color:var(--ink-faint);letter-spacing:.1em;font-size:.72em}.marker.is-active .marker-code[data-v-499eeabd]{color:#04050c99}@media (width<=780px){.marker-name[data-v-499eeabd],.marker-code[data-v-499eeabd]{display:none}.marker[data-v-499eeabd]{padding:.34rem}}.system[data-v-4cba534c]{z-index:1;pointer-events:none;flex-direction:column;justify-content:flex-end;min-height:250svh;padding-block:6rem clamp(2rem,6vh,4rem);display:flex;position:relative}.inner[data-v-4cba534c]{justify-content:flex-end;width:100%;display:flex;position:sticky;bottom:clamp(2rem,6vh,4rem)}.brief[data-v-4cba534c]{pointer-events:auto;width:min(100%,33rem);box-shadow:var(--shadow-panel);border-color:color-mix(in srgb, var(--accent,var(--line)) 32%, var(--line));padding:clamp(1.25rem,2.4vw,1.9rem)}.hint[data-v-4cba534c]{border:1px dashed var(--line-strong);color:var(--ink-faint);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0609149e;border-radius:999px;margin-inline:auto;padding:.55rem 1.1rem .6rem}.brief-top[data-v-4cba534c]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.close[data-v-4cba534c]{border:1px solid var(--line);color:var(--ink-faint);cursor:pointer;background:0 0;border-radius:8px;padding:.2rem .45rem;line-height:1}.close[data-v-4cba534c]:hover{color:var(--ink);border-color:var(--line-strong)}h2[data-v-4cba534c]{font-size:var(--step-2);margin-top:.7rem}.tagline[data-v-4cba534c]{color:var(--ink-dim);margin-top:.6rem}.meta[data-v-4cba534c]{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:1rem;display:flex}.period[data-v-4cba534c]{color:var(--ink-faint)}.metrics[data-v-4cba534c]{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.2rem 0;padding:1rem 0;list-style:none;display:grid}.metric-value[data-v-4cba534c]{color:var(--accent);font-size:var(--step-1);font-variant-numeric:tabular-nums;display:block}.metric-label[data-v-4cba534c]{color:var(--ink-faint)}.brief-actions[data-v-4cba534c]{flex-wrap:wrap;gap:1rem;margin-top:1.2rem;display:flex}.link[data-v-4cba534c]{color:var(--accent);border-bottom:1px solid #0000;text-decoration:none}.link[data-v-4cba534c]:hover{border-bottom-color:currentColor}@media (width<=900px){.system[data-v-4cba534c]{padding-block:5rem 1.5rem}.brief[data-v-4cba534c]{width:100%}}.content[data-v-08446cab]{z-index:2;background:var(--void);border-top:1px solid var(--line);position:relative;box-shadow:0 -40px 80px -30px #000000e6}
