/* ============================================================
   AID ENGLISH — TOOLS · cross-out, highlighter, predictor, streak, vocab
   ============================================================ */

/* ===== Cross-Out tap words ===== */
.tw{cursor:pointer; border-radius:4px; padding:0 .05em;
  border-bottom:1px dotted rgba(210,164,77,.4); transition:background .12s, opacity .12s}
.tw:hover{background:rgba(210,164,77,.16)}
.tw.xout{text-decoration-line:line-through; text-decoration-color:rgba(207,127,101,.9);
  text-decoration-thickness:2px; opacity:.4; background:rgba(195,105,80,.08);
  border-bottom-color:transparent}
.solved-line{margin-top:.7rem; padding:.7rem 1rem; background:var(--bg2);
  border:1px solid var(--line2); border-radius:10px; font-family:var(--fm);
  font-size:1.02rem; line-height:1.7}
.toolcoach{display:flex; align-items:center; gap:.6rem; margin:-0.5rem 0 1.1rem;
  font-size:.8rem; color:var(--gold-hi); background:rgba(210,164,77,.07);
  border:1px dashed var(--gold-deep); border-radius:10px; padding:.5rem .9rem; font-weight:600}
.toolfeedback{display:flex; flex-direction:column; gap:.6rem; margin-top:1.1rem;
  border-top:1px dashed var(--line2); padding-top:1.1rem}
.trow{display:flex; gap:.7rem; align-items:flex-start; background:var(--bg2);
  border:1px solid var(--line); border-radius:10px; padding:.65rem .9rem;
  line-height:1.55; font-size:.92rem}
.trow .ti{font-size:1.2rem; flex:none; line-height:1.2}
.trow.ok{border-color:rgba(141,181,120,.5)}  .trow.ok b{color:var(--good)}
.trow.no{border-color:rgba(195,105,80,.5)}  .trow.no b{color:var(--bad)}
.trow.mid{border-color:var(--line2)}

/* ===== Evidence highlighter ===== */
.pass-line{cursor:pointer; border-radius:6px; padding:1px 2px; transition:background .12s}
.pass-line:hover{background:rgba(210,164,77,.06)}
.pass-line.hl .pt{background:rgba(210,164,77,.16); box-shadow:inset 3px 0 0 var(--gold); border-radius:4px}
.pass-line.ev-ok .pt{background:var(--good-bg); box-shadow:inset 3px 0 0 var(--good); border-radius:4px}
.pass-line.ev-no .pt{background:var(--bad-bg); box-shadow:inset 3px 0 0 var(--bad); border-radius:4px}
@keyframes evpulse{0%{background:rgba(210,164,77,.4)}100%{background:rgba(210,164,77,.12)}}
.pass-line.ev-miss .pt{background:rgba(210,164,77,.12); box-shadow:inset 3px 0 0 var(--gold);
  border-radius:4px; animation:evpulse 1.3s ease}

/* ===== Score Predictor ===== */
.predictor{margin:1.2rem 0; background:linear-gradient(135deg, rgba(210,164,77,.13), rgba(210,164,77,.04));
  border:1px solid var(--gold-deep); border-radius:16px; padding:1.4rem 1.6rem; text-align:center}
.pr-score{font-family:var(--fs); font-size:3.2rem; font-weight:700; color:var(--gold-hi); line-height:1}
.pr-score small{font-size:1.1rem; color:var(--muted); font-weight:400}
.pr-band{margin-top:.4rem; color:var(--ink); font-weight:600}
.pr-hard{margin-top:.6rem; color:var(--gold-hi); font-size:.9rem}
.pr-soft{margin-top:.6rem; color:var(--muted); font-size:.9rem}
.pr-note{margin-top:.5rem; color:var(--faint); font-size:.78rem}

/* ===== Daily streak badge ===== */
.streak-badge{display:inline-flex; align-items:center; gap:.4rem; margin-left:.9rem;
  padding:.25rem .8rem; background:rgba(207,127,101,.1); border:1px solid rgba(207,127,101,.4);
  border-radius:99px; vertical-align:middle}
.streak-badge svg{width:16px; height:16px; color:#e8925f}
.streak-badge b{font-family:var(--fm); color:var(--gold-hi); font-size:1.05rem}
.streak-badge small{color:var(--muted); font-size:.66rem; text-transform:uppercase; letter-spacing:.1em}
.streak-badge.cold svg{color:var(--faint)} .streak-badge.cold b{color:var(--muted)}

/* ===== Vocab Lab ===== */
.vocab-top{display:flex; justify-content:space-between; align-items:center; gap:1rem;
  flex-wrap:wrap; margin-bottom:1.2rem}
#vocabStats{display:flex; gap:.5rem; align-items:center; flex-wrap:wrap}
.vocab-word{font-family:var(--fs); font-size:clamp(2.2rem,6vw,3.4rem); font-weight:600;
  color:var(--gold-hi); text-align:center; margin:.4rem 0 .3rem}
.vocab-ex{font-family:var(--fm); font-size:1.12rem; color:var(--muted); text-align:center;
  line-height:1.7; margin-bottom:1.4rem}
.vocab-ex b{color:var(--ink); border-bottom:2px dotted var(--gold-deep); padding:0 .25rem}
.vocab-opt{font-family:var(--fb); font-size:.95rem; min-height:60px}
.vocab-boxbar{display:flex; gap:.4rem; justify-content:center; margin-top:1rem}
.vbox{width:34px; height:8px; border-radius:4px; background:var(--bg2); border:1px solid var(--line)}
.vbox.on{background:var(--gold); border-color:var(--gold)}