:root{--bg: #05070A;--space: #0A0E13;--metal: #1D252F;--titanium: #C7D0D9;--text: #F4F6F8;--text-2: #929BA7;--orange: #FF6A35;--amber: #FFB16E;--accent: #32E98B;--ease: cubic-bezier(.22, .61, .36, 1);--font: "Helvetica Neue", "PingFang SC", "Microsoft YaHei", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);overflow:hidden;-webkit-font-smoothing:antialiased}button{font-family:inherit;color:var(--text);background:none;border:none;cursor:pointer}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:2px}::selection{background:#ff6a3559}.canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}.ui{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none}.ui button,.ui a,.ui input,.ui .detail,.ui .capsule,.ui .keepsake,.ui .wall{pointer-events:auto}.brand{position:absolute;top:24px;left:26px;display:flex;align-items:center;gap:10px;animation:fadeIn .9s var(--ease) .4s both;transition:opacity .22s var(--ease)}.brand:hover{opacity:.8}.brand__mark{width:26px;height:26px;display:block}.brand__text{height:17px;width:auto;display:block}.intro{position:absolute;top:0;right:0;bottom:0;left:0}.intro__caption{position:absolute;left:32px;bottom:32px;display:flex;flex-direction:column;gap:6px;animation:fadeUp .9s var(--ease) both}.intro__caption-main{font-size:11px;letter-spacing:.42em;color:var(--titanium)}.intro__caption-stage{font-size:10px;letter-spacing:.3em;color:var(--accent)}.intro__skip{position:absolute;right:28px;top:24px;font-size:12px;letter-spacing:.22em;color:var(--text-2);padding:10px 18px;border:1px solid rgba(199,208,217,.22);background:#0a0e138c;transition:color .22s var(--ease),border-color .22s var(--ease)}.intro__skip:hover{color:var(--text);border-color:var(--amber)}.hero{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:0;opacity:0;visibility:hidden;transition:opacity .18s var(--ease),visibility .18s}.hero--in{opacity:1;visibility:visible;transition:opacity .6s var(--ease),visibility 0ms}.hero--in>*{animation:fadeUp .8s var(--ease) both}.hero--in .hero__tag{animation-delay:.1s}.hero--in .hero__title{animation-delay:.26s}.hero--in .hero__sub{animation-delay:.48s}.hero--in .hero__en{animation-delay:.62s}.hero--in .hero__cta{animation-delay:.9s}.hero--in .hero__hint{animation-delay:1.05s}.hero__tag{font-size:11px;letter-spacing:.4em;color:var(--accent);margin-bottom:26px;text-shadow:0 1px 12px rgba(3,10,6,.85)}.hero__title{display:flex;flex-direction:column;gap:8px;font-weight:700}.hero__title-cn{font-size:clamp(30px,4.6vw,52px);letter-spacing:.14em;color:#fff;font-weight:700;text-shadow:0 3px 24px rgba(3,10,6,.95),0 1px 8px rgba(3,10,6,.85),0 0 56px rgba(50,233,139,.25)}.hero__title-sub{font-size:clamp(15px,2vw,21px);letter-spacing:.34em;color:#fff;font-weight:500;text-shadow:0 2px 18px rgba(3,10,6,.9),0 1px 6px rgba(3,10,6,.8)}.hero__sub{margin-top:22px;font-size:15px;color:#fff;letter-spacing:.08em;text-shadow:0 2px 14px rgba(3,10,6,.9),0 1px 5px rgba(3,10,6,.75)}.hero__en{margin-top:10px;font-size:11px;letter-spacing:.3em;color:#ffffffd9;line-height:1.9;text-shadow:0 2px 12px rgba(3,10,6,.85)}.hero__cta{margin-top:34px;padding:14px 44px;font-size:14px;letter-spacing:.3em;color:var(--text);border:1px solid rgba(50,233,139,.6);background:#32e98b1a;box-shadow:0 2px 18px #03090666;display:inline-flex;align-items:center;gap:12px;transition:background .24s var(--ease),box-shadow .24s var(--ease),transform .24s var(--ease)}.hero__cta:hover{background:#32e98b38;box-shadow:0 0 34px #32e98b4d;transform:translateY(-1px)}.hero__cta-arrow{transition:transform .24s var(--ease)}.hero__cta:hover .hero__cta-arrow{transform:translate(4px)}.hero__hint{margin-top:18px;font-size:10px;letter-spacing:.34em;color:#ffffffd1;text-shadow:0 2px 12px rgba(3,10,6,.85)}.monument-caption{font-size:40px;font-weight:600;letter-spacing:.5em;text-indent:.5em;white-space:nowrap;color:#f4f6f8;text-shadow:0 0 26px rgba(50,233,139,.45),0 2px 16px rgba(0,0,0,.85);animation:fadeIn .7s var(--ease) both}.controls{position:absolute;right:26px;bottom:26px;display:flex;align-items:center;gap:10px;animation:fadeUp .7s var(--ease) both}.controls__btn{font-size:12px;letter-spacing:.14em;color:var(--text-2);padding:10px 16px;border:1px solid rgba(199,208,217,.16);background:#0a0e1399;transition:color .22s var(--ease),border-color .22s var(--ease)}.controls__btn:hover{color:var(--text);border-color:var(--accent)}.controls__btn.is-on{color:var(--accent);border-color:#32e98b8c}.controls__btn--icon{font-size:14px;padding:8px 13px}.controls__btn b{color:var(--accent);margin-left:4px}.wall{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#0a0e13b8,#05070af0);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;align-items:center;padding:64px 26px 40px;overflow-y:auto;animation:fadeIn .32s var(--ease) both}.wall__close{position:absolute;top:24px;right:26px;color:var(--text-2);font-size:16px;padding:8px;transition:color .22s var(--ease)}.wall__close:hover{color:var(--text)}.wall__head{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:32px}.wall__title{font-size:13px;letter-spacing:.5em;color:var(--titanium);text-indent:.5em}.wall__search{width:min(420px,86vw);padding:10px 14px;font-size:13px;letter-spacing:.04em;color:var(--text);background:#05070a99;border:1px solid rgba(199,208,217,.18);outline:none;transition:border-color .22s var(--ease)}.wall__search::placeholder{color:#929ba799}.wall__search:focus{border-color:var(--amber)}.wall__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;width:min(1080px,92vw)}.wall__card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 12px 18px;border:1px solid rgba(199,208,217,.14);background:#0a0e1380;transition:border-color .22s var(--ease),transform .22s var(--ease),background .22s var(--ease)}.wall__card img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(199,208,217,.35)}.wall__name{font-size:13px;color:var(--text);letter-spacing:.06em}.wall__role{font-size:10px;color:var(--text-2);letter-spacing:.1em;text-align:center}.wall__card:hover{border-color:var(--amber);transform:translateY(-3px);background:#1d252f80}.wall__card.is-cur{border-color:#ff6a3599;box-shadow:0 0 18px #ff6a3540}.wall__empty{margin-top:40px;font-size:12px;color:var(--text-2);letter-spacing:.14em}.detail{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#0a0e13b3,#05070aeb);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .38s var(--ease),transform .38s var(--ease),visibility .38s}.detail--in{opacity:1;visibility:visible;transform:none}.detail__close{position:absolute;top:24px;right:26px;z-index:1;color:var(--text-2);font-size:16px;padding:8px;transition:color .22s var(--ease)}.detail__close:hover{color:var(--text)}.detail__center{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:56px 24px;text-align:center;overflow-y:auto}.detail__avatar{width:92px;height:92px;border-radius:50%;object-fit:cover;border:2px solid rgba(199,208,217,.45);box-shadow:0 0 34px #ff6a352e}.detail__name{font-size:24px;letter-spacing:.08em;color:var(--text)}.detail__meta{font-size:12px;letter-spacing:.14em}.detail__role{color:var(--amber)}.detail__headline{font-size:17px;line-height:1.7;font-weight:600;color:var(--text);max-width:560px}.detail__story{font-size:14px;line-height:2;color:var(--text-2);max-width:620px}.detail__actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap;justify-content:center}.detail__actions button{padding:12px 24px;font-size:12px;letter-spacing:.16em;color:var(--text-2);border:1px solid rgba(199,208,217,.18);background:#1d252f66;transition:color .22s var(--ease),border-color .22s var(--ease)}.detail__actions button:hover{color:var(--text);border-color:var(--amber)}.detail__back{color:var(--amber)!important;border-color:#ff6a3573!important}.capsule{position:absolute;left:50%;bottom:92px;transform:translate(-50%);width:min(420px,92vw);padding:20px 24px;background:linear-gradient(160deg,#1d252feb,#0a0e13f0);border:1px solid rgba(199,208,217,.22);box-shadow:0 0 60px #ff6a351f;animation:capsuleIn .6s var(--ease) both}.capsule--empty{text-align:center;color:var(--text-2);font-size:13px;display:flex;gap:12px;flex-direction:column;align-items:center}.capsule__label{font-size:10px;letter-spacing:.3em;color:var(--orange);margin-bottom:14px}.capsule__plate{display:flex;gap:14px;align-items:center}.capsule__plate img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(199,208,217,.4)}.capsule__plate h3{font-size:16px;letter-spacing:.06em}.capsule__headline{font-size:13px;color:var(--amber);margin-top:6px;line-height:1.6}.capsule__actions{display:flex;gap:10px;margin-top:16px;align-items:center}.capsule__actions button{font-size:12px;letter-spacing:.1em;color:var(--text-2);padding:9px 14px;border:1px solid rgba(199,208,217,.2);transition:color .22s var(--ease),border-color .22s var(--ease)}.capsule__actions button:hover{color:var(--text);border-color:var(--amber)}.capsule__primary{color:var(--amber)!important;border-color:#ff6a3580!important}.capsule__ghost{margin-left:auto;border:none!important;font-size:14px}.keepsake{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#05070ab8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .3s var(--ease) both}.keepsake__frame{width:min(340px,86vw);display:flex;flex-direction:column;gap:12px;max-height:92vh;overflow:auto}.keepsake__canvas{display:block;border:1px solid rgba(199,208,217,.25);box-shadow:0 0 80px #ff6a351a}.keepsake__error{text-align:center;font-size:13px;color:var(--orange);display:flex;flex-direction:column;gap:10px}.keepsake__error button{border:1px solid rgba(255,106,53,.5);padding:8px 16px;font-size:12px;align-self:center}.keepsake__actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.keepsake__actions button{font-size:12px;letter-spacing:.12em;color:var(--text-2);padding:10px 16px;border:1px solid rgba(199,208,217,.22);transition:color .22s var(--ease),border-color .22s var(--ease)}.keepsake__actions button:hover{color:var(--text);border-color:var(--amber)}.keepsake__primary{color:var(--amber)!important;border-color:#ff6a358c!important}.keepsake__close{border:none!important;font-size:14px}.fb{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--bg)}.fb__stars{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(1px 1px at 22% 31%,rgba(199,208,217,.5),transparent),radial-gradient(1px 1px at 64% 12%,rgba(199,208,217,.35),transparent),radial-gradient(1.5px 1.5px at 81% 58%,rgba(255,177,110,.4),transparent),radial-gradient(1px 1px at 38% 74%,rgba(199,208,217,.3),transparent),radial-gradient(1px 1px at 92% 22%,rgba(199,208,217,.4),transparent),radial-gradient(1.5px 1.5px at 12% 62%,rgba(255,106,53,.3),transparent)}.fb__hero{position:relative;text-align:center;padding:72px 24px 40px}.fb__tag{font-size:11px;letter-spacing:.4em;color:var(--orange)}.fb__monument{font-size:clamp(72px,14vw,150px);font-weight:700;letter-spacing:.06em;color:var(--titanium);text-shadow:0 2px 0 #1D252F,0 0 60px rgba(199,208,217,.25),0 -2px 0 rgba(255,106,53,.25);margin:18px 0}.fb__title{font-size:20px;letter-spacing:.2em;color:var(--text);font-weight:500}.fb__sub{margin-top:12px;color:var(--text-2);font-size:14px}.fb__stats{margin-top:18px;font-size:11px;letter-spacing:.24em;color:var(--amber)}.fb__notice{margin-top:14px;font-size:11px;color:var(--text-2)}.fb__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;padding:30px 24px 80px;max-width:1080px;margin:0 auto}.fb__node{text-align:center;padding:20px 12px;border:1px solid rgba(199,208,217,.14);background:#0a0e13b3;display:flex;flex-direction:column;gap:10px;align-items:center;transition:border-color .22s var(--ease)}.fb__node:hover{border-color:var(--amber)}.fb__node img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(199,208,217,.35)}.fb__node span{font-size:13px;color:var(--text)}.fb__node em{font-size:11px;color:var(--text-2);font-style:normal;line-height:1.6}.fb__modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#05070acc;display:flex;align-items:center;justify-content:center;padding:20px}.fb__modal-body{width:min(420px,94vw);max-height:88vh;overflow-y:auto;padding:28px;background:var(--space);border:1px solid rgba(199,208,217,.2);display:flex;flex-direction:column;gap:12px;text-align:center}.fb__modal-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;margin:0 auto;border:1.5px solid rgba(199,208,217,.4)}.fb__modal-body h3{font-size:18px}.fb__modal-role{font-size:11px;color:var(--amber);letter-spacing:.14em}.fb__modal-body h4{font-size:16px;color:var(--titanium);line-height:1.6}.fb__modal-body p{font-size:13px;color:var(--text-2);line-height:1.9}.fb__modal-project{color:var(--text)!important}.fb__modal-sign{border-left:2px solid var(--orange);text-align:left;padding-left:12px}.fb__modal-actions{display:flex;gap:10px;justify-content:center}.fb__modal-actions button{padding:10px 18px;font-size:12px;border:1px solid rgba(199,208,217,.25);color:var(--text-2)}.fb__keepsake{display:flex;flex-direction:column;gap:10px;align-items:center}.fb__keepsake canvas{width:min(280px,80vw);border:1px solid rgba(199,208,217,.25)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes capsuleIn{0%{opacity:0;transform:translate(-50%) translateY(24px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@media (max-width: 767px){.intro__caption{left:20px;bottom:20px}.controls{right:14px;bottom:78px;flex-direction:column;align-items:flex-end;gap:8px}.controls__btn{font-size:11px;padding:8px 12px}.wall{padding:56px 14px 30px}.wall__grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px}.capsule{bottom:78px}.hero__cta{padding:12px 32px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
