@font-face{font-family:Shanshan;src:url('/assets/linshanshan-name.ttf') format('truetype');font-display:swap}
:root{color-scheme:dark;--bg:#090b0a;--text:#edf2ed;--muted:#8d968f;--line:#ffffff15;--green:#b0ed8d;--soft:#b9d4bd;--radius:22px;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default}a,button,input,select,textarea,summary{outline-offset:6px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--green)}button{border:0;background:none}p,h1,h2,h3,h4{margin:0}::selection{background:#b0ed8d;color:#152314}.shell{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip{position:fixed;top:10px;left:20px;padding:12px 18px;background:var(--green);color:#07130b;z-index:100;transform:translateY(-200%)}.skip:focus{transform:translateY(0)}.header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:3}.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:750;letter-spacing:.08em}.brand svg{height:34px;width:34px;fill:none;stroke:var(--green);stroke-width:1.5}.brand-sub{display:block;font-size:8px;letter-spacing:.2em;font-weight:500;margin-top:3px;color:#b8c1ba}.desktop-nav{display:flex;gap:34px;font-size:13px;color:#a0aaa2}.desktop-nav a:hover,.footer a:hover{color:var(--green)}.header-entry{font-size:13px;display:flex;align-items:center;gap:24px}.header-entry>span{color:var(--green);font-size:22px}.hero{position:relative;min-height:min(840px,calc(100svh - 100px));padding-top:65px;padding-bottom:104px;display:flex;align-items:center;isolation:isolate}.hero-copy{position:relative;z-index:1;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-size:12px;letter-spacing:.12em;color:#b0bab2;display:flex;align-items:center;gap:10px;margin-bottom:33px}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 14px #98db7950}h1{font-weight:750;line-height:.88;letter-spacing:-.065em}.welcome{display:block;font-size:clamp(18px,2.1vw,29px);letter-spacing:.2em;font-weight:450;margin-bottom:23px;color:#d5dfd8}.hero-njfu{display:block;font-size:clamp(108px,14vw,190px);letter-spacing:-.075em;color:#c0f0ad;position:relative;width:max-content;background:linear-gradient(115deg,#c1efb2 18%,#f1f9ea 35%,#88c36b 62%,#c6eeb7 82%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.title-spark{display:inline-block;position:absolute;right:-66px;top:8px;font-size:40px;line-height:1;letter-spacing:0;-webkit-text-fill-color:var(--green);font-weight:300;animation:spark-turn 30s linear infinite}.guide-title{display:block;font-size:clamp(47px,6.45vw,88px);font-weight:400;letter-spacing:-.055em;margin-top:19px}.hero-description{margin-top:32px;display:flex;align-items:center;gap:25px}.hero-description h2{font-size:17px;font-weight:500;letter-spacing:.1em}.hero-description p{font-size:12px;line-height:1.8;color:var(--muted);border-left:1px solid #ffffff30;padding-left:24px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border-radius:9px;min-height:48px;padding:0 22px;font-size:13px;font-weight:550;transition:background .2s,transform .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button>span{font-size:21px;font-weight:400}.button-green{background:var(--green);color:#14200d}.button-green:hover{background:#c5f6a8}.button-light{background:#e9efe6;color:#142015}.button-light:hover{background:#fff}.button-outline{border:1px solid #ffffff28}.button-outline:hover{border-color:#b0ed8d80;background:#b0ed8d08}.text-link{font-size:13px;display:inline-flex;align-items:center;gap:18px;color:#b7c3ba}.text-link:hover{color:var(--green)}.hero-art{position:absolute;right:-32px;top:0;width:62%;height:100%;z-index:-1;pointer-events:none;overflow:hidden}.hero-art:before{content:'';position:absolute;inset:9% 0 16%;background:radial-gradient(ellipse,#315d2021 0%,transparent 65%);filter:blur(25px)}#forest-canvas{position:relative;width:100%;height:100%;opacity:.9;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 92%,transparent)}.art-floor{position:absolute;inset:64% 4% 12% 0;background:repeating-linear-gradient(90deg,transparent 0 49px,#98c3830b 49px 50px),repeating-linear-gradient(0deg,transparent 0 49px,#98c3830b 49px 50px);transform:perspective(500px) rotateX(60deg);mask-image:radial-gradient(ellipse,black,transparent 70%)}.art-coordinate{position:absolute;right:9%;bottom:20%;font-size:9px;letter-spacing:.16em;color:#8fa88570;writing-mode:vertical-rl}.hero-baseline{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:68px;color:var(--muted);font-size:11px}.campus-names{display:flex;align-items:center;gap:17px;color:#b3bcb4;font-size:12px}.campus-names i{height:3px;width:3px;background:#6c7a6e;border-radius:50%}.scroll-link{display:flex;gap:32px}.section{padding-top:104px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.section-index{font-size:10px;letter-spacing:.15em;font-weight:500;color:#7d9681;margin-bottom:18px}.section-heading h2{font-size:clamp(27px,3vw,39px);font-weight:500;line-height:1.5;letter-spacing:-.04em}.section-heading>p,.roadmap-intro>p{font-size:12px;color:var(--muted);line-height:1.95}.assistant-card{background:linear-gradient(120deg,#171e17,#111612 70%);border:1px solid #b1d69c25;display:grid;grid-template-columns:1.08fr 1fr;gap:60px;padding:54px 58px;border-radius:var(--radius);overflow:hidden;position:relative}.assistant-card:before{content:'';position:absolute;right:-120px;top:-240px;width:600px;height:600px;border:1px solid #b0ed8d08;border-radius:50%;box-shadow:0 0 0 75px #b0ed8d03,0 0 0 150px #b0ed8d02;pointer-events:none}.status{font-size:10px;color:#a1aaa1;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid #ffffff12;border-radius:5px}.status-live{color:#b5dfa4;border-color:#b0ed8d25}.status-live>span{height:5px;width:5px;background:var(--green);border-radius:50%}.assistant-copy h3{font-size:clamp(27px,2.8vw,38px);font-weight:450;line-height:1.5;margin:22px 0 14px;letter-spacing:-.04em}.name-font{font-family:Shanshan,'PingFang SC',sans-serif;color:#c2e7b2;letter-spacing:.015em;font-size:1.4em}.hello-mark{color:#788c72;font-size:.8em;margin-left:12px;letter-spacing:0}.assistant-copy>p{font-size:12px;line-height:1.9;color:#9ba799}.feature-tags{display:flex;gap:13px;margin:22px 0 28px;color:#c4cfc0;font-size:10px}.feature-tags span+span{border-left:1px solid #ffffff22;padding-left:13px}.assistant-preview{background:#0b0f0cdd;border:1px solid #afcb9725;border-radius:17px;padding:25px 28px;align-self:center;position:relative;transform:rotate(-2deg);box-shadow:0 20px 80px #0005}.preview-top{display:flex;align-items:center;gap:9px;color:#7f9181;font-size:8px;letter-spacing:.13em}.preview-dot{width:5px;height:5px;background:#b0ed8d;border-radius:50%}.preview-star{margin-left:auto;font-size:24px;color:#a6d48e}.preview-question{font-size:13px;padding:19px;background:#1d241e;border:1px solid #ffffff09;border-radius:14px 14px 3px 14px;margin:26px 0 24px 30px;text-align:right;color:#bdc9bf}.preview-answer{display:flex;gap:12px;align-items:start;font-size:13px;line-height:1.95;color:#bacab9}.mini-leaf{background:#bbd9a7;color:#294323;height:26px;width:26px;flex-shrink:0;text-align:center;border-radius:8px;font-size:19px}.preview-source{display:flex;align-items:center;gap:11px;border:1px solid #b0ed8d18;background:#b0ed8d04;padding:15px;margin-top:25px;border-radius:8px;font-size:10px;color:#91a48f}.preview-source svg{width:14px;height:14px;stroke:#a6c19b;fill:none;stroke-width:1.5}.preview-source span:nth-of-type(2){border-left:1px solid #ffffff20;padding-left:11px}.preview-check{margin-left:auto;color:var(--green)}.preview-note{font-size:9px;color:#627362;margin-top:15px;line-height:1.7}.roadmap{padding-bottom:106px}.roadmap-intro{min-width:248px}.campus-filter{display:flex;gap:5px;margin-top:19px}.campus-filter button{padding:7px 13px;font-size:11px;color:#8e9a91;border:1px solid transparent;border-radius:5px;transition:.2s}.campus-filter button[aria-pressed=true]{color:#dce8d9;border-color:#93b57c40;background:#b0ed8d08}.campus-filter button:hover{color:var(--green)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.guide-card{background:#111411;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .3s,border-color .3s;position:relative}.guide-card:hover{transform:translateY(-5px);border-color:#b0ed8d40}.card-top{padding:22px 24px 0;display:flex;align-items:center;justify-content:space-between}.card-number{color:#788274;font-size:12px;font-family:monospace}.card-art{height:190px;overflow:hidden;position:relative;margin-top:12px}.food-art{display:flex;align-items:center;justify-content:center}.food-art i{width:170px;height:130px;border:1px solid #92bc7f35;border-radius:50%;position:absolute;transform:rotate(-24deg);box-shadow:0 0 0 10px #82a87503}.food-art i:nth-child(2){width:140px;height:100px;border-color:#b0ed8d45}.food-art i:nth-child(3){width:110px;height:70px;border-color:#b0ed8d65;background:radial-gradient(ellipse,#b0ed8d15,transparent)}.food-art b{font-size:29px;font-weight:450;letter-spacing:.08em;color:#d8e6ce;transform:rotate(-10deg);text-shadow:0 5px 15px #000}.around-art{background:radial-gradient(ellipse,#89b89709,transparent 68%)}.map-line{position:absolute;height:1px;width:400px;background:#8cbfa72a;transform:rotate(-30deg);left:-25px;top:55%}.map-line.two{transform:rotate(50deg);top:24%;left:-50px}.map-line.three{transform:rotate(18deg);top:79%}.map-pin{position:absolute;background:#26372b;border:1px solid #9cc79950;color:#c1dfb7;border-radius:8px;height:34px;width:34px;text-align:center;line-height:30px;transform:rotate(-10deg);box-shadow:0 8px 20px #0006}.pin-one{left:18%;top:43%}.pin-two{right:20%;top:22%;height:25px;width:25px;font-size:12px;line-height:23px}.map-word{position:absolute;font-size:27px;font-weight:600;line-height:1;letter-spacing:-.04em;left:32%;top:47%;color:#b1cbbb;transform:rotate(-7deg)}.club-art{display:flex;align-items:center;justify-content:center}.club-flower{font-size:170px;line-height:1;color:#b9b9a7;filter:drop-shadow(0 0 20px #d8d8b520);font-weight:300;transform:rotate(-10deg);transition:transform 1.8s ease}.club-card:hover .club-flower{transform:rotate(80deg)}.club-orbit{position:absolute;font-size:8px;letter-spacing:.2em;bottom:20px;right:21px;color:#b2b09b}.card-content{padding:15px 25px 27px}.card-kicker{font-size:9px;letter-spacing:.04em;color:#7e927a;margin-bottom:13px}.card-content h3{font-size:22px;font-weight:500;letter-spacing:-.025em;margin-bottom:12px}.card-content>p:not(.card-kicker){font-size:12px;color:#869486;line-height:1.95}.card-link{padding:21px 0 0;width:100%;display:flex;justify-content:space-between;align-items:center;color:#bdcbb7;font-size:12px;margin-top:23px;border-top:1px solid var(--line)}.card-link>span{font-size:19px;transition:transform .3s}.card-link:hover>span{transform:translate(3px,-3px)}.open-road{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px 1px;border-bottom:1px solid var(--line)}.open-road>div{display:flex;align-items:center;gap:18px}.open-symbol{font-family:monospace;font-size:25px;letter-spacing:-.2em;color:#678662}.open-road strong{font-size:13px;font-weight:400;display:block;margin-bottom:7px}.open-road p>span{font-size:11px;color:var(--muted);line-height:1.8}.open-road>a{font-size:12px;flex-shrink:0}.open-road>a>span{margin-left:30px;color:#9ac88b}.build-section{padding:80px 0;background:#111610;border-block:1px solid #a5bd9115}.build-layout{display:grid;grid-template-columns:1fr .82fr;gap:100px;align-items:center}.build-copy h2{font-size:clamp(36px,4.7vw,62px);font-weight:450;line-height:1.3;letter-spacing:-.045em}.build-copy h2 span{color:#b7da9f}.build-copy>p:not(.section-index){font-size:13px;color:#97a290;line-height:1.9;margin-top:23px}.email-link{display:flex;gap:40px;align-items:center;width:max-content;font-size:clamp(23px,2.7vw,35px);letter-spacing:-.04em;margin-top:32px;padding-bottom:12px;border-bottom:1px solid #b0ed8d50;color:#d0e5c2}.email-link>span{font-size:25px;color:var(--green)}.build-copy .build-note{font-size:11px!important;color:#697b61!important;margin-top:17px!important}.contribution-panel{padding-left:45px;border-left:1px solid #aec39e25}.contribution-panel h3{font-size:20px;font-weight:500}.contribution-panel>p{font-size:11px;line-height:1.9;color:#89947f;margin-top:13px}.contribution-panel ol{list-style:none;padding:0;margin:25px 0 30px}.contribution-panel li{display:flex;gap:15px;margin-top:22px}.contribution-panel li>span{font-family:monospace;color:#647c58;font-size:11px;padding-top:3px}.contribution-panel h4{font-weight:450;font-size:13px;margin-bottom:7px;color:#cbd5c4}.contribution-panel li p{font-size:11px;line-height:1.9;color:#89947f}.afterword{padding-top:75px;padding-bottom:20px}.letter{border-bottom:1px solid var(--line)}.letter summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0 35px;cursor:pointer;list-style:none}.letter summary::-webkit-details-marker{display:none}.letter .section-index{margin-bottom:14px;color:#687868;font-size:9px}.letter h2{font-size:25px;font-weight:450;letter-spacing:-.03em}.letter-intro{font-size:12px;color:#737e73;margin-top:13px}.letter-toggle{font-size:23px;font-weight:200;height:44px;width:44px;border:1px solid #ffffff20;border-radius:50%;display:grid;place-items:center;transition:transform .3s}.letter[open] .letter-toggle{transform:rotate(45deg)}.letter-body{max-width:740px;padding:12px 0 45px;font-size:14px;line-height:2.1;color:#a2aea1}.letter-body p{margin-bottom:23px;overflow-wrap:anywhere}.letter-belief{color:#d4e8c8;font-size:18px;line-height:1.85}.closing{position:relative;padding-block:73px 65px}.closing p{font-size:10px;letter-spacing:.2em;color:#60745d;margin-bottom:20px}.closing h2{font-size:clamp(32px,6vw,78px);font-weight:450;letter-spacing:-.055em;color:#cad9c1}.closing h2>span{color:#83c55b}.closing-spark{position:absolute;right:10px;top:75px;font-size:76px;color:#9ec884;line-height:1}.footer{border-top:1px solid var(--line);padding-block:27px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:10px;color:#667063}.footer-brand{font-size:16px;font-weight:650;letter-spacing:-.02em;color:#8b9c81}.footer-brand span{font-size:9px;font-weight:400;letter-spacing:.06em;margin-left:7px}.footer>div{display:flex;gap:22px}.dialog{background:#151a15;border:1px solid #a6bf9240;border-radius:20px;color:var(--text);padding:38px;width:min(540px,calc(100% - 32px));max-height:calc(100svh - 48px);overflow:auto;box-shadow:0 30px 130px #0009}.dialog::backdrop{background:#000a;backdrop-filter:blur(8px)}.dialog-close{position:absolute;top:14px;right:16px;font-size:25px;color:#a8b6a3;width:34px;height:34px;border-radius:50%}.dialog-close:hover{background:#ffffff10}.dialog h2{font-size:28px;font-weight:500;letter-spacing:-.04em;margin-bottom:18px}.dialog>p:not(.section-index){font-size:13px;color:#98aa91;line-height:1.9}.dialog ul{padding-left:18px;font-size:13px;color:#d0dacb;line-height:2.1;margin:25px 0}.dialog-note{border-top:1px solid var(--line);padding-top:19px;margin-bottom:25px}.dialog form{margin-top:25px}.dialog label{display:block;font-size:12px;color:#bdc9b7;margin-top:17px}.dialog input:not([type=checkbox]),.dialog select,.dialog textarea{display:block;width:100%;background:#090e0a;border:1px solid #99b88530;color:#d6dfd0;border-radius:7px;padding:11px 12px;margin-top:8px;font-size:13px;resize:vertical}.dialog input::placeholder,.dialog textarea::placeholder{color:#60725b}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-row label{margin-top:0}.dialog .anonymous{display:flex;align-items:center;gap:7px;color:#8e9f84;font-size:11px}.anonymous input{accent-color:var(--green)}.privacy-note{font-size:10px;color:#75866c;line-height:1.8;margin-top:15px}.form-actions{display:flex;align-items:center;gap:18px;margin-top:23px}.draft-status{font-size:11px;color:#c7e4b4;line-height:1.8;margin-top:12px;min-height:1em}.form-actions .text-link{font-size:11px;white-space:nowrap}.hero-copy{animation:arrival .85s both}.hero-art{animation:art-arrival 1.3s both}@keyframes arrival{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes art-arrival{from{opacity:0}to{opacity:1}}@keyframes spark-turn{to{transform:rotate(360deg)}}
@media(min-width:1650px){.hero{min-height:800px}.hero-art{right:-70px;width:66%}.hero-njfu{font-size:196px}.guide-title{font-size:90px}}
@media(max-width:1100px){.shell{width:calc(100% - 72px)}.hero{padding-top:65px;min-height:730px}.hero-art{right:-20px;width:65%;opacity:.8}.hero-description{display:block}.hero-description p{margin-top:13px;border:0;padding:0}.assistant-card{gap:32px;padding:38px}.assistant-copy h3{font-size:28px}.assistant-preview{padding:23px}.card-top{padding-inline:20px}.card-content{padding-inline:20px}.card-content h3{font-size:20px}.build-layout{gap:50px}.contribution-panel{padding-left:35px}.desktop-nav{gap:22px}}
@media(max-width:800px){.shell{width:calc(100% - 44px)}.header{height:82px}.desktop-nav{display:none}.hero{padding-top:50px;min-height:740px;align-items:start}.hero-copy{width:100%}.eyebrow{margin-bottom:28px}.welcome{font-size:19px}.hero-njfu{font-size:clamp(114px,19vw,150px)}.guide-title{font-size:clamp(47px,8vw,64px)}.hero-description h2{font-size:16px}.hero-art{top:20px;height:600px;width:72%;right:-22px;opacity:.6;mask-image:linear-gradient(90deg,transparent,#000 40%)}.hero-description,.hero-actions{position:relative}.hero-baseline>span{display:none}.section{padding-top:64px}.section-heading{align-items:start;gap:20px;margin-bottom:25px}.section-heading>p{max-width:190px;padding-top:24px;font-size:11px}.section-heading h2{font-size:27px}.assistant-card{gap:25px;padding:32px;grid-template-columns:1fr 1fr}.assistant-copy h3{font-size:24px}.assistant-copy>p{font-size:11px}.assistant-preview{padding:17px}.preview-question{font-size:11px;margin-left:0;padding:14px}.preview-answer{font-size:11px}.preview-top{font-size:6px}.preview-source{font-size:8px;padding:12px;gap:8px}.feature-tags{gap:8px;font-size:8px}.feature-tags span+span{padding-left:8px}.button{padding-inline:18px;font-size:12px;gap:22px}.guide-grid{gap:12px}.card-top{padding:17px 16px 0}.card-art{height:150px}.card-content{padding:14px 16px 21px}.card-content h3{font-size:17px;line-height:1.5}.card-content>p:not(.card-kicker){font-size:10px}.status{font-size:8px;padding:5px 6px}.food-art b{font-size:23px}.food-art i{width:135px;height:105px}.food-art i:nth-child(2){width:107px;height:78px}.food-art i:nth-child(3){width:80px;height:50px}.map-word{font-size:20px;left:26%}.club-flower{font-size:134px}.club-orbit{font-size:6px;right:12px}.roadmap-intro{min-width:180px}.campus-filter{gap:0}.campus-filter button{padding:7px 10px;font-size:10px}.roadmap{padding-bottom:65px}.build-section{padding-block:58px}.build-layout{gap:30px}.build-copy h2{font-size:38px}.build-copy>p:not(.section-index){font-size:11px}.contribution-panel{padding-left:25px}.contribution-panel h3{font-size:17px}.contribution-panel>p,.contribution-panel li p{font-size:10px}.contribution-panel h4{font-size:12px}.email-link{font-size:25px;gap:20px}.closing-spark{font-size:60px}.footer{flex-wrap:wrap;gap:15px}.footer>p{order:3;width:100%;font-size:9px}}
@media(max-width:600px){.shell{width:calc(100% - 40px)}.header{height:76px}.brand{font-size:16px;gap:9px}.brand svg{width:28px;height:28px}.brand-sub{font-size:7px}.header-entry{font-size:11px;gap:12px}.hero{min-height:620px;min-height:min(650px,calc(100svh - 76px));padding-top:42px;padding-bottom:94px}.eyebrow{font-size:10px;letter-spacing:.08em;margin-bottom:28px}.welcome{font-size:16px;margin-bottom:18px;letter-spacing:.17em}.hero-njfu{font-size:clamp(100px,26vw,148px);line-height:.86}.title-spark{font-size:26px;right:-43px;top:5px}.guide-title{font-size:clamp(39px,10.6vw,60px);margin-top:17px}.hero-description{margin-top:27px}.hero-description h2{font-size:15px;letter-spacing:.05em}.hero-description p{font-size:11px;line-height:1.9;max-width:70%;margin-top:12px}.hero-art{width:78%;height:480px;right:-20px;top:120px;opacity:.58;mask-image:linear-gradient(90deg,transparent,#000 38%)}.art-coordinate{display:none}.hero-actions{gap:19px;margin-top:28px;flex-wrap:wrap}.hero-actions .button{min-height:45px;font-size:11px;padding:0 16px;gap:18px}.hero-actions .text-link{font-size:10px;gap:8px}.hero-baseline{min-height:59px;font-size:10px}.campus-names{font-size:10px;gap:14px}.scroll-link{gap:13px}.section{padding-top:53px}.section-heading{display:block;margin-bottom:24px}.section-index{font-size:8px;margin-bottom:14px}.section-heading h2{font-size:26px}.section-heading>p{max-width:none;padding:0;margin-top:12px;font-size:11px}.section-heading>p br{display:none}.assistant-card{display:block;padding:27px 24px 30px;border-radius:17px}.assistant-copy h3{font-size:28px;line-height:1.45;margin-top:18px;margin-bottom:13px}.status{font-size:9px;padding:5px 8px}.assistant-copy>p{font-size:11px}.feature-tags{font-size:9px;gap:12px;margin:18px 0 22px}.feature-tags span+span{padding-left:12px}.assistant-preview{margin:35px 2px 0;padding:22px;transform:rotate(-2deg)}.preview-top{font-size:7px}.preview-question{font-size:12px;margin-top:20px;margin-left:25px}.preview-answer{font-size:12px}.preview-source{font-size:9px}.preview-note{font-size:8px}.roadmap-intro{margin-top:15px}.roadmap-intro>p{font-size:11px}.campus-filter{gap:5px;margin-top:19px}.campus-filter button{padding:8px 15px;font-size:11px}.guide-grid{grid-template-columns:1fr;gap:17px}.guide-card{min-height:295px}.card-top{padding:20px 22px 0}.card-art{position:absolute;right:0;top:62px;width:49%;height:152px;margin:0;opacity:.75;pointer-events:none}.card-content{padding:35px 22px 22px;position:relative;z-index:1}.card-kicker{font-size:8px;margin-bottom:14px}.card-content h3{font-size:23px;margin-bottom:13px}.card-content>p:not(.card-kicker){font-size:11px;max-width:78%;text-shadow:0 1px 10px #111411}.card-link{margin-top:27px;padding-top:18px;font-size:11px}.food-art b{font-size:24px}.food-art i{width:145px;height:113px}.map-word{font-size:21px}.pin-one{left:8%}.club-flower{font-size:145px;opacity:.6}.club-orbit{display:none}.open-road{gap:18px;align-items:start;padding-block:23px}.open-road>div{gap:13px}.open-road strong{font-size:12px;line-height:1.6}.open-road p>span{font-size:10px}.open-road>a{font-size:10px;padding-top:5px}.open-road>a>span{display:block;margin:10px 0 0;text-align:right}.build-layout{grid-template-columns:1fr;gap:38px}.build-section{padding:49px 0}.build-copy h2{font-size:44px}.build-copy>p:not(.section-index){font-size:12px}.email-link{font-size:30px;margin-top:25px;gap:40px}.contribution-panel{border-left:0;border-top:1px solid #aec39e25;padding:29px 0 0}.contribution-panel h3{font-size:20px}.contribution-panel>p,.contribution-panel li p{font-size:11px}.contribution-panel h4{font-size:13px}.contribution-panel li{margin-top:20px}.afterword{padding-top:40px}.letter h2{font-size:21px}.letter-intro{font-size:10px}.letter-toggle{width:34px;height:34px;flex-shrink:0;font-size:19px}.letter-body{font-size:12px;line-height:2;padding-bottom:22px}.letter-belief{font-size:16px}.closing{padding-block:44px}.closing h2{font-size:36px}.closing p{font-size:7px;letter-spacing:.16em;margin-bottom:15px}.closing-spark{font-size:41px;right:0;top:49px}.footer{padding-top:20px;padding-bottom:25px;gap:13px}.footer-brand{font-size:13px}.footer-brand span{font-size:7px;margin-left:3px}.footer>div{gap:13px;font-size:9px}.dialog{padding:30px 23px 23px;border-radius:16px}.dialog h2{font-size:25px}.dialog>p:not(.section-index){font-size:12px}.dialog ul{font-size:12px}.form-row{gap:10px}.form-actions{gap:15px}.form-actions .button{font-size:11px;gap:15px}.form-actions .text-link{font-size:10px}}
@media(max-width:360px){.shell{width:calc(100% - 32px)}.hero{min-height:610px}.hero-art{right:-16px}.hero-actions{gap:14px}.hero-njfu{font-size:25vw}.title-spark{right:-33px;font-size:22px}.guide-title{font-size:10.3vw}.closing h2{font-size:31px}.closing-spark{font-size:32px}.feature-tags{gap:8px}.feature-tags span+span{padding-left:8px}.button{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.guide-card:hover,.button:hover{transform:none}.club-card:hover .club-flower{transform:rotate(-10deg)}}

/* Tighter spacing after removing decorative captions. */
.roadmap-intro{min-width:0}.roadmap-intro .campus-filter{margin-top:0}
.build-copy>p:not(.section-index){max-width:30em}
/* 标题「给我们投稿/加入我们」在窄屏只在斜杠处换行，不从词中间断开 */
.build-copy h2{word-break:keep-all;overflow-wrap:anywhere}
/* 社团入驻：需要比普通段落显眼一点，用左侧竖线做强调 */
.build-copy .build-clubs{color:#cfe0c4!important;font-size:14px!important;border-left:2px solid #b0ed8d55;padding-left:16px}
.build-copy .build-clubs .text-link{font-size:13px;margin-left:6px}
@media(max-width:600px){.hero{min-height:min(590px,calc(100svh - 76px))}.roadmap-intro{margin-top:18px}}
@media(max-width:360px){.hero{min-height:550px}}

/* Draw decorative asterisks as vectors so mobile fonts cannot replace them with emoji. */
.spark-symbol{display:block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:6;stroke-linecap:butt}
.title-spark{color:var(--green)}
.club-flower{display:block;width:1em;height:1em;flex-shrink:0}

.dialog .recipient-note{margin:18px 0 0;font-size:12px;line-height:1.9;overflow-wrap:anywhere;color:#c0cbb9}
.recipient-note a{color:var(--green);overflow-wrap:anywhere}
.draft-status,.dialog-note{overflow-wrap:anywhere}
.email-address{min-width:0;overflow-wrap:anywhere}
.email-link{width:fit-content;max-width:100%;gap:16px;font-size:clamp(18px,2.4vw,30px)}
.email-link>span:last-child{flex-shrink:0}
.handbook-source{color:#99aa90;font-size:12px;line-height:1.85;overflow-wrap:anywhere}
.handbook-source a{color:#c0dfa9;text-decoration:underline;text-decoration-color:#c0dfa960;text-underline-offset:3px;overflow-wrap:anywhere}
.handbook-source a:hover{color:var(--green)}
.contact-body .handbook-source{font-size:12px;color:#99aa90;margin-top:10px}
