/* ESGIB Candidate Portal. Scoped to .esgib-exams-portal; builds on exam.css variables. */
.esgib-exams-portal{padding-top:var(--eex-top,24px);padding-bottom:var(--eex-bottom,32px);padding-left:16px;padding-right:16px}
.esgib-exams-portal a{color:var(--blue)}
.esgib-exams-portal a.cx-btn,.cx-root a.cx-btn{text-decoration:none!important}
.esgib-exams-portal a.cx-primary,.esgib-exams-portal a.cx-primary:visited,.esgib-exams-portal a.cx-primary:hover,.esgib-exams-portal a.cx-primary:focus,.cx-root a.cx-primary,.cx-root a.cx-primary:visited,.cx-root a.cx-primary:hover{color:#fff!important}
.esgib-exams-portal .eex-h{font-size:28px;margin:4px 0 16px}
.eex-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;border-bottom:1px solid var(--line);padding:0 0 10px;margin:0 0 18px;font-size:14px}
.eex-crumbs a{text-decoration:none;font-weight:700}
.eex-sep{color:var(--muted);margin:0 4px}
.eex-user{display:flex;align-items:center;gap:10px;margin:0;color:var(--muted)}
.esgib-exams-portal .eex-linkbtn{background:none;border:0;padding:0;color:var(--pink);font-weight:700;text-decoration:underline;font-size:14px}
.eex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.esgib-exams-portal a.eex-course{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-top:5px solid var(--navy);border-radius:8px;padding:18px;text-decoration:none;color:var(--ink);transition:box-shadow .15s}
.esgib-exams-portal a.eex-course:hover{box-shadow:0 4px 18px rgba(12,43,58,.12)}
.eex-course strong{font-family:Georgia,serif;font-size:20px;color:var(--navy)}
.eex-go{margin-top:6px;font-weight:700;color:var(--blue)}
.eex-meta{display:block;color:var(--muted);font-size:14px}
.eex-list{list-style:none;margin:0;padding:0;counter-reset:none}
.eex-item{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin:0 0 10px}
.eex-item.is-exam{border-left:5px solid var(--pink)}
.eex-item.is-class{border-left:5px solid var(--blue)}
.eex-item.is-locked{opacity:.6;border-left:5px solid var(--line)}
.eex-body{flex:1;min-width:0}
.eex-body a{text-decoration:none;color:var(--navy)}
.eex-label{flex:0 0 auto;background:var(--lb);color:var(--navy);font-weight:700;font-size:13px;border-radius:6px;padding:6px 10px;white-space:nowrap}
.eex-item.is-exam .eex-label{background:#FBE6EE;color:var(--pink)}
.eex-pass{color:var(--green)} .eex-fail{color:var(--pink)} .eex-warn{color:var(--amber)}
.eex-desc{margin:0 0 16px}
.eex-video{margin:0 0 20px}
.eex-video video{width:100%;max-height:70vh;background:#000;border-radius:8px;display:block}
.eex-video figcaption{font-size:14px;color:var(--muted);margin-top:6px}
.eex-files{list-style:none;margin:0 0 20px;padding:0}
.eex-files li{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:6px;padding:10px 12px;margin:0 0 8px;background:#fff}
.eex-files a{font-weight:700;text-decoration:none;word-break:break-word}
.eex-ext{display:inline-block;min-width:44px;text-align:center;background:var(--navy);color:#fff;border-radius:4px;font-size:11px;padding:3px 6px;margin-right:10px;vertical-align:middle}
.eex-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.eex-rsum{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;background:var(--soft);border-radius:8px;padding:12px 16px;margin:0 0 12px;font-weight:700}
.eex-rsum strong{margin-left:auto;font-family:Georgia,serif;font-size:22px;color:var(--navy)}
.eex-filter{display:flex;gap:8px;margin:0 0 12px}
.eex-filter .is-on{background:var(--navy);color:#fff;border-color:var(--navy)}
.eex-sec{margin:24px 0 10px!important;font-size:20px}
.eex-case{background:var(--lb);border-radius:8px;padding:10px 14px;margin:0 0 12px}
.eex-case summary{cursor:pointer;font-weight:700;color:var(--navy)}
.eex-case p{margin:.6em 0 0}
.eex-q{background:#fff;border:1px solid var(--line);border-left:5px solid var(--line);border-radius:8px;padding:14px 16px;margin:0 0 12px}
.eex-q.is-right{border-left-color:var(--green)} .eex-q.is-wrong{border-left-color:var(--pink)} .eex-q.is-blank{border-left-color:var(--amber)}
.eex-q header{display:flex;gap:10px;align-items:center;margin-bottom:6px}
.eex-qn{font-weight:700;color:var(--navy)}
.eex-verdict{font-size:13px;font-weight:700;border-radius:10px;padding:2px 8px;background:var(--soft)}
.eex-q.is-right .eex-verdict{color:var(--green);background:#EAF6EC} .eex-q.is-wrong .eex-verdict{color:var(--pink);background:#FBE6EE} .eex-q.is-blank .eex-verdict{color:var(--amber);background:#FFF4D6}
.eex-stem{font-weight:700}
.eex-opts{list-style:none;margin:0 0 10px;padding:0}
.eex-opts li{border:1px solid var(--line);border-radius:6px;padding:8px 10px;margin:0 0 6px}
.eex-opts li.is-correct{border-color:var(--green);background:#EAF6EC}
.eex-opts li.is-mine:not(.is-correct){border-color:var(--pink);background:#FBE6EE}
.eex-tag{display:inline-block;font-size:12px;font-weight:700;border-radius:10px;padding:1px 8px;margin-left:6px;color:#fff;background:var(--green)}
.eex-tag.no{background:var(--pink)}
.eex-why{background:var(--soft);border-radius:6px;padding:10px 12px;margin:0}
.eex-hide{display:none!important}
.eex-login input[type=text],.eex-login input[type=email]{text-transform:none}
@media (max-width:600px){.esgib-exams-portal .eex-h{font-size:22px}.eex-item{flex-wrap:wrap}.eex-item .cx-btn{width:100%;text-align:center}.eex-files li{flex-wrap:wrap}}

.eex-item.is-assignment{border-left:5px solid #3c9a0a}
.eex-item.is-assignment .eex-label{background:#ecf9e3;color:#2f7a08}
.eex-sub{background:#fff;border:1px solid var(--line);border-top:5px solid #3c9a0a;border-radius:8px;padding:16px 18px;margin:18px 0}
.eex-sub h3{margin-top:0}
.eex-upload label{display:block;font-weight:700;color:var(--navy);margin:10px 0 6px;font-size:15px}
.eex-upload input[type=file]{display:block;margin-top:6px;font:inherit;max-width:100%}
.eex-upload textarea{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;font:inherit}
.eex-rm{display:inline;margin:0 0 0 10px}
.eex-ok{color:var(--green);font-weight:700}
.eex-feedback{background:var(--soft);border-left:4px solid var(--blue);border-radius:6px;padding:10px 14px;margin:10px 0}
.eex-feedback b{display:block;color:var(--navy);margin-bottom:4px}
