#viewModal .modal-box{width:min(900px,92vw);max-height:88vh;border-radius:16px}
#viewModal .modal-hd{padding:20px 32px 16px}
#viewModal .modal-bd{padding:0 32px 20px}
#viewModal .modal-ft{padding:16px 32px 20px}
.dv-hdr{display:flex;gap:24px;padding:20px 0 16px;border-bottom:1.5px solid var(--border);margin:0 0 16px;position:relative}
.dv-hdr::after{content:'';position:absolute;bottom:-1.5px;left:0;width:80px;height:3px;background:var(--blue);border-radius:2px}
.dv-av{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--blue),#60a5fa);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;box-shadow:0 6px 20px rgba(26,86,219,0.25);position:relative;margin-top:2px}
.dv-av::after{content:'';position:absolute;inset:-3px;border-radius:50%;border:2px solid rgba(255,255,255,0.3)}
.dv-hdr-info{flex:1;min-width:0}
.dv-hdr-top{display:flex;align-items:center;gap:16px;margin-bottom:6px}
.dv-hdr-top h2{font-size:20px;color:var(--text);font-weight:700;font-family:"Noto Serif SC",serif;white-space:nowrap}
.dv-hdr-top .sub{font-size:13px;color:var(--text-dim)}
.dv-hdr-top .sub em{font-style:normal;color:var(--blue);font-weight:500}
.dv-info-bar{display:flex;flex-wrap:wrap;column-gap:14px;margin-bottom:8px}
.dv-info-bar .ib{display:flex;gap:4px;align-items:center;white-space:nowrap}
.dv-info-bar .ib .l{font-size:11px;color:var(--text-muted)}
.dv-info-bar .ib .r{font-size:12px;color:var(--text);font-weight:600}
.dv-hdr-info .tags{display:flex;gap:4px;flex-wrap:wrap}
.dv-hdr-info .tags span{background:var(--blue-subtle);color:var(--blue);padding:2px 10px;border-radius:4px;font-size:10.5px;font-weight:600;letter-spacing:.2px}
.dv-body{display:flex;flex-direction:column;gap:12px}
.dv-sec{margin-bottom:16px}
.dv-sec:last-child{margin-bottom:0}
.dv-sec-hd{font-size:12px;color:var(--text);font-weight:650;margin-bottom:8px;display:flex;align-items:center;gap:6px;letter-spacing:.4px}
.dv-sec-hd i{color:var(--blue);font-size:12px;width:16px;text-align:center}
.dv-job{display:flex;gap:14px;margin-bottom:10px}
.dv-job:last-child{margin-bottom:0}
.dv-job .time{font-size:11px;color:var(--blue);font-weight:600;white-space:nowrap;min-width:100px;padding-top:1px}
.dv-job .bd{flex:1;min-width:0}
.dv-job .bd .pos{font-size:13px;color:var(--text);font-weight:600}
.dv-job .bd .comp{font-size:11.5px;color:var(--text-muted)}
.dv-job .bd p{font-size:12px;color:var(--text-dim);line-height:1.6;margin-top:2px}
.dv-edu{display:flex;gap:14px}
.dv-edu .time{font-size:11px;color:#059669;font-weight:600;white-space:nowrap;min-width:100px;padding-top:1px}
.dv-edu .bd .school{font-size:13px;font-weight:600;color:var(--text)}
.dv-edu .bd .major{font-size:11.5px;color:var(--text-dim)}
.dv-intention{display:flex;flex-wrap:wrap;gap:4px 16px}
.dv-intention .it{display:flex;gap:4px;align-items:center}
.dv-intention .it .l{font-size:11.5px;color:var(--text-muted)}
.dv-intention .it .r{font-size:12.5px;color:var(--text);font-weight:500}
.invite-avatar-img{width:28px;height:28px;border-radius:50%;object-fit:cover;margin-right:6px;flex-shrink:0;vertical-align:middle}
.invite-user{display:inline-flex;align-items:center;cursor:pointer;color:var(--blue);font-weight:500}
.invite-user .name{font-weight:600;color:var(--blue)}
.invite-user:hover .name{text-decoration:underline}
.position-link{color:var(--blue);text-decoration:none;font-weight:500;cursor:pointer;transition:color .2s}
.position-link:hover{color:var(--blue-light);text-decoration:underline}
.talent-main td{border-bottom:1px solid var(--border);transition:all .25s cubic-bezier(.23,1,.32,1)}
.talent-skills td{background:var(--bg);border-top:none !important;text-align:left !important;padding:6px 18px !important;transition:all .25s cubic-bezier(.23,1,.32,1)}
.talent-skills td .skill-tags{display:inline-flex;gap:3px;flex-wrap:wrap}
.skill-tags span{background:var(--blue-subtle);color:var(--blue);padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}
.talent-note{font-size:12px;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;gap:4px;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 8px;border-radius:6px;transition:.2s}
.talent-note:hover{background:var(--bg);color:var(--text)}
.talent-main.hover td{background:var(--sky) !important}
.talent-skills.hover td{background:#eef2ff !important}
.btn-chat{background:transparent;color:#16a34a;border:1.5px solid #16a34a;padding:10px 22px;font-size:13px;border-radius:8px;cursor:pointer;font-weight:600;transition:.2s;font-family:inherit}
.btn-chat:hover{background:#f0fdf4;transform:translateY(-1px);box-shadow:0 3px 10px rgba(22,163,74,0.08)}
.btn-chat:active{transform:translateY(0)}
