/* Only E-Fly's student insights component. Existing dashboard blocks are preserved. */
#efly-student-insights{--esi-ink:#12345b;--esi-muted:#5f7693;--esi-blue:#1b3f80;--esi-light:#f1f6ff;--esi-border:#d9e5f5;--esi-surface:#fff;--esi-teal:#079887;--esi-gold:#e4b23d;grid-column:1/-1;width:100%;min-width:0;color:var(--esi-ink);font:inherit;font-size:16px;line-height:1.5;margin:0 0 24px}
.efly-insights-host{grid-column:1/-1!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;min-width:0!important}
.efly-insights-host>.content,.efly-insights-host>.card-body{padding:0!important}.efly-insights-host>header{display:none!important}
#efly-student-insights *{box-sizing:border-box}#efly-student-insights [hidden]{display:none!important}
#efly-student-insights h2,#efly-student-insights h3,#efly-student-insights p{margin:0;color:inherit}
#efly-student-insights h2{font-size:26px;font-weight:750;line-height:1.2;margin:4px 0 6px}#efly-student-insights h3{font-size:20px;font-weight:700;line-height:1.35}
#efly-student-insights button,#efly-student-insights select,#efly-student-insights a{font:inherit}
#efly-student-insights .esi-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0 20px}
#efly-student-insights .esi-heading p,#efly-student-insights .esi-results-heading p{color:var(--esi-muted);font-size:15px}
#efly-student-insights .esi-eyebrow{font-size:12px;letter-spacing:1.2px;font-weight:800;color:var(--esi-blue)}
#efly-student-insights .esi-tools{width:min(340px,40%);flex-shrink:0}#efly-student-insights .esi-tools label{display:block;font-size:14px;font-weight:650;margin-bottom:5px}
#efly-student-insights select{width:100%;height:45px;border:1px solid var(--esi-border);border-radius:11px;background:var(--esi-surface);color:var(--esi-ink);padding:0 36px 0 12px;text-overflow:ellipsis}
#efly-student-insights .esi-sync{display:flex;align-items:center;justify-content:flex-end;gap:9px;font-size:12px;color:var(--esi-muted);margin-top:6px}
#efly-student-insights #esi-refresh{border:1px solid var(--esi-border);border-radius:9px;background:var(--esi-surface);color:var(--esi-blue);width:32px;height:32px;font-size:23px;line-height:1;cursor:pointer}
#efly-student-insights .esi-overview{display:grid;grid-template-columns:minmax(220px,0.8fr) minmax(0,2fr);gap:18px}
#efly-student-insights .esi-progress-card,#efly-student-insights .esi-next,#efly-student-insights .esi-kpis article,#efly-student-insights .esi-results{border:1px solid var(--esi-border);border-radius:19px;background:var(--esi-surface);box-shadow:0 3px 0 #173f7812,0 12px 28px #12345b09}
#efly-student-insights .esi-progress-card{position:relative;text-align:center;padding:20px 17px;background:linear-gradient(160deg,var(--esi-surface),var(--esi-light));overflow:hidden;display:flex;align-items:center;flex-direction:column;justify-content:center}
#efly-student-insights .esi-ring-wrap{position:relative;width:166px;height:166px;flex-shrink:0;margin:0 auto 8px}
#efly-student-insights .esi-ring{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}#efly-student-insights .esi-ring circle{fill:none;stroke-width:12}
#efly-student-insights .esi-ring-track{stroke:var(--esi-border)}#efly-student-insights .esi-ring-value{stroke:var(--esi-teal);stroke-linecap:round;stroke-dasharray:0 100;transition:stroke-dasharray .6s ease}
#efly-student-insights .esi-ring-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}#efly-student-insights .esi-ring-center strong{font-size:37px;letter-spacing:-1px;font-weight:800;line-height:1.2}#efly-student-insights .esi-ring-center span{color:var(--esi-muted);font-size:14px}
#efly-student-insights .esi-progress-card h3{font-size:18px}#efly-student-insights .esi-progress-card p{font-size:14px;color:var(--esi-muted);margin-top:6px}#efly-student-insights .esi-pill{display:inline-flex;margin-top:11px;padding:4px 9px;border:1px solid var(--esi-border);background:var(--esi-surface);border-radius:20px;font-size:12px;color:var(--esi-muted)}
#efly-student-insights .esi-overview-main{display:flex;flex-direction:column;gap:16px;min-width:0}
#efly-student-insights .esi-next{display:flex;gap:16px;padding:23px;flex:1;align-items:flex-start;background:linear-gradient(125deg,#0c326b,#154d95);color:#fff;border-color:#2d64a5}
#efly-student-insights .esi-next .esi-eyebrow{color:#ffda72}#efly-student-insights .esi-next h3{margin:7px 0 8px;color:#fff;font-size:22px}#efly-student-insights .esi-next p{color:#e1ecff;font-size:15px;max-width:56ch}
#efly-student-insights .esi-next-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #ffffff35;border-radius:13px;background:#ffffff13;color:#ffd36a;font-size:30px}
#efly-student-insights .esi-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:#fff;color:#123b76!important;border:1px solid #fff;border-radius:10px;padding:9px 14px;font-size:14px;font-weight:700;text-decoration:none;min-height:42px;margin-top:16px}
#efly-student-insights .esi-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}#efly-student-insights .esi-kpis article{display:flex;gap:10px;padding:17px 13px;min-width:0;border-radius:15px;align-items:flex-start}
#efly-student-insights .esi-kpi-icon{display:grid;place-items:center;flex-shrink:0;width:31px;height:31px;border-radius:9px;font-size:20px}#efly-student-insights .esi-teal{background:#e3f5f0;color:#008578}#efly-student-insights .esi-blue{background:#edf3ff;color:#1c59b4}#efly-student-insights .esi-gold{background:#fff4dc;color:#af7505}
#efly-student-insights .esi-kpis article div>span{display:block;font-size:13px;color:var(--esi-muted);line-height:1.4}#efly-student-insights .esi-kpis strong{display:block;font-size:26px;font-weight:800;line-height:1.25;margin-top:5px}#efly-student-insights .esi-kpis small{display:block;font-size:12px;color:var(--esi-muted);margin-top:5px}
#efly-student-insights .esi-results{margin-top:20px;padding:23px;min-width:0}
#efly-student-insights .esi-results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}#efly-student-insights .esi-results-heading p{margin-top:5px;font-size:14px}
#efly-student-insights .esi-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 12px;font-size:12px;color:var(--esi-muted);max-width:330px}#efly-student-insights .esi-legend span{display:inline-flex;align-items:center;gap:5px}#efly-student-insights .esi-legend i{width:8px;height:8px;display:inline-block;border-radius:3px}#efly-student-insights .esi-dot-pass{background:var(--esi-teal)}#efly-student-insights .esi-dot-review{background:#d99226}#efly-student-insights .esi-dot-pending{background:#b2c3dc}
#efly-student-insights .esi-chart-shell{display:flex;gap:9px;min-width:0}#efly-student-insights .esi-chart-scale{position:relative;width:26px;flex-shrink:0;height:187px;display:flex;flex-direction:column;justify-content:space-between;font-size:11px;color:var(--esi-muted);padding-top:19px;transform:translateY(-8px)}
#efly-student-insights .esi-chart-scale{height:260px;margin-top:21px;padding:0;transform:none;display:block}#efly-student-insights .esi-chart-scale span{position:absolute;right:0;transform:translateY(-50%);line-height:1}#efly-student-insights .esi-chart-scale span:nth-child(1){top:0}#efly-student-insights .esi-chart-scale span:nth-child(2){top:10%}#efly-student-insights .esi-chart-scale span:nth-child(3){top:20%}#efly-student-insights .esi-chart-scale span:nth-child(4){top:30%}#efly-student-insights .esi-chart-scale span:nth-child(5){top:40%}#efly-student-insights .esi-chart-scale span:nth-child(6){top:100%}
#efly-student-insights .esi-chart-scroll{flex:1;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:6px;scrollbar-width:thin}
#efly-student-insights .esi-chart{display:flex;gap:9px;min-width:100%;width:100%;align-items:flex-end;padding-top:20px;background-image:linear-gradient(to bottom,var(--esi-border) 0 1px,transparent 1px calc(10% - .5px),var(--esi-border) calc(10% - .5px) calc(10% + .5px),transparent calc(10% + .5px) calc(20% - .5px),var(--esi-border) calc(20% - .5px) calc(20% + .5px),transparent calc(20% + .5px) calc(30% - .5px),var(--esi-border) calc(30% - .5px) calc(30% + .5px),transparent calc(30% + .5px) calc(40% - .5px),var(--esi-border) calc(40% - .5px) calc(40% + .5px),transparent calc(40% + .5px) calc(100% - 1px),var(--esi-border) calc(100% - 1px) 100%);background-size:100% 260px;background-position:0 21px;background-repeat:no-repeat}
#efly-student-insights .esi-exam-bar{position:relative;flex:1 0 43px;min-width:43px;max-width:none;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--esi-ink);padding:0 6px 4px;cursor:pointer;text-align:center;outline-offset:-1px}
#efly-student-insights .esi-exam-bar[aria-pressed=true]{background:var(--esi-light);border-color:var(--esi-border)}
#efly-student-insights .esi-bar-track{display:block;position:relative;height:260px;width:100%;max-width:56px;margin:0 auto;border-radius:7px 7px 2px 2px;background:linear-gradient(to top,#adc3de1a,#adc3de08)}
#efly-student-insights .esi-bar-fill{position:absolute;bottom:0;left:0;right:0;display:block;border-radius:7px 7px 2px 2px;background:linear-gradient(to top,#0d7e88,#2ac2af);min-height:0}
#efly-student-insights .esi-exam-bar[data-state=review] .esi-bar-fill{background:linear-gradient(to top,#bd8026,#edbb62)}#efly-student-insights .esi-exam-bar[data-state=graded] .esi-bar-fill{background:linear-gradient(to top,#315b9b,#7ca3ed)}
#efly-student-insights .esi-bar-empty{position:absolute;left:50%;top:65%;transform:translate(-50%,-50%);font-size:17px;color:#91a6c1}
#efly-student-insights .esi-pass-marker{position:absolute;left:-2px;right:-2px;bottom:0;border-top:2px solid #ef4444;z-index:1}
#efly-student-insights .esi-bar-grade{position:absolute;top:-20px;left:50%;transform:translateX(-50%);font-size:12px;font-weight:750;white-space:nowrap}#efly-student-insights .esi-bar-number{display:block;margin-top:8px;font-size:12px;color:var(--esi-muted);font-weight:650}
#efly-student-insights .esi-chart-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;font-size:12px;color:var(--esi-muted);margin-top:6px}#efly-student-insights .esi-chart-caption i{display:inline-block;width:18px;border-top:2px solid #ef4444;vertical-align:middle;margin-right:4px}
#efly-student-insights .esi-exam-detail{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px;background:var(--esi-light);border:1px solid var(--esi-border);border-radius:13px;margin-top:18px}
#efly-student-insights .esi-exam-detail h4{font-size:16px;line-height:1.4;color:var(--esi-ink);margin:0 0 6px;font-weight:700}#efly-student-insights .esi-exam-detail p{font-size:14px;color:var(--esi-muted)}#efly-student-insights .esi-exam-detail a{font-size:14px;font-weight:700;color:var(--esi-blue);white-space:nowrap;text-decoration:none}
#efly-student-insights .esi-table-details{margin-top:15px;font-size:14px}#efly-student-insights summary{cursor:pointer;font-weight:650;color:var(--esi-blue);padding:9px 0}#efly-student-insights .esi-table-scroll{overflow:auto}#efly-student-insights table{width:100%;font-size:14px;border-collapse:collapse;margin-top:10px}#efly-student-insights th,#efly-student-insights td{text-align:left;padding:10px 9px;border-bottom:1px solid var(--esi-border)}#efly-student-insights caption{text-align:left;color:var(--esi-muted);font-size:13px;caption-side:top}
#efly-student-insights .esi-footnote{font-size:13px;color:var(--esi-muted);margin-top:15px}#efly-student-insights .esi-no-grades{padding:10px 13px;background:var(--esi-light);color:var(--esi-muted);border-radius:10px;font-size:14px;margin-bottom:14px}#efly-student-insights .esi-message{padding:20px;background:var(--esi-light);border:1px solid var(--esi-border);border-radius:16px;color:var(--esi-muted)}#efly-student-insights .esi-message a{color:var(--esi-blue)}
html body.theme-dark #efly-student-insights{--esi-ink:#e9f2ff;--esi-muted:#b1c3db;--esi-blue:#a6c8ff;--esi-light:#1b304c;--esi-border:#354c68;--esi-surface:#14283f}
html body.theme-dark #efly-student-insights .esi-next{background:linear-gradient(125deg,#173963,#214e86);border-color:#35649a}html body.theme-dark #efly-student-insights .esi-progress-card{background:linear-gradient(160deg,#132a45,#1c3758)}
#efly-student-insights :is(button,select,a,summary,.esi-chart-scroll):focus-visible{outline:3px solid #e1ad35;outline-offset:3px}
@media(hover:hover) and (pointer:fine){#efly-student-insights .esi-exam-bar:hover{background:var(--esi-light);border-color:var(--esi-border)}#efly-student-insights .esi-button:hover{background:#eaf2ff;transform:translateY(-2px);box-shadow:0 5px 10px #0002}#efly-student-insights #esi-refresh:hover{background:var(--esi-light)}}
@media(max-width:1050px){#efly-student-insights .esi-overview{grid-template-columns:220px minmax(0,1fr)}#efly-student-insights .esi-kpis article{flex-direction:column}#efly-student-insights .esi-results-heading{align-items:flex-start;flex-direction:column}#efly-student-insights .esi-legend{max-width:none;justify-content:flex-start}}
@media(max-width:767px){#efly-student-insights .esi-heading{flex-direction:column;align-items:stretch;gap:15px;padding-top:8px}#efly-student-insights h2{font-size:24px}#efly-student-insights .esi-tools{width:100%}#efly-student-insights .esi-overview{grid-template-columns:minmax(0,1fr)}#efly-student-insights .esi-progress-card{display:grid;grid-template-columns:125px minmax(0,1fr);text-align:left;gap:0 14px;padding:17px}#efly-student-insights .esi-ring-wrap{grid-row:1/4;width:125px;height:125px;margin:0}#efly-student-insights .esi-ring-center strong{font-size:31px}#efly-student-insights .esi-progress-card h3{font-size:18px;align-self:end}#efly-student-insights .esi-pill{justify-self:start;align-self:start;font-size:11px;margin-top:8px}#efly-student-insights .esi-progress-card p{font-size:13px}#efly-student-insights .esi-kpis{gap:8px}#efly-student-insights .esi-kpis article{padding:13px 10px;gap:9px}#efly-student-insights .esi-kpis article div>span{font-size:12px}#efly-student-insights .esi-kpis strong{font-size:23px}#efly-student-insights .esi-next{padding:18px;gap:11px}#efly-student-insights .esi-next h3{font-size:20px}#efly-student-insights .esi-next-icon{width:34px;height:34px;border-radius:10px;font-size:25px}#efly-student-insights .esi-results{padding:17px 14px}#efly-student-insights .esi-exam-detail{align-items:flex-start;flex-direction:column;gap:12px}#efly-student-insights .esi-chart-caption{font-size:11px}#efly-student-insights .esi-footnote{font-size:12px}}
@media(max-width:360px){#efly-student-insights .esi-kpis{grid-template-columns:minmax(0,1fr)}#efly-student-insights .esi-kpis article{flex-direction:row;gap:12px}#efly-student-insights .esi-progress-card{grid-template-columns:104px minmax(0,1fr);padding:14px;gap:0 10px}#efly-student-insights .esi-ring-wrap{width:104px;height:104px}}
@media(prefers-reduced-motion:reduce){#efly-student-insights *,#efly-student-insights *:before,#efly-student-insights *:after{transition:none!important;animation:none!important;transform:none!important}#efly-student-insights .esi-ring{transform:rotate(-90deg)!important}#efly-student-insights .esi-bar-empty{transform:translate(-50%,-50%)!important}#efly-student-insights .esi-bar-grade{transform:translateX(-50%)!important}}

#efly-student-insights[data-course-empty=true] .esi-results-heading p{display:block!important}#efly-student-insights[data-course-empty=true] .esi-legend{display:flex!important}#efly-student-insights .esi-empty-slot{cursor:default;pointer-events:none}#efly-student-insights .esi-empty-reference{display:none}#efly-student-insights[data-course-empty=true] .esi-empty-reference{display:inline}#efly-student-insights[data-course-empty=true] .esi-chart-caption>span:nth-child(2){display:none}