@font-face{font-family:Zpix;src:url(/assets/zpix-4zwvdZcy.woff2) format("woff2");font-display:swap}:root{color:#17252a;background:#f7f9f9;font-family:PingFang SC,Microsoft YaHei,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid #334850;outline-offset:4px}.landing-loading{display:grid;min-height:100svh;place-items:center;color:#555;font-size:13px;letter-spacing:.14em}.landing-page{position:relative;isolation:isolate;min-height:100svh;overflow-x:hidden;background:#f8f8f8;color:#17252a;--landing-glass: rgba(226, 231, 233, .5);--landing-border: rgba(112, 133, 141, .45);--landing-blur: blur(11px) saturate(108%)}.landing-halftone{position:fixed;z-index:0;inset:0;display:block;pointer-events:none}.landing-header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:80px;padding:28px}.landing-header-logo{display:block;width:clamp(175px,18vw,250px);height:auto;flex:none}.landing-social{display:flex;align-items:center;gap:9px}.landing-social button,.landing-social a{display:inline-flex;align-items:center;justify-content:center;min-width:76px;min-height:38px;padding:8px 17px;border:1px solid var(--landing-border);border-radius:999px;background:var(--landing-glass);color:#283a42;box-shadow:inset 1px 1px #ffffffb8,0 7px 16px #2739400f;-webkit-backdrop-filter:var(--landing-blur);backdrop-filter:var(--landing-blur);font:12px/1.2 Zpix,monospace;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .18s ease,transform .18s ease}.landing-social button:hover,.landing-social a:hover{transform:translateY(-2px);background:#d5dfe3b8}.landing-social .landing-language-toggle{min-width:42px;padding-inline:10px;font-size:13px}.app.light-app.question-dock-app .exhibition-head-status button.experiment-language-toggle{display:inline-flex;justify-content:center;min-width:40px;padding:0 8px;font:13px/1 Zpix,monospace}.landing-hero{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(100%,1170px);min-height:calc(100svh - 80px);margin:0 auto;padding:clamp(28px,6vh,76px) 32px clamp(70px,9vh,118px)}.landing-logo{width:min(80%,744px);margin:0 auto clamp(8px,1.6vh,18px);transform:translateY(-22px)}.landing-logo img{display:block;width:100%;height:auto}.landing-letter{width:min(64.5%,600px);margin:0 auto;transform:translate(1.5%);color:#26363d;font:16.5px/1.58 Zpix,PingFang SC,monospace;letter-spacing:.01em;text-align:left}.landing-letter p{position:relative;margin:0;min-height:1.58em}.landing-letter p+p{margin-top:9px}.landing-letter .landing-letter-ending{margin-top:11px}.landing-letter .landing-letter-signature{margin-top:6px;text-align:right}.landing-letter-guide{visibility:hidden}.landing-letter-typed{position:absolute;inset:0;white-space:normal;overflow-wrap:anywhere}.landing-letter-typed.is-typing:after{display:inline-block;width:1px;height:.98em;margin-left:3px;background:currentColor;vertical-align:-.12em;animation:landing-caret .7s steps(1) infinite;content:""}@keyframes landing-caret{50%{opacity:0}}.landing-life-links{display:flex;justify-content:center;gap:18px;width:min(100%,610px);margin-top:clamp(48px,7vh,78px)}.landing-life-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:min(100%,232px);min-height:60px;padding:0 25px;border:1px solid var(--landing-border);border-radius:999px;background:var(--landing-glass);color:#20333b;box-shadow:inset 1px 1px #ffffffbf,inset -1px -1px #3a4c5314,0 10px 22px #27394014;-webkit-backdrop-filter:var(--landing-blur);backdrop-filter:var(--landing-blur);font:13px/1.2 Zpix,monospace;text-decoration:none;white-space:nowrap;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.landing-life-link.is-active{cursor:pointer}.landing-life-link span{font-size:11px;letter-spacing:.04em}.landing-life-link strong{font-size:15px;font-weight:400}.landing-life-link img{width:18px;height:18px;flex:none;opacity:.78}.landing-life-link.is-active:hover{transform:translateY(-2px);background:#d1dce0b8;box-shadow:inset 1px 1px #fffc,0 14px 27px #2739401f}.landing-life-link.is-future{opacity:.48;cursor:default}.landing-life-link.is-future strong{margin-right:0}.landing-life-dialog{width:min(1080px,calc(100vw - 42px));height:min(91dvh,940px);max-width:none;max-height:min(91dvh,940px);margin:auto;padding:0;overflow:hidden;border:1px solid rgba(125,143,150,.55);border-radius:42px;background:#ecf2f4c7;color:#17252a;box-shadow:inset 1px 1px #ffffffd9,0 26px 75px #14242b33;-webkit-backdrop-filter:blur(24px) saturate(115%);backdrop-filter:blur(24px) saturate(115%)}.landing-life-dialog[open]{display:flex;flex-direction:column}.landing-life-dialog::backdrop{background:#1c2a2f6e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.landing-life-dialog-head{position:absolute;z-index:2;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:118px;padding:20px clamp(25px,4vw,48px);border:0;background:transparent;isolation:isolate}.landing-life-dialog-head:before{position:absolute;z-index:-1;inset:0 0 -80px;pointer-events:none;background:linear-gradient(to bottom,rgba(236,242,244,.84),rgba(236,242,244,.52) 53%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);-webkit-mask-image:linear-gradient(to bottom,#000 12%,rgba(0,0,0,.78) 52%,transparent 100%);mask-image:linear-gradient(to bottom,#000 12%,rgba(0,0,0,.78) 52%,transparent 100%);content:""}.landing-life-dialog-title h2{margin:0;font:400 32px/1.15 Zpix,monospace}.landing-life-facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.landing-life-facts span{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:3px 10px;border:1px solid rgba(112,133,141,.32);border-radius:999px;background:#f2f6f773;color:#53666e;-webkit-backdrop-filter:var(--landing-blur);backdrop-filter:var(--landing-blur);font:11px/1.2 Zpix,monospace;white-space:nowrap}.landing-life-facts img{width:14px;height:14px;opacity:.7}.landing-life-dialog-actions{display:flex;align-items:center;gap:12px}.landing-life-enter{display:inline-flex;align-items:center;justify-content:center;gap:19px;min-height:54px;padding:0 23px;border:1px solid rgba(27,47,55,.7);border-radius:999px;background:#1f343dd1;color:#fff;box-shadow:inset 1px 1px #fff3,0 8px 16px #192f3829;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:15px/1.2 Zpix,monospace;text-decoration:none;white-space:nowrap;transition:transform .2s ease,background .2s ease}.landing-life-enter:hover{transform:translateY(-2px);background:#223e49eb}.landing-life-enter img{width:18px;height:18px;filter:invert(1)}.landing-life-close{display:grid;width:43px;height:43px;flex:none;place-items:center;border:1px solid var(--landing-border);border-radius:50%;background:#ecf2f48c;color:#334850;box-shadow:inset 1px 1px #ffffffbf;-webkit-backdrop-filter:var(--landing-blur);backdrop-filter:var(--landing-blur);font:28px/1 Arial,sans-serif;cursor:pointer}.landing-life-close:hover{background:#d3dfe4bf}.landing-life-dialog-body{position:relative;display:grid;flex:1;min-height:0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch;gap:clamp(24px,4vw,50px);padding:0 clamp(27px,4vw,48px);overflow:hidden}.landing-life-story{min-width:0;padding-top:155px;padding-bottom:clamp(27px,4vw,48px);overflow-y:auto;scrollbar-width:thin}.landing-life-intro{margin:0 0 1.15em;color:#26373f;font:16px/1.76 Zpix,PingFang SC,sans-serif}.landing-life-intro:last-child{margin-bottom:0}.landing-life-gallery-viewport{position:relative;min-width:0;min-height:0;overflow:hidden}.landing-life-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:10px;width:100%;height:100%;min-width:0;overflow-y:auto;scrollbar-width:thin}.landing-life-gallery:before{grid-column:1 / -1;height:153px;content:""}.landing-life-gallery figure{margin:0;overflow:hidden;border:0;border-radius:26px;background:#e2e7e98c}.landing-life-gallery figure.is-featured{grid-column:1 / -1}.landing-life-gallery img{display:block;width:100%;height:auto}.landing-life-gallery button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.landing-life-gallery button:hover img{filter:brightness(1.04)}.landing-photo-dialog{width:min(94vw,1300px);max-width:none;max-height:94dvh;margin:auto;padding:12px;overflow:visible;border:1px solid rgba(255,255,255,.75);border-radius:25px;background:#f2f5f6f0;box-shadow:0 30px 90px #0000005c}.landing-photo-dialog::backdrop{background:#0e191ec4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.landing-photo-full{display:block;max-width:100%;width:auto;height:auto;max-height:calc(94dvh - 90px);margin:auto;border-radius:14px;object-fit:contain}.landing-photo-controls{display:flex;justify-content:center;align-items:center;gap:22px;padding:10px 0 0;font:13px/1.2 Zpix,monospace}.landing-photo-controls button,.landing-photo-close{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--landing-border);border-radius:50%;background:#eff4f5cc;color:#243840;font:24px/1 Arial,sans-serif;cursor:pointer}.landing-photo-close{position:absolute;top:15px;right:15px;z-index:1}.landing-wechat-dialog{width:min(324px,calc(100vw - 32px));max-height:min(90svh,680px);margin:auto;padding:12px;overflow:auto;border:1px solid rgba(125,143,150,.55);border-radius:42px;background:#fff;color:#26373f;box-shadow:0 24px 70px #14242b30}.landing-wechat-dialog::backdrop{background:#1c2a2f6e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.landing-wechat-head{display:flex;justify-content:space-between;align-items:center;padding:8px 9px 0;font:16px/1.2 Zpix,monospace}.landing-wechat-head button{width:32px;height:32px;border:1px solid var(--landing-border);border-radius:50%;background:var(--landing-glass);color:#334850;font:24px/1 Arial,sans-serif;cursor:pointer}.landing-wechat-dialog img{display:block;width:100%;height:auto;margin:0 auto 2px;border-radius:13px}.landing-wechat-id{display:grid;grid-template-columns:64px auto 64px;align-items:center;justify-content:center;gap:6px;padding:2px 3px;font:12px/1.4 Zpix,monospace}.landing-wechat-id>span{justify-self:end}.landing-wechat-id strong{padding:7px 11px;border:1px solid rgba(130,148,155,.24);border-radius:999px;background:#dae3e699;font-weight:400;text-align:center}.landing-wechat-id button{justify-self:start;padding:6px 11px;border:1px solid var(--landing-border);border-radius:999px;background:var(--landing-glass);color:#334850;font:inherit;white-space:nowrap;cursor:pointer}.landing-wechat-id button:hover{background:#d3dfe4bf}.landing-wechat-id button.is-copied{color:#8a989e}.landing-wechat-status{display:block;margin-top:6px;color:#60717a;font:11px/1.5 Zpix,monospace;text-align:center}.landing-wechat-status:empty{display:none}.experiment-home-link{display:inline-flex;align-items:center;align-self:center;color:inherit;font:inherit;text-decoration:none;white-space:nowrap}.experiment-home-link:hover{color:#087bff}@media(max-width:760px){.landing-header{min-height:66px;padding:14px 22px}.landing-header-logo{width:155px}.landing-social{gap:6px}.landing-social button,.landing-social a{min-width:55px;min-height:32px;padding:6px 11px;font-size:10px}.landing-hero{min-height:calc(100svh - 66px);padding:48px 27px 70px}.landing-letter{font-size:14.3px;line-height:1.58}.landing-letter p{min-height:1.58em}.landing-life-links{gap:10px}.landing-life-link{min-height:56px;padding:0 14px}.landing-life-link strong{font-size:13px}.landing-life-link img{width:16px;height:16px}.landing-life-dialog{width:calc(100vw - 28px);height:auto;max-height:93dvh;overflow:auto}.landing-life-dialog[open]{display:block}.landing-life-dialog-head{position:relative;min-height:90px;padding:18px 20px}.landing-life-dialog-title h2{font-size:26px}.landing-life-enter{min-height:47px;padding:0 14px;font-size:12px;gap:9px}.landing-life-close{width:35px;height:35px;font-size:24px}.landing-life-dialog-body{display:grid;grid-template-columns:1fr;gap:28px;padding:27px 22px 30px;overflow:visible}.landing-life-gallery-viewport{margin-top:0;overflow:visible}.landing-life-gallery-viewport:after{display:none}.landing-life-gallery:before{display:none}.landing-life-story,.landing-life-gallery{height:auto;overflow:visible}.landing-life-story{padding-top:0}.landing-life-intro{font-size:14px;line-height:1.72}}@media(max-width:520px){.landing-header{flex-wrap:wrap;gap:12px}.landing-header-logo{width:142px}.landing-social{margin-left:auto}.landing-hero{justify-content:flex-start;padding-top:clamp(52px,11vh,110px)}.landing-logo{margin-bottom:15px;transform:translateY(-12px)}.landing-letter{font-size:13.2px;line-height:1.6}.landing-letter p{min-height:1.6em}.landing-life-links{flex-direction:column;align-items:center;gap:10px;margin-top:48px}.landing-life-link{width:min(100%,268px);min-height:54px}.landing-life-dialog-head{flex-wrap:wrap;gap:13px}.landing-life-dialog-actions{justify-content:space-between;width:100%}.landing-life-enter{flex:1}.landing-life-facts{gap:5px}.landing-life-facts span{min-height:26px;padding:3px 8px;font-size:9px}}@media(max-width:600px){.light-app .exhibition-nav{gap:9px}.experiment-home-link span{display:none}}@media(prefers-reduced-motion:reduce){.landing-letter-typed.is-typing:after{animation:none}.landing-life-link,.landing-life-enter,.landing-social button,.landing-social a{transition:none}}@media(prefers-reduced-transparency:reduce){.landing-social button,.landing-social a,.landing-life-link,.landing-life-dialog,.landing-wechat-dialog{background:#edf1f2;-webkit-backdrop-filter:none;backdrop-filter:none}}.admin-login-page{min-height:100svh;padding:24px;display:grid;place-items:center;background:#f7f9f9;color:#183039;font-family:inherit}.admin-login-home{position:absolute;top:28px;left:32px;color:inherit;text-decoration:none}.admin-login-card{width:min(100%,430px);padding:36px;border:1px solid #bdcbd1;border-radius:30px;background:#ffffffd1;box-shadow:0 18px 60px #2338411c;display:grid;gap:16px}.admin-login-card img{width:min(220px,100%);height:auto;margin-bottom:10px}.admin-login-card h1{font-size:30px;margin:0}.admin-login-card p{margin:0;color:#546a73;line-height:1.55}.admin-login-card label{font-weight:700;margin-top:7px}.admin-login-card input{width:100%;padding:15px 17px;border:1px solid #aebec5;border-radius:16px;background:#fff;font:inherit}.admin-login-card button{padding:15px 20px;border:1px solid #314b55;border-radius:100px;background:#314b55;color:#fff;font:inherit;cursor:pointer}.admin-login-card button:disabled{opacity:.45;cursor:not-allowed}.admin-login-card .admin-login-error{color:#aa3342}.admin-login-card code{font-size:.85em;overflow-wrap:anywhere}.admin-print-switch{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:12px 14px;border:1px solid #a9bbc2;border-radius:100px;background:#ffffffb3;color:#233b43;font:inherit;cursor:pointer;text-align:left}.admin-print-switch-track{display:flex;align-items:center;width:48px;height:27px;flex:none;padding:3px;border-radius:100px;background:#bcc8cc;transition:background .2s}.admin-print-switch-track span{width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .2s}.admin-print-switch.is-active .admin-print-switch-track{background:#304b56}.admin-print-switch.is-active .admin-print-switch-track span{transform:translate(21px)}.admin-print-switch:disabled{opacity:.55;cursor:wait}.admin-preview-exit{position:fixed;top:17px;right:116px;z-index:1500;padding:10px 16px;border:1px solid #a9bbc2;border-radius:100px;background:#f8fbfce0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font:inherit;cursor:pointer}@media(max-width:650px){.admin-preview-exit{right:94px;top:22px;font-size:12px;padding:8px 10px}}
