/* ============================================================
   S-Class v2.45.0 — E-Portfolio Refresh + My Future
   ============================================================ */
:root{--ep-v245-ink:#243554;--ep-v245-muted:#718096;--ep-v245-line:#dce6f1;--ep-v245-soft:#f5f9fd;--ep-v245-blue:#4f72ea;--ep-v245-green:#2f9a70;--ep-v245-gold:#d99c29}
body{background:#eef6fb!important;color:var(--ep-v245-ink)!important}
.ep-nav{height:76px!important;padding:0 22px!important;background:rgba(255,255,255,.94)!important;border-bottom:3px solid #d9eaf6!important;box-shadow:0 8px 24px rgba(37,72,111,.08)!important;backdrop-filter:blur(14px)!important}
.ep-brand{gap:10px!important}.ep-brand-icon{width:44px!important;height:44px!important;border-radius:14px!important;background:#eef3ff!important;color:#536be5!important;border:1px solid #d9e2ff!important;box-shadow:0 3px 0 #dce4f0!important}.ep-brand strong{font-size:15px!important;color:#253858!important}.ep-brand small{font-size:13px!important;color:#8190a5!important;letter-spacing:.08em!important}
.ep-nav-links{gap:6px!important}.ep-nav-links button{padding:9px 11px!important;border-radius:11px!important;font-size:13px!important;font-weight:800!important;color:#5d6d87!important}.ep-nav-links button:hover{background:#eef4ff!important;color:#4e66d5!important}
.ep-actions{gap:7px!important}.ep-icon-btn,.ep-login-btn{min-height:39px!important;border-radius:12px!important;box-shadow:0 3px 0 #dce5ef!important}
.ep-root{padding-top:6px!important}
.ep-hero-section{width:min(1220px,calc(100% - 30px))!important;margin:18px auto 30px!important}.ep-hero-card{border-radius:32px!important}.ep-cover{height:268px!important;border-radius:32px!important;border:3px solid rgba(255,255,255,.98)!important;background:#dcecf8!important;box-shadow:0 9px 0 #cfdeeb,0 22px 44px rgba(30,67,107,.12)!important}.ep-cover-overlay{background:rgba(20,43,70,.18)!important}.ep-cover-pattern{width:110px!important;height:110px!important;right:28px!important;bottom:24px!important;background:rgba(255,255,255,.14)!important}
.ep-hero-main{width:min(980px,calc(100% - 54px))!important;margin:-72px auto 0!important;padding:22px 26px!important;grid-template-columns:150px minmax(0,1fr)!important;gap:22px!important;border:3px solid #fff!important;border-radius:28px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 7px 0 #d9e3ed,0 22px 42px rgba(25,59,95,.13)!important}
.ep-photo-wrap{width:144px!important;height:144px!important;border-radius:30px!important;padding:5px!important;transform:translateY(-12px)!important;box-shadow:0 7px 0 #dbe3ec,0 14px 28px rgba(22,55,90,.15)!important}.ep-photo-wrap img{border-radius:24px!important}
.ep-kicker{padding:5px 9px!important;border-radius:999px!important;background:#edf3ff!important;color:#4f67d5!important;font-size:13px!important;letter-spacing:.08em!important}.ep-hero-info h1{font-size:clamp(28px,3.2vw,40px)!important;color:#243554!important}.ep-hero-info p{font-size:13px!important;color:#728096!important;margin:6px 0 11px!important}.ep-rank-mini,.ep-soft-btn{border-radius:14px!important;box-shadow:0 3px 0 #dfe7ef!important}.ep-rank-mini{padding:7px 10px!important}.ep-rank-mini img,.ep-rank-mini>i{width:40px!important;height:40px!important;font-size:25px!important}.ep-rank-mini strong{font-size:14px!important}.ep-rank-mini span{font-size:13px!important}.ep-soft-btn{padding:9px 11px!important;font-size:13px!important}
.ep-section{width:min(1160px,calc(100% - 30px))!important;margin:0 auto 28px!important}.ep-section-head{margin-bottom:14px!important}.ep-section-head>span{display:inline-flex!important;padding:5px 9px!important;border-radius:999px!important;background:#eef3ff!important;color:#556ad8!important;font-size:13px!important;font-weight:900!important;letter-spacing:.1em!important}.ep-section-head h2{font-size:28px!important;color:#243554!important;margin:6px 0 3px!important}.ep-section-head p{font-size:13px!important;color:#75849b!important}
.ep-card,.ep-timeline-card,.ep-rank-big-card,.ep-game-level-card,.ep-pride-card{border:2px solid var(--ep-v245-line)!important;border-radius:20px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 5px 0 #e0e8f1,0 14px 26px rgba(43,71,103,.07)!important}.ep-card{padding:16px!important}.ep-card-icon{width:42px!important;height:42px!important;border-radius:13px!important}.ep-card span{font-size:13px!important}.ep-card p{font-size:13px!important}.ep-tag{padding:5px 8px!important;border-radius:999px!important;font-size:13px!important}
.ep-section-alt{padding:20px!important;border-radius:26px!important;background:rgba(255,255,255,.40)!important;border:1px solid rgba(216,230,241,.72)!important}

/* ---------- My Future ---------- */
.ep-future-section{padding:22px!important;border-radius:30px!important;background:#f7fbff!important;border:2px solid #dce8f3!important;box-shadow:0 7px 0 #dce6ef,0 20px 36px rgba(35,73,112,.08)!important}
.ep-future-section-head{display:flex!important;flex-direction:column!important;align-items:flex-start!important}.ep-future-section-head>span{background:#fff0d8!important;color:#a66b16!important;border:1px solid #f2d69e!important}
.ep-future-layout{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:18px}.ep-future-poster,.ep-future-info-card,.ep-future-mini-card{border:2px solid #dce7f1;border-radius:24px;background:#fff;box-shadow:0 6px 0 #dce5ee,0 16px 28px rgba(42,72,104,.08);overflow:hidden}
.ep-future-poster{padding:10px}.ep-future-scene{position:relative;height:440px;border-radius:18px;background-color:#d9ebf6;background-size:cover;background-position:center;overflow:hidden;border:2px solid #fff;box-shadow:inset 0 0 0 1px rgba(37,63,91,.06)}.ep-future-scene-shade{position:absolute;inset:0;background:rgba(18,43,70,.10)}.ep-future-scene-label{position:absolute;left:14px;top:14px;z-index:5;padding:8px 10px;border-radius:13px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.95);box-shadow:0 4px 0 rgba(40,59,92,.12)}.ep-future-scene-label span,.ep-future-scene-label strong{display:block}.ep-future-scene-label span{font-size:13px;font-weight:900;letter-spacing:.11em;color:#78879c}.ep-future-scene-label strong{font-size:13px;color:#2f3f5d}
.ep-future-avatar{position:absolute;inset:42px 20px 10px;z-index:3;display:grid;place-items:end center}.ep-fa-stage{position:relative;width:260px;height:360px;transform-origin:center bottom}.ep-fa-shadow{position:absolute;left:50%;bottom:6px;width:170px;height:28px;border-radius:50%;transform:translateX(-50%);background:rgba(22,42,61,.20);filter:blur(6px)}.ep-fa-person{position:absolute;left:50%;bottom:18px;width:170px;height:320px;transform:translateX(-50%)}.ep-fa-head{position:absolute;left:33px;top:8px;width:104px;height:100px;border-radius:10px;background:var(--fa-skin);border:3px solid rgba(50,58,72,.18);box-shadow:0 5px 0 rgba(33,48,67,.12);z-index:5}.ep-fa-hair{position:absolute;left:-4px;right:-4px;top:-8px;height:31px;background:var(--fa-hair);border-radius:8px 8px 3px 3px}.ep-fa-hair.h2{transform:skewX(-8deg)}.ep-fa-hair.h3{height:40px}.ep-fa-hair.h4{clip-path:polygon(0 20%,20% 0,36% 18%,52% 0,70% 18%,87% 0,100% 22%,100% 100%,0 100%)}.ep-fa-hair.h5,.ep-fa-hair.h8{height:24px}.ep-fa-eye{position:absolute;top:48px;width:10px;height:12px;background:#263a59;border-radius:2px;box-shadow:inset 2px 2px 0 #fff}.ep-fa-eye.left{left:26px}.ep-fa-eye.right{right:26px}.ep-fa-smile{position:absolute;left:50%;top:70px;width:28px;height:12px;transform:translateX(-50%);border-bottom:4px solid #985c52;border-radius:0 0 20px 20px}.ep-fa-body{position:absolute;left:24px;top:104px;width:122px;height:126px;border-radius:8px;background:var(--fa-primary);border:3px solid rgba(32,51,76,.18);box-shadow:inset 0 12px 0 rgba(255,255,255,.12);z-index:4}.ep-fa-body::before{content:"";position:absolute;left:14px;right:14px;top:18px;height:11px;border-radius:4px;background:var(--fa-secondary);opacity:.85}.ep-fa-body>i{position:absolute;right:13px;top:48px;width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.86);color:var(--fa-primary);font-size:14px}.ep-fa-detail{position:absolute;left:16px;bottom:15px;width:26px;height:9px;background:#ffd35a;border-radius:2px}.ep-fa-arm{position:absolute;top:118px;width:30px;height:122px;border-radius:6px;background:var(--fa-primary);border:3px solid rgba(32,51,76,.16);z-index:3}.ep-fa-arm::after{content:"";position:absolute;left:2px;right:2px;bottom:-22px;height:29px;border-radius:4px;background:var(--fa-skin);border:2px solid rgba(40,56,72,.15)}.ep-fa-arm.left{left:0;transform:rotate(5deg)}.ep-fa-arm.right{right:0;transform:rotate(-5deg)}.ep-fa-leg{position:absolute;top:224px;width:50px;height:92px;background:#31446e;border:3px solid rgba(26,43,66,.18);z-index:2}.ep-fa-leg::after{content:"";position:absolute;left:-3px;right:-3px;bottom:-12px;height:17px;background:#26364f;border-radius:3px}.ep-fa-leg.left{left:31px}.ep-fa-leg.right{right:31px}.career-doctor .ep-fa-body{--fa-primary:#f3f7f6}.career-doctor .ep-fa-body>i{color:#2f8f65}.career-teacher .ep-fa-body,.career-police .ep-fa-body,.career-soldier .ep-fa-body,.career-business .ep-fa-body,.career-streamer .ep-fa-body,.career-chef .ep-fa-body,.career-scientist .ep-fa-body,.career-singer .ep-fa-body,.career-farmer .ep-fa-body,.career-athlete .ep-fa-body{background:var(--fa-primary)}
.ep-future-info-card{padding:18px}.ep-future-title-row{display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px;align-items:center;padding-bottom:14px;border-bottom:1px solid #e3ebf3}.ep-future-career-icon{--future-color:#5f6bf0;width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:color-mix(in srgb,var(--future-color) 12%,#fff);color:var(--future-color);font-size:22px;border:1px solid color-mix(in srgb,var(--future-color) 20%,#dce7f1)}.ep-future-title-row span{font-size:13px;color:#8592a6;font-weight:900;letter-spacing:.08em}.ep-future-title-row h3{font-size:25px;margin:2px 0;color:#263959}.ep-future-title-row p{font-size:13px;color:#75849a;margin:0;line-height:1.45}.ep-future-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.ep-future-stats>div{padding:11px;border-radius:15px;background:#f7f9fc;border:1px solid #e0e8f1}.ep-future-stats small,.ep-future-stats strong,.ep-future-stats span{display:block}.ep-future-stats small{font-size:13px;font-weight:900;color:#8c98aa;letter-spacing:.08em}.ep-future-stats strong{font-size:20px;color:#273a5b;margin:2px 0}.ep-future-stats span{font-size:13px;color:#718096}.ep-future-block{margin-top:12px}.ep-future-block-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.ep-future-block-head span{font-size:13px;font-weight:900;color:#31425f}.ep-future-block-head small{padding:4px 7px;border-radius:999px;background:#eef3ff;color:#5e6bd8;font-size:13px;font-weight:900}.ep-future-skill-row{display:flex;gap:6px;flex-wrap:wrap}.ep-future-skill-row span{display:inline-flex;align-items:center;gap:5px;padding:7px 8px;border-radius:999px;background:#fff;border:1px solid #dfe7f0;color:#566982;font-size:13px;font-weight:800}.ep-future-skill-row span i{color:#5f73de}.ep-future-weekly{display:grid;gap:6px}.ep-future-week-item{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;padding:8px;border-radius:13px;background:#f9fbfd;border:1px solid #e1e8f1}.ep-future-week-item>i{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#eef3ff;color:#5d6ed9}.ep-future-week-item b,.ep-future-week-item span,.ep-future-week-item small{display:block}.ep-future-week-item b{font-size:13px;color:#334561}.ep-future-week-item span{font-size:13px;color:#79879b;margin:2px 0 5px}.ep-future-week-item em{display:block;height:5px;border-radius:999px;background:#e9eef5;overflow:hidden}.ep-future-week-item em i{display:block;height:100%;background:#6074e9;border-radius:999px}.ep-future-week-item small{font-size:13px;color:#8090a5;margin-top:4px}.ep-future-week-item.ready{border-color:#bde1cd;background:#f9fffb}.ep-future-week-item.done{opacity:.78}.ep-future-week-item.done>i{background:#e5f5ec;color:#2e9569}
.ep-future-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.ep-future-mini-card{padding:16px}.ep-future-mini-head{display:flex;align-items:center;gap:10px;padding-bottom:10px;border-bottom:1px solid #e4ebf3}.ep-future-mini-head>i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#e9f7ef;color:#2d9568}.ep-future-mini-head.related>i{background:#fff3db;color:#cf901f}.ep-future-mini-head span{display:block;font-size:13px;color:#8995a6;font-weight:900;letter-spacing:.09em}.ep-future-mini-head h3{font-size:16px;margin:1px 0;color:#2b3e5c}.ep-future-completed-list,.ep-future-related-list{display:grid;gap:7px;margin-top:10px}.ep-future-completed-item,.ep-future-related-item{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;padding:8px;border-radius:12px;background:#f9fbfd;border:1px solid #e2e9f1}.ep-future-completed-item>i{width:30px;height:30px;border-radius:10px;background:#e8f7ef;color:#2f946b;display:grid;place-items:center}.ep-future-completed-item b,.ep-future-completed-item span,.ep-future-completed-item small,.ep-future-related-item b,.ep-future-related-item span,.ep-future-related-item small{display:block}.ep-future-completed-item b,.ep-future-related-item b{font-size:13px;color:#33445f}.ep-future-completed-item span,.ep-future-related-item span{font-size:13px;color:#7b899c;margin-top:1px}.ep-future-completed-item small{font-size:13px;color:#8a97a8;margin-top:3px}.ep-future-related-item{grid-template-columns:54px minmax(0,1fr)}.ep-future-related-item img,.ep-future-related-icon{width:52px;height:52px;border-radius:10px;object-fit:cover;background:#fff4df;display:grid;place-items:center;color:#d19322}.ep-future-related-item small{font-size:13px;color:#9a7b44;font-weight:900}.ep-future-empty{display:flex;align-items:center;gap:8px;padding:12px;border-radius:12px;background:#f7f9fc;border:1px dashed #d8e2ee;color:#78879a;font-size:13px}.ep-future-empty i{color:#7687db}
.ep-pride-grid{gap:14px!important}.ep-pride-card{overflow:hidden!important}.ep-pride-cover{height:180px!important}.ep-pride-body{padding:14px!important}.ep-pride-body h3{font-size:16px!important}.ep-pride-body p{font-size:13px!important}
.ep-footer{padding:20px!important;color:#7a8798!important}
@media(max-width:920px){.ep-nav-links{display:none!important}.ep-future-layout,.ep-future-lower-grid{grid-template-columns:1fr}.ep-future-scene{height:400px}.ep-future-info-card{padding:16px}}
@media(max-width:680px){.ep-nav{height:68px!important;padding:0 10px!important}.ep-brand small{display:none}.ep-login-btn{display:none!important}.ep-hero-section{width:calc(100% - 16px)!important}.ep-cover{height:180px!important;border-radius:24px!important}.ep-hero-main{width:calc(100% - 20px)!important;margin:-42px auto 0!important;grid-template-columns:90px minmax(0,1fr)!important;padding:14px!important;gap:12px!important;border-radius:21px!important}.ep-photo-wrap{width:88px!important;height:88px!important;border-radius:20px!important;transform:none!important}.ep-photo-wrap img{border-radius:15px!important}.ep-hero-info h1{font-size:22px!important}.ep-section{width:calc(100% - 16px)!important}.ep-section-head h2{font-size:23px!important}.ep-future-section{padding:14px!important;border-radius:22px!important}.ep-future-scene{height:330px}.ep-fa-stage{transform:scale(.82);transform-origin:center bottom}.ep-future-title-row{grid-template-columns:48px minmax(0,1fr)}.ep-future-career-icon{width:46px;height:46px;border-radius:14px}.ep-future-title-row h3{font-size:21px}.ep-future-stats{grid-template-columns:1fr 1fr}.ep-future-stats>div:last-child{grid-column:1/-1}.ep-section-alt{padding:14px!important}.ep-pride-grid{grid-template-columns:1fr!important}}

/* v2.51.6 — selected partner in public E-Portfolio */
.ep-fa-stage .ep-fa-partner{position:absolute;left:50%;bottom:18px;width:310px;height:300px;transform:translateX(-50%);object-fit:contain;z-index:1;pointer-events:none;background:transparent;filter:drop-shadow(0 12px 12px rgba(25,46,35,.20))}
.ep-fa-stage .ep-fa-partner.stage-baby{left:72%;bottom:20px;width:150px;height:155px;z-index:4}
.ep-fa-stage .ep-fa-person{z-index:3}
@media(max-width:720px){.ep-fa-stage .ep-fa-partner{width:270px;height:260px}.ep-fa-stage .ep-fa-partner.stage-baby{left:75%;width:130px;height:135px}}
