*{padding:0;margin:0;box-sizing:border-box}body,html{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;overflow:hidden}.canvas{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh}.canvas.has-cursor-grab{cursor:grab}.canvas.has-cursor-grabbing{cursor:grabbing}.canvas.has-cursor-pointer{cursor:pointer}.threejs-journey{display:none;flex-direction:column;justify-content:flex-end;position:absolute;bottom:40px;right:40px;width:420px;-webkit-user-select:none;user-select:none}.threejs-journey.is-active{display:flex}.threejs-journey .message{position:absolute;bottom:0;right:0;font-family:Comic Neue,cursive;font-weight:700;color:#fff;font-size:18px;opacity:0;transform:translateY(120px);transition:transform .5s cubic-bezier(.5,0,.25,1),opacity .5s .2s cubic-bezier(.5,0,.25,1)}.threejs-journey .message.is-visible{opacity:1}.threejs-journey .boy{position:absolute;bottom:100%;left:20px;width:132px;height:118px;overflow:hidden;pointer-events:none}.threejs-journey .boy .variant{position:absolute;top:0;left:0;width:112px;height:100%;transform:translateY(100%);transition:transform .15s ease-in}.threejs-journey .boy .variant.is-yay{background:url(/assets/boyYay-DyYK-NEy.png)}.threejs-journey .boy .variant.is-shrugging{background:url(/assets/boyShrugging-B0epdl_S.png)}.threejs-journey.is-hover-yes .boy .variant.is-yay,.threejs-journey.is-hover-no .boy .variant.is-shrugging,.threejs-journey.is-hover-none .boy .variant.is-hi{transform:translateY(0);transition-delay:.1s;transition-timing-function:ease-out}.threejs-journey .boy .is-hi .body{position:absolute;top:0;left:0;width:100%;height:100%;background:url(/assets/boyHiBody-DHJ5Gzs3.png)}.threejs-journey .boy .is-hi .arm{position:absolute;bottom:0;right:0;width:49px;height:69px;background:url(data:image/png;base64,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);animation:boyArmWave 3s infinite ease-in-out;transform-origin:30% 90%}@keyframes boyArmWave{0%{transform:rotate(0)}2.5%{transform:rotate(15deg)}7.5%{transform:rotate(-15deg)}12.5%{transform:rotate(15deg)}17.5%{transform:rotate(-15deg)}20%{transform:rotate(0)}to{transform:rotate(0)}}.threejs-journey .message .bubble{position:relative;padding:20px 30px;border:2px solid #ffffff;border-radius:8px;background:linear-gradient(#fdb572ab,#fdb5721a)}.threejs-journey .message .tip{position:absolute;width:12px;height:16px;left:calc(100% - 1px);bottom:13px;background:url("data:image/svg+xml,%3csvg%20width='12'%20height='15'%20viewBox='0%200%2012%2015'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.5%207.5L1%201V14L10.5%207.5Z'%20fill='%23f8c684'/%3e%3cpath%20d='M10.5%207.5L11.0647%208.32531C11.3371%208.13891%2011.5%207.83009%2011.5%207.5C11.5%207.16991%2011.3371%206.86109%2011.0647%206.67469L10.5%207.5ZM0.435316%201.82531L9.93532%208.32531L11.0647%206.67469L1.56468%200.174693L0.435316%201.82531ZM9.93532%206.67469L0.435316%2013.1747L1.56468%2014.8253L11.0647%208.32531L9.93532%206.67469Z'%20fill='white'/%3e%3c/svg%3e")}.threejs-journey .message.is-answers{display:flex;justify-content:flex-end}.threejs-journey .message .answer{position:relative;display:flex;align-items:center;padding:10px 15px;margin-left:20px;border-radius:8px;text-decoration:none;cursor:pointer;overflow:hidden}.threejs-journey .message .answer .background{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:8px}.threejs-journey .message .answer .hover{position:absolute;top:0;left:0;width:100%;height:100%;background:#fff;transform-origin:0 0;transform:scaleX(0);transition:transform ease-in-out .2s;will-change:transform}.threejs-journey .message .answer:hover .hover{transform:scaleX(1)}.threejs-journey .message .answer .label{position:relative}.threejs-journey .message .answer.is-no{color:#fff}.threejs-journey .message .answer.is-no .background{border:2px solid #ffffff;background:linear-gradient(#fdb5721a,#fdb572ab);color:#fff}.threejs-journey .message .answer.is-yes{color:#feae69}.threejs-journey .message .answer.is-yes .background{background:#fff;opacity:.75}.threejs-journey .message .answer.is-no .hover{transform-origin:100% 0;opacity:.2}.opening-overlay{--opening-accent: #9cffd0;--opening-accent-strong: #5bffb1;--opening-copy: rgba(246, 255, 250, .92);--opening-muted: rgba(219, 255, 233, .58);position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 44%,rgba(103,255,181,.16),transparent 22%),radial-gradient(circle at 50% 50%,rgba(52,110,88,.38),transparent 52%),#050807;opacity:1}.opening-overlay__backdrop,.opening-overlay__grid,.opening-overlay__halo{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.opening-overlay__backdrop{background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:100% 4px,4px 100%;opacity:.18;mix-blend-mode:screen}.opening-overlay__grid{background:radial-gradient(circle at center,rgba(118,255,191,.18),transparent 12%),linear-gradient(180deg,rgba(255,255,255,.02),transparent 38%,rgba(255,255,255,.03));transform:perspective(900px) rotateX(72deg) translateY(36%);transform-origin:center center;opacity:.55}.opening-overlay__halo{background:radial-gradient(circle at center,rgba(112,255,194,.25),transparent 17%),radial-gradient(circle at center,rgba(112,255,194,.07),transparent 36%);filter:blur(12px)}.opening-overlay__inner{position:relative;z-index:1;width:min(92vw,760px);padding:48px 32px 36px;text-align:center}.opening-overlay__eyebrow{margin-bottom:14px;color:var(--opening-muted);font:600 12px/1.2 SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;letter-spacing:.48em;text-transform:uppercase}.opening-overlay__signal{color:var(--opening-accent);font:700 clamp(48px,10vw,90px)/1 "SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;letter-spacing:.08em;text-shadow:0 0 10px rgba(156,255,208,.9),0 0 28px rgba(91,255,177,.6)}.opening-overlay__title-wrap{margin-top:8px;opacity:0}.opening-overlay__title{color:var(--opening-copy);font:700 clamp(44px,9vw,92px)/.92 "Comic Neue","Trebuchet MS",sans-serif;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 10px 30px rgba(0,0,0,.35),0 0 18px rgba(255,255,255,.18)}.opening-overlay__subtitle{max-width:520px;margin:14px auto 0;color:#f4fff8c7;font:500 clamp(14px,2vw,18px)/1.6 "Trebuchet MS","Segoe UI",sans-serif;letter-spacing:.06em}.opening-overlay__progress-wrap{width:min(72vw,300px);margin:28px auto 0}.opening-overlay__progress-label{margin-bottom:10px;color:var(--opening-muted);font:600 12px/1.2 SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;letter-spacing:.24em;text-transform:uppercase}.opening-overlay__progress-bar{height:8px;padding:1px;border:1px solid rgba(193,255,220,.3);border-radius:999px;background:#ffffff0a;overflow:hidden}.opening-overlay__progress-fill{display:block;width:100%;height:100%;transform-origin:0 50%;transform:scaleX(.02);border-radius:inherit;background:linear-gradient(90deg,#82ffc6b3,#5bffb1);box-shadow:0 0 14px #5bffb18c,0 0 28px #5bffb13d}.opening-overlay__enter{margin-top:26px;padding:16px 26px;border:1px solid rgba(190,255,218,.4);border-radius:999px;background:linear-gradient(180deg,#ffffff14,#93ffca0f);color:#f4fff8f0;font:700 14px/1 SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;letter-spacing:.24em;text-transform:uppercase;opacity:0;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.opening-overlay__enter:hover:not(:disabled){transform:translateY(-2px);border-color:#beffdab8;background:linear-gradient(180deg,#ffffff1f,#93ffca1f)}.opening-overlay__enter:disabled{cursor:wait;opacity:0}.opening-overlay__hint{margin-top:12px;color:#e1ffeb85;font:500 12px/1.4 SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;opacity:0}.opening-overlay__reference{position:absolute;left:50%;top:50%;z-index:2;width:min(72vw,320px);aspect-ratio:1.08 / 1;transform:translate(-50%,-50%);opacity:0;pointer-events:none;filter:drop-shadow(0 0 18px rgba(114,255,196,.28))}.opening-overlay__reference-shell{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#000;mask-image:radial-gradient(ellipse at center,#000 0 48%,transparent 78%);-webkit-mask-image:radial-gradient(ellipse at center,#000 0 48%,transparent 78%)}.opening-overlay__reference-video{position:absolute;left:50%;top:50%;width:min(82vw,360px);height:auto;transform:translate(-50%,-46%) scale(2.88);mix-blend-mode:screen;filter:saturate(1.08) contrast(1.24) brightness(1.05) blur(.1px);transform-origin:center center}.opening-overlay__reference-rebuild{position:absolute;left:50%;top:53%;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 20px;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.opening-overlay__reference-rebuild:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:radial-gradient(circle at center,rgba(79,255,177,.14),rgba(79,255,177,.04) 54%,transparent 82%);filter:blur(12px)}.opening-overlay__reference-rebuild:after{content:"";position:absolute;left:12%;right:12%;top:50%;height:1px;background:linear-gradient(90deg,transparent,rgba(108,255,196,.3),transparent);transform:translateY(-50%)}.opening-overlay__reference-word{position:relative;z-index:1;color:#f2fff8;font:700 clamp(24px,4.2vw,36px)/1 "Microsoft YaHei","PingFang SC","Trebuchet MS",sans-serif;letter-spacing:.14em;text-shadow:0 0 8px rgba(96,255,188,.95),0 0 18px rgba(96,255,188,.65),0 0 30px rgba(96,255,188,.28);white-space:nowrap}.opening-overlay__reference-glyph{position:relative;z-index:1;width:10px;height:10px;border-radius:50%;background:#60ffbceb;box-shadow:0 0 10px #60ffbce6,0 0 24px #60ffbc57}.opening-overlay__reference-glyph:before,.opening-overlay__reference-glyph:after{content:"";position:absolute;left:50%;top:50%;background:#60ffbcd1;transform:translate(-50%,-50%)}.opening-overlay__reference-glyph:before{width:2px;height:20px}.opening-overlay__reference-glyph:after{width:20px;height:2px}.opening-overlay.is-playing{background:#000}.opening-overlay.is-playing .opening-overlay__backdrop,.opening-overlay.is-playing .opening-overlay__grid,.opening-overlay.is-playing .opening-overlay__halo,.opening-overlay.is-playing .opening-overlay__spark{opacity:0}.opening-overlay__spark{position:absolute;left:50%;top:50%;width:14px;height:14px;opacity:0;pointer-events:none}.opening-overlay__spark:before,.opening-overlay__spark:after{content:"";position:absolute;left:50%;top:50%;background:#7dffc4f2;box-shadow:0 0 12px #7dffc4b8;transform:translate(-50%,-50%)}.opening-overlay__spark:before{width:2px;height:100%}.opening-overlay__spark:after{width:100%;height:2px}.opening-overlay__spark--a{transform:translate(-142px,-70px)}.opening-overlay__spark--b{transform:translate(108px,-18px)}.opening-overlay__spark--c{transform:translate(72px,66px)}.opening-overlay.is-awaiting-enter .opening-overlay__signal{animation:openingPulse 1.9s ease-in-out infinite}.opening-overlay.is-exiting{pointer-events:none}@keyframes openingPulse{0%,to{transform:translateY(0);text-shadow:0 0 10px rgba(156,255,208,.9),0 0 28px rgba(91,255,177,.6)}50%{transform:translateY(-3px);text-shadow:0 0 14px rgba(156,255,208,1),0 0 36px rgba(91,255,177,.72)}}@media (max-width: 720px){.opening-overlay__inner{padding:40px 20px 30px}.opening-overlay__eyebrow{letter-spacing:.34em}.opening-overlay__enter{width:100%;max-width:320px;letter-spacing:.18em}.opening-overlay__reference{width:min(82vw,280px);transform:translate(-50%,-50%)}.opening-overlay__reference-video{width:min(90vw,310px);transform:translate(-50%,-46%) scale(2.94)}.opening-overlay__reference-word{font-size:clamp(20px,5vw,30px);letter-spacing:.12em}}
