
:root{--epa-blue:#0b6bdc;--epa-navy:#163a70;--epa-green:#27b86a;--epa-orange:#ffad16;--epa-red:#ef5d5d;--epa-bg:#eef7ff;--epa-card:#fff;--epa-text:#18324f}
.epa-student-app,.epa-admin{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--epa-text)}
.epa-student-app{max-width:1180px;margin:20px auto;background:linear-gradient(135deg,#f7fbff,#eef7ff);border-radius:28px;overflow:hidden;box-shadow:0 20px 60px #194c7d22}
.epa-login{min-height:680px;padding:70px 8%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 20% 10%,#fff 0,#eaf6ff 45%,#dcefff 100%)}
.epa-login h1{font-size:52px;margin:4px}.epa-login h1 span{display:block;font-size:28px;text-align:center}.epa-tag{font-size:18px}.fer-hero,.fer-big{font-size:72px;filter:drop-shadow(0 8px 8px #0002);animation:ferFloat 2.8s ease-in-out infinite}.fer-big{font-size:54px}
@keyframes ferFloat{50%{transform:translateY(-8px) rotate(3deg)}}.fer-bubble{background:#fff;border:2px solid #d8e9fa;border-radius:22px;padding:18px 22px;max-width:520px;box-shadow:0 10px 30px #1b5f9c16;line-height:1.5}
.epa-login form{display:grid;gap:12px;width:min(420px,100%);margin-top:22px}.epa-login input,.epa-login button{font-size:18px;padding:15px 18px;border-radius:14px;border:1px solid #cbdff2}.epa-login button,.epa-final-start{background:linear-gradient(135deg,#1680ee,#075fc1);color:#fff;border:0;font-weight:800;cursor:pointer}
.epa-top{display:flex;justify-content:space-between;padding:18px 28px;background:#dff0ff;border-bottom:1px solid #c7e1f7}.epa-welcome{display:grid;grid-template-columns:auto 1fr 280px;gap:18px;align-items:center;padding:28px}.epa-block-progress{background:#fff;padding:18px;border-radius:18px}.bar{height:13px;background:#e4edf4;border-radius:20px;overflow:hidden;margin:8px 0}.bar i{display:block;height:100%;background:linear-gradient(90deg,#24bd72,#56d896)}
.epa-session-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding:0 28px 28px}.epa-session{min-height:150px;border:1px solid #d5e5f2;border-radius:18px;background:#fff;padding:14px;display:flex;flex-direction:column;gap:10px;text-align:left}.epa-session.current{border:2px solid #f2b414;background:#fffaf0}.epa-session.locked{opacity:.55}.epa-session span{margin-top:auto}.epa-hidden{display:none!important}
#epa-session-panel{padding:30px}.epa-back{border:0;background:none;color:#1667c4;cursor:pointer}.epa-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.level{padding:28px;border-radius:22px;border:2px solid transparent;background:#fff;font-size:30px;cursor:pointer}.level b,.level span{display:block;font-size:20px;margin-top:8px}.level span{font-size:15px;font-weight:400}.easy{border-color:#80d9a5}.medium{border-color:#ffd269}.hard{border-color:#ffabab}
.epa-sim{display:grid;grid-template-columns:1fr 310px;min-height:600px}.sim-desktop{position:relative;background:linear-gradient(145deg,#0b6fd7,#043a86);padding:28px;color:#fff}.desktop-icon{width:95px;padding:12px;text-align:center;font-size:38px;cursor:pointer}.desktop-icon span{display:block;font-size:13px}.sim-window{position:absolute;left:150px;top:55px;width:65%;height:72%;background:#fff;color:#20364f;border-radius:14px;box-shadow:0 20px 60px #001b3f66;overflow:hidden}.sim-title{padding:13px;background:#f3f7fb;border-bottom:1px solid #ddd}.sim-files{padding:20px;display:flex;gap:15px;flex-wrap:wrap}.sim-file{padding:12px;border-radius:10px;background:#f1f6fb}.fer-task{padding:28px;background:#f7fbff;display:flex;flex-direction:column;gap:15px}.fer-task button{padding:13px;border-radius:12px;border:0;background:#dff1ff;color:#145a9c;font-weight:700}.feedback-ok{background:#e7f9ee;color:#167542;padding:14px;border-radius:14px}.feedback-hint{background:#fff6d9;color:#7d5c00;padding:14px;border-radius:14px}
.epa-final-card{margin:0 28px 28px;padding:22px;border-radius:18px;background:#fff7d8;border:1px solid #f1d56e}.epa-final-start{padding:12px 18px;border-radius:12px}.epa-student-nav{display:flex;justify-content:space-around;padding:18px;background:#fff;border-top:1px solid #dbe7f1}
.epa-alert{margin:20px;padding:15px;border-radius:12px;background:#fff3d6;color:#735600}
.epa-admin-title{display:flex;gap:12px;align-items:center;margin:18px 0}.epa-admin-title h1{margin:0}.epa-admin-title p{margin:3px 0;color:#64748b}.fer-mini{font-size:40px}.epa-grid{display:grid;gap:15px}.epa-grid-4{grid-template-columns:repeat(4,1fr)}.epa-card{background:#fff;border:1px solid #dfe7ee;border-radius:16px;padding:20px;margin:15px 0;box-shadow:0 6px 22px #2030400b}.epa-card strong{display:block;font-size:26px;margin-top:10px}.epa-live.on{border-left:6px solid #2dbb6d}.epa-live.off{border-left:6px solid #ef5d5d}.epa-form-row,.epa-inline{display:flex;gap:15px;flex-wrap:wrap;align-items:end}.epa-form-row label{display:flex;flex-direction:column;gap:6px}.epa-form-row input,.epa-form-row select,.epa-inline input,.epa-session-edit input{min-width:220px}.epa-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}.epa-session-edit{display:grid;grid-template-columns:100px 1fr 1fr;gap:12px;margin:10px 0;align-items:center}
@media(max-width:850px){.epa-session-grid{grid-template-columns:repeat(2,1fr)}.epa-welcome{grid-template-columns:1fr}.epa-levels{grid-template-columns:1fr}.epa-sim{grid-template-columns:1fr}.fer-task{order:-1}.epa-grid-4{grid-template-columns:1fr 1fr}.sim-window{left:120px;width:70%}}

/* v1.1 */
.epa-login{position:relative;background-image:linear-gradient(90deg,rgba(236,247,255,.94),rgba(236,247,255,.76)),var(--epa-centre);background-size:cover;background-position:center;min-height:720px}
.epa-login-overlay{width:min(560px,92%);display:flex;flex-direction:column;align-items:center;padding:28px;border-radius:30px;background:#ffffffd9;backdrop-filter:blur(5px);box-shadow:0 24px 70px #0d315d38}
.fer-alive{transform-origin:50% 90%;animation:ferFloat 2.8s ease-in-out infinite,ferBlink 6s ease-in-out infinite}
@keyframes ferBlink{0%,92%,100%{filter:drop-shadow(0 8px 8px #0002)}95%{transform:scale(.97) rotate(-2deg)}}
.desktop-icon.selected{background:#ffffff35;border-radius:12px;outline:2px solid #b8dcff}
.fer-task.is-happy .fer-big{animation:ferCelebrate .55s ease-in-out 2}
.fer-task.is-thinking .fer-big{animation:ferThink 1s ease-in-out infinite}
@keyframes ferCelebrate{50%{transform:translateY(-14px) rotate(12deg) scale(1.08)}}
@keyframes ferThink{50%{transform:rotate(-8deg) translateY(-3px)}}
.sim-context{position:absolute;background:#fff;color:#20364f;border-radius:10px;box-shadow:0 10px 35px #001b3f55;padding:8px;z-index:5}
.sim-context button{display:block;width:100%;border:0;background:#fff;text-align:left;padding:8px 12px}
.sim-context button:hover{background:#edf6ff}

/* v2.0: miniordinador i Fer */
.desktop-column{display:flex;flex-direction:column;gap:4px}.sim-window{display:flex;flex-direction:column}.sim-title{display:flex;justify-content:space-between}.sim-toolbar{display:flex;gap:7px;padding:9px;background:#f7fafc;border-bottom:1px solid #e1e8ef}.sim-toolbar button,.sim-toolbar input{border:1px solid #d9e2ea;background:#fff;border-radius:8px;padding:7px}.sim-toolbar input{margin-left:auto;width:130px}.sim-path{padding:8px 14px;font-size:12px;color:#5d7186;border-bottom:1px solid #e8edf2}.sim-file{display:flex;flex-direction:column;gap:5px;align-items:center;min-width:82px;cursor:pointer}.sim-file span{font-size:12px}.sim-file.selected{background:#dceeff;outline:2px solid #80bfff}.sim-taskbar{position:absolute;bottom:0;left:0;right:0;height:44px;background:#eaf4ffef;color:#123;display:flex;align-items:center;justify-content:center;gap:20px}.sim-clock{position:absolute;right:16px}.fer-character{text-align:center}.fer-face{font-size:64px;animation:ferFloat 2.8s ease-in-out infinite}.fer-status{display:block;font-size:12px;color:#62788d}.fer-task.is-sad .fer-face{animation:ferSad .8s ease-in-out 2}@keyframes ferSad{50%{transform:rotate(-9deg) translateY(4px)}}.task-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mini-stats{display:flex;justify-content:space-between;font-size:12px;color:#60758b;border-top:1px solid #dce7ef;padding-top:12px}.epa-final-card{box-shadow:0 8px 28px #80640012}

/* v3 professor premium */
.epa-v3{margin:0 0 0 -20px;background:#f3f6fa;min-height:100vh}.epa-shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.epa-sidebar{background:linear-gradient(180deg,#102d55,#0a2242);color:#fff;padding:26px 18px;display:flex;flex-direction:column}.epa-brand{display:grid;grid-template-columns:46px 1fr;align-items:center;padding:0 10px 26px}.epa-brand>span{font-size:34px;grid-row:1/3}.epa-brand b{font-size:19px}.epa-brand small{opacity:.65}.epa-sidebar nav{display:grid;gap:7px}.epa-sidebar nav a{color:#dbe9f8;text-decoration:none;padding:13px 14px;border-radius:12px;font-weight:600}.epa-sidebar nav a:hover{background:#ffffff12;color:#fff}.epa-sidebar nav a span{margin-left:8px}.epa-side-foot{margin-top:auto;padding:16px 10px;opacity:.7}.epa-main{padding:32px 38px;max-width:1500px}.epa-main-head{display:flex;justify-content:space-between;align-items:center}.epa-main-head h1{font-size:30px;margin:4px 0;color:#17324e}.epa-main-head small{color:#6f8294;text-transform:uppercase;letter-spacing:.08em}.epa-teacher-pill{background:#fff;border:1px solid #e1e8ef;border-radius:999px;padding:10px 16px}.epa-lead{color:#728395;font-size:15px}.epa-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0}.epa-kpis>div{background:#fff;border:1px solid #e3eaf0;border-radius:18px;padding:20px;box-shadow:0 7px 22px #163a7010}.epa-kpis span{font-size:25px}.epa-kpis small{display:block;color:#788a9b;margin:10px 0 5px}.epa-kpis b{font-size:24px;color:#183754}.epa-section-head{display:flex;justify-content:space-between;align-items:center;margin:28px 0 15px}.epa-section-head h2,.epa-section-head h3{margin:0}.epa-section-head p{margin:5px 0;color:#7a8b9c}.epa-primary,.epa-secondary{display:inline-block;border:0;border-radius:11px;padding:11px 16px;text-decoration:none!important;font-weight:700;cursor:pointer}.epa-primary{background:#1769d2;color:#fff!important;box-shadow:0 5px 14px #1769d233}.epa-secondary{background:#edf2f7;color:#31516f!important}.epa-class-grid{display:grid;grid-template-columns:repeat(3,minmax(250px,1fr));gap:18px}.epa-class-card{background:#fff;border:1px solid #e1e9f0;border-radius:20px;padding:22px;box-shadow:0 9px 28px #183a5b0d;position:relative}.epa-class-icon{width:52px;height:52px;display:grid;place-items:center;background:#e9f3ff;border-radius:15px;font-size:27px}.epa-class-state{position:absolute;right:18px;top:20px;color:#9a5660;font-size:12px;background:#fff1f2;padding:6px 9px;border-radius:999px}.epa-class-state.active{color:#167349;background:#e9f9ef}.epa-class-card h3{font-size:19px;margin:18px 0 3px}.epa-class-card p{color:#7c8d9e;margin:0}.epa-class-meta{display:flex;gap:15px;border-top:1px solid #edf1f5;border-bottom:1px solid #edf1f5;padding:13px 0;margin:16px 0;font-size:13px}.epa-open{font-weight:700;text-decoration:none}.epa-coming{margin-top:25px;border:1px dashed #b8c8d7;border-radius:18px;padding:18px;display:flex;gap:15px;align-items:center;color:#607589}.epa-coming>span{font-size:30px}.epa-coming p{margin:3px 0}.epa-panel,.epa-class-hero{background:#fff;border:1px solid #e1e9f0;border-radius:20px;padding:24px;box-shadow:0 9px 28px #183a5b0d;margin:18px 0}.epa-class-hero{display:flex;justify-content:space-between;align-items:center}.epa-class-hero h2{font-size:26px;margin:8px 0}.epa-subject{font-size:12px;font-weight:800;color:#1769d2;letter-spacing:.06em}.epa-livebadge{padding:10px 14px;border-radius:999px;background:#fff1f2;color:#9c4351;font-weight:800}.epa-livebadge.on{background:#e8f9ef;color:#137448}.epa-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.epa-panel label{display:flex;flex-direction:column;gap:6px;margin:12px 0;color:#60758a;font-weight:600}.epa-panel input,.epa-panel select{padding:10px;border:1px solid #d7e1ea;border-radius:10px;max-width:100%}.epa-student-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.epa-student-picks label{display:grid;grid-template-columns:auto auto 1fr;align-items:center;background:#f8fafc;border:1px solid #e5ebf0;border-radius:13px;padding:10px}.epa-student-picks small{grid-column:3}.epa-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e4f0ff;color:#1769d2;font-weight:800}.epa-rowlink,.epa-student-row,.epa-progress-row{display:flex;gap:12px;align-items:center;padding:13px;border-bottom:1px solid #edf1f4;text-decoration:none;color:#203b55}.epa-rowlink div,.epa-student-row div{display:grid;flex:1}.epa-rowlink small,.epa-student-row small{color:#7a8d9f}.epa-student-row>a{margin-left:auto}.epa-timeline>div{display:grid;grid-template-columns:45px 1fr;gap:14px;margin:12px 0}.epa-timeline>div>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#1769d2;color:#fff;font-weight:800}.epa-timeline section{border-left:2px solid #e1eaf2;padding:0 0 15px 18px}.epa-timeline h3{margin:3px 0}.epa-timeline p,.epa-muted{color:#788a9a}.epa-progress-list{display:grid}.epa-progress-row .epa-grow{flex:1}.epa-pbar{height:8px;background:#edf2f6;border-radius:99px;overflow:hidden;margin:7px 0}.epa-pbar i{display:block;height:100%;background:linear-gradient(90deg,#1769d2,#49a0f5)}@media(max-width:1000px){.epa-shell{grid-template-columns:78px 1fr}.epa-sidebar nav a span,.epa-brand b,.epa-brand small,.epa-side-foot{display:none}.epa-brand{display:block}.epa-class-grid,.epa-kpis{grid-template-columns:1fr 1fr}.epa-student-picks{grid-template-columns:1fr 1fr}}@media(max-width:700px){.epa-main{padding:20px}.epa-two,.epa-class-grid,.epa-kpis{grid-template-columns:1fr}.epa-student-picks{grid-template-columns:1fr}}

/* v3.1 — professor UI refinement */
.epa-v3 .epa-sidebar{background:#102a43;border-right:1px solid rgba(255,255,255,.06);box-shadow:10px 0 30px rgba(17,43,70,.08)}
.epa-v3 .epa-brand{margin:0 0 18px;padding:5px 10px 24px;border-bottom:1px solid rgba(255,255,255,.10)}
.epa-v3 .epa-brand>span{width:46px;height:46px;border-radius:14px;background:#fff;display:grid;place-items:center;box-shadow:0 8px 22px rgba(0,0,0,.14)}
.epa-v3 .epa-brand b{font-size:21px;letter-spacing:-.02em}.epa-v3 .epa-brand small{font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.epa-v3 .epa-sidebar nav{gap:9px}.epa-v3 .epa-sidebar nav a{display:flex;align-items:center;min-height:28px;padding:13px 15px;border-radius:14px;font-size:14px;transition:.18s ease}
.epa-v3 .epa-sidebar nav a:first-child{background:#fff;color:#173b60;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.epa-v3 .epa-sidebar nav a:hover{transform:translateX(3px);background:rgba(255,255,255,.13)}
.epa-v3 .epa-side-foot{border-top:1px solid rgba(255,255,255,.1);padding-top:20px}
.epa-v3 .epa-main{padding:38px 44px}.epa-v3 .epa-main-head{padding-bottom:20px;border-bottom:1px solid #e5ebf1}
.epa-v3 .epa-main-head h1{font-size:32px;letter-spacing:-.035em}.epa-v3 .epa-teacher-pill{box-shadow:0 6px 20px rgba(21,48,75,.07)}
.epa-v3 .epa-kpis>div{transition:.18s ease;border:0}.epa-v3 .epa-kpis>div:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(24,58,91,.10)}
.epa-v3 .epa-class-card{border:0;transition:.18s ease}.epa-v3 .epa-class-card:hover{transform:translateY(-3px);box-shadow:0 15px 36px rgba(24,58,91,.12)}
.epa-v3 .epa-open{display:flex;justify-content:space-between;align-items:center;background:#f2f7fc;border-radius:11px;padding:11px 13px;color:#155fae}
.epa-v3 .epa-panel{border:0}.epa-v3 .epa-primary{background:#1769d2}.epa-v3 .epa-secondary{background:#eef3f7}
.epa-v3 .epa-class-hero{border:0;background:linear-gradient(135deg,#fff,#f5f9fd)}
@media(max-width:782px){.epa-v3{margin-left:-10px}.epa-v3 .epa-main{padding:22px 18px}}

/* v3.3 critical admin layout */
body.wp-admin .epa-v3 .epa-shell{display:grid!important;grid-template-columns:245px minmax(0,1fr)!important}
body.wp-admin .epa-v3 .epa-sidebar{display:flex!important;flex-direction:column!important}
body.wp-admin .epa-v3 .epa-sidebar nav{display:grid!important}
body.wp-admin .epa-v3 .epa-sidebar nav a{display:flex!important;color:#dbe9f8!important}
body.wp-admin .epa-v3 .epa-sidebar nav a:first-child{color:#173b60!important}
body.wp-admin .epa-v3 .epa-kpis{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
body.wp-admin .epa-v3 .epa-class-grid{display:grid!important;grid-template-columns:repeat(3,minmax(240px,1fr))!important}
body.wp-admin .epa-v3 .epa-main-head{display:flex!important}
body.wp-admin .epa-v3 .epa-section-head{display:flex!important}
@media(max-width:782px){
 body.wp-admin .epa-v3 .epa-shell{grid-template-columns:72px minmax(0,1fr)!important}
 body.wp-admin .epa-v3 .epa-main{padding:18px 14px!important}
 body.wp-admin .epa-v3 .epa-sidebar{padding:20px 10px!important}
 body.wp-admin .epa-v3 .epa-sidebar nav a{justify-content:center!important;font-size:20px!important;padding:12px 8px!important}
 body.wp-admin .epa-v3 .epa-sidebar nav a span{display:none!important}
 body.wp-admin .epa-v3 .epa-brand{display:flex!important;justify-content:center!important;padding:0 0 18px!important}
 body.wp-admin .epa-v3 .epa-brand b,body.wp-admin .epa-v3 .epa-brand small,body.wp-admin .epa-v3 .epa-side-foot{display:none!important}
 body.wp-admin .epa-v3 .epa-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.wp-admin .epa-v3 .epa-class-grid{grid-template-columns:1fr!important}
 body.wp-admin .epa-v3 .epa-two{grid-template-columns:1fr!important}
 body.wp-admin .epa-v3 .epa-main-head{align-items:flex-start!important;gap:10px!important}
 body.wp-admin .epa-v3 .epa-teacher-pill{font-size:12px!important;padding:8px 10px!important}
}

.epa-notice{margin:18px 0;padding:13px 16px;border-radius:12px;font-weight:700}
.epa-notice.success{background:#e9f8ef;color:#176b43;border:1px solid #c8ead7}
.epa-notice.error{background:#fff0f1;color:#963b49;border:1px solid #efcbd0}

/* v3.6 student navigation */
.epa-student-nav{display:grid!important;grid-template-columns:repeat(3,1fr);padding:0!important;overflow:hidden}
.epa-student-nav button{appearance:none;border:0;background:#fff;padding:18px 12px;font:inherit;color:#17324e;cursor:pointer;border-right:1px solid #e7edf3}
.epa-student-nav button:last-child{border-right:0}.epa-student-nav button:hover{background:#f2f7fc}.epa-student-nav button:active{background:#e7f1fb}
.epa-modal{position:fixed;inset:0;background:rgba(12,32,53,.48);z-index:99999;display:grid;place-items:center;padding:20px}
.epa-modal.epa-hidden{display:none!important}.epa-modal-card{width:min(460px,92vw);background:#fff;border-radius:22px;padding:26px;box-shadow:0 25px 70px rgba(0,0,0,.2);position:relative}
.epa-modal-close{position:absolute;right:15px;top:12px;border:0;background:#eef3f7;width:34px;height:34px;border-radius:50%;font-size:22px;cursor:pointer}
.epa-progress-big strong{font-size:38px;color:#1769d2}.epa-progress-big .bar{height:12px;background:#e9eff5;border-radius:99px;overflow:hidden;margin-top:12px}.epa-progress-big .bar i{display:block;height:100%;background:#1769d2}
@media(max-width:650px){.epa-student-nav button{padding:14px 5px;font-size:13px}.epa-student-nav button span{display:block;margin-top:4px}}

/* v3.7 completion experience */
.epa-completed-overlay{position:fixed;inset:0;z-index:100000;background:rgba(12,34,58,.58);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px}
.epa-completed-overlay.epa-hidden{display:none!important}
.epa-completed-card{width:min(430px,90vw);background:#fff;border-radius:28px;padding:34px 28px;text-align:center;box-shadow:0 28px 80px rgba(0,0,0,.24);animation:epaCompleteIn .28s ease-out}
.epa-completed-fer{font-size:58px;line-height:1}.epa-completed-check{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:-10px auto 10px;background:#20b66b;color:#fff;font-size:42px;font-weight:900;border:6px solid #e9fff3}
.epa-completed-card h2{font-size:29px;margin:8px 0;color:#173a59}.epa-completed-card p{font-size:17px;color:#526b80;margin:7px 0 18px}.epa-completed-next{display:inline-block;background:#edf6ff;color:#1769d2;border-radius:999px;padding:9px 15px;font-weight:700;font-size:13px}
@keyframes epaCompleteIn{from{opacity:0;transform:scale(.88) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}

/* v3.8 diagnostic */
.epa-diagnostic{position:fixed;inset:0;z-index:100001;background:linear-gradient(135deg,#eaf5ff,#f7fbff);display:grid;place-items:center;padding:20px}
.epa-diagnostic.epa-hidden{display:none!important}.epa-test-card{width:min(650px,94vw);background:#fff;border-radius:26px;padding:28px;box-shadow:0 25px 80px rgba(17,52,82,.18)}
.epa-test-top{display:flex;justify-content:space-between;color:#1769d2;font-weight:800}.epa-test-progress{height:8px;background:#eaf0f5;border-radius:99px;overflow:hidden;margin:18px 0 28px}.epa-test-progress i{display:block;height:100%;background:#1769d2;transition:.3s}
#epa-test-body>small{color:#789}.epa-test-options{display:grid;gap:11px;margin:22px 0}.epa-test-options button,#start-practice-after-test{border:1px solid #d9e5ef;background:#f7faff;border-radius:14px;padding:15px;text-align:left;font-size:16px;cursor:pointer}.epa-test-options button:hover{background:#eaf4ff;border-color:#8dbbea}.epa-test-note{color:#7a8b9b;font-size:13px}.epa-test-result,.epa-test-finish{text-align:center;padding:20px}.epa-test-result>div{font-size:54px}.epa-test-score{width:100px;height:100px;border-radius:50%;background:#eaf5ff;color:#1769d2;display:grid;place-items:center;margin:auto;font-size:27px;font-weight:900}#start-practice-after-test{background:#1769d2;color:#fff;border:0;text-align:center;font-weight:800;margin-top:12px}
/* animated simulated windows */
.sim-floating-window{position:absolute;z-index:50;left:18%;top:18%;width:min(520px,65%);background:#fff;border:1px solid #b9c9d8;border-radius:10px;box-shadow:0 18px 50px rgba(0,0,0,.22);opacity:0;transform:scale(.9) translateY(15px);transition:.18s;overflow:hidden}
.sim-floating-window.open{opacity:1;transform:scale(1) translateY(0)}.sim-floating-window.closing{opacity:0;transform:scale(.92)}
.sim-win-title{height:38px;background:#f5f8fb;display:flex;align-items:center;justify-content:space-between;padding:0 9px 0 13px;cursor:move;border-bottom:1px solid #dce5ed}.sim-win-title button{width:34px;height:28px;border:0;background:transparent;cursor:pointer;font-size:16px}.sim-win-title button:hover{background:#e4ebf2}.sim-win-title button:last-child:hover{background:#d9363e;color:#fff}.sim-win-content{min-height:220px;padding:18px}.sim-floating-window.minimized .sim-win-content{display:none}.sim-floating-window.minimized{width:280px}.sim-floating-window.maximized{inset:5px!important;width:auto!important;height:calc(100% - 10px);transform:none}.sim-floating-window.maximized .sim-win-content{height:calc(100% - 75px)}.sim-folder-view{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.sim-folder-view>div{padding:15px;text-align:center;border-radius:9px}.sim-folder-view>div:hover{background:#eaf4ff}.sim-empty{text-align:center;color:#6c7e8f;padding:35px;font-size:18px}.sim-paper{background:#fff;border:1px solid #e1e5e9;box-shadow:0 4px 14px #0001;min-height:140px;padding:24px}
@media(max-width:700px){.sim-floating-window{left:6%;top:15%;width:88%}.epa-test-card{padding:20px}}

/* v3.9 diagnostic learning feedback */
.epa-why{margin:16px auto;padding:15px 17px;background:#eef7ff;border-left:4px solid #1769d2;border-radius:10px;text-align:left;max-width:520px;color:#31516e}
.epa-remember{margin:12px auto;padding:13px 16px;background:#fff8e5;border:1px solid #f1dda1;border-radius:11px;text-align:left;max-width:520px;color:#6e5921}
#epa-test-next{display:block;width:100%;margin-top:20px;border:0;background:#1769d2;color:#fff;border-radius:13px;padding:14px;font-weight:800;cursor:pointer}
.epa-focus-box{margin:18px auto;padding:16px;text-align:left;background:#fff7e8;border:1px solid #efdda9;border-radius:13px;max-width:500px;color:#5e502d}
.epa-focus-box.success{background:#ebf9f0;border-color:#ccebd7;color:#286043}.epa-focus-box p{margin-bottom:0;font-size:13px}
