:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#253044;background:#f4f6f9;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f4f6f9}button{font:inherit}.page-shell{min-height:100vh;padding-bottom:138px}.loading-state{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#8a94a6;font-size:14px}.spinner{width:30px;height:30px;border:3px solid #dce7f1;border-top-color:#1c9a72;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.topbar{height:68px;padding:0 max(20px,calc((100vw - 920px)/2));background:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px #2130480f;position:sticky;top:0;z-index:5}.topbar-brand{display:flex;align-items:center;gap:9px;color:#253449;font-size:18px;font-weight:700}.brand-mark{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;color:#fff;background:#159465;font-size:17px;font-weight:800}.download-button{border:0;border-radius:18px;padding:8px 15px 8px 17px;background:#58bd79;color:#fff;font-size:14px;font-weight:600;cursor:pointer}.download-button span{margin-left:3px;font-size:20px;line-height:10px;vertical-align:-1px}.content{width:min(100% - 32px,700px);margin:0 auto;padding-top:18px}.data-hint{text-align:center;font-size:12px;color:#a0a9b6;margin:0 0 10px}.share-strip{min-height:44px;margin-bottom:12px;padding:8px 12px 8px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid rgba(44,61,84,.05);border-radius:11px;box-shadow:0 2px 10px #31425c0d}.share-label{color:#748093;font-size:13px}.share-options{display:flex;gap:5px}.share-options button{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;color:#4e5e73;font-size:13px;border:0;background:transparent;cursor:pointer}.share-icon{width:20px;height:20px;display:inline-grid;place-items:center;border-radius:50%;color:#fff;font-size:10px}.share-icon.wechat{background:#52b96f}.share-icon.moments{background:#e5a35f;font-size:12px}.profile-card{overflow:hidden;background:linear-gradient(126deg,#fffdf9,#fff2e1);border:1px solid rgba(245,184,123,.45);border-radius:16px;box-shadow:0 5px 18px #3548651a}.profile-card.expert{background:linear-gradient(126deg,#f6fbff,#deefff);border-color:#5e9bd359}.profile-main{padding:23px 22px 18px;display:flex;justify-content:space-between;gap:18px}.profile-copy{min-width:0}.name-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}h1{margin:0;font-size:23px;letter-spacing:0;color:#23334b}.verified-badge{color:#d9814c;background:#f69b682b;border-radius:10px;padding:3px 7px;font-size:11px;font-weight:600;white-space:nowrap}.badge-star{margin-right:3px}.role-line{margin:11px 0 0;line-height:1.45;font-size:15px;color:#3d4b61}.meta-line{margin:10px 0 0;font-size:14px;color:#6f7b8d}.meta-icon{display:inline-block;width:19px;color:#65758c;font-size:11px}.avatar{width:92px;height:92px;margin-top:2px;border-radius:50%;object-fit:cover;border:4px solid rgba(29,125,170,.35);flex:0 0 auto;background:#d7e4ee}.profile-card:not(.expert) .avatar{border-color:#1f709b59}.id-ribbon{padding:10px 22px;color:#fff;background:#eca867;font-size:14px}.expert .id-ribbon{background:#2d4b73}.id-ribbon span{margin-right:5px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.summary-item{min-height:82px;background:#edf3fa;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center}.summary-item strong{font-size:24px;line-height:1.15;color:#263347;font-weight:500}.summary-item small{margin-left:3px;font-size:13px}.summary-item span{margin-top:5px;color:#647087;font-size:13px}.info-section{margin:12px 0;padding:17px 16px 18px;background:#fff;border:1px solid rgba(44,61,84,.05);border-radius:14px;box-shadow:0 3px 14px #31425c12}h2{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:17px;color:#28354a;font-weight:700}h2:before{content:"";width:4px;height:17px;background:#1475bc;border-radius:2px}.tag-list{display:flex;flex-wrap:wrap;gap:9px 8px}.tag-list span{padding:7px 10px;border-radius:5px;font-size:13px;line-height:1.15}.blue-tags span{background:#edf5fc;color:#4783bd}.peach-tags span{background:#fff5ee;color:#df9a68}.cases-section ul{padding:0 0 0 21px;margin:0}.cases-section li{padding-left:2px;margin:6px 0;color:#475366;font-size:14px;line-height:1.5}.image-row{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}.image-row::-webkit-scrollbar{display:none}.thumb{padding:0;border:0;background:transparent;border-radius:10px;overflow:hidden;cursor:zoom-in;flex:0 0 31%;aspect-ratio:1.48}.thumb img{width:100%;height:100%;display:block;object-fit:cover}.certificate-thumb{aspect-ratio:1.42}.text-section p{margin:0;color:#586375;font-size:14px;line-height:1.75}.bottom-actions{position:fixed;bottom:0;left:0;right:0;z-index:6;padding:11px max(16px,calc((100vw - 700px)/2)) 12px;background:#fffffff5;box-shadow:0 -4px 18px #3548651a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.action-button{height:45px;border-radius:6px;font-size:16px;cursor:pointer}.action-button.outline{color:#55b77a;border:1px solid #55b77a;background:#fff}.action-button.solid{color:#fff;border:1px solid #55b77a;background:#55b77a}.phone-link{width:100%;border:0;background:transparent;color:#838b97;font-size:13px;padding:10px 0 0;cursor:pointer}.phone-link b{color:#478fbe;text-decoration:underline;font-weight:500;margin-left:3px}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:40px 16px 88px;background:#131d2ceb}.viewer>img{max-width:100%;max-height:100%;object-fit:contain;border-radius:5px}.viewer-close{position:absolute;top:18px;right:20px;border:0;background:transparent;color:#fff;font-size:35px;cursor:pointer;line-height:1}.viewer-controls{position:absolute;bottom:24px;display:flex;align-items:center;gap:26px;color:#fff;font-size:14px}.viewer-controls button{width:34px;height:34px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:transparent;color:#fff;font-size:25px;cursor:pointer}.viewer-controls button:disabled{opacity:.3;cursor:not-allowed}.toast{position:fixed;left:50%;bottom:150px;transform:translate(-50%);z-index:60;padding:10px 16px;border-radius:8px;background:#1f2937e6;color:#fff;font-size:13px;white-space:nowrap}.toast-enter-active,.toast-leave-active{transition:opacity .18s,transform .18s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,8px)}.guide-enter-active,.guide-leave-active{transition:opacity .2s}.guide-enter-active .guide-card,.guide-leave-active .guide-card{transition:transform .2s}.guide-enter-from,.guide-leave-to{opacity:0}.guide-enter-from .guide-card,.guide-leave-to .guide-card{transform:translateY(16px)}body.guide-lock{overflow:hidden}.browser-guide{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;justify-content:center;align-items:flex-end;padding:0 20px 56px;background:#111a28bd;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.guide-arrow{position:absolute;top:12px;right:22px;color:#fff;font-size:40px;line-height:1;animation:guide-bounce 1.2s ease-in-out infinite}@keyframes guide-bounce{0%,to{transform:translate(0)}50%{transform:translate(8px,-8px)}}.guide-card{width:100%;max-width:360px;padding:22px 20px 18px;text-align:center;background:#fff;border-radius:16px;box-shadow:0 10px 30px #14203240}.guide-card h3{margin:0 0 10px;font-size:18px;color:#23334b}.guide-desc{margin:0 0 14px;color:#6f7b8d;font-size:13px;line-height:1.7}.guide-step{margin:0 0 18px;padding:12px 10px;border-radius:10px;background:#f3f6fa;color:#3d4b61;font-size:14px;line-height:1.9}.guide-step b{color:#159465}.guide-primary{width:100%;height:44px;border:0;border-radius:8px;background:#55b77a;color:#fff;font-size:16px;cursor:pointer}.guide-secondary{width:100%;margin-top:6px;padding:11px 0;border:0;background:transparent;color:#98a2b0;font-size:13px;cursor:pointer}@media(min-width:760px){.page-shell{padding-bottom:145px}.topbar{height:76px}.content{padding-top:24px}.profile-main{padding:27px 28px 22px}.info-section{padding:19px 20px 21px}.thumb{flex-basis:31.5%}}@media(max-width:380px){.content{width:min(100% - 22px,700px)}.profile-main{padding:18px 15px 15px;gap:8px}.avatar{width:78px;height:78px}h1{font-size:21px}.role-line{font-size:14px}.meta-line{font-size:13px}.info-section{padding:15px 13px 16px}}
