/* SININBE EDU 4.0.39.19.19 — responsive diagnostic placement workflow. */
.se-diag-admin,.se-diag-modal,.se-diagnostic-board{
  --diag-bg:var(--surface,#0d1728);--diag-surface:var(--surface2,#142238);--diag-surface-2:#0f1d30;
  --diag-border:rgba(148,163,184,.22);--diag-text:var(--text-primary,#edf6ff);--diag-muted:var(--text-secondary,#91a5bd);
  --diag-accent:#14b8a6;--diag-accent-2:#2dd4bf;--diag-accent-soft:rgba(20,184,166,.12);
  --diag-blue:#60a5fa;--diag-warn:#f5b74e;--diag-danger:#fb7185;--diag-success:#34d399;
  color:var(--diag-text);box-sizing:border-box
}
.se-diag-admin *,.se-diag-modal *,.se-diagnostic-board *{box-sizing:border-box}
#app[data-theme="light"] .se-diag-admin,#app[data-theme="light"] .se-diag-modal,#app[data-theme="light"] .se-diagnostic-board{
  --diag-bg:#f7fafc;--diag-surface:#fff;--diag-surface-2:#f4f8fc;--diag-border:#d7e1ec;--diag-text:#142033;--diag-muted:#66778b;
  --diag-accent:#0f9f8f;--diag-accent-2:#0f9f8f;--diag-accent-soft:#e8f8f5;--diag-blue:#2563eb;--diag-warn:#b7791f;--diag-danger:#be123c;--diag-success:#087f5b
}
#admin-pane-diagnostics.active{display:flex!important;flex-direction:column;gap:8px;min-height:0;overflow:auto!important;padding:2px;overscroll-behavior:contain}
.se-diag-admin-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid var(--diag-border);border-radius:14px;background:linear-gradient(135deg,var(--diag-accent-soft),var(--diag-surface) 62%)}
.se-diag-admin-head>div{min-width:0}.se-diag-admin-head h3{margin:2px 0;color:var(--diag-text);font-size:clamp(.94rem,1.65vw,1.12rem);line-height:1.25}.se-diag-admin-head p{max-width:800px;margin:0;color:var(--diag-muted);font-size:.61rem;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.se-diag-eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--diag-accent);font-size:.61rem;font-weight:900}.se-diag-refresh,.se-diag-primary,.se-diag-secondary,.se-diag-record,.se-diag-icon-button,.se-diag-open-review{min-height:42px;border-radius:11px;padding:0 13px;border:1px solid var(--diag-border);display:inline-flex;align-items:center;justify-content:center;gap:7px;font:850 .7rem/1.2 inherit;cursor:pointer;white-space:nowrap;box-shadow:none;transition:border-color .16s,background .16s,transform .16s}
.se-diag-refresh,.se-diag-secondary,.se-diag-icon-button{background:var(--diag-surface-2);color:var(--diag-text)}.se-diag-refresh:hover,.se-diag-secondary:hover,.se-diag-icon-button:hover{border-color:var(--diag-accent);color:var(--diag-accent)}
.se-diag-primary,.se-diag-open-review{border-color:var(--diag-accent);background:var(--diag-accent);color:#fff}.se-diag-primary:hover,.se-diag-open-review:hover{background:var(--diag-accent-2);transform:translateY(-1px)}.se-diag-primary:disabled{opacity:.48;cursor:not-allowed;transform:none}
.se-diag-admin-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.se-diag-admin-kpis article{min-width:0;min-height:44px;display:flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid var(--diag-border);border-radius:12px;background:var(--diag-surface)}.se-diag-admin-kpis article>span{width:29px;height:29px;flex:0 0 29px;border-radius:9px;display:grid;place-items:center;background:var(--diag-accent-soft);color:var(--diag-accent);font-size:.7rem}.se-diag-admin-kpis small,.se-diag-admin-kpis strong{display:block}.se-diag-admin-kpis small{color:var(--diag-muted);font-size:.54rem;font-weight:800;line-height:1.25}.se-diag-admin-kpis strong{margin-top:1px;color:var(--diag-text);font-size:.82rem;line-height:1}
.se-diag-admin-tools{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(145px,.65fr) minmax(165px,.8fr);gap:7px}.se-diag-admin-tools>label{display:grid;grid-template-rows:auto 38px;gap:4px;min-width:0;margin:0}.se-diag-admin-tools label>span:first-child{color:var(--diag-muted);font-size:.56rem;font-weight:850;line-height:1.2}.se-diag-admin-tools select,.se-diag-input-shell{width:100%;height:38px;min-width:0;border:1px solid var(--diag-border);border-radius:10px;background:var(--diag-surface-2);color:var(--diag-text);outline:0}.se-diag-admin-tools select{padding-inline:10px}.se-diag-input-shell{display:flex;align-items:center;gap:7px;padding-inline:10px}.se-diag-input-shell i{color:var(--diag-muted)}.se-diag-input-shell input{flex:1;min-width:0;height:34px;border:0!important;background:transparent!important;color:var(--diag-text)!important;outline:0!important;box-shadow:none!important;padding:0!important}
.se-diag-admin-list{display:grid;gap:7px;padding-bottom:max(8px,env(safe-area-inset-bottom))}.se-diag-row{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(130px,.72fr) minmax(135px,.72fr) minmax(155px,.82fr) auto auto;align-items:center;gap:9px;padding:9px;border:1px solid var(--diag-border);border-radius:13px;background:var(--diag-surface)}.se-diag-row-person{display:flex;align-items:center;gap:8px;min-width:0}.se-diag-row-avatar{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;background:var(--diag-accent-soft);color:var(--diag-accent)}.se-diag-row-person div{min-width:0}.se-diag-row-person strong,.se-diag-row-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.se-diag-row-person strong{color:var(--diag-text);font-size:.7rem}.se-diag-row-person small{margin-top:2px;color:var(--diag-muted);font-size:.55rem}.se-diag-row-fact{min-width:0}.se-diag-row-fact small,.se-diag-row-fact strong{display:block}.se-diag-row-fact small{color:var(--diag-muted);font-size:.52rem;margin-bottom:3px}.se-diag-row-fact strong{color:var(--diag-text);font-size:.63rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.se-diag-status{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;padding:5px 8px;border:1px solid rgba(245,183,78,.35);border-radius:999px;background:rgba(245,183,78,.10);color:var(--diag-warn);font-size:.55rem;font-weight:900;white-space:nowrap}.se-diag-status.reviewed{border-color:rgba(52,211,153,.35);background:rgba(52,211,153,.10);color:var(--diag-success)}.se-diag-level{display:block;margin-top:3px;color:var(--diag-accent);font-size:.54rem;font-weight:850;white-space:normal}.se-diag-empty{min-height:105px;display:grid;place-items:center;text-align:center;padding:18px;border:1px dashed var(--diag-border);border-radius:14px;background:var(--diag-surface);color:var(--diag-muted);font-size:.68rem}.se-diag-empty i{display:block;margin-bottom:7px;color:var(--diag-accent);font-size:1.15rem}
body.se-diag-lock{overflow:hidden!important}
.se-diag-modal{position:fixed;inset:0;z-index:2147481800;display:none;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:rgba(2,8,18,.82);backdrop-filter:blur(8px)}.se-diag-modal.is-open{display:flex}.se-diag-modal[hidden]{display:none!important}#app[data-theme="light"] .se-diag-modal{background:rgba(226,232,240,.82)}
.se-diag-shell{width:min(1050px,100%);max-height:min(920px,calc(100dvh - 24px));min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--diag-border);border-radius:20px;background:var(--diag-bg);color:var(--diag-text);box-shadow:0 28px 90px rgba(0,0,0,.44)}#app[data-theme="light"] .se-diag-shell{box-shadow:0 28px 75px rgba(15,23,42,.18)}
.se-diag-modal-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--diag-border);background:var(--diag-surface)}.se-diag-modal-head>div{min-width:0;display:flex;align-items:center;gap:10px}.se-diag-modal-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:12px;background:var(--diag-accent-soft);color:var(--diag-accent)}.se-diag-modal-head h2{margin:0;color:var(--diag-text);font-size:.95rem}.se-diag-modal-head p{margin:3px 0 0;color:var(--diag-muted);font-size:.61rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.se-diag-close{width:40px;height:40px;flex:0 0 40px;border:1px solid var(--diag-border);border-radius:11px;background:var(--diag-surface-2);color:var(--diag-text);display:grid;place-items:center;cursor:pointer}.se-diag-close:hover{color:var(--diag-danger);border-color:var(--diag-danger)}
.se-diag-warning-view{overflow:auto;padding:clamp(20px,5vw,48px);text-align:center;overscroll-behavior:contain}.se-diag-warning-mark{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 13px;border-radius:20px;background:rgba(245,183,78,.12);color:var(--diag-warn);font-size:1.55rem}.se-diag-warning-view h3{margin:0 0 9px;font-size:1.2rem;color:var(--diag-text)}.se-diag-warning-view>p{max-width:740px;margin:0 auto;color:var(--diag-muted);font-size:.74rem;line-height:1.85}.se-diag-warning-view ul{max-width:720px;display:grid;gap:7px;margin:16px auto;padding:0;list-style:none;text-align:start}.se-diag-warning-view li{padding:9px 11px;border:1px solid var(--diag-border);border-radius:11px;background:var(--diag-surface);color:var(--diag-text);font-size:.68rem;line-height:1.6}.se-diag-pledge{max-width:720px;display:flex;align-items:flex-start;gap:9px;margin:15px auto;padding:12px;border:1px solid var(--diag-accent);border-radius:12px;background:var(--diag-accent-soft);text-align:start;color:var(--diag-text);font-size:.69rem;line-height:1.6;cursor:pointer}.se-diag-pledge input{width:19px;height:19px;flex:0 0 19px;margin:1px 0 0;accent-color:var(--diag-accent)}
.se-diag-exam{flex:1 1 auto;min-height:0;overflow:auto;padding:14px;overscroll-behavior:contain;scrollbar-gutter:stable}.se-diag-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.se-diag-identity>div{padding:11px 12px;border:1px solid var(--diag-border);border-radius:12px;background:var(--diag-surface)}.se-diag-identity small,.se-diag-identity strong{display:block}.se-diag-identity small{color:var(--diag-muted);font-size:.57rem}.se-diag-identity strong{margin-top:4px;color:var(--diag-text);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.se-diag-guidance{margin:10px 0;padding:10px 12px;border-inline-start:3px solid var(--diag-blue);border-radius:10px;background:rgba(96,165,250,.08);color:var(--diag-muted);font-size:.66rem;line-height:1.6}
.se-diag-exam-section{margin-top:10px;padding:13px;border:1px solid var(--diag-border);border-radius:16px;background:var(--diag-surface)}.se-diag-exam-section>header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.se-diag-exam-section>header>span{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;background:var(--diag-accent-soft);color:var(--diag-accent);font-size:.72rem;font-weight:950}.se-diag-exam-section h3{margin:0;color:var(--diag-text);font-size:.8rem}.se-diag-exam-section header p{margin:3px 0 0;color:var(--diag-muted);font-size:.59rem}.se-diag-question-list{display:grid;gap:10px}.se-diag-question{display:grid;gap:6px}.se-diag-question>span,.se-diag-practical-answer>span{color:var(--diag-text);font-size:.67rem;font-weight:800;line-height:1.6}.se-diag-question textarea,.se-diag-practical-answer textarea,.se-diag-admin-note textarea{width:100%;resize:vertical;border:1px solid var(--diag-border)!important;border-radius:11px!important;background:var(--diag-surface-2)!important;color:var(--diag-text)!important;padding:10px 11px!important;outline:0!important;box-shadow:none!important;font:inherit;font-size:.7rem;line-height:1.65}.se-diag-question textarea:focus,.se-diag-practical-answer textarea:focus,.se-diag-admin-note textarea:focus{border-color:var(--diag-accent)!important}.se-diag-prompt-list{display:grid;gap:7px;margin:0 0 11px;padding-inline-start:22px;color:var(--diag-text);font-size:.67rem;line-height:1.65}
.se-diag-recorder{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px;border:1px solid var(--diag-border);border-radius:12px;background:var(--diag-surface-2)}.se-diag-record{background:var(--diag-accent);border-color:var(--diag-accent);color:#fff}.se-diag-record.is-recording{background:var(--diag-danger);border-color:var(--diag-danger)}.se-diag-record-time{min-width:48px;color:var(--diag-muted);font:850 .68rem/1 monospace}.se-diag-recorder audio{min-width:180px;max-width:100%;height:38px;flex:1}.se-diag-icon-button{width:40px;padding:0;color:var(--diag-danger)}.se-diag-upload-fallback,.se-diag-practical-answer{display:grid;gap:6px;margin-top:10px}.se-diag-upload-fallback>span{font-size:.61rem;color:var(--diag-muted);font-weight:800}.se-diag-upload-fallback input{width:100%;min-height:42px;padding:7px;border:1px solid var(--diag-border);border-radius:11px;background:var(--diag-surface-2);color:var(--diag-text);font-size:.65rem}.se-diag-drop{position:relative;display:grid;place-items:center;gap:6px;margin-top:10px;min-height:120px;padding:16px;border:1px dashed var(--diag-border);border-radius:13px;background:var(--diag-surface-2);text-align:center;cursor:pointer}.se-diag-drop i{color:var(--diag-accent);font-size:1.35rem}.se-diag-drop strong{font-size:.68rem;color:var(--diag-text)}.se-diag-drop small{font-size:.58rem;color:var(--diag-muted)}.se-diag-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.se-diag-state{min-height:19px;margin-top:9px;color:var(--diag-muted);font-size:.66rem}.se-diag-state.error{color:var(--diag-danger)}.se-diag-state.success{color:var(--diag-success)}.se-diag-exam-actions,.se-diag-review-form>footer{position:sticky;bottom:-14px;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:12px -14px -14px;padding:10px 14px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--diag-border);background:var(--diag-bg);z-index:2}
.se-diag-review-shell{width:min(1120px,100%)}.se-diag-review-body{flex:1 1 auto;min-height:170px;overflow:auto;padding:13px;overscroll-behavior:contain}.se-diag-review-identity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.se-diag-review-identity>div{padding:10px;border:1px solid var(--diag-border);border-radius:11px;background:var(--diag-surface)}.se-diag-review-identity small,.se-diag-review-identity strong{display:block}.se-diag-review-identity small{font-size:.56rem;color:var(--diag-muted)}.se-diag-review-identity strong{margin-top:4px;font-size:.67rem;color:var(--diag-text)}.se-diag-review-section{margin-top:9px;padding:12px;border:1px solid var(--diag-border);border-radius:14px;background:var(--diag-surface)}.se-diag-review-section h3{margin:0 0 9px;color:var(--diag-text);font-size:.75rem}.se-diag-review-answer{padding:9px 10px;margin-top:7px;border-radius:10px;background:var(--diag-surface-2);color:var(--diag-text);font-size:.66rem;line-height:1.7;white-space:pre-wrap}.se-diag-review-answer small{display:block;margin-bottom:5px;color:var(--diag-muted);font-size:.58rem;font-weight:850}.se-diag-review-section audio{width:100%;height:42px}.se-diag-review-section a{display:inline-flex;align-items:center;gap:6px;margin-top:8px;color:var(--diag-accent);font-size:.65rem;text-decoration:none}.se-diag-review-form{flex:0 0 auto;padding:12px 13px;border-top:1px solid var(--diag-border);background:var(--diag-surface)}.se-diag-score-grid{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr)) minmax(130px,.8fr);gap:8px}.se-diag-score-grid>label{display:grid;gap:5px}.se-diag-score-grid label>span,.se-diag-admin-note>span{font-size:.58rem;color:var(--diag-muted);font-weight:850}.se-diag-score-grid label>div{height:42px;display:flex;align-items:center;border:1px solid var(--diag-border);border-radius:10px;background:var(--diag-surface-2)}.se-diag-score-grid input{width:100%;min-width:0;height:40px;border:0!important;background:transparent!important;color:var(--diag-text)!important;padding-inline:10px!important;outline:0!important;box-shadow:none!important}.se-diag-score-grid b{padding-inline-end:9px;color:var(--diag-muted);font-size:.58rem}.se-diag-score-overall{display:grid;grid-template-columns:1fr auto;align-content:center;padding:7px 10px;border:1px solid var(--diag-accent);border-radius:10px;background:var(--diag-accent-soft)}.se-diag-score-overall small{grid-column:1/-1;color:var(--diag-muted);font-size:.55rem}.se-diag-score-overall strong{color:var(--diag-accent);font-size:.85rem}.se-diag-score-overall b{color:var(--diag-muted);font-size:.58rem}.se-diag-admin-note{display:grid;gap:5px;margin-top:8px}.se-diag-review-form>footer{position:static;margin:9px 0 0;padding:0;border:0;background:transparent}
.se-diagnostic-board{margin-bottom:12px;padding:12px;border:1px solid var(--diag-border);border-radius:15px;background:linear-gradient(135deg,var(--diag-accent-soft),var(--diag-surface) 70%)}.se-diagnostic-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;margin-bottom:10px}.se-diagnostic-board-head h3{margin:0;color:var(--diag-text);font-size:.79rem}.se-diagnostic-board-head p{margin:3px 0 0;color:var(--diag-muted);font-size:.6rem;line-height:1.6}.se-diagnostic-board-head>span{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:11px;background:var(--diag-accent-soft);color:var(--diag-accent)}.se-diagnostic-subjects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.se-diagnostic-subject{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;border:1px solid var(--diag-border);border-radius:12px;background:var(--diag-surface)}.se-diagnostic-subject>div{min-width:0}.se-diagnostic-subject strong,.se-diagnostic-subject small{display:block}.se-diagnostic-subject strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--diag-text);font-size:.69rem}.se-diagnostic-subject small{margin-top:4px;color:var(--diag-muted);font-size:.56rem;line-height:1.4}.se-diagnostic-subject button{min-height:36px;padding:0 10px;border:1px solid var(--diag-accent);border-radius:9px;background:var(--diag-accent);color:#fff;font:850 .62rem/1 inherit;cursor:pointer}.se-diagnostic-subject button:disabled{opacity:.55;cursor:not-allowed}.se-diagnostic-result{margin-top:4px;color:var(--diag-accent)!important;font-weight:850}
@media(max-width:900px){.se-diag-row{grid-template-columns:minmax(180px,1.2fr) repeat(2,minmax(125px,.75fr)) auto auto}.se-diag-row-date{display:none}.se-diag-review-identity{grid-template-columns:repeat(2,minmax(0,1fr))}.se-diag-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#admin-pane-diagnostics.active{padding:0}.se-diag-admin-head{padding:9px;align-items:center}.se-diag-admin-head p{font-size:.58rem}.se-diag-refresh span{display:none}.se-diag-refresh{width:38px;min-height:38px;padding:0;flex:0 0 38px}.se-diag-admin-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.se-diag-admin-kpis article{display:grid;justify-items:center;text-align:center;gap:3px;padding:6px 4px}.se-diag-admin-kpis article>span{width:28px;height:28px;flex-basis:28px}.se-diag-admin-kpis small{font-size:.5rem}.se-diag-admin-tools{grid-template-columns:1fr 1fr}.se-diag-search-field{grid-column:1/-1}.se-diag-row{grid-template-columns:minmax(0,1fr) 42px;gap:7px}.se-diag-row-subject,.se-diag-row-date{grid-column:1}.se-diag-row-score{grid-column:1}.se-diag-row-status{grid-column:1}.se-diag-open-review{grid-column:2;grid-row:1;align-self:start;width:42px;height:42px;min-width:42px;min-height:42px;padding:0}.se-diag-open-review span{display:none}.se-diag-modal{padding:0;align-items:stretch}.se-diag-shell{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}.se-diag-modal-head{padding-top:max(10px,env(safe-area-inset-top))}.se-diag-exam{padding:10px}.se-diag-exam-section{padding:11px}.se-diag-exam-actions{bottom:-10px;margin:10px -10px -10px;padding-inline:10px}.se-diag-identity{grid-template-columns:1fr}.se-diag-review-body{padding:10px}.se-diag-review-form{max-height:48dvh;overflow:auto;padding:10px}.se-diagnostic-subjects{grid-template-columns:1fr}}
@media(max-width:420px){.se-diag-admin-head p{display:none}.se-diag-admin-tools{grid-template-columns:1fr}.se-diag-search-field{grid-column:auto}.se-diag-admin-kpis article>span{display:none}.se-diag-admin-kpis strong{font-size:.88rem}.se-diag-admin-kpis small{line-height:1.35}.se-diag-warning-view{padding:20px 14px}.se-diag-warning-view>p{font-size:.69rem}.se-diag-exam-actions,.se-diag-review-form>footer{align-items:stretch}.se-diag-exam-actions button,.se-diag-review-form>footer button{flex:1;min-width:0;white-space:normal}.se-diag-exam-actions .se-diag-secondary span{font-size:0}.se-diag-exam-actions .se-diag-secondary span:after{content:'×';font-size:1rem}.se-diag-score-grid{grid-template-columns:1fr 1fr}.se-diag-score-overall{grid-column:1/-1}.se-diag-recorder audio{flex-basis:100%;width:100%}}
@media(max-height:620px) and (min-width:701px){.se-diag-shell{height:calc(100dvh - 16px);max-height:none}.se-diag-warning-view{padding-block:16px}.se-diag-warning-mark{width:48px;height:48px;border-radius:14px;font-size:1.1rem}.se-diag-warning-view ul{margin-block:10px}.se-diag-warning-view li{padding-block:6px}}

/* 4.0.39.19.19 — visible and resilient diagnostic start action */
#se-diag-warning-accept[aria-busy="true"]{cursor:progress;opacity:.78}
#se-diag-warning-accept[aria-busy="true"]::after{content:"";width:15px;height:15px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:seDiagSpin .75s linear infinite}
@keyframes seDiagSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#se-diag-warning-accept[aria-busy="true"]::after{animation:none}}


/* 4.0.39.19.19 — modal hardening: no clipped close button, centered controls, no click-through. */
.se-diag-modal{pointer-events:auto!important;isolation:isolate;overflow:hidden!important;font-family:"Tajawal","Space Grotesk",system-ui,sans-serif!important}
.se-diag-modal[data-theme="light"]{--diag-bg:#f7fafc;--diag-surface:#fff;--diag-surface-2:#f4f8fc;--diag-border:#d7e1ec;--diag-text:#142033;--diag-muted:#66778b;--diag-accent:#0f9f8f;--diag-accent-2:#0f9f8f;--diag-accent-soft:#e8f8f5;--diag-blue:#2563eb;--diag-warn:#b7791f;--diag-danger:#be123c;--diag-success:#087f5b;background:rgba(226,232,240,.86)}
.se-diag-modal[data-theme="dark"]{--diag-bg:#0d1728;--diag-surface:#142238;--diag-surface-2:#0f1d30;--diag-border:rgba(148,163,184,.22);--diag-text:#edf6ff;--diag-muted:#91a5bd;--diag-accent:#14b8a6;--diag-accent-2:#2dd4bf;--diag-accent-soft:rgba(20,184,166,.12);--diag-blue:#60a5fa;--diag-warn:#f5b74e;--diag-danger:#fb7185;--diag-success:#34d399;background:rgba(2,8,18,.84)}
.se-diag-modal.is-open{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
.se-diag-shell{position:relative!important;width:min(980px,calc(100vw - 28px))!important;max-width:980px!important;max-height:calc(100dvh - 28px)!important;overflow:hidden!important;border-radius:18px!important;pointer-events:auto!important;transform:none!important}
.se-diag-review-shell{width:min(1080px,calc(100vw - 28px))!important;max-width:1080px!important}
.se-diag-modal-head{position:relative!important;z-index:50!important;min-height:66px!important;flex:0 0 auto!important;overflow:visible!important;padding:12px 14px!important;padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right))!important}
.se-diag-close{position:relative!important;z-index:60!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;flex:0 0 42px!important;margin:0!important;padding:0!important;border-radius:11px!important;display:grid!important;place-items:center!important;overflow:visible!important;line-height:1!important}
.se-diag-close i{display:block!important;line-height:1!important;pointer-events:none!important}
.se-diag-warning-view{min-height:0!important;flex:1 1 auto!important}
.se-diag-warning-view>.se-diag-primary{display:flex!important;width:min(320px,100%)!important;min-height:44px!important;margin:14px auto 0!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.se-diag-warning-view>.se-diag-primary i{flex:0 0 auto}.se-diag-warning-view>.se-diag-primary span{display:block;text-align:center}
.se-diag-exam-actions,.se-diag-review-form>footer{justify-content:center!important;align-items:center!important}.se-diag-exam-actions button,.se-diag-review-form>footer button{justify-content:center!important;text-align:center!important}
.se-diagnostic-subject button,.se-diag-open-review,.se-diag-refresh,.se-diag-record,.se-diag-primary,.se-diag-secondary,.se-diag-icon-button{align-items:center!important;justify-content:center!important;text-align:center!important}
body.se-diag-lock{overflow:hidden!important;touch-action:none}.se-diag-modal .se-diag-shell{touch-action:auto}
@media(max-width:700px){.se-diag-modal{padding:0!important;align-items:stretch!important}.se-diag-shell,.se-diag-review-shell{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;border:0!important;border-radius:0!important}.se-diag-modal-head{min-height:62px!important;padding-top:max(10px,env(safe-area-inset-top))!important;padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))!important}.se-diag-close{width:42px!important;height:42px!important;flex-basis:42px!important}.se-diag-warning-view{padding:18px 13px max(18px,env(safe-area-inset-bottom))!important}.se-diag-exam-actions{padding-bottom:max(10px,env(safe-area-inset-bottom))!important}}
@media(max-width:420px){.se-diag-modal-head>div{gap:8px!important}.se-diag-modal-icon{width:36px!important;height:36px!important;flex-basis:36px!important}.se-diag-modal-head h2{font-size:.86rem!important}.se-diag-warning-view>.se-diag-primary{width:100%!important}}

/* ── 4.0.39.19.23 — stacking safety net ───────────────────────────────────
   #app is fixed, opaque and sits at z-index:2147483647. If the assessment
   modal ever ends up outside #app it would be painted behind that opaque
   layer and look like "nothing happened". Matching the maximum z-index while
   coming later in the document keeps it visible in that fallback case. */
body > .se-diag-modal{z-index:2147483647!important}
body > .se-diag-modal.is-open{display:flex!important}
#app > .se-diag-modal.is-open{display:flex!important}
.se-diag-modal.is-open .se-diag-shell{pointer-events:auto!important}

/* ── 4.0.39.19.24 — delete control for submitted placements ────────────
   The admin row gains one extra trailing column for the delete button. It is
   only rendered for administrators holding the diagnostics_manage permission. */
.se-diag-row{grid-template-columns:minmax(190px,1.15fr) minmax(130px,.72fr) minmax(135px,.72fr) minmax(155px,.82fr) auto auto auto!important}
.se-diag-delete-attempt{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 11px;cursor:pointer;
  border:1px solid rgba(251,113,133,.42);border-radius:10px;background:rgba(251,113,133,.10);color:var(--diag-danger);
  font-size:.6rem;font-weight:800;white-space:nowrap}
.se-diag-delete-attempt:hover{background:rgba(251,113,133,.18);border-color:var(--diag-danger)}
.se-diag-delete-attempt:focus-visible{outline:2px solid var(--diag-danger);outline-offset:2px}
.se-diag-delete-attempt[disabled]{opacity:.55;cursor:progress}
.se-diag-admin-list[aria-busy="true"]{opacity:.75;pointer-events:none}
@media(max-width:900px){
  .se-diag-row{grid-template-columns:minmax(180px,1.2fr) repeat(2,minmax(125px,.75fr)) auto auto auto!important}
}
@media(max-width:700px){
  .se-diag-row{grid-template-columns:minmax(0,1fr) 42px 42px!important}
  .se-diag-delete-attempt{grid-column:3;grid-row:1;align-self:start;width:42px;min-width:42px;height:42px;padding:0}
  .se-diag-delete-attempt span{display:none}
}

/* ── 4.0.39.19.24 — interactive (multiple choice) section ──────────────
   Options are full-width tap targets rather than bare radios, so the section
   works the same on a phone as on a desktop. */
.se-diag-mcq-list{display:grid;gap:11px}
.se-diag-mcq{margin:0;padding:11px;border:1px solid var(--diag-border);border-radius:13px;background:var(--diag-surface)}
.se-diag-mcq legend{padding:0 4px;color:var(--diag-text);font-size:.7rem;font-weight:800;line-height:1.6}
.se-diag-mcq.is-missing{border-color:var(--diag-danger);box-shadow:0 0 0 1px var(--diag-danger) inset}
.se-diag-mcq-options{display:grid;gap:7px;margin-top:8px}
.se-diag-mcq-option{display:flex;align-items:flex-start;gap:9px;min-height:42px;padding:9px 11px;cursor:pointer;
  border:1px solid var(--diag-border);border-radius:11px;background:var(--diag-surface-2);
  color:var(--diag-text);font-size:.66rem;line-height:1.65;transition:border-color .16s,background .16s}
.se-diag-mcq-option:hover{border-color:var(--diag-accent)}
.se-diag-mcq-option input{flex:0 0 auto;width:17px;height:17px;margin-top:2px;accent-color:var(--diag-accent);cursor:pointer}
.se-diag-mcq-option span{min-width:0;word-break:break-word}
.se-diag-mcq-option:has(input:checked){border-color:var(--diag-accent);background:var(--diag-accent-soft)}
.se-diag-mcq-option input:focus-visible{outline:2px solid var(--diag-accent);outline-offset:2px}

/* Admin review of the auto-marked part. */
.se-diag-mcq-score{margin:0 0 8px;color:var(--diag-text);font-size:.66rem}
.se-diag-mcq-review{display:grid;gap:4px;padding:9px 11px;margin-bottom:7px;border-radius:11px;
  border:1px solid var(--diag-border);background:var(--diag-surface-2)}
.se-diag-mcq-review strong{color:var(--diag-text);font-size:.64rem;line-height:1.6}
.se-diag-mcq-given{color:var(--diag-muted);font-size:.62rem}
.se-diag-mcq-flag{font-size:.58rem;font-weight:800}
.se-diag-mcq-review.is-correct{border-color:rgba(52,211,153,.38)}
.se-diag-mcq-review.is-correct .se-diag-mcq-flag{color:var(--diag-success)}
.se-diag-mcq-review.is-wrong{border-color:rgba(251,113,133,.38)}
.se-diag-mcq-review.is-wrong .se-diag-mcq-flag{color:var(--diag-danger)}

/* ── 4.0.39.19.25 — automatic evaluation panel ─────────────────────────
   The platform's own result is shown first, because it is now the decision
   rather than a hint. Confidence is colour-coded so an administrator can tell
   at a glance which attempts actually deserve a human look. */
.se-diag-auto-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin-bottom:9px}
.se-diag-auto-head>div{display:grid;gap:2px;padding:10px 12px;border-radius:12px;
  border:1px solid var(--diag-border);background:var(--diag-surface-2)}
.se-diag-auto-head small{color:var(--diag-muted);font-size:.55rem}
.se-diag-auto-head strong{color:var(--diag-text);font-size:.92rem;font-variant-numeric:tabular-nums}
.se-diag-auto-head span{color:var(--diag-accent);font-size:.58rem;font-weight:800}
.se-diag-auto-head.is-high>div{border-color:rgba(52,211,153,.42)}
.se-diag-auto-head.is-high span{color:var(--diag-success)}
.se-diag-auto-head.is-medium>div{border-color:rgba(245,183,78,.42)}
.se-diag-auto-head.is-medium span{color:var(--diag-warn)}
.se-diag-auto-head.is-low>div{border-color:rgba(251,113,133,.42)}
.se-diag-auto-head.is-low span{color:var(--diag-danger)}
.se-diag-auto-parts{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:7px}
.se-diag-auto-part{display:grid;gap:2px;padding:8px 10px;border-radius:10px;
  border:1px solid var(--diag-border);background:var(--diag-surface)}
.se-diag-auto-part small{color:var(--diag-muted);font-size:.53rem}
.se-diag-auto-part strong{color:var(--diag-text);font-size:.76rem;font-variant-numeric:tabular-nums}
.se-diag-auto-why{margin:8px 0 0;color:var(--diag-muted);font-size:.58rem;line-height:1.7}
.se-diag-auto-transcript{margin-top:9px;padding:9px 11px;border-radius:11px;
  border:1px dashed var(--diag-border);background:var(--diag-surface-2)}
.se-diag-auto-transcript small{display:block;margin-bottom:4px;color:var(--diag-muted);font-size:.55rem}
.se-diag-auto-transcript p{margin:0;color:var(--diag-text);font-size:.62rem;line-height:1.8;
  max-height:180px;overflow:auto;word-break:break-word}

/* ── 4.0.39.19.33 — focused twenty-question diagnostic ───────────────── */
.se-diag-progress{position:sticky;top:-14px;z-index:4;display:grid;gap:7px;margin:10px 0 2px;
  padding:10px 12px;border:1px solid var(--diag-border);border-radius:13px;background:var(--diag-surface);
  background:color-mix(in srgb,var(--diag-surface) 94%,transparent);backdrop-filter:blur(12px)}
.se-diag-progress>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.se-diag-progress span{color:var(--diag-muted);font-size:.6rem;font-weight:800}
.se-diag-progress strong{color:var(--diag-accent);font-size:.72rem;font-variant-numeric:tabular-nums}
.se-diag-progress-track{display:block!important;height:6px;overflow:hidden;border-radius:999px;background:var(--diag-surface-2)}
.se-diag-progress-track i{display:block;width:0;height:100%;border-radius:inherit;
  background:linear-gradient(90deg,var(--diag-accent),var(--diag-blue));transition:width .2s ease}
.se-diag-mcq{position:relative;padding:14px;background:linear-gradient(145deg,var(--diag-surface),var(--diag-surface-2))}
.se-diag-mcq-option:has(input:checked){box-shadow:0 7px 18px rgba(0,0,0,.08)}
.se-diag-score-grid{grid-template-columns:minmax(180px,1.35fr) minmax(160px,.85fr)}
.se-diag-score-overall{grid-template-columns:1fr}
.se-diag-score-overall strong{margin-top:4px;line-height:1.45}
@media(max-width:560px){.se-diag-progress{top:-10px}.se-diag-score-grid{grid-template-columns:1fr}.se-diag-score-overall{grid-column:auto}}
