:root { --green:#187246; --dark-green:#245f3d; --muted:#8c949c; --line:#e7e9eb; --pale:#f4f7fa; --red:#941c25; }
* { box-sizing:border-box; }
html,body { margin:0; min-height:100%; }
body.app-body { background:#f3f6fa; color:#111; font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif; }
.mobile-page { position:relative; width:min(620px,100vw); min-height:100vh; margin:0 auto; overflow:hidden; background:#fff; }
.app-header { position:relative; display:flex; height:104px; align-items:center; justify-content:center; padding:24px 22px 0; background:#fff; }
.app-header h1 { margin:0; font-size:24px; font-weight:500; line-height:1; }
.mini-program-mark { position:absolute; top:39px; right:9px; display:flex; width:180px; height:48px; align-items:center; justify-content:center; gap:15px; border:1px solid #e3e5e6; border-radius:25px; background:#fff; }
.mini-program-mark:before { content:""; position:absolute; left:59px; top:10px; width:1px; height:28px; background:#d8dadd; box-shadow:57px 0 #d8dadd; }
.mini-program-mark span,.mini-program-mark i,.mini-program-mark b { display:block; position:relative; width:8px; height:8px; border-radius:50%; background:#222; }
.mini-program-mark span:after { content:""; position:absolute; left:14px; width:8px; height:8px; border-radius:50%; background:#222; }
.mini-program-mark i { width:22px; height:4px; border-radius:3px; }
.mini-program-mark b { width:20px; height:20px; border:3px solid #222; background:transparent; }
.mini-program-mark b:after { content:""; position:absolute; left:4px; top:4px; width:6px; height:6px; border-radius:50%; background:#222; }
.service-page { padding-bottom:90px; }
.service-hero { position:relative; height:259px; margin:12px 20px 46px; overflow:hidden; border-radius:12px; background:#008b43 url("/assets/service-hero-exact.png") center / 100% 100% no-repeat; color:#fff; }
.service-hero > * { display:none; }
.service-hero:after { content:""; position:absolute; inset:40% -10% -25%; border-radius:50%; border:1px solid rgba(255,255,255,.25); box-shadow:0 0 0 18px rgba(255,255,255,.08),0 0 0 36px rgba(255,255,255,.05); }
.hero-logo { position:absolute; z-index:1; top:53px; left:45px; display:grid; width:74px; height:74px; place-items:center; border:2px solid #e6c65b; border-radius:50%; background:#176e3d; color:#fff; font-size:17px; font-weight:700; line-height:1.05; text-align:center; }
.hero-logo small { font-size:9px; letter-spacing:1px; }
.hero-copy { position:absolute; z-index:1; top:65px; left:150px; display:flex; align-items:center; gap:17px; white-space:nowrap; }
.hero-copy strong { font-family:STKaiti,"KaiTi",serif; font-size:40px; line-height:1; }
.hero-copy span { width:2px; height:42px; background:#fff; }
.hero-copy small { position:absolute; top:53px; left:9px; font-size:8px; letter-spacing:1px; }
.hero-building { position:absolute; bottom:0; left:12%; right:12%; height:44%; opacity:.4; border-bottom:2px solid rgba(255,255,255,.65); }
.hero-building i { position:absolute; bottom:0; width:16%; border:2px solid rgba(255,255,255,.7); border-bottom:0; }
.hero-building i:nth-child(1){left:0;height:36%}.hero-building i:nth-child(2){left:20%;height:58%}.hero-building i:nth-child(3){left:40%;height:90%;width:24%}.hero-building i:nth-child(4){right:18%;height:54%}.hero-building i:nth-child(5){right:0;height:30%}
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); row-gap:42px; padding:0 28px 28px; }
.service-item { display:grid; justify-items:center; gap:12px; color:#111; text-decoration:none; }
.service-item strong { font-size:20px; font-weight:500; white-space:nowrap; }
.service-icon { position:relative; display:flex; width:53px; height:53px; align-items:center; justify-content:center; color:#008545; }
.service-icon:before,.service-icon:after { content:""; position:absolute; display:block; }
.building-icon:before{width:25px;height:34px;border:4px solid #008545;border-radius:3px;transform:skewY(-12deg)}.building-icon:after{width:38px;height:4px;bottom:5px;background:#008545;box-shadow:0 -22px 0 -1px #008545}
.archive-icon:before{width:37px;height:24px;border:4px solid #008545;border-radius:4px;bottom:7px}.archive-icon:after{width:23px;height:4px;top:12px;border-top:4px solid #a84a10}
.gift-icon:before{width:39px;height:28px;border:4px solid #008545;border-radius:3px;bottom:8px}.gift-icon:after{width:4px;height:42px;background:#b2470b;box-shadow:0 -14px 0 7px transparent}
.camera-icon:before{width:39px;height:26px;border:4px solid #008545;border-radius:5px}.camera-icon:after{width:10px;height:10px;border:3px solid #008545;border-radius:50%}
.photo-icon:before{width:41px;height:29px;border:4px solid #008545;border-radius:4px}.photo-icon:after{width:18px;height:10px;border-left:4px solid #b2470b;border-bottom:4px solid #b2470b;transform:rotate(-35deg)}
.text-icon{font-size:25px;font-weight:700;line-height:.75;text-align:center}.text-icon small{font-size:12px;font-weight:500}
.card-icon:before{width:39px;height:25px;border:4px solid #008545;border-radius:4px}.card-icon:after{width:15px;height:5px;background:#b2470b;top:24px}
.star-icon{color:#129b19;font-size:57px;line-height:1}.brand-icon{font-size:24px;font-weight:800}.forum-icon:before{width:36px;height:25px;border:4px solid #0aa132;border-radius:50%}.forum-icon:after{width:45px;height:35px;border:3px solid #0aa132;border-top-color:transparent;border-bottom-color:transparent;border-radius:50%}
.bottom-nav { position:fixed; z-index:7; bottom:0; left:50%; display:grid; grid-template-columns:repeat(5,1fr); width:min(620px,100vw); height:79px; transform:translateX(-50%); border-top:1px solid #ececec; background:rgba(255,255,255,.98); }
.bottom-nav a { position:relative; display:flex; flex-direction:column; align-items:center; height:79px; color:#777; font-size:15px; text-decoration:none; }
.bottom-nav a.active { color:var(--green); }.bottom-nav b { position:absolute; bottom:7px; font-weight:500; line-height:20px; }
.nav-image { display:block; width:56px; height:34px; margin-top:9px; object-fit:contain; object-position:top center; }
.nav-home-image { position:absolute; top:-42px; left:50%; display:block; width:74px; height:74px; transform:translateX(-50%); object-fit:contain; }
.nav-home b { bottom:7px; }
.nav-icon { position:relative; width:28px; height:26px; color:currentColor; }
.cap-icon:before{content:"";position:absolute;left:2px;top:5px;width:24px;height:12px;border:2px solid currentColor;transform:skewY(-15deg)}.org-icon:before{content:"";position:absolute;left:4px;top:2px;width:20px;height:22px;border:2px solid currentColor;border-radius:2px}.grid-icon{background:linear-gradient(currentColor 0 0) 0 0/9px 9px,linear-gradient(currentColor 0 0) 15px 0/9px 9px,linear-gradient(currentColor 0 0) 0 15px/9px 9px,linear-gradient(currentColor 0 0) 15px 15px/9px 9px;background-repeat:no-repeat}.user-icon:before{content:"";position:absolute;left:8px;top:1px;width:12px;height:12px;border:2px solid currentColor;border-radius:50%}.user-icon:after{content:"";position:absolute;left:3px;bottom:0;width:23px;height:13px;border:2px solid currentColor;border-radius:14px 14px 0 0}.school-seal { position:relative; display:grid; width:50px; height:50px; margin-top:-28px; place-items:center; border:3px solid #1c7946; border-radius:50%; background:#f4f7f3; color:#1c7946; font-size:14px; font-weight:700; }
.nav-home b { margin-top:-2px; }
.header-back { position:absolute; left:17px; top:36px; color:#111; font-size:42px; line-height:1; text-decoration:none; }
.card-page { padding-bottom:35px; background:#f3f6fa; }.card-page .app-header { background:#fff; }
.alumni-card-visual { position:relative; height:318px; margin:0 23px 14px; overflow:hidden; border-radius:16px; background:#f4f1ea url("/assets/alumni-card-exact-hd.png") center / 100% 100% no-repeat; box-shadow:0 3px 0 rgba(122,28,31,.04); }
.alumni-card-visual:not(.customized) .card-content { display:none; }
.card-red-band { position:absolute; z-index:2; top:0; right:0; left:0; height:91px; background:var(--red); color:#fff; }
.card-red-band:after { content:""; position:absolute; right:-8%; bottom:-34px; left:-4%; height:62px; border-radius:50%; background:#f4f1ea; }
.card-school-logo { position:absolute; top:13px; left:19px; display:grid; width:35px; height:35px; place-items:center; border:1px solid #e8c65e; border-radius:50%; font-size:9px; font-weight:700; line-height:.9; text-align:center; }
.card-school-logo small{font-size:5px}.card-school-name{position:absolute;top:17px;left:62px;font-size:14px;font-weight:700;line-height:1}.card-school-name small{display:block;margin-top:4px;font-size:5px;letter-spacing:.4px}.card-red-band>strong{position:absolute;top:20px;right:22px;font-size:35px;line-height:1;text-shadow:2px 2px #fff;color:#fff}
.card-beige { position:absolute; inset:76px 0 0; background:#f4f1ea; }
.card-campus-drawing { position:absolute; right:0; bottom:0; left:0; height:37%; opacity:.5; border-bottom:2px solid #b78376; }
.card-campus-drawing i { position:absolute; bottom:0; border:2px solid #b78376; border-bottom:0; }.card-campus-drawing i:nth-child(1){left:0;width:33%;height:40%}.card-campus-drawing i:nth-child(2){left:38%;width:18%;height:72%}.card-campus-drawing i:nth-child(3){left:58%;width:25%;height:45%}.card-campus-drawing i:nth-child(4){right:0;width:20%;height:64%}
.card-content { position:absolute; z-index:3; top:106px; left:48px; display:flex; align-items:flex-start; gap:33px; }
.card-info h2 { display:none; }
.alumni-card-visual.customized .card-info h2 { display:block; }
.card-avatar-wrap { width:148px; height:177px; overflow:hidden; border-radius:5px; background:transparent; box-shadow:none; }.card-avatar { display:none; width:100%; height:100%; object-fit:cover; }.card-avatar.ready { display:block; }.avatar-fallback { display:none; }
.card-info h2 { margin:6px 0 28px; font-size:32px; line-height:1.1; }
.live-time { height:42px; display:flex; align-items:center; justify-content:center; color:#8a929a; font-size:23px; line-height:1; background:#f3f6fa; }
.share-button { display:flex; width:274px; height:65px; align-items:center; justify-content:center; gap:17px; margin:24px auto 18px; border:1px solid #24926a; border-radius:19px; background:#f3f6fa; color:#25936c; font:inherit; font-size:22px; cursor:pointer; }.share-symbol{position:relative;display:block;width:30px;height:30px;font-size:0}.share-symbol:before{content:"";position:absolute;inset:3px 2px 3px 1px;background:radial-gradient(circle at 4px 20px,currentColor 0 4px,transparent 4.5px),radial-gradient(circle at 24px 5px,currentColor 0 4px,transparent 4.5px),radial-gradient(circle at 24px 25px,currentColor 0 4px,transparent 4.5px)}.share-symbol i,.share-symbol b{position:absolute;left:6px;display:block;width:20px;height:2px;background:currentColor;transform-origin:left center}.share-symbol i{top:12px;transform:rotate(-29deg)}.share-symbol b{top:20px;transform:rotate(29deg)}.share-button:active{background:#e7f4ed}
.share-feedback { position:fixed; z-index:20; bottom:108px; left:50%; width:260px; min-height:36px; padding:9px; transform:translateX(-50%) translateY(8px); border-radius:18px; background:#207b55; color:#fff; font-size:14px; line-height:1.2; text-align:center; opacity:0; pointer-events:none; transition:.2s; }.share-feedback.show{opacity:1;transform:translateX(-50%) translateY(0)}
.benefit-panel { margin:0 30px 26px; overflow:hidden; border-radius:17px; background:#fff; }.panel-title{display:flex;height:74px;align-items:center;gap:16px;padding:0 34px;border-bottom:1px solid #ececec}.panel-title strong{font-size:24px;font-weight:600}.panel-title span{color:#a1a5aa;font-size:18px}.benefit-row{position:relative;display:grid;grid-template-columns:48px 1fr 20px;min-height:106px;align-items:center;gap:11px;margin:0 30px;border-bottom:0;color:#111;text-decoration:none}.benefit-row:after{content:"";position:absolute;right:0;bottom:0;left:59px;height:1px;background:#ececec}.benefit-row:last-child:after{display:none}.benefit-row b{font-size:21px;font-weight:500}.benefit-row i{color:#c4c8ca;font-size:31px;font-style:normal}.benefit-logo{display:grid;width:31px;height:31px;place-items:center;font-size:7px;line-height:1;text-align:center}.black-logo{border-radius:5px;background:#000;color:#fff}.orange-logo{color:#e08d68}.red-logo{color:#df201e;font-size:6px}.blue-logo{border:3px solid #0aa6fb;border-radius:50%;color:#f4a400;font-size:17px;font-weight:800}
.share-panel { position:fixed;z-index:30;top:50%;left:50%;width:min(88vw,360px);transform:translate(-50%,-50%);padding:22px 20px 18px;border-radius:16px;background:#fff;box-shadow:0 18px 50px rgba(15,32,48,.28);color:#111;line-height:1.4 }.share-panel[hidden]{display:none}.share-panel h2{margin:0 0 7px;font-size:20px}.share-panel p{margin:0 0 13px;color:#7a838e;font-size:13px}.share-panel input{display:block;width:100%;height:42px;border:1px solid #d7dee6;border-radius:8px;padding:0 10px;background:#f8fafc;font:inherit;font-size:13px}.share-panel-actions{display:flex;gap:10px;margin-top:16px}.share-panel-actions button{flex:1;height:40px;border:1px solid #258158;border-radius:20px;background:#258158;color:#fff;font:inherit;cursor:pointer}.share-panel-actions button:last-child{border-color:#d5dde6;background:#fff;color:#4f5a66}
.profile-page { padding-bottom:80px; background:#fff url("/assets/profile-mountain-masked.png") left 104px / 100% 145px no-repeat; }.profile-identity{position:relative;display:flex;height:163px;align-items:center;padding:0 23px;gap:18px;background:transparent}.profile-avatar-fallback,.profile-avatar{width:82px;height:82px;flex:none;border-radius:50%}.profile-avatar-fallback{display:grid;place-items:center;background:#74a85e;color:#1d3a1e;font-size:22px}.profile-avatar{display:none;object-fit:cover}.profile-avatar.ready{display:block}.profile-avatar.ready + strong{margin-left:-7px}.profile-identity strong{font-size:25px;font-weight:600}.verified{padding:7px 14px;border:1px solid #28794e;border-radius:19px;color:#237044;font-size:17px;white-space:nowrap}.personal-home{display:flex;height:45px;align-items:center;margin-left:auto;padding:0 20px;border-radius:23px;background:#28633d;color:#fff;font-size:18px;text-decoration:none;white-space:nowrap}.profile-card-preview{position:relative;height:317px;margin:0 23px 26px;overflow:hidden;border-radius:16px;background:#f4f1ea}.mini-card-red{position:absolute;top:0;right:0;left:0;height:91px;background:var(--red)}.mini-card-red:after{content:"";position:absolute;right:-8%;bottom:-34px;left:-4%;height:62px;border-radius:50%;background:#f4f1ea}.mini-card-title{position:absolute;z-index:2;top:19px;right:22px;color:#fff;font-size:35px;font-weight:800;text-shadow:2px 2px #fff}.mini-card-body{position:absolute;z-index:3;top:106px;left:48px;display:flex;gap:33px}.mini-card-avatar{width:148px;height:177px;overflow:hidden;border-radius:5px;background:transparent;color:#fff}.mini-card-avatar span{display:none;width:100%;height:100%;place-items:center;font-size:26px;font-weight:800}.mini-card-avatar img{display:none;width:100%;height:100%;object-fit:cover}.mini-card-avatar img.ready{display:block}.mini-card-avatar img.ready + span{display:none}.mini-card-body h2{margin:6px 0 28px;font-size:32px}.mini-card-body p{margin:0 0 15px;font-family:serif;font-size:20px}.mini-card-body small{font-family:serif;font-size:16px}.mini-card-line{position:absolute;right:0;bottom:0;left:0;height:50px;border-bottom:2px solid #ad716a}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);height:93px;margin:0 0 14px;background:#fff}.profile-stats div{display:grid;align-content:center;justify-items:center;border-right:1px solid #e2e5e7}.profile-stats div:last-child{border:0}.profile-stats b{font-size:25px;font-weight:500}.profile-stats span{margin-top:8px;color:#9098a1;font-size:18px}.settings-section{margin:0 0 14px;background:#fff}.setting-row{position:relative;display:flex;min-height:91px;align-items:center;gap:20px;margin-left:23px;padding-right:17px;border-bottom:1px solid #ececec;color:#111;text-decoration:none}.setting-row:last-child{border:0}.setting-row b{font-size:22px;font-weight:500}.setting-row em{margin-left:auto;color:#949ba2;font-size:18px;font-style:normal}.setting-row i{margin-left:auto;color:#c6c9cc;font-size:33px;font-style:normal}.setting-icon{display:block;width:38px;height:38px;flex:none;object-fit:contain}.setting-icon:before,.setting-icon:after{display:none}.setting-icon-enterprise{visibility:hidden}
.editor-body{min-height:100vh;background:#f3f6fb;color:#111;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif}.editor-shell{width:min(620px,100vw);min-height:100vh;margin:0 auto;padding:0 22px 34px;background:#f3f6fb}.editor-header{position:relative;display:flex;height:72px;align-items:center;justify-content:center}.editor-header h1{margin:0;font-size:20px;font-weight:500}.editor-back{position:absolute;left:0;top:11px;display:flex;width:45px;height:45px;align-items:center;justify-content:center;color:#111;font-size:40px;text-decoration:none}.editor-form{display:grid;gap:18px;padding:26px 20px 24px;border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(22,43,68,.06)}.editor-avatar-label{position:relative;display:grid;width:112px;height:112px;margin:0 auto 8px;place-items:center;cursor:pointer;overflow:hidden;border-radius:50%;background:#e4edf2}.editor-avatar{width:100%;height:100%;object-fit:cover}.editor-avatar-tip{position:absolute;right:0;bottom:0;left:0;padding:7px 3px;background:rgba(0,0,0,.48);color:#fff;font-size:12px;text-align:center}.editor-form label:not(.editor-avatar-label){display:grid;gap:8px;color:#5c6672;font-size:15px}.editor-form input:not([type=file]){width:100%;height:48px;border:1px solid #d9e0e8;border-radius:10px;padding:0 14px;font:inherit;font-size:16px}.serial-control{display:grid;grid-template-columns:1fr 48px;gap:8px}.serial-control button{height:48px;border:1px solid #238056;border-radius:10px;background:#fff;color:#238056;font-size:24px;line-height:1;cursor:pointer}.editor-status{min-height:22px;margin:-4px 0 0;color:#87909a;font-size:13px;text-align:center}.editor-submit{height:48px;border:0;border-radius:24px;background:#238056;color:#fff;font:inherit;font-size:16px;cursor:pointer}
@media (max-width:619px){.mini-program-mark{right:8px;width:180px}.app-header h1{font-size:22px}.hero-copy{left:138px}.hero-copy strong{font-size:31px}.hero-copy span{height:32px}.service-grid{padding-right:20px;padding-left:20px}.service-item strong{font-size:17px}.alumni-card-visual,.profile-card-preview{margin-right:23px;margin-left:23px}.card-content,.mini-card-body{left:31px;gap:22px}.card-avatar-wrap,.mini-card-avatar{width:148px}.card-info h2,.mini-card-body h2{font-size:29px}.profile-identity{gap:10px;padding-right:14px;padding-left:23px}.profile-identity strong{font-size:22px}.verified{padding:6px 10px;font-size:15px}.personal-home{padding:0 12px;font-size:15px}.setting-row b{font-size:20px}.setting-row em{font-size:15px}.panel-title{padding:0 24px}.panel-title strong{font-size:22px}.panel-title span{font-size:16px}}
@media (max-width:619px){.card-content,.mini-card-body{left:29px;gap:20px}.card-avatar-wrap,.mini-card-avatar{width:89px;flex:none}.alumni-card-visual.customized .card-info h2,.profile-card-preview.customized .mini-card-body h2{width:190px;white-space:nowrap}.alumni-card-visual.customized .card-info p,.alumni-card-visual.customized .card-info small,.profile-card-preview.customized .mini-card-body p,.profile-card-preview.customized .mini-card-body small{width:190px;white-space:nowrap}}
.profile-stats div{border-right:0}
.service-icon{background-position:center;background-repeat:no-repeat;background-size:contain}.service-icon:before,.service-icon:after{display:none}.building-icon{background-image:url("/assets/service-icon-enterprise.png")}.archive-icon{background-image:url("/assets/service-icon-archive.png")}.gift-icon{background-image:url("/assets/service-icon-gift.png")}.camera-icon{background-image:url("/assets/service-icon-campus.png")}.photo-icon{background-image:url("/assets/service-icon-photo.png")}.text-icon{background-image:url("/assets/service-icon-brand.png");font-size:0}.card-icon{background-image:url("/assets/service-icon-card.png")}.star-icon{background-image:url("/assets/service-icon-star.png");font-size:0}.brand-icon{background-image:url("/assets/service-icon-zhanlu.png");font-size:0}.forum-icon{background-image:url("/assets/service-icon-forum.png")}.profile-page .profile-identity{background:transparent}.profile-page .profile-identity > *{transform:translateY(-8px)}
 .editor-avatar{display:none}
 .editor-avatar.ready{display:block}
 .editor-avatar-initial{display:grid;width:100%;height:100%;place-items:center;background:#74a85e;color:#1d3a1e;font-size:30px}
.profile-card-preview{height:318px;background:#f4f1ea url("/assets/alumni-card-exact-hd.png") center / 100% 100% no-repeat}
.profile-card-preview .mini-card-red,.profile-card-preview .mini-card-title,.profile-card-preview .mini-card-line{display:none}
.profile-card-preview:not(.customized) .mini-card-body{display:none}
.mini-card-avatar{background:transparent}
.mini-card-avatar span{display:none}
.mini-card-body p,.mini-card-body small{display:none}
.mini-card-body h2{width:190px;padding:0 3px;background:#f4f1ea;line-height:1.1}
.profile-card-preview:not(.customized) .mini-card-body{display:none}
.alumni-card-visual.customized .card-info h2{width:190px;padding:0 3px;background:#f4f1ea}
.profile-avatar-fallback{background:#74a85e url("/assets/profile-avatar-default.png") center/cover no-repeat;color:transparent}
.profile-identity{height:162px}
.alumni-card-visual.customized,.profile-card-preview.customized{background-image:url("/assets/alumni-card-custom-base-hd.png")}
.alumni-card-visual.customized .card-info h2,.profile-card-preview.customized .mini-card-body h2{margin:6px 0 33px;width:220px;height:auto;padding:0 3px;background:transparent;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;font-weight:700;line-height:1.1}
.alumni-card-visual.customized .card-info p,.profile-card-preview.customized .mini-card-body p{width:230px;height:auto;margin:0 0 19px;padding:0 3px;background:transparent;line-height:1.15}
.alumni-card-visual.customized .card-info p:nth-of-type(2),.profile-card-preview.customized .mini-card-body p:nth-of-type(2){margin-bottom:20px}
.alumni-card-visual.customized .card-info small,.profile-card-preview.customized .mini-card-body small{display:block;width:230px;height:auto;padding:0 3px;background:transparent;line-height:1.15}
.nav-home-image{content:url("/assets/nav-home-seal-hd.png");image-rendering:auto}
.login-mark img{content:url("/assets/nav-home-seal-hd.png");image-rendering:auto}
.text-icon{background-image:url("/assets/service-icon-brand.png")}.text-icon small{display:none}
.share-symbol:before,.share-symbol:after,.share-symbol i,.share-symbol b{display:none}
.share-symbol svg{display:block;width:30px;height:30px;overflow:visible;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mini-card-avatar{background:transparent url("/assets/alumni-card-avatar-default-hd.png") center/100% 100% no-repeat}
.card-info p,.card-info small{display:none}
.alumni-card-visual.customized .card-info p,.alumni-card-visual.customized .card-info small{display:block;width:220px;padding:0 3px;background:#f4f1ea;font-weight:700}
.card-info p{margin:0 0 15px;font-family:serif;font-size:20px;line-height:1.15}
.card-info small{font-family:serif;font-size:16px;line-height:1.15}
.profile-card-preview.customized .mini-card-body p,.profile-card-preview.customized .mini-card-body small{display:block;width:220px;padding:0 3px;background:#f4f1ea;font-weight:700}
.profile-card-preview.customized .mini-card-body p{line-height:1.15}
.profile-card-preview.customized .mini-card-body small{line-height:1.15}

.login-body{min-height:100vh;margin:0;background:#f3f6fa;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;color:#111}.login-shell{display:grid;min-height:100vh;width:min(620px,100vw);margin:0 auto;place-items:center;padding:28px}.login-panel{width:min(420px,100%);padding:38px 32px 30px;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(31,61,83,.1);text-align:center}.login-mark{display:grid;width:74px;height:74px;margin:0 auto 18px;place-items:center}.login-mark img{width:74px;height:74px;object-fit:contain}.login-panel h1{margin:0;font-size:24px;font-weight:600}.login-panel>p{margin:10px 0 28px;color:#86909a;font-size:15px}.login-panel form{display:grid;gap:10px;text-align:left}.login-panel label{color:#5d6872;font-size:14px}.login-panel input{height:48px;border:1px solid #d9e0e7;border-radius:10px;padding:0 14px;font:inherit;font-size:16px}.login-panel button{height:48px;margin-top:8px;border:0;border-radius:24px;background:#237d4e;color:#fff;font:inherit;font-size:16px;cursor:pointer}.login-status{min-height:22px;color:#8b959e;font-size:13px;text-align:center}.login-status.ok{color:#237d4e}.login-status.error{color:#b33b36}
@media (max-width:619px){.card-content,.mini-card-body{left:29px;gap:20px}.card-avatar-wrap,.mini-card-avatar{width:89px;flex:none}.alumni-card-visual.customized .card-info h2,.profile-card-preview.customized .mini-card-body h2{width:190px;white-space:nowrap}.alumni-card-visual.customized .card-info p,.alumni-card-visual.customized .card-info small,.profile-card-preview.customized .mini-card-body p,.profile-card-preview.customized .mini-card-body small{width:190px;white-space:nowrap}}
