/* ===================================================================
   Writing mock tests and AI assessment
   All selectors are namespaced .jwa- so nothing here can affect the
   rest of the site.
   =================================================================== */
.jwa{max-width:1100px;margin:26px auto;font:400 16px/1.65 Arial,sans-serif;color:#102B3F;
  background:#fff;border:1px solid #d4dfd8;border-radius:10px;padding:26px 28px}
.jwa *{box-sizing:border-box}

.jwa-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;
  border-bottom:1px solid #e2e8e4;padding-bottom:16px;margin-bottom:20px;flex-wrap:wrap}
.jwa-head h3{font:700 24px/1.25 Georgia,serif;margin:0 0 4px;color:#102B3F}
.jwa-h{font:700 17px/1.35 Georgia,serif;margin:26px 0 10px;color:#102B3F}
.jwa-lede{font-size:16.5px;color:#3d5561;margin:0 0 18px}
.jwa-sub{font-size:13.5px;color:#5b6f7a;line-height:1.5;margin:0}
.jwa-note{background:#f6faf8;border-left:4px solid #0F6B69;padding:14px 16px;border-radius:0 8px 8px 0;
  font-size:15px;line-height:1.65;margin:0 0 18px}
.jwa-note.jwa-err{background:#fdf3f2;border-left-color:#b3261e}
.jwa-disclaimer{font-size:13.5px;color:#5b6f7a;background:#faf8f3;border-left-color:#c6a66b}

.jwa-clock{font:700 30px/1 'Courier New',monospace;background:#102B3F;color:#fff;
  padding:12px 18px;border-radius:8px;letter-spacing:2px;min-width:130px;text-align:center}
.jwa-clock-low{background:#b3261e}
.jwa-clock-read{background:#0f5132}
.jwa-count{display:flex;flex-direction:column;align-items:flex-end;gap:6px;max-width:340px}
.jwa-phase{font-size:12px;line-height:1.45;color:#5a6b7b;text-align:right}

.jwa-reveal{border:1px solid #d4dfd8;border-radius:8px;margin:0 0 16px;background:#fff;overflow:hidden}
.jwa-reveal>summary{padding:14px 18px;font:700 15.5px/1.4 Georgia,serif;cursor:pointer;background:#f6faf8;
  list-style:none;position:relative;padding-right:44px}
.jwa-reveal>summary::-webkit-details-marker{display:none}
.jwa-reveal>summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);
  font:400 22px/1 Arial,sans-serif;color:#0F6B69}
.jwa-reveal[open]>summary::after{content:"\2013"}
.jwa-hint{font-weight:400;font-size:13px;color:#5b6f7a}

.jwa-casenote{background:#fbfcfb;padding:18px 20px;border-top:1px solid #e2e8e4}
.jwa-case-line{font:400 15.5px/1.65 Arial,sans-serif;margin:0 0 6px;color:#243b4a}
.jwa-task{padding:18px 20px;border-top:1px solid #e2e8e4}
.jwa-task p{margin:0 0 10px}
.jwa-letter{background:#fff;border-top:1px solid #e2e8e4;padding:20px 22px;font:400 16px/1.75 Georgia,serif}
.jwa-letter p{margin:0 0 13px}

.jwa-text{width:100%;min-height:460px;padding:18px;border:1px solid #cbd9d1;border-radius:8px;
  font:400 16px/1.75 Georgia,serif;color:#102B3F;resize:vertical}
.jwa-text:focus{outline:3px solid #0F6B69;outline-offset:2px}
.jwa-text-sm{min-height:110px;font:400 15px/1.6 Arial,sans-serif}

.jwa-bar{display:flex;align-items:center;gap:14px;margin:12px 0 6px;flex-wrap:wrap}
.jwa-grow{flex:1}
.jwa-msg{font-size:15px;margin:8px 0 0;min-height:22px}
.jwa-msg.jwa-ok{color:#0F6B69;font-weight:700}
.jwa-msg.jwa-err{color:#b3261e;font-weight:700}
.jwa-msg.jwa-warn{color:#8a6100;font-weight:700}
.jwa-warn{color:#8a6100;font-weight:700}

.jwa-btn{display:inline-block;background:#0F6B69;color:#fff !important;border:0;border-radius:6px;
  padding:13px 22px;font:700 15px/1 Arial,sans-serif;text-decoration:none;cursor:pointer;min-height:44px}
.jwa-btn:hover{background:#0c5856}
.jwa-btn:disabled{opacity:.6;cursor:default}
.jwa-btn-ghost{background:#fff;color:#0F6B69 !important;border:1px solid #0F6B69}
.jwa-btn-go{background:#102B3F}
.jwa-btn-go:hover{background:#0b1f2e}

.jwa-table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:15px;display:block;overflow-x:auto}
.jwa-table th,.jwa-table td{border:1px solid #e2e8e4;padding:10px 12px;text-align:left;vertical-align:top}
.jwa-table th{background:#f2f6f4;font:700 12.5px/1.4 Arial,sans-serif;letter-spacing:.04em;
  text-transform:uppercase;color:#5b6f7a}
.jwa-num{font:700 17px/1.4 'Courier New',monospace;white-space:nowrap}
.jwa-ev{color:#5b6f7a;font-size:14px}
.jwa-orig{color:#b3261e}
.jwa-better{color:#0F6B69;font-weight:700}

.jwa-list{margin:0 0 18px;padding-left:22px;font-size:15.5px;line-height:1.7}
.jwa-list li{margin-bottom:7px}

.jwa-pill{display:inline-block;font:700 11.5px/1 Arial,sans-serif;padding:6px 10px;border-radius:14px;
  background:#f2f6f4;color:#5b6f7a;white-space:nowrap}
.jwa-pill-done{background:#e6f2ee;color:#0F6B69}

.jwa-score{display:flex;align-items:center;gap:22px;background:#f6faf8;border-radius:10px;
  padding:20px 24px;margin:0 0 18px;flex-wrap:wrap}
.jwa-score-big{font:700 46px/1 Georgia,serif;color:#102B3F}
.jwa-score-big span{font-size:22px;color:#5b6f7a}
.jwa-band{font:700 22px/1.2 Georgia,serif;color:#0F6B69}

.jwa-actions{display:flex;gap:12px;margin:22px 0 0;flex-wrap:wrap}

/* certificate */
.jwa-certificate{max-width:820px;text-align:center;padding:52px 48px;border:2px solid #c6a66b}
.jwa-cert-brand{font:700 13px/1 Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;
  color:#0F6B69;margin:0 0 22px}
.jwa-certificate h2{font:700 34px/1.2 Georgia,serif;margin:0 0 8px;color:#102B3F}
.jwa-cert-sub{font-size:15px;color:#5b6f7a;margin:0 0 30px}
.jwa-cert-name{font:700 30px/1.3 Georgia,serif;margin:0 0 22px;padding-bottom:18px;
  border-bottom:1px solid #e2e8e4;color:#0F6B69}
.jwa-cert-line{font-size:16.5px;line-height:1.7;margin:0 0 24px;color:#243b4a}
.jwa-cert-score{font:700 42px/1 Georgia,serif;margin:0 0 6px;color:#102B3F}
.jwa-cert-score span{font-size:20px;color:#5b6f7a}
.jwa-cert-band{font-size:17px;margin:0 0 26px}
.jwa-cert-meta{font-size:13.5px;color:#5b6f7a;line-height:1.8;margin:0 0 20px}
.jwa-cert-fine{font-size:12.5px;color:#5b6f7a;line-height:1.6;max-width:560px;margin:0 auto 26px}
.jwa-certificate .jwa-actions{justify-content:center}

@media(max-width:760px){
  .jwa{padding:18px 15px;margin:16px 12px;border-radius:8px}
  .jwa-head h3{font-size:20px}
  .jwa-clock{font-size:24px;padding:10px 14px;min-width:104px}
  .jwa-text{min-height:340px;font-size:15.5px}
  .jwa-table{font-size:14px}
  .jwa-table th,.jwa-table td{padding:8px 9px}
  .jwa-score-big{font-size:36px}
  .jwa-certificate{padding:32px 18px}
  .jwa-certificate h2{font-size:24px}
  .jwa-cert-name{font-size:22px}
}
@media print{
  .jwa-actions,.jwa-reveal,.jwa-note,.jwa-disclaimer{display:none !important}
  .jwa-certificate{border:2px solid #c6a66b;margin:0;box-shadow:none}
}

/* ---- teacher preview (administrator only) ---- */
.jwa-preview .jwa-table-wrap{overflow-x:auto;margin:0 0 18px}
.jwa-preview .jwa-table{width:100%;border-collapse:collapse;font-size:14px}
.jwa-preview .jwa-table th,.jwa-preview .jwa-table td{border:1px solid #e2e8e4;padding:9px 12px;text-align:left;vertical-align:top}
.jwa-preview .jwa-table thead th{background:#f4f7f6;font-weight:700;color:#102B3F}
.jwa-preview .jwa-lesson-list{margin:8px 0 4px 20px;padding:0}
.jwa-preview .jwa-lesson-list li{margin:0 0 7px;line-height:1.5}
.jwa-preview .jwa-lesson-list a{text-decoration:none;border-bottom:1px solid #cfd9dd}
.jwa-preview .jwa-lesson-list a:hover{border-bottom-color:#102B3F}
.jwa-preview .jwa-ok{display:inline-block;margin-left:8px;font:700 10px/1.8 Arial,sans-serif;letter-spacing:.1em;
  text-transform:uppercase;color:#0f5132;background:#e6f4ec;border-radius:99px;padding:1px 8px}
.jwa-preview .jt-letter{background:#fbfcfb;border:1px solid #e2e8e4;border-radius:10px;padding:16px 18px;margin:8px 0 22px}
.jwa-preview .jt-letter p{margin:0 0 11px}
.jwa-preview .jwa-casenote{margin-bottom:22px}
.jwa-preview .jwa-task{margin-bottom:22px}
.jwa-preview .jwa-pill{display:inline-block;font:700 11px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;
  color:#0f5132;background:#e6f4ec;border-radius:99px;padding:9px 14px}
.jwa-preview>.jwa-reveal>summary{font-weight:700}

/* ---- owner / administrator preview panel ---- */
.jwa-adminbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;
  border:1px solid #cfe3d6;background:#f2f9f4;border-radius:12px;padding:16px 18px;margin:0 0 20px}
.jwa-adminbar-main{flex:1 1 320px;min-width:0}
.jwa-adminbar-tag{margin:0 0 4px;font:700 11px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#0f5132}
.jwa-adminbar-text{margin:0;font-size:14px;line-height:1.55;color:#31463c}
.jwa-adminbar-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.jwa-adminbar-note{font-size:12px;color:#5a6b7b}
@media(max-width:640px){.jwa-adminbar{flex-direction:column;align-items:flex-start}}

/* ===================================================================
   Case notes inside the mock tests: the same structure as the case
   lessons, with dark maroon headings and black body text. The headings
   are also bold, so the hierarchy does not rely on colour alone.
   =================================================================== */
.jwa-runner .jt-casenote{border:1px solid #d4dfd8;border-left:4px solid #5A1420;border-radius:0 8px 8px 0;
  padding:18px 20px;background:#fbfcfb;margin:0 0 18px}
.jwa-runner .jt-case-head{font:700 16px/1.35 Georgia,'Times New Roman',serif;color:#5A1420;
  margin:22px 0 9px;padding-bottom:5px;border-bottom:1px solid #e6dcde}
.jwa-runner .jt-case-head:first-child{margin-top:0}
.jwa-runner .jt-case-line{font:400 16px/1.7 Arial,sans-serif;color:#000;margin:0 0 7px}
.jwa-runner .jwa-task{color:#000}
.jwa-runner .jwa-task p{color:#000}
@media(max-width:640px){
  .jwa-runner .jt-casenote{padding:14px 13px}
  .jwa-runner .jt-case-head{font-size:15px;margin:18px 0 8px}
  .jwa-runner .jt-case-line{font-size:15px;line-height:1.65}
}

/* ---- the five-minute reading stage ---- */
.jwa-start{margin:0 0 12px;padding:12px 14px;border-radius:8px;font-size:15px;line-height:1.55;
  border:1px solid #e2cf9a;background:#fdf7e6;color:#6b4b06}
.jwa-start-go{border-color:#bfdcc9;background:#eef7f1;color:#0f5132}
.jwa-start-waiting::after{content:'  The box is locked while you read.';font-weight:700}
.jwa-text-locked{background:#f4f5f5;color:#8a9499;cursor:not-allowed}

/* ---- the final assessment report ---- */
.jwa-final-report .jwa-verdict{display:flex;gap:20px;align-items:center;flex-wrap:wrap;
  border:1px solid #cfe3d6;background:#f2f9f4;border-radius:12px;padding:18px 20px;margin:0 0 20px}
.jwa-verdict-score{font:700 46px/1 Georgia,serif;color:#0F6B69;white-space:nowrap}
.jwa-verdict-score span{font-size:19px;color:#5a6b7b;font-weight:400}
.jwa-verdict-text{flex:1 1 320px;min-width:0}
.jwa-verdict-band{margin:0 0 6px;font-size:16px}
.jwa-verdict-text p{margin:0 0 8px;font-size:14px;line-height:1.6;color:#31463c}
.jwa-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin:0 0 20px}
.jwa-report-grid .jt-teach{margin:0}
.jwa-final-report .jwa-table-wrap{overflow-x:auto;margin:0 0 20px}
.jwa-final-report .jwa-table{width:100%;border-collapse:collapse;font-size:14px}
.jwa-final-report .jwa-table th,.jwa-final-report .jwa-table td{border:1px solid #e2e8e4;padding:9px 11px;text-align:left}
.jwa-final-report .jwa-table thead th{background:#f4f7f6;color:#102B3F}
.jwa-steps{margin:8px 0 14px 20px;padding:0}
.jwa-steps li{margin:0 0 9px;line-height:1.6}

/* -------------------------------------------------------------------
   The mock-test case notes must use the owner's specification: DARK
   MAROON headings and subheadings, BLACK body text. The site's global
   heading rules force blue h4 with !important, so this override is
   written at a higher specificity to win, and the headings are also
   bold, so the hierarchy never depends on colour alone.
   ------------------------------------------------------------------- */
html body .jwa-runner .jt-casenote h4.jt-case-head,
html body .jwa-runner .jt-casenote .jt-case-head,
html body .jwa-preview .jwa-casenote .jt-case-head{
  color:#5A1420 !important;font-weight:700 !important;
  font-family:Georgia,'Times New Roman',serif;font-size:16px;line-height:1.35;
  margin:22px 0 9px;padding-bottom:5px;border-bottom:1px solid #e6dcde;text-transform:none}
html body .jwa-runner .jt-casenote p.jt-case-line{
  color:#000 !important;font:400 16px/1.7 Arial,sans-serif;margin:0 0 7px}
html body .jwa-runner .jt-casenote{background:#fbfcfb;border:1px solid #d4dfd8;
  border-left:4px solid #5A1420;border-radius:0 8px 8px 0;padding:18px 20px;margin:0 0 18px}
/* the writing task sits below the notes and stays black too */
html body .jwa-runner .jwa-task p{color:#000}
@media(max-width:640px){
  html body .jwa-runner .jt-casenote{padding:14px 13px}
  html body .jwa-runner .jt-casenote h4.jt-case-head{font-size:15px;margin:18px 0 8px}
  html body .jwa-runner .jt-casenote p.jt-case-line{font-size:15px;line-height:1.65}
}
