.engineer-page{
    --eng-blue:#075ea8;
    --eng-blue-dark:#07345f;
    --eng-green:#168a61;
    --eng-ink:#102033;
    --eng-muted:#64748b;
    --eng-line:rgba(15,23,42,.09);
    color:var(--eng-ink);
}
.engineer-page *{box-sizing:border-box}
.engineer-hero,.engineer-profile-hero{
    background:
        radial-gradient(circle at 90% 0%,rgba(14,165,233,.16),transparent 30%),
        radial-gradient(circle at 0 100%,rgba(22,163,74,.10),transparent 28%),
        linear-gradient(135deg,#f3faff,#f8fff9 55%,#fff);
}
.engineer-kicker{
    display:inline-flex;align-items:center;gap:.45rem;padding:.48rem .8rem;border-radius:999px;
    background:#fff;border:1px solid rgba(2,132,199,.15);color:#0369a1;font-size:.72rem;
    font-weight:850;text-transform:uppercase;letter-spacing:.04em;
}
.engineer-title{color:#082f55;font-size:clamp(2.1rem,7vw,3.55rem);line-height:1.05;letter-spacing:-.04em}
.engineer-profile-name{font-size:clamp(2rem,6vw,3.15rem)}
.engineer-lead{max-width:800px;color:#526579;line-height:1.78}
.engineer-profile-headline{color:#075985;font-size:1.15rem;font-weight:800}
.engineer-profile-meta{display:flex;flex-wrap:wrap;gap:.45rem 1rem;color:#64748b;font-size:.82rem}
.engineer-profile-meta i{color:#0877bb}
.engineer-search{
    position:relative;z-index:5;margin-top:-2.5rem;border:1px solid var(--eng-line);border-radius:1.25rem;
    background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.10)
}
.engineer-stat{height:100%;padding:1rem;border:1px solid var(--eng-line);border-radius:1rem;background:#fff}
.engineer-stat strong{display:block;color:#0b355b;font-size:1.6rem;line-height:1}
.engineer-stat span{display:block;margin-top:.45rem;color:#738195;font-size:.76rem}
.engineer-card{
    height:100%;border:1px solid var(--eng-line);border-radius:1.15rem;background:#fff;
    box-shadow:0 10px 28px rgba(15,23,42,.055);transition:.2s ease
}
.engineer-card:hover{transform:translateY(-3px);border-color:rgba(7,94,168,.22);box-shadow:0 18px 38px rgba(15,23,42,.10)}
.engineer-avatar{width:4.3rem;height:4.3rem;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:1rem;background:#eaf7ff;color:#075985;font-size:1.45rem;font-weight:900;overflow:hidden}
.engineer-avatar img,.engineer-profile-avatar img,.engineer-related-avatar img{width:100%;height:100%;object-fit:cover}
.engineer-profile-avatar{width:9rem;height:9rem;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:1.5rem;background:#eaf7ff;color:#075985;font-size:3rem;font-weight:900;overflow:hidden;border:4px solid rgba(255,255,255,.8);box-shadow:0 14px 34px rgba(15,23,42,.12)}
.engineer-card-summary{min-height:3.8em}
.engineer-card-meta{display:flex;flex-wrap:wrap;gap:.35rem .7rem;color:#64748b;font-size:.7rem}
.engineer-skill{display:inline-flex;align-items:center;gap:.35rem;margin:.16rem;padding:.38rem .58rem;border-radius:999px;background:#effaff;color:#075985;font-size:.68rem;font-weight:850}
.engineer-skill-lg{padding:.48rem .72rem;font-size:.74rem}
.engineer-skill small{padding-left:.35rem;border-left:1px solid rgba(7,94,168,.15);font-weight:700;color:#4b6b7f}
.engineer-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.8rem;padding:.72rem 1.1rem;border-radius:999px;font-weight:800;text-decoration:none;transition:.2s ease}
.engineer-btn-primary{color:#fff;background:linear-gradient(135deg,#0877bb,#168a61);border:0}
.engineer-btn-primary:hover{color:#fff;transform:translateY(-1px);box-shadow:0 10px 24px rgba(7,94,168,.18)}
.engineer-btn-outline{color:#075985;background:#fff;border:1px solid rgba(7,94,168,.24)}
.engineer-btn-outline:hover{color:#064c72;background:#effaff}
.engineer-privacy-note{display:inline-flex;align-items:center;gap:.4rem;color:#64748b;font-size:.74rem}
.engineer-empty{padding:2.2rem 1rem;border:1px dashed rgba(100,116,139,.28);border-radius:1rem;background:#f8fafc;text-align:center;color:#64748b}
.engineer-section-card,.engineer-side-card,.engineer-privacy-card{border:1px solid var(--eng-line);border-radius:1.15rem;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.engineer-body{color:#526070;line-height:1.78}
.engineer-section-count{display:inline-flex;min-width:1.8rem;height:1.8rem;align-items:center;justify-content:center;border-radius:999px;background:#effaff;color:#075985;font-size:.72rem;font-weight:900}
.engineer-timeline{position:relative}
.engineer-timeline-item{position:relative;display:grid;grid-template-columns:1.4rem 1fr;gap:.65rem;padding-bottom:1.6rem}
.engineer-timeline-item:before{content:"";position:absolute;left:.43rem;top:1rem;bottom:0;width:1px;background:#dbe7ef}
.engineer-timeline-item:last-child:before{display:none}
.engineer-timeline-dot{width:.85rem;height:.85rem;margin-top:.25rem;border-radius:999px;background:#0877bb;box-shadow:0 0 0 5px #effaff}
.engineer-project-card{padding:1rem;border:1px solid var(--eng-line);border-radius:1rem;background:#f8fafc}
.engineer-list-row{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--eng-line)}
.engineer-list-row:last-child{border-bottom:0}
.engineer-side-row{display:flex;flex-direction:column;gap:.12rem;padding:.75rem 0;border-bottom:1px solid var(--eng-line)}
.engineer-side-row:last-child{border-bottom:0}
.engineer-side-row small{color:#64748b}
.engineer-privacy-card{background:#f8fafc;color:#64748b}
.engineer-privacy-inline{display:flex;gap:.45rem;color:#64748b;font-size:.72rem}
.engineer-related-row{display:flex;gap:.7rem;align-items:center;padding:.7rem 0;border-bottom:1px solid var(--eng-line)}
.engineer-related-row:last-child{border-bottom:0}
.engineer-related-avatar{width:2.7rem;height:2.7rem;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:.75rem;background:#eaf7ff;color:#075985;font-weight:900;overflow:hidden}
.engineer-profile-actions{padding:1rem;border:1px solid rgba(7,94,168,.14);border-radius:1rem;background:rgba(255,255,255,.72)}
.min-w-0{min-width:0}

@media(max-width:767.98px){
    .engineer-search{margin-top:-1.35rem}
    .engineer-profile-avatar{width:7rem;height:7rem;font-size:2.3rem}
    .engineer-list-row{flex-direction:column;gap:.3rem}
}


/* ==========================================================================
   Engineer Profile Social Frontend V2.1
   High-fidelity professional networking profile.
   Prefix: ep-
   ========================================================================== */

.ep-social-page{
    --ep-blue:#1265e3;
    --ep-blue-deep:#0b3f91;
    --ep-cyan:#0ea5b7;
    --ep-teal:#13a77b;
    --ep-green:#16a36d;
    --ep-ink:#172033;
    --ep-body:#536176;
    --ep-muted:#78869a;
    --ep-bg:#f4f7fb;
    --ep-card:#ffffff;
    --ep-border:#e5ebf2;
    --ep-shadow:0 10px 30px rgba(22,34,51,.055);
    --ep-radius:16px;
    background:var(--ep-bg);
    color:var(--ep-ink);
}

.ep-social-shell{
    padding:96px 0 64px;
    background:
        radial-gradient(circle at 7% 0%,rgba(18,101,227,.055),transparent 28%),
        radial-gradient(circle at 97% 8%,rgba(19,167,123,.055),transparent 24%),
        var(--ep-bg);
}

.ep-social-container{
    max-width:1440px;
}

.ep-social-breadcrumb{
    display:flex;
    align-items:center;
    gap:.42rem;
    margin-bottom:.8rem;
    font-size:.72rem;
    color:var(--ep-muted);
}

.ep-social-breadcrumb a{
    color:#526176;
    text-decoration:none;
}

.ep-social-breadcrumb a:hover{color:var(--ep-blue)}
.ep-social-breadcrumb i{font-size:.58rem;color:#a6b1bf}

/* Master Profile */
.ep-profile-master-card{
    overflow:hidden;
    margin-bottom:1.15rem;
    border:1px solid var(--ep-border);
    border-radius:18px;
    background:var(--ep-card);
    box-shadow:var(--ep-shadow);
}

.ep-cover{
    position:relative;
    height:245px;
    overflow:hidden;
    background:
        radial-gradient(circle at 75% 30%,rgba(47,198,220,.38),transparent 22%),
        linear-gradient(125deg,#0a356b 0%,#075ea8 44%,#0577a1 72%,#0b8d86 100%);
}

.ep-cover.no-cover:before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.28;
    background-image:
        linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);
    background-size:42px 42px;
    transform:perspective(500px) rotateX(54deg) scale(1.7);
    transform-origin:center 80%;
}

.ep-cover-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.ep-cover-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,rgba(4,29,61,.12),rgba(5,58,117,.22) 52%,rgba(2,44,87,.66)),
        linear-gradient(0deg,rgba(7,25,44,.12),transparent 52%);
}

.ep-cover-brand{
    position:absolute;
    right:46px;
    bottom:38px;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    color:#fff;
    text-align:right;
    text-shadow:0 3px 14px rgba(0,0,0,.22);
}

.ep-cover-brand span{
    font-size:.67rem;
    letter-spacing:.16em;
    font-weight:800;
    opacity:.78;
}

.ep-cover-brand strong{
    margin-top:.12rem;
    font-size:1.55rem;
    font-weight:850;
    letter-spacing:-.025em;
}

.ep-cover-wave{
    position:absolute;
    right:48px;
    top:42px;
    display:grid;
    gap:4px;
    width:34px;
    opacity:.9;
}

.ep-cover-wave span{
    display:block;
    height:5px;
    border-top:2px solid rgba(255,255,255,.85);
    border-radius:50%;
    transform:skewX(-22deg);
}

.ep-profile-identity{
    position:relative;
    display:grid;
    grid-template-columns:155px minmax(0,1fr) 330px;
    gap:1.35rem;
    min-height:138px;
    padding:20px 30px 20px 32px;
}

.ep-profile-avatar-wrap{
    position:relative;
    height:110px;
}

.ep-profile-avatar{
    position:absolute;
    left:0;
    bottom:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:144px;
    height:144px;
    overflow:hidden;
    border:6px solid #fff;
    border-radius:50%;
    background:linear-gradient(135deg,#e8f4ff,#dff7ef);
    color:var(--ep-blue-deep);
    font-size:2.4rem;
    font-weight:900;
    box-shadow:0 10px 26px rgba(17,31,48,.18);
}

.ep-profile-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ep-avatar-status{
    position:absolute;
    right:7px;
    bottom:10px;
    z-index:4;
    width:23px;
    height:23px;
    border:4px solid #fff;
    border-radius:50%;
    background:#16ad7b;
    box-shadow:0 2px 7px rgba(0,0,0,.15);
}

.ep-profile-main-info{
    min-width:0;
    padding-top:2px;
}

.ep-name-line{
    display:flex;
    align-items:center;
    gap:.48rem;
    min-width:0;
}

.ep-name-line h1{
    margin:0;
    color:#182135;
    font-size:clamp(1.38rem,2.3vw,2rem);
    line-height:1.15;
    letter-spacing:-.03em;
    font-weight:850;
}

.ep-verified-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    color:#1681f2;
    font-size:1.12rem;
}

.ep-headline{
    margin-top:.32rem;
    color:#4b5b70;
    font-size:.9rem;
    font-weight:650;
}

.ep-meta-row{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:.42rem .85rem;
    margin-top:.55rem;
    color:#77869a;
    font-size:.72rem;
}

.ep-meta-row span{
    display:inline-flex;
    align-items:center;
    gap:.3rem;
}

.ep-meta-row i{color:#6e82a0}

.ep-meta-row .ep-availability{
    padding:.25rem .55rem;
    border-radius:999px;
    background:#eafaf2;
    color:#15825e;
    font-weight:750;
}

.ep-meta-row .ep-availability i{
    color:#21a878;
    font-size:.45rem;
}

.ep-top-skills{
    display:flex;
    flex-wrap:wrap;
    gap:.34rem;
    margin-top:.65rem;
}

.ep-top-skills span,
.ep-top-skills a{
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:.25rem .56rem;
    border-radius:999px;
    background:#edf4ff;
    color:#2868bd;
    font-size:.64rem;
    font-weight:750;
    text-decoration:none;
}

.ep-top-skills a{
    background:transparent;
    color:#64768d;
}

.ep-profile-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.55rem;
    align-content:center;
}

.ep-action-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.42rem;
    min-height:39px;
    padding:.55rem .75rem;
    border:1px solid #dce4ec;
    border-radius:8px;
    background:#fff;
    color:#36465b;
    font-size:.72rem;
    font-weight:750;
    text-decoration:none;
    cursor:pointer;
    transition:.16s ease;
}

.ep-action-btn:hover{
    border-color:#b9c9dc;
    background:#f8fbff;
    color:#1265e3;
    transform:translateY(-1px);
}

.ep-action-primary{
    border-color:#1265e3;
    background:#1265e3;
    color:#fff;
}

.ep-action-primary:hover{
    border-color:#0f59ca;
    background:#0f59ca;
    color:#fff;
}

.ep-profile-stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin:0 30px 22px;
    border:1px solid var(--ep-border);
    border-radius:11px;
    background:#fff;
}

.ep-stat-item{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.75rem;
    min-height:70px;
    padding:.8rem 1rem;
}

.ep-stat-item:not(:last-child):after{
    content:"";
    position:absolute;
    right:0;
    top:17px;
    bottom:17px;
    width:1px;
    background:#e8edf3;
}

.ep-stat-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:35px;
    height:35px;
    border-radius:9px;
    color:#1265e3;
    font-size:1.25rem;
}

.ep-stat-item strong{
    display:block;
    color:#1c2638;
    font-size:1.08rem;
    line-height:1;
    font-weight:850;
}

.ep-stat-item span{
    display:block;
    margin-top:.24rem;
    color:#68778b;
    font-size:.66rem;
}

/* Content */
.ep-content-grid{
    align-items:flex-start;
}

.ep-section-card,
.ep-side-card{
    border:1px solid var(--ep-border);
    border-radius:14px;
    background:var(--ep-card);
    box-shadow:var(--ep-shadow);
}

.ep-section-card{
    padding:20px 22px;
}

.ep-side-card{
    margin-bottom:1rem;
    padding:18px;
}

.ep-section-head,
.ep-side-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:1rem;
}

.ep-section-head h2,
.ep-side-head h2{
    margin:0;
    color:#202a3c;
    font-size:.86rem;
    font-weight:850;
}

.ep-section-head > span,
.ep-section-head > i{
    color:#8794a7;
    font-size:.68rem;
}

.ep-side-head a{
    color:#1265e3;
    font-size:.62rem;
    font-weight:750;
    text-decoration:none;
}

.ep-about-text{
    position:relative;
    color:#556478;
    font-size:.73rem;
    line-height:1.72;
}

.ep-about-text.is-collapsed{
    max-height:112px;
    overflow:hidden;
}

.ep-about-text.is-collapsed:after{
    content:"";
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    height:38px;
    background:linear-gradient(transparent,#fff);
}

.ep-text-link{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    padding:0;
    border:0;
    background:none;
    color:#1265e3;
    font-size:.65rem;
    font-weight:800;
    text-decoration:none;
    cursor:pointer;
}

.ep-text-link:hover{color:#0a4eaf}

/* Skills */
.ep-skill-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.45rem .9rem;
}

.ep-skill-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.65rem;
    padding:.45rem .62rem;
    border-radius:8px;
    background:#f7f9fc;
}

.ep-skill-name{
    min-width:0;
}

.ep-skill-name span{
    display:block;
    overflow:hidden;
    color:#4d5b6e;
    font-size:.67rem;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.ep-skill-name small{
    display:block;
    margin-top:.08rem;
    color:#9aa6b5;
    font-size:.53rem;
}

.ep-skill-dots{
    display:flex;
    flex:0 0 auto;
    gap:3px;
}

.ep-skill-dots span{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#dce5ec;
}

.ep-skill-dots span.active{
    background:linear-gradient(135deg,#0d82cf,#14aa87);
}

/* Experience */
.ep-timeline{
    position:relative;
}

.ep-timeline-item{
    position:relative;
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:.8rem;
    padding:0 0 1.1rem;
}

.ep-timeline-item:not(:last-child):after{
    content:"";
    position:absolute;
    left:20px;
    top:39px;
    bottom:0;
    width:1px;
    background:#dce5ed;
}

.ep-timeline-logo{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border:1px solid #d9e4ed;
    border-radius:50%;
    background:#f2f8ff;
    color:#2166aa;
    font-size:.62rem;
    font-weight:900;
}

.ep-timeline-title{
    display:flex;
    justify-content:space-between;
    gap:.65rem;
}

.ep-timeline-title h3{
    margin:0;
    color:#273246;
    font-size:.75rem;
    font-weight:850;
}

.ep-timeline-title strong{
    display:block;
    margin-top:.08rem;
    color:#2d6da7;
    font-size:.63rem;
}

.ep-timeline-title time{
    flex:0 0 auto;
    color:#8b98a8;
    font-size:.56rem;
    white-space:nowrap;
}

.ep-timeline-location{
    margin-top:.24rem;
    color:#8b98a8;
    font-size:.57rem;
}

.ep-timeline-content p{
    margin:.4rem 0 0;
    color:#667588;
    font-size:.61rem;
    line-height:1.55;
}

/* Featured Project */
.ep-featured-project{
    overflow:hidden;
    height:100%;
    border:1px solid #e5ebf1;
    border-radius:10px;
    background:#fff;
    transition:.16s ease;
}

.ep-featured-project:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 22px rgba(28,41,59,.08);
}

.ep-featured-media{
    position:relative;
    height:105px;
    overflow:hidden;
    background:#eaf3f8;
}

.ep-featured-media img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ep-featured-media > span{
    position:absolute;
    left:8px;
    bottom:8px;
    padding:.22rem .45rem;
    border-radius:999px;
    background:rgba(255,255,255,.93);
    color:#178363;
    font-size:.5rem;
    font-weight:800;
}

.ep-project-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
    color:#4b84b7;
    font-size:2rem;
    background:
        radial-gradient(circle at 35% 40%,rgba(20,167,123,.14),transparent 28%),
        linear-gradient(135deg,#e8f6ff,#ecfbf5);
}

.ep-featured-body{
    padding:.65rem .68rem .7rem;
}

.ep-featured-body h3{
    margin:0 0 .25rem;
    color:#283346;
    font-size:.63rem;
    line-height:1.35;
    font-weight:850;
}

.ep-featured-body p{
    margin:0;
    color:#8290a1;
    font-size:.54rem;
}

.ep-featured-body a{
    display:inline-block;
    margin-top:.4rem;
    color:#1265e3;
    font-size:.53rem;
    font-weight:750;
    text-decoration:none;
}

/* Certificates */
.ep-cert-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.65rem;
}

.ep-cert-card{
    display:flex;
    gap:.6rem;
    min-width:0;
    padding:.75rem;
    border:1px solid #e5ebf1;
    border-radius:9px;
    background:#fafbfd;
}

.ep-cert-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:34px;
    height:34px;
    border-radius:8px;
    background:#eaf4ff;
    color:#1265e3;
    font-size:1rem;
}

.ep-cert-content{min-width:0}

.ep-cert-content h3{
    margin:0;
    color:#303a4b;
    font-size:.58rem;
    line-height:1.4;
    font-weight:800;
}

.ep-cert-content p{
    margin:.15rem 0 0;
    color:#8390a0;
    font-size:.51rem;
}

.ep-cert-meta{
    display:flex;
    flex-wrap:wrap;
    gap:.25rem .38rem;
    margin-top:.34rem;
    color:#8996a7;
    font-size:.48rem;
}

.ep-cert-meta .verified{color:#13835f;font-weight:800}
.ep-cert-meta .expired{color:#d04d4d}

/* Education */
.ep-education-list{
    display:grid;
    gap:.2rem;
}

.ep-education-item{
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    gap:.7rem;
    align-items:center;
    padding:.65rem 0;
    border-bottom:1px solid #eef1f5;
}

.ep-education-item:last-child{border-bottom:0}

.ep-education-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    border-radius:50%;
    background:#eff6ff;
    color:#1265e3;
}

.ep-education-main h3{
    margin:0;
    color:#2d3748;
    font-size:.66rem;
    font-weight:820;
}

.ep-education-main p{
    margin:.12rem 0 0;
    color:#738095;
    font-size:.56rem;
}

.ep-education-item time{
    color:#8491a2;
    font-size:.54rem;
}

/* Project list */
.ep-project-list-card{
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    overflow:hidden;
    min-height:108px;
    border:1px solid #e5ebf1;
    border-radius:10px;
    background:#fff;
}

.ep-project-list-thumb{
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#eef5f8;
    color:#5d83a8;
    font-size:1.5rem;
}

.ep-project-list-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ep-project-list-body{
    min-width:0;
    padding:.7rem .75rem;
}

.ep-project-label{
    margin-bottom:.25rem;
    color:#37836d;
    font-size:.49rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.ep-project-label span{
    margin-left:.3rem;
    padding:.12rem .3rem;
    border-radius:999px;
    background:#eaf4ff;
    color:#1265e3;
}

.ep-project-list-body h3{
    margin:0;
    color:#283346;
    font-size:.66rem;
    line-height:1.35;
    font-weight:850;
}

.ep-project-list-body p{
    margin:.18rem 0;
    color:#748195;
    font-size:.55rem;
}

.ep-project-list-body small{
    color:#8996a7;
    font-size:.51rem;
}

/* Related Engineer */
.ep-related-list{
    display:grid;
}

.ep-related-item{
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    gap:.7rem;
    align-items:center;
    padding:.72rem 0;
    border-bottom:1px solid #edf1f4;
    color:inherit;
    text-decoration:none;
}

.ep-related-item:last-child{border-bottom:0}

.ep-related-avatar{
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    overflow:hidden;
    border-radius:50%;
    background:#edf5fb;
    color:#17629d;
    font-size:.62rem;
    font-weight:900;
}

.ep-related-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ep-related-main{
    min-width:0;
}

.ep-related-main strong{
    display:block;
    overflow:hidden;
    color:#293348;
    font-size:.62rem;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.ep-related-main strong i{
    color:#1681f2;
}

.ep-related-main span,
.ep-related-main small{
    display:block;
    overflow:hidden;
    color:#748195;
    font-size:.52rem;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.ep-related-main small{
    margin-top:.08rem;
    color:#9aa5b2;
}

.ep-related-arrow{
    color:#a4b0bf;
    font-size:.65rem;
}

/* Profile strength */
.ep-strength-top{
    display:flex;
    align-items:center;
    gap:1rem;
    margin-bottom:1rem;
}

.ep-strength-ring{
    --ep-strength:0;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:78px;
    height:78px;
    border-radius:50%;
    background:conic-gradient(#1265e3 calc(var(--ep-strength) * 1%),#12a98a calc(var(--ep-strength) * 1%),#e7edf3 0);
}

.ep-strength-ring:before{
    content:"";
    position:absolute;
    inset:8px;
    border-radius:50%;
    background:#fff;
}

.ep-strength-ring span{
    position:relative;
    z-index:2;
    color:#314054;
    font-size:1rem;
    font-weight:900;
}

.ep-strength-top > div:last-child strong{
    color:#24415a;
    font-size:.7rem;
}

.ep-strength-top p{
    margin:.2rem 0 0;
    color:#8390a0;
    font-size:.54rem;
    line-height:1.45;
}

.ep-strength-list{
    display:grid;
    gap:.42rem;
}

.ep-strength-list > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.5rem;
    color:#667589;
    font-size:.56rem;
}

.ep-strength-list i{color:#aeb9c5}
.ep-strength-list i.ok{color:#14a274}

.ep-side-cta{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:35px;
    margin-top:1rem;
    border:1px solid #dfe6ed;
    border-radius:7px;
    color:#1265e3;
    font-size:.59rem;
    font-weight:800;
    text-decoration:none;
}

.ep-side-cta:hover{
    border-color:#b9cee6;
    background:#f5f9ff;
    color:#0d54bc;
}

.ep-summary-stat-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:.55rem;
}

.ep-summary-stat-grid > div{
    padding:.75rem;
    border:1px solid #edf1f5;
    border-radius:9px;
    background:#fafbfd;
}

.ep-summary-stat-grid strong{
    display:block;
    color:#1f3550;
    font-size:1rem;
}

.ep-summary-stat-grid span{
    color:#8491a2;
    font-size:.52rem;
}

.ep-verified-note{
    margin-top:.85rem;
    padding:.65rem .7rem;
    border-radius:8px;
    background:#edf8ff;
    color:#33739d;
    font-size:.55rem;
    line-height:1.45;
}

.ep-verified-note i{color:#1681f2}

/* Professional Status */
.ep-status-list{
    display:grid;
    gap:.82rem;
}

.ep-status-item{
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:.7rem;
    align-items:center;
}

.ep-status-item > i{
    display:flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    font-size:.78rem;
}

.ep-status-item.green > i{background:#e7f8f1;color:#159368}
.ep-status-item.teal > i{background:#e7f9f7;color:#129c91}
.ep-status-item.blue > i{background:#eaf3ff;color:#1265e3}

.ep-status-item strong{
    display:block;
    color:#314054;
    font-size:.61rem;
}

.ep-status-item span{
    display:block;
    margin-top:.08rem;
    color:#778599;
    font-size:.53rem;
    line-height:1.4;
}

.ep-connected-since{
    display:flex;
    gap:.5rem;
    align-items:center;
    margin-top:1rem;
    padding-top:.8rem;
    border-top:1px solid #edf1f5;
    color:#8390a1;
    font-size:.52rem;
}

.ep-connected-since i{color:#1265e3}

/* Share */
.ep-share-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.45rem;
    min-height:35px;
    border:1px solid #dce4ed;
    border-radius:8px;
    background:#fff;
    font-size:.58rem;
    font-weight:800;
    text-decoration:none;
}

.ep-share-btn.whatsapp{color:#138b65}
.ep-share-btn.linkedin{color:#1265e3}
.ep-share-btn:hover{background:#f8fafc}

.ep-sticky-sidebar{
    position:sticky;
    top:88px;
}

.ep-empty-mini{
    padding:1rem;
    border:1px dashed #dfe6ed;
    border-radius:9px;
    background:#fafbfd;
    color:#8a96a7;
    font-size:.6rem;
    text-align:center;
}

/* Toast */
.ep-copy-toast{
    position:fixed;
    right:22px;
    bottom:22px;
    z-index:2000;
    padding:.72rem .9rem;
    border-radius:10px;
    background:#162235;
    color:#fff;
    font-size:.7rem;
    font-weight:700;
    box-shadow:0 12px 28px rgba(0,0,0,.18);
    opacity:0;
    transform:translateY(10px);
    pointer-events:none;
    transition:.2s ease;
}

.ep-copy-toast.show{
    opacity:1;
    transform:none;
}

/* Tablet */
@media(max-width:1199.98px){
    .ep-profile-identity{
        grid-template-columns:145px minmax(0,1fr);
    }

    .ep-profile-actions{
        grid-column:1 / -1;
        grid-template-columns:repeat(4,minmax(0,1fr));
        padding-left:155px;
    }

    .ep-sticky-sidebar{position:static}
}

/* Mobile */
@media(max-width:767.98px){
    .ep-social-shell{
        padding-top:78px;
    }

    .ep-social-container{
        padding-left:12px;
        padding-right:12px;
    }

    .ep-social-breadcrumb{
        font-size:.64rem;
    }

    .ep-cover{
        height:170px;
    }

    .ep-cover-brand{
        right:18px;
        bottom:18px;
    }

    .ep-cover-brand strong{font-size:1.05rem}
    .ep-cover-wave{right:18px;top:24px}

    .ep-profile-identity{
        display:block;
        min-height:0;
        padding:0 18px 18px;
    }

    .ep-profile-avatar-wrap{
        height:64px;
        margin-bottom:8px;
    }

    .ep-profile-avatar{
        bottom:0;
        width:104px;
        height:104px;
        border-width:5px;
        font-size:1.75rem;
    }

    .ep-avatar-status{
        right:auto;
        left:80px;
        bottom:3px;
        width:20px;
        height:20px;
    }

    .ep-profile-main-info{
        padding-top:0;
    }

    .ep-name-line h1{
        font-size:1.35rem;
    }

    .ep-profile-actions{
        grid-template-columns:repeat(2,minmax(0,1fr));
        padding-left:0;
        margin-top:1rem;
    }

    .ep-profile-stats{
        grid-template-columns:repeat(2,1fr);
        margin:0 18px 18px;
    }

    .ep-stat-item:nth-child(2):after{display:none}
    .ep-stat-item:nth-child(-n+2){border-bottom:1px solid #e8edf3}

    .ep-skill-list{
        grid-template-columns:1fr;
    }

    .ep-cert-grid{
        grid-template-columns:1fr;
    }

    .ep-featured-media{
        height:150px;
    }
}

@media(max-width:479.98px){
    .ep-profile-actions{
        grid-template-columns:1fr 1fr;
    }

    .ep-action-btn{
        min-height:38px;
        padding:.48rem .5rem;
        font-size:.66rem;
    }

    .ep-section-card,
    .ep-side-card{
        padding:16px;
    }

    .ep-project-list-card{
        grid-template-columns:76px minmax(0,1fr);
    }
}


/* Engineer Network Interaction states */
.ep-profile-actions form{
    margin:0;
    min-width:0;
}

.ep-profile-actions form .ep-action-btn{
    width:100%;
}

.ep-action-following{
    border-color:#119b72 !important;
    background:#119b72 !important;
    color:#fff !important;
}

.ep-action-saved{
    border-color:#b9c9dc;
    background:#edf4ff;
    color:#125bbf;
}

.ep-network-count{
    color:#64768d;
    font-size:.68rem;
}


/* ==========================================================================
   ENGINEER FRONTEND V2.3
   Dedicated Engineer Network Header + Fixed Desktop Composition
   ========================================================================== */

:root{
    --enav-height:72px;
    --enav-blue:#1265e3;
    --enav-ink:#172033;
    --enav-muted:#6c7b90;
    --enav-line:#e4eaf1;
    --enav-bg:rgba(255,255,255,.97);
}

.enetwork-body{
    background:#f4f7fb !important;
    color:#172033;
}

.enetwork-content-wrapper{
    min-height:100vh;
    overflow:visible;
}

/* --------------------------------------------------------------------------
   Dedicated Engineer Network Header
   -------------------------------------------------------------------------- */

.enav-header{
    position:fixed;
    top:0;
    right:0;
    left:0;
    z-index:1040;
    height:var(--enav-height);
    border-bottom:1px solid rgba(224,231,239,.94);
    background:var(--enav-bg);
    box-shadow:0 3px 18px rgba(21,34,50,.045);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}

.enav-desktop{
    height:100%;
}

.enav-inner{
    display:grid;
    grid-template-columns:auto auto minmax(260px,1fr) auto;
    align-items:center;
    gap:1.2rem;
    width:min(1500px,calc(100% - 40px));
    height:100%;
    margin:0 auto;
}

.enav-brand{
    display:flex;
    align-items:center;
    gap:.7rem;
    flex:0 0 auto;
    text-decoration:none;
}

.enav-brand img{
    display:block;
    width:auto;
    height:28px;
}

.enav-brand span{
    padding-left:.65rem;
    border-left:1px solid #dce4ed;
    color:#5c6c81;
    font-size:.56rem;
    font-weight:900;
    letter-spacing:.09em;
    white-space:nowrap;
}

.enav-links{
    display:flex;
    align-items:center;
    gap:.15rem;
    white-space:nowrap;
}

.enav-links a{
    position:relative;
    display:flex;
    align-items:center;
    min-height:40px;
    padding:.58rem .72rem;
    border-radius:8px;
    color:#536176;
    font-size:.68rem;
    font-weight:780;
    text-decoration:none;
    transition:.16s ease;
}

.enav-links a:hover{
    background:#f4f8fd;
    color:#1265e3;
}

.enav-links a.active{
    color:#1265e3;
}

.enav-links a.active:after{
    content:"";
    position:absolute;
    right:.75rem;
    bottom:2px;
    left:.75rem;
    height:2px;
    border-radius:999px;
    background:#1265e3;
}

.enav-search{
    position:relative;
    display:flex;
    align-items:center;
    justify-self:center;
    width:min(100%,470px);
}

.enav-search i{
    position:absolute;
    left:14px;
    z-index:2;
    color:#8795a7;
    font-size:.8rem;
}

.enav-search input{
    width:100%;
    height:40px;
    padding:0 16px 0 38px;
    border:1px solid #dde5ed;
    border-radius:9px;
    outline:none;
    background:#f7f9fc;
    color:#2e394b;
    font-size:.68rem;
    transition:.16s ease;
}

.enav-search input:focus{
    border-color:#aec9ed;
    background:#fff;
    box-shadow:0 0 0 3px rgba(18,101,227,.08);
}

.enav-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:.42rem;
    min-width:0;
}

.enav-icon-link{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border:1px solid transparent;
    border-radius:50%;
    color:#506075;
    font-size:.92rem;
    text-decoration:none;
    transition:.16s ease;
}

.enav-icon-link:hover{
    border-color:#e1e7ee;
    background:#f5f8fc;
    color:#1265e3;
}

.enav-notification-link > span{
    position:absolute;
    top:-2px;
    right:-1px;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:17px;
    height:17px;
    padding:0 4px;
    border:2px solid #fff;
    border-radius:999px;
    background:#1265e3;
    color:#fff;
    font-size:.45rem;
    font-weight:900;
}

.enav-account{
    display:flex;
    align-items:center;
    gap:.58rem;
    min-width:0;
    padding:.25rem .3rem;
    border:0;
    border-radius:10px;
    background:transparent;
    color:#334155;
    text-align:left;
}

.enav-account:hover{
    background:#f5f8fc;
}

.enav-account:after{
    margin-left:.15rem;
}

.enav-account-avatar{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:34px;
    height:34px;
    overflow:hidden;
    border-radius:50%;
    background:linear-gradient(135deg,#e5f3ff,#e8f9f2);
    color:#155f9b;
    font-size:.62rem;
    font-weight:900;
}

.enav-account-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.enav-account-text{
    display:flex;
    flex-direction:column;
    max-width:120px;
    line-height:1.12;
}

.enav-account-text strong{
    overflow:hidden;
    color:#2c3749;
    font-size:.61rem;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.enav-account-text small{
    margin-top:.12rem;
    color:#8a97a7;
    font-size:.47rem;
}

.enav-dropdown{
    min-width:255px;
    padding:.45rem;
    border:1px solid #e4eaf1;
    border-radius:12px;
}

.enav-dropdown .dropdown-item{
    padding:.6rem .7rem;
    border-radius:7px;
    font-size:.68rem;
}

.enav-login,
.enav-register{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:.52rem .9rem;
    border-radius:8px;
    font-size:.65rem;
    font-weight:800;
    text-decoration:none;
}

.enav-login{
    border:1px solid #dce4ed;
    background:#fff;
    color:#425268;
}

.enav-register{
    border:1px solid #1265e3;
    background:#1265e3;
    color:#fff;
}

.enav-login:hover{
    background:#f7f9fc;
    color:#1265e3;
}

.enav-register:hover{
    background:#0f58c8;
    color:#fff;
}

.enav-mobile-trigger{
    display:none;
    align-items:center;
    justify-content:center;
    width:39px;
    height:39px;
    border:0;
    border-radius:9px;
    background:#f4f7fb;
    color:#31506c;
    font-size:1.2rem;
}

.enav-mobile-panel{
    width:min(90vw,360px);
}

.enav-mobile-search{
    position:relative;
}

.enav-mobile-search > i{
    position:absolute;
    top:50%;
    left:13px;
    z-index:2;
    color:#8794a6;
    transform:translateY(-50%);
}

.enav-mobile-search input{
    padding-left:38px;
}

.enav-mobile-links{
    display:grid;
    gap:.25rem;
}

.enav-mobile-links a{
    display:flex;
    align-items:center;
    gap:.7rem;
    min-height:44px;
    padding:.65rem .75rem;
    border-radius:9px;
    color:#45556a;
    font-size:.72rem;
    font-weight:750;
    text-decoration:none;
}

.enav-mobile-links a:hover{
    background:#f4f8fd;
    color:#1265e3;
}

.enav-mobile-links i{
    width:18px;
    color:#71839a;
    text-align:center;
}

/* --------------------------------------------------------------------------
   Profile page / Desktop Composition
   -------------------------------------------------------------------------- */

.ep-social-shell{
    padding-top:calc(var(--enav-height) + 22px) !important;
    padding-bottom:52px !important;
}

.ep-social-container{
    width:min(1460px,calc(100% - 34px));
    max-width:none !important;
}

.ep-social-breadcrumb{
    margin-bottom:.65rem !important;
}

.ep-profile-master-card{
    margin-bottom:16px !important;
    border-radius:14px !important;
}

.ep-cover{
    height:218px !important;
}

.ep-cover-brand{
    right:34px !important;
    bottom:28px !important;
}

.ep-profile-identity{
    grid-template-columns:142px minmax(0,1fr) 300px !important;
    gap:1.15rem !important;
    min-height:126px !important;
    padding:16px 24px 14px 26px !important;
}

.ep-profile-avatar-wrap{
    height:98px !important;
}

.ep-profile-avatar{
    width:132px !important;
    height:132px !important;
    bottom:4px !important;
}

.ep-profile-main-info{
    padding-top:0 !important;
}

.ep-name-line h1{
    font-size:1.62rem !important;
}

.ep-headline{
    margin-top:.24rem !important;
    font-size:.82rem !important;
}

.ep-meta-row{
    margin-top:.44rem !important;
}

.ep-top-skills{
    margin-top:.52rem !important;
}

.ep-profile-actions{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:.45rem !important;
}

.ep-action-btn{
    min-height:36px !important;
    padding:.48rem .62rem !important;
    border-radius:7px !important;
    font-size:.64rem !important;
}

.ep-profile-stats{
    margin:0 24px 17px !important;
}

.ep-stat-item{
    min-height:62px !important;
}

.ep-stat-icon{
    width:31px !important;
    height:31px !important;
    font-size:1.08rem !important;
}

/*
 * IMPORTANT:
 * Grid ini tidak bergantung pada Bootstrap col-xl.
 * Sidebar selalu berada di kanan pada desktop >= 1100 px.
 */
.ep-desktop-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 320px;
    gap:16px;
    align-items:start;
    width:100%;
}

.ep-main-column{
    min-width:0;
}

.ep-right-column{
    min-width:0;
    width:320px;
}

.ep-sticky-sidebar{
    position:sticky !important;
    top:calc(var(--enav-height) + 16px) !important;
}

.ep-section-card,
.ep-side-card{
    box-shadow:0 6px 20px rgba(24,38,56,.042) !important;
}

.ep-section-card{
    padding:18px 20px !important;
}

.ep-side-card{
    padding:16px !important;
    margin-bottom:12px !important;
}

.ep-section-head,
.ep-side-head{
    margin-bottom:.8rem !important;
}

.ep-section-head h2,
.ep-side-head h2{
    font-size:.81rem !important;
}

.ep-about-text{
    font-size:.69rem !important;
}

.ep-skill-row{
    padding:.38rem .56rem !important;
}

.ep-timeline-item{
    padding-bottom:.9rem !important;
}

.ep-featured-media{
    height:94px !important;
}

.ep-featured-body{
    padding:.58rem .62rem !important;
}

.ep-related-item{
    padding:.6rem 0 !important;
}

.ep-related-avatar{
    width:38px !important;
    height:38px !important;
}

.ep-status-list{
    gap:.7rem !important;
}

/* Verified badge: always visible, no icon font dependency */
.ep-verified-badge{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:21px;
    height:21px;
    color:#1681f2;
    vertical-align:middle;
}

.ep-verified-svg{
    display:block;
    width:21px;
    height:21px;
    overflow:visible;
}

.ep-verified-svg > path:first-child,
.ep-related-verified svg > path:first-child{
    fill:currentColor;
    stroke:none;
}

.ep-verified-svg .ep-verified-check,
.ep-related-verified .ep-verified-check{
    fill:none;
    stroke:#fff;
    stroke-width:2.1;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.ep-related-verified{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:13px;
    height:13px;
    margin-left:2px;
    color:#1681f2;
    vertical-align:-2px;
}

.ep-related-verified svg{
    display:block;
    width:13px;
    height:13px;
}

/* --------------------------------------------------------------------------
   Dedicated compact footer
   -------------------------------------------------------------------------- */

.enetwork-footer{
    border-top:1px solid #e4eaf1;
    background:#fff;
}

.enetwork-footer-inner{
    display:grid;
    grid-template-columns:1fr auto auto;
    align-items:center;
    gap:1rem;
    min-height:78px;
    color:#7a8798;
}

.enetwork-footer-inner > div{
    display:flex;
    flex-direction:column;
}

.enetwork-footer-inner strong{
    color:#2b3a4e;
    font-size:.7rem;
}

.enetwork-footer-inner span,
.enetwork-footer-inner small{
    font-size:.52rem;
}

.enetwork-footer nav{
    display:flex;
    gap:1rem;
}

.enetwork-footer a{
    color:#66758a;
    font-size:.57rem;
    font-weight:700;
    text-decoration:none;
}

.enetwork-footer a:hover{
    color:#1265e3;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */

@media(max-width:1299.98px){
    .enav-inner{
        grid-template-columns:auto minmax(230px,1fr) auto;
    }

    .enav-links{
        display:none;
    }

    .ep-profile-identity{
        grid-template-columns:132px minmax(0,1fr) 280px !important;
    }
}

@media(max-width:1099.98px){
    .ep-desktop-layout{
        display:block;
    }

    .ep-right-column{
        width:auto;
        margin-top:16px;
    }

    .ep-sticky-sidebar{
        position:static !important;
    }

    .ep-right-column .ep-sticky-sidebar{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
    }

    .ep-right-column .ep-side-card{
        margin-bottom:0 !important;
    }

    .ep-profile-identity{
        grid-template-columns:130px minmax(0,1fr) !important;
    }

    .ep-profile-actions{
        grid-column:1/-1;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        padding-left:142px;
    }

    .enav-account-text{
        display:none;
    }
}

@media(max-width:899.98px){
    .enav-inner{
        grid-template-columns:auto minmax(0,1fr) auto;
        width:min(100% - 24px,1460px);
        gap:.7rem;
    }

    .enav-search{
        width:100%;
    }

    .enav-actions > .enav-icon-link,
    .enav-actions > .dropdown,
    .enav-actions > .enav-login,
    .enav-actions > .enav-register{
        display:none;
    }

    .enav-mobile-trigger{
        display:flex;
    }
}

@media(max-width:767.98px){
    :root{
        --enav-height:62px;
    }

    .enav-brand img{
        height:25px;
    }

    .enav-brand span{
        display:none;
    }

    .enav-search{
        display:none;
    }

    .enav-inner{
        grid-template-columns:1fr auto;
    }

    .ep-social-shell{
        padding-top:calc(var(--enav-height) + 12px) !important;
    }

    .ep-social-container{
        width:calc(100% - 20px);
    }

    .ep-cover{
        height:165px !important;
    }

    .ep-profile-identity{
        display:block !important;
        padding:0 16px 16px !important;
    }

    .ep-profile-avatar-wrap{
        height:64px !important;
    }

    .ep-profile-avatar{
        width:104px !important;
        height:104px !important;
    }

    .ep-profile-actions{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        padding-left:0 !important;
    }

    .ep-right-column .ep-sticky-sidebar{
        display:block;
    }

    .ep-right-column .ep-side-card{
        margin-bottom:12px !important;
    }

    .enetwork-footer-inner{
        grid-template-columns:1fr;
        gap:.5rem;
        padding-top:18px;
        padding-bottom:18px;
    }

    .enetwork-footer nav{
        flex-wrap:wrap;
    }
}

@media(max-width:479.98px){
    .enav-inner{
        width:calc(100% - 18px);
    }

    .ep-profile-actions{
        grid-template-columns:1fr 1fr !important;
    }
}


/* ==========================================================================
   Professional Organization V1 — Experience Logos
   ========================================================================== */

.ep-timeline-item{
    grid-template-columns:48px minmax(0,1fr) !important;
    gap:.8rem !important;
}

.ep-timeline-item:not(:last-child):after{
    left:23px !important;
    top:46px !important;
}

.ep-timeline-logo{
    width:46px !important;
    height:46px !important;
    border-radius:10px !important;
    background:#f2f8ff;
    color:#2166aa;
    font-size:.62rem;
    font-weight:900;
}

.ep-timeline-logo.has-logo{
    background:#fff !important;
    border-color:#e0e7ef !important;
}

.ep-timeline-logo img{
    display:block;
    width:100%;
    height:100%;
    padding:5px;
    object-fit:contain;
}

.ep-organization-name{
    color:inherit;
    text-decoration:none;
}

.ep-organization-name:hover{
    color:#1265e3;
}

.ep-org-verified{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:14px;
    height:14px;
    margin-left:3px;
    border-radius:50%;
    background:#1681f2;
    color:#fff;
    font-size:9px;
    font-weight:900;
    line-height:1;
    vertical-align:1px;
}

@media(max-width:767.98px){
    .ep-timeline-item{
        grid-template-columns:44px minmax(0,1fr) !important;
    }

    .ep-timeline-logo{
        width:42px !important;
        height:42px !important;
    }

    .ep-timeline-item:not(:last-child):after{
        left:21px !important;
        top:42px !important;
    }
}


/* ==========================================================================
   Engineer Skill Backend V2 — Public Profile
   ========================================================================== */

.ep-section-subtitle{
    display:block;
    margin-top:.18rem;
    color:#8a97a7;
    font-size:.54rem;
    font-weight:500;
}

.ep-skill-list-v2{
    display:grid;
    gap:.15rem;
}

.ep-skill-row-v2{
    min-height:58px;
    padding:.48rem .55rem !important;
    border:1px solid transparent;
    border-bottom-color:#eef2f6;
    border-radius:8px;
}

.ep-skill-row-v2.is-primary{
    border-color:#d9eafa;
    background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
}

.ep-skill-name-v2{
    min-width:0;
}

.ep-skill-title-line{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:.3rem;
    min-width:0;
}

.ep-skill-title-line > span{
    color:#28384d;
    font-size:.68rem;
    font-weight:850;
}

.ep-skill-primary-badge,
.ep-skill-evidence-badge{
    display:inline-flex;
    align-items:center;
    min-height:17px;
    padding:.12rem .32rem;
    border-radius:999px;
    font-size:.43rem;
    font-style:normal;
    font-weight:900;
    letter-spacing:.02em;
}

.ep-skill-primary-badge{
    background:#e7f2ff;
    color:#1765a3;
    text-transform:uppercase;
}

.ep-skill-evidence-badge.verified{
    background:#e7f6ec;
    color:#237943;
}

.ep-skill-evidence-badge.assessed{
    background:#eeeaff;
    color:#6651a8;
}

.ep-skill-evidence-badge.supported{
    background:#fff3df;
    color:#9a6816;
}

.ep-skill-category{
    display:block !important;
    margin-top:.12rem;
    color:#8290a2 !important;
    font-size:.51rem !important;
}

.ep-skill-meta-v2{
    display:block !important;
    margin-top:.08rem;
    color:#65758a !important;
    font-size:.54rem !important;
}

.ep-skill-row-v2 .ep-skill-dots{
    flex:0 0 auto;
    margin-left:.7rem;
}

.ep-skill-row-v2 .ep-skill-dots span{
    width:14px;
    height:4px;
}

.ep-skill-legend{
    display:flex;
    flex-wrap:wrap;
    gap:.35rem .7rem;
    margin-top:.6rem;
    padding-top:.5rem;
    border-top:1px dashed #e4eaf1;
    color:#8a97a7;
    font-size:.48rem;
}

@media(max-width:767.98px){
    .ep-skill-row-v2{
        min-height:56px;
    }

    .ep-skill-legend{
        gap:.3rem .5rem;
    }
}


/* ==========================================================================
   Education Backend V2 — Public Engineer Profile
   ========================================================================== */

.ep-education-list-v2{
    display:grid;
    gap:.1rem;
}

.ep-education-item-v2{
    grid-template-columns:48px minmax(0,1fr) !important;
    gap:.8rem !important;
    align-items:start !important;
    padding:.65rem 0 !important;
}

.ep-education-logo{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:46px !important;
    height:46px !important;
    overflow:hidden;
    border:1px solid #e1e8ef;
    border-radius:10px !important;
    background:#f2f8ff !important;
    color:#2166aa !important;
    font-size:.61rem !important;
    font-weight:900;
}

.ep-education-logo.has-logo{
    background:#fff !important;
}

.ep-education-logo img{
    width:100%;
    height:100%;
    padding:5px;
    object-fit:contain;
}

.ep-education-main-v2{
    min-width:0;
}

.ep-education-main-v2 h3{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:.25rem;
    margin:0;
    color:#2b3d51;
    font-size:.68rem !important;
    font-weight:850;
}

.ep-education-degree{
    margin:.15rem 0 0 !important;
    color:#52677d !important;
    font-size:.61rem !important;
    font-weight:700;
}

.ep-education-meta{
    display:flex;
    flex-wrap:wrap;
    gap:.25rem .5rem;
    margin-top:.22rem;
    color:#8491a1;
    font-size:.53rem;
}

.ep-education-current{
    display:inline-flex;
    align-items:center;
    padding:.1rem .3rem;
    border-radius:999px;
    background:#eaf7ee;
    color:#277943;
    font-weight:850;
}

.ep-education-description{
    margin-top:.35rem;
    color:#6b7989;
    font-size:.56rem;
    line-height:1.55;
}

@media(max-width:767.98px){
    .ep-education-item-v2{
        grid-template-columns:44px minmax(0,1fr) !important;
    }

    .ep-education-logo{
        width:42px !important;
        height:42px !important;
    }
}


/* ==========================================================================
   Project Portfolio V2 — Engineer Profile 2.4.0
   ========================================================================== */
.ep-featured-project-link{display:block;height:100%;color:inherit;text-decoration:none}
.ep-featured-project-link:hover{color:inherit}
.ep-project-skill-chips{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.4rem}
.ep-project-skill-chips span{padding:.13rem .34rem;border-radius:999px;background:#eef6ff;color:#2d699c;font-size:.46rem;font-weight:750}
.ep-project-detail-link{display:inline-flex;align-items:center;gap:.28rem;margin-top:.5rem;color:#1f6eb0!important;font-size:.53rem;font-weight:850;text-decoration:none}
.ep-project-list-card-v2 h3 a{color:inherit;text-decoration:none}.ep-project-list-card-v2 h3 a:hover{color:#1769ae}
.ep-project-running{background:#e9f7ed!important;color:#2b7744!important}

.ep-project-page{min-height:70vh}
.ep-project-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem;color:#8996a6;font-size:.56rem}
.ep-project-breadcrumb a{color:#667a8f;text-decoration:none}.ep-project-breadcrumb a:hover{color:#1769ae}
.ep-project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}
.ep-project-detail-main,.ep-project-detail-side{min-width:0}
.ep-project-hero{overflow:hidden;border:1px solid #e0e7ee;border-radius:16px;background:#fff;box-shadow:0 7px 26px rgba(31,52,74,.04)}
.ep-project-cover{position:relative;height:390px;overflow:hidden;background:linear-gradient(135deg,#e8f3ff,#f7fbff)}
.ep-project-cover img{width:100%;height:100%;object-fit:cover}
.ep-project-cover-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#4075a0;font-size:3rem}
.ep-project-cover-badges{position:absolute;top:1rem;left:1rem;display:flex;flex-wrap:wrap;gap:.4rem}
.ep-project-cover-badges span{padding:.25rem .5rem;border-radius:999px;background:rgba(255,255,255,.94);color:#36546f;font-size:.52rem;font-weight:850;box-shadow:0 3px 14px rgba(29,49,69,.09)}
.ep-project-hero-body{padding:1.35rem 1.5rem 1.5rem}
.ep-project-eyebrow{color:#2774b4;font-size:.52rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.ep-project-hero h1{margin:.35rem 0 .45rem;color:#223b54;font-size:1.55rem;font-weight:850;line-height:1.18;letter-spacing:-.02em}
.ep-project-role-line{color:#50677f;font-size:.72rem;font-weight:750}
.ep-project-meta-line{display:flex;flex-wrap:wrap;gap:.35rem .8rem;margin-top:.65rem;color:#7b8999;font-size:.59rem}
.ep-project-meta-line span{display:inline-flex;align-items:center;gap:.28rem}
.ep-project-section{margin-top:14px;padding:1.2rem 1.35rem;border:1px solid #e0e7ee;border-radius:14px;background:#fff}
.ep-project-section h2{margin:0 0 .7rem;color:#2c4259;font-size:.82rem;font-weight:850}
.ep-project-section p{margin:0;color:#5d7084;font-size:.65rem;line-height:1.7}
.ep-project-detail-skills{display:flex;flex-wrap:wrap;gap:.4rem}
.ep-project-detail-skills span{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .55rem;border:1px solid #d6e6f5;border-radius:999px;background:#f4f9ff;color:#2f6796;font-size:.55rem;font-weight:800}
.ep-project-detail-skills .is-primary{border-color:#bcd9f2;background:#eaf5ff;color:#175f9c}
.ep-project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}
.ep-project-gallery a{display:block;overflow:hidden;aspect-ratio:4/3;border-radius:9px;background:#eef3f7}
.ep-project-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .18s ease}.ep-project-gallery a:hover img{transform:scale(1.025)}
.ep-project-side-card{padding:1rem;border:1px solid #e0e7ee;border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(31,52,74,.035)}
.ep-project-side-card+.ep-project-side-card{margin-top:12px}.ep-project-side-card h2{margin:0 0 .7rem;color:#2c4259;font-size:.7rem;font-weight:850}
.ep-project-client{display:flex;align-items:center;gap:.65rem}
.ep-project-client-logo{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;overflow:hidden;border:1px solid #e0e7ee;border-radius:10px;background:#fff;color:#276ca6;font-size:.62rem;font-weight:900}
.ep-project-client-logo img{width:100%;height:100%;padding:5px;object-fit:contain}.ep-project-client-main{min-width:0}
.ep-project-client-main strong{display:block;color:#31475e;font-size:.62rem}.ep-project-client-main span{display:block;margin-top:.12rem;color:#8390a0;font-size:.52rem}
.ep-project-side-list{display:grid;gap:.55rem}.ep-project-side-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:.55rem;align-items:start}
.ep-project-side-item i{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#eef6ff;color:#2671ae;font-size:.7rem}
.ep-project-side-item small{display:block;color:#8a96a5;font-size:.48rem}.ep-project-side-item strong{display:block;margin-top:.05rem;color:#42566c;font-size:.58rem}
.ep-project-owner-actions{display:grid;gap:.45rem}.ep-project-owner-actions a{display:flex;align-items:center;justify-content:center;gap:.35rem;min-height:35px;border-radius:8px;font-size:.56rem;font-weight:800;text-decoration:none}
.ep-project-owner-actions .primary{background:#1265e3;color:#fff}.ep-project-owner-actions .secondary{border:1px solid #dce5ee;color:#566b80}
.ep-related-projects{display:grid;gap:.55rem}.ep-related-project{display:grid;grid-template-columns:62px minmax(0,1fr);gap:.6rem;align-items:center;color:inherit;text-decoration:none}
.ep-related-project-thumb{display:flex;align-items:center;justify-content:center;width:62px;height:48px;overflow:hidden;border-radius:8px;background:#eef5fb;color:#4b789f}
.ep-related-project-thumb img{width:100%;height:100%;object-fit:cover}.ep-related-project strong{display:block;color:#3a5067;font-size:.56rem;line-height:1.35}.ep-related-project span{display:block;color:#8894a3;font-size:.48rem}
@media(max-width:991.98px){.ep-project-detail-grid{grid-template-columns:1fr}.ep-project-detail-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ep-project-side-card+.ep-project-side-card{margin-top:0}}
@media(max-width:767.98px){.ep-project-cover{height:270px}.ep-project-hero-body{padding:1rem}.ep-project-hero h1{font-size:1.2rem}.ep-project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-project-detail-side{display:block}.ep-project-side-card+.ep-project-side-card{margin-top:10px}}
